View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0002456||OpenFOAM||[All Projects] Bug||public||2017-02-09 13:43||2020-11-23 12:08|
|Fixed in Version||dev|
|Summary||0002456: curvatureSeparation in 'Hot Boxes'-tutorial doesn't work|
in the hotBoxes-tutorial of the reactingParcelFilmFoam the curvatureSeparation doesn't work.
Run the case, e.g 5s. In result-file ./5/uniform/regionModels/wallFilmRegion/wallFilmRegionOutputProperties all the injectedMass is due to drippingInjection and 0 for curvatureSeparation.
In addition, the wallFilm-height deltaf gets to high for my understanding. And then the minimum temperature in the thermoSingleLayer/wallFilm goes down to 270K instead staying at more less 300K.
I think it's a problem for the model if the wallFilm gets to high. But I think it's caused by the water not separating at the bottom of the boxes...
|Steps To Reproduce||Run hotBoxes-tutorial|
I've added a small testcase.
the curvatureSeperation is the only injectionModel activated. And there are some parcels generated. So curvatureSeperation seems to work.
But in 0.05 uniform/regionModels/wallFilmRegion/wallFilmRegionOutputProperties there is no count for the injected parcels by curvatureSeperation...
Note: the numeric instability is due to the high wallFilm height deltaf in beginning for demonstrating the effect in the first timesteps
bugCurvatureSeperation.zip (3,499,933 bytes)
I can confirm this problem with curvatureSeparation. I also attached a different testcase which shows this behaviour: When using curvatureSeparation only, the case gets instable and temperatures behave stange.
When using another model (BrunDripping or Dripping) the case stays stable.
I don't think it has something to do with the film height but rather with the model itself.
testcase_curvatureSeparation.tgz (8,749 bytes)
after a long time I took a look into this case again and updated it to work with the newer OpenFoam-dev versions.
In short it's a box with a water film on it, which starts dry by the water running of due to gravity.
To run more stable all the temperatures are the same (293 K) and constrained via fvOptions and the phaseChangeModel is deactivated.
Shildenbrands point is correct regarding the instability of the curvatureSeparation-model. I think it is due to this two lines in the curvatureSeparation.C:
const volScalarField& delta = film.delta();
diameterToInject = separated*delta;
As far as I understand the code, if droplets are separating, the diameter of these droplets are the same as the film height.
So this does not make sense.
Additionally if the film height is really low, the 1e8 to 1e11 particle are added into one single parcel. This is also the point when the simulation becomes instable (in the attached case shortly after 0.07s).
I think it's necessary to implement some checks (like in drippingInjection.C, starting line 129), that droplets only can separate, if a minMass is overcome. For the diameter I don't know what's the best solution.
The mass injected by the curvatureSeparation-Model continues to be neglected in the outputProperties.
As you can see in the wallFilmRegionOutputProperties below injectedMass is zero, even more ~1500 parcels detached the film.
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Hope this helps in locating these bugs.
V03_TestCase_CurvatureSeparation.zip (30,925 bytes)
I have attached a proposed patch of the curvatureSeparation.
The patch introduces a stable film thickness (similar as in the two other existing injectionModels brunDrippingInjection/ drippingInjection) which have to be exceeded for the model to activate the separation.
With a film tickness deltaStable = 0.0001 the attached test case as well as the Hot Boxes - Tutorial stay numerically stable.
curvatureSeparation.C (10,469 bytes)
curvatureSeparation.H (4,520 bytes)
||Resolved by commit d7d1221cd47833c0e12fbbe5e38bc5f3db95a467|
|2017-02-09 13:43||fsch1||New Issue|
|2017-02-09 13:43||fsch1||Tag Attached: curvatureSeparation|
|2017-02-10 13:08||fsch1||File Added: bugCurvatureSeperation.zip|
|2017-02-10 13:08||fsch1||Note Added: 0007734|
|2017-02-10 14:58||shildenbrand||File Added: testcase_curvatureSeparation.tgz|
|2017-02-10 14:58||shildenbrand||Note Added: 0007737|
|2019-06-21 13:40||fsch1||File Added: V03_TestCase_CurvatureSeparation.zip|
|2019-06-21 13:40||fsch1||Note Added: 0010524|
|2019-07-01 13:13||fsch1||File Added: curvatureSeparation.C|
|2019-07-01 13:13||fsch1||File Added: curvatureSeparation.H|
|2019-07-01 13:13||fsch1||Note Added: 0010537|
|2020-11-23 12:08||henry||Assigned To||=> henry|
|2020-11-23 12:08||henry||Status||new => resolved|
|2020-11-23 12:08||henry||Resolution||open => fixed|
|2020-11-23 12:08||henry||Fixed in Version||=> dev|
|2020-11-23 12:08||henry||Note Added: 0011738|