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/)
-   -   InterFoam MULES solver (https://www.cfd-online.com/Forums/openfoam-solving/59304-interfoam-mules-solver.html)

jaswi December 4, 2007 11:40

Dear OpenFOAM uses and Develop
 
Dear OpenFOAM uses and Developers

I request the forum users to shed some light on the details of how MULES works. Please share the information if anybody is aware of it.

I looked into the code and this is what it contains:

1) overloaded function templates for
--> explicitSolve - bounds can be supplied as the function argument;

--> explicitSolve01 - for a scalar bounded between 0 and 1;

--> implicitSolve01 - for a scalar bounded between 0 and 1;

and a function template for

--> limiter

InterFoam uses the MULES solver to solve for the volScalarField gamma and calls

MULES::explicitSolve01(gamma, phi, phiGamma).

This eventually calls the function template

template<class>
void Foam::MULES::explicitSolve
(
volScalarField& psi,
const surfaceScalarField& phi,
surfaceScalarField& phiPsi,
const SpType& Sp,
const SuType& Su,
const scalar psiMax,
const scalar psiMin
)


with Sp = zero
Su = zero
psiMax = 1.0
psiMin = 0.0

Could anybody please comment what does template arguments: class SpType, class SuType stand for?

Thanks in advance

Jaswinder

joris.hey November 13, 2012 04:36

I think they are representing eventual source terms in the advection equation. There is even this possibility :
Code:

void Foam::MULES::explicitSolve  (      const RhoType& rho,      volScalarField& psi,      const surfaceScalarField& phi,    surfaceScalarField& phiPsi,      const SpType& Sp,      const SuType& Su,    const scalar psiMax,      const scalar psiMin  )
with field rho.

How can I call this special MULES function (I need to provide both source terms and rho) ?

I do :

Quote:

MULES::explicitSolve (oneField (), alpha1 , phi , phiAlpha , volScalarField ("Sp",fvc::div(voidfraction*U)),zeroField (), 1, 0);
But it doesn't compile... What's wrong ?:confused:

Cheers,
J

akidess November 13, 2012 05:45

Did you look at interPhaseChangeFoam?

See: http://foam.sourceforge.net/docs/cpp/a02688_source.html

joris.hey November 13, 2012 06:49

yeah, I got it. it was because I should have written geometricOnesField() in place of OneField().

Thanks !

santiagomarquezd November 21, 2012 08:56

Hi Jaswinder, how you doing? MULES is an Flux Corrected Transport explicit solver for hyperbolic equations. Its implementation mostly follow the ideas of Zalesak limiter but the \lambda's are calculated iteratively. I'm going to give some details in my thesis soon but that's the basic idea.

Regards.

Rohitsingh November 17, 2020 02:30

InterFoam learning material/sources
 
Hey Jaswi,

I am new entry in this OpenFOAM interFoam solver learners list. Can you share some notes and ideas with me regarding VOF treatment, flow through porous media and other programming aspects in OpenFOAM.

my email id is : singhrohitace4@gmail.com

j.patel June 21, 2022 08:46

Hi Jaswinder,


I have just started learning the interFoam Solver in OpenFoam V9. I would be very grateful if you could send me some notes. my email id is;


jitendra.patel5789@gmail.com


Thank you in advance



Regards,
Jitendra


All times are GMT -4. The time now is 15:28.