v2112: New boundary conditions
The new electrostaticDeposition boundary condition calculates the electric potential, based on film thickness and film resistance fields. These are updated according to the patch-normal current density field, Coulombic efficiency and film resistivity. The condition is applicable to both single- and multi-phase cases, using isotropic conductivity and the permittivity of mixture.
The condition also allows:
- Minimum current density for deposition onset
- Minimum accumulative specific charge for deposition onset
- Resistance due to main body and/or pretreatment layers
- Initial electric potential
A minimal example illustrating the usage of the boundary condition:
<patchName>
{
// Mandatory entries
type electrostaticDeposition;
h <scalarField>;
CoulombicEfficiency <PatchFunction1>;
resistivity <PatchFunction1>;
Vanode <scalar>;
// Conditional mandatory entries
// Option-1: single-phase
sigma <scalar>;
// Option-2: multiphase
phases
{
alpha.air
{
sigma <scalar>;
}
alpha.water
{
sigma <scalar>;
}
alpha.mercury
{
sigma <scalar>;
}
...
}
// Optional entries
jMin <scalar>;
qMin <scalar>;
qCumulative <scalarField>;
Rbody <scalar>;
Vi <scalar>;
// Inherited entries
...
}
Source code
Tutorial
The temperature coupling boundary conditions compressible::turbulentTemperatureRadCoupledMixed and compressible::turbulentTemperatureCoupledBaffleMixed have been extended to allow specification of the heat-transfer kappa, alpha directly via a user-specified value instead of the selected thermophysics. This is controlled by the kappaMethod entry:
{
type compressible::turbulentTemperatureRadCoupledMixed;
..
kappaMethod function;
#- Use dictionary syntax with expressions
kappaValue
{
type expression;
expression #{ (T > 373) ? 100 : 200 #};
}
#- Use in-line syntax with table to ramp in time
alphaValue table ((0 1.0) (0.5 2.0));
}
All Function1, PatchFunction1 types are supported.
This same input method can be used for temperature boundary conditions that use the same framework, including:
- compressible::thermalBaffle
- externalWallHeatFluxTemperature
- fixedIncidentRadiation
- lumpedMassWallTemperature
- filmPyrolysisRadiativeCoupledMixed
- humidityTemperatureCoupledMixed
Optional thermal resistance
The conditions include the option to explicitly provide additional thermal resistance by specifying layers:
// 1mm of material with kappa 100 [W/m/K], 2mm of material with 200
thicknessLayers (1e-3 2e-3);
kappaLayers (100 200);
In this version a single layer can be provided as a PatchFunction1 through the thicknessLayer and kappaLayer keywords:
// 1mm of material with kappa 300 [W/m/K]
thicknessLayer constant 1e-3;
kappaLayer constant 300;
All contributions are combined with the local heat-transfer coefficient (see above, kappaMethod) to generate the overall equivalent heat-transfer coefficient.
There is a major difference in the handling of this additional resistance:
- In previous versions the additional resistance was located between the two coupled boundaries. This would lead to different temperatures on either side. This additional explicitness (using previous iterations' patch temperature) prevented e.g. multi-world operation.
- in this version the additional resistance is included in the local heat-transfer coefficient. This causes the temperature to be identical on both sides.
The following simple case shows the effect of specifying additional thermal resistance through kappaLayer and thicknessLayer. Two regions, coupled through boundary conditions, top region has temperature 300K at the top, bottom region with temperature at 600K. Without additional resistance (regions shown separated):
With added insulation in between, at similar time:
With the added insulation the heat loss from the bottom region is less.
Tutorials
Source code