From fa0717dd00583261753c150d73a154407367f8af Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 5 Jan 2009 17:42:35 +0000 Subject: [PATCH] rewriting molConfig, renamed to mdInitiaise. Driving all creation of molecules from within moleculeCloud. --- .../solvers/molecularDynamics/mdFoam/mdFoam.C | 1 - .../preProcessing/mdInitialise/Make/files | 3 + .../preProcessing/mdInitialise/Make/options | 18 ++ .../preProcessing/mdInitialise/mdInitialise.C | 95 +++++++++ .../molConfig_old}/Make/files | 0 .../molConfig_old}/Make/options | 0 .../molConfig_old}/correctVelocities.H | 0 .../molConfig_old}/createMolecules.C | 0 .../molConfig_old}/createPositions.H | 0 .../molConfig_old}/createVelocities.H | 0 .../molConfig_old}/genMolConfig.C | 0 .../molConfig_old}/latticeStructures/BCC.H | 0 .../molConfig_old}/latticeStructures/FCC.H | 0 .../molConfig_old}/latticeStructures/SC.H | 0 .../molConfig_old}/molConfig.C | 0 .../molConfig_old}/molConfig.H | 0 .../molConfig_old}/molConfigI.H | 0 .../molConfig_old}/origin.H | 0 .../molConfig_old}/readZoneSubDict.H | 0 .../molConfig_old}/startingPoint.H | 0 .../velocityDistributions/maxwellian.H | 0 .../velocityDistributions/uniform.H | 0 .../correlationFunctionI.H | 14 +- .../molecularDynamics/molecule/Make/options | 2 +- .../molecularDynamics/molecule/mdTools/md.H | 1 + .../molecule/moleculeCloud/moleculeCloud.C | 154 ++++++-------- .../molecule/moleculeCloud/moleculeCloud.H | 29 ++- .../potential/potential/potential.C | 199 +++++++++++++++--- .../potential/potential/potential.H | 16 ++ 29 files changed, 384 insertions(+), 148 deletions(-) create mode 100755 applications/utilities/preProcessing/mdInitialise/Make/files create mode 100755 applications/utilities/preProcessing/mdInitialise/Make/options create mode 100644 applications/utilities/preProcessing/mdInitialise/mdInitialise.C rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/Make/files (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/Make/options (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/correctVelocities.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/createMolecules.C (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/createPositions.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/createVelocities.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/genMolConfig.C (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/latticeStructures/BCC.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/latticeStructures/FCC.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/latticeStructures/SC.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/molConfig.C (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/molConfig.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/molConfigI.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/origin.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/readZoneSubDict.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/startingPoint.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/velocityDistributions/maxwellian.H (100%) rename applications/utilities/preProcessing/{molConfig => mdInitialise/molConfig_old}/velocityDistributions/uniform.H (100%) diff --git a/applications/solvers/molecularDynamics/mdFoam/mdFoam.C b/applications/solvers/molecularDynamics/mdFoam/mdFoam.C index 88e06cfdc7..4357c5c0b1 100644 --- a/applications/solvers/molecularDynamics/mdFoam/mdFoam.C +++ b/applications/solvers/molecularDynamics/mdFoam/mdFoam.C @@ -32,7 +32,6 @@ Description #include "fvCFD.H" #include "md.H" -#include "potential.H" int main(int argc, char *argv[]) { diff --git a/applications/utilities/preProcessing/mdInitialise/Make/files b/applications/utilities/preProcessing/mdInitialise/Make/files new file mode 100755 index 0000000000..dc06cf6bcd --- /dev/null +++ b/applications/utilities/preProcessing/mdInitialise/Make/files @@ -0,0 +1,3 @@ +mdInitialise.C + +EXE = $(FOAM_APPBIN)/mdInitialise diff --git a/applications/utilities/preProcessing/mdInitialise/Make/options b/applications/utilities/preProcessing/mdInitialise/Make/options new file mode 100755 index 0000000000..289c0990a2 --- /dev/null +++ b/applications/utilities/preProcessing/mdInitialise/Make/options @@ -0,0 +1,18 @@ +EXE_INC = \ + -I$(LIB_SRC)/meshTools/lnInclude \ + -I$(LIB_SRC)/dynamicMesh/lnInclude \ + -I$(LIB_SRC)/lagrangian/molecularDynamics/molecule/lnInclude \ + -I$(LIB_SRC)/lagrangian/molecularDynamics/potential/lnInclude \ + -I$(LIB_SRC)/lagrangian/molecularDynamics/molecularMeasurements/lnInclude \ + -I$(LIB_SRC)/lagrangian/basic/lnInclude \ + -I$(LIB_SRC)/finiteVolume/lnInclude + +EXE_LIBS = \ + -lmeshTools \ + -ldynamicMesh \ + -lfiniteVolume \ + -llagrangian \ + -lmolecule \ + -lpotential \ + -lmolecularMeasurements + diff --git a/applications/utilities/preProcessing/mdInitialise/mdInitialise.C b/applications/utilities/preProcessing/mdInitialise/mdInitialise.C new file mode 100644 index 0000000000..6c474208d5 --- /dev/null +++ b/applications/utilities/preProcessing/mdInitialise/mdInitialise.C @@ -0,0 +1,95 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 1991-2008 OpenCFD Ltd. + \\/ M anipulation | +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM 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 2 of the License, or (at your + option) any later version. + + OpenFOAM 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 OpenFOAM; if not, write to the Free Software Foundation, + Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +\*---------------------------------------------------------------------------*/ + +#include "md.H" +#include "fvCFD.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +int main(int argc, char *argv[]) +{ +# include "setRootCase.H" +# include "createTime.H" +# include "createMesh.H" + + IOdictionary mdInitialiseDict + ( + IOobject + ( + "mdInitialiseDict", + runTime.system(), + runTime, + IOobject::MUST_READ, + IOobject::NO_WRITE, + false + ) + ); + + IOdictionary idListDict + ( + IOobject + ( + "idList", + mesh.time().constant(), + mesh, + IOobject::NO_READ, + IOobject::AUTO_WRITE + ) + ); + + potential pot(mesh, mdInitialiseDict, idListDict); + + moleculeCloud molecules(mesh, pot, mdInitialiseDict); + + label totalMolecules = molecules.size(); + + if (Pstream::parRun()) + { + reduce(totalMolecules, sumOp