CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Solver for Multispecies Mass Transfer induced Domain growth/shrinkage (https://www.cfd-online.com/Forums/openfoam-solving/167858-solver-multispecies-mass-transfer-induced-domain-growth-shrinkage.html)

MonoC March 10, 2016 07:26

Solver for Multispecies Mass Transfer induced Domain growth/shrinkage
 
Dear all,

I like to investigate the effects of size changes of particles on the mass transfer resistance on a theoretical basis.

To clarify, I have a solid particle, i. e. a sphere, that is immersed in a flowing liquid solvent. The solvent will sorb into the particle matrix, while some solute is extracted from this particle matrix into the solvent. In simple terms, the transfer of both species into and out of the particle matrix will cause the matrix to grow and shrink, which should have some effects on the formation of the momentum and concentration boundary layers. Subsequently this should cause deviations from the usual mass transfer resistance with a static boundary layer. These deviations I like to quantify.

Since I am rather new to using OpenFOAM with all these features I am not sure where to start. Could I for instance use chtmultiregionFOAM and adapt it to my needs, meaning removal of heat transfer and incorporation of mass transfer. Another idea is to start from incompressible flow features and add multiregion (one fluid, one solid) capabilities and include dynamic Mesh features to it.

I also think, that all this interaction will cause great complexity and non-linearity to the model. Therefore I like to start by combining mass transfer of passive scalars to icoFoam with Multiregion capabilities and check wether or not I can produce resonable results of the static boundary layer case without shrinkage. The next step should be to make the scalars (concentration of the solvent, solute in terms of mass fractions) active, so that there mass transfer will influence the boundary layer. If I am successful, I would add dynamic mesh features and cause artificial solid region growth by defining some growth or shrinkage velocity and check wether or not I can produce reasonable results as well. Finally I like to couple the growth velocity to the interfacial mass transfer, meaning "extraction" of mass will cause shrinkage and sorption of mass from the fluid into the solid region will cause growth. In my mind this already causes some trouble. Mass transfer will not be equal on the entire particle-fluid interface since the boundary layer will be different in front of and behind the particle with respect to the main flow direction. Therefore mass transfer will cause different net growth velocity in different areas of the interfacial area. This should cause the overall solid domain to deform from its initial shape over the course of the mass transfer process. From my understanding I can define some motion of a boundary path, but is it possible to give this boundary a velocity field that is related to the mass transfer over the boundary?

Any ideas regarding a programming approach for the solver, ideas on where to start and general tips, will be greatly appreciated.

Best regards,
André.

MonoC March 13, 2016 07:41

Solver for Multispecies Mass Transfer induced Domain growth/shrinkage (II)
 
Hello,

it is me again.

I came to the conclusion that starting from icoFoam and adding all the required features myself is the best way to learn and understand how all the stuff works.

But I am still unsure about the dynamic mesh capabilities. From what I read so far dynamic mesh methods are implemented in different ways. In my first run I want to prescribe a mesh velocity to the solid-fluid interface. To my understanding there is a mesh solver based on Laplace's equation that will diffuse the mesh velocity from the boundary into the solid region mesh. My goal however is, to couple the velocity of each internal mesh cell face to the net mass flux crossing the face. Is this even possible with the on board capabilities of the dynamic mesh libraries or do I need to add such a feature. And to your knowledge, how complicated will this be for somebody (like me), who is not as experienced with OpenFOAM and C++ programming.

Thanks a lot in advance for any help you can give me on my questions :)

Regards,
André


All times are GMT -4. The time now is 13:52.