View Issue Details

IDProjectCategoryView StatusLast Update
0001259OpenFOAM[All Projects] Bugpublic2014-04-15 16:57
Reporteruser905Assigned Towill 
Status resolvedResolutionfixed 
PlatformLinuxOSDebianOS Version7
Product Version 
Fixed in Version 
Summary0001259: solver DPMFoam no dispersion model selectable
DescriptionBy setting up a case in the new particle-solver DPMFoam it is not possible to choose any dispersionModel (e.g. stochasticDispersionRAS) known from particle-solvers (e.g. icoUncoupledKinematicParcelFoam). The solver knows only the None-type dispersionModel.
Steps To Reproduce1. Set up the tutorial-case /tutorials/lagrangian/DPMFoam/Goldschmidt

2. set the option "dispersionModel" to "stochasticDispersionRAS" the dict "submodels" of the files /constant/kinematicCloudProperties

3. in the file /constant/turbulenceProperties.air set the type to "RAS" and add the dict
    RASModel kEpsilon;//continuousGasKEpsilon;

    turbulence on;
    printCoeffs on;

4. run the blockMesh-command and start the case with DPMFoam

5. The solver produces the output:
Unknown dispersion model type stochasticDispersionRAS

Valid dispersion model types are:

    From function DispersionModel<CloudType>::New(const dictionary&, CloudType&)
    in file /OpenFOAM/OpenFOAM-2.3.x/src/lagrangian/intermediate/lnInclude/DispersionModelNew.C at line 54.

FOAM exiting"
Additional InformationUnfortunately the path for the dispersionModels has changed in OpenFOAM-2.3.x compared to OpenFOAM-2.2.x from




In the former path just the None-type model exists, whereas in the latter path the known models are located.

To solve that problem this path should be added to the Make/options in the DPMFoam solver.
TagsNo tags attached.



2014-04-15 09:13


Additionally I posted a similar problem on

The answer I got was mainly:
1) In "$FOAM_SRC/lagrangian/turbulence/submodels/Kinematic/DispersionModel/" are only templates.
2) It is in "$FOAM_SRC/lagrangian/turbulence/parcels/derived" that the dispersion models are created... or at least I think they are created there.
3) The turbulence models used by the solvers in question are actually created in the library "$FOAM_SOLVERS/lagrangian/DPMFoam/DPMTurbulenceModels". This is because these models are relying on the "Turbulence" template library.
4) Problem is that so is the library "$FOAM_SRC/lagrangian/turbulence" and that is why there is an object conflict when we load this library into memory for these solvers.

--> From what I can figure out, the only way to have dispersion models in these solvers, is to somehow recreate these dispersion models directly in the "DPMTurbulenceModels" library.


2014-04-15 16:57

manager   ~0003013

DPMFoam and MPPICFoam use the new turbulence structure (src/Turbulence) which takes the volume fraction of the phase into account. The dispersion models depend upon the old turbulence structure (src/turbulence), which is why thy are not available in these solvers.

As a temporary fix to your problem, I've updated the dispersion models and put them into a new library, which is linked only by DPMFoam and MPPICFoam. The dispersion models should now be available in these solvers. The commit is 1115c18a8140c83894bcbf9d739dee0b7ac4feb5.

Issue History

Date Modified Username Field Change
2014-04-04 14:02 user905 New Issue
2014-04-15 09:13 user912 Note Added: 0003012
2014-04-15 16:57 will Note Added: 0003013
2014-04-15 16:57 will Status new => resolved
2014-04-15 16:57 will Resolution open => fixed
2014-04-15 16:57 will Assigned To => will