Go to the documentation of this file.
50 if (curTimeIndex <
runTime.timeIndex())
52 curTimeIndex =
runTime.timeIndex();
94 "reconstructionScheme",
101 reconstructionSchemesCoeffs_(
dict),
113 dict.getOrDefault(
"writeFields",false)
128 dict.getOrDefault(
"writeFields",false)
135 interfaceCell_(alpha1_.
mesh().nCells(), false),
136 interfaceLabels_(0.2*alpha1_.
mesh().nCells()),
137 timeIndexAndIter_(0, 0)
154 forAll(interfaceCell_, celli)
156 if (interfaceCell_[celli])
158 if (
mag(normal_[celli]) != 0)
160 interfaceCellAddressing.set(celli);
161 vector n = -normal_[celli]/
mag(normal_[celli]);
163 scalar cutVal = (centre_[celli] -
mesh.
C()[celli]) &
n;
179 labelList meshCells(interfaceCellAddressing.sortedToc());
183 faceList faces(std::move(dynFaces));
185 return interface(std::move(pts), std::move(faces), std::move(meshCells));
const T & second() const noexcept
Return second element, which is also the last element.
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh >> reconstruct(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
Defines the attributes of an object for which implicit objectRegistry management is supported,...
label calcSubCell(const label celli, const scalar cutValue, const vector &normal)
Sets internal values and returns face status.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
A class for handling words, derived from Foam::string.
Pair< label > timeIndexAndIter_
Store timeindex/iteration to avoid multiple reconstruction.
A bitSet stores bits (elements with only two states) in packed internal format and supports a variety...
constexpr const char *const group
Group name for atomic constants.
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
static constexpr const zero Zero
Global zero (0)
interfaceProperties interface(alpha1, U, thermo->transportPropertiesDict())
defineRunTimeSelectionTable(reactionRateFlameArea, dictionary)
Class for cutting a cell, cellI, of an fvMesh, mesh_, at its intersection with an surface defined by ...
reconstructionSchemes(const reconstructionSchemes &)=delete
No copy construct.
const volScalarField & alpha1
#define forAll(list, i)
Loop across all elements in list.
label nCells() const noexcept
Number of mesh cells.
const dimensionSet dimArea(sqr(dimLength))
DynamicList< T, SizeMin > & append(const T &val)
Append an element to the end of this list.
interface surface()
Generated interface surface points/faces.
volScalarField & alpha1_
Reference to the VoF Field.
const volVectorField & C() const
Return cell centres as volVectorField.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Mesh data needed to do the Finite Volume discretisation.
const DynamicList< point > & facePoints()
Returns the points of the cutting PLICface.
bool alreadyReconstructed(bool forceUpdate=true) const
Is the interface already up-to-date?
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
labelList identity(const label len, label start=0)
Create identity map of the given length with (map[i] == i)
A face is a list of labels corresponding to mesh vertices.
constant condensation/saturation model.
defineTypeNameAndDebug(combustionModel, 0)