dynamicAlphaContactAngleFvPatchScalarField Class Reference

A dynamic alphaContactAngle scalar boundary condition. More...

Inheritance diagram for dynamicAlphaContactAngleFvPatchScalarField:
Collaboration diagram for dynamicAlphaContactAngleFvPatchScalarField:

Public Member Functions

 TypeName ("dynamicAlphaContactAngle")
 Runtime type information. More...
 
 dynamicAlphaContactAngleFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 dynamicAlphaContactAngleFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 dynamicAlphaContactAngleFvPatchScalarField (const dynamicAlphaContactAngleFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 dynamicAlphaContactAngleFvPatchScalarField (const dynamicAlphaContactAngleFvPatchScalarField &)=delete
 Disallow copy without setting internal field reference. More...
 
 dynamicAlphaContactAngleFvPatchScalarField (const dynamicAlphaContactAngleFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Copy constructor setting internal field reference. More...
 
virtual tmp< fvPatchScalarFieldclone (const DimensionedField< scalar, volMesh > &iF) const
 Construct and return a clone setting internal field reference. More...
 
virtual tmp< scalarFieldtheta (const fvPatchVectorField &Up, const fvsPatchVectorField &nHat) const
 Evaluate and return dynamic contact-angle. More...
 
virtual void write (Ostream &) const
 Write. More...
 
- Public Member Functions inherited from alphaContactAngleFvPatchScalarField
 TypeName ("alphaContactAngle")
 Runtime type information. More...
 
 alphaContactAngleFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 alphaContactAngleFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 alphaContactAngleFvPatchScalarField (const alphaContactAngleFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given alphaContactAngleFvPatchScalarField. More...
 
 alphaContactAngleFvPatchScalarField (const alphaContactAngleFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Construct as copy setting internal field reference. More...
 
const HashTable< contactAngleProperties > & thetaProps () const
 Return the contact angle properties. More...
 
 TypeName ("alphaContactAngle")
 Runtime type information. More...
 
 alphaContactAngleFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 alphaContactAngleFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 alphaContactAngleFvPatchScalarField (const alphaContactAngleFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given alphaContactAngleFvPatchScalarField. More...
 
 alphaContactAngleFvPatchScalarField (const alphaContactAngleFvPatchScalarField &)=delete
 Disallow copy without setting internal field reference. More...
 
 alphaContactAngleFvPatchScalarField (const alphaContactAngleFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Copy constructor setting internal field reference. More...
 
virtual void evaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
 Evaluate the patch field. More...
 

Additional Inherited Members

- Public Types inherited from alphaContactAngleFvPatchScalarField
enum  limitControls { lcNone, lcGradient, lcZeroGradient, lcAlpha }
 Alpha limit options. More...
 
- Public Attributes inherited from alphaContactAngleFvPatchScalarField
limitControls limit_
 
- Static Public Attributes inherited from alphaContactAngleFvPatchScalarField
static const NamedEnum< limitControls, 4 > limitControlNames_
 

Detailed Description

A dynamic alphaContactAngle scalar boundary condition.

Usage
Standard properties:
Property Description Required Default value
theta0 Equilibrium contact angle yes
uTheta Velocity scale yes

The advancing and receding contact angles can be either specified with respect to the interface normal direction:

Property Description Required Default value
thetaA Limiting advancing contact angle yes
thetaR Limiting receding contact angle yes

or with respect to the phase outward direction:

Property Description Required Default value
thetaAdv Limiting advancing contact angle yes
thetaRec Limiting receding contact angle yes

Example of the boundary condition specification using the interface normal direction convention:

    <patchName>
    {
        type           dynamicAlphaContactAngle;
        uTheta         1;
        theta0         90;
        thetaA         70;
        thetaR         110;
        limit          gradient;
        value          uniform 0;
    }

Example of the boundary condition specification using the phase outward direction convention (opposite to the normal direction):

    <patchName>
    {
        type           dynamicAlphaContactAngle;
        uTheta         1;
        theta0         90;
        thetaAdv       110;
        thetaRec       70;
        limit          gradient;
        value          uniform 0;
    }
See also
Foam::alphaContactAngleFvPatchScalarField Foam::constantAlphaContactAngleFvPatchScalarField
Source files

Definition at line 150 of file dynamicAlphaContactAngleFvPatchScalarField.H.

Constructor & Destructor Documentation

◆ dynamicAlphaContactAngleFvPatchScalarField() [1/5]

dynamicAlphaContactAngleFvPatchScalarField ( const fvPatch p,
const DimensionedField< scalar, volMesh > &  iF 
)

Construct from patch and internal field.

Definition at line 35 of file dynamicAlphaContactAngleFvPatchScalarField.C.

Referenced by dynamicAlphaContactAngleFvPatchScalarField::clone(), and dynamicAlphaContactAngleFvPatchScalarField::dynamicAlphaContactAngleFvPatchScalarField().

Here is the caller graph for this function:

◆ dynamicAlphaContactAngleFvPatchScalarField() [2/5]

dynamicAlphaContactAngleFvPatchScalarField ( const fvPatch p,
const DimensionedField< scalar, volMesh > &  iF,
const dictionary dict 
)

Construct from patch, internal field and dictionary.

Definition at line 50 of file dynamicAlphaContactAngleFvPatchScalarField.C.

References dynamicAlphaContactAngleFvPatchScalarField::dynamicAlphaContactAngleFvPatchScalarField(), and Foam::evaluate().

Here is the call graph for this function:

◆ dynamicAlphaContactAngleFvPatchScalarField() [3/5]

Construct by mapping given.

dynamicAlphaContactAngleFvPatchScalarField onto a new patch

Definition at line 68 of file dynamicAlphaContactAngleFvPatchScalarField.C.

References dynamicAlphaContactAngleFvPatchScalarField::dynamicAlphaContactAngleFvPatchScalarField().

Here is the call graph for this function:

◆ dynamicAlphaContactAngleFvPatchScalarField() [4/5]

Disallow copy without setting internal field reference.

◆ dynamicAlphaContactAngleFvPatchScalarField() [5/5]

Copy constructor setting internal field reference.

Definition at line 85 of file dynamicAlphaContactAngleFvPatchScalarField.C.

References dynamicAlphaContactAngleFvPatchScalarField::theta().

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

TypeName ( "dynamicAlphaContactAngle"  )

Runtime type information.

◆ clone()

virtual tmp<fvPatchScalarField> clone ( const DimensionedField< scalar, volMesh > &  iF) const
inlinevirtual

◆ theta()

Foam::tmp< Foam::scalarField > theta ( const fvPatchVectorField Up,
const fvsPatchVectorField nHat 
) const
virtual

Evaluate and return dynamic contact-angle.

Implements alphaContactAngleFvPatchScalarField.

Definition at line 102 of file dynamicAlphaContactAngleFvPatchScalarField.C.

References Foam::mag(), fvPatchField< Type >::patchInternalField(), scalarField(), and Foam::tanh().

Referenced by dynamicAlphaContactAngleFvPatchScalarField::clone(), and dynamicAlphaContactAngleFvPatchScalarField::dynamicAlphaContactAngleFvPatchScalarField().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented from alphaContactAngleFvPatchScalarField.

Definition at line 132 of file dynamicAlphaContactAngleFvPatchScalarField.C.

References Foam::makePatchTypeField(), alphaContactAngleFvPatchScalarField::write(), and Foam::writeEntry().

Referenced by dynamicAlphaContactAngleFvPatchScalarField::clone().

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following files: