The interfaceOxideRate is a simple model to calculate the formation rate of oxide inclusions (mDotOxide), which is a local function of the volume fraction of reducing agent (alpha), temperature (T) and oxide-inclusion density (chi).
More...


Public Member Functions | |
| TypeName ("interfaceOxideRate") | |
| Runtime type information. More... | |
| interfaceOxideRate (const dictionary &dict, const phasePair &pair) | |
| Construct from components. More... | |
| virtual | ~interfaceOxideRate ()=default |
| Destructor. More... | |
| virtual tmp< volScalarField > | Kexp (const volScalarField &field) |
| Explicit total mass transfer coefficient. More... | |
| virtual tmp< volScalarField > | KSp (label modelVariable, const volScalarField &field) |
| Implicit mass transfer coefficient. More... | |
| virtual tmp< volScalarField > | KSu (label modelVariable, const volScalarField &field) |
| Explicit mass transfer coefficient. More... | |
| virtual const dimensionedScalar & | Tactivate () const noexcept |
| Return solidus temperature of reducing agent. More... | |
| virtual bool | includeDivU () const noexcept |
| Add/subtract alpha*div(U) as a source term for alpha, substituting div(U) = mDot(1/rho1 - 1/rho2) More... | |
Public Member Functions inherited from InterfaceCompositionModel< Thermo, OtherThermo > | |
| InterfaceCompositionModel (const dictionary &dict, const phasePair &pair) | |
| Construct from components. More... | |
| virtual | ~InterfaceCompositionModel ()=default |
| Destructor. More... | |
| virtual tmp< volScalarField > | dY (const word &speciesName, const volScalarField &Tf) const |
| Mass fraction difference between the interface and the field. More... | |
| virtual tmp< volScalarField > | Yf (const word &speciesName, const volScalarField &Tf) const |
| Reference mass fraction for species based models. More... | |
| virtual tmp< volScalarField > | Dfrom (const word &speciesName) const |
| Specie mass diffusivity for pure mixture. More... | |
| virtual tmp< volScalarField > | Dto (const word &speciesName) const |
| Specie mass diffusivity for specie in a multicomponent. More... | |
| virtual tmp< volScalarField > | L (const word &speciesName, const volScalarField &Tf) const |
| Latent heat (to - from)(thermo - otherThermo) More... | |
| InterfaceCompositionModel (const dictionary &dict, const phasePair &pair) | |
| Construct from components. More... | |
| ~InterfaceCompositionModel ()=default | |
| Destructor. More... | |
| virtual tmp< volScalarField > | dY (const word &speciesName, const volScalarField &Tf) const |
| Mass fraction difference between the interface and the field. More... | |
| virtual tmp< volScalarField > | D (const word &speciesName) const |
| Mass diffusivity. More... | |
| virtual tmp< volScalarField > | L (const word &speciesName, const volScalarField &Tf) const |
| Latent heat. More... | |
| virtual void | addMDotL (const volScalarField &K, const volScalarField &Tf, volScalarField &mDotL, volScalarField &mDotLPrime) const |
| Add latent heat flow rate to total. More... | |
| template<class ThermoType > | |
| const Foam::multiComponentMixture< ThermoType >::thermoType & | getLocalThermo (const word &speciesName, const multiComponentMixture< ThermoType > &globalThermo) const |
| template<class ThermoType > | |
| const Foam::pureMixture< ThermoType >::thermoType & | getLocalThermo (const word &speciesName, const pureMixture< ThermoType > &globalThermo) const |
| template<class ThermoType > | |
| Foam::tmp< Foam::volScalarField > | getSpecieMassFraction (const word &speciesName, const multiComponentMixture< ThermoType > &mixture) const |
| template<class ThermoType > | |
| Foam::tmp< Foam::volScalarField > | getSpecieMassFraction (const word &speciesName, const pureMixture< ThermoType > &mixture) const |
| template<class ThermoType > | |
| Foam::tmp< Foam::volScalarField > | MwMixture (const pureMixture< ThermoType > &mixture) const |
| template<class ThermoType > | |
| Foam::tmp< Foam::volScalarField > | MwMixture (const multiComponentMixture< ThermoType > &mixture) const |
Public Member Functions inherited from interfaceCompositionModel | |
| TypeName ("interfaceCompositionModel") | |
| Runtime type information. More... | |
| declareRunTimeSelectionTable (autoPtr, interfaceCompositionModel, dictionary,(const dictionary &dict, const phasePair &pair),(dict, pair)) | |
| interfaceCompositionModel (const dictionary &dict, const phasePair &pair) | |
| Construct from a dictionary and a phase pair. More... | |
| virtual | ~interfaceCompositionModel ()=default |
| Destructor. More... | |
| const word | transferSpecie () const |
| Return the transferring species name. More... | |
| const phasePair & | pair () const |
| The phase pair. More... | |
| const multiphaseInterSystem & | fluid () const |
| Return the multiphaseInterSystem this interface belongs to. More... | |
| bool | includeVolChange () |
| Add volume change in pEq. More... | |
| const word & | variable () const |
| Returns the variable on which the model is based. More... | |
Additional Inherited Members | |
Public Types inherited from interfaceCompositionModel | |
| enum | modelVariable { T, P, Y, alpha } |
| Enumeration for variable based mass transfer models. More... | |
Static Public Member Functions inherited from interfaceCompositionModel | |
| static autoPtr< interfaceCompositionModel > | New (const dictionary &dict, const phasePair &pair) |
Protected Member Functions inherited from InterfaceCompositionModel< Thermo, OtherThermo > | |
| template<class ThermoType > | |
| const pureMixture< ThermoType >::thermoType & | getLocalThermo (const word &speciesName, const pureMixture< ThermoType > &globalThermo) const |
| Get a reference to the local thermo for a pure mixture. More... | |
| template<class ThermoType > | |
| const multiComponentMixture< ThermoType >::thermoType & | getLocalThermo (const word &speciesName, const multiComponentMixture< ThermoType > &globalThermo) const |
| Get a reference to the local thermo for a multi component mixture. More... | |
| template<class ThermoType > | |
| tmp< volScalarField > | getSpecieMassFraction (const word &speciesName, const pureMixture< ThermoType > &thermo) const |
| Return mass fraction for a pureMixture equal to one. More... | |
| template<class ThermoType > | |
| tmp< volScalarField > | getSpecieMassFraction (const word &speciesName, const multiComponentMixture< ThermoType > &thermo) const |
| Return mass fraction for speciesName. More... | |
| template<class ThermoType > | |
| tmp< volScalarField > | MwMixture (const pureMixture< ThermoType > &thermo) const |
| Return moleculas weight of the mixture for pureMixture [Kg/mol]. More... | |
| template<class ThermoType > | |
| tmp< volScalarField > | MwMixture (const multiComponentMixture< ThermoType > &) const |
| Return moleculas weight of the mixture for multiComponentMixture. More... | |
| template<class ThermoType > | |
| const pureMixture< ThermoType >::thermoType & | getLocalThermo (const word &speciesName, const pureMixture< ThermoType > &globalThermo) const |
| Get a reference to the local thermo for a pure mixture. More... | |
| template<class ThermoType > | |
| const multiComponentMixture< ThermoType >::thermoType & | getLocalThermo (const word &speciesName, const multiComponentMixture< ThermoType > &globalThermo) const |
| Get a reference to the local thermo for a multi component mixture. More... | |
Protected Attributes inherited from InterfaceCompositionModel< Thermo, OtherThermo > | |
| const Thermo & | fromThermo_ |
| Thermo (from) More... | |
| const OtherThermo & | toThermo_ |
| Other Thermo (to) More... | |
| const dimensionedScalar | Le_ |
| Lewis number. More... | |
| const Thermo & | thermo_ |
| Thermo. More... | |
| const OtherThermo & | otherThermo_ |
| Other Thermo. More... | |
Protected Attributes inherited from interfaceCompositionModel | |
| modelVariable | modelVariable_ |
| Enumeration for the model variable. More... | |
| bool | includeVolChange_ |
| Add volume change in pEq. More... | |
| const phasePair & | pair_ |
| Phase pair. More... | |
| word | speciesName_ |
| Names of the transferring specie. More... | |
| const fvMesh & | mesh_ |
| Reference to mesh. More... | |
Static Protected Attributes inherited from interfaceCompositionModel | |
| static const Enum< modelVariable > | modelVariableNames_ |
| Selection names for the modelVariable. More... | |
The interfaceOxideRate is a simple model to calculate the formation rate of oxide inclusions (mDotOxide), which is a local function of the volume fraction of reducing agent (alpha), temperature (T) and oxide-inclusion density (chi).
The oxide-inclusion formation rate is modelled as follows:
with
where
| = | Oxide-inclusion formation rate [kg/(m^3 s)] |
| = | Oxide-inclusion formation rate constant [kg/(m^3 s)] |
| = | Formation factor due to volume fraction of reducing agent [-] |
| = | Formation factor due to temperature [-] |
| = | Formation factor due to oxide-inclusion density [-] |
| = | Volume fraction of reducing agent [-] |
| = | Local temperature [K] |
| = | Solidus temperature of reducing agent [K] |
| = | Liquidus temperature of reducing agent [K] |
| = | Critical oxide-inclusion density [kg/m^3] |
| = | Current oxide-inclusion density [kg/m^3] |
References:
Oxide-inclusion model (tag:CSC):
Cao, L., Sun, F., Chen, T., Tang, Y., & Liao, D. (2018).
Quantitative prediction of oxide inclusion defects inside
the casting and on the walls during cast-filling processes.
International Journal of Heat and Mass Transfer, 119, 614-623.
DOI:10.1016/j.ijheatmasstransfer.2017.11.127constant/phaseProperties.massTransferModel: massTransferModel
(
(liquid to oxide)
{
type interfaceOxideRate;
C <scalar>;
Tliquidus <scalar>;
Tsolidus <scalar>;
oxideCrit <scalar>;
isoAlpha <scalar>;
}
);
where the entries mean:
| Property | Description | Type | Reqd | Deflt |
|---|---|---|---|---|
type | Type name: interfaceOxideRate | word | yes | - |
C | Oxide-inclusion formation rate constant | scalar | yes | - |
Tliquidus | Liquidus temperature of reducing agent | scalar | yes | - |
Tsolidus | Solidus temperature of reducing agent | scalar | yes | - |
oxideCrit | Critical oxide-inclusion density | scalar | yes | - |
isoAlpha | Location of the source | scalar | no | 0.5 |
oxideCrit should be determined experimentally (CSC:p. 616).C should be determined by practical production (CSC:p. 616).Definition at line 223 of file interfaceOxideRate.H.
| interfaceOxideRate | ( | const dictionary & | dict, |
| const phasePair & | pair | ||
| ) |
Construct from components.
Definition at line 31 of file interfaceOxideRate.C.
|
virtualdefault |
Destructor.
| TypeName | ( | "interfaceOxideRate< Thermo, OtherThermo >" | ) |
Runtime type information.
|
virtual |
Explicit total mass transfer coefficient.
Implements interfaceCompositionModel.
Definition at line 91 of file interfaceOxideRate.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), Foam::dimDensity, Foam::constant::electromagnetic::e, Foam::exp(), forAll, phasePair::from(), Foam::fac::interpolate(), Foam::max(), mesh, Foam::New(), pp(), tmp< T >::ref(), phaseModel::rho(), T, phasePair::to(), and Foam::Zero.

|
virtual |
Implicit mass transfer coefficient.
Implements interfaceCompositionModel.
Definition at line 175 of file interfaceOxideRate.C.
|
virtual |
Explicit mass transfer coefficient.
Implements interfaceCompositionModel.
Definition at line 187 of file interfaceOxideRate.C.
|
inlinevirtualnoexcept |
Return solidus temperature of reducing agent.
Implements interfaceCompositionModel.
Definition at line 317 of file interfaceOxideRate.H.
|
inlinevirtualnoexcept |
Add/subtract alpha*div(U) as a source term for alpha, substituting div(U) = mDot(1/rho1 - 1/rho2)
Reimplemented from interfaceCompositionModel.
Definition at line 326 of file interfaceOxideRate.H.