View Issue Details

IDProjectCategoryView StatusLast Update
0003318OpenFOAMBugpublic2019-08-09 15:27
ReporterdscianAssigned Towill 
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionsuspended 
PlatformUnixOSUbuntuOS Version18.04
Product Version7 
Fixed in Version 
Summary0003318: Strange behaviour of parcels with dynamic mesh in MPPICFoam
DescriptionI created this MPPICFoam case with dynamic mesh in which all particle forces are disabled and it's uncoupled ( coupled=false). When I run the case with linear oscillating motion parcels (nParticle=1) are moving in the opposite direction of the motion although they are supposed to stay still as there is no external force. This happens when packingModel or dampingModel is active. Same behaviour is observed even though there is only one parcel in the domain.

I have attached the case and the videos in a tar file.

Moreover, when the gravity is on parcels stay still on the wall while the platform is moving as if there is no friction. The friction on the wall works well without these models; that is parcels move together with the platform.

I would appreciate if you could clarify this issue. Many thanks!
Steps To ReproduceExtract the zip file and run MPPICFoam
TagsNo tags attached.

Activities

dscian

2019-07-25 08:19

reporter  

oscillatingMPPIC.tar.xz (2,019,988 bytes)

dscian

2019-07-25 08:20

reporter  

gravityOn.mp4 (183,919 bytes)

will

2019-08-09 14:39

manager   ~0010665

It seems that the MPPIC parcel and cloud don't support moving mesh. The packing and damping forces rely on a predictor-corrector scheme where the particle is moved, a velocity correction calculated, and then the particle moved again along the velocity correction. This correction move turns off forces and does some juggling of the time evolution (step-fraction and age), so that the correction doesn't affect the time-state of the particle. It's this bit that isn't right, and is causing the weird behaviour on moving meshes.

What it should do is move the particle, calculate the correction, go back to the origional position, then track again along the corrected velocity (as opposed to the velocity correction). That would work on both moving and stationary meshes. It would require more temporary storage or another (reverse) tracking step so that the particles can be returned to their original position.

Doing this would require signifcant effort. See https://openfoam.org/maintenance/ for details of how to fund such an undertaking.

For now I will put an error into MPPICCloud which triggers if the models in question are executed on a moving mesh.

will

2019-08-09 15:27

manager   ~0010667

I've added an error to both 7 and dev, so the issue is no longer reproducible.

https://github.com/OpenFOAM/OpenFOAM-7/commit/8c3acbbe710aacb43ddbb4d97bc2e6fcfc889c1f
https://github.com/OpenFOAM/OpenFOAM-dev/commit/db109ba80216df3108003dec12199f8ad50abfd4

Resolution of the actual issue is suspended, pending funding.

Issue History

Date Modified Username Field Change
2019-07-25 08:10 dscian New Issue
2019-07-25 08:19 dscian File Added: oscillatingMPPIC.tar.xz
2019-07-25 08:20 dscian File Added: gravityOn.mp4
2019-08-09 14:39 will Note Added: 0010665
2019-08-09 15:27 will Assigned To => will
2019-08-09 15:27 will Status new => closed
2019-08-09 15:27 will Resolution open => suspended
2019-08-09 15:27 will Note Added: 0010667