scalarGeneralExchange
Syntax
Defined in couplingProperties dictionary.
forceModels
(
scalarGeneralExchange // must be 2nd position!
);
scalarGeneralExchangeProps
{
useLiMason "switch1"; //default: DeenEtAl
useGeneralCorrelation "switch3"; //default: DeenEtAl
generalCorrelationParameters (1 2 3 4 5 6 7 8);
verbose "switch2";
velFieldName "U";
voidfractionFieldName "voidfraction";
tempFieldName "T";
partTempName "Temp";
/* partHeatFluxName "convectiveHeatFlux"; //switch off for implicit coupling, e.g., to ParScale */
partHeatTransCoeffName "heatTransCoeff";
partHeatFluidName "heatFluid";
lambda value;
Cp value1;
//Lists with information for each species FOR THE PARTICLES
//MUST be in the same order as eulerian species in 'scalarTransportProperties'
//MUST correspond to properties available in Aspherix (set 'speciesName' in 'species_convection' settings to auto-generate individual fields)
partSpeciesNames ( speciesC );
partSpeciesFluxNames ( speciesCFlux );
partSpeciesTransCoeffNames ( speciesCTransCoeff );
partSpeciesFluidNames ( speciesCFluid );
DMolecular ( value2 );
voidfractionInterpolationType "type1"
UInterpolationType "type2"
fluidScalarFieldInterpolationType "type2"
suppressProbe switch6;
scale scalar6;
maxSource scalar7;
// (optional) forceSubModel switches
verbose switch;
interpolation switch;
scalarViscosity switch;
nu scalar;
}
switch1 = (optional) flag to use Nusselt correlations of Li and Mason (2000)
switch2 = (normally off) for verbose run
switch3 = (optional) flag to use a general Nusselt number correlation (must specify parameters of this correlation in a list called ‘generalCorrelationParameters’ )
generalCorrelationParameters = list with a predefined number of parameters (for length see src code, only read if useGeneralCorrelation is set to true)
U = (optional, default “U”) name of the finite volume fluid velocity field
voidfraction = (optional, default “voidfraction”) name of the finite volume voidfraction field
T = name of the finite volume scalar temperature field (default T)
Temp = name of the DEM data representing the particles temperature (default Temp)
convectiveHeatFlux = name of the DEM data representing the particle-fluid convective heat flux (default convectiveHeatFlux)
heatTransCoeff = name of the DEM data representing the particle-fluid heat transfer coefficient
heatFluid = name of the DEM data representing the fluid heat
value = fluid thermal conductivity [W/(m K)]
value1 = fluid specific heat capacity [W s/(kg K)]
speciesC = name of the DEM data representing the transport species of the particles
speciesCFlux = name of the DEM data representing the particle-fluid species flux
speciesCTransCoeff = name of the DEM data representing the particle-fluid species transfer coefficient
speciesCFluid = name of the DEM data representing the transport species of the fluid
value2 = molecular diffusion coefficient [m^2/s]
type1 = (optional, default cellPoint) interpolation type for voidfraction field
type2 = (optional, default cellPointFace) interpolation type for velocity field
type3 = (optional, default cellPoint) interpolation type for fluidScalarField field
scalar7 = (optional) scaling of particle diameter:
.
d_sim is the (potentially coarse grained) particle diameter,
scale is the coarse graining factor, and d_real is the particle diameter as measured.scalar7 = limit maximal turbulence
This forceModel reads the following forceSubModel switches and overwrites the defaults as indicated in parentheses:
verbose
interpolation
scalarViscosity
verboseToDisk
Examples
forceModels
(
scalarGeneralExchange // must be 2nd position!
);
scalarGeneralExchangeProps
{
useLiMason false; //default: DeenEtAl
useGeneralCorrelation true; //default: DeenEtAl
generalCorrelationParameters
(
7.0 -10 5
1.0 0.17
1.33 -2.31 1.16
);
verbose false;
velFieldName "U";
voidfractionFieldName "voidfraction";
tempFieldName "T";
partTempName "Temp";
/* partHeatFluxName "convectiveHeatFlux"; //switch off for implicit coupling, e.g., to ParScale */
partHeatTransCoeffName "heatTransCoeff";
partHeatFluidName "heatFluid";
lambda 0.0271;
Cp 1007;
//Lists with information for each species FOR THE PARTICLES
//MUST be in the same order as eulerian species in 'scalarTransportProperties'
//MUST correspond to properties available in Aspherix (set 'speciesName' in 'species_convection' settings to auto-generate individual fields)
partSpeciesNames ( speciesC );
partSpeciesFluxNames ( speciesCFlux );
partSpeciesTransCoeffNames ( speciesCTransCoeff );
partSpeciesFluidNames ( speciesCFluid );
DMolecular ( 1e-5 );
}
Description
This forceModel does not influence the particles or the fluid flow! Using the particles’ temperature and/or species a scalar field representing “particle-fluid heatflux” and/or “particle-fluid speciesflux” is calculated.
This code is designed to realize coupled CFD-DEM simulations using Aspherix and OpenFOAM®. Note: this code is not part of OpenFOAM® (see DISCLAIMER).
Two way general scalar exchange between DEM and CFD convective heat and species transfer model. The standard model is that by Deen, N.G. et al., Review of direct numerical simulation of fluid-particle mass, momentum and heat transfer in dense gas-solid flows. Chemical Engineering Science 116 (2014) 710-724. This correlation is based on that of Gunn (1978).
The switch useGeneralCorrelation allows one to specify the parameters
of the Gunn correlation as a list called generalCorrelationParameters.
Alternatively, the correclation from Li and Mason (2000), A computational investigation of transient heat transfer in pneumatic transport of granular particles, Pow.Tech 112 can be activated. However, this correlation is not suitable for dense granular flows.
If particleShapeType multisphere is selected, caluclations are
performed for multisphere particles.
WARNING: This model REQUIRES the ‘generalManual’ speciesTransportModel
Restrictions
Warning
Works only with cfdemSolverPimple and cfdemSolverPiso.
The force model has to be the second(!) model in the forceModels list.
Home