41 const DimensionedField<vector, volMesh>& iF
44 partialSlipFvPatchVectorField(
p, iF),
47 psiName_(
"thermo:psi"),
50 accommodationCoeff_(1.0),
51 Uwall_(
p.size(),
Zero),
59 const maxwellSlipUFvPatchVectorField& mspvf,
61 const DimensionedField<vector, volMesh>& iF,
62 const fvPatchFieldMapper& mapper
65 partialSlipFvPatchVectorField(mspvf,
p, iF, mapper),
67 rhoName_(mspvf.rhoName_),
68 psiName_(mspvf.psiName_),
69 muName_(mspvf.muName_),
70 tauMCName_(mspvf.tauMCName_),
71 accommodationCoeff_(mspvf.accommodationCoeff_),
73 thermalCreep_(mspvf.thermalCreep_),
74 curvature_(mspvf.curvature_)
81 const DimensionedField<vector, volMesh>& iF,
82 const dictionary&
dict
85 partialSlipFvPatchVectorField(
p, iF),
86 TName_(
dict.getOrDefault<word>(
"T",
"T")),
87 rhoName_(
dict.getOrDefault<word>(
"rho",
"rho")),
88 psiName_(
dict.getOrDefault<word>(
"psi",
"thermo:psi")),
89 muName_(
dict.getOrDefault<word>(
"mu",
"thermo:mu")),
90 tauMCName_(
dict.getOrDefault<word>(
"tauMC",
"tauMC")),
91 accommodationCoeff_(
dict.
get<scalar>(
"accommodationCoeff")),
92 Uwall_(
"Uwall",
dict,
p.size()),
93 thermalCreep_(
dict.getOrDefault(
"thermalCreep", true)),
94 curvature_(
dict.getOrDefault(
"curvature", true))
98 mag(accommodationCoeff_) < SMALL
99 ||
mag(accommodationCoeff_) > 2.0
103 <<
"unphysical accommodationCoeff_ specified"
104 <<
"(0 < accommodationCoeff_ <= 1)" <<
endl
108 if (
dict.found(
"value"))
115 if (
dict.found(
"refValue") &&
dict.found(
"valueFraction"))
118 this->valueFraction() =
123 this->refValue() = *
this;
124 this->valueFraction() = scalar(1);
132 const maxwellSlipUFvPatchVectorField& mspvf,
133 const DimensionedField<vector, volMesh>& iF
136 partialSlipFvPatchVectorField(mspvf, iF),
137 TName_(mspvf.TName_),
138 rhoName_(mspvf.rhoName_),
139 psiName_(mspvf.psiName_),
140 muName_(mspvf.muName_),
141 tauMCName_(mspvf.tauMCName_),
142 accommodationCoeff_(mspvf.accommodationCoeff_),
143 Uwall_(mspvf.Uwall_),
144 thermalCreep_(mspvf.thermalCreep_),
145 curvature_(mspvf.curvature_)
162 const fvPatchField<scalar>& ppsi =
168 * (2.0 - accommodationCoeff_)/accommodationCoeff_
171 Field<scalar> pnu(pmu/prho);
172 valueFraction() = (1.0/(1.0 +
patch().deltaCoeffs()*C1*pnu));
180 label patchi = this->
patch().index();
182 Field<vector> gradpT(
fvc::grad(vsfT)().boundaryField()[patchi]);
185 refValue() -= 3.0*pnu/(4.0*pT)*
transform(
I -
n*
n, gradpT);
197 partialSlipFvPatchVectorField::updateCoeffs();
210 os.
writeEntry(
"accommodationCoeff", accommodationCoeff_);
218 writeEntry(
"value",
os);
229 maxwellSlipUFvPatchVectorField