Go to the documentation of this file.
51 bool Foam::sampledInterface::updateGeometry()
const
53 const fvMesh& fvm =
static_cast<const fvMesh&
>(
mesh());
56 if (fvm.time().timeIndex() == prevTimeIndex_)
61 prevTimeIndex_ = fvm.time().timeIndex();
72 const label exposedPatchi =
75 bitSet cellsToSelect(
mesh().cellZones().selection(zoneNames_));
78 <<
"Allocating subset of size "
79 << cellsToSelect.count()
80 <<
" with exposed faces into patch "
81 << exposedPatchi <<
endl;
85 new fvMeshSubset(fvm, cellsToSelect, exposedPatchi)
100 fvm.lookupObjectRef<reconstructionSchemes>
102 "reconstructionScheme"
129 zoneNames_.resize(1);
138 <<
"Restricting to cellZone " <<
flatOutput(zoneNames_)
139 <<
" with exposed internal faces into patch "
164 if (prevTimeIndex_ == -1)
177 return updateGeometry();
186 return sampleOnFaces(sampler);
195 return sampleOnFaces(sampler);
204 return sampleOnFaces(sampler);
213 return sampleOnFaces(sampler);
222 return sampleOnFaces(sampler);
231 return sampleOnPoints(interpolator);
240 return sampleOnPoints(interpolator);
248 return sampleOnPoints(interpolator);
257 return sampleOnPoints(interpolator);
266 return sampleOnPoints(interpolator);
272 os <<
"sampledInterface: " <<
name();
A class for handling words, derived from Foam::string.
A class for managing temporary objects.
bool found(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Search for an entry (const access) with the given keyword.
virtual bool update()
Update the surface as required.
interfaceProperties interface(alpha1, U, thermo->transportPropertiesDict())
const cellZoneMesh & cellZones() const
Return cell zone mesh.
label findIndex(const keyType &key) const
Zone index for the first match, return -1 if not found.
sampledInterface(const word &name, const polyMesh &mesh, const dictionary &dict)
Construct from dictionary.
const polyBoundaryMesh & boundaryMesh() const
Return boundary mesh.
Ostream & endl(Ostream &os)
Add newline and flush stream.
Mesh consisting of general polyhedral cells.
word name(const complex &c)
Return string representation of complex.
virtual bool needsUpdate() const
Does the surface need an update?
label findIndex(const ListType &input, typename ListType::const_reference val, const label start=0)
Deprecated(2017-10) search for first occurrence of the given element.
addNamedToRunTimeSelectionTable(topoSetCellSource, badQualityToCell, word, badQuality)
bool readEntry(const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX, bool mandatory=true) const
An abstract class for surfaces with sampling.
label findPatchID(const word &patchName, const bool allowNotFound=true) const
Find patch index given a name, return -1 if not found.
virtual bool expire()
Mark the surface as needing an update.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Macros for easy insertion into run-time selection tables.
Mesh data needed to do the Finite Volume discretisation.
FlatOutput::OutputAdaptor< Container, Delimiters > flatOutput(const Container &obj, Delimiters delim)
Global flatOutput() function with specified output delimiters.
virtual tmp< scalarField > sample(const interpolation< scalar > &sampler) const
Sample volume field onto surface faces.
virtual void print(Ostream &) const
Write.
#define DebugInfo
Report an information message using Foam::Info.
virtual void clearGeom() const
Additional cleanup when clearing the geometry.
const Time & time() const
Return the top-level database.
const polyMesh & mesh() const
Access to the underlying mesh.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
label timeIndex() const
Return current time index.
bool interpolate() const
Interpolation to nodes requested for surface.
defineTypeNameAndDebug(combustionModel, 0)
bool readIfPresent(const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX) const