40 fixedValueFvPatchScalarField(p, iF),
53 fixedValueFvPatchScalarField(p, iF, dict,
false),
54 Ap_(dict.
lookup<scalar>(
"Ap")),
55 Sp_(dict.
lookup<scalar>(
"Sp")),
56 VsI_(dict.
lookup<scalar>(
"VsI")),
57 tas_(dict.
lookup<scalar>(
"tas")),
58 tae_(dict.
lookup<scalar>(
"tae")),
59 tds_(dict.
lookup<scalar>(
"tds")),
60 tde_(dict.
lookup<scalar>(
"tde")),
61 psI_(dict.
lookup<scalar>(
"psI")),
62 psi_(dict.
lookup<scalar>(
"psi")),
63 ams_(dict.
lookup<scalar>(
"ams")),
68 scalar ps = (psI_*VsI_ + ams_/psi_)/Vs(db().time().value());
81 fixedValueFvPatchScalarField(sppsf, p, iF, mapper),
93 phiName_(sppsf.phiName_),
104 fixedValueFvPatchScalarField(sppsf, iF),
116 phiName_(sppsf.phiName_),
123 Foam::scalar Foam::syringePressureFvPatchScalarField::Vs(
const scalar t)
const 133 + 0.5*Ap_*Sp_*
sqr(t - tas_)/(tae_ - tas_);
139 + 0.5*Ap_*Sp_*(tae_ - tas_)
140 + Ap_*Sp_*(t - tae_);
146 + 0.5*Ap_*Sp_*(tae_ - tas_)
147 + Ap_*Sp_*(tds_ - tae_)
149 - 0.5*Ap_*Sp_*
sqr(t - tds_)/(tde_ - tds_);
155 + 0.5*Ap_*Sp_*(tae_ - tas_)
156 + Ap_*Sp_*(tds_ - tae_)
157 + 0.5*Ap_*Sp_*(tde_ - tds_);
169 if (curTimeIndex_ != db().time().
timeIndex())
172 curTimeIndex_ = db().time().timeIndex();
175 scalar t = db().time().value();
176 scalar deltaT = db().time().deltaTValue();
186 ams_ = ams0_ + deltaT*
sum((*
this*psi_)*phip);
190 ams_ = ams0_ + deltaT*
sum(phip);
195 <<
"dimensions of phi are not correct" 196 <<
"\n on patch " << this->patch().name()
197 <<
" of field " << this->internalField().name()
198 <<
" in file " << this->internalField().objectPath()
202 scalar ps = (psI_*VsI_ + ams_/psi_)/Vs(t);
206 fixedValueFvPatchScalarField::updateCoeffs();
224 writeEntryIfDifferent<word>(os,
"phi",
"phi", phiName_);
errorManipArg< error, int > exit(error &err, const int errNo=1)
A list of keyword definitions, which are a keyword followed by any number of values (e...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
virtual void write(Ostream &) const
Write.
virtual void write(Ostream &) const
Write.
Macros for easy insertion into run-time selection tables.
dimensioned< Type > sum(const DimensionedField< Type, GeoMesh > &df)
const dimensionSet & dimensions() const
Return dimensions.
tmp< fvMatrix< Type > > operator==(const fvMatrix< Type > &, const fvMatrix< Type > &)
A class for handling words, derived from string.
Foam::fvPatchFieldMapper.
const dimensionSet dimFlux
An Ostream is an abstract base class for all output systems (streams, files, token lists...
virtual void updateCoeffs()
Update the coefficients associated with the patch field.
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
syringePressureFvPatchScalarField(const fvPatch &, const DimensionedField< scalar, volMesh > &)
Construct from patch and internal field.
const dimensionSet dimMassFlux
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
This boundary condition provides a pressure condition, obtained from a zero-D model of the cylinder o...
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
makePatchTypeField(fvPatchScalarField, atmBoundaryLayerInletEpsilonFvPatchScalarField)
An abstract base class with a fat-interface to all derived classes covering all possible ways in whic...
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.