LagrangianMesh.C File Reference
Include dependency graph for LagrangianMesh.C:

Go to the source code of this file.

Namespaces

 Foam
 Namespace for OpenFOAM.
 

Macros

#define PERMUTE_TYPE_FIELDS(Type, GeoField)
 
#define INJECT_TYPE_FIELDS(Type, GeoField)
 
#define INJECT_STATE_FIELD(GeoField)
 
#define INSERT_INTERNAL_FIELD_NAMES(Type, GeoField)
 
#define INSERT_FIELD_NAMES(Type, GeoField)    fieldNames.insert(lookupCurrentFields<GeoField<Type>>().toc());
 
#define BIRTH_TYPE_FIELDS(Type, GeoField)
 
#define INIT_EVAL_TYPE_PATCH_FIELDS(Type, GeoField)
 
#define EVAL_TYPE_PATCH_FIELDS(Type, GeoField)
 
#define OLD_TIME_TYPE_FIELDS(Type, GeoField)
 
#define RESET_OLD_TIME_TYPE_FIELDS(Type, GeoField)
 
#define CLEAR_OLD_TIME_TYPE_FIELDS(Type, GeoField)
 
#define INSERT_FIELD_NAMES(Type, GeoField)    fieldNames.insert(lookupCurrentFields<GeoField<Type>>(true).toc());
 

Functions

 defineTypeNameAndDebug (LagrangianMesh, 0)
 
template void Foam::LagrangianMesh::track< Foam::LagrangianMesh::linearDisplacement > (const List< LagrangianState > &endState, const linearDisplacement &displacement, const LagrangianSubScalarField &deltaFraction, LagrangianSubScalarSubField &fraction)
 
template void Foam::LagrangianMesh::track< Foam::LagrangianMesh::parabolicDisplacement > (const List< LagrangianState > &endState, const parabolicDisplacement &displacement, const LagrangianSubScalarField &deltaFraction, LagrangianSubScalarSubField &fraction)
 

Detailed Description

Original source file LagrangianMesh.C

Definition in file LagrangianMesh.C.

Macro Definition Documentation

◆ PERMUTE_TYPE_FIELDS

#define PERMUTE_TYPE_FIELDS (   Type,
  GeoField 
)
Value:
{ \
HashTable<GeoField<Type>*> fields \
( \
lookupCurrentFields<GeoField<Type>>() \
); \
forAllIter(typename HashTable<GeoField<Type>*>, fields, iter) \
{ \
if (permutedFieldNames.found(iter()->name())) continue; \
\
permutedFieldNames.insert(iter()->name()); \
\
permuteList(permutation, iter()->primitiveFieldRef()); \
\
resizeContainer(iter()->primitiveFieldRef()); \
} \
}
#define forAllIter(Container, container, iter)
Iterate across all elements in the container object of type.
Definition: UList.H:458
Info<< "Calculating turbulent flame speed field St\n"<< endl;volScalarField St(IOobject("St", runTime.name(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE), flameWrinkling->Xi() *Su);multivariateSurfaceInterpolationScheme< scalar >::fieldTable fields
Definition: createFields.H:234
void insert(const scalar, DynamicList< floatScalar > &)
Append scalar to given DynamicList.
word name(const LagrangianState state)
Return a string representation of a Lagrangian state enumeration.
conserve primitiveFieldRef()+

◆ INJECT_TYPE_FIELDS

#define INJECT_TYPE_FIELDS (   Type,
  GeoField 
)
Value:
{ \
HashTable<GeoField<Type>*> fields \
( \
lookupCurrentFields<GeoField<Type>>() \
); \
forAllIter(typename HashTable<GeoField<Type>*>, fields, iter) \
{ \
if (specifiedFieldNames.found(iter()->name())) continue; \
\
injectedFieldNames.insert(iter()->name()); \
\
/* Resize the field */ \
iter()->resize(injectionMesh.end()); \
\
/* Use the source condition to set the new values */ \
injectionMesh.sub(*iter()).ref() = \
iter()->sources()[injection.name()].value \
( \
injection, \
injectionMesh \
); \
} \
}
trAU ref().rename("rAU")
triSurfaceToAgglom resize(surfacesMesh.size())

◆ INJECT_STATE_FIELD

#define INJECT_STATE_FIELD (   GeoField)
Value:
{ \
if (foundObject<GeoField<label>>(stateName)) \
{ \
GeoField<label>& state = \
lookupObjectRef<GeoField<label>>(stateName); \
\
injectedFieldNames.insert(stateName); \
\
/* Resize the field */ \
state.resize(injectionMesh.end()); \
\
/* Set unknown state */ \
injectionMesh.sub(state).ref() = \
static_cast<label>(LagrangianState::none); \
} \
}

◆ INSERT_INTERNAL_FIELD_NAMES

#define INSERT_INTERNAL_FIELD_NAMES (   Type,
  GeoField 
)
Value:
{ \
HashTable<GeoField<Type>*> fields \
( \
lookupCurrentFields<GeoField<Type>>() \
); \
forAllIter(typename HashTable<GeoField<Type>*>, fields, iter) \
{ \
if (specifiedFieldNames.found(iter()->name())) continue; \
if (injectedFieldNames.found(iter()->name())) continue; \
\
internalFieldNames.insert(iter()->name()); \
} \
}
bool found
if(!fvConstraints.PtrListDictionary< fvConstraint >::size())

◆ INSERT_FIELD_NAMES [1/2]

#define INSERT_FIELD_NAMES (   Type,
  GeoField 
)     fieldNames.insert(lookupCurrentFields<GeoField<Type>>().toc());

◆ BIRTH_TYPE_FIELDS

#define BIRTH_TYPE_FIELDS (   Type,
  GeoField 
)
Value:
{ \
HashTable<GeoField<Type>*> fields \
( \
lookupCurrentFields<GeoField<Type>>() \
); \
forAllIter(typename HashTable<GeoField<Type>*>, fields, iter) \
{ \
if (specifiedFieldNames.found(iter()->name())) continue; \
if (birthedFieldNames.found(iter()->name())) continue; \
\
birthedFieldNames.insert(iter()->name()); \
\
/* Resize the field */ \
iter()->resize(birthMesh.end()); \
\
/* Map values from the parent elements */ \
birthMesh.sub(*iter()).ref().primitiveFieldRef() = \
Field<Type>(UIndirectList<Type>(*iter(), parents)()); \
} \
}

◆ INIT_EVAL_TYPE_PATCH_FIELDS

#define INIT_EVAL_TYPE_PATCH_FIELDS (   Type,
  GeoField 
)
Value:
{ \
HashTable<GeoField<Type>*> fields \
( \
lookupCurrentFields<GeoField<Type>>() \
); \
forAllIter(typename HashTable<GeoField<Type>*>, fields, iter) \
{ \
forAll(boundary(), patchi) \
{ \
iter()->boundaryFieldRef()[patchi].initEvaluate \
( \
pBufs, \
fraction \
); \
} \
} \
}
label patchi
faceListList boundary(nPatches)

◆ EVAL_TYPE_PATCH_FIELDS

#define EVAL_TYPE_PATCH_FIELDS (   Type,
  GeoField 
)
Value:
{ \
HashTable<GeoField<Type>*> fields \
( \
lookupCurrentFields<GeoField<Type>>() \
); \
forAllIter(typename HashTable<GeoField<Type>*>, fields, iter) \
{ \
forAll(boundary(), patchi) \
{ \
iter()->boundaryFieldRef()[patchi].evaluate \
( \
pBufs, \
fraction \
); \
} \
} \
}

◆ OLD_TIME_TYPE_FIELDS

#define OLD_TIME_TYPE_FIELDS (   Type,
  GeoField 
)
Value:
{ \
HashTable<GeoField<Type>*> fields \
( \
lookupCurrentFields<GeoField<Type>>() \
); \
forAllIter(typename HashTable<GeoField<Type>*>, fields, iter) \
{ \
iter()->storeOldTimes(); \
iter()->oldTime(); \
} \
}

◆ RESET_OLD_TIME_TYPE_FIELDS

#define RESET_OLD_TIME_TYPE_FIELDS (   Type,
  GeoField 
)
Value:
{ \
HashTable<GeoField<Type>*> fields \
( \
lookupCurrentFields<GeoField<Type>>() \
); \
forAllIter(typename HashTable<GeoField<Type>*>, fields, iter) \
{ \
iter()->reset(iter()->oldTime()); \
} \
}

◆ CLEAR_OLD_TIME_TYPE_FIELDS

#define CLEAR_OLD_TIME_TYPE_FIELDS (   Type,
  GeoField 
)
Value:
{ \
HashTable<GeoField<Type>*> fields \
( \
lookupCurrentFields<GeoField<Type>>() \
); \
forAllIter(typename HashTable<GeoField<Type>*>, fields, iter) \
{ \
iter()->clearOldTimes(); \
} \
}

◆ INSERT_FIELD_NAMES [2/2]

#define INSERT_FIELD_NAMES (   Type,
  GeoField 
)     fieldNames.insert(lookupCurrentFields<GeoField<Type>>(true).toc());

Function Documentation

◆ Foam::LagrangianMesh::track< Foam::LagrangianMesh::linearDisplacement >()

template void Foam::LagrangianMesh::track< Foam::LagrangianMesh::linearDisplacement > ( const List< LagrangianState > &  endState,
const linearDisplacement &  displacement,
const LagrangianSubScalarField &  deltaFraction,
LagrangianSubScalarSubField &  fraction 
)

◆ Foam::LagrangianMesh::track< Foam::LagrangianMesh::parabolicDisplacement >()

template void Foam::LagrangianMesh::track< Foam::LagrangianMesh::parabolicDisplacement > ( const List< LagrangianState > &  endState,
const parabolicDisplacement &  displacement,
const LagrangianSubScalarField &  deltaFraction,
LagrangianSubScalarSubField &  fraction 
)