34 #ifndef MeshToMeshMapGeometricFields_H
35 #define MeshToMeshMapGeometricFields_H
65 iterator fieldIter =
fields.begin();
79 mesh.objectRegistry::template lookupClass<VolField<Type>>()
85 iterator fieldIter =
fields.begin();
93 if (fvMeshToFvMesh::debug)
122 iterator fieldIter =
fields.begin();
123 fieldIter !=
fields.end();
130 if (fvMeshToFvMesh::debug)
132 Info<<
"Mapping " << field.typeName <<
' ' << field.name()
136 field.reset(mapper.
srcToTgt<Type>(field));
138 field.instance() = field.time().
name();
146 template<
class>
class PatchField,
148 class SetSizePatchFieldMapper
160 mesh.objectRegistry::template lookupClass<GField>()
167 iterator fieldIter =
fields.begin();
168 fieldIter !=
fields.end();
172 GField& field =
const_cast<GField&
>(*fieldIter());
173 field.clearOldTimes();
176 fields = mesh.objectRegistry::template lookupClass<GField>();
180 for (
direction cmpt = 0; cmpt < pTraits<Type>::nComponents; cmpt++)
182 setComponent(
NaN, cmpt) = std::numeric_limits<scalar>::signaling_NaN();
188 fieldIter !=
fields.end();
192 GField& field =
const_cast<GField&
>(*fieldIter());
194 if (fvMeshToFvMesh::debug)
196 Info<<
"Setting to NaN " << field.typeName <<
' ' << field.name()
200 const typename GField::Mesh& mesh = field.mesh();
202 field.primitiveFieldRef().setSize(GeoMesh::size(mesh));
203 field.primitiveFieldRef() =
NaN;
205 field.boundaryFieldRef().setSize(mesh.boundary().size());
209 if (isA<processorPolyPatch>(mesh().boundaryMesh()[
patchi]))
211 field.boundaryFieldRef().set
224 typename GField::Patch& pf = field.boundaryFieldRef()[
patchi];
225 pf.map(pf, SetSizePatchFieldMapper(pf.patch().size()));
231 field.instance() = field.time().name();
#define forAll(list, i)
Loop across all elements in list.
static const char *const typeName
Generic GeometricField class.
void reset(const tmp< GeometricField< Type, PatchField, GeoMesh >> &)
Reset the field contents to the given field.
void clearOldTimes()
Delete old time and previous iteration fields.
An STL-conforming iterator.
An STL-conforming hash table.
const Time & time() const
Return time.
fileName & instance() const
Return the instance directory, constant, system, <time> etc.
const word & name() const
Return name.
virtual const fileName & name() const
Return the name of the stream.
This boundary condition is not designed to be evaluated; it is assumed that the value is assigned via...
const word & name() const
Return const reference to name.
tmp< VolField< Type > > srcToTgt(const VolField< Type > &srcFld) const
Interpolate a source vol field to the target with no left.
Mesh data needed to do the Finite Volume discretisation.
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
autoPtr< CompressibleMomentumTransportModel > New(const volScalarField &rho, const volVectorField &U, const surfaceScalarField &phi, const viscosity &viscosity)
Ostream & endl(Ostream &os)
Add newline and flush stream.
label & setComponent(label &l, const direction)
void MeshToMeshMapVolFields(const fvMesh &mesh, const fvMeshToFvMesh &mapper)
typename VolField< Type >::Internal VolInternalField
void MeshToMeshMapVolInternalFields(const fvMesh &mesh, const fvMeshToFvMesh &mapper)
void NaNGeometricFields(const fvMesh &mesh, const fvMeshToFvMesh &mapper)