View Issue Details

IDProjectCategoryView StatusLast Update
0002561OpenFOAM[All Projects] Bugpublic2022-05-18 11:14
Reporterniklas.wikstromAssigned Towill 
PrioritynormalSeveritycrashReproducibilityalways
Status resolvedResolutionfixed 
PlatformGNU/LinuxOSOtherOS Version(please specify)
Product Versiondev 
Fixed in Versiondev 
Summary0002561: cyclicACMI makes rhoCentral(DyM)Foam crash due to surface interpolation issue
DescriptionrhoCentralFoam crashes (sigFpe) immediately in time loop on a cases containing cyclicACMI patches. The cause of the sigFpe seems to be that "interpolate(rho,neg)" produces a zero rho_neg field, which is then used in the denominator to calculate U_neg (around line 88, rhoCentralFoam.C).

Thank you.
Steps To ReproduceUnpack attached small case.
run included makeMesh.sh script
run rhoCentralDyMFoam (or rhoCentralFoam)
Additional InformationCase runs as expected in OpenFOAM 3.x.
Case runs in OpenFOAM 4.x/dev using "linear" interpolation.
Case runs in OpenFOAM 4.x/dev using e.g. sonicFoam

(For completeness: Tested on Fedora-25;gcc-6.3.1 and Centos-7.3;gcc-4.8.5)
TagsACMI, cyclicACMI

Activities

niklas.wikstrom

2017-05-24 09:52

reporter  

slidingBlockTestCase.tgz (7,909 bytes)

niklas.wikstrom

2017-05-24 10:04

reporter   ~0008185

I should perhaps mention that the same issue appears in version 4.x

MattijsJ

2017-06-23 16:30

reporter   ~0008238

The issue is in cyclicACMIFvPatchField<Type>::patchNeighbourField().

Uncoupled faces assume a patchNeighbour value of 0. Attached version assumes a patchNeighbour value of the blockage patch (for uncoupled faces). Needs a bit of testing.

MattijsJ

2017-06-23 16:30

reporter  

cyclicACMIFvPatchField.C (8,252 bytes)

MattijsJ

2017-06-30 10:42

reporter   ~0008294

Above fix adjusts only the patchNeighbour value so will unfortunately make e.g. Gauss gradient incorrect on the partially overlapping bits since the coupled part should only include coupled contributions and the blockage part only the 'wall' contributions. We probably have to have the value field calculated separately, instead of being calculated from internal and neighbour field.

will

2022-05-18 11:14

manager   ~0012593

Numerical issues with ACMI-based patch couplings have been resolved by the new Non-Conformal Coupled (NCC) development. See the following commit for explanation, and instructions for how to use NCC and convert cases from AMI.

https://github.com/OpenFOAM/OpenFOAM-dev/commit/569fa31d09f98e29d1aaf84d40bb16043f104ec6

Issue History

Date Modified Username Field Change
2017-05-24 09:52 niklas.wikstrom New Issue
2017-05-24 09:52 niklas.wikstrom File Added: slidingBlockTestCase.tgz
2017-05-24 09:52 niklas.wikstrom Tag Attached: ACMI
2017-05-24 09:52 niklas.wikstrom Tag Attached: cyclicACMI
2017-05-24 10:04 niklas.wikstrom Note Added: 0008185
2017-06-23 16:30 MattijsJ Note Added: 0008238
2017-06-23 16:30 MattijsJ File Added: cyclicACMIFvPatchField.C
2017-06-30 10:42 MattijsJ Note Added: 0008294
2022-05-18 11:14 will Assigned To => will
2022-05-18 11:14 will Status new => resolved
2022-05-18 11:14 will Resolution open => fixed
2022-05-18 11:14 will Fixed in Version => dev
2022-05-18 11:14 will Note Added: 0012593