PatchExprField< Type > Class Template Reference

PatchFunction1 with values supplied by a parsed expression. More...

Inheritance diagram for PatchExprField< Type >:
[legend]
Collaboration diagram for PatchExprField< Type >:
[legend]

Public Member Functions

 TypeName ("expression")
 Runtime type information. More...
 
void operator= (const PatchExprField< Type > &)=delete
 No copy assignment. More...
 
 PatchExprField (const polyPatch &pp, const word &redirectType, const word &entryName, const dictionary &dict, const bool faceValues=true)
 Construct from patch, entry name and dictionary. More...
 
 PatchExprField (const PatchExprField< Type > &rhs)
 Copy construct. More...
 
 PatchExprField (const PatchExprField< Type > &rhs, const polyPatch &pp)
 Copy construct setting patch. More...
 
virtual tmp< PatchFunction1< Type > > clone () const
 Construct and return a clone. More...
 
virtual tmp< PatchFunction1< Type > > clone (const polyPatch &pp) const
 Construct and return a clone setting patch. More...
 
virtual ~PatchExprField ()=default
 Destructor. More...
 
virtual tmp< Field< Type > > value (const scalar x) const
 Return value. More...
 
virtual bool constant () const
 Is value constant (i.e. independent of x) More...
 
virtual bool uniform () const
 Is value uniform (i.e. independent of coordinate) More...
 
virtual tmp< Field< Type > > integrate (const scalar x1, const scalar x2) const
 Integrate between two values. More...
 
virtual void autoMap (const FieldMapper &mapper)
 Map (and resize as needed) from self given a mapping object. More...
 
virtual void rmap (const PatchFunction1< Type > &pf1, const labelList &addr)
 Reverse map the given PatchFunction1 onto this PatchFunction1. More...
 
virtual void writeData (Ostream &os) const
 Write in dictionary format. More...
 
- Public Member Functions inherited from PatchFunction1< Type >
 TypeName ("PatchFunction1") declareRunTimeSelectionTable(autoPtr
 Runtime type information. More...
 
 PatchFunction1 (const polyPatch &pp, const word &entryName, const bool faceValues=true)
 Construct from polyPatch and entry name. More...
 
 PatchFunction1 (const polyPatch &pp, const word &entryName, const dictionary &dict, const bool faceValues=true)
 Construct from polyPatch, dictionary and entry name. More...
 
 PatchFunction1 (const PatchFunction1< Type > &rhs)
 Copy construct. More...
 
 PatchFunction1 (const PatchFunction1< Type > &rhs, const polyPatch &pp)
 Copy construct setting patch. More...
 
virtual ~PatchFunction1 ()=default
 Destructor. More...
 
virtual tmp< pointFieldlocalPosition (const pointField &globalPos) const
 Helper: optionally convert coordinates to local coordinates. More...
 
virtual tmp< Field< Type > > transform (const Field< Type > &fld) const
 Apply optional transformation. More...
 
virtual tmp< Field< Type > > transform (const tmp< Field< Type >> &tfld) const
 Apply optional transformation. More...
 

Additional Inherited Members

- Public Types inherited from PatchFunction1< Type >
typedef Field< Type > returnType
 
- Static Public Member Functions inherited from PatchFunction1< Type >
static autoPtr< PatchFunction1< Type > > New (const polyPatch &pp, const word &entryName, const dictionary &dict, const bool faceValues=true, const bool mandatory=true)
 Selector. More...
 
static autoPtr< PatchFunction1< Type > > NewCompat (const polyPatch &pp, const word &entryName, std::initializer_list< std::pair< const char *, int >> compat, const dictionary &dict, const bool faceValues=true, const bool mandatory=true)
 Compatibility selector. More...
 
static autoPtr< PatchFunction1< Type > > NewIfPresent (const polyPatch &pp, const word &entryName, const dictionary &dict, const bool faceValues=true)
 An optional selector. More...
 
static refPtr< PatchFunction1< Type > > New (HashPtrTable< PatchFunction1< Type >> &cache, const polyPatch &pp, const word &entryName, const dictionary &dict, enum keyType::option matchOpt=keyType::LITERAL, const bool faceValues=true, const bool mandatory=true)
 
- Public Attributes inherited from PatchFunction1< Type >
 PatchFunction1
 
 dictionary
 
const polyPatchpp
 
const polyPatch const wordtype
 
const polyPatch const word const wordentryName
 
const polyPatch const word const word const dictionarydict
 
const polyPatch const word const word const dictionary const bool faceValues
 
const polyPatch const word const word const dictionary const bool pp
 
const polyPatch const word const word const dictionary const bool type
 
const polyPatch const word const word const dictionary const bool entryName
 
const polyPatch const word const word const dictionary const bool dict
 
- Protected Member Functions inherited from PatchFunction1< Type >
void operator= (const PatchFunction1< Type > &)=delete
 No copy assignment. More...
 
- Protected Attributes inherited from PatchFunction1< Type >
coordinateScaling< Type > coordSys_
 Optional local coordinate system and scaling. More...
 

Detailed Description

template<class Type>
class Foam::PatchFunction1Types::PatchExprField< Type >

PatchFunction1 with values supplied by a parsed expression.

Usage
Example:
<patchName>
{
    type            uniformFixedValue;
    uniformValue
    {
        type            expression;

        // optional variables for use within the expression
        variables
        (
            "start = 0.5"
            "stop  = 1"
        );

        // A step function
        expression
        #{
            scalar(arg() > start && arg() < stop) * vector(1, 0, 0)
        #};
    }
}
See also
Foam::exprFixedValueFvPatchField
Source files

Definition at line 83 of file PatchFunction1Expression.H.

Constructor & Destructor Documentation

◆ PatchExprField() [1/3]

PatchExprField ( const polyPatch pp,
const word redirectType,
const word entryName,
const dictionary dict,
const bool  faceValues = true 
)

Construct from patch, entry name and dictionary.

The patch must correspond to an fvPatch!

Definition at line 35 of file PatchFunction1Expression.C.

References Foam::expressions::patchExpr::debug, dict, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, and Foam::nl.

Here is the call graph for this function:

◆ PatchExprField() [2/3]

PatchExprField ( const PatchExprField< Type > &  rhs)
explicit

Copy construct.

Definition at line 69 of file PatchFunction1Expression.C.

◆ PatchExprField() [3/3]

PatchExprField ( const PatchExprField< Type > &  rhs,
const polyPatch pp 
)
explicit

Copy construct setting patch.

Definition at line 79 of file PatchFunction1Expression.C.

◆ ~PatchExprField()

virtual ~PatchExprField ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "expression"  )

Runtime type information.

◆ operator=()

void operator= ( const PatchExprField< Type > &  )
delete

No copy assignment.

◆ clone() [1/2]

virtual tmp<PatchFunction1<Type> > clone ( ) const
inlinevirtual

Construct and return a clone.

Implements PatchFunction1< Type >.

Definition at line 135 of file PatchFunction1Expression.H.

◆ clone() [2/2]

virtual tmp<PatchFunction1<Type> > clone ( const polyPatch pp) const
inlinevirtual

Construct and return a clone setting patch.

Implements PatchFunction1< Type >.

Definition at line 144 of file PatchFunction1Expression.H.

References PatchFunction1< Type >::pp.

◆ value()

Foam::tmp< Foam::Field< Type > > value ( const scalar  x) const
virtual

Return value.

The parameter 'x' is accessible as 'arg' in the function

Reimplemented from PatchFunction1< Type >.

Definition at line 96 of file PatchFunction1Expression.C.

References DebugInfo, Foam::nl, and x.

◆ constant()

virtual bool constant ( ) const
inlinevirtual

Is value constant (i.e. independent of x)

Reimplemented from PatchFunction1< Type >.

Definition at line 166 of file PatchFunction1Expression.H.

◆ uniform()

virtual bool uniform ( ) const
inlinevirtual

Is value uniform (i.e. independent of coordinate)

Implements PatchFunction1< Type >.

Definition at line 172 of file PatchFunction1Expression.H.

◆ integrate()

Foam::tmp< Foam::Field< Type > > integrate ( const scalar  x1,
const scalar  x2 
) const
virtual

Integrate between two values.

Reimplemented from PatchFunction1< Type >.

Definition at line 117 of file PatchFunction1Expression.C.

References NotImplemented.

◆ autoMap()

void autoMap ( const FieldMapper mapper)
virtual

Map (and resize as needed) from self given a mapping object.

Reimplemented from PatchFunction1< Type >.

Definition at line 129 of file PatchFunction1Expression.C.

◆ rmap()

void rmap ( const PatchFunction1< Type > &  pf1,
const labelList addr 
)
virtual

Reverse map the given PatchFunction1 onto this PatchFunction1.

Reimplemented from PatchFunction1< Type >.

Definition at line 139 of file PatchFunction1Expression.C.

◆ writeData()

void writeData ( Ostream os) const
virtual

Write in dictionary format.

Reimplemented from PatchFunction1< Type >.

Definition at line 150 of file PatchFunction1Expression.C.

References Foam::name().

Here is the call graph for this function:

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