enable_cfd_coupling command

Purpose

Command for coupling with a CFD simulation, e.g. CFDEMcoupling.

Warning

GPU support for this command has not been tested and may not work as expected.

Syntax

enable_cfd_coupling keyword value

With the following keyword argument pairs:

Keywords

Description

verbose

value setting the verbosity level. One of the following options:
  1. output only from process 0 (default)

  2. additional output for communication setup and start of communication steps (still only process 0)

  3. output from all processors

default: 0

port_file_path

The path where to store portOffset files. This setting must coincide with the setting for the twoWaySocket model on CFD side.
(default: “../DEM/”)

port_base

the base port to start searching for available ports
(default: 49152)

timeout

wait time in seconds for start up of DEM solver and successful socket connection
(default: 10)

keep_port_file

sets if port files are kept when closing the socket. valid values: yes or no
(default: no, i.e. delete portFiles)

treat_multispheres_as_spheres

treat multisphere particles as individual spheres on CFD side. (yes or no)
(default: no)

add_fluid_mass

account for additional fluid mass during integration, yes or no Additional required keyword value pairs:
  • added_mass_coefficient: coefficient for added mass

  • fluid_density: the fluid density

If using this setting, the particle mass is increased by C_\mathrm{M,add} \frac{\rho_\mathrm{f}}{\rho_\mathrm{p}}.
(default: no)

heat_transfer

activate heat transfer between particles and fluid, yes or no
(default: no)

species_convection

activate transfer of chemical species between particles and fluid, yes or no
(default: no)

liquid_transport

activate transfer of liquid between particles and fluid, yes or no
(default: no)

track_spray_collisions

activate tracking of spray-particle collisions, if liquid_transport yes. Also activates liquid_transport if not set by user.
(default: no)

attrition_transport

activate transfer of attrition between particles and fluid, yes or no
(default: no)

surface_film

activate surface film on particles and interaction with fluid, yes or no
(default: no)

variable_properties

list of properties that are changed due to reactions, available properties are mass and size
(default: {} , requires surface_film yes)

photon_reflection

activate reflection at CFD phase boundaries, yes or no. Requires usage of a photon custom material.

Additional keywords:

  • surface_refractive_index: the refractive index of the non-gaseous material at the interface (default: 1.5)

(default: no)

Examples

enable_cfd_coupling
enable_cfd_coupling verbose 1
enable_cfd_coupling heat_transfer yes
enable_cfd_coupling species_convection yes species_name H2O species_initial_value 0.01
enable_cfd_coupling attrition_transport yes
enable_cfd_coupling liquid_transport yes track_spray_collisions yes
enable_cfd_coupling surface_film yes
enable_cfd_coupling surface_film yes variable_properties {mass,size}

Description

Adds interaction with a CFD simulation running in parallel. Calculation of drag forces is done on the CFD side and received by Aspherix.

Note

This command will attempt to open a socket connection to a running CFD simulation which must open a corresponding socket for communication. This command will try to configure the exchanged data automatically.

Setting species_convection yes will set up an internal scalar transport equation to model particle-particle exchange of the species upon particle contacts. The following additional keyword value pairs are read in this case:

Keywords

Description

species_name

the species name
mandatory

species_initial_value

the initial value of the species on particles
mandatory

Setting track_spray_collisions yes will also active liquid_transport. This is a simplification for user convenience.

Setting heat_transfer yes will enable considering fluid-particle heat transfer. Heat transfer is treated in the manner specified by the settings of the corresponding LaEuScalarTemp forceModel on the CFD side. This model must be used. For postprocessing fluid-particle heat transfer the following properties are available:

  • heatFlux = conductive heatflux + (explicit/implicit) convective heatflux

  • convectiveHeatFlux = (explicit/implicit) convective heatflux

Therefore, independent settings, the convective heatflux, the (convective + conductive) heatflux and by subtraction the conductive heatflux can be obtained.

Surface film

Setting surface_film yes will set up models for coupling fluid-particle mass transfer due to chemical reactions. The masstransfer of all solidSpecies defined on the CFd side in chemistryProperties/VoidChemistryModelProps is commuicated to the DEM. It is necessary to provide information about the composition of each particle. This is done by defining composition_properties and providing the composition information to the particle_template. By defining the variable_properties list, the user can select whether mass and/or size of the particle should change due to masstransfer with CFD.

Note

This command should be the last command in the Aspherix input script before the output is configured. Especially it should not precede enable_gravity, enable_heat_transfer, simulation_timestep or particle_template commands if these are present in the simulation / script. Moreover, this command resets the write interval defined by write_output_timestep if an output_settings command was defined before.

Restrictions

Requires a CFDEMcoupling simulation running alongside using the twoWaySocket model (or an equivalent setup).

surface_species_names is a deprecated input for defining a list of the species names constituting the surface film. Please use the new composition_properties framework. surface_species_initial_values is a deprecated input for defining list of initial values (optional, if not given all species are initialized as 0). Please use the new composition_properties framework.

It is not allowed to use the enable_buoyancy command together with the enable_cfd_coupling command.