Merge branch 'master' into cvm
This commit is contained in:
commit
c0537248fb
2
.gitignore
vendored
2
.gitignore
vendored
@ -60,6 +60,8 @@ doc/[Dd]oxygen/man
|
||||
# untracked configuration files
|
||||
/etc/prefs.csh
|
||||
/etc/prefs.sh
|
||||
/etc/config/*.csh
|
||||
/etc/config/*.sh
|
||||
|
||||
# source packages - anywhere
|
||||
*.tar.bz2
|
||||
|
@ -266,8 +266,6 @@
|
||||
internal field instead of boundary field.
|
||||
+ =ensight=: new output format for all sampledSurfaces.
|
||||
+ Function objects:
|
||||
+ =residualControl=: new function object to allow users to terminate steady
|
||||
state calculations when the defined residual levels are achieved
|
||||
+ =abortCalculation=: watches for presence of the named file in the
|
||||
$FOAM_CASE directory and aborts the calculation if it is present
|
||||
+ =timeActivatedFileUpdate=: performs a file copy/replacement once a
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 1991-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 1991-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -1,3 +1,4 @@
|
||||
if (chemistry.chemistry())
|
||||
{
|
||||
Info<< "Solving chemistry" << endl;
|
||||
|
||||
@ -10,17 +11,29 @@
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
volScalarField tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
volScalarField tc
|
||||
(
|
||||
chemistry.tc()
|
||||
);
|
||||
tmp<volScalarField> tepsilon(turbulence->epsilon());
|
||||
const volScalarField& epsilon = tepsilon();
|
||||
tmp<volScalarField> tmuEff(turbulence->muEff());
|
||||
const volScalarField& muEff = tmuEff();
|
||||
tmp<volScalarField> ttc(chemistry.tc());
|
||||
const volScalarField& tc = ttc();
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
forAll(epsilon, i)
|
||||
{
|
||||
if (epsilon[i] > 0)
|
||||
{
|
||||
// Chalmers PaSR model
|
||||
scalar tk = Cmix.value()*Foam::sqrt(muEff[i]/rho[i]/epsilon[i]);
|
||||
kappa[i] =
|
||||
(runTime.deltaTValue() + tc[i])
|
||||
/(runTime.deltaTValue() + tc[i] + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Return to laminar combustion
|
||||
kappa[i] = 1.0;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -5,7 +5,9 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
|
||||
-I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(LIB_SRC)/finiteVolume/lnInclude
|
||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
-lcompressibleTurbulenceModel \
|
||||
|
@ -1,28 +0,0 @@
|
||||
{
|
||||
Info<< "Solving chemistry" << endl;
|
||||
|
||||
chemistry.solve
|
||||
(
|
||||
runTime.value() - runTime.deltaTValue(),
|
||||
runTime.deltaTValue()
|
||||
);
|
||||
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
volScalarField tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
volScalarField tc(chemistry.tc());
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
kappa = 1.0;
|
||||
}
|
||||
|
||||
chemistrySh = kappa*chemistry.Sh()();
|
||||
}
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -19,7 +19,8 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(LIB_SRC)/sampling/lnInclude
|
||||
|
||||
EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
@ -42,4 +43,5 @@ EXE_LIBS = \
|
||||
-lradiationModels \
|
||||
-lODE \
|
||||
-lregionModels \
|
||||
-lsurfaceFilmModels
|
||||
-lsurfaceFilmModels \
|
||||
-lsampling
|
||||
|
@ -27,13 +27,16 @@ License
|
||||
scalar maxCo(readScalar(pimple.dict().lookup("maxCo")));
|
||||
|
||||
// Maximum time scale
|
||||
scalar maxDeltaT = readScalar(pimple.dict().lookup("maxDeltaT"));
|
||||
scalar maxDeltaT(pimple.dict().lookupOrDefault<scalar>("maxDeltaT", GREAT));
|
||||
|
||||
// Smoothing parameter (0-1) when smoothing iterations > 0
|
||||
scalar alphaTauSmooth(pimple.dict().lookupOrDefault("alphaTauSmooth", 0.1));
|
||||
scalar rDeltaTSmoothingCoeff
|
||||
(
|
||||
pimple.dict().lookupOrDefault<scalar>("rDeltaTSmoothingCoeff", 0.1)
|
||||
);
|
||||
|
||||
// Maximum change in cell temperature per iteration (relative to previous value)
|
||||
scalar alphaTauTemp(pimple.dict().lookupOrDefault("alphaTauTemp", 0.05));
|
||||
scalar alphaTemp(pimple.dict().lookupOrDefault("alphaTemp", 0.05));
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
@ -82,7 +82,7 @@ Info<< "Time scales min/max:" << endl;
|
||||
/rho
|
||||
);
|
||||
|
||||
tau = alphaTauTemp*thermo.Cp()*T/(tau + ROOTVSMALL);
|
||||
tau = alphaTemp*thermo.Cp()*T/(tau + ROOTVSMALL);
|
||||
|
||||
Info<< " Temperature = " << min(maxDeltaT, gMin(tau)) << ", "
|
||||
<< min(maxDeltaT, gMax(tau)) << endl;
|
||||
@ -105,7 +105,7 @@ Info<< "Time scales min/max:" << endl;
|
||||
|
||||
// Spatially smooth the time scale field
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
fvc::smooth(rDeltaT, alphaTauSmooth);
|
||||
fvc::smooth(rDeltaT, rDeltaTSmoothingCoeff);
|
||||
|
||||
Info<< " Overall = " << min(1/rDeltaT).value()
|
||||
<< ", " << max(1/rDeltaT).value() << nl << endl;
|
||||
|
@ -19,7 +19,10 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(LIB_SRC)/sampling/lnInclude \
|
||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
@ -43,4 +46,5 @@ EXE_LIBS = \
|
||||
-lradiationModels \
|
||||
-lregionModels \
|
||||
-lsurfaceFilmModels \
|
||||
-lODE
|
||||
-lODE \
|
||||
-lsampling
|
||||
|
@ -1,32 +0,0 @@
|
||||
if (chemistry.chemistry())
|
||||
{
|
||||
Info<< "Solving chemistry" << endl;
|
||||
|
||||
chemistry.solve
|
||||
(
|
||||
runTime.value() - runTime.deltaTValue(),
|
||||
runTime.deltaTValue()
|
||||
);
|
||||
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
DimensionedField<scalar, volMesh> tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
DimensionedField<scalar, volMesh> tc
|
||||
(
|
||||
chemistry.tc()().dimensionedInternalField()
|
||||
);
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
kappa = 1.0;
|
||||
}
|
||||
|
||||
chemistrySh = kappa*chemistry.Sh()();
|
||||
}
|
@ -14,7 +14,8 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(LIB_SRC)/dynamicMesh/lnInclude \
|
||||
-I$(LIB_SRC)/dynamicFvMesh/lnInclude
|
||||
-I$(LIB_SRC)/dynamicFvMesh/lnInclude \
|
||||
-I$(LIB_SRC)/sampling/lnInclude
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
@ -33,4 +34,5 @@ EXE_LIBS = \
|
||||
-lsurfaceFilmModels \
|
||||
-ldynamicMesh \
|
||||
-ldynamicFvMesh \
|
||||
-ltopoChangerFvMesh
|
||||
-ltopoChangerFvMesh \
|
||||
-lsampling
|
||||
|
@ -12,6 +12,7 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/meshTools/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(LIB_SRC)/sampling/lnInclude
|
||||
|
||||
EXE_LIBS = \
|
||||
-llagrangian \
|
||||
@ -26,4 +27,5 @@ EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
-lmeshTools \
|
||||
-lregionModels \
|
||||
-lsurfaceFilmModels
|
||||
-lsurfaceFilmModels \
|
||||
-lsampling
|
||||
|
@ -19,7 +19,10 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(LIB_SRC)/sampling/lnInclude \
|
||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
@ -42,4 +45,5 @@ EXE_LIBS = \
|
||||
-lradiationModels \
|
||||
-lODE \
|
||||
-lregionModels \
|
||||
-lsurfaceFilmModels
|
||||
-lsurfaceFilmModels \
|
||||
-lsampling
|
||||
|
@ -1,31 +0,0 @@
|
||||
{
|
||||
Info<< "Solving chemistry" << endl;
|
||||
|
||||
chemistry.solve
|
||||
(
|
||||
runTime.value() - runTime.deltaTValue(),
|
||||
runTime.deltaTValue()
|
||||
);
|
||||
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
DimensionedField<scalar, volMesh> tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
DimensionedField<scalar, volMesh> tc
|
||||
(
|
||||
chemistry.tc()().dimensionedInternalField()
|
||||
);
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
kappa = 1.0;
|
||||
}
|
||||
|
||||
chemistrySh = kappa*chemistry.Sh()();
|
||||
}
|
@ -18,7 +18,10 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(LIB_SRC)/lagrangian/basic/lnInclude \
|
||||
-I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(LIB_SRC)/sampling/lnInclude \
|
||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
@ -37,4 +40,5 @@ EXE_LIBS = \
|
||||
-lradiationModels \
|
||||
-lsurfaceFilmModels \
|
||||
-llagrangianIntermediate \
|
||||
-lODE
|
||||
-lODE \
|
||||
-lsampling
|
||||
|
@ -1,32 +0,0 @@
|
||||
if (chemistry.chemistry())
|
||||
{
|
||||
Info << "Solving chemistry" << endl;
|
||||
|
||||
chemistry.solve
|
||||
(
|
||||
runTime.value() - runTime.deltaTValue(),
|
||||
runTime.deltaTValue()
|
||||
);
|
||||
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
DimensionedField<scalar, volMesh> tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
DimensionedField<scalar, volMesh> tc
|
||||
(
|
||||
chemistry.tc()().dimensionedInternalField()
|
||||
);
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
kappa = 1.0;
|
||||
}
|
||||
|
||||
chemistrySh = kappa*chemistry.Sh()();
|
||||
}
|
@ -18,7 +18,10 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(LIB_SRC)/sampling/lnInclude \
|
||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
@ -41,4 +44,5 @@ EXE_LIBS = \
|
||||
-lradiationModels \
|
||||
-lODE \
|
||||
-lregionModels \
|
||||
-lsurfaceFilmModels
|
||||
-lsurfaceFilmModels \
|
||||
-lsampling
|
||||
|
@ -1,31 +0,0 @@
|
||||
{
|
||||
Info<< "Solving chemistry" << endl;
|
||||
|
||||
chemistry.solve
|
||||
(
|
||||
runTime.value() - runTime.deltaTValue(),
|
||||
runTime.deltaTValue()
|
||||
);
|
||||
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
DimensionedField<scalar, volMesh> tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
DimensionedField<scalar, volMesh> tc
|
||||
(
|
||||
chemistry.tc()().dimensionedInternalField()
|
||||
);
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
kappa = 1.0;
|
||||
}
|
||||
|
||||
chemistrySh = kappa*chemistry.Sh()();
|
||||
}
|
@ -9,7 +9,8 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
||||
-I$(LIB_SRC)/meshTools/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(LIB_SRC)/sampling/lnInclude
|
||||
|
||||
EXE_LIBS = \
|
||||
-llagrangian \
|
||||
@ -24,4 +25,5 @@ EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
-lmeshTools \
|
||||
-lregionModels \
|
||||
-lsurfaceFilmModels
|
||||
-lsurfaceFilmModels \
|
||||
-lsampling
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2008-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -28,12 +28,33 @@ Description
|
||||
Read the dictionary provided as an argument, expand the macros etc. and
|
||||
write the resulting dictionary to standard output.
|
||||
|
||||
Usage
|
||||
- expandDictionary inputDict [OPTION]
|
||||
|
||||
\param -list \n
|
||||
Report the #include/#includeIfPresent to stdout only.
|
||||
|
||||
Note
|
||||
The \c -list option can be useful when determining which files
|
||||
are actually included by a directory. It can also be used to
|
||||
determine which files may need to be copied when transferring
|
||||
simulation to another environment. The following code snippet
|
||||
could be a useful basis for such cases:
|
||||
|
||||
\verbatim
|
||||
for i in . 0 constant system
|
||||
do
|
||||
find $i -maxdepth 1 -type f -exec expandDictionary -list '{}' \;
|
||||
done | sed -ne '/^"\//!{ s/^"//; s/"$//; p }' | sort | uniq
|
||||
\endverbatim
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "IFstream.H"
|
||||
#include "IOobject.H"
|
||||
#include "dictionary.H"
|
||||
#include "includeEntry.H"
|
||||
|
||||
using namespace Foam;
|
||||
|
||||
@ -48,6 +69,12 @@ int main(int argc, char *argv[])
|
||||
"the resulting dictionary to standard output."
|
||||
);
|
||||
|
||||
argList::addBoolOption
|
||||
(
|
||||
"list",
|
||||
"Report the #include/#includeIfPresent to stdout only"
|
||||
);
|
||||
|
||||
argList::noBanner();
|
||||
argList::noParallel();
|
||||
argList::validArgs.append("inputDict");
|
||||
@ -55,12 +82,22 @@ int main(int argc, char *argv[])
|
||||
|
||||
const string dictName = args[1];
|
||||
|
||||
IOobject::writeBanner(Info)
|
||||
<<"//\n// " << dictName << "\n//\n";
|
||||
const bool listOpt = args.optionFound("list");
|
||||
|
||||
dictionary(IFstream(dictName)(), true).write(Info, false);
|
||||
if (listOpt)
|
||||
{
|
||||
Foam::functionEntries::includeEntry::report = true;
|
||||
}
|
||||
|
||||
IOobject::writeDivider(Info);
|
||||
dictionary dict(IFstream(dictName)(), true);
|
||||
|
||||
if (!listOpt)
|
||||
{
|
||||
IOobject::writeBanner(Info)
|
||||
<<"//\n// " << dictName << "\n//\n";
|
||||
dict.write(Info, false);
|
||||
IOobject::writeDivider(Info);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -0,0 +1,3 @@
|
||||
surfaceMeshInfo.C
|
||||
|
||||
EXE = $(FOAM_APPBIN)/surfaceMeshInfo
|
@ -0,0 +1,5 @@
|
||||
EXE_INC = \
|
||||
-I$(LIB_SRC)/meshTools/lnInclude \
|
||||
-I$(LIB_SRC)/surfMesh/lnInclude
|
||||
|
||||
EXE_LIBS = -lmeshTools -lsurfMesh
|
177
applications/utilities/surface/surfaceMeshInfo/surfaceMeshInfo.C
Normal file
177
applications/utilities/surface/surfaceMeshInfo/surfaceMeshInfo.C
Normal file
@ -0,0 +1,177 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011-2011 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Application
|
||||
surfaceMeshInfo
|
||||
|
||||
Description
|
||||
Miscellaneous information about surface meshes
|
||||
|
||||
Usage
|
||||
- surfaceMeshInfo surfaceFile [OPTION]
|
||||
|
||||
\param -areas \n
|
||||
Report area for each face.
|
||||
|
||||
\param -scale \<scale\> \n
|
||||
Specify a scaling factor when reading files.
|
||||
|
||||
\param -xml \n
|
||||
Write output in XML format.
|
||||
|
||||
Note
|
||||
The filename extensions are used to determine the file format type.
|
||||
|
||||
The XML-like output can be useful for extraction with other tools,
|
||||
but either output format can be easily extracted with a simple sed
|
||||
command:
|
||||
\verbatim
|
||||
surfaceMeshInfo surfaceFile -areas | \
|
||||
sed -ne '/areas/,/:/{ /:/!p }'
|
||||
|
||||
surfaceMeshInfo surfaceFile -areas -xml | \
|
||||
sed -ne '/<areas/,/</{ /</!p }'
|
||||
\endverbatim
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "timeSelector.H"
|
||||
#include "Time.H"
|
||||
|
||||
#include "UnsortedMeshedSurfaces.H"
|
||||
|
||||
using namespace Foam;
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
// Main program:
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
argList::addNote
|
||||
(
|
||||
"information about surface meshes"
|
||||
);
|
||||
|
||||
argList::noBanner();
|
||||
argList::noParallel();
|
||||
argList::validArgs.append("surfaceFile");
|
||||
|
||||
argList::addOption
|
||||
(
|
||||
"scale",
|
||||
"factor",
|
||||
"geometry scaling factor - default is 1"
|
||||
);
|
||||
argList::addBoolOption
|
||||
(
|
||||
"areas",
|
||||
"display area of each face"
|
||||
);
|
||||
argList::addBoolOption
|
||||
(
|
||||
"xml",
|
||||
"write output in XML format"
|
||||
);
|
||||
|
||||
argList args(argc, argv);
|
||||
Time runTime(args.rootPath(), args.caseName());
|
||||
|
||||
const fileName importName = args[1];
|
||||
|
||||
// check that reading is supported
|
||||
if (!UnsortedMeshedSurface<face>::canRead(importName, true))
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
const bool writeXML = args.optionFound("xml");
|
||||
const bool writeAreas = args.optionFound("areas");
|
||||
|
||||
|
||||
// use UnsortedMeshedSurface, not MeshedSurface to maintain ordering
|
||||
UnsortedMeshedSurface<face> surf(importName);
|
||||
|
||||
scalar scaling = 0;
|
||||
if (args.optionReadIfPresent("scale", scaling) && scaling > 0)
|
||||
{
|
||||
Info<< " -scale " << scaling << endl;
|
||||
surf.scalePoints(scaling);
|
||||
}
|
||||
|
||||
scalar areaTotal = 0;
|
||||
|
||||
if (writeXML)
|
||||
{
|
||||
Info<<"<?xml version='1.0' encoding='utf-8'?>" << nl
|
||||
<<"<surfaceMeshInfo>" << nl
|
||||
<< "<npoints>" << surf.nPoints() << "</npoints>" << nl
|
||||
<< "<nfaces>" << surf.size() << "</nfaces>" << nl;
|
||||
|
||||
if (writeAreas)
|
||||
{
|
||||
Info<<"<areas size='" << surf.size() << "'>" << nl;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Info<< "nPoints : " << surf.nPoints() << nl
|
||||
<< "nFaces : " << surf.size() << nl;
|
||||
|
||||
if (writeAreas)
|
||||
{
|
||||
Info<< "areas : " << nl;
|
||||
}
|
||||
}
|
||||
|
||||
forAll(surf, faceI)
|
||||
{
|
||||
const scalar fArea(surf[faceI].mag(surf.points()));
|
||||
areaTotal += fArea;
|
||||
|
||||
if (writeAreas)
|
||||
{
|
||||
Info<< fArea << nl;
|
||||
}
|
||||
}
|
||||
|
||||
if (writeXML)
|
||||
{
|
||||
if (writeAreas)
|
||||
{
|
||||
Info<<"</areas>" << nl;
|
||||
}
|
||||
|
||||
Info<< "<area>" << areaTotal << "</area>" << nl
|
||||
<< "</surfaceMeshInfo>" << nl;
|
||||
}
|
||||
else
|
||||
{
|
||||
Info<< "area : " << areaTotal << nl;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
@ -38,9 +38,13 @@
|
||||
# && _foamSource $foamPrefs
|
||||
# \endcode
|
||||
#
|
||||
# Note
|
||||
# This script must exist in <foamInstall>/OpenFOAM-<VERSION>/bin/
|
||||
# or <foamInstall>/openfoam<VERSION>/bin/ (for the debian version)
|
||||
#
|
||||
#-------------------------------------------------------------------------------
|
||||
usage() {
|
||||
[ "$quietOpt" = true ] && exit 1
|
||||
[ "${quietOpt:-$silentOpt}" = true ] && exit 1
|
||||
|
||||
exec 1>&2
|
||||
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
|
||||
@ -53,6 +57,7 @@ options:
|
||||
-mode <mode> any combination of u(user), g(group), o(other)
|
||||
-prefix <dir> specify an alternative installation prefix
|
||||
-quiet suppress all normal output
|
||||
-silent suppress all stderr output
|
||||
-version <ver> specify an alternative OpenFOAM version
|
||||
in the form Maj.Min.Rev (eg, 1.7.0)
|
||||
-help print the usage
|
||||
@ -72,13 +77,9 @@ USAGE
|
||||
exit 1
|
||||
}
|
||||
|
||||
#
|
||||
# This script must exist in <foamInstall>/OpenFOAM-<VERSION>/bin/
|
||||
# or <foamInstall>/openfoam<VERSION>/bin/ (for the debian version)
|
||||
#
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
# the bindir:
|
||||
# the bin dir:
|
||||
binDir="${0%/*}"
|
||||
|
||||
# the project dir:
|
||||
@ -128,7 +129,7 @@ esac
|
||||
|
||||
# default mode is 'ugo'
|
||||
mode=ugo
|
||||
unset listOpt quietOpt
|
||||
unset listOpt quietOpt silentOpt
|
||||
|
||||
# parse options
|
||||
while [ "$#" -gt 0 ]
|
||||
@ -162,6 +163,9 @@ do
|
||||
-q | -quiet)
|
||||
quietOpt=true
|
||||
;;
|
||||
-s | -silent)
|
||||
silentOpt=true
|
||||
;;
|
||||
-v | -version)
|
||||
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||
version="$2"
|
||||
@ -241,7 +245,7 @@ then
|
||||
# list directories, or potential file locations
|
||||
[ "$nArgs" -le 1 ] || usage
|
||||
|
||||
# a silly combination, but -quiet has precedence
|
||||
# a silly combination, but -quiet does have precedence
|
||||
[ "$quietOpt" = true ] && exit 0
|
||||
|
||||
for dir
|
||||
|
62
bin/foamExec
62
bin/foamExec
@ -31,12 +31,21 @@
|
||||
# Runs the <foamVersion> version of executable <foamCommand>
|
||||
# with the rest of the arguments.
|
||||
#
|
||||
# Can also be used for parallel runs e.g.
|
||||
# mpirun -np <nProcs> \
|
||||
# foamExec -v <foamVersion> <foamCommand> ... -parallel
|
||||
# Can also be used for parallel runs. For example,
|
||||
# \code
|
||||
# mpirun -np <nProcs> \
|
||||
# foamExec -version <foamVersion> <foamCommand> ... -parallel
|
||||
# \endcode
|
||||
#
|
||||
# Note
|
||||
# This script must exist in <foamInstall>/OpenFOAM-<VERSION>/bin/
|
||||
# or <foamInstall>/openfoam<VERSION>/bin/ (for the debian version)
|
||||
#
|
||||
# foamEtcFile must be found in the same directory as this script
|
||||
#
|
||||
# SeeAlso
|
||||
# foamEtcFile
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
usage() {
|
||||
exec 1>&2
|
||||
@ -46,9 +55,11 @@ usage() {
|
||||
Usage: ${0##*/} [OPTION] <application> ...
|
||||
|
||||
options:
|
||||
-prefix <dir> specify an alternative installation prefix
|
||||
pass through to foamEtcFile and set as FOAM_INST_DIR
|
||||
-version <ver> specify an alternative OpenFOAM version
|
||||
pass through to foamEtcFile
|
||||
-help this usage
|
||||
-help print the usage
|
||||
|
||||
* run a particular OpenFOAM version of <application>
|
||||
|
||||
@ -56,13 +67,21 @@ USAGE
|
||||
exit 1
|
||||
}
|
||||
|
||||
#
|
||||
# This script must exist in <foamInstall>/OpenFOAM-<VERSION>/bin/
|
||||
# or <foamInstall>/openfoam<VERSION>/bin/ (for the debian version)
|
||||
#
|
||||
# foamEtcFile must be found in the same directory as this script
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
# the bin dir:
|
||||
binDir="${0%/*}"
|
||||
|
||||
# the project dir:
|
||||
projectDir="${binDir%/bin}"
|
||||
|
||||
# the prefix dir (same as foamInstall):
|
||||
prefixDir="${projectDir%/*}"
|
||||
|
||||
# # the name used for the project directory
|
||||
# projectDirName="${projectDir##*/}"
|
||||
|
||||
|
||||
unset etcOpts version
|
||||
# parse options
|
||||
while [ "$#" -gt 0 ]
|
||||
@ -71,15 +90,21 @@ do
|
||||
-h | -help)
|
||||
usage
|
||||
;;
|
||||
-v | -version)
|
||||
-m | -mode)
|
||||
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||
version="$2"
|
||||
etcOpts="$etcOpts $1 $2" # pass-thru to foamEtcFile
|
||||
shift
|
||||
;;
|
||||
-m | -mode | -p | -prefix)
|
||||
-p | -prefix)
|
||||
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||
etcOpts="$etcOpts $1 $2" # pass-thru to foamEtcFile
|
||||
prefixDir="$2"
|
||||
shift
|
||||
;;
|
||||
-v | -version)
|
||||
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||
etcOpts="$etcOpts $1 $2" # pass-thru to foamEtcFile
|
||||
version="$2"
|
||||
shift
|
||||
;;
|
||||
--)
|
||||
@ -96,22 +121,21 @@ do
|
||||
shift
|
||||
done
|
||||
|
||||
|
||||
#
|
||||
# Find and source OpenFOAM settings (bashrc)
|
||||
# placed in function to preserve command-line arguments
|
||||
#
|
||||
sourceRc()
|
||||
{
|
||||
# default is the current version
|
||||
: ${version:=${WM_PROJECT_VERSION:-unknown}}
|
||||
|
||||
foamDotFile="$(${0%/*}/foamEtcFile $etcOpts bashrc)" || {
|
||||
echo "Error : bashrc file could not be found for OpenFOAM-$version" 1>&2
|
||||
foamDotFile="$($binDir/foamEtcFile $etcOpts bashrc)" || {
|
||||
echo "Error : bashrc file could not be found for OpenFOAM-${version:-${WM_PROJECT_VERSION:-???}}" 1>&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
. $foamDotFile
|
||||
# set to consistent value before sourcing the bashrc
|
||||
export FOAM_INST_DIR="$prefixDir"
|
||||
|
||||
. $foamDotFile $FOAM_SETTINGS
|
||||
}
|
||||
|
||||
|
||||
|
70
bin/foamJob
70
bin/foamJob
@ -26,6 +26,8 @@
|
||||
# foamJob
|
||||
#
|
||||
# Description
|
||||
# Run an OpenFOAM job in background.
|
||||
# Redirects the output to 'log' in the case directory.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
usage() {
|
||||
@ -36,9 +38,9 @@ usage() {
|
||||
Usage: ${0##*/} [OPTION] <application> ...
|
||||
options:
|
||||
-case <dir> specify alternative case directory, default is the cwd
|
||||
-p parallel run of processors
|
||||
-s also sends output to screen
|
||||
-v <ver> specify OpenFOAM version
|
||||
-parallel parallel run of processors
|
||||
-screen also sends output to screen
|
||||
-version <ver> specify an alternative OpenFOAM version
|
||||
-help print the usage
|
||||
|
||||
* run an OpenFOAM job in background.
|
||||
@ -95,23 +97,22 @@ do
|
||||
usage
|
||||
;;
|
||||
-case)
|
||||
[ "$#" -ge 2 ] || usage "'-case' option requires an argument"
|
||||
caseDir=$2
|
||||
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||
cd "$2" 2>/dev/null || usage "directory does not exist: '$2'"
|
||||
shift 2
|
||||
cd "$caseDir" 2>/dev/null || usage "directory does not exist: '$caseDir'"
|
||||
;;
|
||||
-p)
|
||||
-p | -parallel)
|
||||
parallelOpt=true
|
||||
shift
|
||||
;;
|
||||
-s)
|
||||
-s | -screen)
|
||||
screenOpt=true
|
||||
shift
|
||||
;;
|
||||
-v)
|
||||
shift
|
||||
version=$1
|
||||
shift
|
||||
-v | -version)
|
||||
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||
version="$2"
|
||||
shift 2
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
@ -126,29 +127,32 @@ do
|
||||
esac
|
||||
done
|
||||
|
||||
if [ "$#" -lt 1 ]
|
||||
then
|
||||
usage "No application specified"
|
||||
fi
|
||||
[ "$#" -ge 1 ] || usage "No application specified"
|
||||
|
||||
# use foamExec for a specified version and for remote (parallel) runs
|
||||
|
||||
# use foamExec for a specified version
|
||||
# also need foamExec for remote (parallel) runs
|
||||
if [ -n "$version" -o "$parallelOpt" = true ]
|
||||
then
|
||||
APPLICATION=`findExec foamExec`
|
||||
if [ $? -ne 0 ]
|
||||
# when possible, determine if application even exists
|
||||
if [ -z "$version" ]
|
||||
then
|
||||
usage "'foamExec' not found"
|
||||
findExec $1 >/dev/null || usage "Application '$1' not found"
|
||||
fi
|
||||
if [ -n "$version" ]
|
||||
|
||||
# use foamExec for dispatching
|
||||
APPLICATION=`findExec foamExec` || usage "'foamExec' not found"
|
||||
|
||||
[ -n "$version" ] && APPLICATION="$APPLICATION -version $version"
|
||||
|
||||
# attempt to preserve the installation directory 'FOAM_INST_DIR'
|
||||
if [ -d "$FOAM_INST_DIR" ]
|
||||
then
|
||||
APPLICATION="$APPLICATION -v $version"
|
||||
APPLICATION="$APPLICATION -prefix $FOAM_INST_DIR"
|
||||
fi
|
||||
|
||||
else
|
||||
APPLICATION=`findExec $1`
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
usage "Application '$1' executable not found"
|
||||
fi
|
||||
APPLICATION=`findExec $1` || usage "Application '$1' not found"
|
||||
echo "Application : $1"
|
||||
shift
|
||||
fi
|
||||
@ -182,11 +186,7 @@ then
|
||||
#
|
||||
# locate mpirun
|
||||
#
|
||||
mpirun=`findExec mpirun`
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
usage "'mpirun' not found"
|
||||
fi
|
||||
mpirun=`findExec mpirun` || usage "'mpirun' not found"
|
||||
mpiopts="-np $NPROCS"
|
||||
|
||||
#
|
||||
@ -217,10 +217,10 @@ then
|
||||
#
|
||||
if [ "$screenOpt" = true ]
|
||||
then
|
||||
echo "Executing: mpirun $mpiopts $APPLICATION $@ -parallel | tee log"
|
||||
$mpirun $mpiopts $APPLICATION $@ -parallel | tee log
|
||||
echo "Executing: $mpirun $mpiopts $APPLICATION $@ -parallel | tee log"
|
||||
$mpirun $mpiopts $APPLICATION $@ -parallel | tee log
|
||||
else
|
||||
echo "Executing: mpirun $mpiopts $APPLICATION $@ -parallel > log 2>&1"
|
||||
echo "Executing: $mpirun $mpiopts $APPLICATION $@ -parallel > log 2>&1"
|
||||
$mpirun $mpiopts $APPLICATION $@ -parallel > log 2>&1 &
|
||||
fi
|
||||
|
||||
|
@ -55,15 +55,25 @@ timestamps as before or the (linux-specific) 'inotify' system framework
|
||||
- the slave processor directories have no system directory and the
|
||||
constant directory only contains the mesh.
|
||||
- start the job in distributed mode by specifying the slave roots
|
||||
(so one less than the number of processors) with
|
||||
the -roots command line option:
|
||||
(so one fewer than the number of processors) with
|
||||
the -roots command-line option:
|
||||
|
||||
mpirun -np 2 icoFoam -roots '("/tmp")' -parallel
|
||||
mpirun -np 4 icoFoam -roots '("/tmp" "/tmp" "/tmp")' -parallel
|
||||
|
||||
- the alternative to the -roots option is to have a
|
||||
cavity/system/decomposeParDict on the master with
|
||||
distributed yes;
|
||||
roots ("/tmp");
|
||||
roots ("/tmp" "/tmp" "/tmp");
|
||||
|
||||
- as a convenience for cases when the slave roots are identical,
|
||||
a single root entry is interpreted as being the same for all slaves.
|
||||
With the -roots command-line option, this can take one of two forms:
|
||||
|
||||
mpirun -np 4 icoFoam -roots '("/tmp")' -parallel
|
||||
|
||||
or simply
|
||||
|
||||
mpirun -np 4 icoFoam -roots '"/tmp"' -parallel
|
||||
|
||||
|
||||
Details:
|
||||
|
@ -56,16 +56,22 @@ export ParaView_MAJOR=detect
|
||||
|
||||
|
||||
# Evaluate command-line parameters for ParaView
|
||||
while [ $# -gt 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
ParaView*=*)
|
||||
# name=value -> export name=value
|
||||
eval "export $1"
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
_foamParaviewEval()
|
||||
{
|
||||
while [ $# -gt 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
ParaView*=*)
|
||||
# name=value -> export name=value
|
||||
eval "export $1"
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
}
|
||||
|
||||
# Evaluate command-line parameters
|
||||
_foamParaviewEval $@
|
||||
|
||||
|
||||
# set MAJOR version to correspond to VERSION
|
||||
@ -108,6 +114,7 @@ else
|
||||
fi
|
||||
|
||||
|
||||
unset _foamParaviewEval
|
||||
unset cleaned cmake paraviewInstDir paraviewPython
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
|
@ -144,6 +144,10 @@ _foamEval()
|
||||
while [ $# -gt 0 ]
|
||||
do
|
||||
case "$1" in
|
||||
-*)
|
||||
# stray option (not meant for us here) -> get out
|
||||
break
|
||||
;;
|
||||
*=)
|
||||
# name= -> unset name
|
||||
[ "$FOAM_VERBOSE" -a "$PS1" ] && echo "unset ${1%=}"
|
||||
@ -160,7 +164,7 @@ _foamEval()
|
||||
then
|
||||
_foamSource "$1"
|
||||
else
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile "$1"`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile -silent "$1"`
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
51
etc/config/compiler.csh-EXAMPLE
Normal file
51
etc/config/compiler.csh-EXAMPLE
Normal file
@ -0,0 +1,51 @@
|
||||
#----------------------------------*-sh-*--------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2011 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# File
|
||||
# config/compiler.csh
|
||||
#
|
||||
# Description
|
||||
# Fine tuning of ThirdParty compiler settings for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/settings.csh
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Modified compiler settings
|
||||
switch ("$WM_COMPILER")
|
||||
case Gcc46:
|
||||
case Gcc46++0x:
|
||||
set gcc_version=gcc-4.6.0
|
||||
set gmp_version=gmp-5.0.1
|
||||
set mpfr_version=mpfr-2.4.2
|
||||
set mpc_version=mpc-0.8.1
|
||||
breaksw
|
||||
case Gcc45:
|
||||
case Gcc45++0x:
|
||||
set gcc_version=gcc-4.5.2
|
||||
set gmp_version=gmp-5.0.1
|
||||
set mpfr_version=mpfr-2.4.2
|
||||
set mpc_version=mpc-0.8.1
|
||||
breaksw
|
||||
endsw
|
||||
|
||||
# ----------------------------------------------------------------- end-of-file
|
49
etc/config/compiler.sh-EXAMPLE
Normal file
49
etc/config/compiler.sh-EXAMPLE
Normal file
@ -0,0 +1,49 @@
|
||||
#----------------------------------*-sh-*--------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2011 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# File
|
||||
# config/compiler.sh
|
||||
#
|
||||
# Description
|
||||
# Fine tuning of ThirdParty compiler settings for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/settings.sh
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Modified compiler settings
|
||||
case "$WM_COMPILER" in
|
||||
Gcc46 | Gcc46++0x)
|
||||
gcc_version=gcc-4.6.0
|
||||
gmp_version=gmp-5.0.1
|
||||
mpfr_version=mpfr-2.4.2
|
||||
mpc_version=mpc-0.8.1
|
||||
;;
|
||||
Gcc45 | Gcc45++0x)
|
||||
gcc_version=gcc-4.5.2
|
||||
gmp_version=gmp-5.0.1
|
||||
mpfr_version=mpfr-2.4.2
|
||||
mpc_version=mpc-0.8.1
|
||||
;;
|
||||
esac
|
||||
|
||||
# ----------------------------------------------------------------- end-of-file
|
36
etc/config/openmpi.csh-EXAMPLE
Normal file
36
etc/config/openmpi.csh-EXAMPLE
Normal file
@ -0,0 +1,36 @@
|
||||
#----------------------------------*-sh-*--------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2011 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# File
|
||||
# config/openmpi.csh
|
||||
#
|
||||
# Description
|
||||
# Fine tuning of openmpi settings for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/settings.csh
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Modified openmpi settings
|
||||
setenv FOAM_MPI openmpi-1.4.3
|
||||
|
||||
# ----------------------------------------------------------------- end-of-file
|
36
etc/config/openmpi.sh-EXAMPLE
Normal file
36
etc/config/openmpi.sh-EXAMPLE
Normal file
@ -0,0 +1,36 @@
|
||||
#----------------------------------*-sh-*--------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011-2011 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# File
|
||||
# config/openmpi.sh
|
||||
#
|
||||
# Description
|
||||
# Fine tuning of openmpi settings for OpenFOAM
|
||||
# Sourced from OpenFOAM-<VERSION>/etc/settings.sh
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# Modified openmpi settings
|
||||
export FOAM_MPI=openmpi-1.4.3
|
||||
|
||||
# ----------------------------------------------------------------- end-of-file
|
@ -142,6 +142,10 @@ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile prefs.csh`
|
||||
setenv FOAM_SETTINGS "${*}"
|
||||
while ( $#argv > 0 )
|
||||
switch ($argv[1])
|
||||
case -*:
|
||||
# stray option (not meant for us here) -> get out
|
||||
break
|
||||
breaksw
|
||||
case *=:
|
||||
# name= -> unsetenv name
|
||||
if ($?FOAM_VERBOSE && $?prompt) echo "unsetenv $argv[1]:s/=//"
|
||||
@ -157,7 +161,7 @@ while ( $#argv > 0 )
|
||||
if ( -f "$1" ) then
|
||||
_foamSource "$1"
|
||||
else
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile "$1"`
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile -silent "$1"`
|
||||
endif
|
||||
breaksw
|
||||
endsw
|
||||
|
@ -248,6 +248,9 @@ case ThirdParty:
|
||||
breaksw
|
||||
endsw
|
||||
|
||||
# optional configuration tweaks:
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config/compiler.csh`
|
||||
|
||||
if ( $?gcc_version ) then
|
||||
set gccDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/$gcc_version
|
||||
set gmpDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/$gmp_version
|
||||
@ -367,8 +370,10 @@ unsetenv MPI_ARCH_PATH MPI_HOME FOAM_MPI_LIBBIN
|
||||
|
||||
switch ("$WM_MPLIB")
|
||||
case OPENMPI:
|
||||
#setenv FOAM_MPI openmpi-1.4.3
|
||||
setenv FOAM_MPI openmpi-1.5.3
|
||||
# optional configuration tweaks:
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config/openmpi.csh`
|
||||
|
||||
setenv MPI_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
|
||||
|
||||
# Tell OpenMPI where to find its install directory
|
||||
|
@ -265,6 +265,9 @@ OpenFOAM | ThirdParty)
|
||||
;;
|
||||
esac
|
||||
|
||||
# optional configuration tweaks:
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config/compiler.sh`
|
||||
|
||||
if [ -n "$gcc_version" ]
|
||||
then
|
||||
gccDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/$gcc_version
|
||||
@ -387,8 +390,10 @@ unset MPI_ARCH_PATH MPI_HOME FOAM_MPI_LIBBIN
|
||||
|
||||
case "$WM_MPLIB" in
|
||||
OPENMPI)
|
||||
#export FOAM_MPI=openmpi-1.4.3
|
||||
export FOAM_MPI=openmpi-1.5.3
|
||||
# optional configuration tweaks:
|
||||
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config/openmpi.sh`
|
||||
|
||||
export MPI_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
|
||||
|
||||
# Tell OpenMPI where to find its install directory
|
||||
|
@ -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,6 +39,9 @@ const Foam::word Foam::functionEntries::includeEntry::typeName
|
||||
// might include includeEntry
|
||||
int Foam::functionEntries::includeEntry::debug(0);
|
||||
|
||||
bool Foam::functionEntries::includeEntry::report(false);
|
||||
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
namespace functionEntries
|
||||
@ -89,10 +92,15 @@ bool Foam::functionEntries::includeEntry::execute
|
||||
Istream& is
|
||||
)
|
||||
{
|
||||
IFstream ifs(includeFileName(is));
|
||||
const fileName fName(includeFileName(is));
|
||||
IFstream ifs(fName);
|
||||
|
||||
if (ifs)
|
||||
{
|
||||
if (Foam::functionEntries::includeEntry::report)
|
||||
{
|
||||
Info<< fName << endl;
|
||||
}
|
||||
parentDict.read(ifs);
|
||||
return true;
|
||||
}
|
||||
@ -119,10 +127,15 @@ bool Foam::functionEntries::includeEntry::execute
|
||||
Istream& is
|
||||
)
|
||||
{
|
||||
IFstream ifs(includeFileName(is));
|
||||
const fileName fName(includeFileName(is));
|
||||
IFstream ifs(fName);
|
||||
|
||||
if (ifs)
|
||||
{
|
||||
if (Foam::functionEntries::includeEntry::report)
|
||||
{
|
||||
Info<< fName << endl;
|
||||
}
|
||||
entry.read(parentDict, ifs);
|
||||
return true;
|
||||
}
|
||||
|
@ -82,6 +82,12 @@ protected:
|
||||
|
||||
public:
|
||||
|
||||
// Static data members
|
||||
|
||||
//- Report which file is included to stdout
|
||||
static bool report;
|
||||
|
||||
|
||||
//- Runtime type information
|
||||
ClassName("include");
|
||||
|
||||
|
@ -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
|
||||
@ -69,10 +69,15 @@ bool Foam::functionEntries::includeIfPresentEntry::execute
|
||||
Istream& is
|
||||
)
|
||||
{
|
||||
IFstream ifs(includeFileName(is));
|
||||
const fileName fName(includeFileName(is));
|
||||
IFstream ifs(fName);
|
||||
|
||||
if (ifs)
|
||||
{
|
||||
if (Foam::functionEntries::includeEntry::report)
|
||||
{
|
||||
Info<< fName << endl;
|
||||
}
|
||||
parentDict.read(ifs);
|
||||
}
|
||||
|
||||
@ -87,10 +92,15 @@ bool Foam::functionEntries::includeIfPresentEntry::execute
|
||||
Istream& is
|
||||
)
|
||||
{
|
||||
IFstream ifs(includeFileName(is));
|
||||
const fileName fName(includeFileName(is));
|
||||
IFstream ifs(fName);
|
||||
|
||||
if (ifs)
|
||||
{
|
||||
if (Foam::functionEntries::includeEntry::report)
|
||||
{
|
||||
Info<< fName << endl;
|
||||
}
|
||||
entry.read(parentDict, ifs);
|
||||
}
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Class
|
||||
Foam::dynamicCode
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Class
|
||||
Foam::dynamicCodeContext
|
||||
|
@ -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) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -548,10 +548,14 @@ Foam::argList::argList
|
||||
|
||||
if (options_.found("roots"))
|
||||
{
|
||||
source = "'-roots' option";
|
||||
IStringStream str(options_["roots"]);
|
||||
str >> roots;
|
||||
dictNProcs = roots.size()+1;
|
||||
source = "-roots";
|
||||
IStringStream is(options_["roots"]);
|
||||
roots = readList<fileName>(is);
|
||||
|
||||
if (roots.size() != 1)
|
||||
{
|
||||
dictNProcs = roots.size()+1;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -579,6 +583,21 @@ Foam::argList::argList
|
||||
}
|
||||
}
|
||||
|
||||
// convenience:
|
||||
// when a single root is specified, use it for all processes
|
||||
if (roots.size() == 1)
|
||||
{
|
||||
const fileName rootName(roots[0]);
|
||||
roots.setSize(Pstream::nProcs()-1, rootName);
|
||||
|
||||
// adjust dictNProcs for command-line '-roots' option
|
||||
if (dictNProcs < 0)
|
||||
{
|
||||
dictNProcs = roots.size()+1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Check number of processors.
|
||||
// nProcs => number of actual procs
|
||||
// dictNProcs => number of procs specified in decompositionDict
|
||||
@ -602,11 +621,6 @@ Foam::argList::argList
|
||||
// distributed data
|
||||
if (roots.size())
|
||||
{
|
||||
forAll(roots, i)
|
||||
{
|
||||
roots[i].expand();
|
||||
}
|
||||
|
||||
if (roots.size() != Pstream::nProcs()-1)
|
||||
{
|
||||
FatalError
|
||||
@ -617,6 +631,11 @@ Foam::argList::argList
|
||||
<< exit(FatalError);
|
||||
}
|
||||
|
||||
forAll(roots, i)
|
||||
{
|
||||
roots[i].expand();
|
||||
}
|
||||
|
||||
// Distribute the master's argument list (with new root)
|
||||
bool hadCaseOpt = options_.found("case");
|
||||
for
|
||||
@ -626,11 +645,7 @@ Foam::argList::argList
|
||||
slave++
|
||||
)
|
||||
{
|
||||
options_.set
|
||||
(
|
||||
"case",
|
||||
fileName(roots[slave-1])/globalCase_
|
||||
);
|
||||
options_.set("case", roots[slave-1]/globalCase_);
|
||||
|
||||
OPstream toSlave(Pstream::scheduled, slave);
|
||||
toSlave << args_ << options_;
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -22,7 +22,7 @@ License
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Class
|
||||
Foam::tableReader
|
||||
Foam::csvTableReader
|
||||
|
||||
Description
|
||||
Reads an interpolation table from a file - CSV-format
|
||||
@ -44,7 +44,7 @@ namespace Foam
|
||||
{
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class csvTableReader Declaration
|
||||
Class csvTableReader Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
template<class Type>
|
||||
@ -52,26 +52,30 @@ class csvTableReader
|
||||
:
|
||||
public tableReader<Type>
|
||||
{
|
||||
//- does the file have a header line?
|
||||
const bool headerLine_;
|
||||
// Private data
|
||||
|
||||
//- column of the time
|
||||
const label timeColumn_;
|
||||
//- Does the file have a header line?
|
||||
const bool headerLine_;
|
||||
|
||||
//- labels of the components
|
||||
const labelList componentColumns_;
|
||||
//- Column of the time
|
||||
const label timeColumn_;
|
||||
|
||||
//- read the next value from the splitted string
|
||||
Type readValue(const List<string>&);
|
||||
//- Labels of the components
|
||||
const labelList componentColumns_;
|
||||
|
||||
//- Read the next value from the splitted string
|
||||
Type readValue(const List<string>&);
|
||||
|
||||
//- Separator character
|
||||
const char separator_;
|
||||
|
||||
//- separator character
|
||||
const char separator_;
|
||||
|
||||
public:
|
||||
|
||||
//- Runtime type information
|
||||
TypeName("csv");
|
||||
|
||||
|
||||
// Constructors
|
||||
|
||||
//- Construct from dictionary
|
||||
@ -91,8 +95,7 @@ public:
|
||||
|
||||
|
||||
//- Destructor
|
||||
|
||||
virtual ~csvTableReader();
|
||||
virtual ~csvTableReader();
|
||||
|
||||
|
||||
// Member Functions
|
||||
@ -102,7 +105,6 @@ public:
|
||||
|
||||
//- write the remaining parameters
|
||||
virtual void write(Ostream& os) const;
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -22,13 +22,13 @@ License
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Class
|
||||
Foam::tableReader
|
||||
Foam::openFoamTableReader
|
||||
|
||||
Description
|
||||
Reads an interpolation table from a file - OpenFOAM-format
|
||||
|
||||
SourceFiles
|
||||
tableReader.C
|
||||
openFoamTableReader.C
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
@ -43,7 +43,7 @@ namespace Foam
|
||||
{
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class openFoamTableReader Declaration
|
||||
Class openFoamTableReader Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
template<class Type>
|
||||
@ -57,6 +57,7 @@ public:
|
||||
//- Runtime type information
|
||||
TypeName("openFoam");
|
||||
|
||||
|
||||
// Constructors
|
||||
|
||||
//- Construct from dictionary
|
||||
@ -76,15 +77,13 @@ public:
|
||||
|
||||
|
||||
//- Destructor
|
||||
|
||||
virtual ~openFoamTableReader();
|
||||
virtual ~openFoamTableReader();
|
||||
|
||||
|
||||
// Member functions
|
||||
|
||||
//- Read the table
|
||||
virtual void operator()(const fileName&, List<Tuple2<scalar, Type> > &);
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -51,7 +51,7 @@ namespace Foam
|
||||
{
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class tableReader Declaration
|
||||
Class tableReader Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
template<class Type>
|
||||
@ -91,8 +91,7 @@ public:
|
||||
|
||||
|
||||
//- Destructor
|
||||
|
||||
virtual ~tableReader();
|
||||
virtual ~tableReader();
|
||||
|
||||
|
||||
// Member functions
|
||||
@ -106,7 +105,6 @@ public:
|
||||
|
||||
//- Write additional information
|
||||
virtual void write(Ostream& os) const;
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -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
|
||||
@ -491,51 +491,52 @@ void Foam::face::flip()
|
||||
}
|
||||
|
||||
|
||||
Foam::point Foam::face::centre(const pointField& meshPoints) const
|
||||
Foam::point Foam::face::centre(const pointField& points) const
|
||||
{
|
||||
// Calculate the centre by breaking the face into triangles and
|
||||
// area-weighted averaging their centres
|
||||
|
||||
const label nPoints = size();
|
||||
|
||||
// If the face is a triangle, do a direct calculation
|
||||
if (size() == 3)
|
||||
if (nPoints)
|
||||
{
|
||||
return
|
||||
(1.0/3.0)
|
||||
*(
|
||||
meshPoints[operator[](0)]
|
||||
+ meshPoints[operator[](1)]
|
||||
+ meshPoints[operator[](2)]
|
||||
points[operator[](0)]
|
||||
+ points[operator[](1)]
|
||||
+ points[operator[](2)]
|
||||
);
|
||||
}
|
||||
|
||||
label nPoints = size();
|
||||
|
||||
point centrePoint = point::zero;
|
||||
for (register label pI=0; pI<nPoints; pI++)
|
||||
for (register label pI=0; pI<nPoints; ++pI)
|
||||
{
|
||||
centrePoint += meshPoints[operator[](pI)];
|
||||
centrePoint += points[operator[](pI)];
|
||||
}
|
||||
centrePoint /= nPoints;
|
||||
|
||||
scalar sumA = 0;
|
||||
vector sumAc = vector::zero;
|
||||
|
||||
for (register label pI=0; pI<nPoints; pI++)
|
||||
for (register label pI=0; pI<nPoints; ++pI)
|
||||
{
|
||||
const point& nextPoint = meshPoints[operator[]((pI + 1) % nPoints)];
|
||||
const point& nextPoint = points[operator[]((pI + 1) % nPoints)];
|
||||
|
||||
// Calculate 3*triangle centre
|
||||
vector ttc
|
||||
const vector ttc
|
||||
(
|
||||
meshPoints[operator[](pI)]
|
||||
points[operator[](pI)]
|
||||
+ nextPoint
|
||||
+ centrePoint
|
||||
);
|
||||
|
||||
// Calculate 2*triangle area
|
||||
scalar ta = Foam::mag
|
||||
const scalar ta = Foam::mag
|
||||
(
|
||||
(meshPoints[operator[](pI)] - centrePoint)
|
||||
(points[operator[](pI)] - centrePoint)
|
||||
^ (nextPoint - centrePoint)
|
||||
);
|
||||
|
||||
@ -545,7 +546,7 @@ Foam::point Foam::face::centre(const pointField& meshPoints) const
|
||||
|
||||
if (sumA > VSMALL)
|
||||
{
|
||||
return sumAc/(3*sumA);
|
||||
return sumAc/(3.0*sumA);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -556,6 +557,8 @@ Foam::point Foam::face::centre(const pointField& meshPoints) const
|
||||
|
||||
Foam::vector Foam::face::normal(const pointField& p) const
|
||||
{
|
||||
const label nPoints = size();
|
||||
|
||||
// Calculate the normal by summing the face triangle normals.
|
||||
// Changed to deal with small concavity by using a central decomposition
|
||||
//
|
||||
@ -563,7 +566,7 @@ Foam::vector Foam::face::normal(const pointField& p) const
|
||||
// If the face is a triangle, do a direct calculation to avoid round-off
|
||||
// error-related problems
|
||||
//
|
||||
if (size() == 3)
|
||||
if (nPoints == 3)
|
||||
{
|
||||
return triPointRef
|
||||
(
|
||||
@ -573,12 +576,10 @@ Foam::vector Foam::face::normal(const pointField& p) const
|
||||
).normal();
|
||||
}
|
||||
|
||||
label nPoints = size();
|
||||
|
||||
register label pI;
|
||||
|
||||
point centrePoint = vector::zero;
|
||||
for (pI = 0; pI < nPoints; pI++)
|
||||
for (pI = 0; pI < nPoints; ++pI)
|
||||
{
|
||||
centrePoint += p[operator[](pI)];
|
||||
}
|
||||
@ -588,7 +589,7 @@ Foam::vector Foam::face::normal(const pointField& p) const
|
||||
|
||||
point nextPoint = centrePoint;
|
||||
|
||||
for (pI = 0; pI < nPoints; pI++)
|
||||
for (pI = 0; pI < nPoints; ++pI)
|
||||
{
|
||||
if (pI < nPoints - 1)
|
||||
{
|
||||
|
@ -178,7 +178,7 @@ public:
|
||||
void flip();
|
||||
|
||||
//- Return the points corresponding to this face
|
||||
inline pointField points(const pointField& meshPoints) const;
|
||||
inline pointField points(const pointField&) const;
|
||||
|
||||
//- Centre point of face
|
||||
point centre(const pointField&) const;
|
||||
@ -187,7 +187,7 @@ public:
|
||||
template<class Type>
|
||||
Type average(const pointField&, const Field<Type>&) const;
|
||||
|
||||
//- Scalar magnitude
|
||||
//- Magnitude of face area
|
||||
inline scalar mag(const pointField&) const;
|
||||
|
||||
//- Vector normal; magnitude is equal to area of face
|
||||
@ -228,8 +228,8 @@ public:
|
||||
|
||||
//- Return potential intersection with face with a ray starting
|
||||
// at p, direction n (does not need to be normalized)
|
||||
// Does face-center decomposition and returns triangle intersection
|
||||
// point closest to p. Face-center is calculated from point average.
|
||||
// Does face-centre decomposition and returns triangle intersection
|
||||
// point closest to p. Face-centre is calculated from point average.
|
||||
// For a hit, the distance is signed. Positive number
|
||||
// represents the point in front of triangle
|
||||
// In case of miss the point is the nearest point on the face
|
||||
@ -242,20 +242,20 @@ public:
|
||||
(
|
||||
const point& p,
|
||||
const vector& n,
|
||||
const pointField& meshPoints,
|
||||
const pointField&,
|
||||
const intersection::algorithm alg = intersection::FULL_RAY,
|
||||
const intersection::direction dir = intersection::VECTOR
|
||||
) const;
|
||||
|
||||
//- Fast intersection with a ray.
|
||||
// Does face-center decomposition and returns triangle intersection
|
||||
// Does face-centre decomposition and returns triangle intersection
|
||||
// point closest to p. See triangle::intersection for details.
|
||||
pointHit intersection
|
||||
(
|
||||
const point& p,
|
||||
const vector& q,
|
||||
const point& ctr,
|
||||
const pointField& meshPoints,
|
||||
const pointField&,
|
||||
const intersection::algorithm alg,
|
||||
const scalar tol = 0.0
|
||||
) const;
|
||||
@ -264,7 +264,7 @@ public:
|
||||
pointHit nearestPoint
|
||||
(
|
||||
const point& p,
|
||||
const pointField& meshPoints
|
||||
const pointField&
|
||||
) const;
|
||||
|
||||
//- Return nearest point to face and classify it:
|
||||
@ -276,7 +276,7 @@ public:
|
||||
pointHit nearestPointClassify
|
||||
(
|
||||
const point& p,
|
||||
const pointField& meshPoints,
|
||||
const pointField&,
|
||||
label& nearType,
|
||||
label& nearLabel
|
||||
) const;
|
||||
@ -286,13 +286,13 @@ public:
|
||||
(
|
||||
const point& p,
|
||||
const vector& n,
|
||||
const pointField& meshPoints
|
||||
const pointField&
|
||||
) const;
|
||||
|
||||
//- Return area in contact, given the displacement in vertices
|
||||
scalar areaInContact
|
||||
(
|
||||
const pointField& points,
|
||||
const pointField&,
|
||||
const scalarField& v
|
||||
) const;
|
||||
|
||||
|
@ -103,7 +103,7 @@ public:
|
||||
inline void flip();
|
||||
|
||||
//- Return the points corresponding to this face
|
||||
inline pointField points(const pointField& meshPoints) const;
|
||||
inline pointField points(const pointField&) const;
|
||||
|
||||
//- Return triangle as a face
|
||||
inline face triFaceFace() const;
|
||||
@ -118,10 +118,10 @@ public:
|
||||
template<class Type>
|
||||
Type average(const pointField&, const Field<Type>&) const;
|
||||
|
||||
//- Return scalar magnitude
|
||||
//- Magnitude of face area
|
||||
inline scalar mag(const pointField&) const;
|
||||
|
||||
//- Return vector normal
|
||||
//- Vector normal; magnitude is equal to area of face
|
||||
inline vector normal(const pointField&) const;
|
||||
|
||||
//- Number of triangles after splitting
|
||||
|
@ -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
|
||||
@ -176,6 +176,7 @@ inline Foam::scalar Foam::triFace::mag(const pointField& points) const
|
||||
return ::Foam::mag(normal(points));
|
||||
}
|
||||
|
||||
|
||||
// could also delegate to triPointRef(...).normal()
|
||||
inline Foam::vector Foam::triFace::normal(const pointField& points) const
|
||||
{
|
||||
|
@ -1,8 +1,31 @@
|
||||
#!/bin/sh
|
||||
cd ${0%/*} || exit 1 # run from this directory
|
||||
makeType=${1:-libso}
|
||||
set -x
|
||||
|
||||
|
||||
#
|
||||
# define how to create an mpi-versioned library of $makeType
|
||||
# compile into qualified directory
|
||||
# use sentinel file to handle version changes
|
||||
#
|
||||
wmakeMpiLib()
|
||||
{
|
||||
set +x
|
||||
for libName
|
||||
do
|
||||
(
|
||||
WM_OPTIONS="$WM_OPTIONS$WM_MPLIB"
|
||||
whichmpi="$libName/Make/$WM_OPTIONS/using:$FOAM_MPI"
|
||||
[ -e "$whichmpi" ] || wclean $libName
|
||||
echo "wmake $makeType $libName"
|
||||
wmake $makeType $libName
|
||||
touch "$whichmpi"
|
||||
)
|
||||
done
|
||||
set -x
|
||||
}
|
||||
|
||||
set -x
|
||||
wmake $makeType dummy
|
||||
|
||||
case "$WM_MPLIB" in
|
||||
@ -11,9 +34,7 @@ case "$WM_MPLIB" in
|
||||
echo
|
||||
echo "Note: ignore spurious warnings about missing mpicxx.h headers"
|
||||
echo
|
||||
set -x
|
||||
# force compilation into qualified directory
|
||||
WM_OPTIONS=${WM_OPTIONS}$WM_MPLIB wmake $makeType mpi
|
||||
wmakeMpiLib mpi
|
||||
;;
|
||||
|
||||
#GAMMA)
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 1991-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 1991-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Class
|
||||
Foam::directMappedFixedInternalValueFvPatchField
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Class
|
||||
Foam::directMappedFixedPushedInternalValueFvPatchField
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
||||
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 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.
|
||||
|
||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
@ -19,8 +19,7 @@ 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
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
@ -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) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user