diff --git a/applications/solvers/combustion/chemFoam/chemFoam.C b/applications/solvers/combustion/chemFoam/chemFoam.C index 9a19930ee5..15f4a33747 100644 --- a/applications/solvers/combustion/chemFoam/chemFoam.C +++ b/applications/solvers/combustion/chemFoam/chemFoam.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -47,6 +47,8 @@ Description int main(int argc, char *argv[]) { + argList::noParallel(); + #include "setRootCase.H" #include "createTime.H" #include "createSingleCellMesh.H" diff --git a/applications/solvers/combustion/dieselEngineFoam/Make/options b/applications/solvers/combustion/dieselEngineFoam/Make/options index 9cefdaf996..c4d65fa137 100644 --- a/applications/solvers/combustion/dieselEngineFoam/Make/options +++ b/applications/solvers/combustion/dieselEngineFoam/Make/options @@ -4,8 +4,8 @@ EXE_INC = \ -I$(LIB_SRC)/lagrangian/basic/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/lagrangian/dieselSpray/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ @@ -35,4 +35,4 @@ EXE_LIBS = \ -llaminarFlameSpeedModels \ -lchemistryModel \ -lODE \ - -lpdf + -ldistributionModels diff --git a/applications/solvers/combustion/dieselFoam/Make/options b/applications/solvers/combustion/dieselFoam/Make/options index 1e6ccfa139..124371575d 100644 --- a/applications/solvers/combustion/dieselFoam/Make/options +++ b/applications/solvers/combustion/dieselFoam/Make/options @@ -5,8 +5,8 @@ EXE_INC = \ -I$(LIB_SRC)/lagrangian/basic/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/lagrangian/dieselSpray/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ @@ -32,5 +32,5 @@ EXE_LIBS = \ -llaminarFlameSpeedModels \ -lchemistryModel \ -lODE \ - -lpdf \ + -ldistributionModels \ -lfiniteVolume diff --git a/applications/solvers/combustion/fireFoam/Make/options b/applications/solvers/combustion/fireFoam/Make/options index cba08b2629..045e37a344 100644 --- a/applications/solvers/combustion/fireFoam/Make/options +++ b/applications/solvers/combustion/fireFoam/Make/options @@ -5,7 +5,7 @@ EXE_INC = \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude EXE_LIBS = \ @@ -17,4 +17,4 @@ EXE_LIBS = \ -lcompressibleTurbulenceModel \ -lcompressibleLESModels \ -lcompressibleRASModels \ - -lradiation + -lradiationModels diff --git a/applications/solvers/heatTransfer/buoyantSimpleRadiationFoam/Make/options b/applications/solvers/heatTransfer/buoyantSimpleRadiationFoam/Make/options index 7058e8a503..96c99816d0 100644 --- a/applications/solvers/heatTransfer/buoyantSimpleRadiationFoam/Make/options +++ b/applications/solvers/heatTransfer/buoyantSimpleRadiationFoam/Make/options @@ -1,7 +1,7 @@ EXE_INC = \ -I../buoyantSimpleFoam \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/turbulenceModels \ -I$(LIB_SRC)/turbulenceModels/compressible/RAS/lnInclude \ -I$(LIB_SRC)/turbulenceModels/RAS \ @@ -11,7 +11,7 @@ EXE_INC = \ EXE_LIBS = \ -lbasicThermophysicalModels \ -lspecie \ - -lradiation \ + -lradiationModels \ -lcompressibleTurbulenceModel \ -lcompressibleRASModels \ -lfiniteVolume \ diff --git a/applications/solvers/lagrangian/coalChemistryFoam/Make/options b/applications/solvers/lagrangian/coalChemistryFoam/Make/options index f4a9d0c52d..a2e3c13d24 100644 --- a/applications/solvers/lagrangian/coalChemistryFoam/Make/options +++ b/applications/solvers/lagrangian/coalChemistryFoam/Make/options @@ -5,18 +5,18 @@ EXE_INC = \ -I$(LIB_SRC)/lagrangian/basic/lnInclude \ -I$(LIB_SRC)/lagrangian/intermediate/lnInclude \ -I$(LIB_SRC)/lagrangian/coalCombustion/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/pdfs/lnInclude \ + -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidMixtureProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/solidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/solidMixtureProperties/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/surfaceFilmModels/lnInclude \ -I$(LIB_SRC)/ODE/lnInclude @@ -39,6 +39,6 @@ EXE_LIBS = \ -lreactionThermophysicalModels \ -lSLGThermo \ -lchemistryModel \ - -lradiation \ + -lradiationModels \ -lsurfaceFilmModels \ -lODE diff --git a/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelDyMFoam/Make/options b/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelDyMFoam/Make/options index 3c4206dc24..34ba95f0dc 100644 --- a/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelDyMFoam/Make/options +++ b/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelDyMFoam/Make/options @@ -4,7 +4,7 @@ EXE_INC = \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/turbulenceModels/incompressible/turbulenceModel \ -I$(LIB_SRC)/transportModels \ -I$(LIB_SRC)/transportModels/incompressible/singlePhaseTransportModel \ @@ -21,7 +21,7 @@ EXE_LIBS = \ -lthermophysicalFunctions \ -lbasicThermophysicalModels \ -lspecie \ - -lradiation \ + -lradiationModels \ -lincompressibleRASModels \ -lincompressibleLESModels \ -lincompressibleTransportModels \ diff --git a/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelFoam/Make/options b/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelFoam/Make/options index 1ad3529232..5e7b8b3518 100644 --- a/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelFoam/Make/options +++ b/applications/solvers/lagrangian/incompressibleUncoupledKinematicParcelFoam/Make/options @@ -4,7 +4,7 @@ EXE_INC = \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/turbulenceModels/incompressible/turbulenceModel \ -I$(LIB_SRC)/transportModels \ -I$(LIB_SRC)/transportModels/incompressible/singlePhaseTransportModel \ @@ -18,7 +18,7 @@ EXE_LIBS = \ -lthermophysicalFunctions \ -lbasicThermophysicalModels \ -lspecie \ - -lradiation \ + -lradiationModels \ -lincompressibleRASModels \ -lincompressibleLESModels \ -lincompressibleTransportModels \ diff --git a/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/Make/options b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/Make/options index eede9724ce..e679c15b7e 100644 --- a/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/Make/options +++ b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/Make/options @@ -5,18 +5,18 @@ EXE_INC = \ -I$(LIB_SRC)/lagrangian/basic/lnInclude \ -I$(LIB_SRC)/lagrangian/intermediate/lnInclude \ -I$(LIB_SRC)/lagrangian/coalCombustion/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/pdfs/lnInclude \ + -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidMixtureProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/solidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/solidMixtureProperties/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/ODE/lnInclude \ -I$(LIB_SRC)/surfaceFilmModels/lnInclude @@ -38,6 +38,6 @@ EXE_LIBS = \ -lreactionThermophysicalModels \ -lSLGThermo \ -lchemistryModel \ - -lradiation \ + -lradiationModels \ -lODE \ -lsurfaceFilmModels diff --git a/applications/solvers/lagrangian/reactingParcelFilmFoam/Make/options b/applications/solvers/lagrangian/reactingParcelFilmFoam/Make/options index e9d86d977c..ba7c9544a8 100644 --- a/applications/solvers/lagrangian/reactingParcelFilmFoam/Make/options +++ b/applications/solvers/lagrangian/reactingParcelFilmFoam/Make/options @@ -2,18 +2,18 @@ EXE_INC = \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I${LIB_SRC}/meshTools/lnInclude \ -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \ - -I$(LIB_SRC)/thermophysicalModels/pdfs/lnInclude \ + -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solidMixtureProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/solidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/solidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/surfaceFilmModels/lnInclude \ -I$(LIB_SRC)/lagrangian/basic/lnInclude \ -I$(LIB_SRC)/lagrangian/intermediate/lnInclude \ @@ -32,7 +32,7 @@ EXE_LIBS = \ -lreactionThermophysicalModels \ -lSLGThermo \ -lchemistryModel \ - -lradiation \ + -lradiationModels \ -lsurfaceFilmModels \ -llagrangianIntermediate \ -lODE diff --git a/applications/solvers/lagrangian/reactingParcelFoam/Make/options b/applications/solvers/lagrangian/reactingParcelFoam/Make/options index ee3db1695a..062f9fbd28 100644 --- a/applications/solvers/lagrangian/reactingParcelFoam/Make/options +++ b/applications/solvers/lagrangian/reactingParcelFoam/Make/options @@ -4,18 +4,18 @@ EXE_INC = \ -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \ -I$(LIB_SRC)/lagrangian/basic/lnInclude \ -I$(LIB_SRC)/lagrangian/intermediate/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/pdfs/lnInclude \ + -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidMixtureProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/solidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/solidMixtureProperties/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/ODE/lnInclude \ -I$(LIB_SRC)/surfaceFilmModels/lnInclude @@ -37,6 +37,6 @@ EXE_LIBS = \ -lreactionThermophysicalModels \ -lSLGThermo \ -lchemistryModel \ - -lradiation \ + -lradiationModels \ -lODE \ -lsurfaceFilmModels diff --git a/applications/solvers/lagrangian/steadyReactingParcelFoam/Make/options b/applications/solvers/lagrangian/steadyReactingParcelFoam/Make/options index eede9724ce..e679c15b7e 100644 --- a/applications/solvers/lagrangian/steadyReactingParcelFoam/Make/options +++ b/applications/solvers/lagrangian/steadyReactingParcelFoam/Make/options @@ -5,18 +5,18 @@ EXE_INC = \ -I$(LIB_SRC)/lagrangian/basic/lnInclude \ -I$(LIB_SRC)/lagrangian/intermediate/lnInclude \ -I$(LIB_SRC)/lagrangian/coalCombustion/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/pdfs/lnInclude \ + -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/liquidMixtureProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solidProperties/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/solidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/liquidMixtureProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/solidProperties/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/properties/solidMixtureProperties/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/ODE/lnInclude \ -I$(LIB_SRC)/surfaceFilmModels/lnInclude @@ -38,6 +38,6 @@ EXE_LIBS = \ -lreactionThermophysicalModels \ -lSLGThermo \ -lchemistryModel \ - -lradiation \ + -lradiationModels \ -lODE \ -lsurfaceFilmModels diff --git a/applications/solvers/lagrangian/uncoupledKinematicParcelFoam/Make/options b/applications/solvers/lagrangian/uncoupledKinematicParcelFoam/Make/options index 35a21df21a..5d6abe8613 100644 --- a/applications/solvers/lagrangian/uncoupledKinematicParcelFoam/Make/options +++ b/applications/solvers/lagrangian/uncoupledKinematicParcelFoam/Make/options @@ -4,7 +4,7 @@ EXE_INC = \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/turbulenceModels/compressible/turbulenceModel \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \ @@ -16,7 +16,7 @@ EXE_LIBS = \ -lthermophysicalFunctions \ -lbasicThermophysicalModels \ -lspecie \ - -lradiation \ + -lradiationModels \ -lcompressibleTurbulenceModel \ -lcompressibleRASModels \ -lcompressibleLESModels \ diff --git a/applications/test/dataEntry/Make/options b/applications/test/dataEntry/Make/options index 79fef3bb93..a4d63bfba8 100644 --- a/applications/test/dataEntry/Make/options +++ b/applications/test/dataEntry/Make/options @@ -1,11 +1,11 @@ EXE_INC = \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/lagrangian/intermediate/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \ + -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude EXE_LIBS = \ -lfiniteVolume \ -llagrangianIntermediate \ - -lradiation \ + -lradiationModels \ -lthermophysicalFunctions diff --git a/applications/test/syncTools/Test-syncTools.C b/applications/test/syncTools/Test-syncTools.C index e7fa0ae0b0..094068e94a 100644 --- a/applications/test/syncTools/Test-syncTools.C +++ b/applications/test/syncTools/Test-syncTools.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -130,6 +130,7 @@ void testPackedList(const polyMesh& mesh, Random& rndGen) { FatalErrorIn("testPackedList()") << "point:" << i + << " at:" << mesh.points()[i] << " minlabel:" << pointValues[i] << " minbits:" << bits.get(i) << " maxLabel:" << maxPointValues[i] @@ -186,6 +187,10 @@ void testSparseData(const polyMesh& mesh, Random& rndGen) { Info<< nl << "Testing Map synchronisation." << endl; + WarningIn("testSparseData()") + << "Position test of sparse data only correct for cases without cyclics" + << " with shared points." << endl; + primitivePatch allBoundary ( SubList @@ -204,7 +209,7 @@ void testSparseData(const polyMesh& mesh, Random& rndGen) { // Create some data. Use slightly perturbed positions. - Map sparseData; + Map sparseData; pointField fullData(mesh.nPoints(), point::max); forAll(localPoints, i) @@ -223,14 +228,14 @@ void testSparseData(const polyMesh& mesh, Random& rndGen) ( mesh, sparseData, - minEqOp() + minMagSqrEqOp() // true // apply separation ); syncTools::syncPointList ( mesh, fullData, - minEqOp(), + minMagSqrEqOp(), point::max // true // apply separation ); @@ -257,7 +262,7 @@ void testSparseData(const polyMesh& mesh, Random& rndGen) } // 2. Does sparseData contain more? - forAllConstIter(Map, sparseData, iter) + forAllConstIter(Map, sparseData, iter) { const point& sparsePt = iter(); label meshPointI = iter.key(); @@ -374,16 +379,12 @@ void testPointSync(const polyMesh& mesh, Random& rndGen) // Test position. { - WarningIn("testPointSync()") - << "Position test only correct for cases without cyclics" - << " with shared points." << endl; - pointField syncedPoints(mesh.points()); - syncTools::syncPointList + syncTools::syncPointPositions ( mesh, syncedPoints, - minEqOp(), + minMagSqrEqOp(), point::max ); @@ -450,20 +451,16 @@ void testEdgeSync(const polyMesh& mesh, Random& rndGen) // Test position. { - WarningIn("testEdgeSync()") - << "Position test only correct for cases without cyclics" - << " with shared edges." << endl; - pointField syncedMids(edges.size()); forAll(syncedMids, edgeI) { syncedMids[edgeI] = edges[edgeI].centre(mesh.points()); } - syncTools::syncEdgeList + syncTools::syncEdgePositions ( mesh, syncedMids, - minEqOp(), + minMagSqrEqOp(), point::max ); @@ -509,10 +506,11 @@ void testEdgeSync(const polyMesh& mesh, Random& rndGen) { if (nMasters[edgeI] != 1) { + const edge& e = edges[edgeI]; //FatalErrorIn("testEdgeSync()") WarningIn("testEdgeSync()") << "Edge " << edgeI - << " midpoint " << edges[edgeI].centre(mesh.points()) + << " at:" << mesh.points()[e[0]] << mesh.points()[e[1]] << " has " << nMasters[edgeI] << " masters." //<< exit(FatalError); @@ -532,11 +530,11 @@ void testFaceSync(const polyMesh& mesh, Random& rndGen) { pointField syncedFc(mesh.faceCentres()); - syncTools::syncFaceList + syncTools::syncFacePositions ( mesh, syncedFc, - maxEqOp() + maxMagSqrEqOp() ); forAll(syncedFc, faceI) diff --git a/applications/utilities/miscellaneous/foamDebugSwitches/Make/options b/applications/utilities/miscellaneous/foamDebugSwitches/Make/options index 804d519386..826bc4c144 100644 --- a/applications/utilities/miscellaneous/foamDebugSwitches/Make/options +++ b/applications/utilities/miscellaneous/foamDebugSwitches/Make/options @@ -34,22 +34,22 @@ EXE_LIBS = \ -llaminarFlameSpeedModels \ -lLESdeltas \ -lLESfilters \ - -lliquidMixture \ - -lliquids \ + -lliquidMixtureProperties \ + -lliquidProperties \ -lmeshTools \ -lmolecularMeasurements \ -lmolecule \ -lODE \ -lOpenFOAM \ - -lpdf \ + -ldistributionModels \ -lpotential \ - -lradiation \ + -lradiationModels \ -lrandomProcesses \ -lreactionThermophysicalModels \ -lsampling \ - -lpointSolidMixture \ + -lsolidMixtureProperties \ -lsolidParticle \ - -lpointSolids \ + -lsolidProperties \ -lspecie \ -lsurfMesh \ -lsystemCall \ diff --git a/applications/utilities/postProcessing/miscellaneous/pdfPlot/Make/options b/applications/utilities/postProcessing/miscellaneous/pdfPlot/Make/options index a140053895..0cb69c876f 100644 --- a/applications/utilities/postProcessing/miscellaneous/pdfPlot/Make/options +++ b/applications/utilities/postProcessing/miscellaneous/pdfPlot/Make/options @@ -1,8 +1,8 @@ EXE_INC = \ -I$(LIB_SRC)/finiteVolume/lnInclude \ - -I$(LIB_SRC)/thermophysicalModels/pdfs/lnInclude \ + -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude EXE_LIBS = \ - -lpdf \ + -ldistributionModels \ -lsampling diff --git a/applications/utilities/postProcessing/miscellaneous/pdfPlot/createFields.H b/applications/utilities/postProcessing/miscellaneous/pdfPlot/createFields.H index 8e9d055d74..a269ef7448 100644 --- a/applications/utilities/postProcessing/miscellaneous/pdfPlot/createFields.H +++ b/applications/utilities/postProcessing/miscellaneous/pdfPlot/createFields.H @@ -22,7 +22,14 @@ cachedRandom rndGen(label(0), -1); - autoPtr p(pdfs::pdf::New(pdfDictionary, rndGen)); + autoPtr p + ( + distributionModels::distributionModel::New + ( + pdfDictionary, + rndGen + ) + ); const scalar xMin = p->minValue(); const scalar xMax = p->maxValue(); diff --git a/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfPlot.C b/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfPlot.C index d9c9388adc..1a92c004a2 100644 --- a/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfPlot.C +++ b/applications/utilities/postProcessing/miscellaneous/pdfPlot/pdfPlot.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -27,7 +27,7 @@ Description \*---------------------------------------------------------------------------*/ #include "fvCFD.H" -#include "pdf.H" +#include "distributionModel.H" #include "makeGraph.H" #include "OFstream.H" diff --git a/applications/utilities/preProcessing/foamUpgradeCyclics/foamUpgradeCyclics.C b/applications/utilities/preProcessing/foamUpgradeCyclics/foamUpgradeCyclics.C index 84f3c5652b..b3f5e7baab 100644 --- a/applications/utilities/preProcessing/foamUpgradeCyclics/foamUpgradeCyclics.C +++ b/applications/utilities/preProcessing/foamUpgradeCyclics/foamUpgradeCyclics.C @@ -300,19 +300,23 @@ void rewriteField Info<< "Looking for entry for patch " << patchName << endl; - if (boundaryField.found(patchName) && !boundaryField.found(newName)) + // Find old patch name either direct or through wildcards + // Find new patch name direct only + + if + ( + boundaryField.found(patchName) + && !boundaryField.found(newName, false, false) + ) { Info<< " Changing entry " << patchName << " to " << newName << endl; - dictionary patchDict(boundaryField.subDict(patchName)); + dictionary& patchDict = boundaryField.subDict(patchName); if (patchDict.found("value")) { - IOWarningIn("rewriteField(..)", patchDict) - << "Cyclic patch " << patchName - << " has value entry. This will be removed." - << endl; + // Remove any value field since wrong size. patchDict.remove("value"); } diff --git a/applications/utilities/preProcessing/mapFields/MapConsistentVolFields.H b/applications/utilities/preProcessing/mapFields/MapConsistentVolFields.H index 62f30fb90a..5d36e45fce 100644 --- a/applications/utilities/preProcessing/mapFields/MapConsistentVolFields.H +++ b/applications/utilities/preProcessing/mapFields/MapConsistentVolFields.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -39,7 +39,8 @@ template void MapConsistentVolFields ( const IOobjectList& objects, - const meshToMesh& meshToMeshInterp + const meshToMesh& meshToMeshInterp, + const meshToMesh::order& mapOrder ) { const fvMesh& meshSource = meshToMeshInterp.fromMesh(); @@ -83,12 +84,7 @@ void MapConsistentVolFields ); // Interpolate field - meshToMeshInterp.interpolate - ( - fieldTarget, - fieldSource, - meshToMesh::INTERPOLATE - ); + meshToMeshInterp.interpolate(fieldTarget, fieldSource, mapOrder); // Write field fieldTarget.write(); @@ -101,11 +97,7 @@ void MapConsistentVolFields GeometricField fieldTarget ( fieldTargetIOobject, - meshToMeshInterp.interpolate - ( - fieldSource, - meshToMesh::INTERPOLATE - ) + meshToMeshInterp.interpolate(fieldSource, mapOrder) ); // Write field diff --git a/applications/utilities/preProcessing/mapFields/MapVolFields.H b/applications/utilities/preProcessing/mapFields/MapVolFields.H index 226211552e..2d31297967 100644 --- a/applications/utilities/preProcessing/mapFields/MapVolFields.H +++ b/applications/utilities/preProcessing/mapFields/MapVolFields.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -39,7 +39,8 @@ template void MapVolFields ( const IOobjectList& objects, - const meshToMesh& meshToMeshInterp + const meshToMesh& meshToMeshInterp, + const meshToMesh::order& mapOrder ) { const fvMesh& meshSource = meshToMeshInterp.fromMesh(); @@ -83,12 +84,7 @@ void MapVolFields ); // Interpolate field - meshToMeshInterp.interpolate - ( - fieldTarget, - fieldSource, - meshToMesh::INTERPOLATE - ); + meshToMeshInterp.interpolate(fieldTarget, fieldSource, mapOrder); // Write field fieldTarget.write(); diff --git a/applications/utilities/preProcessing/mapFields/mapFields.C b/applications/utilities/preProcessing/mapFields/mapFields.C index 883418619a..9f7fd25a17 100644 --- a/applications/utilities/preProcessing/mapFields/mapFields.C +++ b/applications/utilities/preProcessing/mapFields/mapFields.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -45,7 +45,8 @@ Description void mapConsistentMesh ( const fvMesh& meshSource, - const fvMesh& meshTarget + const fvMesh& meshTarget, + const meshToMesh::order& mapOrder ) { // Create the interpolation scheme @@ -61,11 +62,16 @@ void mapConsistentMesh // Map volFields // ~~~~~~~~~~~~~ - MapConsistentVolFields(objects, meshToMeshInterp); - MapConsistentVolFields(objects, meshToMeshInterp); - MapConsistentVolFields(objects, meshToMeshInterp); - MapConsistentVolFields(objects, meshToMeshInterp); - MapConsistentVolFields(objects, meshToMeshInterp); + MapConsistentVolFields(objects, meshToMeshInterp, mapOrder); + MapConsistentVolFields(objects, meshToMeshInterp, mapOrder); + MapConsistentVolFields + ( + objects, + meshToMeshInterp, + mapOrder + ); + MapConsistentVolFields(objects, meshToMeshInterp, mapOrder); + MapConsistentVolFields(objects, meshToMeshInterp, mapOrder); } { @@ -98,7 +104,8 @@ void mapSubMesh const fvMesh& meshSource, const fvMesh& meshTarget, const HashTable& patchMap, - const wordList& cuttingPatches + const wordList& cuttingPatches, + const meshToMesh::order& mapOrder ) { // Create the interpolation scheme @@ -120,11 +127,11 @@ void mapSubMesh // Map volFields // ~~~~~~~~~~~~~ - MapVolFields(objects, meshToMeshInterp); - MapVolFields(objects, meshToMeshInterp); - MapVolFields(objects, meshToMeshInterp); - MapVolFields(objects, meshToMeshInterp); - MapVolFields(objects, meshToMeshInterp); + MapVolFields(objects, meshToMeshInterp, mapOrder); + MapVolFields(objects, meshToMeshInterp, mapOrder); + MapVolFields(objects, meshToMeshInterp, mapOrder); + MapVolFields(objects, meshToMeshInterp, mapOrder); + MapVolFields(objects, meshToMeshInterp, mapOrder); } { @@ -155,7 +162,8 @@ void mapSubMesh void mapConsistentSubMesh ( const fvMesh& meshSource, - const fvMesh& meshTarget + const fvMesh& meshTarget, + const meshToMesh::order& mapOrder ) { HashTable patchMap; @@ -181,7 +189,14 @@ void mapConsistentSubMesh } } - mapSubMesh(meshSource, meshTarget, patchMap, cuttingPatchTable.toc()); + mapSubMesh + ( + meshSource, + meshTarget, + patchMap, + cuttingPatchTable.toc(), + mapOrder + ); } @@ -240,6 +255,18 @@ int main(int argc, char *argv[]) "scalar", "specify the source time" ); + argList::addOption + ( + "sourceRegion", + "word", + "specify the source region" + ); + argList::addOption + ( + "targetRegion", + "word", + "specify the target region" + ); argList::addBoolOption ( "parallelSource", @@ -255,12 +282,18 @@ int main(int argc, char *argv[]) "consistent", "source and target geometry and boundary conditions identical" ); + argList::addOption + ( + "mapMethod", + "word", + "specify the mapping method" + ); argList args(argc, argv); if (!args.check()) { - FatalError.exit(); + FatalError.exit(); } fileName rootDirTarget(args.rootPath()); @@ -270,12 +303,52 @@ int main(int argc, char *argv[]) const fileName rootDirSource = casePath.path(); const fileName caseDirSource = casePath.name(); - Info<< "Source: " << rootDirSource << " " << caseDirSource << nl - << "Target: " << rootDirTarget << " " << caseDirTarget << endl; + Info<< "Source: " << rootDirSource << " " << caseDirSource << endl; + word sourceRegion = fvMesh::defaultRegion; + if (args.optionFound("sourceRegion")) + { + sourceRegion = args["sourceRegion"]; + Info<< "Source region: " << sourceRegion << endl; + } + + Info<< "Target: " << rootDirTarget << " " << caseDirTarget << endl; + word targetRegion = fvMesh::defaultRegion; + if (args.optionFound("targetRegion")) + { + targetRegion = args["targetRegion"]; + Info<< "Target region: " << targetRegion << endl; + } const bool parallelSource = args.optionFound("parallelSource"); const bool parallelTarget = args.optionFound("parallelTarget"); - const bool consistent = args.optionFound("consistent"); + const bool consistent = args.optionFound("consistent"); + + meshToMesh::order mapOrder = meshToMesh::INTERPOLATE; + if (args.optionFound("mapMethod")) + { + const word mapMethod(args["mapMethod"]); + if (mapMethod == "mapNearest") + { + mapOrder = meshToMesh::MAP; + } + else if (mapMethod == "interpolate") + { + mapOrder = meshToMesh::INTERPOLATE; + } + else if (mapMethod == "cellPointInterpolate") + { + mapOrder = meshToMesh::CELL_POINT_INTERPOLATE; + } + else + { + FatalErrorIn(args.executable()) + << "Unknown mapMethod " << mapMethod << ". Valid options are: " + << "mapNearest, interpolate and cellPointInterpolate" + << exit(FatalError); + } + + Info<< "Mapping method: " << mapMethod << endl; + } #include "createTimes.H" @@ -323,7 +396,7 @@ int main(int argc, char *argv[]) ( IOobject ( - fvMesh::defaultRegion, + targetRegion, runTimeTarget.timeName(), runTimeTarget ) @@ -348,7 +421,7 @@ int main(int argc, char *argv[]) ( IOobject ( - fvMesh::defaultRegion, + sourceRegion, runTimeSource.timeName(), runTimeSource ) @@ -358,11 +431,18 @@ int main(int argc, char *argv[]) if (consistent) { - mapConsistentSubMesh(meshSource, meshTarget); + mapConsistentSubMesh(meshSource, meshTarget, mapOrder); } else { - mapSubMesh(meshSource, meshTarget, patchMap, cuttingPatches); + mapSubMesh + ( + meshSource, + meshTarget, + patchMap, + cuttingPatches, + mapOrder + ); } } } @@ -390,7 +470,7 @@ int main(int argc, char *argv[]) ( IOobject ( - fvMesh::defaultRegion, + sourceRegion, runTimeSource.timeName(), runTimeSource ) @@ -413,7 +493,7 @@ int main(int argc, char *argv[]) ( IOobject ( - fvMesh::defaultRegion, + targetRegion, runTimeTarget.timeName(), runTimeTarget ) @@ -423,7 +503,7 @@ int main(int argc, char *argv[]) if (consistent) { - mapConsistentSubMesh(meshSource, meshTarget); + mapConsistentSubMesh(meshSource, meshTarget, mapOrder); } else { @@ -432,7 +512,8 @@ int main(int argc, char *argv[]) meshSource, meshTarget, patchMap, - addProcessorPatches(meshTarget, cuttingPatches) + addProcessorPatches(meshTarget, cuttingPatches), + mapOrder ); } } @@ -494,7 +575,7 @@ int main(int argc, char *argv[]) ( IOobject ( - fvMesh::defaultRegion, + sourceRegion, runTimeSource.timeName(), runTimeSource ) @@ -529,7 +610,7 @@ int main(int argc, char *argv[]) ( IOobject ( - fvMesh::defaultRegion, + targetRegion, runTimeTarget.timeName(), runTimeTarget ) @@ -544,7 +625,12 @@ int main(int argc, char *argv[]) { if (consistent) { - mapConsistentSubMesh(meshSource, meshTarget); + mapConsistentSubMesh + ( + meshSource, + meshTarget, + mapOrder + ); } else { @@ -553,7 +639,8 @@ int main(int argc, char *argv[]) meshSource, meshTarget, patchMap, - addProcessorPatches(meshTarget, cuttingPatches) + addProcessorPatches(meshTarget, cuttingPatches), + mapOrder ); } } @@ -571,7 +658,7 @@ int main(int argc, char *argv[]) ( IOobject ( - fvMesh::defaultRegion, + sourceRegion, runTimeSource.timeName(), runTimeSource ) @@ -581,7 +668,7 @@ int main(int argc, char *argv[]) ( IOobject ( - fvMesh::defaultRegion, + targetRegion, runTimeTarget.timeName(), runTimeTarget ) @@ -592,11 +679,18 @@ int main(int argc, char *argv[]) if (consistent) { - mapConsistentMesh(meshSource, meshTarget); + mapConsistentMesh(meshSource, meshTarget, mapOrder); } else { - mapSubMesh(meshSource, meshTarget, patchMap, cuttingPatches); + mapSubMesh + ( + meshSource, + meshTarget, + patchMap, + cuttingPatches, + mapOrder + ); } } diff --git a/doc/changes/staticLinkage.txt b/doc/changes/staticLinkage.txt new file mode 100644 index 0000000000..916a5107ed --- /dev/null +++ b/doc/changes/staticLinkage.txt @@ -0,0 +1,35 @@ +http://www.openfoam.com +Copyright (c) 2011 OpenCFD Ltd. + +Static linkage: + +- compile libraries as static objects: + src; ./Allwmake libo +- in the desired application (e.g. interFoam) adapt Make/options + to link all indirect and direct dependencies as .o files: + + sinclude $(GENERAL_RULES)/mplib$(WM_MPLIB) + sinclude $(RULES)/mplib$(WM_MPLIB) + + EXE_LIBS = \ + -lz $(PLIBS) \ + $(FOAM_LIBBIN)/$(FOAM_MPI)/libPstream.o \ + $(FOAM_LIBBIN)/libOSspecific.o \ + $(FOAM_LIBBIN)/libtwoPhaseInterfaceProperties.o \ + $(FOAM_LIBBIN)/libinterfaceProperties.o \ + $(FOAM_LIBBIN)/libincompressibleTransportModels.o \ + $(FOAM_LIBBIN)/libincompressibleTurbulenceModel.o \ + $(FOAM_LIBBIN)/libincompressibleRASModels.o \ + $(FOAM_LIBBIN)/libincompressibleLESModels.o \ + $(FOAM_LIBBIN)/libLESdeltas.o \ + $(FOAM_LIBBIN)/libLESfilters.o \ + $(FOAM_LIBBIN)/libfiniteVolume.o \ + $(FOAM_LIBBIN)/libmeshTools.o \ + $(FOAM_LIBBIN)/libtriSurface.o \ + $(FOAM_LIBBIN)/libfileFormats.o \ + $(FOAM_LIBBIN)/libOpenFOAM.o \ + +- in Make/files add + SEXE = $(FOAM_USER_APPBIN)/interFoam-static +- wmake exe +- check with ldd diff --git a/etc/cellModels b/etc/cellModels index a90eaa94e7..68fdd9f42b 100644 --- a/etc/cellModels +++ b/etc/cellModels @@ -149,7 +149,7 @@ pyr (0 1) (1 2) (2 3) - (3 4) + (0 3) (0 4) (1 4) (2 4) diff --git a/etc/settings.csh b/etc/settings.csh index 27bb9563cc..a9c7db7118 100644 --- a/etc/settings.csh +++ b/etc/settings.csh @@ -90,7 +90,7 @@ unsetenv MPFR_ARCH_PATH # Location of compiler installation # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ if ( ! $?foamCompiler ) then - foamCompiler=system + set foamCompiler=system echo "Warning in $WM_PROJECT_DIR/etc/settings.csh:" echo " foamCompiler not set, using '$foamCompiler'" endif diff --git a/src/OpenFOAM/db/dictionary/dictionary.C b/src/OpenFOAM/db/dictionary/dictionary.C index cc8550bab9..7539f6d7de 100644 --- a/src/OpenFOAM/db/dictionary/dictionary.C +++ b/src/OpenFOAM/db/dictionary/dictionary.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -260,7 +260,12 @@ Foam::SHA1Digest Foam::dictionary::digest() const } -bool Foam::dictionary::found(const word& keyword, bool recursive) const +bool Foam::dictionary::found +( + const word& keyword, + bool recursive, + bool patternMatch +) const { if (hashedEntries_.found(keyword)) { @@ -268,7 +273,7 @@ bool Foam::dictionary::found(const word& keyword, bool recursive) const } else { - if (patternEntries_.size()) + if (patternMatch && patternEntries_.size()) { DLList::const_iterator wcLink = patternEntries_.begin(); @@ -276,7 +281,7 @@ bool Foam::dictionary::found(const word& keyword, bool recursive) const patternRegexps_.begin(); // Find in patterns using regular expressions only - if (findInPatterns(true, keyword, wcLink, reLink)) + if (findInPatterns(patternMatch, keyword, wcLink, reLink)) { return true; } @@ -284,7 +289,7 @@ bool Foam::dictionary::found(const word& keyword, bool recursive) const if (recursive && &parent_ != &dictionary::null) { - return parent_.found(keyword, recursive); + return parent_.found(keyword, recursive, patternMatch); } else { diff --git a/src/OpenFOAM/db/dictionary/dictionary.H b/src/OpenFOAM/db/dictionary/dictionary.H index 023ea225eb..ebd0dc9ea1 100644 --- a/src/OpenFOAM/db/dictionary/dictionary.H +++ b/src/OpenFOAM/db/dictionary/dictionary.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -264,7 +264,13 @@ public: //- Search dictionary for given keyword // If recursive, search parent dictionaries - bool found(const word&, bool recursive=false) const; + // If patternMatch, use regular expressions + bool found + ( + const word&, + bool recursive=false, + bool patternMatch = true + ) const; //- Find and return an entry data stream pointer if present // otherwise return NULL. diff --git a/src/OpenFOAM/meshes/meshTools/mergePoints.C b/src/OpenFOAM/meshes/meshTools/mergePoints.C index d11a2e5318..9aa614627d 100644 --- a/src/OpenFOAM/meshes/meshTools/mergePoints.C +++ b/src/OpenFOAM/meshes/meshTools/mergePoints.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -61,11 +61,26 @@ bool Foam::mergePoints return false; } + // We're comparing distance squared to origin first. + // Say if starting from two close points: + // x, y, z + // x+mergeTol, y+mergeTol, z+mergeTol + // Then the magSqr of both will be + // x^2+y^2+z^2 + // x^2+y^2+z^2 + 2*mergeTol*(x+z+y) + mergeTol^2*... + // so the difference will be 2*mergeTol*(x+y+z) const scalar mergeTolSqr = sqr(mergeTol); // Sort points by magSqr - SortableList sortedMagSqr(magSqr(points - compareOrigin)); + const pointField d(points - compareOrigin); + SortableList sortedMagSqr(magSqr(d)); + scalarField sortedTol(points.size()); + forAll(sortedMagSqr.indices(), sortI) + { + const point& pt = d[sortedMagSqr.indices()[sortI]]; + sortedTol[sortI] = 2*mergeTol*(mag(pt.x())+mag(pt.y())+mag(pt.z())); + } bool hasMerged = false; @@ -94,7 +109,7 @@ bool Foam::mergePoints ( sortedMagSqr[prevSortI] - sortedMagSqr[sortI] - ) <= mergeTolSqr; + ) <= sortedTol[sortI]; prevSortI-- ) { diff --git a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.C b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.C index fd39d1d0f8..aeb05000b7 100644 --- a/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.C +++ b/src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.C @@ -552,25 +552,102 @@ void Foam::globalMeshData::calcGlobalPointSlaves() const } -void Foam::globalMeshData::calcGlobalEdgeSlaves() const +void Foam::globalMeshData::calcPointConnectivity +( + List& allPointConnectivity +) const { - if (debug) + const globalIndexAndTransform& transforms = globalTransforms(); + const labelListList& slaves = globalPointSlaves(); + const labelListList& transformedSlaves = globalPointTransformedSlaves(); + + + // Create field with my local data + labelPairList myData(globalPointSlavesMap().constructSize()); + forAll(slaves, pointI) { - Pout<< "globalMeshData::calcGlobalEdgeSlaves() :" - << " calculating coupled master to slave edge addressing." << endl; + myData[pointI] = globalIndexAndTransform::encode + ( + Pstream::myProcNo(), + pointI, + transforms.nullTransformIndex() + ); } - - // - Send across connected edges (in global edge addressing) - // - Check on receiving side whether edge has same slave edge - // on both endpoints. + // Send over. + globalPointSlavesMap().distribute(myData); - // Coupled point to global coupled edges. - labelListList globalPointEdges(globalPointSlavesMap().constructSize()); + // String of connected points with their transform + allPointConnectivity.setSize(globalPointSlavesMap().constructSize()); + forAll(slaves, pointI) + { + // Reconstruct string of connected points + const labelList& pSlaves = slaves[pointI]; + const labelList& pTransformSlaves = transformedSlaves[pointI]; + labelPairList& pConnectivity = allPointConnectivity[pointI]; + pConnectivity.setSize(1+pSlaves.size()+pTransformSlaves.size()); + label connI = 0; - // Create local version + // Add myself + pConnectivity[connI++] = myData[pointI]; + // Add untransformed points + forAll(pSlaves, i) + { + pConnectivity[connI++] = myData[pSlaves[i]]; + } + // Add transformed points. + forAll(pTransformSlaves, i) + { + // Get transform from index + label transformI = globalPointSlavesMap().whichTransform + ( + pTransformSlaves[i] + ); + // Add transform to connectivity + const labelPair& n = myData[pTransformSlaves[i]]; + label procI = globalIndexAndTransform::processor(n); + label index = globalIndexAndTransform::index(n); + pConnectivity[connI++] = globalIndexAndTransform::encode + ( + procI, + index, + transformI + ); + } + + // Put back in slots + forAll(pSlaves, i) + { + allPointConnectivity[pSlaves[i]] = pConnectivity; + } + forAll(pTransformSlaves, i) + { + allPointConnectivity[pTransformSlaves[i]] = pConnectivity; + } + } + globalPointSlavesMap().reverseDistribute + ( + allPointConnectivity.size(), + allPointConnectivity + ); +} + + +void Foam::globalMeshData::calcGlobalPointEdges +( + labelListList& globalPointEdges, + List& globalPointPoints +) const +{ + const edgeList& edges = coupledPatch().edges(); const labelListList& pointEdges = coupledPatch().pointEdges(); const globalIndex& globalEdgeNumbers = globalEdgeNumbering(); + const labelListList& slaves = globalPointSlaves(); + const labelListList& transformedSlaves = globalPointTransformedSlaves(); + + // Create local version + globalPointEdges.setSize(globalPointSlavesMap().constructSize()); + globalPointPoints.setSize(globalPointSlavesMap().constructSize()); forAll(pointEdges, pointI) { const labelList& pEdges = pointEdges[pointI]; @@ -580,154 +657,377 @@ void Foam::globalMeshData::calcGlobalEdgeSlaves() const { globalPEdges[i] = globalEdgeNumbers.toGlobal(pEdges[i]); } + + labelPairList& globalPPoints = globalPointPoints[pointI]; + globalPPoints.setSize(pEdges.size()); + forAll(pEdges, i) + { + label otherPointI = edges[pEdges[i]].otherVertex(pointI); + globalPPoints[i] = globalIndexAndTransform::encode + ( + Pstream::myProcNo(), + otherPointI, + globalTransforms().nullTransformIndex() + ); + } } // Pull slave data to master. Dummy transform. globalPointSlavesMap().distribute(globalPointEdges); + globalPointSlavesMap().distribute(globalPointPoints); + // Add all pointEdges + forAll(slaves, pointI) + { + const labelList& pSlaves = slaves[pointI]; + const labelList& pTransformSlaves = transformedSlaves[pointI]; + + label n = 0; + forAll(pSlaves, i) + { + n += globalPointEdges[pSlaves[i]].size(); + } + forAll(pTransformSlaves, i) + { + n += globalPointEdges[pTransformSlaves[i]].size(); + } + + // Add all the point edges of the slaves to those of the (master) point + { + labelList& globalPEdges = globalPointEdges[pointI]; + label sz = globalPEdges.size(); + globalPEdges.setSize(sz+n); + forAll(pSlaves, i) + { + const labelList& otherData = globalPointEdges[pSlaves[i]]; + forAll(otherData, j) + { + globalPEdges[sz++] = otherData[j]; + } + } + forAll(pTransformSlaves, i) + { + const labelList& otherData = + globalPointEdges[pTransformSlaves[i]]; + forAll(otherData, j) + { + globalPEdges[sz++] = otherData[j]; + } + } + + // Put back in slots + forAll(pSlaves, i) + { + globalPointEdges[pSlaves[i]] = globalPEdges; + } + forAll(pTransformSlaves, i) + { + globalPointEdges[pTransformSlaves[i]] = globalPEdges; + } + } - // Now check on master if any of my edges are also on slave. - // This assumes that if slaves have a coupled edge it is also on - // the master (otherwise the mesh would be illegal anyway) + // Same for corresponding pointPoints + { + labelPairList& globalPPoints = globalPointPoints[pointI]; + label sz = globalPPoints.size(); + globalPPoints.setSize(sz + n); - // From global edge to slot in distributed data. - Map