diff --git a/README b/README new file mode 100755 index 00000000..fd2ca756 --- /dev/null +++ b/README @@ -0,0 +1,81 @@ +/*---------------------------------------------------------------------------*\ + 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/Make/options b/applications/solvers/cfdemSolverIB/Make/options index fe83ef99..b16906ec 100755 --- a/applications/solvers/cfdemSolverIB/Make/options +++ b/applications/solvers/cfdemSolverIB/Make/options @@ -3,11 +3,14 @@ EXE_INC = \ -I$(LIB_SRC)/transportModels \ -I$(LIB_SRC)/transportModels/incompressible/singlePhaseTransportModel \ -I$(LIB_SRC)/finiteVolume/lnInclude \ - -I$(CFDEM_SRC_DIR)/lnInclude \ + -I$(CFDEM_SRC_DIR)/lagrangian/cfdemParticle/lnInclude \ + -I$(LIB_SRC)/meshTools/lnInclude \ + -I$(LIB_SRC)/sampling/lnInclude \ -I$(LIB_SRC)/dynamicFvMesh/lnInclude \ -I$(LIB_SRC)/dynamicMesh/lnInclude \ -I$(LIB_SRC)/dynamicMesh/dynamicFvMesh/lnInclude \ - -I$(LIB_SRC)/dynamicMesh/dynamicMesh/lnInclude + -I$(LIB_SRC)/dynamicMesh/dynamicMesh/lnInclude \ + -I$(LIB_SRC)/fvOptions/lnInclude EXE_LIBS = \ -L$(FOAM_USER_LIBBIN)\ @@ -17,4 +20,5 @@ EXE_LIBS = \ -lfiniteVolume \ -ldynamicFvMesh \ -ldynamicMesh \ - -l$(CFDEM_LIB_NAME) + -lfvOptions \ + -l$(CFDEM_LIB_NAME) diff --git a/applications/solvers/cfdemSolverIB/cfdemSolverIB.C b/applications/solvers/cfdemSolverIB/cfdemSolverIB.C index 2a091c1b..834d0962 100755 --- a/applications/solvers/cfdemSolverIB/cfdemSolverIB.C +++ b/applications/solvers/cfdemSolverIB/cfdemSolverIB.C @@ -50,6 +50,10 @@ Contributions #include "dynamicFvMesh.H" //dyM +#include "cellSet.H" +#include "meshToMeshNew.H" +#include "fvIOoptionList.H" + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // int main(int argc, char *argv[]) @@ -64,6 +68,8 @@ int main(int argc, char *argv[]) #include "initContinuityErrs.H" + #include "createFvOptions.H" + // create cfdemCloud #include "readGravitationalAcceleration.H" cfdemCloudIB particleCloud(mesh); @@ -96,10 +102,14 @@ int main(int argc, char *argv[]) fvm::ddt(voidfraction,U) + fvm::div(phi, U) + turbulence->divDevReff(U) + == + fvOptions(U) ); UEqn.relax(); + fvOptions.constrain(UEqn); + if (momentumPredictor) { solve(UEqn == -fvc::grad(p)); @@ -116,6 +126,8 @@ int main(int argc, char *argv[]) adjustPhi(phi, U, p); + fvOptions.relativeFlux(phi); + // Non-orthogonal pressure corrector loop for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) { @@ -160,6 +172,8 @@ int main(int argc, char *argv[]) volScalarField voidfractionNext=mesh.lookupObject("voidfractionNext"); particleCloud.calcVelocityCorrection(p,U,phiIB,voidfractionNext); + fvOptions.correct(U); + runTime.write(); Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s" diff --git a/applications/solvers/cfdemSolverPimple/Make/options b/applications/solvers/cfdemSolverPimple/Make/options index 863de676..cad91954 100644 --- a/applications/solvers/cfdemSolverPimple/Make/options +++ b/applications/solvers/cfdemSolverPimple/Make/options @@ -6,8 +6,8 @@ EXE_INC = \ -I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/fvOptions/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \ - -I$(CFDEM_SRC_DIR)/lnInclude \ - -I$(CFDEM_SRC_DIR)/cfdTools \ + -I$(CFDEM_SRC_DIR)/lagrangian/cfdemParticle/lnInclude \ + -I$(CFDEM_SRC_DIR)/lagrangian/cfdemParticle/cfdTools \ EXE_LIBS = \ -L$(FOAM_USER_LIBBIN)\ diff --git a/applications/solvers/cfdemSolverPimple/pEqn.H b/applications/solvers/cfdemSolverPimple/pEqn.H index 9696c3cc..74cf42e4 100644 --- a/applications/solvers/cfdemSolverPimple/pEqn.H +++ b/applications/solvers/cfdemSolverPimple/pEqn.H @@ -27,7 +27,7 @@ while (pimple.correctNonOrthogonal()) // Pressure corrector fvScalarMatrix pEqn ( - fvm::laplacian(rUAvoidfraction, p) == fvc::div(phiGes) + particleCloud.ddtVoidfraction() + fvm::laplacian(rUAvoidfraction, p) == fvc::div(phiGes) //+ particleCloud.ddtVoidfraction() ); pEqn.setReference(pRefCell, pRefValue); diff --git a/applications/solvers/cfdemSolverPiso/Make/options b/applications/solvers/cfdemSolverPiso/Make/options index d095bc81..a8a6f528 100644 --- a/applications/solvers/cfdemSolverPiso/Make/options +++ b/applications/solvers/cfdemSolverPiso/Make/options @@ -3,8 +3,8 @@ EXE_INC = \ -I$(LIB_SRC)/transportModels \ -I$(LIB_SRC)/transportModels/incompressible/singlePhaseTransportModel \ -I$(LIB_SRC)/finiteVolume/lnInclude \ - -I$(CFDEM_SRC_DIR)/lnInclude \ - -I$(CFDEM_SRC_DIR)/cfdTools \ + -I$(CFDEM_SRC_DIR)/lagrangian/cfdemParticle/lnInclude \ + -I$(CFDEM_SRC_DIR)/lagrangian/cfdemParticle/cfdTools \ EXE_LIBS = \ -L$(FOAM_USER_LIBBIN)\ diff --git a/applications/solvers/cfdemSolverPiso/cfdemSolverPiso.C b/applications/solvers/cfdemSolverPiso/cfdemSolverPiso.C index 868d44fe..73c97d60 100644 --- a/applications/solvers/cfdemSolverPiso/cfdemSolverPiso.C +++ b/applications/solvers/cfdemSolverPiso/cfdemSolverPiso.C @@ -73,10 +73,9 @@ int main(int argc, char *argv[]) // do particle stuff particleCloud.clockM().start(2,"Coupling"); particleCloud.evolve(voidfraction,Us,U); - voidfraction.oldTime().internalField() = voidfraction; - + Info << "update Ksl.internalField()" << endl; - Ksl.oldTime().internalField() = particleCloud.momCoupleM(0).impMomSource(); + Ksl = particleCloud.momCoupleM(0).impMomSource(); particleCloud.smoothingM().smoothen(Ksl); Ksl.correctBoundaryConditions(); @@ -89,7 +88,7 @@ int main(int argc, char *argv[]) // Momentum predictor fvVectorMatrix UEqn ( - fvm::ddt(voidfraction,U) + fvm::ddt(voidfraction,U) //particleCloud.ddtVoidfractionU(U,voidfraction) // + fvm::div(phi, U) // + turbulence->divDevReff(U) + particleCloud.divVoidfractionTau(U, voidfraction) @@ -121,8 +120,8 @@ int main(int argc, char *argv[]) U = rUA*UEqn.H(); - phi = (fvc::interpolate(U*voidfraction) & mesh.Sf() ) - + fvc::ddtPhiCorr(rUAvoidfraction, U, phi); + phi = (fvc::interpolate(U*voidfraction) & mesh.Sf() ); + //+ fvc::ddtPhiCorr(rUAvoidfraction, U, phi); surfaceScalarField phiS(fvc::interpolate(Us*voidfraction) & mesh.Sf()); surfaceScalarField phiGes = phi + rUAf*(fvc::interpolate(Ksl/rho) * phiS); diff --git a/applications/solvers/cfdemSolverPisoMS/Make/options b/applications/solvers/cfdemSolverPisoMS/Make/options index 17268a09..8038c7d8 100644 --- a/applications/solvers/cfdemSolverPisoMS/Make/options +++ b/applications/solvers/cfdemSolverPisoMS/Make/options @@ -1,11 +1,11 @@ EXE_INC = \ - -I$(CFDEM_SRC_DIR)/lnInclude \ + -I$(CFDEM_SRC_DIR)/lagrangian/cfdemParticle/lnInclude \ -I ../cfdemSolverPiso \ -I$(LIB_SRC)/turbulenceModels/incompressible/turbulenceModel \ -I$(LIB_SRC)/transportModels \ -I$(LIB_SRC)/transportModels/incompressible/singlePhaseTransportModel \ -I$(LIB_SRC)/finiteVolume/lnInclude \ - -I$(CFDEM_SRC_DIR)/cfdTools \ + -I$(CFDEM_SRC_DIR)/lagrangian/cfdemParticle/cfdTools \ EXE_LIBS = \ -L$(FOAM_USER_LIBBIN)\ diff --git a/applications/solvers/cfdemSolverPisoMS/cfdemSolverPisoMS.C b/applications/solvers/cfdemSolverPisoMS/cfdemSolverPisoMS.C index 4d492df5..715052dd 100644 --- a/applications/solvers/cfdemSolverPisoMS/cfdemSolverPisoMS.C +++ b/applications/solvers/cfdemSolverPisoMS/cfdemSolverPisoMS.C @@ -40,6 +40,8 @@ Description #include "cfdemCloudMS.H" #include "implicitCouple.H" +#include "clockModel.H" +#include "smoothingModel.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -49,85 +51,80 @@ int main(int argc, char *argv[]) #include "createTime.H" #include "createMesh.H" #include "createFields.H" - #include "initContinuityErrs.H" // create cfdemCloud #include "readGravitationalAcceleration.H" cfdemCloudMS particleCloud(mesh); - #include "checkModelType.H" - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - Info<< "\nStarting time loop\n" << endl; + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // while (runTime.loop()) { + Info<< "\nStarting time loop\n" << endl; + particleCloud.clockM().start(1,"Global"); + Info<< "Time = " << runTime.timeName() << nl << endl; #include "readPISOControls.H" #include "CourantNo.H" // do particle stuff - Info << "- evolve()" << endl; + particleCloud.clockM().start(2,"Coupling"); particleCloud.evolve(voidfraction,Us,U); - + Info << "update Ksl.internalField()" << endl; - Ksl.internalField() = particleCloud.momCoupleM(0).impMomSource(); + Ksl = particleCloud.momCoupleM(0).impMomSource(); + particleCloud.smoothingM().smoothen(Ksl); Ksl.correctBoundaryConditions(); - // debug info - //Info << "totaldragforceEuler calculus" << endl; - //vector totaldragforceEuler(0,0,0); - //forAll(Ksl,cellI) - //{ - // totaldragforceEuler += Ksl[cellI]*(Us[cellI]-U[cellI])/rho[cellI] * Ksl.mesh().V()[cellI]; - //} - //Pout <<"totaldragforceEuler = "<< mag(totaldragforceEuler) << endl; - //Pout << "dv/dt =" << sum(fvc::ddt(voidfraction)) << endl; - //----------- + #include "solverDebugInfo.H" + particleCloud.clockM().stop("Coupling"); + particleCloud.clockM().start(26,"Flow"); // Pressure-velocity PISO corrector { // Momentum predictor fvVectorMatrix UEqn ( - fvm::ddt(voidfraction,U) + fvm::ddt(voidfraction,U) //particleCloud.ddtVoidfractionU(U,voidfraction) // + fvm::div(phi, U) // + turbulence->divDevReff(U) + particleCloud.divVoidfractionTau(U, voidfraction) - == - - fvm::Sp(Ksl/rho,U) + == + - fvm::Sp(Ksl/rho,U) ); + if (modelType=="B") + UEqn == - fvc::grad(p) + Ksl/rho*Us; + else + UEqn == - voidfraction*fvc::grad(p) + Ksl/rho*Us; + UEqn.relax(); if (momentumPredictor) - { - //solve UEqn - if (modelType=="B") - solve(UEqn == - fvc::grad(p) + Ksl/rho*Us); - else - solve(UEqn == - voidfraction*fvc::grad(p) + Ksl/rho*Us); - } + solve(UEqn); // --- PISO loop //for (int corr=0; corr

Examples: diff --git a/doc/forceModel_GidaspowDrag.txt b/doc/forceModel_GidaspowDrag.txt index 0f6938c4..9a5af514 100644 --- a/doc/forceModel_GidaspowDrag.txt +++ b/doc/forceModel_GidaspowDrag.txt @@ -19,10 +19,12 @@ GidaspowDragProps \{ velFieldName "U"; densityFieldName "density"; + phi "scalar"; \}; :pre {U} = name of the finite volume fluid velocity field :ulb,l {density} = name of the finite volume gravity field :l +{phi} = drag correction factor (in doubt 1) :l :ule [Examples:] diff --git a/doc/forceModel_noDrag.html b/doc/forceModel_noDrag.html index 4bba14af..9baaa53f 100644 --- a/doc/forceModel_noDrag.html +++ b/doc/forceModel_noDrag.html @@ -15,19 +15,24 @@

forceModels
 (
-    off
+    noDrag
 ); 
 

Examples:

forceModels
 (
-    off
+    noDrag
 ); 
 
+
noDragProps (optional)
+{
+    noDEMForce; (optional)
+}; 
+

Description:

-

The force model performs the calculation of forces (e.g. fluid-particle interaction forces) acting on each DEM particle. The noDrag model sets the forces acting on the particle to zero. If several force models are selected and noDrag is the last model being executed, the fluid particle force will be set to zero. +

The force model performs the calculation of forces (e.g. fluid-particle interaction forces) acting on each DEM particle. The noDrag model sets the forces acting on the particle to zero. If several force models are selected and noDrag is the last model being executed, the fluid particle force will be set to zero. If the variable noDEMForce is set, then the forces communicated to the DEM solver are also set to zero.

Restrictions:

diff --git a/doc/forceModel_noDrag.txt b/doc/forceModel_noDrag.txt index a8838e2d..ec43c191 100644 --- a/doc/forceModel_noDrag.txt +++ b/doc/forceModel_noDrag.txt @@ -13,19 +13,24 @@ Defined in couplingProperties dictionary. forceModels ( - off + noDrag ); :pre [Examples:] forceModels ( - off + noDrag ); :pre +noDragProps (optional) +\{ + noDEMForce; (optional) +\}; :pre + [Description:] -The force model performs the calculation of forces (e.g. fluid-particle interaction forces) acting on each DEM particle. The noDrag model sets the forces acting on the particle to zero. If several force models are selected and noDrag is the last model being executed, the fluid particle force will be set to zero. +The force model performs the calculation of forces (e.g. fluid-particle interaction forces) acting on each DEM particle. The noDrag model sets the forces acting on the particle to zero. If several force models are selected and noDrag is the last model being executed, the fluid particle force will be set to zero. If the variable noDEMForce is set, then the forces communicated to the DEM solver are also set to zero. [Restrictions:] diff --git a/doc/forceModel_particleCellVolume.html b/doc/forceModel_particleCellVolume.html index 41fbe79d..d906882c 100644 --- a/doc/forceModel_particleCellVolume.html +++ b/doc/forceModel_particleCellVolume.html @@ -45,8 +45,8 @@ particleCellVolumeProps

Description:

-

This "forceModel" does not influence the particles or the simulation - it is a postprocessing tool! The total volume of the particles as they are represented on the CFD mesh is calculated. -At "writeTime" a field named particleCellVolume , where scalarField is the name of the original field, is written. This can be can the be probed using standard function object probes. Using the verbose option a screen output is given. +

This "forceModel" does not influence the particles or the simulation - it is a postprocessing tool! The total volume of the particles as they are represented on the CFD mesh is calculated. Further the total volume of the cells particles are in is calculated. +At "writeTime" a field named particleCellVolume , where scalarField is the name of the original field, is written. This can be can the be probed using standard function object probes. Analogously a field named cellVolume is written. Using the verbose option a screen output is given.

Restrictions:

diff --git a/doc/forceModel_particleCellVolume.txt b/doc/forceModel_particleCellVolume.txt index afaac60d..21bc23dd 100644 --- a/doc/forceModel_particleCellVolume.txt +++ b/doc/forceModel_particleCellVolume.txt @@ -41,8 +41,8 @@ particleCellVolumeProps [Description:] -This "forceModel" does not influence the particles or the simulation - it is a postprocessing tool! The total volume of the particles as they are represented on the CFD mesh is calculated. -At "writeTime" a field named particleCellVolume , where scalarField is the name of the original field, is written. This can be can the be probed using standard function object probes. Using the verbose option a screen output is given. +This "forceModel" does not influence the particles or the simulation - it is a postprocessing tool! The total volume of the particles as they are represented on the CFD mesh is calculated. Further the total volume of the cells particles are in is calculated. +At "writeTime" a field named particleCellVolume , where scalarField is the name of the original field, is written. This can be can the be probed using standard function object probes. Analogously a field named cellVolume is written. Using the verbose option a screen output is given. [Restrictions:] diff --git a/doc/githubAccess_public.pdf b/doc/githubAccess_public.pdf index 343bb848..31c2fe82 100644 Binary files a/doc/githubAccess_public.pdf and b/doc/githubAccess_public.pdf differ diff --git a/doc/probeModel.html b/doc/probeModel.html index 0eb84588..3871fe47 100644 --- a/doc/probeModel.html +++ b/doc/probeModel.html @@ -15,10 +15,8 @@

probeModel myProbeModel; 
 
-

Use "off" for "myProbeModel" to disable this feature. +

Use probe model "off" to disable this feature.

-
particleIDsToSample (ID1 ID2 ID3 ...); 
-
myProbeModelProps 
 
{ 
diff --git a/doc/probeModel.txt b/doc/probeModel.txt
index c2069cc2..5e10acfd 100644
--- a/doc/probeModel.txt
+++ b/doc/probeModel.txt
@@ -13,9 +13,8 @@ To be activated via couplingProperties dictionary.
 
 probeModel myProbeModel; :pre
 
-Use "off" for "myProbeModel" to disable this feature.
+Use probe model "off" to disable this feature.
 
-particleIDsToSample (ID1 ID2 ID3 ...); :pre
 myProbeModelProps :pre
 \{ :pre
 
diff --git a/doc/probeModel_noProbe.html b/doc/probeModel_noProbe.html
index 429ebae0..63021115 100644
--- a/doc/probeModel_noProbe.html
+++ b/doc/probeModel_noProbe.html
@@ -13,8 +13,7 @@
 

To be activated via couplingProperties dictionary.

-
particleIDsToSample (ID1 ID2 ID3 ...);
-forceModels
+
forceModels
 {
     myForceModel1
     myForceModel2
@@ -23,10 +22,6 @@ forceModels
 

Examples:

-
probeModel noProbe; 
-
-

Alternatively use: -

probeModel off; 
 

Note: This examples list might not be complete - please check below for the list of force models that can perform particle probing. diff --git a/doc/probeModel_noProbe.txt b/doc/probeModel_noProbe.txt index cf3c9307..b36c75e0 100644 --- a/doc/probeModel_noProbe.txt +++ b/doc/probeModel_noProbe.txt @@ -11,7 +11,6 @@ probeModel_noProbe command :h3 To be activated via couplingProperties dictionary. -particleIDsToSample (ID1 ID2 ID3 ...); forceModels \{ myForceModel1 @@ -21,9 +20,6 @@ forceModels [Examples:] -probeModel noProbe; :pre -Alternatively use: - probeModel off; :pre Note: This examples list might not be complete - please check below for the list of force models that can perform particle probing. diff --git a/src/lagrangian/cfdemParticle/Make/files b/src/lagrangian/cfdemParticle/Make/files index 92a7d09f..c1fefcff 100644 --- a/src/lagrangian/cfdemParticle/Make/files +++ b/src/lagrangian/cfdemParticle/Make/files @@ -6,7 +6,6 @@ voidFractionModels = subModels/voidFractionModel locateModels = subModels/locateModel meshMotionModels = subModels/meshMotionModel momCoupleModels = subModels/momCoupleModel -regionModels = subModels/regionModel dataExchangeModels = subModels/dataExchangeModel averagingModels = subModels/averagingModel clockModels = subModels/clockModel @@ -15,6 +14,7 @@ smoothingModels = subModels/smoothingModel probeModels = subModels/probeModel $(cfdemCloud)/cfdemCloud.C +derived/cfdemCloudBiDisperse/cfdemCloudBiDisperse.C derived/cfdemCloudIB/cfdemCloudIB.C derived/cfdemCloudMS/cfdemCloudMS.C @@ -23,26 +23,43 @@ $(forceModels)/forceModel/newForceModel.C $(forceModels)/noDrag/noDrag.C $(forceModels)/checkCouplingInterval/checkCouplingInterval.C $(forceModels)/DiFeliceDrag/DiFeliceDrag.C +$(forceModels)/DiFeliceDragNLift/DiFeliceDragNLift.C $(forceModels)/GidaspowDrag/GidaspowDrag.C $(forceModels)/SchillerNaumannDrag/SchillerNaumannDrag.C $(forceModels)/Archimedes/Archimedes.C $(forceModels)/ArchimedesIB/ArchimedesIB.C $(forceModels)/interface/interface.C $(forceModels)/ShirgaonkarIB/ShirgaonkarIB.C +$(forceModels)/fieldTimeAverage/fieldTimeAverage.C +$(forceModels)/fieldBound/fieldBound.C +$(forceModels)/volWeightedAverage/volWeightedAverage.C +$(forceModels)/totalMomentumExchange/totalMomentumExchange.C $(forceModels)/KochHillDrag/KochHillDrag.C $(forceModels)/KochHillRWDrag/KochHillRWDrag.C +$(forceModels)/BeetstraDrag/multiphaseFlowBasic/multiphaseFlowBasic.C +$(forceModels)/BeetstraDrag/BeetstraDrag.C +$(forceModels)/LaEuScalarLiquid/LaEuScalarLiquid.C $(forceModels)/LaEuScalarTemp/LaEuScalarTemp.C +$(forceModels)/LaEuScalarDust/LaEuScalarDust.C $(forceModels)/virtualMassForce/virtualMassForce.C $(forceModels)/gradPForce/gradPForce.C +$(forceModels)/gradULiftForce/gradULiftForce.C +$(forceModels)/HollowayDrag/HollowayDrag.C $(forceModels)/viscForce/viscForce.C $(forceModels)/MeiLift/MeiLift.C +$(forceModels)/melting/melting.C +$(forceModels)/KochHillDragNLift/KochHillDragNLift.C +$(forceModels)/solidsPressureForce/solidsPressureForce.C +$(forceModels)/periodicPressure/periodicPressure.C +$(forceModels)/periodicPressureControl/periodicPressureControl.C +$(forceModels)/averageSlipVel/averageSlipVel.C $(forceModels)/particleCellVolume/particleCellVolume.C -$(forceModels)/fieldTimeAverage/fieldTimeAverage.C -$(forceModels)/volWeightedAverage/volWeightedAverage.C $(forceModelsMS)/forceModelMS/forceModelMS.C $(forceModelsMS)/forceModelMS/newForceModelMS.C $(forceModelsMS)/DiFeliceDragMS/DiFeliceDragMS.C +$(forceModelsMS)/GidaspowDragMS/GidaspowDragMS.C +$(forceModelsMS)/noDragMS/noDragMS.C $(probeModels)/probeModel/probeModel.C $(probeModels)/probeModel/newProbeModel.C @@ -60,10 +77,12 @@ $(voidFractionModels)/voidFractionModel/voidFractionModel.C $(voidFractionModels)/voidFractionModel/newVoidFractionModel.C $(voidFractionModels)/centreVoidFraction/centreVoidFraction.C $(voidFractionModels)/dividedVoidFraction/dividedVoidFraction.C +$(voidFractionModels)/dividedVoidFractionBiDi/dividedVoidFractionBiDi.C $(voidFractionModels)/dividedVoidFractionMS/dividedVoidFractionMS.C $(voidFractionModels)/bigParticleVoidFraction/bigParticleVoidFraction.C $(voidFractionModels)/GaussVoidFraction/GaussVoidFraction.C $(voidFractionModels)/IBVoidFraction/IBVoidFraction.C +$(voidFractionModels)/weightedNeigbhorsVoidFraction/weightedNeigbhorsVoidFraction.C $(locateModels)/locateModel/locateModel.C $(locateModels)/locateModel/newLocateModel.C @@ -73,21 +92,18 @@ $(locateModels)/turboEngineSearch/turboEngineSearch.C $(locateModels)/turboEngineSearchM2M/turboEngineSearchM2M.C $(locateModels)/engineSearchIB/engineSearchIB.C - $(meshMotionModels)/meshMotionModel/meshMotionModel.C $(meshMotionModels)/meshMotionModel/newMeshMotionModel.C $(meshMotionModels)/noMeshMotion/noMeshMotion.C +$(meshMotionModels)/DEMdrivenMeshMotion/DEMdrivenMeshMotion.C $(momCoupleModels)/momCoupleModel/momCoupleModel.C $(momCoupleModels)/momCoupleModel/newMomCoupleModel.C $(momCoupleModels)/explicitCouple/explicitCouple.C +$(momCoupleModels)/explicitCoupleSource/explicitCoupleSource.C $(momCoupleModels)/implicitCouple/implicitCouple.C $(momCoupleModels)/noCouple/noCouple.C -$(regionModels)/regionModel/regionModel.C -$(regionModels)/regionModel/newRegionModel.C -$(regionModels)/allRegion/allRegion.C - $(dataExchangeModels)/dataExchangeModel/dataExchangeModel.C $(dataExchangeModels)/dataExchangeModel/newDataExchangeModel.C $(dataExchangeModels)/oneWayVTK/oneWayVTK.C @@ -100,6 +116,7 @@ $(averagingModels)/averagingModel/averagingModel.C $(averagingModels)/averagingModel/newAveragingModel.C $(averagingModels)/dilute/dilute.C $(averagingModels)/dense/dense.C +$(averagingModels)/denseBiDi/denseBiDi.C $(clockModels)/clockModel/clockModel.C $(clockModels)/clockModel/newClockModel.C @@ -117,5 +134,6 @@ $(smoothingModels)/smoothingModel/smoothingModel.C $(smoothingModels)/smoothingModel/newSmoothingModel.C $(smoothingModels)/noSmoothing/noSmoothing.C $(smoothingModels)/constDiffSmoothing/constDiffSmoothing.C +$(smoothingModels)/localPSizeDiffSmoothing/localPSizeDiffSmoothing.C -LIB = $(FOAM_USER_LIBBIN)/lib$(CFDEM_LIB_NAME) +LIB = $(CFDEM_LIB_DIR)/lib$(CFDEM_LIB_NAME) diff --git a/src/lagrangian/cfdemParticle/Make/options b/src/lagrangian/cfdemParticle/Make/options index eb5d1463..29b3e02c 100644 --- a/src/lagrangian/cfdemParticle/Make/options +++ b/src/lagrangian/cfdemParticle/Make/options @@ -14,6 +14,7 @@ EXE_INC = \ -I$(LIB_SRC)/OpenFOAM/containers/HashTables/labelHashSet \ -I$(CFDEM_LIGGGHTS_SRC_DIR) \ -I$(CFDEM_M2MLIB_PATH) \ + -I$(CFDEM_SRC_DIR)/cfdTools \ LIB_LIBS = \ $(PLIBS) \ diff --git a/src/lagrangian/cfdemParticle/cfdTools/setupProbeModel.H b/src/lagrangian/cfdemParticle/cfdTools/setupProbeModel.H new file mode 100644 index 00000000..d94133eb --- /dev/null +++ b/src/lagrangian/cfdemParticle/cfdTools/setupProbeModel.H @@ -0,0 +1,3 @@ + //set probeModel parameters for this force model + particleCloud_.probeM().setOutputFile(); + particleCloud_.probeM().setCounter(); diff --git a/src/lagrangian/cfdemParticle/cfdTools/setupProbeModelfields.H b/src/lagrangian/cfdemParticle/cfdTools/setupProbeModelfields.H new file mode 100644 index 00000000..484e2cad --- /dev/null +++ b/src/lagrangian/cfdemParticle/cfdTools/setupProbeModelfields.H @@ -0,0 +1,4 @@ +Field vValues; +vValues.clear(); +Field sValues; +sValues.clear(); diff --git a/src/lagrangian/cfdemParticle/cfdTools/versionInfo.H b/src/lagrangian/cfdemParticle/cfdTools/versionInfo.H index d2a81aa6..f9e49050 100755 --- a/src/lagrangian/cfdemParticle/cfdTools/versionInfo.H +++ b/src/lagrangian/cfdemParticle/cfdTools/versionInfo.H @@ -1,6 +1,6 @@ -word CFDEMversion="cfdem-2.5.7"; -word compatibleLIGGGHTSversion="2.3.7"; -word OFversion="2.1.x"; +word CFDEMversion="cfdem-2.6.0"; +word compatibleLIGGGHTSversion="3.0.0"; +word OFversion="2.2.x - commit 7c405a31b2f7299f5e2669fa18fb251ea219dd03"; Info << "\nCFDEMcoupling version: " << CFDEMversion << "\n" << endl; Info << "\n, compatible to LIGGGHTS version: " << compatibleLIGGGHTSversion << "\n" << endl; diff --git a/src/lagrangian/cfdemParticle/cfdemCloud/cfdemCloud.C b/src/lagrangian/cfdemParticle/cfdemCloud/cfdemCloud.C index f2307c55..a7130459 100644 --- a/src/lagrangian/cfdemParticle/cfdemCloud/cfdemCloud.C +++ b/src/lagrangian/cfdemParticle/cfdemCloud/cfdemCloud.C @@ -452,7 +452,8 @@ bool Foam::cfdemCloud::evolve // reset vol Fields clockM().start(16,"resetVolFields"); - if(verbose_){ + if(verbose_) + { Info << "couplingStep:" << dataExchangeM().couplingStep() << "\n- resetVolFields()" << endl; } @@ -530,19 +531,42 @@ bool Foam::cfdemCloud::evolve // update smoothing model smoothingM().dSmoothing(); - // update voidFractionField - alpha.oldTime().internalField() = voidFractionM().voidFractionInterp(); + //============================================ + // update voidFractionField V1 + alpha = voidFractionM().voidFractionInterp(); smoothingM().smoothen(alpha); + if(dataExchangeM().couplingStep() < 2) + { + alpha.oldTime() = alpha; // supress volume src + alpha.oldTime().correctBoundaryConditions(); + } alpha.correctBoundaryConditions(); // calc ddt(voidfraction) - if (doCouple) calcDdtVoidfraction(voidFractionM().voidFractionNext()); + //calcDdtVoidfraction(voidFractionM().voidFractionNext()); + calcDdtVoidfraction(alpha); + + // update particle velocity Field + Us = averagingM().UsInterp(); + //smoothingM().smoothenReferenceField(Us); + Us.correctBoundaryConditions(); + /*//============================================ + // update voidFractionField + volScalarField oldAlpha = alpha.oldTime(); //save old (smooth) alpha field + alpha.oldTime().internalField() = voidFractionM().voidFractionInterp(); + smoothingM().smoothen(alpha); + alpha.correctBoundaryConditions(); + alpha.oldTime() = oldAlpha; //set old (smooth) alpha field to allow correct computation of ddt + + // calc ddt(voidfraction) + if (doCouple) calcDdtVoidfraction(alpha); //calcDdtVoidfraction(alpha); // alternative with scale=1! (does not see change in alpha?) // update particle velocity Field Us.oldTime().internalField() = averagingM().UsInterp(); smoothingM().smoothenReferenceField(Us); Us.correctBoundaryConditions(); + //============================================*/ clockM().stop("interpolateEulerFields"); if(verbose_){ @@ -592,7 +616,7 @@ tmp cfdemCloud::divVoidfractionTau(volVectorField& U,volScalarFi tmp cfdemCloud::ddtVoidfraction() const { - if (dataExchangeM().couplingStep() <= 2 || !useDDTvoidfraction_) + if (!useDDTvoidfraction_) { Info << "suppressing ddt(voidfraction)" << endl; return tmp (ddtVoidfraction_ * 0.); @@ -602,11 +626,21 @@ tmp cfdemCloud::ddtVoidfraction() const void cfdemCloud::calcDdtVoidfraction(volScalarField& voidfraction) const { - Info << "calculating ddt(voidfraction) based on couplingTime" << endl; - scalar scale=mesh().time().deltaT().value()/dataExchangeM().couplingTime(); - ddtVoidfraction_ = fvc::ddt(voidfraction) * scale; + // version if ddt is calculated only at coupling time + //Info << "calculating ddt(voidfraction) based on couplingTime" << endl; + //scalar scale=mesh().time().deltaT().value()/dataExchangeM().couplingTime(); + //ddtVoidfraction_ = fvc::ddt(voidfraction) * scale; + + ddtVoidfraction_ = fvc::ddt(voidfraction); } +/*tmp cfdemCloud::ddtVoidfractionU(volVectorField& U,volScalarField& voidfraction) const +{ + if (dataExchangeM().couplingStep() <= 2) return fvm::ddt(U); + + return fvm::ddt(voidfraction,U); +}*/ + tmp cfdemCloud::voidfractionNuEff(volScalarField& voidfraction) const { if (modelType_=="A") diff --git a/src/lagrangian/cfdemParticle/cfdemCloud/cfdemCloud.H b/src/lagrangian/cfdemParticle/cfdemCloud/cfdemCloud.H index 44e9c477..893a64ec 100644 --- a/src/lagrangian/cfdemParticle/cfdemCloud/cfdemCloud.H +++ b/src/lagrangian/cfdemParticle/cfdemCloud/cfdemCloud.H @@ -342,6 +342,8 @@ public: void calcDdtVoidfraction(volScalarField& voidfraction) const; + //tmp ddtVoidfractionU(volVectorField& ,volScalarField&) const; + tmp voidfractionNuEff(volScalarField&) const; void resetArray(double**&,int,int,double resetVal=0.); diff --git a/src/lagrangian/cfdemParticle/derived/cfdemCloudIB/cfdemCloudIB.C b/src/lagrangian/cfdemParticle/derived/cfdemCloudIB/cfdemCloudIB.C index ce4162c0..6b889dfa 100644 --- a/src/lagrangian/cfdemParticle/derived/cfdemCloudIB/cfdemCloudIB.C +++ b/src/lagrangian/cfdemParticle/derived/cfdemCloudIB/cfdemCloudIB.C @@ -53,7 +53,9 @@ cfdemCloudIB::cfdemCloudIB ) : cfdemCloud(mesh), - angularVelocities_(NULL) + angularVelocities_(NULL), + pRefCell_(readLabel(mesh.solutionDict().subDict("PISO").lookup("pRefCell"))), + pRefValue_(readScalar(mesh.solutionDict().subDict("PISO").lookup("pRefValue"))) {} @@ -146,6 +148,7 @@ void Foam::cfdemCloudIB::calcVelocityCorrection vector rVec(0,0,0); vector velRot(0,0,0); vector angVel(0,0,0); + for(int index=0; index< numberOfParticles(); index++) { //if(regionM().inRegion()[index][0]) @@ -170,8 +173,17 @@ void Foam::cfdemCloudIB::calcVelocityCorrection //} } - // make field divergence free - solve(fvm::laplacian(phiIB) == fvc::div(U) + fvc::ddt(voidfraction)); + // make field divergence free - set reference value in case it is needed + fvScalarMatrix phiIBEqn + ( + fvm::laplacian(phiIB) == fvc::div(U) + fvc::ddt(voidfraction) + ); + if(phiIB.needReference()) + { + phiIBEqn.setReference(pRefCell_, pRefValue_); + } + + phiIBEqn.solve(); U=U-fvc::grad(phiIB); U.correctBoundaryConditions(); diff --git a/src/lagrangian/cfdemParticle/derived/cfdemCloudIB/cfdemCloudIB.H b/src/lagrangian/cfdemParticle/derived/cfdemCloudIB/cfdemCloudIB.H index 8492a62c..06756b3d 100644 --- a/src/lagrangian/cfdemParticle/derived/cfdemCloudIB/cfdemCloudIB.H +++ b/src/lagrangian/cfdemParticle/derived/cfdemCloudIB/cfdemCloudIB.H @@ -59,6 +59,8 @@ class cfdemCloudIB protected: mutable double **angularVelocities_; + label pRefCell_; + scalar pRefValue_; public: diff --git a/src/lagrangian/cfdemParticle/derived/cfdemCloudMS/cfdemCloudMS.C b/src/lagrangian/cfdemParticle/derived/cfdemCloudMS/cfdemCloudMS.C index 91e34758..02e15fe2 100644 --- a/src/lagrangian/cfdemParticle/derived/cfdemCloudMS/cfdemCloudMS.C +++ b/src/lagrangian/cfdemParticle/derived/cfdemCloudMS/cfdemCloudMS.C @@ -144,13 +144,14 @@ void cfdemCloudMS::getDEMdata() void Foam::cfdemCloudMS::giveDEMdata() { - for(int index = 0;index < numberOfClumps(); ++index) + /*for(int index = 0;index < numberOfClumps(); ++index) { for(int i=0;i<3;i++){ impForcesCM()[index][i] += expForcesCM()[index][i] + DEMForcesCM()[index][i]; } } - if(forceM(0).coupleForce()) dataExchangeM().giveData("dragforce","vector-multisphere",impForcesCM()); + if(forceM(0).coupleForce()) dataExchangeM().giveData("dragforce","vector-multisphere",impForcesCM());*/ + if(forceM(0).coupleForce()) dataExchangeM().giveData("dragforce_cm","vector-multisphere",DEMForcesCM()); if(verbose_) Info << "giveDEMdata done." << endl; } diff --git a/src/lagrangian/cfdemParticle/etc/OFversion/OFversion.H b/src/lagrangian/cfdemParticle/etc/OFversion/OFversion.H index 5760c89f..864dd64f 100644 --- a/src/lagrangian/cfdemParticle/etc/OFversion/OFversion.H +++ b/src/lagrangian/cfdemParticle/etc/OFversion/OFversion.H @@ -6,6 +6,8 @@ // choose comp/incomp //#define comp // if comp is on - you must use Make/options_comp! +//define multi sphere +#define multisphere // features of 2.1 work also in 2.2 #if defined(version22) diff --git a/src/lagrangian/cfdemParticle/etc/bashrc b/src/lagrangian/cfdemParticle/etc/bashrc index 456ae3a3..e5e21427 100755 --- a/src/lagrangian/cfdemParticle/etc/bashrc +++ b/src/lagrangian/cfdemParticle/etc/bashrc @@ -24,7 +24,7 @@ #export CFDEM_UT_DIR=$CFDEM_PROJECT_DIR/applications/utilities #export CFDEM_TUT_DIR=$CFDEM_PROJECT_DIR/tutorials #export CFDEM_PROJECT_USER_DIR=$HOME/CFDEM/$LOGNAME-$CFDEM_VERSION-$WM_PROJECT_VERSION -#export CFDEM_bashrc=$CFDEM_SRC_DIR/etc/bashrc +#export CFDEM_bashrc=$CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/bashrc #export CFDEM_LIGGGHTS_SRC_DIR=$HOME/LIGGGHTS/LIGGGHTS-PUBLIC/src #export CFDEM_LIGGGHTS_MAKEFILE_NAME=fedora_fpic #export CFDEM_LPP_DIR=$HOME/LIGGGHTS/mylpp/src @@ -44,7 +44,7 @@ export CFDEM_LIGGGHTS_LIB_NAME=lmp_$CFDEM_LIGGGHTS_MAKEFILE_NAME export CFDEM_LIB_NAME=lagrangianCFDEM-$CFDEM_VERSION-$WM_PROJECT_VERSION #- LMP M2M lib path -export CFDEM_M2MLIB_PATH=$CFDEM_SRC_DIR/subModels/dataExchangeModel/twoWayM2M/library +export CFDEM_M2MLIB_PATH=$CFDEM_SRC_DIR/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library #- path to test harness export CFDEM_TEST_HARNESS_PATH=$CFDEM_PROJECT_USER_DIR/log/logFilesCFDEM-$CFDEM_VERSION-$WM_PROJECT_VERSION @@ -56,7 +56,7 @@ export CFDEM_LIB_DIR=$FOAM_USER_LIBBIN export CFDEM_APP_DIR=$FOAM_USER_APPBIN #- path to OF version flag file -export CFDEM_OFVERSION_DIR=$CFDEM_SRC_DIR/etc/OFversion +export CFDEM_OFVERSION_DIR=$CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/OFversion #------------------------------------------------------------------------------ #- settings for lpp postproc tool #------------------------------------------------------------------------------ @@ -101,37 +101,40 @@ alias cfdemDox='firefox $CFDEM_DOC_DIR/doxygen/html/index.html' alias cfdemLIG='cd $CFDEM_LIGGGHTS_SRC_DIR' #- shortcut to system test -alias cfdemSysTest='bash $CFDEM_SRC_DIR/etc/cfdemSystemTest.sh' +alias cfdemSysTest='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/cfdemSystemTest.sh' #- shortcut to pull LIGGGHTS -alias cfdemPullLIG='bash $CFDEM_SRC_DIR/etc/pullLIGGGHTS.sh' +alias cfdemPullLIG='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/pullLIGGGHTS.sh' + +#- shortcut to pull CFDEMcoupling +alias cfdemPullCFDEMcoupling='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/pullCFDEMcoupling.sh' #- shortcut to clean CFDEM -alias cfdemCleanCFDEM='bash $CFDEM_SRC_DIR/etc/cleanCFDEMcoupling.sh' +alias cfdemCleanCFDEM='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/cleanCFDEMcoupling.sh' #- shortcut to compile LIGGGHTS -alias cfdemCompLIG='bash $CFDEM_SRC_DIR/etc/compileLIGGGHTS.sh' +alias cfdemCompLIG='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileLIGGGHTS.sh' #- shortcut to compile CFDEMcoupling +LIGGGHTS -alias cfdemCompCFDEMall='bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_all.sh' +alias cfdemCompCFDEMall='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_all.sh' #- shortcut to compile CFDEMcoupling (src+solvers) -alias cfdemCompCFDEM='bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling.sh' +alias cfdemCompCFDEM='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling.sh' #- shortcut to compile CFDEMcoupling src -alias cfdemCompCFDEMsrc='bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_src.sh' +alias cfdemCompCFDEMsrc='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_src.sh' #- shortcut to compile CFDEMcoupling solvers -alias cfdemCompCFDEMsol='bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_sol.sh' +alias cfdemCompCFDEMsol='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_sol.sh' #- shortcut to compile CFDEMcoupling utilities -alias cfdemCompCFDEMuti='bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_uti.sh' +alias cfdemCompCFDEMuti='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_uti.sh' #- shortcut to compile couple library -alias cfdemCompM2M='bash $CFDEM_SRC_DIR/etc/compileM2Mlib.sh' +alias cfdemCompM2M='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileM2Mlib.sh' #- shortcut to test basic tutorials -alias cfdemTestTUT='bash $CFDEM_SRC_DIR/etc/testTutorials.sh' +alias cfdemTestTUT='bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/testTutorials.sh' #- recursive touch of current directory alias touchRec='find ./* -exec touch {} \;' diff --git a/src/lagrangian/cfdemParticle/etc/cfdemSystemTest.sh b/src/lagrangian/cfdemParticle/etc/cfdemSystemTest.sh index 6a211c26..9c508c88 100755 --- a/src/lagrangian/cfdemParticle/etc/cfdemSystemTest.sh +++ b/src/lagrangian/cfdemParticle/etc/cfdemSystemTest.sh @@ -6,7 +6,7 @@ #===================================================================# #- include functions -source $CFDEM_SRC_DIR/etc/functions.sh +source $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/functions.sh #- show gcc settings checkGPP="true" @@ -18,6 +18,7 @@ echo "*******************" echo "CFDEM_VERSION=$CFDEM_VERSION" echo "couple to OF_VERSION=$WM_PROJECT_VERSION" +echo "compile option=$WM_COMPILE_OPTION" echo echo "check if paths are set correctly" diff --git a/src/lagrangian/cfdemParticle/etc/cleanCFDEMcoupling.sh b/src/lagrangian/cfdemParticle/etc/cleanCFDEMcoupling.sh index 64d6204e..99008b3c 100644 --- a/src/lagrangian/cfdemParticle/etc/cleanCFDEMcoupling.sh +++ b/src/lagrangian/cfdemParticle/etc/cleanCFDEMcoupling.sh @@ -6,7 +6,7 @@ #===================================================================# #- include functions -source $CFDEM_SRC_DIR/etc/functions.sh +source $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/functions.sh #================================================================================# # clean src remove object files diff --git a/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling.sh b/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling.sh index e5b047ae..9792a1a4 100755 --- a/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling.sh +++ b/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling.sh @@ -6,26 +6,26 @@ #===================================================================# #- include functions -source $CFDEM_SRC_DIR/etc/functions.sh +source $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/functions.sh NOW="$(date +"%Y-%m-%d-%H:%M")" logDir="log" -cd $CFDEM_SRC_DIR/etc +cd $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc mkdir -p $logDir #================================================================================# # compile src #================================================================================# -bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_src.sh +bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_src.sh #================================================================================# # compile solvers #================================================================================# -bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_sol.sh +bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_sol.sh #================================================================================# # compile utilities #================================================================================# -bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_uti.sh +bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_uti.sh diff --git a/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_all.sh b/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_all.sh index fb71d387..f8412166 100755 --- a/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_all.sh +++ b/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_all.sh @@ -6,21 +6,21 @@ #===================================================================# #- include functions -source $CFDEM_SRC_DIR/etc/functions.sh +source $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/functions.sh NOW="$(date +"%Y-%m-%d-%H:%M")" logDir="log" -cd $CFDEM_SRC_DIR/etc +cd $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc mkdir -p $logDir #================================================================================# # compile LIGGGHTS #================================================================================# -bash $CFDEM_SRC_DIR/etc/compileLIGGGHTS.sh +bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileLIGGGHTS.sh #================================================================================# # compile CFDEMcoupling #================================================================================# -bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling.sh +bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling.sh diff --git a/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_sol.sh b/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_sol.sh index 5cfb5df8..29388637 100755 --- a/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_sol.sh +++ b/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_sol.sh @@ -8,9 +8,9 @@ whitelist="solver-list.txt" #- include functions -source $CFDEM_SRC_DIR/etc/functions.sh +source $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/functions.sh logDir="log" -cd $CFDEM_SRC_DIR/etc +cd $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc mkdir -p $logDir CWD="$(dirname "$(readlink -f ${BASH_SOURCE[0]})")" @@ -19,13 +19,13 @@ NOW="$(date +"%Y-%m-%d-%H:%M")" echo "" echo "This routine will compile the solvers specified in solver-list.txt" echo "" -echo "Are the variables CFDEM_SOLVER_DIR=$CFDEM_SOLVER_DIR" -echo "and CFDEM_SRC_DIR=$CFDEM_SRC_DIR correct? (y/n)" -read YN -if [ "$YN" != "y" ];then - echo "Aborted by user." - exit 1 -fi +#echo "Are the variables CFDEM_SOLVER_DIR=$CFDEM_SOLVER_DIR" +#echo "and CFDEM_SRC_DIR=$CFDEM_SRC_DIR/lagrangian/cfdemParticle correct? (y/n)" +#read YN +#if [ "$YN" != "y" ];then +# echo "Aborted by user." +# exit 1 +#fi echo "" echo "Please provide the solvers to be compiled in the $CWD/$whitelist file." diff --git a/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_src.sh b/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_src.sh index 09ec125f..003e65df 100755 --- a/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_src.sh +++ b/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_src.sh @@ -3,28 +3,63 @@ #===================================================================# # compile routine for CFDEMcoupling source, part of CFDEMproject # Christoph Goniva - May. 2012, DCS Computing GmbH +# update: Stefan Radl (TU Graz, Jan 2014) #===================================================================# - + #- include functions -source $CFDEM_SRC_DIR/etc/functions.sh +source $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/functions.sh NOW="$(date +"%Y-%m-%d-%H:%M")" logDir="log" -cd $CFDEM_SRC_DIR/etc +cd $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc mkdir -p $logDir #================================================================================# # compile src #================================================================================# + whitelist="$CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/library-list.txt" + echo "" + echo "Please provide the libraries to be compiled in the $CWD/$whitelist file." + + if [ ! -f "$CWD/$whitelist" ];then + echo "$whitelist does not exist in $CWD. Nothing will be done." + NLINES=0 + COUNT=0 + else + NLINES=`wc -l < $CWD/$whitelist` + COUNT=0 + fi + + while [ $COUNT -lt $NLINES ] + do + let COUNT++ + LINE=`head -n $COUNT $CWD/$whitelist | tail -1` + + # white lines + if [[ "$LINE" == "" ]]; then + echo "compile $LINE" + continue + # comments + elif [[ "$LINE" == \#* ]]; then + continue + # paths + elif [[ "$LINE" == */dir ]]; then + echo "will change path..." + LINE=$(echo "${LINE%????}") + path="$CFDEM_SRC_DIR/$LINE" + cd $path + #continue + fi + #--------------------------------------------------------------------------------# + #- define variables + logpath="$(dirname "$(readlink -f ${BASH_SOURCE[0]})")/$logDir" + logfileName="log_compileCFDEMcoupling_"$(basename $LINE)"" + casePath="$path" + headerText="$logfileName""-$NOW" + #--------------------------------------------------------------------------------# + compileLib $logpath $logfileName $casePath $headerText + done -#--------------------------------------------------------------------------------# -#- define variables -logpath="$(dirname "$(readlink -f ${BASH_SOURCE[0]})")/$logDir" -logfileName="log_compileCFDEMcoupling_src" #alternative: logfileName="log_compileLIGGGHTS_$NOW" -casePath="$CFDEM_SRC_DIR" -headerText="$logfileName""-$NOW" -#--------------------------------------------------------------------------------# -compileLib $logpath $logfileName $casePath $headerText diff --git a/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_uti.sh b/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_uti.sh index 423843fc..8b91bfeb 100644 --- a/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_uti.sh +++ b/src/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_uti.sh @@ -6,13 +6,13 @@ #===================================================================# #- include functions -source $CFDEM_SRC_DIR/etc/functions.sh +source $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/functions.sh NOW="$(date +"%Y-%m-%d-%H:%M")" logDir="log" -cd $CFDEM_SRC_DIR/etc +cd $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc mkdir -p $logDir #================================================================================# diff --git a/src/lagrangian/cfdemParticle/etc/compileLIGGGHTS.sh b/src/lagrangian/cfdemParticle/etc/compileLIGGGHTS.sh index 58e3d656..6914f310 100755 --- a/src/lagrangian/cfdemParticle/etc/compileLIGGGHTS.sh +++ b/src/lagrangian/cfdemParticle/etc/compileLIGGGHTS.sh @@ -6,12 +6,12 @@ #=================================================================== #- include functions -source $CFDEM_SRC_DIR/etc/functions.sh +source $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/functions.sh NOW="$(date +"%Y-%m-%d-%H:%M")" logDir="log" -cd $CFDEM_SRC_DIR/etc +cd $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc mkdir -p $logDir #--------------------------------------------------------------------------------# diff --git a/src/lagrangian/cfdemParticle/etc/compileM2Mlib.sh b/src/lagrangian/cfdemParticle/etc/compileM2Mlib.sh index 7cd91b0b..c5875e30 100755 --- a/src/lagrangian/cfdemParticle/etc/compileM2Mlib.sh +++ b/src/lagrangian/cfdemParticle/etc/compileM2Mlib.sh @@ -6,12 +6,12 @@ #=================================================================== #- include functions -source $CFDEM_SRC_DIR/etc/functions.sh +source $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/functions.sh NOW="$(date +"%Y-%m-%d-%H:%M")" logDir="log" -cd $CFDEM_SRC_DIR/etc +cd $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc mkdir -p $logDir #--------------------------------------------------------------------------------# diff --git a/src/lagrangian/cfdemParticle/etc/controlDict_cgs_2.2.x b/src/lagrangian/cfdemParticle/etc/controlDict_cgs_2.2.x new file mode 100644 index 00000000..2922de2b --- /dev/null +++ b/src/lagrangian/cfdemParticle/etc/controlDict_cgs_2.2.x @@ -0,0 +1,1031 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.2.1 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object controlDict; +} + +// NB: the #functions do not work here +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +Documentation +{ + docBrowser "firefox %f"; + doxyDocDirs + ( + "$WM_PROJECT_USER_DIR/html" + "~OpenFOAM/html" + "$WM_PROJECT_DIR/doc/Doxygen/html" + ); + doxySourceFileExts + ( + "App_8C.html" + "_8C.html" + ); +} + + +InfoSwitches +{ + writePrecision 6; + writeJobInfo 0; + writeDictionaries 0; + + // Allow case-supplied C++ code (#codeStream, codedFixedValue) + allowSystemOperations 0; +} + + +OptimisationSwitches +{ + // On NFS mounted file system: maximum wait for files to appear/get + // updated. Set to 0 on distributed case. + fileModificationSkew 30; + + //- Modification checking: + // - timeStamp : use modification time on file + // - inotify : use inotify framework + // - timeStampMaster : do time stamp (and file reading) only on master. + // - inotifyMaster : do inotify (and file reading) only on master. + fileModificationChecking timeStampMaster;//inotify;timeStamp;inotifyMaster; + + commsType nonBlocking; //scheduled; //blocking; + floatTransfer 0; + nProcsSimpleSum 0; + + // Force dumping (at next timestep) upon signal (-1 to disable) + writeNowSignal -1; //10; + // Force dumping (at next timestep) upon signal (-1 to disable) and exit + stopAtWriteNowSignal -1; +} + + +DebugSwitches +{ + Analytical 0; + APIdiffCoefFunc 0; + Ar 0; + BICCG 0; + BirdCarreau 0; + C10H22 0; + C12H26 0; + C13H28 0; + C14H30 0; + C16H34 0; + C2H5OH 0; + C2H6 0; + C2H6O 0; + C3H6O 0; + C3H8 0; + C4H10O 0; + C6H14 0; + C6H6 0; + C7H16 0; + C7H8 0; + C8H10 0; + C8H18 0; + C9H20 0; + CH3OH 0; + CH4N2O 0; + CarnahanStarling 0; + CallbackRegistry 0; + CentredFitData 0; + CentredFitData 0; + CentredFitData 0; + CentredFitData 0; + ChomiakInjector 0; + Cloud 0; + Cloud 0; + Cloud 0; + Cloud 0; + Cloud 0; + Cloud 0; + Cloud 0; + CoEuler 0; + CompositionModel 0; + ConeInjection 0; + Constant 0; + ConstantRateDevolatilisation 0; + CrankNicolson 0; + CrossPowerLaw 0; + Cs 0; + DIC 0; + DICGaussSeidel 0; + DILU 0; + DILUGaussSeidel 0; + DataEntry 0; + DeardorffDiffStress 0; + DispersionModel 0; + DispersionRASModel 0; + DragModel 0; + ETAB 0; + Ergun 0; + Euler 0; + EulerImplicit 0; + EulerRotation 0; + extendedCellToFaceStencil 0; + FDIC 0; + FaceCellWave 0; + GAMG 0; + GAMGAgglomeration 0; + GAMGInterface 0; + GAMGInterfaceField 0; + Gamma 0; + Gamma01 0; + GammaV 0; + Gauss 0; + GaussSeidel 0; + Gibilaro 0; + Gidaspow 0; + GidaspowErgunWenYu 0; + GidaspowSchillerNaumann 0; + GradientDispersionRAS 0; + Gulders 0; + GuldersEGR 0; + H2O 0; + HashTable 0; + HeatTransferModel 0; + HerschelBulkley 0; + HrenyaSinclair 0; + IC8H18 0; + ICCG 0; + IDDESDelta 0; + IDEA 0; + IFstream 0; + IOMap 0; + IOPtrList 0; + IOPtrList 0; + IOPtrList 0; + IOPtrList 0; + IOobject 0; + InjectionModel 0; + IntegrationScheme 0; + JohnsonJackson 0; + KRR4 0; + KinematicCloud 0; + KinematicCloud 0; + KinematicCloud 0; + KinematicParcel 0; + KinematicParcel 0; + LESModel 0; + LESdelta 0; + LESfilter 0; + LISA 0; + LRR 0; + LRRDiffStress 0; + LamBremhorstKE 0; + LaunderGibsonRSTM 0; + LaunderSharmaKE 0; + LienCubicKE 0; + LienCubicKELowRe 0; + LienLeschzinerLowRe 0; + MB 0; + MC 0; + MCV 0; + MUSCL 0; + MUSCL01 0; + MUSCLV 0; + ManualInjection 0; + MarshakRadiation 0; + MarshakRadiationFixedT 0; + MassTransferModel 0; + MeshWave 0; + Minmod 0; + MinmodV 0; + N2 0; + NSRDSfunc0 0; + NSRDSfunc1 0; + NSRDSfunc14 0; + NSRDSfunc2 0; + NSRDSfunc3 0; + NSRDSfunc4 0; + NSRDSfunc5 0; + NSRDSfunc6 0; + NSRDSfunc7 0; + Newtonian 0; + NoDispersion 0; + NoDrag 0; + NoHeatTransfer 0; + NoInjection 0; + NoMassTransfer 0; + NoSurfaceReaction 0; + NonlinearKEShih 0; + ODE 0; + ODESolver 0; + OFstream 0; + ORourke 0; + OSPRE 0; + OSPREV 0; + P1 0; + PBiCG 0; + PCG 0; + PackedList 0; + ParSortableList 0; + PatchToPatchInterpolation 0; + Phi 0; + PointEdgeWave 0; + POSIX 0; + Prandtl 0; + PrimitivePatch 0; + Pstream 0; + QUICK 0; + QUICKV 0; + QZeta 0; + RASModel 0; + RK 0; + RNGkEpsilon 0; + RanzMarshall 0; + ReactingCloud 0; + ReactingParcel 0; + Rebound 0; + ReitzDiwakar 0; + ReitzKHRT 0; + RosinRammler 0; + RutlandFlashBoil 0; + SDA 0; + SFCD 0; + SFCDV 0; + SHF 0; + SIBS 0; + SKA 0; + SLTS 0; + SRFModel 0; + SRFVelocity 0; + STARCDRotation 0; + Schaeffer 0; + SchillerNaumann 0; + SinclairJackson 0; + SingleKineticRateDevolatilisation 0; + SingleMixtureFraction 0; + Smagorinsky 0; + SolverPerformance 1; + SpalartAllmaras 0; + SpalartAllmarasDDES 0; + SpalartAllmarasIDDES 0; + SphereDrag 0; + StandardWallInteraction 0; + StaticHashTable 0; + StochasticDispersionRAS 0; + SuperBee 0; + SuperBeeV 0; + SurfaceReactionModel 0; + Syamlal 0; + SyamlalOBrien 0; + SyamlalRogersOBrien 0; + TAB 0; + Table 0; + ThermoCloud 0; + ThermoCloud 0; + ThermoParcel 0; + ThermoParcel 0; + UMIST 0; + UMISTV 0; + UpwindFitData 0; + UpwindFitData 0; + UpwindFitData 0; + WallInteractionModel 0; + WenYu 0; + aC11H10 0; + absorptionEmissionModel 0; + addCell 0; + addFace 0; + addPatchCellLayer 0; + addPoint 0; + advective 0; + algebraicPair 0; + alphaContactAngle 0; + alphaFixedPressure 0; + alphatWallFunction 0; + angularOscillatingDisplacement 0; + angularOscillatingVelocity 0; + anisotropic 0; + ash 0; + atomizationModel 0; + attachDetach 0; + autoDensity 0; + autoHexMeshDriver 0; + autoLayerDriver 0; + autoRefineDriver 0; + autoSnapDriver 0; + bC11H10 0; + backgroundMeshDecomposition 0; + backward 0; + basePatch 0; + basicKinematicCloud 0; + basicKinematicParcel 0; + basicMixture 0; + basicReactingCloud 0; + basicReactingParcel 0; + fluidThermo 0; + fluidThermoCloud 0; + fluidThermoParcel 0; + biLinearFit 0; + binaryAbsorptionEmission 0; + blended 0; + blobsSheetAtomization 0; + blobsSwirlInjector 0; + booleanSurface 0; + boundaryCutter 0; + boundaryMesh 0; + boundaryToFace 0; + boundedBackward 0; + boxToCell 0; + boxToFace 0; + boxToPoint 0; + breakupModel 0; + calculated 0; + cell 0; + cellClassification 0; + cellCuts 0; + cellDistFuncs 0; + cellLimited 0; + cellList 0; + cellLooper 0; + cellMDLimited 0; + cellMotion 0; + cellPoint 0; + cellPointFace 0; + cellPointWeight 0; + cellSet 0; + cellSizeControlSurfaces 0; + cellToCell 0; + cellToFace 0; + cellToPoint 0; + cellZone 0; + centredCECStencil 0; + centredCFCStencil 0; + chemistryReader 0; + chemistrySolver 0; + chemkinReader 0; + clippedLinear 0; + cloud 0; + cloudAbsorptionEmission 0; + cloudScatter 0; + collisionModel 0; + combineFaces 0; + commSchedule 0; + commonRailInjector 0; + compound 0; + constInjector 0; + constant 0; + constantAbsorptionEmission 0; + constantAlphaContactAngle 0; + constantScatter 0; + coordinateRotation 0; + coordinateSystem 0; + coordinateSystems 0; + corrected 0; + coupled 0; + cubeRootVol 0; + cubic 0; + cubicUpwindFit 0; + curve 0; + cyclic 0; + cyclicLduInterface 0; + cyclicLduInterfaceField 0; + cylinderToCell 0; + cylindrical 0; + decompositionMethod 0; + definedHollowConeInjector 0; + definedInjector 0; + definedPressureSwirlInjector 0; + diagTensorField 0; + diagonal 0; + dictionary 0; + dimensionSet 1; + mappedBase 0; + mappedPatch 0; + mappedVelocityFlux 0; + directionMixed 0; + directional 0; + disallowGenericFvPatchField 0; + disallowGenericPointPatchField 0; + disallowGenericPolyPatch 0; + dispersionLESModel 0; + dispersionModel 0; + dispersionRASModel 0; + displacementComponentLaplacian 0; + displacementInterpolation 0; + displacementLaplacian 0; + displacementSBRStress 0; + distanceSurface 0; + Distribution 0; + downwind 0; + dragModel 0; + duplicatePoints 0; + dx 0; + dynMixedSmagorinsky 0; + dynOneEqEddy 0; + dynSmagorinsky 0; + dynamicAlphaContactAngle 0; + dynamicFvMesh 0; + dynamicInkJetFvMesh 0; + dynamicMotionSolverFvMesh 0; + dynamicRefineFvMesh 0; + edgeIntersections 0; + edgeList 0; + edgeSurface 0; + empty 0; + engineMesh 0; + enrichedPatch 0; + epsilonWallFunction 0; + errorDrivenRefinement 0; + evaporationModel 0; + exponential 0; + extendedLeastSquares 0; + extendedLeastSquaresVectors 0; + face 0; + faceAreaPair 0; + faceCoupleInfo 0; + faceLimited 0; + faceList 0; + faceMDLimited 0; + faceSet 0; + faceToCell 0; + faceToFace 0; + faceToPoint 0; + faceZone 0; + fan 0; + featureEdgeMesh 0; + fieldToCell 0; + file 0; + fileName 2; + filteredLinear 0; + filteredLinear2 0; + filteredLinear2V 0; + filteredLinear3 0; + filteredLinear3V 0; + fixedEnthalpy 0; + buoyantPressure 0; + fixedFluxBoussinesqBuoyantPressure 0; + fixedFluxPressure 0; + fixedGradient 0; + fixedInternalEnergy 0; + fixedInternalValue 0; + fixedNormalSlip 0; + fixedPressureCompressibleDensity 0; + fixedUnburntEnthalpy 0; + fixedValue 0; + flowRateInletVelocity 0; + fluxCorrectedVelocity 0; + foamChemistryReader 0; + foamFile 0; + forceCoeffs 0; + forces 0; + fourth 0; + freestream 0; + freestreamPressure 0; + frictionalStressModel 0; + functionObject 0; + fv 0; + fvMesh 0; + fvMeshDistribute 0; + fvMotionSolver 0; + fvPatchField 0; + fvScalarMatrix 0; + fvSchemes 0; + fvSphericalTensorMatrix 0; + fvSymmTensorMatrix 0; + fvTensorMatrix 0; + fvVectorMatrix 0; + fvsPatchField 0; + general 0; + generic 0; + genericPatch 0; + geomCellLooper 0; + geometricSurfacePatch 0; + global 0; + globalIndexAndTransform 0; + globalMeshData 0; + globalPoints 0; + gnuplot 0; + gradientDispersionRAS 0; + gradientEnthalpy 0; + gradientInternalEnergy 0; + gradientUnburntEnthalpy 0; + granularPressureModel 0; + hCombustionThermo 0; + hMixtureThermo>>>> 0; + hMixtureThermo>>>> 0; + hMixtureThermo>>>> 0; + hMixtureThermo>>>> 0; + hMixtureThermo>>>> 0; + hMixtureThermo 0; + hMixtureThermo>>>> 0; + hMixtureThermo>>>> 0; + hThermo>>>> 0; + hThermo>>>> 0; + hThermo>>>> 0; + harmonic 0; + heatTransferModel 0; + hexCellLooper 0; + hexRef8 0; + hhuCombustionThermo 0; + hhuMixtureThermo>>>> 0; + hhuMixtureThermo>>>> 0; + hhuMixtureThermo>>>> 0; + hhuMixtureThermo>>>> 0; + hhuMixtureThermo>>>> 0; + hhuMixtureThermo>>>> 0; + hhuMixtureThermo>>>> 0; + hhuMixtureThermo>>>> 0; + hierarchical 0; + hollowConeInjector 0; + iC3H8O 0; + indexedOctree 0; + indexedParticle 0; + injectorModel 0; + injectorType 0; + inletOutlet 0; + inletOutletTotalTemperature 0; + interfaceCompression 0; + intersectedSurface 0; + inverseDistance 0; + inverseFaceDistance 0; + inversePointDistance 0; + inverseVolume 0; + isoSurface 0; + isoSurfaceCell 0; + jplot 0; + jumpCyclic 0; + kEpsilon 0; + kOmega 0; + kOmegaSST 0; + kOmegaSSTSAS 0; + kqRWallFunction 0; + kinematicCloud 0; + labelField 0; + labelList 0; + labelListList 0; + labelToCell 0; + labelToFace 0; + labelToPoint 0; + laminar 0; + laminarFlameSpeed 0; + laplace 0; + layerAdditionRemoval 0; + layered 0; + lduInterface 0; + lduInterfaceField 0; + lduMatrix 1; + lduMesh 0; + leastSquares 0; + leastSquaresVectors 0; + level 2; + limitWith 0; + limited 0; + limitedCubic 0; + limitedCubic01 0; + limitedCubicV 0; + limitedGamma 0; + limitedLimitedCubic 0; + limitedLimitedLinear 0; + limitedLinear 0; + limitedLinear01 0; + limitedLinearV 0; + limitedMUSCL 0; + limitedSurfaceInterpolationScheme 0; + limitedVanLeer 0; + linear 0; + linearFit 0; + linearUpwind 0; + linearUpwindV 0; + liquid 0; + locDynOneEqEddy 0; + localBlended 0; + localMax 0; + localMin 0; + localPointRegion 0; + lowReOneEqEddy 0; + manual 0; + meshCutAndRemove 0; + meshCutter 0; + meshModifier 0; + meshRefinement 0; + meshSearch 0; + meshToMesh 0; + metis 0; + midPoint 0; + midPointAndFace 0; + mixed 0; + mixedEnthalpy 0; + mixedInternalEnergy 0; + mixedSmagorinsky 0; + mixedUnburntEnthalpy 0; + mixerFvMesh 0; + modifyCell 0; + modifyFace 0; + modifyPoint 0; + motionDiffusivity 0; + motionDirectional 0; + motionSmoother 0; + motionSolver 0; + movingConeTopoFvMesh 0; + movingWallVelocity 0; + muSgsSpalartAllmarasWallFunction 0; + multiDirRefinement 0; + multiHoleInjector 0; + multiLevel 0; + multivariateSelection 0; + mutRoughWallFunction 0; + mutSpalartAllmarasStandardRoughWallFunction 0; + mutSpalartAllmarasStandardWallFunction 0; + mutSpalartAllmarasWallFunction 0; + mutWallFunction 0; + nC3H8O 0; + nbrToCell 0; + nearestToCell 0; + nearestToPoint 0; + noAbsorptionEmission 0; + noDragModel 0; + noRadiation 0; + none 0; + normal 0; + normalToFace 0; + nuSgsSpalartAllmarasWallFunction 0; + nutRoughWallFunction 0; + nutSpalartAllmarasStandardRoughWallFunction 0; + nutSpalartAllmarasStandardWallFunction 0; + nutSpalartAllmarasWallFunction 0; + nutWallFunction 0; + obj 0; + objectRegistry 0; + off 0; + omegaWallFunction 0; + oneEqEddy 0; + orientedSurface 0; + oscillatingDisplacement 0; + oscillatingFixedValue 0; + oscillatingVelocity 0; + outletInlet 0; + outletStabilised 0; + pair 0; + parabolicCylindrical 0; + parcel 0; + partialSlip 0; + passiveParticle 0; + patch 0; + patchToFace 0; + patchZones 0; + pdf 0; + perfectInterface 0; + pointIndexHitList 0; + pointPatchField 0; + pointScalarField 0; + pointScalarField::DimensionedInternalField 0; + pointSet 0; + pointSphericalTensorField 0; + pointSphericalTensorField::DimensionedInternalField 0; + pointSymmTensorField 0; + pointSymmTensorField::DimensionedInternalField 0; + pointTensorField 0; + pointTensorField::DimensionedInternalField 0; + pointToCell 0; + pointToFace 0; + pointToPoint 0; + pointVectorField 0; + pointVectorField::DimensionedInternalField 0; + pointZone 0; + polyBoundaryMesh 0; + polyMesh 0; + polyMeshGeometry 0; + polyMeshInfo 0; + polyTopoChange 0; + polyTopoChanger 0; + powerLaw 0; + pressureDirectedInletOutletVelocity 0; + pressureDirectedInletVelocity 0; + pressureInletOutletVelocity 0; + pressureInletUniformVelocity 0; + pressureInletVelocity 0; + pressureNormalInletOutletVelocity 0; + pressureSwirlInjector 0; + primitiveMesh 0; + primitiveMeshGeometry 0; + probes 0; + processor 0; + processorLduInterface 0; + processorLduInterfaceField 0; + pureMixture>>> 0; + pureMixture>>> 0; + pureMixture>>> 0; + quadratic 0; + quadraticFit 0; + quadraticLinearFit 0; + quadraticLinearUpwindFit 0; + quadraticUpwindFit 0; + radiationModel 0; + raw 0; + reactingCloud 0; + reaction 0; + realizableKE 0; + refinementHistory 0; + refinementIterator 0; + reflect 0; + regIOobject 0; + regionSplit 0; + regionToCell 0; + remove 0; + removeCell 0; + removeCells 0; + removeFace 0; + removeFaces 0; + removePoint 0; + removePoints 0; + reverseLinear 0; + rotatedBoxToCell 0; + rotatingPressureInletOutletVelocity 0; + rotatingTotalPressure 0; + sampledPatch 0; + sampledPlane 0; + sampledSet 0; + sampledSurface 0; + saturateEvaporationModel 0; + scalarAverageField 0; + scalarField 0; + scalarRange 0; + scaleSimilarity 0; + scatterModel 0; + searchableBox 0; + searchableSurface 0; + sequential 0; + setUpdater 0; + sets 0; + shapeList 0; + shapeToCell 0; + simple 0; + sixDoFRigidBodyMotionConstraint 0; + skewCorrected 0; + skewCorrectionVectors 0; + sliced 0; + slidingInterface 0; + slip 0; + smooth 0; + smoothSolver 0; + solid 0; + solidBodyMotionFunction 0; + solidBodyMotionFvMesh 0; + solution 0; + spectEddyVisc 0; + sphereToCell 0; + spherical 0; + sphericalTensorAverageField 0; + sphericalTensorField 0; + standardDragModel 0; + standardEvaporationModel 0; + staticFvMesh 0; + steadyState 0; + stl 0; + string 0; + stochasticDispersionRAS 0; + supersonicFreestream 0; + surfaceFeatures 0; + surfaceInterpolation 0; + surfaceInterpolationScheme 0; + surfaceIntersection 0; + surfaceNormalFixedValue 0; + surfacePatch 0; + surfacePatchIOList 0; + surfaceScalarField 0; + surfaceScalarField::DimensionedInternalField 0; + surfaceSlipDisplacement 0; + surfaceSphericalTensorField 0; + surfaceSphericalTensorField::DimensionedInternalField 0; + surfaceSymmTensorField 0; + surfaceSymmTensorField::DimensionedInternalField 0; + surfaceTensorField 0; + surfaceTensorField::DimensionedInternalField 0; + surfaceToCell 0; + surfaceToPoint 0; + surfaceVectorField 0; + surfaceVectorField::DimensionedInternalField 0; + surfaceWriter 0; + surfaces 0; + swirlInjector 0; + symmTensorAverageField 0; + symmTensorField 0; + symmetryPlane 0; + syringePressure 0; + tensorAverageField 0; + tensorField 0; + tetDecomposedPolyMesh 0; + thermoCloud 0; + thermophysicalFunction 0; + time 0; + timeVaryingAlphaContactAngle 0; + timeVaryingFlowRateInletVelocity 0; + timeVaryingMappedFixedValue 0; + timeVaryingTotalPressure 0; + timeVaryingUniformFixedValue 0; + timer 0; + topoAction 0; + topoCellLooper 0; + topoChangerFvMesh 0; + topoSet 0; + topoSetSource 0; + toroidal 0; + totalPressure 0; + totalTemperature 0; + trackedParticle 0; + trajectory 0; + transform 0; + treeDataCell 0; + treeDataFace 0; + treeDataTriSurface 0; + treeLeaf 0; + treeNode 0; + triSurface 0; + triSurfaceMesh 0; + turbulenceModel 0; + turbulentHeatFluxTemperature 0; + turbulentInlet 0; + turbulentIntensityKineticEnergyInlet 0; + turbulentMixingLengthDissipationRateInlet 0; + turbulentMixingLengthFrequencyInlet 0; + uncorrected 0; + undoableMeshCutter 0; + uniform 0; + uniformFixedValue 0; + unitInjector 0; + upwind 0; + upwindCFCStencil 0; + value 0; + vanAlbada 0; + vanAlbadaV 0; + vanDriest 0; + vanLeer 0; + vanLeer01 0; + vanLeerV 0; + vector2DField 0; + vectorAverageField 0; + vectorField 0; + velocityComponentLaplacian 0; + velocityLaplacian 0; + viscosityModel 0; + volPointInterpolation 0; + volScalarField 0; + volScalarField::DimensionedInternalField 0; + volSphericalTensorField 0; + volSphericalTensorField::DimensionedInternalField 0; + volSymmTensorField 0; + volSymmTensorField::DimensionedInternalField 0; + volTensorField 0; + volTensorField::DimensionedInternalField 0; + volVectorField 0; + volVectorField::DimensionedInternalField 0; + vtk 0; + walkPatch 0; + wall 0; + wallHeatTransfer 0; + wallLayerCells 0; + wallModel 0; + warnUnboundedGauss 1; + waveTransmissive 0; + wedge 0; + weighted 0; + word 2; + writer 0; + xmgr 0; + zeroGradient 0; + zoneToCell 0; + zoneToFace 0; + zoneToPoint 0; +} + + +DimensionedConstants +{ + unitSet CGS; // SI; // USCS + + SICoeffs + { + universal + { + c c [ 0 1 -1 0 0 0 0 ] 2.99792e+08; + G G [ -1 3 -2 0 0 0 0 ] 6.67429e-11; + h h [ 1 2 -1 0 0 0 0 ] 6.62607e-34; + } + electromagnetic + { + e e [ 0 0 1 0 0 1 0 ] 1.60218e-19; + } + atomic + { + me me [ 1 0 0 0 0 0 0 ] 9.10938e-31; + mp mp [ 1 0 0 0 0 0 0 ] 1.67262e-27; + } + physicoChemical + { + mu mu [ 1 0 0 0 0 0 0 ] 1.66054e-27; + k k [ 1 2 -2 -1 0 0 0 ] 1.38065e-23; + } + standard + { + //- Standard pressure [Pa] + Pstd Pstd [ 1 -1 -2 0 0 0 0 ] 100000; + //- Standard temperature [degK] + Tstd Tstd [ 0 0 0 1 0 0 0 ] 298.15; + } + } + USCSCoeffs + { + universal + { + c c [ 0 1 -1 0 0 0 0 ] 9.83558e+08; + G G [ -1 3 -2 0 0 0 0 ] 1.06909e-09; + h h [ 1 2 -1 0 0 0 0 ] 1.57234e-32; + } + electromagnetic + { + e e [ 0 0 1 0 0 1 0 ] 1.60218e-19; + } + atomic + { + me me [ 1 0 0 0 0 0 0 ] 2.00825e-30; + mp mp [ 1 0 0 0 0 0 0 ] 3.68746e-27; + } + physicoChemical + { + mu mu [ 1 0 0 0 0 0 0 ] 3.66083e-27; + k k [ 1 2 -2 -1 0 0 0 ] 1.82012e-22; + } + standard + { + //- Standard pressure [lbm/ft^2] + Pstd Pstd [ 1 -1 -2 0 0 0 0 ] 2088.6; + //- Standard temperature [degR] + Tstd Tstd [ 0 0 0 1 0 0 0 ] 536.67; + } + } +} + + +DimensionSets +{ + unitSet SI; // USCS + + SICoeffs + { + // Basic units + kg kg [ 1 0 0 0 0 0 0 ] 1.0; + m m [ 0 1 0 0 0 0 0 ] 1.0; + s s [ 0 0 1 0 0 0 0 ] 1.0; + K K [ 0 0 0 1 0 0 0 ] 1.0; + mol mol [ 0 0 0 0 1 0 0 ] 1.0; + A A [ 0 0 0 0 0 1 0 ] 1.0; + Cd Cd [ 0 0 0 0 0 0 1 ] 1.0; + + // Derived units + Hz Hz [ s^-1 ] 1.0; + N N [ kg m s^-2 ] 1.0; + Pa Pa [ N m^-2 ] 1.0; + J J [ N m ] 1.0; + W W [ J s^-1 ] 1.0; + + // Some non-symbolic ones + area area [m^2] 1.0; + volume volume [m^3] 1.0; + density density [ kg m^-3 ] 1.0; + acceleration acceleration [ m s^-2 ] 1.0; + kinematicPressure kinematicPressure [ Pa density^-1 ] 1.0; + + // Scaled units. Only allowed in dimensionedType (dimensionedScalar, + // dimensionedVector etc.) and UniformDimensionedField, not + // in DimensionedField or GeometricField + cm cm [ m ] 1e-2; + mm mm [ m ] 1e-3; + km km [ m ] 1e3; + + // Set of units used for printing. Can be any basic or derived + // but not scaled (only supported for dimensionedScalar, etc) + //writeUnits (kg m s K mol A Cd); + } + + USCSCoeffs + { + // Basic units + lb lb [ 1 0 0 0 0 0 0 ] 1.0; + ft ft [ 0 1 0 0 0 0 0 ] 1.0; + s s [ 0 0 1 0 0 0 0 ] 1.0; + R R [ 0 0 0 1 0 0 0 ] 1.0; + mol mol [ 0 0 0 0 1 0 0 ] 1.0; + A A [ 0 0 0 0 0 1 0 ] 1.0; + Cd Cd [ 0 0 0 0 0 0 1 ] 1.0; + + // Set of units used for printing. Can be any basic or derived + // but not scaled (only supported for dimensionedScalar, etc) + //writeUnits (lb ft s R mol A Cd); + } +} + + + +// ************************************************************************* // diff --git a/src/lagrangian/cfdemParticle/etc/cshrc b/src/lagrangian/cfdemParticle/etc/cshrc index dc314a16..0e30c683 100755 --- a/src/lagrangian/cfdemParticle/etc/cshrc +++ b/src/lagrangian/cfdemParticle/etc/cshrc @@ -24,7 +24,7 @@ #setenv CFDEM_UT_DIR $CFDEM_PROJECT_DIR/applications/utilities #setenv CFDEM_TUT_DIR $CFDEM_PROJECT_DIR/tutorials #setenv CFDEM_PROJECT_USER_DIR $HOME/CFDEM/$LOGNAME-$CFDEM_VERSION-$WM_PROJECT_VERSION -#setenv CFDEM_bashrc $CFDEM_SRC_DIR/etc/cshrc +#setenv CFDEM_bashrc $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/cshrc #setenv CFDEM_LIGGGHTS_SRC_DIR $HOME/LIGGGHTS/LIGGGHTS-PUBLIC/src #setenv CFDEM_LIGGGHTS_MAKEFILE_NAME fedora_fpic #setenv CFDEM_LPP_DIR $HOME/LIGGGHTS/mylpp/src @@ -44,7 +44,7 @@ setenv CFDEM_LIGGGHTS_LIB_NAME lmp_$CFDEM_LIGGGHTS_MAKEFILE_NAME setenv CFDEM_LIB_NAME lagrangianCFDEM-$CFDEM_VERSION-$WM_PROJECT_VERSION #- LMP M2M lib path -setenv CFDEM_M2MLIB_PATH $CFDEM_SRC_DIR/subModels/dataExchangeModel/twoWayM2M/library +setenv CFDEM_M2MLIB_PATH $CFDEM_SRC_DIR/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library #- path to test harness setenv CFDEM_TEST_HARNESS_PATH $CFDEM_PROJECT_USER_DIR/log/logFilesCFDEM-$CFDEM_VERSION-$WM_PROJECT_VERSION @@ -99,37 +99,40 @@ alias cfdemDox 'firefox $CFDEM_DOC_DIR/doxygen/html/index.html' alias cfdemLIG 'cd $CFDEM_LIGGGHTS_SRC_DIR' #- shortcut to system test -alias cfdemSysTest 'bash $CFDEM_SRC_DIR/etc/cfdemSystemTest.sh' +alias cfdemSysTest 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/cfdemSystemTest.sh' #- shortcut to pull LIGGGHTS -alias cfdemPullLIG 'bash $CFDEM_SRC_DIR/etc/pullLIGGGHTS.sh' +alias cfdemPullLIG 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/pullLIGGGHTS.sh' + +#- shortcut to pull CFDEMcoupling +alias cfdemPullCFDEMcoupling 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/pullCFDEMcoupling.sh' #- shortcut to clean CFDEM -alias cfdemCleanCFDEM 'bash $CFDEM_SRC_DIR/etc/cleanCFDEMcoupling.sh' +alias cfdemCleanCFDEM 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/cleanCFDEMcoupling.sh' #- shortcut to compile LIGGGHTS -alias cfdemCompLIG 'bash $CFDEM_SRC_DIR/etc/compileLIGGGHTS.sh' +alias cfdemCompLIG 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileLIGGGHTS.sh' #- shortcut to compile CFDEMcoupling +LIGGGHTS -alias cfdemCompCFDEMall 'bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_all.sh' +alias cfdemCompCFDEMall 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_all.sh' #- shortcut to compile CFDEMcoupling (src+solvers) -alias cfdemCompCFDEM 'bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling.sh' +alias cfdemCompCFDEM 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling.sh' #- shortcut to compile CFDEMcoupling src -alias cfdemCompCFDEMsrc 'bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_src.sh' +alias cfdemCompCFDEMsrc 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_src.sh' #- shortcut to compile CFDEMcoupling solvers -alias cfdemCompCFDEMsol 'bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_sol.sh' +alias cfdemCompCFDEMsol 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_sol.sh' #- shortcut to compile CFDEMcoupling utilities -alias cfdemCompCFDEMuti 'bash $CFDEM_SRC_DIR/etc/compileCFDEMcoupling_uti.sh' +alias cfdemCompCFDEMuti 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileCFDEMcoupling_uti.sh' #- shortcut to compile couple library -alias cfdemCompM2M 'bash $CFDEM_SRC_DIR/etc/compileM2Mlib.sh' +alias cfdemCompM2M 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/compileM2Mlib.sh' #- shortcut to test basic tutorials -alias cfdemTestTUT 'bash $CFDEM_SRC_DIR/etc/testTutorials.sh' +alias cfdemTestTUT 'bash $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/testTutorials.sh' #- shortcut to run liggghts in serial alias cfdemLiggghts '$CFDEM_LIGGGHTS_SRC_DIR/lmp_$CFDEM_LIGGGHTS_MAKEFILE_NAME' diff --git a/src/lagrangian/cfdemParticle/etc/functions.sh b/src/lagrangian/cfdemParticle/etc/functions.sh index db5934fd..b2b6a741 100755 --- a/src/lagrangian/cfdemParticle/etc/functions.sh +++ b/src/lagrangian/cfdemParticle/etc/functions.sh @@ -27,7 +27,8 @@ pullRepo() #- header echo 2>&1 | tee -a $logpath/$logfileName - echo "// $headerText //" 2>&1 | tee -a $logpath/$logfileName + echo 2>&1 | tee -a $logpath/$logfileName + echo "//=== $headerText ===//" 2>&1 | tee -a $logpath/$logfileName echo 2>&1 | tee -a $logpath/$logfileName #- write path @@ -149,6 +150,8 @@ compileLIGGGHTS() echo 2>&1 | tee -a $logpath/$logfileName #- wclean and wmake + rm $CFDEM_LIGGGHTS_SRC_DIR/"lmp_"$CFDEM_LIGGGHTS_MAKEFILE_NAME + rm $CFDEM_LIGGGHTS_SRC_DIR/"lib"$CFDEM_LIGGGHTS_LIB_NAME".a" make clean-all 2>&1 | tee -a $logpath/$logfileName make $CFDEM_LIGGGHTS_MAKEFILE_NAME -j $WM_NCOMPPROCS 2>&1 | tee -a $logpath/$logfileName make makelib 2>&1 | tee -a $logpath/$logfileName @@ -206,34 +209,99 @@ cleanCFDEM() echo "if not, abort with ctrl-C" read + #********************************************** + #cleaning libraries + whitelist="$CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/library-list.txt" echo "" + echo "Please provide the libraries to be cleaned in the $CWD/$whitelist file." + + if [ ! -f "$CWD/$whitelist" ];then + echo "$whitelist does not exist in $CWD. Nothing will be done." + NLINES=0 + COUNT=0 + else + NLINES=`wc -l < $CWD/$whitelist` + COUNT=0 + fi + + while [ $COUNT -lt $NLINES ] + do + let COUNT++ + LINE=`head -n $COUNT $CWD/$whitelist | tail -1` + + # white lines + if [[ "$LINE" == "" ]]; then + continue + # comments + elif [[ "$LINE" == \#* ]]; then + continue + # paths + elif [[ "$LINE" == */dir ]]; then + echo "will change path..." + LINE=$(echo "${LINE%????}") + path="$CFDEM_PROJECT_DIR/src/$LINE" + cd $path + #continue + fi + + cd $path + echo "cleaning library $PWD" + rmdepall + wclean + rm -r ./Make/linux* + rm -r ./lnInclude + done + + + #********************************************** + #cleaning utilities echo "removing object files in" - echo " $CFDEM_SRC_DIR" - echo " and" echo " $CFDEM_UT_DIR" rm -r $CFDEM_UT_DIR/*/Make/linux* rm -r $CFDEM_UT_DIR/*/Make/linux* rm -r $CFDEM_UT_DIR/*/*.dep - rm -r $CFDEM_SRC_DIR/Make/linux* - rm -r $CFDEM_SRC_DIR/lnInclude - rm -r $CFDEM_SRC_DIR/../../finiteVolume/Make/linux* - rm -r $CFDEM_SRC_DIR/../../finiteVolume/lnInclude + #********************************************** + #cleaning solvers + whitelist="$CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/solver-list.txt" echo "" - echo "cleaning $CFDEM_SRC_DIR" - cd $CFDEM_SRC_DIR - rmdepall - wclean + echo "Please provide the solvers to be cleaned in the $CWD/$whitelist file." - for solver in "cfdemSolverIB" "cfdemSolverPiso" "cfdemSolverPisoScalar" + if [ ! -f "$CWD/$whitelist" ];then + echo "$whitelist does not exist in $CWD. Nothing will be done." + NLINES=0 + COUNT=0 + else + NLINES=`wc -l < $CWD/$whitelist` + COUNT=0 + fi + + while [ $COUNT -lt $NLINES ] do - echo "" - echo "cleaning $CFDEM_SOLVER_DIRapplications/$solver" - cd $CFDEM_SOLVER_DIR/$solver - rmdepall - wclean + let COUNT++ + LINE=`head -n $COUNT $CWD/$whitelist | tail -1` + + # white lines + if [[ "$LINE" == "" ]]; then + continue + # comments + elif [[ "$LINE" == \#* ]]; then + continue + # paths + elif [[ "$LINE" == */dir ]]; then + echo "will change path..." + LINE=$(echo "${LINE%????}") + path="$CFDEM_SOLVER_DIR/$LINE" + cd $path + #continue + fi + + cd $path + echo "cleaning solver $PWD" + rmdepall + wclean done } #==================================# diff --git a/src/lagrangian/cfdemParticle/etc/library-list.txt b/src/lagrangian/cfdemParticle/etc/library-list.txt new file mode 100644 index 00000000..e97f7fee --- /dev/null +++ b/src/lagrangian/cfdemParticle/etc/library-list.txt @@ -0,0 +1,3 @@ +cylPorousMedia/dir +finiteVolume/dir +lagrangian/cfdemParticle/dir diff --git a/src/lagrangian/cfdemParticle/etc/pullLIGGGHTS.sh b/src/lagrangian/cfdemParticle/etc/pullLIGGGHTS.sh index 8bd2d979..c21b979a 100644 --- a/src/lagrangian/cfdemParticle/etc/pullLIGGGHTS.sh +++ b/src/lagrangian/cfdemParticle/etc/pullLIGGGHTS.sh @@ -6,12 +6,12 @@ #=================================================================== #- include functions -source $CFDEM_SRC_DIR/etc/functions.sh +source $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/functions.sh NOW="$(date +"%Y-%m-%d-%H:%M")" logDir="log" -cd $CFDEM_SRC_DIR/etc +cd $CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc mkdir -p $logDir #--------------------------------------------------------------------------------# diff --git a/src/lagrangian/cfdemParticle/etc/solver-list.txt b/src/lagrangian/cfdemParticle/etc/solver-list.txt index 803579e7..8c6566e2 100644 --- a/src/lagrangian/cfdemParticle/etc/solver-list.txt +++ b/src/lagrangian/cfdemParticle/etc/solver-list.txt @@ -1,5 +1,7 @@ +cfdemSolverInterDyM/dir cfdemSolverPimple/dir cfdemSolverPisoMS/dir cfdemSolverPiso/dir cfdemSolverIB/dir cfdemSolverPisoScalar/dir +cfdemSolverPimpleDyM_22x/dir diff --git a/src/lagrangian/cfdemParticle/etc/tutorial-list.txt b/src/lagrangian/cfdemParticle/etc/tutorial-list.txt index 51e965b4..a9669d55 100644 --- a/src/lagrangian/cfdemParticle/etc/tutorial-list.txt +++ b/src/lagrangian/cfdemParticle/etc/tutorial-list.txt @@ -17,3 +17,21 @@ cfdemSolverPiso/ErgunTestMPI_restart/dir cfdemSolverIB/twoSpheresGlowinskiMPI/dir cfdemSolverPisoScalar/packedBedTemp/dir + +#===================================================================# +# not in release: + +#cfdemSolverPiso/settlingTestBigParticleMPI/dir +#cfdemSolverPiso/ErgunTestCG/dir +#cfdemSolverPiso/ErgunTestM2M/dir +#cfdemSolverPiso/HopperEmptying/dir + +#cfdemSolverPisoMS/settlingTestMPI/dir +#cfdemSolverPisoMS/ErgunTestMPI/dir + +#cfdemSolverPimple/ErgunTestMPI/dir + +#cfdemSolverInterDyM/twoPhaseSettlingTest/dir +#cfdemSolverInterDyM/ErgunTestMPI/dir +#cfdemSolverInterDyM/granularPiston/dir +#cfdemSolverInterDyM/sugarNcoffee/dir diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/dataExchangeModel/dataExchangeModel.H b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/dataExchangeModel/dataExchangeModel.H index dd17059f..db14e440 100755 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/dataExchangeModel/dataExchangeModel.H +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/dataExchangeModel/dataExchangeModel.H @@ -210,10 +210,10 @@ public: } } - inline bool checkExactTiming() const + /*inline bool checkExactTiming() const { - - } + return false; + }*/ //void checkNClumpTypes() const {}; diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/error.d b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/error.d index 4072213c..7ea4724c 100644 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/error.d +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/error.d @@ -1,112 +1,31 @@ -error.o: error.cpp /usr/lib/openmpi/include/mpi.h \ +error.o: error.cpp \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h \ - /usr/include/c++/4.6/map /usr/include/c++/4.6/bits/stl_tree.h \ - /usr/include/c++/4.6/bits/stl_algobase.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/os_defines.h \ - /usr/include/features.h /usr/include/bits/predefs.h \ - /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \ - /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/cpu_defines.h \ - /usr/include/c++/4.6/bits/functexcept.h \ - /usr/include/c++/4.6/bits/exception_defines.h \ - /usr/include/c++/4.6/bits/cpp_type_traits.h \ - /usr/include/c++/4.6/ext/type_traits.h \ - /usr/include/c++/4.6/ext/numeric_traits.h \ - /usr/include/c++/4.6/bits/stl_pair.h /usr/include/c++/4.6/bits/move.h \ - /usr/include/c++/4.6/bits/concept_check.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_types.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/4.6/bits/stl_iterator.h \ - /usr/include/c++/4.6/debug/debug.h /usr/include/c++/4.6/bits/allocator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++allocator.h \ - /usr/include/c++/4.6/ext/new_allocator.h /usr/include/c++/4.6/new \ - /usr/include/c++/4.6/exception /usr/include/c++/4.6/bits/stl_function.h \ - /usr/include/c++/4.6/backward/binders.h \ - /usr/include/c++/4.6/bits/stl_map.h \ - /usr/include/c++/4.6/initializer_list \ - /usr/include/c++/4.6/bits/stl_multimap.h \ - /usr/include/c++/4.6/bits/range_access.h /usr/include/c++/4.6/utility \ - /usr/include/c++/4.6/bits/stl_relops.h \ - /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h /usr/include/stdio.h \ - /usr/include/bits/types.h /usr/include/bits/typesizes.h \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi_portable_platform.h \ + /usr/include/stdlib.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/bits/predefs.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/stdio.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ - /usr/include/bits/stdio.h /usr/include/bits/stdio2.h \ - /usr/include/c++/4.6/iostream /usr/include/c++/4.6/ostream \ - /usr/include/c++/4.6/ios /usr/include/c++/4.6/iosfwd \ - /usr/include/c++/4.6/bits/stringfwd.h \ - /usr/include/c++/4.6/bits/postypes.h /usr/include/c++/4.6/cwchar \ - /usr/include/bits/wchar.h /usr/include/xlocale.h \ - /usr/include/bits/wchar2.h /usr/include/c++/4.6/bits/char_traits.h \ - /usr/include/c++/4.6/bits/localefwd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++locale.h \ - /usr/include/c++/4.6/clocale /usr/include/locale.h \ - /usr/include/bits/locale.h /usr/include/c++/4.6/cctype \ - /usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \ - /usr/include/bits/byteswap.h /usr/include/c++/4.6/bits/ios_base.h \ - /usr/include/c++/4.6/ext/atomicity.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h /usr/include/time.h \ - /usr/include/bits/sched.h /usr/include/bits/time.h /usr/include/signal.h \ - /usr/include/bits/sigset.h /usr/include/bits/pthreadtypes.h \ - /usr/include/bits/setjmp.h /usr/include/unistd.h \ - /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ - /usr/include/bits/confname.h /usr/include/getopt.h \ - /usr/include/bits/unistd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/atomic_word.h \ - /usr/include/c++/4.6/bits/locale_classes.h /usr/include/c++/4.6/string \ - /usr/include/c++/4.6/bits/ostream_insert.h \ - /usr/include/c++/4.6/bits/cxxabi_forced.h \ - /usr/include/c++/4.6/bits/basic_string.h \ - /usr/include/c++/4.6/bits/basic_string.tcc \ - /usr/include/c++/4.6/bits/locale_classes.tcc \ - /usr/include/c++/4.6/streambuf /usr/include/c++/4.6/bits/streambuf.tcc \ - /usr/include/c++/4.6/bits/basic_ios.h \ - /usr/include/c++/4.6/bits/locale_facets.h /usr/include/c++/4.6/cwctype \ - /usr/include/wctype.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_base.h \ - /usr/include/c++/4.6/bits/streambuf_iterator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_inline.h \ - /usr/include/c++/4.6/bits/locale_facets.tcc \ - /usr/include/c++/4.6/bits/basic_ios.tcc \ - /usr/include/c++/4.6/bits/ostream.tcc /usr/include/c++/4.6/istream \ - /usr/include/c++/4.6/bits/istream.tcc \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/constants.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/exception.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions_inln.h \ - /usr/include/string.h /usr/include/bits/string3.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file_inln.h \ - /usr/include/stdlib.h /usr/include/bits/waitflags.h \ - /usr/include/bits/waitstatus.h /usr/include/sys/types.h \ - /usr/include/sys/select.h /usr/include/bits/select.h \ - /usr/include/sys/sysmacros.h /usr/include/alloca.h \ - /usr/include/bits/stdlib.h error.h + /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h error.h diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/error.o b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/error.o new file mode 100644 index 00000000..87ce04e4 Binary files /dev/null and b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/error.o differ diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/files.d b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/files.d index 0ee83743..20ece65d 100644 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/files.d +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/files.d @@ -1,12 +1,17 @@ files.o: files.cpp /usr/include/stdio.h /usr/include/features.h \ - /usr/include/bits/predefs.h /usr/include/sys/cdefs.h \ - /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ - /usr/include/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/predefs.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h \ - /usr/include/bits/types.h /usr/include/bits/typesizes.h \ - /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ - /usr/include/bits/stdio.h /usr/include/bits/stdio2.h \ - /usr/include/string.h /usr/include/xlocale.h /usr/include/bits/string3.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/string.h \ + /usr/include/xlocale.h /usr/include/x86_64-linux-gnu/bits/string3.h \ files.h diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/files.o b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/files.o new file mode 100644 index 00000000..72a28a1c Binary files /dev/null and b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/files.o differ diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/irregular.d b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/irregular.d index c93efb64..29a6707d 100644 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/irregular.d +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/irregular.d @@ -1,112 +1,32 @@ irregular.o: irregular.cpp /usr/include/stdio.h /usr/include/features.h \ - /usr/include/bits/predefs.h /usr/include/sys/cdefs.h \ - /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \ - /usr/include/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/predefs.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h \ - /usr/include/bits/types.h /usr/include/bits/typesizes.h \ - /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ - /usr/include/bits/stdio.h /usr/include/bits/stdio2.h \ - /usr/include/stdlib.h /usr/include/bits/waitflags.h \ - /usr/include/bits/waitstatus.h /usr/include/endian.h \ - /usr/include/bits/endian.h /usr/include/bits/byteswap.h \ - /usr/include/xlocale.h /usr/include/sys/types.h /usr/include/time.h \ - /usr/include/sys/select.h /usr/include/bits/select.h \ - /usr/include/bits/sigset.h /usr/include/bits/time.h \ - /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ - /usr/include/alloca.h /usr/include/bits/stdlib.h /usr/include/string.h \ - /usr/include/bits/string3.h irregular.h /usr/lib/openmpi/include/mpi.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h \ - /usr/include/c++/4.6/map /usr/include/c++/4.6/bits/stl_tree.h \ - /usr/include/c++/4.6/bits/stl_algobase.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/os_defines.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/cpu_defines.h \ - /usr/include/c++/4.6/bits/functexcept.h \ - /usr/include/c++/4.6/bits/exception_defines.h \ - /usr/include/c++/4.6/bits/cpp_type_traits.h \ - /usr/include/c++/4.6/ext/type_traits.h \ - /usr/include/c++/4.6/ext/numeric_traits.h \ - /usr/include/c++/4.6/bits/stl_pair.h /usr/include/c++/4.6/bits/move.h \ - /usr/include/c++/4.6/bits/concept_check.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_types.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/4.6/bits/stl_iterator.h \ - /usr/include/c++/4.6/debug/debug.h /usr/include/c++/4.6/bits/allocator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++allocator.h \ - /usr/include/c++/4.6/ext/new_allocator.h /usr/include/c++/4.6/new \ - /usr/include/c++/4.6/exception /usr/include/c++/4.6/bits/stl_function.h \ - /usr/include/c++/4.6/backward/binders.h \ - /usr/include/c++/4.6/bits/stl_map.h \ - /usr/include/c++/4.6/initializer_list \ - /usr/include/c++/4.6/bits/stl_multimap.h \ - /usr/include/c++/4.6/bits/range_access.h /usr/include/c++/4.6/utility \ - /usr/include/c++/4.6/bits/stl_relops.h /usr/include/c++/4.6/iostream \ - /usr/include/c++/4.6/ostream /usr/include/c++/4.6/ios \ - /usr/include/c++/4.6/iosfwd /usr/include/c++/4.6/bits/stringfwd.h \ - /usr/include/c++/4.6/bits/postypes.h /usr/include/c++/4.6/cwchar \ - /usr/include/bits/wchar.h /usr/include/bits/wchar2.h \ - /usr/include/c++/4.6/bits/char_traits.h \ - /usr/include/c++/4.6/bits/localefwd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++locale.h \ - /usr/include/c++/4.6/clocale /usr/include/locale.h \ - /usr/include/bits/locale.h /usr/include/c++/4.6/cctype \ - /usr/include/ctype.h /usr/include/c++/4.6/bits/ios_base.h \ - /usr/include/c++/4.6/ext/atomicity.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h /usr/include/bits/sched.h \ - /usr/include/signal.h /usr/include/bits/setjmp.h /usr/include/unistd.h \ - /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ - /usr/include/bits/confname.h /usr/include/getopt.h \ - /usr/include/bits/unistd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/atomic_word.h \ - /usr/include/c++/4.6/bits/locale_classes.h /usr/include/c++/4.6/string \ - /usr/include/c++/4.6/bits/ostream_insert.h \ - /usr/include/c++/4.6/bits/cxxabi_forced.h \ - /usr/include/c++/4.6/bits/basic_string.h \ - /usr/include/c++/4.6/bits/basic_string.tcc \ - /usr/include/c++/4.6/bits/locale_classes.tcc \ - /usr/include/c++/4.6/streambuf /usr/include/c++/4.6/bits/streambuf.tcc \ - /usr/include/c++/4.6/bits/basic_ios.h \ - /usr/include/c++/4.6/bits/locale_facets.h /usr/include/c++/4.6/cwctype \ - /usr/include/wctype.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_base.h \ - /usr/include/c++/4.6/bits/streambuf_iterator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_inline.h \ - /usr/include/c++/4.6/bits/locale_facets.tcc \ - /usr/include/c++/4.6/bits/basic_ios.tcc \ - /usr/include/c++/4.6/bits/ostream.tcc /usr/include/c++/4.6/istream \ - /usr/include/c++/4.6/bits/istream.tcc \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/constants.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/exception.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file_inln.h memory.h \ - error.h + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/sys/types.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/string.h \ + /usr/include/x86_64-linux-gnu/bits/string3.h irregular.h \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi.h \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi_portable_platform.h \ + memory.h error.h diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/irregular.o b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/irregular.o new file mode 100644 index 00000000..281a7039 Binary files /dev/null and b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/irregular.o differ diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/lammps_data_write.d b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/lammps_data_write.d index fb41e38b..557cb88d 100644 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/lammps_data_write.d +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/lammps_data_write.d @@ -1,114 +1,32 @@ lammps_data_write.o: lammps_data_write.cpp /usr/include/stdlib.h \ - /usr/include/features.h /usr/include/bits/predefs.h \ - /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \ - /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \ + /usr/include/features.h /usr/include/x86_64-linux-gnu/bits/predefs.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h \ - /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \ - /usr/include/endian.h /usr/include/bits/endian.h \ - /usr/include/bits/byteswap.h /usr/include/xlocale.h \ - /usr/include/sys/types.h /usr/include/bits/types.h \ - /usr/include/bits/typesizes.h /usr/include/time.h \ - /usr/include/sys/select.h /usr/include/bits/select.h \ - /usr/include/bits/sigset.h /usr/include/bits/time.h \ - /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \ - /usr/include/alloca.h /usr/include/bits/stdlib.h /usr/include/string.h \ - /usr/include/bits/string3.h lammps_data_write.h send2one.h \ - /usr/lib/openmpi/include/mpi.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h \ - /usr/include/c++/4.6/map /usr/include/c++/4.6/bits/stl_tree.h \ - /usr/include/c++/4.6/bits/stl_algobase.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/os_defines.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/cpu_defines.h \ - /usr/include/c++/4.6/bits/functexcept.h \ - /usr/include/c++/4.6/bits/exception_defines.h \ - /usr/include/c++/4.6/bits/cpp_type_traits.h \ - /usr/include/c++/4.6/ext/type_traits.h \ - /usr/include/c++/4.6/ext/numeric_traits.h \ - /usr/include/c++/4.6/bits/stl_pair.h /usr/include/c++/4.6/bits/move.h \ - /usr/include/c++/4.6/bits/concept_check.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_types.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/4.6/bits/stl_iterator.h \ - /usr/include/c++/4.6/debug/debug.h /usr/include/c++/4.6/bits/allocator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++allocator.h \ - /usr/include/c++/4.6/ext/new_allocator.h /usr/include/c++/4.6/new \ - /usr/include/c++/4.6/exception /usr/include/c++/4.6/bits/stl_function.h \ - /usr/include/c++/4.6/backward/binders.h \ - /usr/include/c++/4.6/bits/stl_map.h \ - /usr/include/c++/4.6/initializer_list \ - /usr/include/c++/4.6/bits/stl_multimap.h \ - /usr/include/c++/4.6/bits/range_access.h /usr/include/c++/4.6/utility \ - /usr/include/c++/4.6/bits/stl_relops.h \ - /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h /usr/include/stdio.h \ - /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ - /usr/include/bits/stdio.h /usr/include/bits/stdio2.h \ - /usr/include/c++/4.6/iostream /usr/include/c++/4.6/ostream \ - /usr/include/c++/4.6/ios /usr/include/c++/4.6/iosfwd \ - /usr/include/c++/4.6/bits/stringfwd.h \ - /usr/include/c++/4.6/bits/postypes.h /usr/include/c++/4.6/cwchar \ - /usr/include/bits/wchar.h /usr/include/bits/wchar2.h \ - /usr/include/c++/4.6/bits/char_traits.h \ - /usr/include/c++/4.6/bits/localefwd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++locale.h \ - /usr/include/c++/4.6/clocale /usr/include/locale.h \ - /usr/include/bits/locale.h /usr/include/c++/4.6/cctype \ - /usr/include/ctype.h /usr/include/c++/4.6/bits/ios_base.h \ - /usr/include/c++/4.6/ext/atomicity.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h /usr/include/bits/sched.h \ - /usr/include/signal.h /usr/include/bits/setjmp.h /usr/include/unistd.h \ - /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ - /usr/include/bits/confname.h /usr/include/getopt.h \ - /usr/include/bits/unistd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/atomic_word.h \ - /usr/include/c++/4.6/bits/locale_classes.h /usr/include/c++/4.6/string \ - /usr/include/c++/4.6/bits/ostream_insert.h \ - /usr/include/c++/4.6/bits/cxxabi_forced.h \ - /usr/include/c++/4.6/bits/basic_string.h \ - /usr/include/c++/4.6/bits/basic_string.tcc \ - /usr/include/c++/4.6/bits/locale_classes.tcc \ - /usr/include/c++/4.6/streambuf /usr/include/c++/4.6/bits/streambuf.tcc \ - /usr/include/c++/4.6/bits/basic_ios.h \ - /usr/include/c++/4.6/bits/locale_facets.h /usr/include/c++/4.6/cwctype \ - /usr/include/wctype.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_base.h \ - /usr/include/c++/4.6/bits/streambuf_iterator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_inline.h \ - /usr/include/c++/4.6/bits/locale_facets.tcc \ - /usr/include/c++/4.6/bits/basic_ios.tcc \ - /usr/include/c++/4.6/bits/ostream.tcc /usr/include/c++/4.6/istream \ - /usr/include/c++/4.6/bits/istream.tcc \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/constants.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/exception.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file_inln.h memory.h \ - error.h + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/string.h \ + /usr/include/x86_64-linux-gnu/bits/string3.h lammps_data_write.h \ + send2one.h \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi.h \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi_portable_platform.h \ + /usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h \ + /usr/include/wchar.h /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h memory.h error.h diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/lammps_data_write.o b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/lammps_data_write.o new file mode 100644 index 00000000..cc7f38a2 Binary files /dev/null and b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/lammps_data_write.o differ diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/libcouple.a b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/libcouple.a index e94f2ec1..02da51e5 100644 Binary files a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/libcouple.a and b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/libcouple.a differ diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2many.d b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2many.d index 10eda04a..f2ea4db0 100644 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2many.d +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2many.d @@ -1,14 +1,27 @@ -many2many.o: many2many.cpp /usr/lib/openmpi/include/mpi.h \ +many2many.o: many2many.cpp \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h \ - /usr/include/c++/4.6/map /usr/include/c++/4.6/bits/stl_tree.h \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi_portable_platform.h \ + /usr/include/stdio.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/bits/predefs.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h \ + /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h many2many.h irregular.h \ + memory.h error.h /usr/include/c++/4.6/map \ + /usr/include/c++/4.6/bits/stl_tree.h \ /usr/include/c++/4.6/bits/stl_algobase.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/os_defines.h \ - /usr/include/features.h /usr/include/bits/predefs.h \ - /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \ - /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/cpu_defines.h \ + /usr/include/c++/4.6/x86_64-linux-gnu/./bits/c++config.h \ + /usr/include/c++/4.6/x86_64-linux-gnu/./bits/os_defines.h \ + /usr/include/c++/4.6/x86_64-linux-gnu/./bits/cpu_defines.h \ /usr/include/c++/4.6/bits/functexcept.h \ /usr/include/c++/4.6/bits/exception_defines.h \ /usr/include/c++/4.6/bits/cpp_type_traits.h \ @@ -20,89 +33,11 @@ many2many.o: many2many.cpp /usr/lib/openmpi/include/mpi.h \ /usr/include/c++/4.6/bits/stl_iterator_base_funcs.h \ /usr/include/c++/4.6/bits/stl_iterator.h \ /usr/include/c++/4.6/debug/debug.h /usr/include/c++/4.6/bits/allocator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++allocator.h \ + /usr/include/c++/4.6/x86_64-linux-gnu/./bits/c++allocator.h \ /usr/include/c++/4.6/ext/new_allocator.h /usr/include/c++/4.6/new \ /usr/include/c++/4.6/exception /usr/include/c++/4.6/bits/stl_function.h \ /usr/include/c++/4.6/backward/binders.h \ /usr/include/c++/4.6/bits/stl_map.h \ /usr/include/c++/4.6/initializer_list \ /usr/include/c++/4.6/bits/stl_multimap.h \ - /usr/include/c++/4.6/bits/range_access.h /usr/include/c++/4.6/utility \ - /usr/include/c++/4.6/bits/stl_relops.h \ - /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h /usr/include/stdio.h \ - /usr/include/bits/types.h /usr/include/bits/typesizes.h \ - /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ - /usr/include/bits/stdio.h /usr/include/bits/stdio2.h \ - /usr/include/c++/4.6/iostream /usr/include/c++/4.6/ostream \ - /usr/include/c++/4.6/ios /usr/include/c++/4.6/iosfwd \ - /usr/include/c++/4.6/bits/stringfwd.h \ - /usr/include/c++/4.6/bits/postypes.h /usr/include/c++/4.6/cwchar \ - /usr/include/bits/wchar.h /usr/include/xlocale.h \ - /usr/include/bits/wchar2.h /usr/include/c++/4.6/bits/char_traits.h \ - /usr/include/c++/4.6/bits/localefwd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++locale.h \ - /usr/include/c++/4.6/clocale /usr/include/locale.h \ - /usr/include/bits/locale.h /usr/include/c++/4.6/cctype \ - /usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \ - /usr/include/bits/byteswap.h /usr/include/c++/4.6/bits/ios_base.h \ - /usr/include/c++/4.6/ext/atomicity.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h /usr/include/time.h \ - /usr/include/bits/sched.h /usr/include/bits/time.h /usr/include/signal.h \ - /usr/include/bits/sigset.h /usr/include/bits/pthreadtypes.h \ - /usr/include/bits/setjmp.h /usr/include/unistd.h \ - /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ - /usr/include/bits/confname.h /usr/include/getopt.h \ - /usr/include/bits/unistd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/atomic_word.h \ - /usr/include/c++/4.6/bits/locale_classes.h /usr/include/c++/4.6/string \ - /usr/include/c++/4.6/bits/ostream_insert.h \ - /usr/include/c++/4.6/bits/cxxabi_forced.h \ - /usr/include/c++/4.6/bits/basic_string.h \ - /usr/include/c++/4.6/bits/basic_string.tcc \ - /usr/include/c++/4.6/bits/locale_classes.tcc \ - /usr/include/c++/4.6/streambuf /usr/include/c++/4.6/bits/streambuf.tcc \ - /usr/include/c++/4.6/bits/basic_ios.h \ - /usr/include/c++/4.6/bits/locale_facets.h /usr/include/c++/4.6/cwctype \ - /usr/include/wctype.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_base.h \ - /usr/include/c++/4.6/bits/streambuf_iterator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_inline.h \ - /usr/include/c++/4.6/bits/locale_facets.tcc \ - /usr/include/c++/4.6/bits/basic_ios.tcc \ - /usr/include/c++/4.6/bits/ostream.tcc /usr/include/c++/4.6/istream \ - /usr/include/c++/4.6/bits/istream.tcc \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/constants.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/exception.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions_inln.h \ - /usr/include/string.h /usr/include/bits/string3.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file_inln.h many2many.h \ - irregular.h memory.h error.h + /usr/include/c++/4.6/bits/range_access.h diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2many.o b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2many.o new file mode 100644 index 00000000..107468c4 Binary files /dev/null and b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2many.o differ diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2one.d b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2one.d index 4ba1adc3..e0ec5ef6 100644 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2one.d +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2one.d @@ -1,112 +1,31 @@ -many2one.o: many2one.cpp /usr/lib/openmpi/include/mpi.h \ +many2one.o: many2one.cpp \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h \ - /usr/include/c++/4.6/map /usr/include/c++/4.6/bits/stl_tree.h \ - /usr/include/c++/4.6/bits/stl_algobase.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/os_defines.h \ - /usr/include/features.h /usr/include/bits/predefs.h \ - /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \ - /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/cpu_defines.h \ - /usr/include/c++/4.6/bits/functexcept.h \ - /usr/include/c++/4.6/bits/exception_defines.h \ - /usr/include/c++/4.6/bits/cpp_type_traits.h \ - /usr/include/c++/4.6/ext/type_traits.h \ - /usr/include/c++/4.6/ext/numeric_traits.h \ - /usr/include/c++/4.6/bits/stl_pair.h /usr/include/c++/4.6/bits/move.h \ - /usr/include/c++/4.6/bits/concept_check.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_types.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/4.6/bits/stl_iterator.h \ - /usr/include/c++/4.6/debug/debug.h /usr/include/c++/4.6/bits/allocator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++allocator.h \ - /usr/include/c++/4.6/ext/new_allocator.h /usr/include/c++/4.6/new \ - /usr/include/c++/4.6/exception /usr/include/c++/4.6/bits/stl_function.h \ - /usr/include/c++/4.6/backward/binders.h \ - /usr/include/c++/4.6/bits/stl_map.h \ - /usr/include/c++/4.6/initializer_list \ - /usr/include/c++/4.6/bits/stl_multimap.h \ - /usr/include/c++/4.6/bits/range_access.h /usr/include/c++/4.6/utility \ - /usr/include/c++/4.6/bits/stl_relops.h \ - /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h /usr/include/stdio.h \ - /usr/include/bits/types.h /usr/include/bits/typesizes.h \ - /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ - /usr/include/bits/stdio.h /usr/include/bits/stdio2.h \ - /usr/include/c++/4.6/iostream /usr/include/c++/4.6/ostream \ - /usr/include/c++/4.6/ios /usr/include/c++/4.6/iosfwd \ - /usr/include/c++/4.6/bits/stringfwd.h \ - /usr/include/c++/4.6/bits/postypes.h /usr/include/c++/4.6/cwchar \ - /usr/include/bits/wchar.h /usr/include/xlocale.h \ - /usr/include/bits/wchar2.h /usr/include/c++/4.6/bits/char_traits.h \ - /usr/include/c++/4.6/bits/localefwd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++locale.h \ - /usr/include/c++/4.6/clocale /usr/include/locale.h \ - /usr/include/bits/locale.h /usr/include/c++/4.6/cctype \ - /usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \ - /usr/include/bits/byteswap.h /usr/include/c++/4.6/bits/ios_base.h \ - /usr/include/c++/4.6/ext/atomicity.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h /usr/include/time.h \ - /usr/include/bits/sched.h /usr/include/bits/time.h /usr/include/signal.h \ - /usr/include/bits/sigset.h /usr/include/bits/pthreadtypes.h \ - /usr/include/bits/setjmp.h /usr/include/unistd.h \ - /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ - /usr/include/bits/confname.h /usr/include/getopt.h \ - /usr/include/bits/unistd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/atomic_word.h \ - /usr/include/c++/4.6/bits/locale_classes.h /usr/include/c++/4.6/string \ - /usr/include/c++/4.6/bits/ostream_insert.h \ - /usr/include/c++/4.6/bits/cxxabi_forced.h \ - /usr/include/c++/4.6/bits/basic_string.h \ - /usr/include/c++/4.6/bits/basic_string.tcc \ - /usr/include/c++/4.6/bits/locale_classes.tcc \ - /usr/include/c++/4.6/streambuf /usr/include/c++/4.6/bits/streambuf.tcc \ - /usr/include/c++/4.6/bits/basic_ios.h \ - /usr/include/c++/4.6/bits/locale_facets.h /usr/include/c++/4.6/cwctype \ - /usr/include/wctype.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_base.h \ - /usr/include/c++/4.6/bits/streambuf_iterator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_inline.h \ - /usr/include/c++/4.6/bits/locale_facets.tcc \ - /usr/include/c++/4.6/bits/basic_ios.tcc \ - /usr/include/c++/4.6/bits/ostream.tcc /usr/include/c++/4.6/istream \ - /usr/include/c++/4.6/bits/istream.tcc \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/constants.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/exception.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions_inln.h \ - /usr/include/string.h /usr/include/bits/string3.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file_inln.h \ - /usr/include/stdlib.h /usr/include/bits/waitflags.h \ - /usr/include/bits/waitstatus.h /usr/include/sys/types.h \ - /usr/include/sys/select.h /usr/include/bits/select.h \ - /usr/include/sys/sysmacros.h /usr/include/alloca.h \ - /usr/include/bits/stdlib.h many2one.h memory.h + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi_portable_platform.h \ + /usr/include/stdio.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/bits/predefs.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/wchar.h \ + /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/sys/types.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h many2one.h memory.h diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2one.o b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2one.o new file mode 100644 index 00000000..a18b718f Binary files /dev/null and b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/many2one.o differ diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/memory.d b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/memory.d index 7d2e3bea..ca00442f 100644 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/memory.d +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/memory.d @@ -1,112 +1,31 @@ -memory.o: memory.cpp /usr/lib/openmpi/include/mpi.h \ +memory.o: memory.cpp \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h \ - /usr/include/c++/4.6/map /usr/include/c++/4.6/bits/stl_tree.h \ - /usr/include/c++/4.6/bits/stl_algobase.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/os_defines.h \ - /usr/include/features.h /usr/include/bits/predefs.h \ - /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \ - /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/cpu_defines.h \ - /usr/include/c++/4.6/bits/functexcept.h \ - /usr/include/c++/4.6/bits/exception_defines.h \ - /usr/include/c++/4.6/bits/cpp_type_traits.h \ - /usr/include/c++/4.6/ext/type_traits.h \ - /usr/include/c++/4.6/ext/numeric_traits.h \ - /usr/include/c++/4.6/bits/stl_pair.h /usr/include/c++/4.6/bits/move.h \ - /usr/include/c++/4.6/bits/concept_check.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_types.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/4.6/bits/stl_iterator.h \ - /usr/include/c++/4.6/debug/debug.h /usr/include/c++/4.6/bits/allocator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++allocator.h \ - /usr/include/c++/4.6/ext/new_allocator.h /usr/include/c++/4.6/new \ - /usr/include/c++/4.6/exception /usr/include/c++/4.6/bits/stl_function.h \ - /usr/include/c++/4.6/backward/binders.h \ - /usr/include/c++/4.6/bits/stl_map.h \ - /usr/include/c++/4.6/initializer_list \ - /usr/include/c++/4.6/bits/stl_multimap.h \ - /usr/include/c++/4.6/bits/range_access.h /usr/include/c++/4.6/utility \ - /usr/include/c++/4.6/bits/stl_relops.h \ - /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h /usr/include/stdio.h \ - /usr/include/bits/types.h /usr/include/bits/typesizes.h \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi_portable_platform.h \ + /usr/include/stdlib.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/bits/predefs.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/stdio.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ - /usr/include/bits/stdio.h /usr/include/bits/stdio2.h \ - /usr/include/c++/4.6/iostream /usr/include/c++/4.6/ostream \ - /usr/include/c++/4.6/ios /usr/include/c++/4.6/iosfwd \ - /usr/include/c++/4.6/bits/stringfwd.h \ - /usr/include/c++/4.6/bits/postypes.h /usr/include/c++/4.6/cwchar \ - /usr/include/bits/wchar.h /usr/include/xlocale.h \ - /usr/include/bits/wchar2.h /usr/include/c++/4.6/bits/char_traits.h \ - /usr/include/c++/4.6/bits/localefwd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++locale.h \ - /usr/include/c++/4.6/clocale /usr/include/locale.h \ - /usr/include/bits/locale.h /usr/include/c++/4.6/cctype \ - /usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \ - /usr/include/bits/byteswap.h /usr/include/c++/4.6/bits/ios_base.h \ - /usr/include/c++/4.6/ext/atomicity.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h /usr/include/time.h \ - /usr/include/bits/sched.h /usr/include/bits/time.h /usr/include/signal.h \ - /usr/include/bits/sigset.h /usr/include/bits/pthreadtypes.h \ - /usr/include/bits/setjmp.h /usr/include/unistd.h \ - /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ - /usr/include/bits/confname.h /usr/include/getopt.h \ - /usr/include/bits/unistd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/atomic_word.h \ - /usr/include/c++/4.6/bits/locale_classes.h /usr/include/c++/4.6/string \ - /usr/include/c++/4.6/bits/ostream_insert.h \ - /usr/include/c++/4.6/bits/cxxabi_forced.h \ - /usr/include/c++/4.6/bits/basic_string.h \ - /usr/include/c++/4.6/bits/basic_string.tcc \ - /usr/include/c++/4.6/bits/locale_classes.tcc \ - /usr/include/c++/4.6/streambuf /usr/include/c++/4.6/bits/streambuf.tcc \ - /usr/include/c++/4.6/bits/basic_ios.h \ - /usr/include/c++/4.6/bits/locale_facets.h /usr/include/c++/4.6/cwctype \ - /usr/include/wctype.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_base.h \ - /usr/include/c++/4.6/bits/streambuf_iterator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_inline.h \ - /usr/include/c++/4.6/bits/locale_facets.tcc \ - /usr/include/c++/4.6/bits/basic_ios.tcc \ - /usr/include/c++/4.6/bits/ostream.tcc /usr/include/c++/4.6/istream \ - /usr/include/c++/4.6/bits/istream.tcc \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/constants.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/exception.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions_inln.h \ - /usr/include/string.h /usr/include/bits/string3.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file_inln.h \ - /usr/include/stdlib.h /usr/include/bits/waitflags.h \ - /usr/include/bits/waitstatus.h /usr/include/sys/types.h \ - /usr/include/sys/select.h /usr/include/bits/select.h \ - /usr/include/sys/sysmacros.h /usr/include/alloca.h \ - /usr/include/bits/stdlib.h memory.h error.h + /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h memory.h error.h diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/memory.o b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/memory.o new file mode 100644 index 00000000..d7417bcf Binary files /dev/null and b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/memory.o differ diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/one2many.d b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/one2many.d index 54bfe15a..801eb5db 100644 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/one2many.d +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/one2many.d @@ -1,14 +1,17 @@ -one2many.o: one2many.cpp /usr/lib/openmpi/include/mpi.h \ +one2many.o: one2many.cpp \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h \ - /usr/include/c++/4.6/map /usr/include/c++/4.6/bits/stl_tree.h \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi_portable_platform.h \ + one2many.h /usr/include/c++/4.6/map /usr/include/c++/4.6/bits/stl_tree.h \ /usr/include/c++/4.6/bits/stl_algobase.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/os_defines.h \ - /usr/include/features.h /usr/include/bits/predefs.h \ - /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \ - /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/cpu_defines.h \ + /usr/include/c++/4.6/x86_64-linux-gnu/./bits/c++config.h \ + /usr/include/c++/4.6/x86_64-linux-gnu/./bits/os_defines.h \ + /usr/include/features.h /usr/include/x86_64-linux-gnu/bits/predefs.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/c++/4.6/x86_64-linux-gnu/./bits/cpu_defines.h \ /usr/include/c++/4.6/bits/functexcept.h \ /usr/include/c++/4.6/bits/exception_defines.h \ /usr/include/c++/4.6/bits/cpp_type_traits.h \ @@ -20,89 +23,11 @@ one2many.o: one2many.cpp /usr/lib/openmpi/include/mpi.h \ /usr/include/c++/4.6/bits/stl_iterator_base_funcs.h \ /usr/include/c++/4.6/bits/stl_iterator.h \ /usr/include/c++/4.6/debug/debug.h /usr/include/c++/4.6/bits/allocator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++allocator.h \ + /usr/include/c++/4.6/x86_64-linux-gnu/./bits/c++allocator.h \ /usr/include/c++/4.6/ext/new_allocator.h /usr/include/c++/4.6/new \ /usr/include/c++/4.6/exception /usr/include/c++/4.6/bits/stl_function.h \ /usr/include/c++/4.6/backward/binders.h \ /usr/include/c++/4.6/bits/stl_map.h \ /usr/include/c++/4.6/initializer_list \ /usr/include/c++/4.6/bits/stl_multimap.h \ - /usr/include/c++/4.6/bits/range_access.h /usr/include/c++/4.6/utility \ - /usr/include/c++/4.6/bits/stl_relops.h \ - /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h /usr/include/stdio.h \ - /usr/include/bits/types.h /usr/include/bits/typesizes.h \ - /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ - /usr/include/bits/stdio.h /usr/include/bits/stdio2.h \ - /usr/include/c++/4.6/iostream /usr/include/c++/4.6/ostream \ - /usr/include/c++/4.6/ios /usr/include/c++/4.6/iosfwd \ - /usr/include/c++/4.6/bits/stringfwd.h \ - /usr/include/c++/4.6/bits/postypes.h /usr/include/c++/4.6/cwchar \ - /usr/include/bits/wchar.h /usr/include/xlocale.h \ - /usr/include/bits/wchar2.h /usr/include/c++/4.6/bits/char_traits.h \ - /usr/include/c++/4.6/bits/localefwd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++locale.h \ - /usr/include/c++/4.6/clocale /usr/include/locale.h \ - /usr/include/bits/locale.h /usr/include/c++/4.6/cctype \ - /usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \ - /usr/include/bits/byteswap.h /usr/include/c++/4.6/bits/ios_base.h \ - /usr/include/c++/4.6/ext/atomicity.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h /usr/include/time.h \ - /usr/include/bits/sched.h /usr/include/bits/time.h /usr/include/signal.h \ - /usr/include/bits/sigset.h /usr/include/bits/pthreadtypes.h \ - /usr/include/bits/setjmp.h /usr/include/unistd.h \ - /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ - /usr/include/bits/confname.h /usr/include/getopt.h \ - /usr/include/bits/unistd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/atomic_word.h \ - /usr/include/c++/4.6/bits/locale_classes.h /usr/include/c++/4.6/string \ - /usr/include/c++/4.6/bits/ostream_insert.h \ - /usr/include/c++/4.6/bits/cxxabi_forced.h \ - /usr/include/c++/4.6/bits/basic_string.h \ - /usr/include/c++/4.6/bits/basic_string.tcc \ - /usr/include/c++/4.6/bits/locale_classes.tcc \ - /usr/include/c++/4.6/streambuf /usr/include/c++/4.6/bits/streambuf.tcc \ - /usr/include/c++/4.6/bits/basic_ios.h \ - /usr/include/c++/4.6/bits/locale_facets.h /usr/include/c++/4.6/cwctype \ - /usr/include/wctype.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_base.h \ - /usr/include/c++/4.6/bits/streambuf_iterator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_inline.h \ - /usr/include/c++/4.6/bits/locale_facets.tcc \ - /usr/include/c++/4.6/bits/basic_ios.tcc \ - /usr/include/c++/4.6/bits/ostream.tcc /usr/include/c++/4.6/istream \ - /usr/include/c++/4.6/bits/istream.tcc \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/constants.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/exception.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions_inln.h \ - /usr/include/string.h /usr/include/bits/string3.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file_inln.h one2many.h \ - memory.h + /usr/include/c++/4.6/bits/range_access.h memory.h diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/one2many.o b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/one2many.o new file mode 100644 index 00000000..9c59bd05 Binary files /dev/null and b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/one2many.o differ diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/send2one.d b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/send2one.d index bef8bc19..e9176652 100644 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/send2one.d +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/send2one.d @@ -1,112 +1,31 @@ -send2one.o: send2one.cpp /usr/lib/openmpi/include/mpi.h \ +send2one.o: send2one.cpp \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi.h \ /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/mpicxx.h \ - /usr/include/c++/4.6/map /usr/include/c++/4.6/bits/stl_tree.h \ - /usr/include/c++/4.6/bits/stl_algobase.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/os_defines.h \ - /usr/include/features.h /usr/include/bits/predefs.h \ - /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h \ - /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/cpu_defines.h \ - /usr/include/c++/4.6/bits/functexcept.h \ - /usr/include/c++/4.6/bits/exception_defines.h \ - /usr/include/c++/4.6/bits/cpp_type_traits.h \ - /usr/include/c++/4.6/ext/type_traits.h \ - /usr/include/c++/4.6/ext/numeric_traits.h \ - /usr/include/c++/4.6/bits/stl_pair.h /usr/include/c++/4.6/bits/move.h \ - /usr/include/c++/4.6/bits/concept_check.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_types.h \ - /usr/include/c++/4.6/bits/stl_iterator_base_funcs.h \ - /usr/include/c++/4.6/bits/stl_iterator.h \ - /usr/include/c++/4.6/debug/debug.h /usr/include/c++/4.6/bits/allocator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++allocator.h \ - /usr/include/c++/4.6/ext/new_allocator.h /usr/include/c++/4.6/new \ - /usr/include/c++/4.6/exception /usr/include/c++/4.6/bits/stl_function.h \ - /usr/include/c++/4.6/backward/binders.h \ - /usr/include/c++/4.6/bits/stl_map.h \ - /usr/include/c++/4.6/initializer_list \ - /usr/include/c++/4.6/bits/stl_multimap.h \ - /usr/include/c++/4.6/bits/range_access.h /usr/include/c++/4.6/utility \ - /usr/include/c++/4.6/bits/stl_relops.h \ - /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h /usr/include/stdio.h \ - /usr/include/bits/types.h /usr/include/bits/typesizes.h \ + /home/goniva/OpenFOAM/ThirdParty-2.2.x/platforms/linux64Gcc/openmpi-1.6.3/include/mpi_portable_platform.h \ + /usr/include/stdlib.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/bits/predefs.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/stdio.h \ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \ - /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \ - /usr/include/bits/stdio.h /usr/include/bits/stdio2.h \ - /usr/include/c++/4.6/iostream /usr/include/c++/4.6/ostream \ - /usr/include/c++/4.6/ios /usr/include/c++/4.6/iosfwd \ - /usr/include/c++/4.6/bits/stringfwd.h \ - /usr/include/c++/4.6/bits/postypes.h /usr/include/c++/4.6/cwchar \ - /usr/include/bits/wchar.h /usr/include/xlocale.h \ - /usr/include/bits/wchar2.h /usr/include/c++/4.6/bits/char_traits.h \ - /usr/include/c++/4.6/bits/localefwd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++locale.h \ - /usr/include/c++/4.6/clocale /usr/include/locale.h \ - /usr/include/bits/locale.h /usr/include/c++/4.6/cctype \ - /usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \ - /usr/include/bits/byteswap.h /usr/include/c++/4.6/bits/ios_base.h \ - /usr/include/c++/4.6/ext/atomicity.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr-default.h \ - /usr/include/pthread.h /usr/include/sched.h /usr/include/time.h \ - /usr/include/bits/sched.h /usr/include/bits/time.h /usr/include/signal.h \ - /usr/include/bits/sigset.h /usr/include/bits/pthreadtypes.h \ - /usr/include/bits/setjmp.h /usr/include/unistd.h \ - /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \ - /usr/include/bits/confname.h /usr/include/getopt.h \ - /usr/include/bits/unistd.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/atomic_word.h \ - /usr/include/c++/4.6/bits/locale_classes.h /usr/include/c++/4.6/string \ - /usr/include/c++/4.6/bits/ostream_insert.h \ - /usr/include/c++/4.6/bits/cxxabi_forced.h \ - /usr/include/c++/4.6/bits/basic_string.h \ - /usr/include/c++/4.6/bits/basic_string.tcc \ - /usr/include/c++/4.6/bits/locale_classes.tcc \ - /usr/include/c++/4.6/streambuf /usr/include/c++/4.6/bits/streambuf.tcc \ - /usr/include/c++/4.6/bits/basic_ios.h \ - /usr/include/c++/4.6/bits/locale_facets.h /usr/include/c++/4.6/cwctype \ - /usr/include/wctype.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_base.h \ - /usr/include/c++/4.6/bits/streambuf_iterator.h \ - /usr/include/c++/4.6/x86_64-linux-gnu/bits/ctype_inline.h \ - /usr/include/c++/4.6/bits/locale_facets.tcc \ - /usr/include/c++/4.6/bits/basic_ios.tcc \ - /usr/include/c++/4.6/bits/ostream.tcc /usr/include/c++/4.6/istream \ - /usr/include/c++/4.6/bits/istream.tcc \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/constants.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/exception.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/datatype_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/functions_inln.h \ - /usr/include/string.h /usr/include/bits/string3.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/request_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/comm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intracomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/topology_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/intercomm_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/group_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/op_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/errhandler_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/status_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/info_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/win_inln.h \ - /usr/lib/openmpi/include/openmpi/ompi/mpi/cxx/file_inln.h \ - /usr/include/stdlib.h /usr/include/bits/waitflags.h \ - /usr/include/bits/waitstatus.h /usr/include/sys/types.h \ - /usr/include/sys/select.h /usr/include/bits/select.h \ - /usr/include/sys/sysmacros.h /usr/include/alloca.h \ - /usr/include/bits/stdlib.h send2one.h memory.h error.h + /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h send2one.h memory.h error.h diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/send2one.o b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/send2one.o new file mode 100644 index 00000000..8e4b011d Binary files /dev/null and b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/library/send2one.o differ diff --git a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/twoWayM2M.C b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/twoWayM2M.C index b2f60901..d226ec94 100644 --- a/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/twoWayM2M.C +++ b/src/lagrangian/cfdemParticle/subModels/dataExchangeModel/twoWayM2M/twoWayM2M.C @@ -259,7 +259,7 @@ void twoWayM2M::giveData //} //================== }else{ - Warning << "not implemented!"<exchange(pos_lammpsSync ? pos_lammpsSync[0] : NULL, tmp_); @@ -551,8 +561,8 @@ void Foam::twoWayM2M::syncIDs() const } MPI_Barrier(MPI_COMM_WORLD); Pout << couplingStep_ << "st nlocal_lammps_=" << nlocal_lammps_ << endl; - Pout << couplingStep_ << "st nlocal_foam_=" << nlocal_foam_ << endl; - //=======================================================================*/ + Pout << couplingStep_ << "st nlocal_foam_=" << nlocal_foam_ << endl;*/ + //======================================================================= // correct mapping particleCloud_.clockM().start(11,"setup_Comm"); @@ -565,20 +575,25 @@ void Foam::twoWayM2M::syncIDs() const lmp2foam_vec_ = new Many2Many(MPI_COMM_WORLD); foam2lmp_vec_ = new Many2Many(MPI_COMM_WORLD); - if(firstRun_) + if(firstRun_ || particleLost_) { lmp2foam_->setup(nlocal_lammps_,id_lammps_,nlocal_foam_,id_foam_); lmp2foam_vec_->setup(nlocal_lammps_*3,id_lammpsVec_,nlocal_foam_*3,id_foamVec_); foam2lmp_vec_->setup(nlocal_foam_*3,id_foamVec_,nlocal_lammps_*3,id_lammpsVec_); - id_lammps_=NULL; // free pointer from LIG - pos_lammps_ = NULL; // free pointer from LIG }else { lmp2foam_->setup(nlocal_lammps_,id_lammpsSync,nlocal_foam_,id_foam_); lmp2foam_vec_->setup(nlocal_lammps_*3,id_lammpsVec_,nlocal_foam_*3,id_foamVec_); foam2lmp_vec_->setup(nlocal_foam_*3,id_foamVec_,nlocal_lammps_*3,id_lammpsVec_); } + id_lammps_=NULL; // free pointer from LIG + id_lammpsSync=NULL; // free pointer from LIG + pos_lammps_ = NULL; // free pointer from LIG + particleCloud_.clockM().stop("setup_Comm"); + +//MPI_Barrier(MPI_COMM_WORLD); +//Info << "update communication - done." << endl; } void Foam::twoWayM2M::locateParticle(int* id_lammpsSync) const @@ -632,6 +647,7 @@ void Foam::twoWayM2M::locateParticle(int* id_lammpsSync) const nlocal_foam_ += 1; //Pout << couplingStep_ << "st stage1 found particle at pos=" << pos << " ,id_lammps_[i]=" << id_lammps_[i] << endl; + } else { @@ -796,7 +812,7 @@ void Foam::twoWayM2M::locateParticle(int* id_lammpsSync) const } int nlocal_foam_lostAll = LAMMPS_NS::MPI_Allgather_Vector(lost_pos_, nlocal_foam_lost_*3, lost_posAll, MPI_COMM_WORLD)/3; // new[] für lost_posAll!!! LAMMPS_NS::MPI_Allgather_Vector(id_foamLost_, nlocal_foam_lost_, id_foamLostAll, MPI_COMM_WORLD); - //Info << couplingStep_ << "st nlocal_foam_lostAll=" << nlocal_foam_lostAll << endl; + Info << couplingStep_ << "st nlocal_foam_lostAll=" << nlocal_foam_lostAll << endl; // locate lost particles for (int i = 0; i < nlocal_foam_lostAll; i++) @@ -847,14 +863,14 @@ void Foam::twoWayM2M::locateParticle(int* id_lammpsSync) const { // a particle was found nowhere particleLost_=true; - Info << "running in particleLost_ mode" << endl; // delete liggghts particles which were not found from comm for (int j=0;j vValues; - vValues.clear(); - vValues.append(force); //first entry must the be the force - - Field sValues; - sValues.clear(); - sValues.append(pow(dp,3)/6*M_PI); //other are debug - - particleCloud_.probeM().writeProbe(index, sValues, vValues); + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(force); //first entry must the be the force + sValues.append(pow(dp,3)/6*M_PI); + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } } if(!treatDEM_) diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/ArchimedesIB/ArchimedesIB.C b/src/lagrangian/cfdemParticle/subModels/forceModel/ArchimedesIB/ArchimedesIB.C index 21b7cca9..d2ab3da3 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/ArchimedesIB/ArchimedesIB.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/ArchimedesIB/ArchimedesIB.C @@ -104,9 +104,7 @@ void ArchimedesIB::setForce() const { vector force; - //set probeModel parameters for this force model - particleCloud_.probeM().setOutputFile(); - particleCloud_.probeM().setCounter(); + #include "setupProbeModel.H" for(int index = 0;index < particleCloud_.numberOfParticles(); ++index) { @@ -124,14 +122,12 @@ void ArchimedesIB::setForce() const } //Set value fields and write the probe - Field vValues; - vValues.clear(); - vValues.append(force); //first entry must the be the force - - Field sValues; - sValues.clear(); - - particleCloud_.probeM().writeProbe(index, sValues, vValues); + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(force); //first entry must the be the force + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } // set force on particle if(twoDimensional_) Warning<<"ArchimedesIB model doesn't work for 2D right now!!\n"<< endl; diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/DiFeliceDrag/DiFeliceDrag.C b/src/lagrangian/cfdemParticle/subModels/forceModel/DiFeliceDrag/DiFeliceDrag.C index 7ff82c9f..abf2ef58 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/DiFeliceDrag/DiFeliceDrag.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/DiFeliceDrag/DiFeliceDrag.C @@ -115,7 +115,6 @@ void DiFeliceDrag::setForce() const vector Ufluid(0,0,0); vector drag(0,0,0); label cellI=0; - vector Us(0,0,0); vector Ur(0,0,0); scalar ds(0); @@ -128,9 +127,7 @@ void DiFeliceDrag::setForce() const interpolationCellPoint voidfractionInterpolator_(voidfraction_); interpolationCellPoint UInterpolator_(U_); - //set probeModel parameters for this force model - particleCloud_.probeM().setOutputFile(); - particleCloud_.probeM().setCounter(); + #include "setupProbeModel.H" for(int index = 0;index < particleCloud_.numberOfParticles(); index++) { @@ -149,7 +146,7 @@ void DiFeliceDrag::setForce() const Ufluid = UInterpolator_.interpolate(position,cellI); }else { - voidfraction = particleCloud_.voidfraction(index); + voidfraction = voidfraction_[cellI]; Ufluid = U_[cellI]; } @@ -182,32 +179,29 @@ void DiFeliceDrag::setForce() const if(verbose_ && index >100 && index <102) { - Info << "index = " << index << endl; - Info << "Us = " << Us << endl; - Info << "Ur = " << Ur << endl; - Info << "ds = " << ds << endl; - Info << "rho = " << rho << endl; - Info << "nuf = " << nuf << endl; - Info << "voidfraction = " << voidfraction << endl; - Info << "Rep = " << Rep << endl; - Info << "Cd = " << Cd << endl; - Info << "drag = " << drag << endl; + Pout << "index = " << index << endl; + Pout << "Us = " << Us << endl; + Pout << "Ur = " << Ur << endl; + Pout << "ds = " << ds << endl; + Pout << "rho = " << rho << endl; + Pout << "nuf = " << nuf << endl; + Pout << "voidfraction = " << voidfraction << endl; + Pout << "Rep = " << Rep << endl; + Pout << "Cd = " << Cd << endl; + Pout << "drag = " << drag << endl; } //Set value fields and write the probe - Field vValues; - vValues.clear(); - vValues.append(drag); //first entry must the be the force - vValues.append(Ur); //other are debug - - Field sValues; - sValues.clear(); - sValues.append(Rep); //other are debug - sValues.append(Cd); //other are debug - sValues.append(voidfraction); //other are debug - - particleCloud_.probeM().writeProbe(index, sValues, vValues); - + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(drag); //first entry must the be the force + vValues.append(Ur); + sValues.append(Rep); + sValues.append(Cd); + sValues.append(voidfraction); + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } } // set force on particle if(treatExplicit_) for(int j=0;j<3;j++) expForces()[index][j] += drag[j]; diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/GidaspowDrag/GidaspowDrag.C b/src/lagrangian/cfdemParticle/subModels/forceModel/GidaspowDrag/GidaspowDrag.C index d2a2a37a..bd7337ad 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/GidaspowDrag/GidaspowDrag.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/GidaspowDrag/GidaspowDrag.C @@ -67,7 +67,8 @@ GidaspowDrag::GidaspowDrag velFieldName_(propsDict_.lookup("velFieldName")), U_(sm.mesh().lookupObject (velFieldName_)), densityFieldName_(propsDict_.lookup("densityFieldName")), - rho_(sm.mesh().lookupObject (densityFieldName_)) + rho_(sm.mesh().lookupObject (densityFieldName_)), + phi_(readScalar(propsDict_.lookup("phi"))) { //Append the field names to be probed particleCloud_.probeM().initialize(typeName, "gidaspowDrag.logDat"); @@ -100,9 +101,7 @@ void GidaspowDrag::setForce() const const volScalarField& nufField = particleCloud_.turbulence().nu(); #endif - //set probeModel parameters for this force model - particleCloud_.probeM().setOutputFile(); - particleCloud_.probeM().setCounter(); + #include "setupProbeModel.H" for(int index = 0;index < particleCloud_.numberOfParticles(); ++index) { @@ -116,7 +115,7 @@ void GidaspowDrag::setForce() const vector Us = particleCloud_.velocity(index); vector Ur = U_[cellI]-Us; scalar magUr = mag(Ur); - scalar ds = 2*particleCloud_.radius(index); + scalar ds = 2*particleCloud_.radius(index)*phi_; scalar voidfraction = particleCloud_.voidfraction(index); scalar rho = rho_[cellI]; scalar nuf = nufField[cellI]; @@ -149,18 +148,15 @@ void GidaspowDrag::setForce() const //Set value fields and write the probe - Field vValues; - vValues.clear(); - vValues.append(drag); //first entry must the be the force - vValues.append(Ur); //other are debug - - Field sValues; - sValues.clear(); - sValues.append(KslLag); //other are debug - sValues.append(voidfraction); //other are debug - - particleCloud_.probeM().writeProbe(index, sValues, vValues); - + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(drag); //first entry must the be the force + vValues.append(Ur); + sValues.append(KslLag); + sValues.append(voidfraction); + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } } // set force on particle diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/GidaspowDrag/GidaspowDrag.H b/src/lagrangian/cfdemParticle/subModels/forceModel/GidaspowDrag/GidaspowDrag.H index 44319b43..c8c0ef1b 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/GidaspowDrag/GidaspowDrag.H +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/GidaspowDrag/GidaspowDrag.H @@ -69,6 +69,8 @@ private: const volScalarField& rho_; + const scalar phi_; + public: //- Runtime type information diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/KochHillDrag/KochHillDrag.C b/src/lagrangian/cfdemParticle/subModels/forceModel/KochHillDrag/KochHillDrag.C index 8956fede..56652cea 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/KochHillDrag/KochHillDrag.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/KochHillDrag/KochHillDrag.C @@ -144,9 +144,7 @@ void KochHillDrag::setForce() const interpolationCellPoint voidfractionInterpolator_(voidfraction_); interpolationCellPoint UInterpolator_(U_); - //set probeModel parameters for this force model - particleCloud_.probeM().setOutputFile(); - particleCloud_.probeM().setCounter(); + #include "setupProbeModel.H" for(int index = 0;index < particleCloud_.numberOfParticles(); index++) { @@ -171,7 +169,7 @@ void KochHillDrag::setForce() const if(voidfraction<0.40) voidfraction = 0.40; }else { - voidfraction = particleCloud_.voidfraction(index); + voidfraction = voidfraction_[cellI]; Ufluid = U_[cellI]; } @@ -222,6 +220,7 @@ void KochHillDrag::setForce() const if(verbose_ && index >=0 && index <2) { + Pout << "cellI = " << cellI << endl; Pout << "index = " << index << endl; Pout << "Us = " << Us << endl; Pout << "Ur = " << Ur << endl; @@ -234,20 +233,17 @@ void KochHillDrag::setForce() const Pout << "drag = " << drag << endl; } - //Set value fields and write the probe - Field vValues; - vValues.clear(); - vValues.append(drag); //first entry must the be the force - vValues.append(Ur); //other are debug - - Field sValues; - sValues.clear(); - sValues.append(Rep); //other are debug - sValues.append(betaP); //other are debug - sValues.append(voidfraction); //other are debug - - particleCloud_.probeM().writeProbe(index, sValues, vValues); - + //Set value fields and write the probe + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(drag); //first entry must the be the force + vValues.append(Ur); + sValues.append(Rep); + sValues.append(betaP); + sValues.append(voidfraction); + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } } // set force on particle if(treatExplicit_) for(int j=0;j<3;j++) expForces()[index][j] += drag[j]; diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/KochHillRWDrag/KochHillRWDrag.C b/src/lagrangian/cfdemParticle/subModels/forceModel/KochHillRWDrag/KochHillRWDrag.C index dfe1c67f..0ad0b471 100755 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/KochHillRWDrag/KochHillRWDrag.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/KochHillRWDrag/KochHillRWDrag.C @@ -136,6 +136,12 @@ void KochHillRWDrag::allocateMyArrays() const void KochHillRWDrag::setForce() const { + + // realloc the arrays + reAllocArrays(); + +Info << "huhu" << endl; + if (scale_ > 1) Info << "KochHillRW using scale = " << scale_ << endl; else if (cg() > 1){ @@ -212,7 +218,7 @@ void KochHillRWDrag::setForce() const Ufluid =vector(0,0,0); // Pout << "RW-TEST: cellI = " << cellI << endl; // TEST-Output - +Info << "haha1" << endl; if (cellI > -1) // particle Found { if(interpolation_) @@ -246,7 +252,7 @@ void KochHillRWDrag::setForce() const if(partTime_[index][0] > t+10*timeE) partTime_[index][0] = t; // ------------------------- - +Info << "haha2" << endl; //Pout << "RW-TEST: t = " << t << " partTime_ = " << partTime_[index][0] << endl; // TEST-Output if(t>=partTime_[index][0]) { @@ -281,6 +287,7 @@ void KochHillRWDrag::setForce() const } else { minDeltaT = timeE; } +Info << "haha3" << endl; //Pout << "RW-TEST: timeE = " << timeE << " timeCR = " << timeCr << endl; // TEST-Output // calculate time step of next update @@ -295,9 +302,11 @@ void KochHillRWDrag::setForce() const //Pout << "RW-TEST: Ufluid[" << dim << "] = " << Ufluid[dim] << " Ufluct = " << partUfluct_[index][dim] << " k = " << k << endl; // TEST-Output Ufluid[dim] = Ufluid[dim] + partUfluct_[index][dim]; } +Info << "haha4" << endl; } else { +Info << "haha5" << endl; // no update of the turbulent velocity part // modify current fluid velocity for(int dim=0;dim<3;dim++) @@ -315,7 +324,7 @@ void KochHillRWDrag::setForce() const Rep = 0; Vs = ds*ds*ds*M_PI/6; volumefraction = 1-voidfraction+SMALL; - +Info << "haha6" << endl; if (magUr > 0) { // calc particle Re Nr @@ -349,6 +358,7 @@ void KochHillRWDrag::setForce() const if (modelType_=="B") drag /= voidfraction; +Info << "haha7" << endl; } if(verbose_ && index >=0 && index <2) @@ -364,7 +374,9 @@ void KochHillRWDrag::setForce() const Pout << "Rep = " << Rep << endl; Pout << "drag = " << drag << endl; } +Info << "haha8" << endl; } +Info << "haha9" << endl; // set force on particle if(treatExplicit_) for(int j=0;j<3;j++) expForces()[index][j] += drag[j]; else for(int j=0;j<3;j++) impForces()[index][j] += drag[j]; @@ -382,9 +394,10 @@ void KochHillRWDrag::setForce() const }else{ for(int j=0;j<3;j++) DEMForces()[index][j] += drag[j]; } - +Info << "haha10" << endl; //} } +Info << "haha11" << endl; } diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/MeiLift/MeiLift.C b/src/lagrangian/cfdemParticle/subModels/forceModel/MeiLift/MeiLift.C index 738244a8..38d5527d 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/MeiLift/MeiLift.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/MeiLift/MeiLift.C @@ -138,9 +138,7 @@ void MeiLift::setForce() const interpolationCellPoint UInterpolator_(U_); interpolationCellPoint VorticityInterpolator_(vorticityField); - //set probeModel parameters for this force model - particleCloud_.probeM().setOutputFile(); - particleCloud_.probeM().setCounter(); + #include "setupProbeModel.H" for(int index = 0;index < particleCloud_.numberOfParticles(); index++) { @@ -248,19 +246,17 @@ void MeiLift::setForce() const } //Set value fields and write the probe - Field vValues; - vValues.clear(); - vValues.append(lift); //first entry must the be the force - vValues.append(Ur); //other are debug - vValues.append(vorticity); //other are debug - - Field sValues; - sValues.clear(); - sValues.append(Rep); //other are debug - sValues.append(Rew); //other are debug - sValues.append(J_star); //other are debug - - particleCloud_.probeM().writeProbe(index, sValues, vValues); + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(lift); //first entry must the be the force + vValues.append(Ur); + vValues.append(vorticity); + sValues.append(Rep); + sValues.append(Rew); + sValues.append(J_star); + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } // END OF SAMPLING AND VERBOSE OUTOUT //********************************** diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/SchillerNaumannDrag/SchillerNaumannDrag.C b/src/lagrangian/cfdemParticle/subModels/forceModel/SchillerNaumannDrag/SchillerNaumannDrag.C index c2476af5..0630b0f9 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/SchillerNaumannDrag/SchillerNaumannDrag.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/SchillerNaumannDrag/SchillerNaumannDrag.C @@ -101,9 +101,7 @@ void SchillerNaumannDrag::setForce() const const volScalarField& nufField = particleCloud_.turbulence().nu(); #endif - //set probeModel parameters for this force model - particleCloud_.probeM().setOutputFile(); - particleCloud_.probeM().setCounter(); + #include "setupProbeModel.H" for(int index = 0;index < particleCloud_.numberOfParticles(); index++) { @@ -155,18 +153,15 @@ void SchillerNaumannDrag::setForce() const } //Set value fields and write the probe - Field vValues; - vValues.clear(); - vValues.append(drag); //first entry must the be the force - vValues.append(Ur); //other are debug - - Field sValues; - sValues.clear(); - sValues.append(Rep); //other are debug - sValues.append(Cd); //other are debug - - particleCloud_.probeM().writeProbe(index, sValues, vValues); - + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(drag); //first entry must the be the force + vValues.append(Ur); + sValues.append(Rep); + sValues.append(Cd); + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } } // set force on particle if(treatExplicit_) for(int j=0;j<3;j++) expForces()[index][j] += drag[j]; diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/ShirgaonkarIB/ShirgaonkarIB.C b/src/lagrangian/cfdemParticle/subModels/forceModel/ShirgaonkarIB/ShirgaonkarIB.C index 57aa3aa8..43968692 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/ShirgaonkarIB/ShirgaonkarIB.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/ShirgaonkarIB/ShirgaonkarIB.C @@ -115,9 +115,7 @@ void ShirgaonkarIB::setForce() const volVectorField h = rho_*(nufField*fvc::laplacian(U_)-fvc::grad(p_)); #endif - //set probeModel parameters for this force model - particleCloud_.probeM().setOutputFile(); - particleCloud_.probeM().setCounter(); + #include "setupProbeModel.H" for(int index=0; index< particleCloud_.numberOfParticles(); index++) { @@ -140,14 +138,13 @@ void ShirgaonkarIB::setForce() const // set force on particle if(twoDimensional_) drag /= depth_; - //Set value fields and write the probe - Field vValues; - vValues.clear(); - vValues.append(drag); //first entry must the be the force - - Field sValues; - sValues.clear(); - particleCloud_.probeM().writeProbe(index, sValues, vValues); + //Set value fields and write the probe + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(drag); //first entry must the be the force + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } if(treatExplicit_) for(int j=0;j<3;j++) expForces()[index][j] += drag[j]; else for(int j=0;j<3;j++) impForces()[index][j] += drag[j]; diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/forceModel/forceModel.C b/src/lagrangian/cfdemParticle/subModels/forceModel/forceModel/forceModel.C index ab00f0a8..d4b94e37 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/forceModel/forceModel.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/forceModel/forceModel.C @@ -85,7 +85,8 @@ forceModel::forceModel ), coupleForce_(true), modelType_(sm.modelType()), - cg_(1.) + cg_(1.), + probeIt_(sm.probeM().active()) {} diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/forceModel/forceModel.H b/src/lagrangian/cfdemParticle/subModels/forceModel/forceModel/forceModel.H index fc839e51..82ebb0ad 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/forceModel/forceModel.H +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/forceModel/forceModel.H @@ -77,6 +77,8 @@ protected: mutable scalar cg_; + bool probeIt_; + public: //- Runtime type information diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/gradPForce/gradPForce.C b/src/lagrangian/cfdemParticle/subModels/forceModel/gradPForce/gradPForce.C index 4a83f372..4bddbff0 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/gradPForce/gradPForce.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/gradPForce/gradPForce.C @@ -133,9 +133,7 @@ void gradPForce::setForce() const interpolationCellPoint gradPInterpolator_(gradPField); - //set probeModel parameters for this force model - particleCloud_.probeM().setOutputFile(); - particleCloud_.probeM().setCounter(); + #include "setupProbeModel.H" for(int index = 0;index < particleCloud_.numberOfParticles(); index++) { @@ -174,15 +172,14 @@ void gradPForce::setForce() const } //Set value fields and write the probe - Field vValues; - vValues.clear(); - vValues.append(force); //first entry must the be the force - Field sValues; - sValues.clear(); - sValues.append(Vs); - sValues.append(rho); - particleCloud_.probeM().writeProbe(index, sValues, vValues); - + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(force); //first entry must the be the force + sValues.append(Vs); + sValues.append(rho); + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } } // set force on particle diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/noDrag/noDrag.C b/src/lagrangian/cfdemParticle/subModels/forceModel/noDrag/noDrag.C index a4cf37f7..1bafc1f3 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/noDrag/noDrag.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/noDrag/noDrag.C @@ -60,8 +60,18 @@ noDrag::noDrag cfdemCloud& sm ) : - forceModel(dict,sm) + forceModel(dict,sm), + propsDict_(dict), + verbose_(false), + noDEMForce_(false) { + if(dict.found(word(typeName + "Props"))) + propsDict_=dictionary(dict.subDict(typeName + "Props")); + + if (propsDict_.found("noDEMForce")) noDEMForce_=true; + + if (propsDict_.found("keepCFDForce")) keepCFDForce_=true; + coupleForce_=false; } @@ -80,12 +90,14 @@ void noDrag::setForce() const Info << "noDrag::setForce" << endl; for(int index = 0;index < particleCloud_.numberOfParticles(); ++index) { - //if(mask[index][0]) - //{ - // set force on particle + // set force on particle + if(!keepCFDForce_) + { if(treatExplicit_) for(int j=0;j<3;j++) expForces()[index][j] = 0.; else for(int j=0;j<3;j++) impForces()[index][j] = 0.; - //} + } + if(noDEMForce_)for(int j=0;j<3;j++) DEMForces()[index][j] = 0.; + } } diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/noDrag/noDrag.H b/src/lagrangian/cfdemParticle/subModels/forceModel/noDrag/noDrag.H index e07fc373..89282670 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/noDrag/noDrag.H +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/noDrag/noDrag.H @@ -54,11 +54,19 @@ class noDrag : public forceModel { +private: + dictionary propsDict_; + + bool verbose_; + + bool noDEMForce_; + + bool keepCFDForce_; public: //- Runtime type information - TypeName("off"); + TypeName("noDrag"); // Constructors diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/particleCellVolume/particleCellVolume.C b/src/lagrangian/cfdemParticle/subModels/forceModel/particleCellVolume/particleCellVolume.C index 21ae1c06..5ea98110 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/particleCellVolume/particleCellVolume.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/particleCellVolume/particleCellVolume.C @@ -79,6 +79,19 @@ particleCellVolume::particleCellVolume mesh_, dimensionedScalar("zero", dimensionSet(0,0,0,0,0), 0) ), + scalarField2_ + ( + IOobject + ( + "cellVolume", + mesh_.time().timeName(), + mesh_, + IOobject::NO_READ, + IOobject::AUTO_WRITE + ), + mesh_, + dimensionedScalar("zero", dimensionSet(0,0,0,0,0), 0) + ), upperThreshold_(readScalar(propsDict_.lookup("upperThreshold"))), lowerThreshold_(readScalar(propsDict_.lookup("lowerThreshold"))), verbose_(false) @@ -122,20 +135,26 @@ void particleCellVolume::setForce() const { cellVol = mesh_.V()[cellI]; scalarField_[cellI] = (1-fieldValue) * cellVol; + scalarField2_[cellI] = cellVol; } else { scalarField_[cellI] = 0.; + scalarField2_[cellI] = 0.; } } scalarField_.internalField() = gSum(scalarField_); + scalarField2_.internalField() = gSum(scalarField2_); if(verbose_) { - Info << "calculated integral of field: " << scalarFieldName_ + Info << "calculated integral particle volume " << " = " << scalarField_[0] << ",\n considering cells where the field < " << upperThreshold_ - << ", and > " << lowerThreshold_ << endl; + << ", and > " << lowerThreshold_ + << ",\n the total volume of cells holding particles = " << scalarField2_[0] + << ",\n this results in an average volume fraction of:" << scalarField_[0]/(scalarField2_[0]+SMALL) + << endl; } }// end if time >= startTime_ } diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/particleCellVolume/particleCellVolume.H b/src/lagrangian/cfdemParticle/subModels/forceModel/particleCellVolume/particleCellVolume.H index 1b0e3177..4beb226f 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/particleCellVolume/particleCellVolume.H +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/particleCellVolume/particleCellVolume.H @@ -66,6 +66,8 @@ private: mutable volScalarField scalarField_; + mutable volScalarField scalarField2_; + mutable scalar upperThreshold_; mutable scalar lowerThreshold_; diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/virtualMassForce/virtualMassForce.C b/src/lagrangian/cfdemParticle/subModels/forceModel/virtualMassForce/virtualMassForce.C index 1fb56690..89ab4a70 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/virtualMassForce/virtualMassForce.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/virtualMassForce/virtualMassForce.C @@ -107,9 +107,7 @@ void virtualMassForce::setForce() const scalar dt = U_.mesh().time().deltaT().value(); - //set probeModel parameters for this force model - particleCloud_.probeM().setOutputFile(); - particleCloud_.probeM().setCounter(); + #include "setupProbeModel.H" for(int index = 0;index < particleCloud_.numberOfParticles(); index++) { @@ -137,17 +135,16 @@ void virtualMassForce::setForce() const virtualMassForce = 0.5 * rho * Vs * ddtUrel; //Set value fields and write the probe - Field vValues; - vValues.clear(); - vValues.append(virtualMassForce); //first entry must the be the force - vValues.append(Ur); - vValues.append(UrelOld); - Field sValues; - sValues.clear(); - sValues.append(Vs); - sValues.append(rho); - particleCloud_.probeM().writeProbe(index, sValues, vValues); - + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(virtualMassForce); //first entry must the be the force + vValues.append(Ur); + vValues.append(UrelOld); + sValues.append(Vs); + sValues.append(rho); + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } } // set force on particle if(treatExplicit_) for(int j=0;j<3;j++) expForces()[index][j] += virtualMassForce[j]; diff --git a/src/lagrangian/cfdemParticle/subModels/forceModel/viscForce/viscForce.C b/src/lagrangian/cfdemParticle/subModels/forceModel/viscForce/viscForce.C index af58137e..85a47d93 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModel/viscForce/viscForce.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModel/viscForce/viscForce.C @@ -131,9 +131,7 @@ void viscForce::setForce() const interpolationCellPoint divTauInterpolator_(divTauField); - //set probeModel parameters for this force model - particleCloud_.probeM().setOutputFile(); - particleCloud_.probeM().setCounter(); + #include "setupProbeModel.H" for(int index = 0;index < particleCloud_.numberOfParticles(); index++) { @@ -170,14 +168,13 @@ void viscForce::setForce() const } //Set value fields and write the probe - Field vValues; - vValues.clear(); - vValues.append(force); //first entry must the be the force - Field sValues; - sValues.clear(); - sValues.append(Vs); - particleCloud_.probeM().writeProbe(index, sValues, vValues); - + if(probeIt_) + { + #include "setupProbeModelfields.H" + vValues.append(force); //first entry must the be the force + sValues.append(Vs); + particleCloud_.probeM().writeProbe(index, sValues, vValues); + } } // set force on particle @@ -191,7 +188,6 @@ void viscForce::setForce() const } } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam diff --git a/src/lagrangian/cfdemParticle/subModels/forceModelMS/DiFeliceDragMS/DiFeliceDragMS.C b/src/lagrangian/cfdemParticle/subModels/forceModelMS/DiFeliceDragMS/DiFeliceDragMS.C index b90c593d..78788ced 100644 --- a/src/lagrangian/cfdemParticle/subModels/forceModelMS/DiFeliceDragMS/DiFeliceDragMS.C +++ b/src/lagrangian/cfdemParticle/subModels/forceModelMS/DiFeliceDragMS/DiFeliceDragMS.C @@ -75,6 +75,15 @@ DiFeliceDragMS::DiFeliceDragMS //sphereToClump_(readScalar(propsDict_.lookup("sphereToClump"))) dH_(readScalar(propsDict_.lookup("hydraulicDiameter"))) { + //Append the field names to be probed + particleCloud_.probeM().initialize(typeName, "diFeliceDrag.logDat"); + particleCloud_.probeM().vectorFields_.append("dragForce"); //first entry must the be the force + particleCloud_.probeM().vectorFields_.append("Urel"); //other are debug + particleCloud_.probeM().scalarFields_.append("Rep"); //other are debug + particleCloud_.probeM().scalarFields_.append("Cd"); //other are debug + particleCloud_.probeM().scalarFields_.append("voidfraction"); //other are debug + particleCloud_.probeM().writeHeader(); + if (propsDict_.found("verbose")) verbose_=true; if (propsDict_.found("treatExplicit")) treatExplicit_=true; if (propsDict_.found("interpolation")) @@ -82,6 +91,7 @@ DiFeliceDragMS::DiFeliceDragMS Info << "using interpolated value of U." << endl; interpolation_=true; } + particleCloud_.checkCG(false); } @@ -102,11 +112,11 @@ void DiFeliceDragMS::setForce() const const volScalarField& nufField = cloudRefMS().turbulence().nu(); #endif - interpolationCellPoint UInterpolator(U_); - interpolationCellPoint voidfractionInterpolator(voidfraction_); - vector U(0,0,0); vector position(0,0,0); scalar voidfraction(1); + vector Ufluid(0,0,0); + vector drag(0,0,0); + label cellI=0; vector Us(0,0,0); vector Ur(0,0,0); scalar ds(0); @@ -116,32 +126,38 @@ void DiFeliceDragMS::setForce() const scalar Rep(0); scalar Cd(0); + interpolationCellPoint voidfractionInterpolator(voidfraction_); + interpolationCellPoint UInterpolator(U_); + cloudRefMS().resetArray(cloudRefMS().expForcesCM(),cloudRefMS().numberOfClumps(),3); cloudRefMS().resetArray(cloudRefMS().impForcesCM(),cloudRefMS().numberOfClumps(),3); + cloudRefMS().resetArray(cloudRefMS().DEMForcesCM(),cloudRefMS().numberOfClumps(),3); + + #include "setupProbeModel.H" for(int index = 0;index < cloudRefMS().numberOfClumps(); index++) { //if(mask[index][0]) // would have to be transformed from body ID to particle ID //{ - vector drag(0,0,0); - label cellI = cloudRefMS().cellIDCM(index); + cellI = cloudRefMS().cellIDCM(index); + drag = vector(0,0,0); if (cellI > -1) // particle Found { if(interpolation_) { position = cloudRefMS().positionCM(index); - U = UInterpolator.interpolate(position,cellI); + Ufluid = UInterpolator.interpolate(position,cellI); voidfraction = voidfractionInterpolator.interpolate(position,cellI); }else { - U = U_[cellI]; - voidfraction = voidfraction_[cellI]; + Ufluid = U_[cellI]; + voidfraction = voidfraction_[cellI]; //particleCloud_.voidfraction(index); ???// } Us = cloudRefMS().velocityCM(index); - Ur = U-Us; + Ur = Ufluid-Us; //ds = 2*cloudRefMS().radius(index)/sphereToClump_; // scale from particle diameter ds = dH_; // use dict defined diameter @@ -156,7 +172,7 @@ void DiFeliceDragMS::setForce() const if (magUr > 0) { // calc particle Re Nr - Rep = ds*voidfraction*magUr/nuf; + Rep = ds*voidfraction*magUr/(nuf+SMALL); // calc fluid drag Coeff // phi=1; //AsurfAequi/Asurf; @@ -194,6 +210,7 @@ void DiFeliceDragMS::setForce() const // set force on bodies if(treatExplicit_) for(int j=0;j<3;j++) cloudRefMS().expForcesCM()[index][j] += drag[j]; else for(int j=0;j<3;j++) cloudRefMS().impForcesCM()[index][j] += drag[j]; + for(int j=0;j<3;j++) cloudRefMS().DEMForcesCM()[index][j] += drag[j]; //} } diff --git a/src/lagrangian/cfdemParticle/subModels/liggghtsCommandModel/execute/execute.C b/src/lagrangian/cfdemParticle/subModels/liggghtsCommandModel/execute/execute.C index 9af73318..c154b6ff 100644 --- a/src/lagrangian/cfdemParticle/subModels/liggghtsCommandModel/execute/execute.C +++ b/src/lagrangian/cfdemParticle/subModels/liggghtsCommandModel/execute/execute.C @@ -68,6 +68,7 @@ execute::execute commandList_(0), command_(""), scalarList_(0), + labelList_(0), runTimeModifiable_(true), timeStamp_(false) { @@ -83,9 +84,13 @@ execute::execute // read list of scalars if(propsDict_.found("scalars")) scalarList_ = scalarList(propsDict_.lookup("scalars")); + // read list of labels + if(propsDict_.found("labels")) labelList_ = labelList(propsDict_.lookup("labels")); + bool addBlank = true; // std no blanks after each word fileName add; label numberCount=0; // nr of scalars inserted to command + label labelCount=0; // nr of labels inserted to command forAll(commandList_,i) { @@ -125,6 +130,18 @@ execute::execute sprintf(h,"%f",scalarList_[numberCount]); add = h; numberCount ++; + }else if (add=="label") // next command will be a number read from scalarList_ + { + if (!propsDict_.found("labels")) + { + FatalError<<"you want to use a label in the command\n - specify a label list with all numbers" + << abort(FatalError); + + } + char h[50]; + sprintf(h,"%d",labelList_[labelCount]); + add = h; + labelCount ++; } // compose command diff --git a/src/lagrangian/cfdemParticle/subModels/liggghtsCommandModel/execute/execute.H b/src/lagrangian/cfdemParticle/subModels/liggghtsCommandModel/execute/execute.H index 46f91100..20c9f3b4 100644 --- a/src/lagrangian/cfdemParticle/subModels/liggghtsCommandModel/execute/execute.H +++ b/src/lagrangian/cfdemParticle/subModels/liggghtsCommandModel/execute/execute.H @@ -69,6 +69,8 @@ private: scalarList scalarList_; + labelList labelList_; + bool runTimeModifiable_; bool timeStamp_; diff --git a/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearch/engineSearch.C b/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearch/engineSearch.C index 762eefab..b3c38d4a 100644 --- a/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearch/engineSearch.C +++ b/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearch/engineSearch.C @@ -96,9 +96,9 @@ label engineSearch::findCell //if(mask[index][0] && particleCloud_.radius(index) > SMALL) if(particleCloud_.radius(index) > SMALL) { - // create pos vector for(int i=0;i<3;i++) position[i] = positions[index][i]; + // find cell cellIDs[index][0] =searchEngine_.findCell(position,cellIDs[index][0],treeSearch_); } diff --git a/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearchIB/engineSearchIB.C b/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearchIB/engineSearchIB.C index 0b97a824..64dd4cc6 100644 --- a/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearchIB/engineSearchIB.C +++ b/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearchIB/engineSearchIB.C @@ -36,6 +36,7 @@ Description #include "addToRunTimeSelectionTable.H" #include "mathematicalConstants.H" +#include "mpi.h" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -66,8 +67,13 @@ engineSearchIB::engineSearchIB engineSearch(dict.subDict(typeName + "Props"),sm), propsDict_(dict.subDict(typeName + "Props")), zSplit_(readLabel(propsDict_.lookup("zSplit"))), - xySplit_(readLabel(propsDict_.lookup("xySplit"))) -{} + xySplit_(readLabel(propsDict_.lookup("xySplit"))), + checkPeriodicCells_(false) +{ + + if(propsDict_.found("checkPeriodicCells")) checkPeriodicCells_=true; + +} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // @@ -87,6 +93,13 @@ label engineSearchIB::findCell int size ) const { + + int numprocs, me; + MPI_Comm_size(MPI_COMM_WORLD, &numprocs); + MPI_Comm_rank(MPI_COMM_WORLD, &me); + const boundBox& globalBb = particleCloud_.mesh().bounds(); + + vector position; for(int index = 0;index < size; ++index) { @@ -118,7 +131,8 @@ label engineSearchIB::findCell pos[2]+=radius; else if(countPoints==1) pos[2]-=radius; - else { + else + { thetaLevel=(countPoints-2)/xySplit_; theta=factor*thetaSize*thetaLevel; phi=factor*phiSize*(countPoints-2-thetaLevel*xySplit_); @@ -128,6 +142,23 @@ label engineSearchIB::findCell } altStartPos=findSingleCell(pos,oldID); //particleCloud_.mesh().findCell(pos);// + //check for periodic domains + if(checkPeriodicCells_) + { + for(int iDir=0;iDir<3;iDir++) + { + if( pos[iDir] > globalBb.max()[iDir] ) + { + pos[iDir]-=globalBb.max()[iDir]-globalBb.min()[iDir]; + } + else if( pos[iDir] < globalBb.min()[iDir] ) + { + pos[iDir]+=globalBb.max()[iDir]-globalBb.min()[iDir]; + } + } + altStartPos=findSingleCell(pos,oldID); //particleCloud_.mesh().findCell(pos);// + } + if(altStartPos>=0) foundPos=1; countPoints++; } diff --git a/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearchIB/engineSearchIB.H b/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearchIB/engineSearchIB.H index 0ef6f114..ad65d017 100644 --- a/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearchIB/engineSearchIB.H +++ b/src/lagrangian/cfdemParticle/subModels/locateModel/engineSearchIB/engineSearchIB.H @@ -62,6 +62,8 @@ private: const label zSplit_; const label xySplit_; + + bool checkPeriodicCells_; public: diff --git a/src/lagrangian/cfdemParticle/subModels/probeModel/noProbe/noProbe.H b/src/lagrangian/cfdemParticle/subModels/probeModel/noProbe/noProbe.H index c47ebd2b..789b8ff6 100644 --- a/src/lagrangian/cfdemParticle/subModels/probeModel/noProbe/noProbe.H +++ b/src/lagrangian/cfdemParticle/subModels/probeModel/noProbe/noProbe.H @@ -80,7 +80,7 @@ public: ~noProbe(); // Member Functions - + bool active() const {return false;}; }; diff --git a/src/lagrangian/cfdemParticle/subModels/probeModel/particleProbe/particleProbe.C b/src/lagrangian/cfdemParticle/subModels/probeModel/particleProbe/particleProbe.C index 1263ee09..dc480bdc 100644 --- a/src/lagrangian/cfdemParticle/subModels/probeModel/particleProbe/particleProbe.C +++ b/src/lagrangian/cfdemParticle/subModels/probeModel/particleProbe/particleProbe.C @@ -78,7 +78,7 @@ particleProbe::particleProbe sampleAll_(false), probeDebug_(false), includePosition_(false), - particleIDsToSample_(dict.lookup("particleIDsToSample")), + particleIDsToSample_(propsDict_.lookup("particleIDsToSample")), itemsToSample_(NULL), sPtrList_(NULL), itemCounter_(0), diff --git a/src/lagrangian/cfdemParticle/subModels/probeModel/probeModel/probeModel.H b/src/lagrangian/cfdemParticle/subModels/probeModel/probeModel/probeModel.H index 0c182bd4..0330dc1c 100644 --- a/src/lagrangian/cfdemParticle/subModels/probeModel/probeModel/probeModel.H +++ b/src/lagrangian/cfdemParticle/subModels/probeModel/probeModel/probeModel.H @@ -138,7 +138,7 @@ public: virtual void writeProbe(int index, Field sValues, Field vValues) const {}; virtual bool checkIDForPrint(int) const {return false;}; virtual void setCounter() const {}; - + virtual bool active() const {return true;}; const char* wordToChar(word&) const; // Access diff --git a/src/lagrangian/cfdemParticle/subModels/smoothingModel/constDiffSmoothing/constDiffSmoothing.C b/src/lagrangian/cfdemParticle/subModels/smoothingModel/constDiffSmoothing/constDiffSmoothing.C index 84dc75d7..c1adbc0f 100644 --- a/src/lagrangian/cfdemParticle/subModels/smoothingModel/constDiffSmoothing/constDiffSmoothing.C +++ b/src/lagrangian/cfdemParticle/subModels/smoothingModel/constDiffSmoothing/constDiffSmoothing.C @@ -110,8 +110,14 @@ bool constDiffSmoothing::doSmoothing() const dSmooth.internalField() = dSmooth0; }*/ -void Foam::constDiffSmoothing::smoothen(volScalarField& field) const +void Foam::constDiffSmoothing::smoothen(volScalarField& fieldSrc) const { + // transfer data to working field to not mess up ddt + volScalarField field=fieldSrc; + field.correctBoundaryConditions(); + field.oldTime()=fieldSrc; + field.oldTime().correctBoundaryConditions(); + double deltaT = field.mesh().time().deltaTValue(); DT_.value() = smoothingLength_.value() * smoothingLength_.value() / deltaT; @@ -127,7 +133,10 @@ void Foam::constDiffSmoothing::smoothen(volScalarField& field) const { field[cellI]=max(lowerLimit_,min(upperLimit_,field[cellI])); } - + + // get data from working field + fieldSrc=field; + fieldSrc.correctBoundaryConditions(); } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // void Foam::constDiffSmoothing::smoothen(volVectorField& field) const @@ -184,7 +193,7 @@ void Foam::constDiffSmoothing::smoothenReferenceField(volVectorField& field) con ( fvm::ddt(field) == fvm::laplacian( DT_, field) + NLarge() / deltaT * field.oldTime() //add source to keep cell values constant - - fvm::Sp( NLarge() / deltaT, field) //add sink to keep cell values constant + - fvm::Sp( NLarge() / deltaT, field) //add sink to keep cell values constant ); } diff --git a/src/lagrangian/cfdemParticle/subModels/smoothingModel/noSmoothing/noSmoothing.C b/src/lagrangian/cfdemParticle/subModels/smoothingModel/noSmoothing/noSmoothing.C index febfdf3b..01a73ab1 100644 --- a/src/lagrangian/cfdemParticle/subModels/smoothingModel/noSmoothing/noSmoothing.C +++ b/src/lagrangian/cfdemParticle/subModels/smoothingModel/noSmoothing/noSmoothing.C @@ -71,19 +71,13 @@ noSmoothing::~noSmoothing() // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // void Foam::noSmoothing::smoothen(volScalarField& field) const -{ - field=field.oldTime(); -} +{} void Foam::noSmoothing::smoothen(volVectorField& field) const -{ - field=field.oldTime(); -} +{} void Foam::noSmoothing::smoothenReferenceField(volVectorField& field) const -{ - field=field.oldTime(); -} +{} // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/lagrangian/cfdemParticle/subModels/voidFractionModel/IBVoidFraction/IBVoidFraction.C b/src/lagrangian/cfdemParticle/subModels/voidFractionModel/IBVoidFraction/IBVoidFraction.C index f78fdb43..25888f09 100755 --- a/src/lagrangian/cfdemParticle/subModels/voidFractionModel/IBVoidFraction/IBVoidFraction.C +++ b/src/lagrangian/cfdemParticle/subModels/voidFractionModel/IBVoidFraction/IBVoidFraction.C @@ -36,6 +36,7 @@ Description #include "locateModel.H" #include "dataExchangeModel.H" +#include "mpi.h" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -67,7 +68,8 @@ IBVoidFraction::IBVoidFraction propsDict_(dict.subDict(typeName + "Props")), alphaMin_(readScalar(propsDict_.lookup("alphaMin"))), alphaLimited_(0), - scaleUpVol_(readScalar(propsDict_.lookup("scaleUpVol"))) + scaleUpVol_(readScalar(propsDict_.lookup("scaleUpVol"))), + checkPeriodicCells_(false) { Info << "\n\n W A R N I N G - do not use in combination with differentialRegion model! \n\n" << endl; //Info << "\n\n W A R N I N G - this model does not yet work properly! \n\n" << endl; @@ -75,6 +77,8 @@ IBVoidFraction::IBVoidFraction if(scaleUpVol_ < 1){ FatalError<< "scaleUpVol shloud be > 1."<< abort(FatalError); } if(alphaMin_ > 1 || alphaMin_ < 0.01){ FatalError<< "alphaMin shloud be > 1 and < 0.01." << abort(FatalError); } + + if(propsDict_.found("checkPeriodicCells")) checkPeriodicCells_=true; } @@ -88,6 +92,12 @@ IBVoidFraction::~IBVoidFraction() void IBVoidFraction::setvoidFraction(double** const& mask,double**& voidfractions,double**& particleWeights,double**& particleVolumes) const { + + int numprocs, me; + MPI_Comm_size(MPI_COMM_WORLD, &numprocs); + MPI_Comm_rank(MPI_COMM_WORLD, &me); + const boundBox& globalBb = particleCloud_.mesh().bounds(); + reAllocArrays(); voidfractionNext_.internalField()=1; @@ -117,55 +127,186 @@ void IBVoidFraction::setvoidFraction(double** const& mask,double**& voidfraction vector cellCentrePosition = particleCloud_.mesh().C()[particleCenterCellID]; scalar centreDist=mag(cellCentrePosition-positionCenter); - if(centreDist + 0.5*sqrt(3.0)*pow(particleCloud_.mesh().V()[particleCenterCellID],0.33333) < radius){ + vector minPeriodicParticlePos; + if(checkPeriodicCells_) //consider minimal distance to all periodic images of this particle + { + centreDist = minPeriodicDistance(cellCentrePosition, positionCenter, globalBb, + minPeriodicParticlePos); + } + + if(centreDist + 0.5*sqrt(3.0)*pow(particleCloud_.mesh().V()[particleCenterCellID],0.33333) < radius) + { voidfractionNext_[particleCenterCellID] = 0; } - else { + else + { const labelList& vertices = particleCloud_.mesh().cellPoints()[particleCenterCellID]; - forAll(vertices, i){ + forAll(vertices, i) + { vector vertexPosition = particleCloud_.mesh().points()[vertices[i]]; - if(centreDist < radius && mag(vertexPosition-positionCenter) < radius){ + scalar centreVertexDist = mag(vertexPosition-positionCenter); + if(checkPeriodicCells_) //consider minimal distance to all periodic images of this particle + { + centreVertexDist = minPeriodicDistance(vertexPosition, positionCenter, globalBb, + minPeriodicParticlePos); + } + + if(centreDist radius){ + else if(centreDistradius) + { //compute lambda - scalar a = (vertexPosition - cellCentrePosition)&(vertexPosition - cellCentrePosition); - scalar b = 2.* (vertexPosition - cellCentrePosition)&(cellCentrePosition-positionCenter); - scalar c = ((cellCentrePosition-positionCenter)&(cellCentrePosition-positionCenter))-radius*radius; + if(!checkPeriodicCells_) //set if no periodic check of cells + { + minPeriodicParticlePos = positionCenter; + } + + scalar a = (vertexPosition - cellCentrePosition) + & (vertexPosition - cellCentrePosition); + scalar b = 2. * (vertexPosition - cellCentrePosition) + & (cellCentrePosition-minPeriodicParticlePos); + scalar c = ((cellCentrePosition-minPeriodicParticlePos) + & (cellCentrePosition-minPeriodicParticlePos) + ) + - radius*radius; + scalar lambda = 0.; - if(b*b-4*a*c>=0) lambda = (-b+sqrt(b*b-4*a*c))/(2*a); - if (lambda > 0 && lambda <=1) voidfractionNext_[particleCenterCellID] -=lambda*.125; - else { + if (b*b-4*a*c>=0) lambda = (-b+sqrt(b*b-4*a*c))/(2*a); + if (lambda > 0 && lambda <=1) voidfractionNext_[particleCenterCellID]-=lambda*.125; + else + { lambda = (-b-sqrt(b*b-4*a*c))/(2*a); - if (lambda > 0 && lambda <=1) voidfractionNext_[particleCenterCellID] -=lambda * 0.125; + if (lambda > 0 && lambda <=1) voidfractionNext_[particleCenterCellID]-=lambda*.125; } } - else if(centreDist > radius && mag(vertexPosition-positionCenter) < radius){ + else if(centreDist>radius && centreVertexDist=0) lambda = (-b+sqrt(b*b-4*a*c))/(2*a); - if (lambda > 0 && lambda <=1) voidfractionNext_[particleCenterCellID] -=(1-lambda) * 0.125; - else { + if(lambda > 0 && lambda <=1) voidfractionNext_[particleCenterCellID]-=(1-lambda)*0.125; + else + { lambda = (-b-sqrt(b*b-4*a*c))/(2*a); - if (lambda > 0 && lambda <=1) voidfractionNext_[particleCenterCellID] -=(1-lambda) * 0.125; + if (lambda > 0 && lambda <=1) voidfractionNext_[particleCenterCellID]-=(1-lambda)*0.125; } } } } - buildLabelHashSet(radius, positionCenter, particleCenterCellID, hashSett); - //generating list with cell and subcells + buildLabelHashSet(radius, minPeriodicParticlePos, particleCenterCellID, hashSett, true); + + //Add cells of periodic particle images on same processor + if(checkPeriodicCells_) + { + int doPeriodicImage[3]; + for(int iDir=0;iDir<3;iDir++) + { + doPeriodicImage[iDir]= 0; + if( (minPeriodicParticlePos[iDir]+radius)>globalBb.max()[iDir] ) + { + doPeriodicImage[iDir] =-1; + } + if( (minPeriodicParticlePos[iDir]-radius) particlePosList; //List of particle center position + List