CFDEM®coupling Release Notes

Version 7.1

A new version of CFDEM®coupling comes with a lot of new features! Slides that summarize the most important developments can be found here. Information about older releases can be found here.

Release Notes

Note

Please also have a look at the release notes of Aspherix(R) Solver, technical details that concern the simulation engine are documented there!

CFDEMcoupling Version 7.1.0 (Release June 2026)
##############################################

- Significantly simplified environment loading
    - Zero user input required to load the environment for a default installation.
    - Improved error detection and error messages for invalid or incomplete configurations.
- Added compilation support for OpenFOAM-v2412.
- Added compilation support for SPUMA.
- Moved etc and default directories to the root of the CFDEMcoupling file structure.
When loading the environment make sure to account for the new location of the bashrc
file to source.
- cfdemSimulate, Autorun and Allrun automatically execute Aspherix in GPU-mode when
called in a SPUMA environment.
    - The tools moreover skip parallel execution for, both, the CFD solver and Aspherix
    in a SPUMA environment.
- Complete overhaul of build scripts:
    - The script called by the alias cfdemCompCFDEM is now based on python and provides
    a help prompt.
    - The legacy build pipeline is still provided by the alias cfdemCompCFDEM_legacy.


Minor feature improvements and fixes
====================================

- LaEuScalarCapture:
    - Improved behaviour for multiple particles in the same cell.
    Results are now independent of coarse graining. This change may give different
    results for capturing efficiency compared to previous versions of this model.
    - Fixed a possible floating point exception.
- scalarTransportModels: removed creation of duplicate instances of fvModels and
fvConstraints to avoid misleading warning on unused models / constraints
- divided voidfraction model:
    - Fixed a memory issue for the convex variant of this model which might write
    out-of-bounds when using only a single marker point.
    - Improved error message when exceeding maximum cells per particle.
- Discontinued csh support since it has been unused for a long time. Please contact us,
if this assessment was incorrect.
- cfdemSimulate: Added a dryrun mode that outputs the generated commands without
executing them.
- useDDTvoidfraction: added optional masking region for where the ddt(voidfraction)
field will be applied (configured in the voidfractionModel).
- dividedConvex:
    - Changed default value of resolution keyword to (3 3 3) from (1 1 1)
    to prevent the model from falling back to a center model.
    - Added voidfraction correction at processor boundaries for this model.
- dividedMP: fixed a bug that might write out-of-bounds
- Fixed memory leaks across various classes.
- cfdemParticle:
    - Moved directory in which dependency files are created from
    'Make' to 'Make/<architecture>'.
    - Renamed created library.
- Moved all scripts from etc to a dedicated scripts folder.
    - Added an environment variable for easy access, CFDEM_SCRIPT_DIR
    - Environment automatically adds CFDEM_SCRIPT_DIR to the PATH
- cfdemCloneCase: new script to simplify cloning of a coupled case.
- decomposeParCFDEM: excluded from GPU compilation
- writeUfluid: removed from release
- vizClock: move tool to scripts folder and remove alias
- sampleUAtCellCentres: removed utility since unused

Premium
-------
- IBMeshMotion: Added support for linear mesh motion across periodic boundaries by
resetting the mesh after travelling further than the periodic mesh.
- Added / improved error detection and message if the IBParticle model is
missing in a (presumably) resolved simulation setup

Multiphase
----------
- Removed cfdemSolverInterDyM, cfdemSolverInterDyMPC, and cfdemSolverInterIB.
Cases employing these solvers should use cfdemSolverInter instead.


Documentation
=============

- Improved installation instructions:
    - Added installation instructions for GPU version.
    - Updated for new environment loading.
    - Added bash functions as convenient way to load an environment.
    - Clarified documentation of related environment variables.
- Added documentation article for fluidizedBed_GPU.


Tutorials
=========

- Reworked various tutorials and useCases:
    - Removed stored CFD meshes and added mesh generation to case execution
    - Store large surface meshes as .obj files
- cfdemSolverPimple/ErgunTest: fixed directory traverse in postrun script
- ErgunTest and similar cases for all solvers:
    - Rewrote blockMeshDict using named vertices and point projection
- cfdemSolverMultiPhaseEuler/ErgunTest:
    - Updated and simplified prerun scripts
    - Reduced number of tracked probes
- cfdemSolverPimple/IBconvex: added new tutorial demonstrating the setup
of IB simulations using the IBParticle model and convex particles.
- Added fluidizedBed_GPU as useCase for GPU usage and benchmarking.
- Removed unused dictionaries from various tutorial cases

Old versions

Version 7.0.X

Show/Hide details

CFDEMcoupling Version 7.0.0 (Release December 2025)
###################################################

Main feature improvements
=========================

- Support for particle specific coarse graining in all force models


Minor feature improvements and fixes
====================================

- ArchimedesIB: Fixed artificial buoyancy being created for heavy particles when
submerged in VoF liquid
- LaEuScalarTemp: Added automatic retrieval of particle type data for density and
thermalCapacity to replace manual settings required for automatic temperature
blending
- Removed outdated script testTutorials.sh
- ShirgaonkarIB: Added support for scaleDrag keyword
- divided: Removed unused variables
- Autorun: Skip prompting user to choose a case variant if there is only one
variant available
- CFDEMcoupling ParaView macro: Fixed inconsistent slice location. The slice is
now correctly created in the middle of the domain extent's shortest axis
- Postprocessing: Enforce black code format in all python scripts

Premium
-------
- temperatureDependentViscosity:
    - Fixed incorrect viscosity calculation on patches
    - Fixed incorrect viscosity calculation on processor boundaries
- IBMeshMotion, IBParticle:
    - Fixed body field not being read upon restarting simulations resulting in
    inconsistent dynamic refinement
    - Added different unit modes for the rotational velocity
- limitField: disallow usage of lower and upper bounds in the same constraint

Chemistry
---------
- pseudoScatter: Fixed a memory issue

Multiphase
----------
- melting: Added a mode to account for thermal energy transferred by melting particle mass
- cfdemSolverInter:
    - Improved mass conservation in cases with particle melting
    - Improved energy conservation in cases with particle melting
    - Fixed automatic detection for phaseChange mode which would not find the
    temperature file for solely decomposed time instances
    - Fixed artificial buoyancyu being created
- waveModels
    - Fixed wrong orientation of velocity and phase field at the inlet for gravity
    pointing in the y- instead of z-direction


Documentation
=============

- Improved documentation of settings available in couplingProperties.
Available options should be substantially easier to find.
- Improved documentation of available environment variables and added some missing
variables that were only mentioned in specialized articles
- Moved information on how to run cases from tutorials to getting started section where
these points were being discussed already
- Improved articles on validation and use cases, created articles if none existed,
collected these cases in corresponding sections for convenient lookup
- Added a HowTo on restarting / continuing coupled simulations
- Updated documentation on new / merged tutorial case cfdemSolverPiso/ErgunSpoutShapes
    - Removed now outdated articles on previous individual cases
    - Moved this tutorial to a more prominent position in the tutorials section
    - Added a link from the HowTo section


Tutorials
=========

- Added dedicated useCases and validationCases directories to collect and highlight
corresponding cases
    - useCases: high level use cases, e.g. as template to derive new case setups from
        - erosionAroundObstacle:
            - New case
            - Erosion of a particle bed around a cylindrical obstacle
        - miniBallMill:
            - rotating dr
            - Previously located as cfdemSolverInter/miniBallMill
        - sprayGranulation:
            - Spray granulation in a top-spraying coater including evaporation
            - Previously located as cfdemSolverPimple/sprayGranulation
        - harvester
            - New case
            - Particle separation in a simplified combine harvester
    - validationCases: cases used for validation of simulation results against well-established
    benchmarks, preferably experimental results
        - bubbleColumn_Gan2013:
            - Bubbles rising in water,
            - Validation of the average bubblevelocityt against experimental results
            - Previously located as cfdemSolverPimple/bubbleColumn
        - ErgunTest_analytic:
            - Pressure drop across a particle bed
            - Validation against the analytic Ergun pressure curve and fluidization velocity
            - New case similar to cfdemSolverPiso/ErgunTest
        - fluidizedBed_Mueller2009:
            - Particle fluidization in a thin prismatic domain
            - Validation of voidfraction against experimental results
            - Previously located as cfdemSolverPiso/fluidizedBed_Mueller2007
        - settlingTest_analytic:
            - Settling velocity of single particle
            - Validation against velocity from analytic solution of equations of motion
            - New case similar to cfdemSolverPiso/settlingTest
        - settlingTest_resolved_Pianet2007:
            - Settling velocity of single particle in a dense fluid for different Reynolds numbers
            - Resolved case setup
            - Validation against velocity from experimental results
            - Previously located as settlingTestPianet in cfdemSolverIB and cfdemSolverPimple
        - settlingTest_unresolved_Pianet2007:
            - Settling velocity of single particle in a dense fluid for different Reynolds numbers
            - Unesolved case setup
            - Validation against velocity from experimental results
            - New case
        - spoutBed_Goniva2012:
            - Particle fluidization in a prismatic domain
            - Validation against average particle velocity from experimental and numerical results
            - New case
        - twoSpheres_Glowinski1999:
            - Two settling spheres undergoind drafting kissing and tumbling
            - Resolved case setup
            - Validation against velocity from numerical results
            - Previously located as twoSpheresGlowinski in cfdemSolverIB and cfdemSolverPimple
- Added cfdemSolverPiso/ErgunSpoutShapes
    - Merges and updates all variants from cfdemSolverPiso/ErgunTestSpout and
    cfdemSolverPisoNonspherical/ErgunTestSpout
    - Reduces duplications
    - Highlights settings changes that are required to change the particle shape

Chemistry
---------
- cfdemSolverChem/mixingDrum: Moved probe locations to more meaningful points

Version 6.6.X

Show/Hide details

CFDEMcoupling Version 6.6.1 (Release July 2025)
###############################################

Main feature improvements
=========================

- Major overhaul of the socket interface

Chemistry
---------
- fixedValueScalarExternal: new boundary condition to couple wall temperature and
  heat transfer with a mesh on the DEM-side


Minor feature improvements and fixes
====================================

- Updated the CFDEMcoupling ParaView macro for compatibility with Paraview-6

Premium
-------
- limitField: fixed a bug when addressing cells from a cellSet
- IBMeshMotion / IBParticle: set default boundary condition to zeroGradient for fields
  created internally.
  While this change does not affect the actual results, it improves how fields are
  displayed, e.g. in ParaView, especially iso-surfaces close to the boundaries.

Chemistry
---------
- cfdemSolverRhoPimple: aligned pressure work term in EEqn with cfdemSolverChem.



CFDEMcoupling Version 6.6.0 (Release June 2025)
###############################################

Main feature improvements
=========================

- added support for dynamic / particle-based coarsegraining
  NOTE: currently only available for DiFeliceDrag
- tetBasedVf:
    - new voidfraction model using the cell decomposition into tetrahedrons to distribute
      particle volume also to neighboring cells
    - creates smooth voidfraction fields across cell, processor and cyclic boundaries
    - creates a smooth time derivative
- LaEuScalarTemp: added automatic determination of temperature blend Factor on a
  per-particle basis

Premium
-------
- IBMeshMotion:
    - write transformed (i.e. moved / transformed) STL files for visualization
    - fixed postprocessing for several meshes where a log would have been written
      only for the first mesh
    - fix falsely set postProcessingInterval -- user-set value was multiplied with
      the simulation time step
- temperatureDependentViscosity:
    - new model for viscosity as (tabulated) function of temperature
    - also compatible with Volume-of-Fluid simulations using cfdemSolverInter
- dividedConvex:
    - divided model for convex particles that discretizes the particle on a regular set
      of points -- similar to the resolution keyword for dividedSuperquadric
    - simplifies case setup compared to dividedMP model
- cfdemSolverPimple: added support for local time stepping (LTS)


Minor feature improvements and fixes
====================================

- DEMbasedDrag:
    - fixed drag force becoming zero in cases where CFD and DEM time steps are
      identical
    - added error checks to ensure that this model is accompanied by matching settings
      on the DEM side and vice-versa
- Autorun scripts process and display plots defined in run.config
- introduced central and consistent functions for calculation of particle volume and
  similar
  NOTE: This change leads to slightly different results due to floating point accuracy
- checkCouplingInterval: fixed MPI error occuring in serial mode
  when using the model witout any particles present
- improved default solver settings to handle
    - compressible/incompressible setups
    - PIMPLE and PISO modes
- cfdemSimulate: fixed a missing ampersand that might lead to problems
  when running with slurm
- voidFractionModels: refactored models and removed unused code branches
- bashrc:
    - improved detection of OF version and made incompatible version flag non-persistent
    - no longer create user-dir by default, avoid user-interaction to not break scripts
    - removed no longer used environment variables
- trilinear voidfraction model: deprecated as replaced by new tetBased model
- checkCouplingInterval: added an additional stability check for the diffusion number

Chemistry
---------
- VoidChemistryModel: guarded a divide-by-zero when solid species is depleted


Documentation
=============

- added HowTo section on how to obtain continuous voidfraction fields across
  processor boundaries


Tutorials
=========

- cfdemSolverInter: updated tutorial cases to use physicalProperties instead of
  transportProperties
- cfdemSolverChem: updated tutorial cases to use the new composition framework
- updated all tutorial cases to use foamDictionary instead of changeDictionary
- updated numerous tutorial cases to use Autorun script
- added cfdemSolverPisoScalar/fluidizedBedTemp

Version 6.5.X

Show/Hide details

CFDEMcoupling Version 6.5.0 (Release December 2024)
###################################################

Main feature improvements
=========================

- postprocessingModels: no longer inherit as forceModel
    - reduces model overhead
    - need to be loaded as separate model type
- performance improvements:
    - improved performance of model equation implementations
    - ensure integrators are only created / reset when used

- binary releases for CFDEMcoupling are now available

Premium
-------
- IBMeshMotion:
    - fixed reading of postProcessingInterval to conform with documentation
    - updated linear and rotation movement to use Function1 objects instead on scalar
        - time dependent motion
        - nested and superposed motion functions possible
- externalWallHeatTransfer boundary condition:
    - added mode for usage with VoF-solver cfdemSolverInter

Chemistry
---------
- cfdemSolverChem: updated solver to use code base of OF-10 reactingFoam
    - usage aligned with OF-10 reactingFoam, e.g. pressure field definition
    - improved performance
- cfdemSolverRhoPimple: updated solver to use code base of OF-10 rhoPimpleFoam
- LaEuFilmFormationSpray: update model to automatically set / detect species
  for communication
- support for framework on mass change due to liquid and chemical reactions

Multiphase
----------
- cfdemSolverInter: updated solver to use code base of OF-10 interFoam
    - merged all VoF-solvers into new solver
    - replaces cfdemSolverInterDyM, cfdemSolverInterDyMPC and cfdemSolverInterIB


Minor feature improvements and fixes
====================================

- cfdemSimulate:
    - changed default behavior to always wait for DEM befor executing the CFD solver
    - improved time stamps in unique log file names
- voidfraction models:
    - increased default lower voidfraction limit to 0.3 for all unresolved models
    - updated smoothing models to change alphaMin to 0.01
- reviewed and improved default discretization schemes
- fixed a roundoff in coupled write triggering leading to DEM output being offset
- DEMbasedDrag:
    - fixed duplicate application of coarsegraining on the CFD side
    - disallowed usage of scale keywords on the CFD side
- constDiffSmoothing: fixed an issue where the sanity check for user-set smoothingLength
  would fail if no particles were present
- updated controlDefaults to also load libraries fvModelsCFDM and fvConstraintsCFDEM
- added bash function to display images from tutorial postprocessing,
  used in Autorun scripts
- removed deployment of unused libraries
- forceModels: dicontinued the 'scale' keyword since replaced by the 'coarsegraining'
  command on DEM side

Premium
-------
- cfdemSolverPimple: fixed a bug that created velocity disturbances in moving mesh
  regions containing dense particle packings
- IBVoidFractionConvex: fixed calculation of center point of convex particles that would
  give wrong results for asymmetric particles
- fixed inconsistencies in behavior between scaleDragPerType and scaleDHPerType

Chemistry
---------
- improved thermophysicalDefaults
- discontinued cfdemSolverSpray, functionality fully coved by cfdemSolverChem

Multiphase
----------
- gasBurner: improved to allow several model instances


Documentation
=============

- foamToVTKCFDEM: updated to emphasize existence of 'write_pvd.py' tool
- IBMeshMotion: fixed reading of postProcessingInterval to conform with documentation


Tutorials
=========

- merged and moved all tutorials of cfdemSolverInterDyM, cfdemSolverInterDyMPC and
  cfdemSolverInterIB
- updated all tutorial cases for compatibility with updated cfdemSolverChem
- added and updated tutorial cases for framework on mass change due to liquid and
  chemical reactions

Version 6.4.X

Show/Hide details

CFDEMcoupling Version 6.4.0 (Release July 2024)
###############################################

Main feature improvements
=========================

Premium
-------
- Updated IBMeshMotion to be compatible with dynamic mesh refinement
- New forceModel: electrostaticForce
    - Far field force contribution of electric fields on charged particles
- New smoothing model: particleSizeDiffSmoothing
    - Advanced variant of constDiffSmoothing for polydisperse particle size distributions

Multiphase
----------
- Extended melting model with a simple model for liquid solidification on particles
- cfdemSolverInterIB
    - Added contact angle model at IB surfaces
- cfdemSolverInter:
    - New Volume-of-Fluid solver to replace cfdemSolverInterDyM
    - Based on interFoam from OF-10
    - Will receive further developments to also include phase change and IB method


Minor feature improvements and fixes
====================================

- Added an option for further stabilized particle-fluid heat transfer
- Improved default schemes
    - Avoid internal energy default setting to be used for non-energy fields
- checkFluxBalance: added setting for custom comment character in header for simplified data processing
- Case consistency checks:
    - Improved check and especially error message on couplingInterval
    - treat_multispheres_as_spheres yes on DEM with particleShapeType multisphere on CFD
      is now detected as invalid model combination
    - Improved checks on time step size to allow changes in time step for continuing simulations
- Reduced the output upon encountered errors
    - For input errors and similar, the stack trace is no longer displayed.
    - Consequently, the actual error message becomes more prominent.
- cfdemSysTest: made aware of compilation state to throw less errors
- Updated cfdemSimulate to remove portOffset files automatically
    - This behavior adds a further layer to ensure outdated portOffset files are not
      present when restarting simulations.
- Added user setting for the base port where search for free ports starts
- Added output on user-defined interpolation schemes
- constDiffSmoothingModel: Added check that the user-provided smoothingLength is in a
  reasonble range compared to the particle size
- Added communication of writeInterval from CFD to DEM to be used (e.g.) in write_to_file
  as write_every_time
- Autorun: improved backup and restore behavior
- Reduced overhead in solver compilation

Chemistry
---------
- Added default thermpohysicalProperties for various materials and species
- Added support for multi-species particles
- LaEuFilmFormation, EuLaFilmFormation and spray variants: various model improvements
    - unified user input for film formation models
      (LaEuFilmFormation, EuLaFilmFormation, LaEuFilmFormationSpray)
    - LaEuScalarFilmFormationSpray: species determined automatically from species settings
- Simplified setup of cases with cfdemSolverChem:
    - particleCellSurface: relaxed strict model requirement to only include setups where
      the created fields are used
    - Removed requirement for combustionProperties, instead a meaningful default behavior
      is chosen based on the chemistry settings
    - Default thermodynamic properties
    - Chemistry module auto detects which species to work on

Multiphase
----------
- VoF solvers now allow interpolation for particle-fluid heat transfer
- Added a combined heat and gas source for cfdemSolverInterDyMPC


Documentation
=============

- LaEuScalarTemp: improved documentation to include all equations for the Nusselt number
  correlations
- New tutorial article on modelling spray nozzles
- Extended the ErgunTest tutorial with a discussion on boundary conditions, especially
  for solvers impplementing the PIMPLE algorithm


Tutorials
=========
- cfdemSolverPimple: new spray granulation tutorial case
- cfdemSolverPiso/periodicChannel updated to natural language
- Reduced usage of LaEuScalarSpray model to cases where it is actually used
- Updated tutorials for new chemical compositions and density settings
- cfdemSolverInterIB/plungingParticle: new test case for IB-VoF solver with particles
  represented by IB
- Updated ErgunTest tutorial cases to use improved set of boundary conditions
- All tutorials now properly calculate the global sum of dragforce
- Updated cfdemSolverInterDyMPC/singleDropletDryingThermal natural language
- Updated tutorial cases of cfdemSolverChem to consider changes in particle size and mass
  separately

Version 6.3.X

Show/Hide details

CFDEMcoupling Version 6.3.0 (Release November 2023)
###################################################

Main feature improvements
=========================

- Documentation for CFDEMcoupling is now part of the Aspherix documentation
- Introducing postProcessingModels
    - New model class to replace forceModels that only process data
    - Called at correct point in time stepping
    - Backwards compatible to old-style usage as forceModel
    - Affected models:
        - averageSlipVel                          - fieldStore
        - checkCouplingInterval                   - particleCellSurface
        - checkFluxBalance                        - particleCellVolume
        - fieldBound                              - particleTemperature
        - fieldCalc                               - particleVolume
        - fieldFavreAverage                       - totalMomentumExchange
        - fieldTimeRelaxed                        - typeConcentration
        - fieldTimeAverage
    - checkFluxBalance is now called at correct point in solution procedure
        - Fixes issue where this model would use velocities from an unconverged solution
    - particleVolume corrected default values and added support for coarse grained particles
- Multiple DEMbasedDrag models with pointcloid are now supported also in coupled simulations
- cfdemSolverPiso, cfdemSolverPisoScalar: reduce pressure fluctuations from temporal
  voidfraction field change

PREMIUM
-------
- Added support for Immersed Boundary (IB) simulations of superquadric particles
- Improved IB forcing term for IBParticle and IBMeshMotion
- IBM in unresolved solvers (e.g. cfdemSolverPimple) now allows non-constant viscosities,
    - e.g. usage of non-Newtonian fluids

MULTIPHASE
----------
- cfdemSolverInterIB: new solver for Immersed Boundary simulations with several fluid phases
- cfdemSolverMultiPhaseEuler
    - Now also supports superficial velocity formulation
    - updated to OpenFOAM-10 code base and validated against multiphaseEulerFoam
    - Added support for mesh refinement and mesh motion


Minor feature improvements and fixes
====================================
- Fixed a bug where changing the CFD time step in a coupled simulation continuing
  a previous run would write DEM results at undesired times
- cfdemSimulate:
    - Now also supports slurm commands, i.e. can use srun instead of mpirun and
      supports related options
    - Added flag to automatically decompose coupled cases
- Autorun scripts now support insertion of additional MPI options
- cfdemPlotCheckFluxBalance: new automatic plotting tool for output of checkFluxBalance
- ArchimedesIB: updated default name of voidfraction field to be consistent with other models
- Fixed a bug that would truncate non-integer coarsegraining values
- Updated solvers to also allow constraints on nut
- Renamed scripts for usage with HelyxOS to clarify use case
- noDataExhcange model no longer requires gravity
- viscForce: fixed a bug where the model would use the wrong viscosity in edge cases
- writeAsx: fixed purgeWrite setting ignoring DEM restart files


Documentation
=============
- Documentation for CFDEMcoupling is now part of the Aspherix documentation
- New tutorial article on IB simulations with cfdemSolverPimple
- New tutorial article for particle adaptive mesh refinement in an IB simulation
  with superquadric particles


Tutorials
=========
- Improved nonSpherical settlingTests for cfdemSolverPisoNonspherical
- New IBM validation case: triangulated sphere (convex particle) in analogy to Pianet settling test
- New tutorial case for particle adaptive mesh refinement in an IB simulation
  with superquadric particles

Version 6.2.X

Show/Hide details

CFDEM®coupling Version 6.2.0 (Release May 2023)
###############################################

 Main feature improvements
=========================
- Updated CFDEMcoupling to use OpenFOAM-10
- Documentation for CFDEMcoupling is now part of the Aspherix documentation
    - NOTE: the documentation is still included in CFDEMcoupling for this release but will be removed in the future
- Usage of fixedFluxPressure BC is now mandatory, can be overwritten by user
- Various improvements for DEMbasedDrag
    - For setups with non-constant viscosity and density, these variables are now communicated
      and used in drag calculation
    --> Formulation now suitable for flows of multiphase fluids
    - Buoyancy can be calculated directly on the DEM side
    - Applicable for SQ and convex particles
    - #1053 DEMbasedDrag introduce update_every_time_max
- #1096 DEMbasedDrag -- new and direct resampling of CFD data

PREMIUM
-------
- Compressible library cfdemParticleComp removed, functionality is merged into the regular cfdemParticle library
- scaleDragPerType option now available for all particle shapes

CHEMISTRY
---------
- Radiation: added new and improved existing radiation models
    - LaEuScalarRadiation: added Brewster correction
    - fixedRadHeatFluxFvPatchScalarField: new boundary condition for radiative heat flux
    - P1CFDEM: P1 radiation model
    - constantScatterCFDEM: constant scattering based on user input
    - pseudoScatterCFDEM: scatering based on local particle volume fraction

MULTIPHASE
----------
- meshMotionModel IBSphere renamed to IBParticle and can be applied also to convex particles


Minor feature improvements and fixes
====================================
- cfdemSimulate now accepts command line arguments for Aspherix
- locateModel engine specifically disallowed for cases with changing meshes
- Removed redundant debug output
- particleCellSurface: fixed calculation of voidfractionCenter in cases using coarse graining
- Paraview macro: does no longer create block decomposition for existing filters

PREMIUM
-------
- Independent smoothing for IBMeshMotion models and particle fields
- dividedMP: automatically requests quaternion from DEM
- transferFields:
    - Fixed some memory issues
    - Allow transfer of thermo properties
    - Added default value -- avoids bad values for particles that cannot be mapped to a cell
- particletemplate to CFDEMcoupling also for spheres

CHEMISTRY
---------
- LaEuScalarMass: removed redundant loops
- LaEuScalarSpray and cfdemSolverChem:
    - Fix Sauter diameter used to calculate Stokes number
- LaEuFilmFormationSpray: fix calculation of local voidfraction in cases using coarsegraining


Documentation
=============
- Improved, streamlined, and updated installation instructions
- Documentation for CFDEMcoupling is now part of the Aspherix documentation


Tutorials
=========
- Updated tutorials to use fixedFluxPressure BC instead of zeroGradient for pressure #922
- swak4Foam is no longer used in tutorials
- Added 'case.cfdem' files to various tutorials as hook for using the CFD-DEM reader for paraview
- Added Autorun.sh scripts to various tutorial cases
- Updated input scripts in various tutorial cases to use most up-to-date natural language features

Version 6.1.X

Show/Hide details

_images/Slide1.png _images/Slide2.png _images/Slide3.png _images/Slide4.png _images/Slide5.png

Release notes

CFDEMcoupling Version 6.1.0 (Release Nov 2022)
##############################################

Main feature improvements
=========================

- DEMbasedDrag
    - CFDEMcoupling interface for drag calculation in Aspherix
    - More straightforward usage of superquadric and convex particle shapes
    --> Now available for all packages
- LaEuscalarTemp
    - Improve accuracy of fluid-particle heat transfer by using the (no interpolated) cell
      temperature to caluclate heat transfer
    --> Avoiding interpolation yields consistent heat fluxes on CFD and DEM side
- Fully implicit handling of fluid-particle heat transfer
    - Both CFD and DEM can now handle heat fluxes due to heat exchange in an implicit manner
    --> Substantially improves stability, especially for cases with very low heat capacities
- Paraview reader for coupled cases
    - Loads both Aspherix and CFD data from a coupled case
    - Exposes nodes for further data processing, e.g. by Aspherix and CFDEMcoupling macros
- Improved adaptive refinement indicator
    - Exclude small particles from refinement

PREMIUM
-------
- IBMeshMotion
    - Start and/or stop mesh motion at user-specified times
    - New motion law: linear oscillation, also as superimposed motion
- Lorentz force
    - New meshMotionModel
    - Include MHD forces acting on the fluid
- externalWallHeatTransfer
    - New boundary condition to model heat transfer through thin walls

MULTIPHASE
----------
- cfdemSolverMultiPhaseEuler
    - Now supports fluid-particle heat transfer
    - Improved default numerical schemes for this solver
- Melting model now works for all particle shapes
    --> Also handles superquadric and convex particles


Minor feature improvements and fixes
====================================

- twoWaySocket
    - couplingInterval=-1 as a short hand notation to exchange data with DEM only at the
      beginning of the simulation
    --> Effectively creates a one-way coupled setup with transient flow
- cfdemCleanCase: new tool to clean CFD-DEM case directories
- writeASX: ensure that the writeInterval is larger than the time step to avoid division by zero
- cfdemSimulate now runs also pure CFD simulations
- STM: bug fixes to detection and handling of temperature fields
    - Would previously have been treated as species field
    --> Prandtl number is now applied (instead of Schmidt number)
- ShirgaonkarIB: improved communication of torques to DEM
    - Fixes a Segfault when using with IBSphere meshMotionModel
- scalarTransportModel (STM)
    - STM now handles scalar transport in a consistent manner for all compressible AND
      incompressible solvers

PREMIUM
-------
- StokesClumpDrag: improved performance
- Improved internal volume calculation for superquadric particles
- transferVapour: improved model to cooperate with new evaporation models on Aspherix side
- transferFields
    - Interpolates field data to particle positions
    - Data is sent to DEM for output
- fieldExplicitPorositySource
    - New fvOption to set up porous regions based on a solid or voidfraction field
- limitField: new fvOption to limit fields based on another indicator field

CHEMICAL
--------
- LaEuScalarMass: added voidfraction to calculation CFD source to improve mass conservation


Documentation
=============

- Installation instructions are now available as separate PDF
- Added getting started section for new users
- Added FAQ section for commonly encountered problems
- Revised documentation of DEMbasedDrag

CHEMICAL
--------
- cfdemSolverChem: added documentation on created species source and flux fields

MULTIPHASE
----------
- Improved documentation of cfdemSolverMultiPhaseEuler


Tutorials
=========

PREMIUM
-------
- Improved tracking of (total) liquid on particles

Version 6.0.X

Show/Hide details

_images/600_coupling_1.png _images/600_coupling_2.png _images/600_coupling_3.png _images/600_coupling_4.png _images/600_coupling_5.png

Release notes

CFDEMcoupling Version 6.0.0 (Release May 2022)
##############################################

Main feature improvements
=========================

- Performance improvements in CFD-DEM data exchange
    --> Substantial speed-up for simulations with many particles
- Automatically calculate flux over all patches and asses flux balance
    - New forceModel: checkFluxBalance
    - Sums flux over all boundaries and calculates balance
    - Output similar to function objects
    - Automatically started for all simulation
- Use of fixedFluxPressure boundary condition on walls is now recommended
    - Warning if zeroGradient is used instead of fixedFluxPressure
    - Tutorials now use the fixedFluxPressure boundary condition
    --> improved volume / mass balance
    --> Note: this default will be enforced more rigidly the future versions!

- Note: which the updated particle insertion in Aspherix simulation results maz deviate
    slightly from older versions since particles are inserted at different locations.

PREMIUM
-------
- New forceModel: DEMbasedDrag
    - CFDEMcoupling interface for drag calculation in Aspherix
- All drag laws now work for all particle shapes
- HoelzerSommerfeldDrag: substantial performance improvements for superquadric particles
    - New keyword sqAngleDiscretization to restore previous behavior or tune accuracy of cross section calculation
- New forceSubModel: superficialVelocity
    --> Use superficial instead of interstitial velocity for force calculation

multiphase
----------
- Volume-of-Fluid (VoF) solvers:
    - cfdemSolverInterDyM and cfdemSolverInterDyMPC updated to OpenFOAM-8 code base
      --> Improved interface compression and mass conservation
    - cfdemSolverInterDyMPC: improved temperature equation and reading of related per-phase properties


Minor feature improvements and fixes
====================================

- ParaView macro improvements:
    - Updated to be compatible with ParaView 5.10
    - Updated to also operate in client/server mode
    - Processes data sources only once
- Improved cfdemSimulate script
    - Optional auto detection of DEM state
    - Improved error messages
    - Option to create unique log file names
? (#919) Environment (bashrc, etc.) now understand custom OpenFOAM version strings

- Bugfixes for CFD-triggered DEM output
- Communication of gravity from DEM side now warns if gravity on CFD and DEM side do not match
- New default files for simplified setup of probes, volFieldValue, and surfaceFieldValue functionObjects

PREMIUM
-------
- HoelzerSommerfeldDrag:
    - Fixed a bug in torque calculation which would result in far too high torque values
    - Torque is now caluclated for all particles shapes, not only for multispheres
- Enhanced models and data transfer for new Aspherix spray droplets and advanced evaporation models
- IO models now also process pointCloud particles
- Improved coarse graining of convex particles
- Fixed bug when using centre voidfraction model with multisphere particles
- Approximate surface area is now computed automatically also for convex particles
- Fixed a bug in automatic surface area calculation for multispheres
- Use csv field data for one-way coupling, e.g. rotatingDistributor

multiphase
----------
- New model for reflection of Aspherix photon particles on VoF gas-liquid interface
- New fvOption: zoneFractionMeanSupVelocityForce
    --> Impose average superficial velocity depending on phase fraction
- New boundary condition: variableHeightFlowRateInletVelocityControlled
    --> Controlled two-phase inflow

chem
----
- Implicit temperature source term now also available for compressible solvers
    --> Note: NEW DEFAULT!
- cfdemSolverRhoPimple: improved fixedFluxPressure handling


Documentation
=============

- Added documentation on how to set gravity in DEM context and when data from DEM side is used in CFD
- Add tutorial article on new VoF-miniBallMill setup


Tutorials
=========

PREMIUM
-------
- New tutorial case using the IBSphere model in a case with AMI

multiphase
----------
- New VoF-miniBallMill tutorial