GeometricField< Type, PatchField, GeoMesh >::Boundary Class Reference

The boundary fields. More...

Inheritance diagram for GeometricField< Type, PatchField, GeoMesh >::Boundary:
[legend]
Collaboration diagram for GeometricField< Type, PatchField, GeoMesh >::Boundary:
[legend]

Public Member Functions

 Boundary (const BoundaryMesh &bmesh)
 Construct from a BoundaryMesh, setting patches later. More...
 
 Boundary (const BoundaryMesh &bmesh, const Internal &field, const word &patchFieldType=PatchField< Type >::calculatedType())
 
 Boundary (const BoundaryMesh &bmesh, const Internal &field, const wordList &wantedPatchTypes, const wordList &actualPatchTypes=wordList())
 
 Boundary (const BoundaryMesh &bmesh, const Internal &field, const PtrList< PatchField< Type >> &)
 
 Boundary (const Internal &field, const Boundary &btf)
 Construct as copy setting the reference to the internal field. More...
 
 Boundary (const Internal &field, const Boundary &btf, const labelList &patchIDs, const word &patchFieldName)
 
 Boundary (const Boundary &btf)
 Copy construct. More...
 
 Boundary (const BoundaryMesh &bmesh, const Internal &field, const dictionary &dict)
 Construct from dictionary. More...
 
void readField (const Internal &field, const dictionary &dict)
 Read the boundary field. More...
 
void updateCoeffs ()
 Update the boundary condition coefficients. More...
 
void evaluate ()
 Evaluate boundary conditions. More...
 
wordList types () const
 Return a list of the patch types. More...
 
Boundary boundaryInternalField () const
 
LduInterfaceFieldPtrsList< Type > interfaces () const
 
lduInterfaceFieldPtrsList scalarInterfaces () const
 
void writeEntry (const word &keyword, Ostream &os) const
 Write boundary field as dictionary entry. More...
 
void writeEntries (Ostream &os) const
 Write dictionary entries of the individual boundary fields. More...
 
void operator= (const Boundary &)
 Assignment to BoundaryField<Type, PatchField, BoundaryMesh> More...
 
void operator= (const FieldField< PatchField, Type > &)
 Assignment to FieldField<PatchField, Type> More...
 
void operator= (const Type &)
 Assignment to Type. More...
 
void operator== (const Boundary &)
 Forced assignment to. More...
 
void operator== (const FieldField< PatchField, Type > &)
 Forced assignment to FieldField<PatchField, Type> More...
 
void operator== (const Type &)
 Forced assignment to Type. More...
 
- Public Member Functions inherited from FieldField< PatchField, Type >
constexpr FieldField () noexcept
 Construct null. More...
 
 FieldField (const label size)
 Construct given size. More...
 
 FieldField (const word &type, const FieldField< PatchField, Type > &ff)
 Clone construct with new type. More...
 
 FieldField (const FieldField< PatchField, Type > &ff)
 Copy construct, cloning each element. More...
 
 FieldField (FieldField< PatchField, Type > &&ff)
 Move construct. More...
 
 FieldField (FieldField< PatchField, Type > &ff, bool reuse)
 Construct as copy or re-use as specified. More...
 
 FieldField (const PtrList< PatchField< Type >> &list)
 Copy construct from PtrList. More...
 
 FieldField (PtrList< PatchField< Type >> &&list)
 Move construct from PtrList. More...
 
 FieldField (const tmp< FieldField< PatchField, Type >> &tf)
 Move/copy construct from tmp<FieldField> More...
 
 FieldField (Istream &is)
 Construct from Istream. More...
 
tmp< FieldField< PatchField, Type > > clone () const
 Clone. More...
 
void negate ()
 Negate this field. More...
 
tmp< FieldField< PatchField, cmptType > > component (const direction) const
 Return a component field of the field. More...
 
void replace (const direction, const FieldField< PatchField, cmptType > &)
 Replace a component field of the field. More...
 
void replace (const direction, const cmptType &)
 Replace a component field of the field. More...
 
tmp< FieldField< PatchField, Type > > T () const
 Return the field transpose (only defined for second rank tensors) More...
 
void operator= (const FieldField< PatchField, Type > &)
 Copy assignment. More...
 
void operator= (FieldField< PatchField, Type > &&)
 Move assignment. More...
 
void operator= (const tmp< FieldField< PatchField, Type >> &)
 Move or clone assignment. More...
 
void operator= (const Type &val)
 Assign uniform value. More...
 
void operator+= (const FieldField< PatchField, Type > &)
 
void operator+= (const tmp< FieldField< PatchField, Type >> &)
 
void operator+= (const Type &)
 
void operator-= (const FieldField< PatchField, Type > &)
 
void operator-= (const tmp< FieldField< PatchField, Type >> &)
 
void operator-= (const Type &)
 
void operator*= (const FieldField< PatchField, scalar > &)
 
void operator*= (const tmp< FieldField< PatchField, scalar >> &)
 
void operator*= (const scalar &)
 
void operator/= (const FieldField< PatchField, scalar > &)
 
void operator/= (const tmp< FieldField< PatchField, scalar >> &)
 
void operator/= (const scalar &)
 

Additional Inherited Members

- Public Types inherited from FieldField< PatchField, Type >
typedef pTraits< Type >::cmptType cmptType
 Component type. More...
 
- Static Public Member Functions inherited from FieldField< PatchField, Type >
static tmp< FieldField< PatchField, Type > > NewCalculatedType (const FieldField< PatchField, Type2 > &ff)
 Return a pointer to a new calculatedFvPatchFieldField created on. More...
 

Detailed Description

template<class Type, template< class > class PatchField, class GeoMesh>
class Foam::GeometricField< Type, PatchField, GeoMesh >::Boundary

The boundary fields.

Definition at line 115 of file GeometricField.H.

Constructor & Destructor Documentation

◆ Boundary() [1/8]

Boundary ( const BoundaryMesh bmesh)
explicit

Construct from a BoundaryMesh, setting patches later.

Definition at line 185 of file GeometricBoundaryField.C.

◆ Boundary() [2/8]

Boundary ( const BoundaryMesh bmesh,
const Internal field,
const word patchFieldType = PatchField< Type >::calculatedType() 
)

Construct from a BoundaryMesh, reference to the internal field and a patch type

◆ Boundary() [3/8]

Boundary ( const BoundaryMesh bmesh,
const Internal field,
const wordList wantedPatchTypes,
const wordList actualPatchTypes = wordList() 
)

Construct from a BoundaryMesh, reference to the internal field and a wordList of patch types and optional the actual patch types (to override constraint patches)

◆ Boundary() [4/8]

Boundary ( const BoundaryMesh bmesh,
const Internal field,
const PtrList< PatchField< Type >> &   
)

Construct from a BoundaryMesh, reference to the internal field and a PtrList<PatchField<Type>>

◆ Boundary() [5/8]

Boundary ( const Internal field,
const Boundary btf 
)

Construct as copy setting the reference to the internal field.

◆ Boundary() [6/8]

Boundary ( const Internal field,
const Boundary btf,
const labelList patchIDs,
const word patchFieldName 
)

Construct as copy setting the reference to the internal field and resetting type of field for given patch IDs

◆ Boundary() [7/8]

Boundary ( const Boundary btf)

Copy construct.

Dangerous because Field may be set to a field which gets deleted Need new type of BoundaryField, one which is part of a geometric field for which snGrad etc. may be called and a free standing BoundaryField for which such operations are unavailable.

◆ Boundary() [8/8]

Boundary ( const BoundaryMesh bmesh,
const Internal field,
const dictionary dict 
)

Construct from dictionary.

Member Function Documentation

◆ readField()

void readField ( const Internal field,
const dictionary dict 
)

Read the boundary field.

Definition at line 36 of file GeometricBoundaryField.C.

References clear(), DebugInFunction, dict, entry::dict(), Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, field(), forAll, found, entry::isDict(), keyType::isLiteral(), entry::keyword(), Foam::name(), Foam::New(), Foam::nl, patchIds, Foam::BitOps::set(), and setSize().

Here is the call graph for this function:

◆ updateCoeffs()

void updateCoeffs ( )

Update the boundary condition coefficients.

Definition at line 395 of file GeometricBoundaryField.C.

References DebugInFunction, forAll, and Foam::nl.

Referenced by faMatrix< Type >::faMatrix().

Here is the caller graph for this function:

◆ evaluate()

void evaluate ( )

Evaluate boundary conditions.

Definition at line 407 of file GeometricBoundaryField.C.

References UPstream::blocking, UPstream::commsTypeNames, DebugInFunction, UPstream::defaultCommsType, Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, init(), Foam::nl, UPstream::nonBlocking, UPstream::nRequests(), UPstream::parRun(), Foam::foamVersion::patch, UPstream::scheduled, and UPstream::waitRequests().

Here is the call graph for this function:

◆ types()

Foam::wordList types ( ) const

Return a list of the patch types.

Definition at line 470 of file GeometricBoundaryField.C.

References forAll.

◆ boundaryInternalField()

Foam::GeometricField< Type, PatchField, GeoMesh >::Boundary boundaryInternalField ( ) const

Return BoundaryField of the cell values neighbouring the boundary

Definition at line 488 of file GeometricBoundaryField.C.

References forAll.

◆ interfaces()

Foam::LduInterfaceFieldPtrsList< Type > interfaces ( ) const

Return a list of pointers for each patch field with only those pointing to interfaces being set

Definition at line 505 of file GeometricBoundaryField.C.

References forAll, and UPtrList< const LduInterfaceField< Type > >::set().

Here is the call graph for this function:

◆ scalarInterfaces()

Foam::lduInterfaceFieldPtrsList scalarInterfaces ( ) const

Return a list of pointers for each patch field with only those pointing to interfaces being set

Definition at line 527 of file GeometricBoundaryField.C.

References forAll, and UPtrList< T >::set().

Referenced by faMatrix< Type >::residual().

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

◆ writeEntry()

void writeEntry ( const word keyword,
Ostream os 
) const

Write boundary field as dictionary entry.

Definition at line 548 of file GeometricBoundaryField.C.

References FUNCTION_NAME, and os().

Here is the call graph for this function:

◆ writeEntries()

void writeEntries ( Ostream os) const

Write dictionary entries of the individual boundary fields.

Definition at line 563 of file GeometricBoundaryField.C.

References forAll, Foam::name(), os(), and Foam::foamVersion::patch.

Here is the call graph for this function:

◆ operator=() [1/3]

void operator= ( const Boundary )

Assignment to BoundaryField<Type, PatchField, BoundaryMesh>

◆ operator=() [2/3]

void operator= ( const FieldField< PatchField, Type > &  ptff)

Assignment to FieldField<PatchField, Type>

Definition at line 591 of file GeometricBoundaryField.C.

References FieldField< Field, Type >::operator=().

Here is the call graph for this function:

◆ operator=() [3/3]

void operator= ( const Type &  t)

Assignment to Type.

Definition at line 601 of file GeometricBoundaryField.C.

References FieldField< Field, Type >::operator=().

Here is the call graph for this function:

◆ operator==() [1/3]

void operator== ( const Boundary )

Forced assignment to.

BoundaryField<Type, PatchField, BoundaryMesh>

◆ operator==() [2/3]

void operator== ( const FieldField< PatchField, Type > &  ptff)

Forced assignment to FieldField<PatchField, Type>

Definition at line 625 of file GeometricBoundaryField.C.

References forAll.

◆ operator==() [3/3]

void operator== ( const Type &  t)

Forced assignment to Type.

Definition at line 638 of file GeometricBoundaryField.C.

References forAll.


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