42 Foam::fvMotionSolverEngineMesh::fvMotionSolverEngineMesh(
const IOobject& io)
45 pistonLayers_(
"pistonLayers",
dimLength, 0.0),
49 engineDB_.engineDict()
67 Info<<
"deltaZ = " << deltaZ <<
endl;
88 motionSolver_.
solve();
102 bool absolutePhi =
false;
125 <<
"Piston speed = " << pistonSpeed <<
" m/s" <<
endl;
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &vf, const surfaceScalarField &faceFlux, Istream &schemeData)
const IOdictionary & engineDict() const
Return the engine geometry dictionary.
GeometricBoundaryField & boundaryField()
Return reference to GeometricBoundaryField.
bool foundObject(const word &name) const
Is the named Type found?
const surfaceScalarField & phi() const
Return cell face motion fluxes.
Calculate the mesh motion flux and convert fluxes from absolute to relative and back.
virtual tmp< pointField > curPoints() const
Return point location obtained from the current motion field.
tmp< surfaceScalarField > meshPhi(const volVectorField &U)
dimensionedScalar pistonPosition_
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
~fvMotionSolverEngineMesh()
Destructor.
Ostream & endl(Ostream &os)
Add newline and flush stream.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
scalar deltaTValue() const
Return time step value.
void component(FieldField< Field, typename FieldField< Field, Type >::cmptType > &sf, const FieldField< Field, Type > &f, const direction d)
pointScalarField & pointMotionU()
Non-const access to the pointMotionU in order to allow changes.
const Type & lookupObject(const word &name) const
Lookup and return the object of the given Type.
Macros for easy insertion into run-time selection tables.
dimensionedScalar deckHeight_
bool readIfPresent(const word &, T &, bool recursive=false, bool patternMatch=true) const
Find an entry if present, and assign to T.
const engineTime & engineDB_
dimensionedScalar pos(const dimensionedScalar &ds)
dimensionedScalar pistonDisplacement() const
Return piston displacement for current time step.
bool moving() const
Is mesh moving.
virtual void solve()
Solve for motion.
addToRunTimeSelectionTable(ensightPart, ensightPartCells, istream)
bool movePoints()
Do what is neccessary if the mesh has moved.
const Type & value() const
Return const reference to value.
defineTypeNameAndDebug(combustionModel, 0)
const fvBoundaryMesh & boundary() const
Return reference to boundary mesh.