CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM

error in surface film

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   October 4, 2020, 05:15
Default error in surface film
  #1
Member
 
Riddhideep Biswas
Join Date: May 2020
Posts: 30
Rep Power: 5
Rid@foam is on a distinguished road
Hello everyone!!
I am running a simulation using sprayFoam and I want to use surface film modeling. I have done everything extra that is required for the surface film model to work. But during the beginning of the simulation, I get an error like this:

--> FOAM FATAL ERROR:

request for surfaceFilmRegionModel surfaceFilmProperties from objectRegistry test_run_electrostaticFoam failed
available objects of type surfaceFilmRegionModel are
0()

From function const Type& Foam:bjectRegistry::lookupObject(const Foam::word&) const [with Type = Foam::regionModels::surfaceFilmModels::surfaceFilm RegionModel]
in file /home/riddhideep/OpenFOAM/OpenFOAM-6/src/OpenFOAM/lnInclude/objectRegistryTemplates.C at line 193.

FOAM aborting

Anyone please help me what to do to get rid of this error.
Rid@foam is offline   Reply With Quote

Old   October 4, 2020, 12:15
Default
  #2
Senior Member
 
Join Date: Aug 2015
Posts: 494
Rep Power: 14
clapointe is on a distinguished road
The error indicates that a surface film region does not exist. A surface film region must first be created -- the hotBoxes tutorial is one example using surface film modeling that could be used as a reference. You should also make sure that the solver is able to incorporate surface film models (i.e., a minimal check would be that it includes a "createSurfaceFilmModels.H" file). A quick check at sprayFoam suggests this is not the case (at least for openfoam 8). If this is also true for the version you are using, then perhaps the solver used for the hotBoxes tutorial would work for your case.

Caelan
clapointe is offline   Reply With Quote

Old   October 4, 2020, 13:00
Default
  #3
Member
 
Riddhideep Biswas
Join Date: May 2020
Posts: 30
Rep Power: 5
Rid@foam is on a distinguished road
Thanks a lot Caelan sir for your reply.
I am using OF version 6 and in my sprayFoam.C file, surfaceFilmModel is not included( I have attached picture). I think that is the reason surface film modelling is not working. Can you suggest what changes to do so that it may be able to handle surfaceFilm models?
Also a curious question is that I saw in the sprayFoam folder, sprayDymFoam and engineFoam are also included. Why are these solvers included within sprayFoam and what are connection they have with sprayFoam?

Last edited by -mAx-; September 22, 2022 at 03:19.
Rid@foam is offline   Reply With Quote

Old   October 4, 2020, 13:07
Default
  #4
Senior Member
 
Join Date: Aug 2015
Posts: 494
Rep Power: 14
clapointe is on a distinguished road
Like I said, using a lagrangian solver with surface film modeling incorporated will be the easiest option. Checking the available solvers for openfoam 6 shows that this would be reactingParcelFoam. Otherwise, you can use reactingParcelFoam as an example of how to add the modeling to sprayFoam.

As for the folders within sprayFoam, those are other solvers related to sprayFoam. One is spray foam dynamic mesh functionality, and the other is engine-specific.

Caelan
clapointe is offline   Reply With Quote

Old   October 4, 2020, 13:48
Default
  #5
Member
 
Riddhideep Biswas
Join Date: May 2020
Posts: 30
Rep Power: 5
Rid@foam is on a distinguished road
Thanks again for your reply.
Including one solver inside the folder of another solver, can the mother solver use the utilities of the inserted solver?
In simple language, if I insert the reactingParcelFoam solver inside the sprayFoam solver, then will sprayFoam be able to handle surface film modelling?
Rid@foam is offline   Reply With Quote

Old   October 4, 2020, 14:05
Default
  #6
Senior Member
 
Join Date: Aug 2015
Posts: 494
Rep Power: 14
clapointe is on a distinguished road
No, each solver gets compiled on its own (although they can share files, if necessary). You would need to modify the sprayFoam code. It would be something like (make sure it is correct for version 6) :

Adding creation code to createFields.H (make sure the create... file is available)
Code:
#include "createSurfaceFilmModel.H"
Adding code to createFieldRefs.H
Code:
regionModels::surfaceFilmModel& surfaceFilm = tsurfaceFilm()
Adding the relevant source terms to each conservation equation -- see e.g. reactingParcelFoam. Various .H files will need to be added to the solver, and Make/options will likely also need to be modified.

Caelan
clapointe is offline   Reply With Quote

Old   October 7, 2020, 13:44
Default
  #7
Member
 
Riddhideep Biswas
Join Date: May 2020
Posts: 30
Rep Power: 5
Rid@foam is on a distinguished road
Thank you. I will definitely try your method. Right now, I am also unable to understand the entries used in the surfaceFilmProperties file:

Code:
surfaceFilmModel kinematicSingleLayer;

regionName wallFilmRegion;

active true;

kinematicSingleLayerCoeffs
{
filmThermoModel constant;
constantCoeffs
{
specie water;
rho0 1000;
mu0 1e-3;
sigma0 0.07;
}

injectionModels
(
curvatureSeparation
drippingInjection
);

curvatureSeparationCoeffs
{
definedPatchRadii
(
("(cube[0-9][0-9]_side[0-9]_to_cube[0-9][0-9]_side[0-9])" 0)
);
}

drippingInjectionCoeffs
{
cloudName reactingCloud1;
deltaStable 0;

particlesPerParcel 100.0;

parcelDistribution
{
type RosinRammler;
RosinRammlerDistribution
{
minValue 5e-04;
maxValue 0.0012;
d 7.5e-05;
n 0.5;
}
}
}
turbulence laminar;
laminarCoeffs
{
Cf 0.001;
}

forces
(
thermocapillary
distributionContactAngle
);

distributionContactAngleCoeffs
{
Ccf 1;

distribution
{
type normal;
normalDistribution
{
minValue 50;
maxValue 100;
expectation 75;
variance 100;
}
}

zeroForcePatches ();
}
}
What do curvatureSeparation, drippingInjection mean and what are the forces thermocapillary and distributionContactAngle and their significances? Also what do the coefficients Cf and Ccf denote?
Please help me to gain insights in these areas and suggest some sources from where I can understand these.
Rid@foam is offline   Reply With Quote

Old   October 7, 2020, 13:53
Default
  #8
Senior Member
 
Join Date: Aug 2015
Posts: 494
Rep Power: 14
clapointe is on a distinguished road
Resources to understand the film modeling include e.g. :

K. Meredith, Y. Xin, and J. de Vries. A numerical model for simulation of thin-film water transport over solid fuel surfaces. Fire Safety Science, 10:415–428, 2011.
K.V. Meredith, A. Heather, J. De Vries, and Y. Xin. A numerical model for partially-wetted flow of thin liquid films. Computational Methods in Multiphase Flow VI, 70:239, 2011

You can also find the relevant header files; they usually include descriptions of the code. E.g., for curvatureSeparation (from the curvatureSeparation.H file) :

Code:
Description
    Curvature film separation model
    Assesses film curvature via the mesh geometry and calculates a force
    balance of the form:
        F_sum = F_inertial + F_body + F_surface
    If F_sum < 0, the film separates. Similarly, if F_sum > 0 the film will
    remain attached.
    Based on description given by
        Owen and D. J. Ryley. The flow of thin liquid films around corners.
        International Journal of Multiphase Flow, 11(1):51-62, 1985.
Caelan
clapointe is offline   Reply With Quote

Old   October 9, 2020, 12:22
Default
  #9
Member
 
Riddhideep Biswas
Join Date: May 2020
Posts: 30
Rep Power: 5
Rid@foam is on a distinguished road
Thank you for your valuable suggestions sir. Currently I am running a lagrangian simulation wherein I am putting the stick condition to a patch so that parcels, when they come in contact with that patch, will stick there. But the output shows that the mass which sticks is more than the mass introduced in the system!!
I have used the cloud function object facePostProcessing to determine the accumulated mass at that patch and the facePostProcessing output also shows the same thing i.e. it shows the total mass greater than the mass introduced in the system.
I have attached a figure showing the related outputs.
Please comment on this and also suggest how to overcome this.

Last edited by -mAx-; September 22, 2022 at 03:19.
Rid@foam is offline   Reply With Quote

Old   October 9, 2020, 12:52
Default
  #10
Senior Member
 
Join Date: Aug 2015
Posts: 494
Rep Power: 14
clapointe is on a distinguished road
I am not familiar with the facePostProcessing but I suppose that that the patch value could be cumulative and the cloud value is instantaneous. In any case I suggest looking at the related code to see how those values are calculated.

Caelan
clapointe is offline   Reply With Quote

Old   October 9, 2020, 14:45
Default
  #11
Member
 
Riddhideep Biswas
Join Date: May 2020
Posts: 30
Rep Power: 5
Rid@foam is on a distinguished road
Thank you once again sir!! I looked in the source code of facePostProcessing but couldn't make out much. I hope it is outputing the cumulative value.
Now I am running a standard tutorial case "cylinder" of reactingParcelFoam and the I am finding the mass absorbed in the surface film satisfactory and logical.
I am attaching a sample output of a thermo single layer fim solution.
Here 2 terms are used. 1 is added mass and another is current mass which is slightly less than the added mass. Now what are these? Why is the current mass a bit less than the added mass?
I am guessing that added mass is the total mass added to the film and from that a certain fraction has vaporised and hence the current mass is the vaporised mass subtracted from the added mass which is currently remaining in the film.
Am I guessing correctly?

Last edited by -mAx-; September 22, 2022 at 03:19.
Rid@foam is offline   Reply With Quote

Old   October 29, 2020, 03:08
Default pressure bondary condition in sprayFoam
  #12
Member
 
Riddhideep Biswas
Join Date: May 2020
Posts: 30
Rep Power: 5
Rid@foam is on a distinguished road
Hello Caelan sir.
I am simulating a case in sprayFoam where I want to give the atmospheric boundary conditions at the outlet of the domain. What pressure value should I give in my p file.
Should I give a value 0 Pa(i.e. the gauge pressure) or 1e5 Pa(i.e. the absolute pressure)?
Rid@foam is offline   Reply With Quote

Old   September 5, 2021, 17:20
Default
  #13
New Member
 
pierre
Join Date: May 2021
Posts: 4
Rep Power: 4
pierrechot is on a distinguished road
Hi,

Did you successfully insert surfaceFilmModel into sprayfoam ?

What are the .H files added?

Thank you, Pierre
pierrechot is offline   Reply With Quote

Reply

Tags
sprayfoam, surface film

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
modifying mass transfer within surface film model openfoamerdodo OpenFOAM Running, Solving & CFD 0 March 11, 2020 01:41
How To Create Fowcs William Hawkings Surface in Fluent? marinkobezu FLUENT 7 October 25, 2018 11:51
[Gmsh] Problem with Gmsh nishant_hull OpenFOAM Meshing & Mesh Conversion 23 August 5, 2015 03:09
free convection heat transfer from a heated horizontal surface through a liquid to a thin cooled fin Kaushik FLUENT 1 May 8, 2000 07:47
sphere in a free surface (thin film)flow Vasu Veerapaneni Main CFD Forum 0 September 15, 1998 18:32


All times are GMT -4. The time now is 17:23.