Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include "JohnsonJacksonFrictionalStress.H"
00027 #include <OpenFOAM/addToRunTimeSelectionTable.H>
00028
00029
00030
00031 namespace Foam
00032 {
00033 defineTypeNameAndDebug(JohnsonJacksonFrictionalStress, 0);
00034
00035 addToRunTimeSelectionTable
00036 (
00037 frictionalStressModel,
00038 JohnsonJacksonFrictionalStress,
00039 dictionary
00040 );
00041 }
00042
00043
00044
00045
00046 Foam::JohnsonJacksonFrictionalStress::JohnsonJacksonFrictionalStress
00047 (
00048 const dictionary& dict
00049 )
00050 :
00051 frictionalStressModel(dict)
00052 {}
00053
00054
00055
00056
00057 Foam::JohnsonJacksonFrictionalStress::~JohnsonJacksonFrictionalStress()
00058 {}
00059
00060
00061
00062
00063 Foam::tmp<Foam::volScalarField> Foam::JohnsonJacksonFrictionalStress::
00064 frictionalPressure
00065 (
00066 const volScalarField& alpha,
00067 const dimensionedScalar& alphaMinFriction,
00068 const dimensionedScalar& alphaMax,
00069 const dimensionedScalar& Fr,
00070 const dimensionedScalar& eta,
00071 const dimensionedScalar& p
00072 ) const
00073 {
00074
00075 return
00076 Fr*pow(max(alpha - alphaMinFriction, scalar(0)), eta)
00077 /pow(max(alphaMax - alpha, scalar(5.0e-2)), p);
00078 }
00079
00080
00081 Foam::tmp<Foam::volScalarField> Foam::JohnsonJacksonFrictionalStress::
00082 frictionalPressurePrime
00083 (
00084 const volScalarField& alpha,
00085 const dimensionedScalar& alphaMinFriction,
00086 const dimensionedScalar& alphaMax,
00087 const dimensionedScalar& Fr,
00088 const dimensionedScalar& eta,
00089 const dimensionedScalar& p
00090 ) const
00091 {
00092 return Fr*
00093 (
00094 eta*pow(max(alpha - alphaMinFriction, scalar(0)), eta - 1.0)
00095 *(alphaMax-alpha) + p*pow(max(alpha - alphaMinFriction, scalar(0)), eta)
00096 )/pow(max(alphaMax - alpha, scalar(5.0e-2)), p + 1.0);
00097 }
00098
00099
00100 Foam::tmp<Foam::volScalarField> Foam::JohnsonJacksonFrictionalStress::muf
00101 (
00102 const volScalarField& alpha,
00103 const dimensionedScalar& alphaMax,
00104 const volScalarField& pf,
00105 const volSymmTensorField& D,
00106 const dimensionedScalar& phi
00107 ) const
00108 {
00109 return dimensionedScalar("0.5", dimTime, 0.5)*pf*sin(phi);
00110 }
00111
00112
00113