44 fixedValueFvPatchVectorField(
p, iF),
45 filmRegionName_(
"surfaceFilmProperties"),
46 pyrolysisRegionName_(
"pyrolysisProperties"),
61 fixedValueFvPatchVectorField(ptf,
p, iF, mapper),
62 filmRegionName_(ptf.filmRegionName_),
63 pyrolysisRegionName_(ptf.pyrolysisRegionName_),
64 phiName_(ptf.phiName_),
65 rhoName_(ptf.rhoName_)
77 fixedValueFvPatchVectorField(
p, iF,
dict),
80 dict.getOrDefault<
word>(
"filmRegion",
"surfaceFilmProperties")
84 dict.getOrDefault<
word>(
"pyrolysisRegion",
"pyrolysisProperties")
86 phiName_(
dict.getOrDefault<
word>(
"phi",
"phi")),
87 rhoName_(
dict.getOrDefault<
word>(
"rho",
"rho"))
97 fixedValueFvPatchVectorField(fpvpvf),
98 filmRegionName_(fpvpvf.filmRegionName_),
99 pyrolysisRegionName_(fpvpvf.pyrolysisRegionName_),
100 phiName_(fpvpvf.phiName_),
101 rhoName_(fpvpvf.rhoName_)
112 fixedValueFvPatchVectorField(fpvpvf, iF),
113 filmRegionName_(fpvpvf.filmRegionName_),
114 pyrolysisRegionName_(fpvpvf.pyrolysisRegionName_),
115 phiName_(fpvpvf.phiName_),
116 rhoName_(fpvpvf.rhoName_)
130 const auto* filmModelPtr = db().time().findObject
131 <regionModels::surfaceFilmModels::surfaceFilmRegionModel>
135 const auto* pyrModelPtr = db().time().findObject
136 <regionModels::pyrolysisModels::pyrolysisModel>
137 (pyrolysisRegionName_);
140 if (!filmModelPtr || !pyrModelPtr)
146 const auto& filmModel = *filmModelPtr;
147 const auto& pyrModel = *pyrModelPtr;
158 const label patchi =
patch().index();
161 const label filmPatchi = filmModel.regionPatchID(patchi);
163 scalarField alphaFilm = filmModel.alpha().boundaryField()[filmPatchi];
164 filmModel.toPrimary(filmPatchi, alphaFilm);
166 vectorField UFilm = filmModel.Us().boundaryField()[filmPatchi];
167 filmModel.toPrimary(filmPatchi, UFilm);
170 const label pyrPatchi = pyrModel.regionPatchID(patchi);
172 scalarField phiPyr = pyrModel.phiGas().boundaryField()[pyrPatchi];
173 pyrModel.toPrimary(pyrPatchi, phiPyr);
183 const fvPatchField<scalar>& rhop =
190 <<
"Unable to process flux field phi with dimensions "
191 <<
phi.dimensions() <<
nl
192 <<
" on patch " <<
patch().name()
193 <<
" of field " << internalField().name()
194 <<
" in file " << internalField().objectPath()
203 Up = alphaFilm*UFilm + (1.0 - alphaFilm)*UAvePyr*nf;
208 fixedValueFvPatchVectorField::updateCoeffs();
221 "surfaceFilmProperties",
227 "pyrolysisProperties",
232 writeEntry(
"value",
os);
243 filmPyrolysisVelocityCoupledFvPatchVectorField