fvOptions
本文最后更新于:2020年12月11日 上午
Openfoam fvOptions
Show fvOptions
#!/bin/sh
COUNT=0
cd $FOAM_SRC
for OPTION_PATH in `find fvOptions | sort -f | grep -v lnInclude | grep "\.H$" | xargs -I {} dirname {} | sed -e "s%^./%%" | uniq` ; do
echo $OPTION_PATH
echo
cat $OPTION_PATH/*.H | awk '
/\\\*/ {exit}
/SourceFiles/ {exit}
a == 1 {print}
/Description/ {a = 1}
'
echo
COUNT=`expr $COUNT + 1`
done
echo Total $COUNT
Results
fvOptions/cellSetOption
Cell-set options abstract base class. Provides a base set of controls,
e.g.:
\verbatim
type scalarExplicitSource // Source type
active on; // on/off switch
timeStart 0.0; // Start time
duration 1000.0; // Duration
selectionMode cellSet; // cellSet, points, cellZone
.
.
.
\endverbatim
Note
Source/sink options are to be added to the equation R.H.S.
fvOptions/constraints/fixedTemperatureConstraint
Fixed temperature equation constraint
Usage
\verbatim
fixedTemperature
{
type fixedTemperatureConstraint;
active yes;
mode uniform; // uniform or lookup
// For uniform option
temperature constant 500; // fixed temperature with time [K]
// For lookup option
// T <Tname>; // optional temperature field name
phase gas; // optional
}
\endverbatim
Note:
The 'uniform' option allows the use of a time-varying uniform temperature
by means of the Function1 type.
See also
Foam::fvOption
fvOptions/constraints/fixedValueConstraint
Constrain the field values within a specified region.
Usage
For example to set the turbulence properties within a porous region:
\verbatim
porosityTurbulence
{
type scalarFixedValueConstraint;
active yes;
selectionMode cellZone;
cellZone porosity;
fieldValues
{
k 1;
epsilon 150;
}
}
\endverbatim
See also
Foam::fvOption
fvOptions/corrections/limitTemperature
Correction for temperature to apply limits between minimum and maximum
values.
Usage
Example usage:
\verbatim
limitT
{
type limitTemperature;
active yes;
selectionMode all;
min 200;
max 500;
phase gas; // optional
}
\endverbatim
fvOptions/corrections/limitVelocity
Limits the maximum velocity magnitude to the specified \c max value.
Usage
Example usage:
\verbatim
limitU
{
type limitVelocity;
active yes;
selectionMode all;
max 100;
}
\endverbatim
fvOptions/interRegionOption
Base class for inter-region exchange.
fvOptions/sources/derived/accelerationSource
This fvOption applies an explicit acceleration force to components of the
velocity field.
Usage
Example usage:
\verbatim
accelerationSource
{
type accelerationSource;
active on;
selectionMode all;
U U;
velocity scale;
value (-2.572 0 0);
scale
{
type halfCosineRamp;
start 0;
duration 10;
}
}
\endverbatim
fvOptions/sources/derived/actuationDiskSource
Actuation disk source
Constant values for momentum source for actuation disk
\f[
T = 2 \rho A U_{o}^2 a (1-a)
\f]
and
\f[
U_1 = (1 - a)U_{o}
\f]
where:
\vartable
A | disk area
U_o | upstream velocity
a | 1 - Cp/Ct
U_1 | velocity at the disk
\endvartable
Usage
Example usage:
\verbatim
fields (U); // names of fields to apply source
diskDir (-1 0 0); // disk direction
Cp 0.1; // power coefficient
Ct 0.5; // thrust coefficient
diskArea 5.0; // disk area
upstreamPoint (0 0 0); // upstream point
\endverbatim
fvOptions/sources/derived/buoyancyEnergy
Calculates and applies the buoyancy energy source rho*(U&g) to the energy
equation.
Usage
Example usage:
\verbatim
fields (h); // Name of energy field
\endverbatim
fvOptions/sources/derived/buoyancyForce
Calculates and applies the buoyancy force rho*g to the momentum equation
corresponding to the specified velocity field.
Usage
Example usage:
\verbatim
fields (U); // Name of velocity field
\endverbatim
fvOptions/sources/derived/damping/damping
Base fvOption for damping functions.
See also
Foam::fv::isotropicDamping
Foam::fv::verticalDamping
fvOptions/sources/derived/damping/isotropicDamping
This fvOption applies an implicit damping force to all components of the
vector field to relax the field towards a specified uniform value. Its
intended purpose is to damp the motions of an interface in the region
approaching an outlet so that no reflections are generated.
The damping force coefficient \f$\lambda\f$ should be set based on the
desired level of damping and the residence time of a perturbation through
the damping zone. For example, if waves moving at 2 [m/s] are travelling
through a damping zone 8 [m] in length, then the residence time is 4 [s]. If
it is deemed necessary to damp for 5 time-scales, then \f$\lambda\f$ should
be set to equal 5/(4 [s]) = 1.2 [1/s].
Usage
Example usage:
\verbatim
isotropicDamping1
{
type isotropicDamping;
selectionMode cellZone;
cellZone nearOutlet;
value (2 0 0); // Value towards which the field it relaxed
lambda [0 0 -1 0 0 0 0] 1; // Damping coefficient
timeStart 0;
duration 1e6;
}
\endverbatim
Example usage with graduated onset:
\verbatim
isotropicDamping1
{
type isotropicDamping;
selectionMode all;
// Define the line along which to apply the graduation
origin (1200 0 0);
direction (1 0 0);
// Or, define multiple lines
// origins ((1200 0 0) (1200 -300 0) (1200 300 0));
// directions ((1 0 0) (0 -1 0) (0 1 0));
scale
{
type halfCosineRamp;
start 0;
duration 600;
}
value (2 0 0); // Value towards which the field it relaxed
lambda [0 0 -1 0 0 0 0] 1; // Damping coefficient
timeStart 0;
duration 1e6;
}
\endverbatim
See also
Foam::fv::damping
Foam::fv::verticalDamping
fvOptions/sources/derived/damping/verticalDamping
This fvOption applies an explicit damping force to components of the vector
field in the direction of gravity. Its intended purpose is to damp the
vertical motions of an interface in the region approaching an outlet so that
no reflections are generated.
Damping is achieved by applying a force to the momentum equation
proportional to the momentum of the flow in the direction of gravity. The
constant of proportionality is given by a coefficient \f$\lambda\f$ which
has units of inverse-time. In the absence of any other forces this would
generate an exponential decay of the vertical velocity.
\f[
\frac{d (m u_z)}{d t} = - \lambda m u_z
\f]
\f[
u_z = u_{z0} e^{- \lambda t}
\f]
The coefficient \f$\lambda\f$ should be set based on the desired level of
damping and the residence time of a perturbation through the damping zone.
For example, if waves moving at 2 [m/s] are travelling through a damping
zone 8 [m] in length, then the residence time is 4 [s]. If it is deemed
necessary to damp for 5 time-scales, then \f$\lambda\f$ should be set to
equal 5/(4 [s]) = 1.2 [1/s].
Usage
Example usage:
\verbatim
verticalDamping1
{
type verticalDamping;
selectionMode cellZone;
cellZone nearOutlet;
lambda [0 0 -1 0 0 0 0] 1; // Damping coefficient
timeStart 0;
duration 1e6;
}
\endverbatim
Example usage with graduated onset:
\verbatim
verticalDamping1
{
type verticalDamping;
selectionMode all;
// Define the line along which to apply the graduation
origin (1200 0 0);
direction (1 0 0);
// Or, define multiple lines
// origins ((1200 0 0) (1200 -300 0) (1200 300 0));
// directions ((1 0 0) (0 -1 0) (0 1 0));
scale
{
type halfCosineRamp;
start 0;
duration 600;
}
lambda [0 0 -1 0 0 0 0] 1; // Damping coefficient
timeStart 0;
duration 1e6;
}
\endverbatim
See also
Foam::fv::damping
Foam::fv::isotropicDamping
fvOptions/sources/derived/effectivenessHeatExchangerSource
Heat exchanger source model, in which the heat exchanger is defined as a
selection of cells.
The total heat exchange source is given by:
\f[
Q_t = e(\phi, \dot{m}_2) (T_2 - T_1) \phi c_p
\f]
where:
\vartable
Q_t | total heat source
e(\phi,\dot{m}_2) | effectiveness table
\phi | net mass flux entering heat exchanger [kg/s]
\dot{m}_2 | secondary mass flow rate [kg/s]
T_1 | primary inlet temperature [K]
T_2 | secondary inlet temperature [K]
c_p | specific heat capacity [J/kg/K]
\endvartable
The distribution inside the hear exchanger is given by:
\f[
Q_c = \frac{V_c |U_c| (T_c - T_{ref})}{\sum(V_c |U_c| (T_c - T_{ref}))}
\f]
where:
\vartable
Q_c | source for cell
V_c | volume of the cell [m^3]
U_c | local cell velocity [m/s]
T_c | local call temperature [K]
T_{ref} | min or max(T) in cell zone depending on the sign of Q_t [K]
\endvartable
Usage
Example usage:
\verbatim
effectivenessHeatExchangerSource1
{
type effectivenessHeatExchangerSource;
active yes;
selectionMode cellZone;
cellZone porosity;
secondaryMassFlowRate 1.0;
secondaryInletT 336;
primaryInletT 293;
faceZone facesZoneInletOriented;
outOfBounds clamp;
file "effTable";
}
\endverbatim
The effectiveness table is described in terms of the primary and secondary
mass flow rates. For example, the table:
secondary MFR
| 0.1 0.2 0.3
-----+-----------------
0.02 | A B C
primary MFR 0.04 | D E F
0.06 | G H I
Is specified by the following:
(
0.02
(
(0.1 A)
(0.2 B)
(0.3 C)
),
0.04
(
(0.1 D)
(0.2 E)
(0.3 F)
),
0.06
(
(0.1 G)
(0.2 H)
(0.3 I)
)
);
Note
- the table with name "file" should have the same units as the
secondary mass flow rate and kg/s for phi
- faceZone is the faces at the inlet of the cellzone, it needs to be
created with flip map flags. It is used to integrate the net mass flow
rate into the heat exchanger
fvOptions/sources/derived/explicitPorositySource
Explicit porosity source
Usage
Example usage, here employing the Darcy-Forchheimer model:
\verbatim
explicitPorositySourceCoeffs
{
type DarcyForchheimer;
DarcyForchheimerCoeffs
{
d d [0 -2 0 0 0 0 0] (5e7 -1000 -1000);
f f [0 -1 0 0 0 0 0] (0 0 0);
coordinateSystem
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type axesRotation;
e1 (0.70710678 0.70710678 0);
e2 (0 0 1);
}
}
}
}
\endverbatim
Note:
The porous region must be selected as a cellZone.
fvOptions/sources/derived/meanVelocityForce
Calculates and applies the force necessary to maintain the specified mean
velocity.
Note: Currently only handles kinematic pressure (incompressible solvers).
Usage
Example usage:
\verbatim
selectionMode all; // Apply force to all cells
fields (U); // Name of velocity field
Ubar (10.0 0 0); // Desired mean velocity
relaxation 0.2; // Optional relaxation factor
\endverbatim
fvOptions/sources/derived/meanVelocityForce/patchMeanVelocityForce
Calculates and applies the force necessary to maintain the specified mean
velocity averaged over the specified patch.
Note: Currently only handles kinematic pressure (incompressible solvers).
Usage
Example usage:
\verbatim
selectionMode all; // Apply force to all cells
fields (U); // Name of velocity field
patch inlet; // Name of the patch
Ubar (10.0 0 0); // Desired mean velocity
relaxation 0.2; // Optional relaxation factor
\endverbatim
fvOptions/sources/derived/phaseLimitStabilization
Stabilization source for phase transport equations
Applies an implicit source to the phase transport equation for the specified
\c field when the phase volume fraction is below \c residualAlpha. The
stabilization rate is provided by the registered
uniformDimensionedScalarField \c rate, which could be extended to also
support volScalarField and volScalarField::Internal field types. The \c
field is currently stabilized towards zero in the limit of the phase volume
fraction approaching zero but this could be extended to support a
specified value or a value or field looked-up from the database.
Usage
Example usage:
\verbatim
stabilization
{
type symmTensorPhaseLimitStabilization;
field sigma.liquid;
rate rLambda.liquid;
residualAlpha 1e-3;
}
\endverbatim
fvOptions/sources/derived/radialActuationDiskSource
Actuation disk source including radial thrust
Constant values for momentum source for actuation disk
\f[
T = 2 \rho A U_{o}^2 a (1-a)
\f]
and
\f[
U_1 = (1 - a)U_{o}
\f]
where:
\vartable
A | disk area
U_o | upstream velocity
a | 1 - Cp/Ct
U_1 | velocity at the disk
\endvartable
The thrust is distributed by a radial function:
\f[
thrust(r) = T (C_0 + C_1 r^2 + C_2 r^4)
\f]
Usage
Example usage:
\verbatim
fieldName U; // name of field to apply source
diskDir (-1 0 0); // disk direction
Cp 0.1; // power coefficient
Ct 0.5; // thrust coefficient
diskArea 5.0; // disk area
coeffs (0.1 0.5 0.01); // radial distribution coefficients
upstreamPoint (0 0 0); // upstream point
\endverbatim
fvOptions/sources/derived/rotorDiskSource/bladeModel
Blade model class calculates:
Linear interpolated blade twist and chord based on radial position
Interpolation factor (for interpolating profile performance)
Input in list format:
data
(
(profile1 (radius1 twist1 chord1))
(profile1 (radius2 twist2 chord2))
);
where:
radius [m]
twist [deg], converted to [rad] internally
chord [m]
fvOptions/sources/derived/rotorDiskSource/profileModel/lookup
Look-up based profile data - drag and lift coefficients are linearly
interpolated based on the supplied angle of attack
Input in list format:
data
(
(AOA1 Cd1 Cl2)
(AOA2 Cd2 Cl2)
...
(AOAN CdN CdN)
);
where:
AOA = angle of attack [deg] converted to [rad] internally
Cd = drag coefficient
Cl = lift coefficient
fvOptions/sources/derived/rotorDiskSource/profileModel
Base class for profile models
fvOptions/sources/derived/rotorDiskSource/profileModel/series
Series-up based profile data - drag and lift coefficients computed as
sum of cosine series
Cd = sum_i(CdCoeff)*cos(i*AOA)
Cl = sum_i(ClCoeff)*sin(i*AOA)
where:
AOA = angle of attack [deg] converted to [rad] internally
Cd = drag coefficient
Cl = lift coefficient
Input in two (arbitrary length) lists:
CdCoeffs (coeff1 coeff2 ... coeffN);
ClCoeffs (coeff1 coeff2 ... coeffN);
fvOptions/sources/derived/rotorDiskSource
Rotor disk source
Cell based momentum source which approximates the mean effects of
rotor forces on a cylindrical region within the domain.
Usage
Example usage:
\verbatim
fields (U); // names of fields on which to apply source
nBlades 3; // number of blades
tipEffect 0.96; // normalised radius above which lift = 0
inletFlowType local; // inlet flow type specification
geometryMode auto; // geometry specification
refDirection (-1 0 0); // reference direction
// - used as reference for psi angle
trimModel fixed; // fixed || targetForce
flapCoeffs
{
beta0 0; // coning angle [deg]
beta1c 0; // lateral flapping coeff (cos coeff)
beta2s 0; // longitudinal flapping coeff (sin coeff)
}
blade
{
// see bladeModel.H for documentation
}
profiles
{
profile1
{
type lookup; // lookup || series
...
// see lookupProfile.H or seriesProfile.H for documentation
}
profile2
{
...
}
}
\endverbatim
Where:
Valid options for the \c geometryMode entry include:
- auto : determine rotor co-ord system from cells
- specified : specified co-ord system
Valid options for the \c inletFlowType entry include:
- fixed : specified velocity
- local : use local flow conditions
- surfaceNormal : specified normal velocity (positive towards rotor)
See also
Foam::bladeModel
Foam::lookupProfile
Foam::seriesProfile
fvOptions/sources/derived/rotorDiskSource/trimModel/fixed
Fixed trim coefficients
fvOptions/sources/derived/rotorDiskSource/trimModel/targetCoeff
Target trim forces/coefficients
Solves:
c^old + J.d(theta) = c^target
Where:
n = time level
c = coefficient vector (thrust force, roll moment, pitch moment)
theta = pitch angle vector (collective, roll, pitch)
J = Jacobian [3x3] matrix
The trimmed pitch angles are found via solving the above with a
Newton-Raphson iterative method. The solver tolerance can be user-input,
using the 'tol' entry.
If coefficients are requested (useCoeffs = true), the force and moments
are normalised using:
force
c = ---------------------------------
alpha*pi*rho*(omega^2)*(radius^4)
and
moment
c = ---------------------------------
alpha*pi*rho*(omega^2)*(radius^5)
Where:
alpha = user-input conversion coefficient (default = 1)
rho = density
omega = rotor angular velocity
pi = mathematical pi
fvOptions/sources/derived/rotorDiskSource/trimModel/trimModel
Trim model base class
fvOptions/sources/derived/solidEquilibriumEnergySource
This option adds the thermal inertia of a solid phase into the energy
equation. It assumes that the solid is in thermal equilibrium with the
surrounding fluid phase.
The volume fraction of the solid phase is read from constant/alpha.<phase>,
and the associated thermophysical properties are specified in
constant/thermophysicalProperties.<phase>.
Usage
\table
Property | Description | Req'd? | Default
phase | Name of the solid phase | yes |
field | Name of the energy field to apply the option to \\
| yes |
\endtable
Example specification:
\verbatim
<fvOptionName>
{
type solidEquilibriumEnergySource;
phase solid;
field e;
}
\endverbatim
fvOptions/sources/derived/solidificationMeltingSource
This source is designed to model the effect of solidification and melting
processes, e.g. windshield defrosting.
The isotherm phase change occurs at the melting temperature, \c Tsol (= \c
Tliq). The not isotherm phase change occurs between solidus and liquidus
temperature, \c Tsol < \c Tliq respectively, as long as the melt fraction is
greater than the max eutectic melt fraction, \c alpha1e (0 = pure_substance,
1 = eutectic_mixture is not permitted), where a linear eutectic melt
fraction to temperature relation is considered; e.g. given a specific
quantity of a binary system, \c alpha1 is its melt fraction and \c alpha0 is
its solid fraction, such that \c alpha0 = 1 - \c alpha1 therefore, assuming
infinite solute diffusion, the quantity of a component in solid phase is
(1 - \c alpha1) * \c CS where \c CS is the solid concentration of the
considered component and the quantity of a component in liquid phase is \c
alpha1 * \c CL where \c CL is the melt concentration of the considered
component; considering that the total quantity of a component must be equal
to the sum of the quantities of the considered component in the liquid and
solid phases, if \c C0 is the initial concentration of the considered
component before the phase change, then:
\c C0 = (1 - \c alpha1) * \c CS + \c alpha1 * \c CL (lever rule)
from which: \c alpha1 = (\c C0 - \c CS) / (\c CL - \c CS)
and thus:
- for a miscible binary system \c alpha1e = 0;
- for a binary system not miscible at solid state
\c alpha1e = \c C0 / \c CLE where \c CLE is eutectic melt concentration;
- for a binary system partially-miscible at solid state
\c alpha1e = (\c C0 - \c CSE) / (\c CLE - \c CSE) where \c CSE is eutectic
solid concentration of the relative solid solution.
The presence of the solid phase in the flow field is incorporated into the
model as a momentum porosity contribution; the energy associated with the
phase change is added as an enthalpy contribution.
References:
\verbatim
Voller, V. R., & Prakash, C. (1987).
A fixed grid numerical modelling methodology for convection-diffusion
mushy region phase-change problems.
International Journal of Heat and Mass Transfer, 30(8), 1709-1719.
Swaminathan, C. R., & Voller, V. R. (1992).
A general enthalpy method for modeling solidification processes.
Metallurgical transactions B, 23(5), 651-664.
\endverbatim
The model generates the field \c \<name\>:alpha1 which can be visualised to
to show the melt distribution as a fraction [0-1].
Usage
Example usage:
\verbatim
solidificationMeltingSource1
{
type solidificationMeltingSource;
active yes;
selectionMode cellZone;
cellZone iceZone;
Tsol 273;
L 334000;
thermoMode thermo;
beta 50e-6;
rhoRef 800;
}
\endverbatim
Where:
\table
Property | Description | Required | Default value
Tsol | Solidus temperature [K] | yes |
Tliq | Liquidus temperature [K] | no | Tsol
alpha1e | Max eutectic melt fraction [0-1[ | no | 0
L | Latent heat of fusion [J/kg] | yes |
relax | Relaxation coefficient [0-1] | no | 0.9
thermoMode | Thermo mode [thermo|lookup] | yes |
rhoRef | Reference (solid) density [kg/m^3] | yes |
rho | Name of density field | no | rho
T | Name of temperature field | no | T
Cp | Name of specific heat field | no | Cp
U | Name of velocity field | no | U
phi | Name of flux field | no | phi
Cu | Model coefficient [1/s] | no | 100000
q | Model coefficient | no | 0.001
beta | Thermal expansion coefficient [1/K] | yes |
g | Accelerartion due to gravity | no |
\endtable
fvOptions/sources/derived/tabulatedAccelerationSource/tabulated6DoFAcceleration
Tabulated 6DoF acceleration.
Obtained by interpolating tabulated data for linear acceleration,
angular velocity and angular acceleration.
fvOptions/sources/derived/tabulatedAccelerationSource
Solid-body 6-DoF acceleration source
Usage
Example usage:
\verbatim
SBM
{
type tabulatedAccelerationSource;
active yes;
timeDataFileName "constant/acceleration-terms.dat";
}
\endverbatim
fvOptions/sources/derived/volumeFractionSource
This option adds transport terms into the equations to account for the
presence of a constant volume fraction. The volume fraction is read from
constant/alpha.<phase>, where <phase> is given as a parameter to the
option. Both advective and diffusive terms are added, and the resulting
solution is time-accurate. The flux and velocity are treated as
superficial.
This can be used to represent the effect of porous media that are caused
purely by the reduction in volume of the fluid phase; i.e., additional
blockage, and changes to transport and diffusion rates. It does not
represent losses or transfers with the porous media. That requires separate
sub-modelling.
Usage
\table
Property | Description | Req'd? | Default
phase | Name of the phase associated with the volume fraction \\
| yes |
phi | Name of the flux field | no | phi
rho | Name of the density field | no | rho
U | Name of the velocity field | no | U
fields | Names of the fields to apply the option to \\
| yes |
\endtable
Example specification:
\verbatim
<fvOptionName>
{
type volumeFractionSource;
phase solid;
phi phi;
rho rho;
U U;
fields (rho U e);
}
\endverbatim
fvOptions/sources/general/codedSource
Constructs on-the-fly fvOption source
The hook functions take the following arguments:
codeCorrect
(
GeometricField<Type, fvPatchField, volMesh>& field
)
codeAddSup
(
fvMatrix<Type}>& eqn,
const label fieldi
)
constrain
(
fvMatrix<Type}>& eqn,
const label fieldi
)
where :
field is the field in fieldNames
eqn is the fvMatrix
Usage
Example usage in controlDict:
\verbatim
energySource
{
type scalarCodedSource;
active yes;
name sourceTime;
scalarCodedSourceCoeffs
{
selectionMode all;
fields (h);
codeInclude
#{
#};
codeCorrect
#{
Pout<< "**codeCorrect**" << endl;
#};
codeAddSup
#{
const Time& time = mesh().time();
const scalarField& V = mesh_.V();
scalarField& heSource = eqn.source();
heSource -= 0.1*sqr(time.value())*V;
#};
codeSetValue
#{
Pout<< "**codeSetValue**" << endl;
#};
}
sourceTimeCoeffs
{
$scalarCodedSourceCoeffs;
}
}
\endverbatim
fvOptions/sources/general/semiImplicitSource
Semi-implicit source, described using an input dictionary. The injection
rate coefficients are specified as pairs of Su-Sp coefficients, i.e.
\f[
S(x) = S_u + S_p x
\f]
where
\vartable
S(x) | net source for field 'x'
S_u | explicit source contribution
S_p | linearised implicit contribution
\endvartable
Example tabulated heat source specification for internal energy:
\verbatim
volumeMode absolute; // specific
sources
{
e
{
explicit table ((0 0) (1.5 $power));
implicit 0;
}
}
\endverbatim
Example coded heat source specification for enthalpy:
\verbatim
volumeMode absolute; // specific
sources
{
h
{
explicit
{
type coded;
name heatInjection;
code
#{
// Power amplitude
const scalar powerAmplitude = 1000;
// x is the current time
return mag(powerAmplitude*sin(x));
#};
}
implicit 0;
}
}
\endverbatim
Valid options for the \c volumeMode entry include:
- absolute: values are given as \<quantity\>
- specific: values are given as \<quantity\>/m3
See also
Foam::fvOption
fvOptions/sources/interRegion/interRegionExplicitPorositySource
Inter-region explicit porosity source.
Sources described by, for example using the DarcyForchheimer model:
\verbatim
interRegionExplicitPorositySourceCoeffs
{
type DarcyForchheimer;
DarcyForchheimerCoeffs
{
d d [0 -2 0 0 0 0 0] (5e7 -1000 -1000);
f f [0 -1 0 0 0 0 0] (0 0 0);
coordinateSystem
{
e1 (0.70710678 0.70710678 0);
e2 (0 0 1);
}
}
}
\endverbatim
Note
The porous region must be selected as a cellZone.
fvOptions/sources/interRegion/interRegionHeatTransfer/constantHeatTransfer
Constant heat transfer model. htcConst [W/m^2/K] and area/volume [1/m]
must be provided.
fvOptions/sources/interRegion/interRegionHeatTransfer/interRegionHeatTransferModel
Base class for inter region heat exchange. The derived classes must
provide the heat transfer coefficient (htc) which is used as follows
in the energy equation.
\f[
-htc*Tmapped + Sp(htc, T)
\f]
fvOptions/sources/interRegion/interRegionHeatTransfer/tabulatedHeatTransfer
Tabulated heat transfer model. The heat exchange area per unit volume
must be provided. The 2D table returns the heat transfer coefficient
by querying the local and neighbour region velocities
fvOptions/sources/interRegion/interRegionHeatTransfer/variableHeatTransfer
Variable heat transfer model depending on local values. The area of contact
between regions (area) must be provided. The Nu number is calculated as:
Nu = a*pow(Re, b)*pow(Pr, c)
and the heat transfer coefficient as:
htc = Nu*K/ds
where:
K is the heat conduction
ds is the strut diameter
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!