57 bool nbrModelFound =
false;
61 if (fvOptions[i].
name() == nbrModelName_)
65 refCast<const interRegionHeatTransferModel>(fvOptions[i])
74 FatalErrorIn(
"interRegionHeatTransferModel::setNbrModel()")
75 <<
"Neighbour model not found" << nbrModelName_
76 <<
" in region " << nbrMesh.
name() <<
nl 83 nbrModel_->setNbrModel();
91 if (mesh_.time().timeIndex() != timeIndex_)
94 timeIndex_ = mesh_.time().timeIndex();
110 const word& modelType,
122 nbrModelName_(coeffs_.lookup(
"nbrModelName")),
143 zeroGradientFvPatchScalarField::typeName
145 semiImplicit_(
false),
146 TName_(coeffs_.lookupOrDefault<
word>(
"TName",
"T")),
147 TNbrName_(coeffs_.lookupOrDefault<
word>(
"TNbrName",
"T"))
151 coeffs_.lookup(
"fieldNames") >> fieldNames_;
152 applied_.setSize(fieldNames_.size(),
false);
154 coeffs_.lookup(
"semiImplicit") >> semiImplicit_;
188 mesh_.time().timeName(),
208 Info<<
"Volumetric integral of htc: " 212 if (mesh_.time().outputTime())
230 eqn += htc_*(Tmapped -
T) + htcByCpv*he -
fvm::Sp(htcByCpv, he);
237 Info<<
"Energy exchange from region " << nbrMesh.
name()
238 <<
" To " << mesh_.name() <<
" : " << energy.
value()
246 "void Foam::fv::interRegionHeatTransferModel::addSup" 248 " fvMatrix<scalar>&, " 251 ) <<
" on mesh " << mesh_.name()
252 <<
" could not find object basicThermo." 253 <<
" The available objects are: " 260 eqn += htc_*Tmapped -
fvm::Sp(htc_, he);
265 eqn += htc_*(Tmapped -
T);
defineTypeNameAndDebug(cellSetOption, 0)
Mesh data needed to do the Finite Volume discretisation.
const word & name() const
Return reference to name.
Calculate the matrix for implicit and explicit sources.
word name(const complex &)
Return a string representation of a complex.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
interRegionHeatTransferModel(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
Construct from dictionary.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
virtual void addSup(fvMatrix< scalar > &eqn, const label fieldI)
Source term to energy equation.
Info<< "Predicted p max-min : "<< max(p).value()<< " "<< min(p).value()<< endl;rho==max(psi *p+alphal *rhol0+((alphav *psiv+alphal *psil)-psi)*pSat, rhoMin);#1"/home/dm2/henry/OpenFOAM/OpenFOAM-3.0.x/applications/solvers/multiphase/cavitatingFoam/alphavPsi.H"1{alphav=max(min((rho-rholSat)/(rhovSat-rholSat), scalar(1)), scalar(0));alphal=1.0-alphav;Info<< "max-min alphav: "<< max(alphav).value()<< " "<< min(alphav).value()<< endl;psiModel-> correct()
Abstract base-class for fluid and solid thermodynamic properties.
bool interpolate(const vector &p1, const vector &p2, const vector &o, vector &n, scalar l)
A class for handling words, derived from string.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
static word timeName(const scalar, const int precision=precision_)
Return time name of given scalar time.
virtual tmp< volScalarField > Cpv() const =0
Heat capacity at constant pressure/volume [J/kg/K].
errorManipArg< error, int > exit(error &err, const int errNo=1)
const dimensionSet dimEnergy
A special matrix type and solver, designed for finite volume solutions of scalar equations. Face addressing is used to make all matrix assembly and solution loops vectorise.
virtual ~interRegionHeatTransferModel()
Destructor.
A list of keyword definitions, which are a keyword followed by any number of values (e...
tmp< fvMatrix< Type > > Sp(const DimensionedField< scalar, volMesh > &, const GeometricField< Type, fvPatchField, volMesh > &)
virtual tmp< volScalarField > Cp() const =0
Heat capacity at constant pressure [J/kg/K].
const Time & time() const
Return the top-level database.
fv::IOoptionList & fvOptions
Base class for inter-region exchange.
const GeometricField< Type, fvPatchField, volMesh > & psi() const
Ostream & endl(Ostream &os)
Add newline and flush stream.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
void setNbrModel()
Set the neighbour interRegionHeatTransferModel.
virtual Ostream & write(const token &)=0
Write next token to stream.
const Type & lookupObject(const word &name) const
Lookup and return the object of the given Type.
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
const dimensionSet & dimensions() const
Return dimensions.
fileName::Type type(const fileName &)
Return the file type: DIRECTORY or FILE.
#define FatalErrorIn(functionName)
Report an error message using Foam::FatalError.
void correct()
Correct to calculate the inter-region heat transfer coefficient.
List of finite volume options.
const dimensionSet dimVolume(pow3(dimLength))
dimensioned< Type > domainIntegrate(const GeometricField< Type, fvPatchField, volMesh > &vf)
Base class for inter region heat exchange. The derived classes must provide the heat transfer coeffis...
const dimensionSet dimTemperature(0, 0, 0, 1, 0, 0, 0)
const word dictName() const
Return the local dictionary name (final part of scoped name)
Basic thermodynamics type based on the use of fitting functions for cp, h, s obtained from the templa...
Volume integrate volField creating a volField.
A class for managing temporary objects.
const Type & value() const
Return const reference to value.