The interface for fvModels has been modified to improve its application
to "proxy" equations. That is, equations that are not straightforward
statements of conservation laws in OpenFOAM's usual convention.
A standard conservation law typically takes the following form:
fvMatrix<scalar> psiEqn
(
fvm::ddt(alpha, rho, psi)
+ <fluxes>
==
<sources>
);
A proxy equation, on the other hand, may be a derivation or
rearrangement of a law like this, and may be linearised in terms of a
different variable.
The pressure equation is the most common example of a proxy equation. It
represents a statement of the conservation of volume or mass, but it is
a rearrangement of the original continuity equation, and it has been
linearised in terms of a different variable; the pressure. Another
example is that in the pre-predictor of a VoF solver the
phase-continuity equation is constructed, but it is linearised in terms
of volume fraction rather than density.
In these situations, fvModels sources are now applied by calling:
fvModels().sourceProxy(<conserved-fields ...>, <equation-field>)
Where <conserved-fields ...> are (alpha, rho, psi), (rho, psi), just
(psi), or are omitted entirely (for volume continuity), and the
<equation-field> is the field associated with the proxy equation. This
produces a source term identical in value to the following call:
fvModels().source(<conserved-fields ...>)
It is only the linearisation in terms of <equation-field> that differs
between these two calls.
This change permits much greater flexibility in the handling of mass and
volume sources than the previous name-based system did. All the relevant
fields are available, dimensions can be used in the logic to determine
what sources are being constructed, and sources relating to a given
conservation law all share the same function.
This commit adds the functionality for injection-type sources in the
compressibleVoF solver. A following commit will add a volume source
model for use in incompressible solvers.
45 lines
2.1 KiB
Plaintext
45 lines
2.1 KiB
Plaintext
general/codedFvModel/codedFvModel.C
|
|
general/semiImplicitSource/semiImplicitSource.C
|
|
|
|
derived/actuationDiskSource/actuationDiskSource.C
|
|
derived/effectivenessHeatExchangerSource/effectivenessHeatExchangerSource.C
|
|
derived/explicitPorositySource/explicitPorositySource.C
|
|
derived/radialActuationDiskSource/radialActuationDiskSource.C
|
|
derived/rotorDiskSource/rotorDiskSource.C
|
|
derived/rotorDiskSource/bladeModel/bladeModel.C
|
|
derived/rotorDiskSource/profileModel/profileModel.C
|
|
derived/rotorDiskSource/profileModel/profileModelList.C
|
|
derived/rotorDiskSource/profileModel/lookup/lookupProfile.C
|
|
derived/rotorDiskSource/profileModel/series/seriesProfile.C
|
|
derived/rotorDiskSource/trimModel/trimModel/trimModel.C
|
|
derived/rotorDiskSource/trimModel/trimModel/trimModelNew.C
|
|
derived/rotorDiskSource/trimModel/fixed/fixedTrim.C
|
|
derived/rotorDiskSource/trimModel/targetCoeff/targetCoeffTrim.C
|
|
derived/solidificationMeltingSource/solidificationMeltingSource.C
|
|
derived/sixDoFAccelerationSource/sixDoFAccelerationSource.C
|
|
derived/buoyancyForce/buoyancyForce.C
|
|
derived/buoyancyEnergy/buoyancyEnergy.C
|
|
derived/phaseLimitStabilisation/phaseLimitStabilisation.C
|
|
derived/accelerationSource/accelerationSource.C
|
|
derived/volumeFractionSource/volumeFractionSource.C
|
|
derived/solidEquilibriumEnergySource/solidEquilibriumEnergySource.C
|
|
derived/volumeSource/volumeSource.C
|
|
derived/massSource/massSource.C
|
|
derived/heatSource/heatSource.C
|
|
derived/heatTransfer/heatTransfer.C
|
|
derived/zeroDimensionalMassSource/zeroDimensionalMassSource.C
|
|
|
|
interRegion/interRegionModel/interRegionModel.C
|
|
interRegion/interRegionExplicitPorositySource/interRegionExplicitPorositySource.C
|
|
interRegion/interRegionHeatTransfer/interRegionHeatTransfer.C
|
|
|
|
derived/heatTransfer/heatTransferAv/heatTransferAv.C
|
|
|
|
derived/heatTransfer/heatTransferCoefficientModels/heatTransferCoefficientModel/heatTransferCoefficientModel.C
|
|
derived/heatTransfer/heatTransferCoefficientModels/constant/constant.C
|
|
derived/heatTransfer/heatTransferCoefficientModels/function1/function1.C
|
|
derived/heatTransfer/heatTransferCoefficientModels/function2/function2.C
|
|
derived/heatTransfer/heatTransferCoefficientModels/variable/variable.C
|
|
|
|
LIB = $(FOAM_LIBBIN)/libfvModels
|