forceSubModel

Syntax

Defined as a sub-dictionary to a <forceModel>Props dictionary in couplingProperties. If no force sub-model is applied ImEx is used as default. If the keyword forceSubModels is provided, one or more sub models can be specified:

forceModelProps
{
    forceSubModels
    (
        model_x
        model_y
    );
}
  • model = name of force sub-model to be applied

Note

By default the forceSubModel ImEx is loaded. Hence, the following example would not change the default behavior.

Examples

DiFeliceDragProps
{
    forceSubModels
    (
        ImEx
    );
}

Description

A forceSubModel can be used to extend the functionality of a forceModel, handle the splitting between implicit and explicit forces, and to hold the settings of forceModels.

Switches

Note

This list may be extended depending on the forceSubModels in use. Confer the documentation of the forceSubModels in use.

Depending on the availability within the respective forceModel, a number of switches can be activated. In general, the default for these switches is false. However, individual forceModels may re-define this default.

  • treatForceExplicit: Switch to define how the forces due to particles are accounted for in the CFD. If this switch is set to false, the coupling force in this cell is treated in an implicit manner by expressing the coupling force F_\mathrm{P} in the cell as function of a drag coefficient and the relative velocity between average particle velocity in the cell u_\mathrm{s} and the local fluid velocity: F_\mathrm{P} = K_\mathrm{sl} (u - u_\mathrm{s}) If set to true the coupling force is applied directly. In general, the semi-implicit treatment is more stable.

  • treatForceDEM: Switch for the consideration of the forces on the DEM side only (false -> calculate forces for DEM and CFD)

  • implForceDEM: If true, the fluid velocity u_\mathrm{f} and drag coefficient C are communicated to the DEM calculation at each coupling time step and the drag force is calculated on the DEM side using the particle velocity v`as
:math:`F_\mathrm{drag} = C (v - u_\mathrm{f}). This treatment is, in general, more stable since the drag force decreases as the particle approaches the fluid velocity. If false, the particle drag force computed by the forceModel is used in the DEM directly and is considered constant for one coupling interval.

  • verbose: if true, print verbose output to screen

  • interpolation: switch for the usage of interpolation models when getting data for the Lagrangian calculation from Eulerian fields; If false, the cell centre values are used. If true, field values are interpolated to the particle position.

  • useFilteredDragModel: switch for using a coarse-grid version of the Beetstra drag model (takes grid-size effects into account)

  • useParcelSizeDependentFilteredDrag: switch for using a coarse-grid version of the Beetstra drag model (takes parcel-size effects into account, will force the switch useFilteredDragModel to true)

  • useParcelSizeDependentFilteredDrag:

  • scalarViscosity: switch for the usage of a user-defined viscosity nu for the calculation of the drag force. The momentum equation solved by the CFD solver always uses the value of the transport model defined in transportProperties. If true, the viscosity is read from the keyword nu in the properties subDict of the defining forceModel.

  • verboseToDisk:

  • useCorrectedVoidage: use corrected voidfraction

  • anisotropicDrag: use anisotropic drag

  • implTorqueDEM: treat torque implicitly on DEM side, i.e. in a fashion corresponding to the implForceDEM flag for the particle drag

  • voidageFunctionDiFelice: Switch for the usage of the DiFelice voidage correction function during the drag force calculation. The correction is given by the relation \chi = 3.7 - 0.65 \exp \left(-\frac{(1.5-\log_{10} \mathop{Re}_\mathrm{p})^2}{2} \right), where \mathop{Re}_\mathrm{p} is the particle Reynolds number. If switch is set to true, the voidageFunctionRong switch (and others) must be set to false, if false is not the default value for the selected model.

  • voidageFunctionRong: Switch for the usage of the Rong voidage correction function during the drag force calculation. The correction is given by the relation \chi = 2.65 (\phi + 1) - (5.3 - 3.5\phi) \phi^2 \exp \left(-\frac{(1.5-\log_{10} \mathop{Re}_\mathrm{p})^2}{2} \right), where \mathop{Re}_\mathrm{p} is the particle Reynolds number and \phi is the voidfraction.

  • voidageFunctionTang: switch for the usage of the Tang voidage correction function during the drag force calculation. The correction is given by the relation \chi = 2 - \log_{10}(((1.5 \sqrt{1 - \phi} + 1) \phi^2 - (10 (\phi - 1))/\phi^2 + (0.0644 \phi^{-4} + 0.169 \phi) \mathop{Re}_\mathrm{p}^{0.657} - 0.00456 \mathop{Re}_\mathrm{p} \phi^{-4} + 0.11(\phi - 2) (\phi - 1) \mathop{Re}_\mathrm{p}) / (0.2334 \mathop{Re}_\mathrm{p}^{0.657} - 0.00456 \mathop{Re}_\mathrm{p} + 1)) / \log_{10} \phi

    where \mathop{Re}_\mathrm{p} is the particle Reynolds number and \phi is the voidfraction. For reference see: 2018,ChemEngSci, Mahajan et al., Non-spherical particles in a pseudo-2d fluidized bed: Modelling Study),

  • particleSpecificCG: activate particle specific coarse graining, i.e. every particle communicates its own coarsegraining factor

In addition, the first forceSubModel of a forceModel reads the following keywords and applies the corresponding operations:

  • scale: Sets a user-defined value for the coarse graining factor to be used in CFDEMcoupling. This scales the particle diameter as d_\mathrm{sim} = \mathop{scale} d_\mathrm{real}. d_sim = (potentially coarse grained) particle diameter. scale = coarse graining factor. d_real= particle diameter as measured. This means that drag forces, etc. are calculated for particles of size d_real and are then scaled accordingly to the numer of particles in a parcel (i.e. with \mathop{scale}^3). (default value: 1.)

    Note

    This setting overrides the coarsegraining value specified in the Aspherix input script for all computations on the CFD side.

    Warning

    This setting is applied globally, i.e. will affect all forceModels!

  • scaleDrag: scaling factor which directly scales the drag force computed by the related forceModel. (default: 1.)

  • scaleDragPerType: a list of scaling factors which directly scale the drag force computed by the related forceModel based on the particle’s template. (default: 1. for every particle template)

    Note

    This setting supersedes the setting by scaleDrag. For spheres and superquadrics this requires the default usage of save_template_information on the DEM side.

    Note

    This scaling is based on the particle template as defined on the DEM side. Consequently, as many scaling factors need to be set in this list as there are particles templates on the DEM side. Moreover, the ordering must be identical. Particle templates should be defined in the DEM input scipt.

  • scaleTorque: scaling factor which directly scales the torque computed by the related forceModel. (default: 1.)

  • scaleDH: scaling factor between particle diameter and hydraulic diameter of clump (default: 1.)

    Note

    In contrast to DHc in particleShapeProps this setting affects only the force computed by the current forceModel by increasing the particle size entering the drag correlation. The DHc setting, on the other hand, will also affect other forceModels that calculate the force based on the clump diameter the calculated voidfraction. Both settings do not affect the voidfraction and can be used at the same time.

  • scaleDHPerType: list of scaling factors between particle diameter and hydraulic diameter of clump based on the particle’s (i.e. clump’s) template. (default: 1 for every particle template)

    Note

    This setting supersedes the setting by scaleDH. For spheres the diameter – instead of the hydraulic diameter – is scaled directly. For spheres and superquadrics this requires the default usage of save_template_information on the DEM side.

    Note

    This scaling is based on the particle template as defined on the DEM side. Consequently, as many scaling factors need to be set in this list as there are particles templates on the DEM side. Moreover, the ordering must be identical. Particle templates should be defined in the DEM input scipt.

Restrictions

None.