diff --git a/README b/README deleted file mode 100644 index fd2ca756..00000000 --- a/README +++ /dev/null @@ -1,81 +0,0 @@ -/*---------------------------------------------------------------------------*\ - CFDEMcoupling - Open Source CFD-DEM coupling - - CFDEMcoupling is part of the CFDEMproject - www.cfdem.com - Christoph Goniva, christoph.goniva@cfdem.com - Copyright 2009-2012 JKU Linz - Copyright 2012- DCS Computing GmbH, Linz -------------------------------------------------------------------------------- -License - This file is part of CFDEMcoupling. - - CFDEMcoupling is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 3 of the License, or (at your - option) any later version. - - CFDEMcoupling is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with CFDEMcoupling; if not, write to the Free Software Foundation, - Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -Description - This code is designed to realize coupled CFD-DEM simulations using LIGGGHTS - and OpenFOAM. Note: this code is not part of OpenFOAM (see DISCLAIMER). -\*---------------------------------------------------------------------------*/ - - -CFDEM coupling provides an open source parallel coupled CFD-DEM framework -combining the strengths of LIGGGHTS DEM code and the Open Source -CFD package OpenFOAM(R)(*). The CFDEMcoupling toolbox allows to expand -standard CFD solvers of OpenFOAM(R)(*) to include a coupling to the DEM -code LIGGGHTS. In this toolbox the particle representation within the -CFD solver is organized by "cloud" classes. Key functionalities are organised -in sub-models (e.g. force models, data exchange models, etc.) which can easily -be selected and combined by dictionary settings. - -The coupled solvers run fully parallel on distributed-memory clusters. - -Features are: - -- its modular approach allows users to easily implement new models -- its MPI parallelization enables to use it for large scale problems -- the "forum"_lws on CFD-DEM gives the possibility to exchange with other - users / developers -- the use of GIT allows to easily update to the latest version -- basic documentation is provided - -The file structure: - -- "src" directory including the source files of the coupling toolbox and models -- "applications" directory including the solver files for coupled CFD-DEM simulations -- "doc" directory including the documentation of CFDEMcoupling -- "tutorials" directory including basic tutorial cases showing the functionality - - - -Details on installation are given on the "www.cfdem.com" - -The functionality of this CFD-DEM framwork is described via "tutorial cases" showing -how to use different solvers and models. - -CFDEMcoupling stands for Computational Fluid Dynamics (CFD) - -Discrete Element Method (DEM) coupling. - -CFDEMcoupling is an open-source code, distributed freely under the terms of the -GNU Public License (GPL). - -Core development of CFDEMcoupling is done by -Christoph Goniva and Christoph Kloss, both at DCS Computing GmbH, 2012 - - -\*---------------------------------------------------------------------------*/ -(*) "OpenFOAM(R)"_of is a registered trade mark of the ESI Group. -This offering is not affiliated, approved or endorsed by ESI Group, -the producer of the OpenFOAMĀ® software and owner of the OpenFOAMĀ® trade mark. -\*---------------------------------------------------------------------------*/ diff --git a/applications/solvers/cfdemSolverIB/cfdemSolverIB.C b/applications/solvers/cfdemSolverIB/cfdemSolverIB.C index f61f03dd..2a091c1b 100755 --- a/applications/solvers/cfdemSolverIB/cfdemSolverIB.C +++ b/applications/solvers/cfdemSolverIB/cfdemSolverIB.C @@ -123,7 +123,7 @@ int main(int argc, char *argv[]) fvScalarMatrix pEqn ( - fvm::laplacian(rUA, p) == fvc::div(phi) + fvc::ddt(voidfraction) + fvm::laplacian(rUA, p) == fvc::div(phi) + particleCloud.ddtVoidfraction() ); pEqn.setReference(pRefCell, pRefValue); diff --git a/applications/solvers/cfdemSolverPimple/cfdemSolverPimple.C b/applications/solvers/cfdemSolverPimple/cfdemSolverPimple.C index 7ae6f486..9dd4ff0b 100644 --- a/applications/solvers/cfdemSolverPimple/cfdemSolverPimple.C +++ b/applications/solvers/cfdemSolverPimple/cfdemSolverPimple.C @@ -43,6 +43,7 @@ Description #include "cfdemCloud.H" #include "implicitCouple.H" +#include "smoothingModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -80,7 +81,8 @@ int main(int argc, char *argv[]) particleCloud.evolve(voidfraction,Us,U); Info << "update Ksl.internalField()" << endl; - Ksl.internalField() = particleCloud.momCoupleM(0).impMomSource(); + Ksl.oldTime().internalField() = particleCloud.momCoupleM(0).impMomSource(); + particleCloud.smoothingM().smoothen(Ksl); Ksl.correctBoundaryConditions(); // --- Pressure-velocity PIMPLE corrector loop diff --git a/applications/solvers/cfdemSolverPiso/cfdemSolverPiso.C b/applications/solvers/cfdemSolverPiso/cfdemSolverPiso.C index c0e76d26..d5fb52de 100644 --- a/applications/solvers/cfdemSolverPiso/cfdemSolverPiso.C +++ b/applications/solvers/cfdemSolverPiso/cfdemSolverPiso.C @@ -41,6 +41,7 @@ Description #include "cfdemCloud.H" #include "implicitCouple.H" #include "clockModel.H" +#include "smoothingModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -74,7 +75,8 @@ int main(int argc, char *argv[]) particleCloud.evolve(voidfraction,Us,U); Info << "update Ksl.internalField()" << endl; - Ksl.internalField() = particleCloud.momCoupleM(0).impMomSource(); + Ksl.oldTime().internalField() = particleCloud.momCoupleM(0).impMomSource(); + particleCloud.smoothingM().smoothen(Ksl); Ksl.correctBoundaryConditions(); #include "solverDebugInfo.H" diff --git a/applications/solvers/cfdemSolverPisoScalar/cfdemSolverPisoScalar.C b/applications/solvers/cfdemSolverPisoScalar/cfdemSolverPisoScalar.C index 839be3ea..b238a080 100644 --- a/applications/solvers/cfdemSolverPisoScalar/cfdemSolverPisoScalar.C +++ b/applications/solvers/cfdemSolverPisoScalar/cfdemSolverPisoScalar.C @@ -41,6 +41,7 @@ Description #include "cfdemCloud.H" #include "implicitCouple.H" #include "forceModel.H" +#include "smoothingModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -74,9 +75,11 @@ int main(int argc, char *argv[]) Info << "- evolve()" << endl; particleCloud.evolve(voidfraction,Us,U); - Ksl.internalField() = particleCloud.momCoupleM(0).impMomSource(); + Ksl.oldTime().internalField() = particleCloud.momCoupleM(0).impMomSource(); + particleCloud.smoothingM().smoothen(Ksl); Ksl.correctBoundaryConditions(); + #include "solverDebugInfo.H" // get scalar source from DEM diff --git a/doc/CFDEMcoupling_Manual.html b/doc/CFDEMcoupling_Manual.html index 7356aaeb..2e48e155 100644 --- a/doc/CFDEMcoupling_Manual.html +++ b/doc/CFDEMcoupling_Manual.html @@ -229,9 +229,11 @@ listing below of styles within certain commands. momCoupleModelmomCoupleModel_explicitCouple momCoupleModel_implicitCouplemomCoupleModel_noCouple regionModelregionModel_allRegion -voidfractionModelvoidfractionModel_GaussVoidFraction -voidfractionModel_IBVoidFractionvoidfractionModel_bigParticleVoidFraction -voidfractionModel_centreVoidFractionvoidfractionModel_dividedVoidFraction +smoothingModelsmoothingModel_constDiffSmoothing +smoothingModel_noSmoothingvoidfractionModel +voidfractionModel_GaussVoidFractionvoidfractionModel_IBVoidFraction +voidfractionModel_bigParticleVoidFractionvoidfractionModel_centreVoidFraction +voidfractionModel_dividedVoidFraction diff --git a/doc/CFDEMcoupling_Manual.pdf b/doc/CFDEMcoupling_Manual.pdf index d5912db0..f064ddec 100644 Binary files a/doc/CFDEMcoupling_Manual.pdf and b/doc/CFDEMcoupling_Manual.pdf differ diff --git a/doc/CFDEMcoupling_Manual.txt b/doc/CFDEMcoupling_Manual.txt index 12081237..fa012636 100644 --- a/doc/CFDEMcoupling_Manual.txt +++ b/doc/CFDEMcoupling_Manual.txt @@ -260,6 +260,9 @@ listing below of styles within certain commands. "momCoupleModel_noCouple"_momCoupleModel_noCouple.html, "regionModel"_regionModel.html, "regionModel_allRegion"_regionModel_allRegion.html, +"smoothingModel"_smoothingModel.html, +"smoothingModel_constDiffSmoothing"_smoothingModel_constDiffSmoothing.html, +"smoothingModel_noSmoothing"_smoothingModel_noSmoothing.html, "voidfractionModel"_voidFractionModel.html, "voidfractionModel_GaussVoidFraction"_voidFractionModel_GaussVoidFraction.html, "voidfractionModel_IBVoidFraction"_voidFractionModel_IBVoidFraction.html, diff --git a/doc/githubAccess_public.pdf b/doc/githubAccess_public.pdf index 124b660f..753f692a 100644 Binary files a/doc/githubAccess_public.pdf and b/doc/githubAccess_public.pdf differ diff --git a/doc/smoothingModel.html b/doc/smoothingModel.html new file mode 100644 index 00000000..2adb878a --- /dev/null +++ b/doc/smoothingModel.html @@ -0,0 +1,34 @@ + +
CFDEMproject WWW Site - CFDEM Commands +
+ + + + +
+ +

smoothingModel command +

+

Syntax: +

+

Defined in couplingProperties dictionary. +

+
smoothingModel model; 
+
+ +

Examples: +

+
smoothingModel off; 
+
+

Note: This examples list might not be complete - please look for other models (smoothingModel_XY) in this documentation. +

+

Description: +

+

The smoothingModel is the base class for models smoothen the exchange fields. +

+

Restrictions: none. +

+

Default: none. +

+ diff --git a/doc/smoothingModel.txt b/doc/smoothingModel.txt new file mode 100644 index 00000000..13133406 --- /dev/null +++ b/doc/smoothingModel.txt @@ -0,0 +1,30 @@ +"CFDEMproject WWW Site"_lws - "CFDEM Commands"_lc :c + +:link(lws,http://www.cfdem.com) +:link(lc,CFDEMcoupling_Manual.html#comm) + +:line + +smoothingModel command :h3 + +[Syntax:] + +Defined in couplingProperties dictionary. + +smoothingModel model; :pre + +model = name of the smoothingModel to be applied :ul + +[Examples:] + +smoothingModel off; :pre + +Note: This examples list might not be complete - please look for other models (smoothingModel_XY) in this documentation. + +[Description:] + +The smoothingModel is the base class for models smoothen the exchange fields. + +[Restrictions:] none. + +[Default:] none. diff --git a/doc/smoothingModel_constDiffSmoothing.html b/doc/smoothingModel_constDiffSmoothing.html new file mode 100644 index 00000000..48456c29 --- /dev/null +++ b/doc/smoothingModel_constDiffSmoothing.html @@ -0,0 +1,49 @@ + +
CFDEMproject WWW Site - CFDEM Commands +
+ + + + +
+ +

smoothingModel_constDiffSmoothing command +

+

Syntax: +

+

Defined in couplingProperties dictionary. +

+
smoothingModel constDiffSmoothing;
+constDiffSmoothingProps
+{
+    lowerLimit number1;
+    upperLimit number2;
+    DT number3;
+} 
+
+