View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0002155||OpenFOAM||Contribution||public||2016-07-20 12:36||2018-10-20 00:18|
|Fixed in Version||dev|
|Summary||0002155: Deactivating ACMI interpolation for special fields|
I am trying to manipulate the ACMI BC (and the according parent classes) in a way that we would be able to unset the ACMI interpolation for special fields. At the moment the main problem is that the cellMotion_ and pointMotion_ fields that come with the fvMotionSolvers interpolate between the coupled interfaces. This should be avoided because we want to have a sliding interface, not a somehow interpolated. As I saw in the last days, it is not as trivial to implement it. Due to the fact that I do not know all classes and how they interact like you I want to ask if this could be implemented as a feature.
For example in 2-stroke-engines the channels should be connected and opened due to the piston. So we need a sliding interface ACMI but with a fvMotionSolver. The problem that occur with the fvMotionSolvers is the mesh deformation based on the interpolation between the ACMI coupled patches for the fields I mentioned above. For a better understanding, I added the case and a picture.
In the picture you see the standard ACMI behavior with fvMotionSolver (right) and some modified ACMI with the expected result on the left side. In any case the left behavior correlates to uncommented lines in the /src/meshTools/AMIInterpolation/patches/cyclicACMI/cyclicACMIPolyPatch file that is at least wrong.
Thanks in advance.
If you have any hints where I should start modifying would be also nice, then I can re-programm it and if its good, you can use it and add the feature.
|Steps To Reproduce||Untar and run moveDynamicMesh application|
|Tags||No tags attached.|
twoStrokeEngineMantis.tar.gz (996,567 bytes)
The cellMotion and pointMotion fields in most motionSolvers are read (or read-if-present). Hence you can set the boundary conditions yourself overriding the default (which is cyclicAMI). You'll have to use the 'patchType' specification to indicate you are overriding a constraint type and know what you're doing.
E.g. in boundaryField of cellDisplacement field:
thanks for your replay and the hint with patchType to overwrite the stuff. In any case it is not really working for the pointMotionUx for the case I attached. The cellMotionUx field is wonderful and as expected (no interpolation after the hint you gave me). The pointMotionUx field is still interpolating even if I explicit change the patch type according to the stuff you mentioned.
The problem only occur on the moving patch. Can you give me some feedback if this is a bug or not?
I added the modified case. Finally, I do not want to ask for support (: I am just wondering why we still get a interpolation between the patches (bug?) Alternatively a codedFixedValue BC could avoid this but I had no time till now to investigate into that.
Thanks in advance.
twoStrokeEngine2.tar.gz (993,109 bytes)
Works if I explicitly disable the interpolation inside cyclicACMIPointPatchField (attached). Now just need to figure out why it doesn't preserve the bc's on pointMotionUx...
cyclicACMIPointPatchField.C (7,659 bytes)
||The problem is the sum of the point weights ('volPointSumWeights') inside volPointInterpolation. This still has ACMI bc so will adapt the weights across the ACMI.|
Thanks for the update, unfortunately I have no time to investigate into that :(
If you uncomment the lines, then no field is interpolated, or do I got it wrong?
Reported in the same time.
Good to know. Will you make a workaround for that problem?
Hi all, after saw the commit of @Chris today, the problem is resolved by commit a0a88d66 too.
I checked the case attached and it is working (at least the mesh motion).
@Shorty: Many thanks for the update. And it was Will who made the commit ;)
Closing this as resolved and duplicate of issue 2057.
|2016-07-20 12:36||Shorty||New Issue|
|2016-07-20 12:36||Shorty||File Added: twoStrokeEngineMantis.tar.gz|
|2016-07-22 14:10||MattijsJ||Note Added: 0006553|
|2016-07-25 11:17||Shorty||Note Added: 0006572|
|2016-07-25 12:42||Shorty||Note Edited: 0006572||View Revisions|
|2016-07-25 12:44||Shorty||Note Edited: 0006572||View Revisions|
|2016-07-25 12:44||Shorty||File Added: twoStrokeEngine2.tar.gz|
|2016-09-27 13:58||MattijsJ||File Added: cyclicACMIPointPatchField.C|
|2016-09-27 13:58||MattijsJ||Note Added: 0006924|
|2016-09-27 14:04||MattijsJ||Note Added: 0006925|
|2016-09-27 14:04||Shorty||Note Added: 0006926|
|2016-09-27 14:13||Shorty||Note Added: 0006928|
|2018-10-19 19:25||Shorty||Note Added: 0010118|
|2018-10-20 00:16||wyldckat||Relationship added||duplicate of 0002057|
|2018-10-20 00:18||wyldckat||Assigned To||=> will|
|2018-10-20 00:18||wyldckat||Status||new => resolved|
|2018-10-20 00:18||wyldckat||Resolution||open => duplicate|
|2018-10-20 00:18||wyldckat||Fixed in Version||=> dev|
|2018-10-20 00:18||wyldckat||Note Added: 0010119|