Merge branch 'master' into cvm

This commit is contained in:
graham
2011-05-13 10:17:22 +01:00
444 changed files with 2708 additions and 1782 deletions

2
.gitignore vendored
View File

@ -60,6 +60,8 @@ doc/[Dd]oxygen/man
# untracked configuration files # untracked configuration files
/etc/prefs.csh /etc/prefs.csh
/etc/prefs.sh /etc/prefs.sh
/etc/config/*.csh
/etc/config/*.sh
# source packages - anywhere # source packages - anywhere
*.tar.bz2 *.tar.bz2

View File

@ -266,8 +266,6 @@
internal field instead of boundary field. internal field instead of boundary field.
+ =ensight=: new output format for all sampledSurfaces. + =ensight=: new output format for all sampledSurfaces.
+ Function objects: + 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 + =abortCalculation=: watches for presence of the named file in the
$FOAM_CASE directory and aborts the calculation if it is present $FOAM_CASE directory and aborts the calculation if it is present
+ =timeActivatedFileUpdate=: performs a file copy/replacement once a + =timeActivatedFileUpdate=: performs a file copy/replacement once a

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 1991-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 1991-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -1,3 +1,4 @@
if (chemistry.chemistry())
{ {
Info<< "Solving chemistry" << endl; Info<< "Solving chemistry" << endl;
@ -10,17 +11,29 @@
// turbulent time scale // turbulent time scale
if (turbulentReaction) if (turbulentReaction)
{ {
volScalarField tk tmp<volScalarField> tepsilon(turbulence->epsilon());
( const volScalarField& epsilon = tepsilon();
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon()) tmp<volScalarField> tmuEff(turbulence->muEff());
); const volScalarField& muEff = tmuEff();
volScalarField tc tmp<volScalarField> ttc(chemistry.tc());
( const volScalarField& tc = ttc();
chemistry.tc()
);
// Chalmers PaSR model forAll(epsilon, i)
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk); {
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 else
{ {

View File

@ -5,7 +5,9 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
-I$(LIB_SRC)/ODE/lnInclude \ -I$(LIB_SRC)/ODE/lnInclude \
-I$(LIB_SRC)/finiteVolume/lnInclude -I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(FOAM_SOLVERS)/combustion/reactingFoam
EXE_LIBS = \ EXE_LIBS = \
-lcompressibleTurbulenceModel \ -lcompressibleTurbulenceModel \

View File

@ -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()();
}

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -19,7 +19,8 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
-I$(LIB_SRC)/ODE/lnInclude \ -I$(LIB_SRC)/ODE/lnInclude \
-I$(LIB_SRC)/regionModels/regionModel/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 = \ EXE_LIBS = \
-lfiniteVolume \ -lfiniteVolume \
@ -42,4 +43,5 @@ EXE_LIBS = \
-lradiationModels \ -lradiationModels \
-lODE \ -lODE \
-lregionModels \ -lregionModels \
-lsurfaceFilmModels -lsurfaceFilmModels \
-lsampling

View File

@ -27,13 +27,16 @@ License
scalar maxCo(readScalar(pimple.dict().lookup("maxCo"))); scalar maxCo(readScalar(pimple.dict().lookup("maxCo")));
// Maximum time scale // 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 // 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) // 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));
// ************************************************************************* // // ************************************************************************* //

View File

@ -82,7 +82,7 @@ Info<< "Time scales min/max:" << endl;
/rho /rho
); );
tau = alphaTauTemp*thermo.Cp()*T/(tau + ROOTVSMALL); tau = alphaTemp*thermo.Cp()*T/(tau + ROOTVSMALL);
Info<< " Temperature = " << min(maxDeltaT, gMin(tau)) << ", " Info<< " Temperature = " << min(maxDeltaT, gMin(tau)) << ", "
<< min(maxDeltaT, gMax(tau)) << endl; << min(maxDeltaT, gMax(tau)) << endl;
@ -105,7 +105,7 @@ Info<< "Time scales min/max:" << endl;
// Spatially smooth the time scale field // Spatially smooth the time scale field
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fvc::smooth(rDeltaT, alphaTauSmooth); fvc::smooth(rDeltaT, rDeltaTSmoothingCoeff);
Info<< " Overall = " << min(1/rDeltaT).value() Info<< " Overall = " << min(1/rDeltaT).value()
<< ", " << max(1/rDeltaT).value() << nl << endl; << ", " << max(1/rDeltaT).value() << nl << endl;

View File

@ -19,7 +19,10 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \ -I$(LIB_SRC)/regionModels/regionModel/lnInclude \
-I$(LIB_SRC)/regionModels/surfaceFilmModels/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 = \ EXE_LIBS = \
-lfiniteVolume \ -lfiniteVolume \
@ -43,4 +46,5 @@ EXE_LIBS = \
-lradiationModels \ -lradiationModels \
-lregionModels \ -lregionModels \
-lsurfaceFilmModels \ -lsurfaceFilmModels \
-lODE -lODE \
-lsampling

View File

@ -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()();
}

View File

@ -14,7 +14,8 @@ EXE_INC = \
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \ -I$(LIB_SRC)/regionModels/regionModel/lnInclude \
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \ -I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
-I$(LIB_SRC)/dynamicMesh/lnInclude \ -I$(LIB_SRC)/dynamicMesh/lnInclude \
-I$(LIB_SRC)/dynamicFvMesh/lnInclude -I$(LIB_SRC)/dynamicFvMesh/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude
EXE_LIBS = \ EXE_LIBS = \
@ -33,4 +34,5 @@ EXE_LIBS = \
-lsurfaceFilmModels \ -lsurfaceFilmModels \
-ldynamicMesh \ -ldynamicMesh \
-ldynamicFvMesh \ -ldynamicFvMesh \
-ltopoChangerFvMesh -ltopoChangerFvMesh \
-lsampling

View File

@ -12,6 +12,7 @@ EXE_INC = \
-I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/regionModels/regionModel/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 = \ EXE_LIBS = \
-llagrangian \ -llagrangian \
@ -26,4 +27,5 @@ EXE_LIBS = \
-lfiniteVolume \ -lfiniteVolume \
-lmeshTools \ -lmeshTools \
-lregionModels \ -lregionModels \
-lsurfaceFilmModels -lsurfaceFilmModels \
-lsampling

View File

@ -19,7 +19,10 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
-I$(LIB_SRC)/ODE/lnInclude \ -I$(LIB_SRC)/ODE/lnInclude \
-I$(LIB_SRC)/regionModels/regionModel/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 = \ EXE_LIBS = \
-lfiniteVolume \ -lfiniteVolume \
@ -42,4 +45,5 @@ EXE_LIBS = \
-lradiationModels \ -lradiationModels \
-lODE \ -lODE \
-lregionModels \ -lregionModels \
-lsurfaceFilmModels -lsurfaceFilmModels \
-lsampling

View File

@ -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()();
}

View File

@ -18,7 +18,10 @@ EXE_INC = \
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \ -I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
-I$(LIB_SRC)/lagrangian/basic/lnInclude \ -I$(LIB_SRC)/lagrangian/basic/lnInclude \
-I$(LIB_SRC)/lagrangian/intermediate/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 = \ EXE_LIBS = \
-lfiniteVolume \ -lfiniteVolume \
@ -37,4 +40,5 @@ EXE_LIBS = \
-lradiationModels \ -lradiationModels \
-lsurfaceFilmModels \ -lsurfaceFilmModels \
-llagrangianIntermediate \ -llagrangianIntermediate \
-lODE -lODE \
-lsampling

View File

@ -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()();
}

View File

@ -18,7 +18,10 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
-I$(LIB_SRC)/ODE/lnInclude \ -I$(LIB_SRC)/ODE/lnInclude \
-I$(LIB_SRC)/regionModels/regionModel/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 = \ EXE_LIBS = \
-lfiniteVolume \ -lfiniteVolume \
@ -41,4 +44,5 @@ EXE_LIBS = \
-lradiationModels \ -lradiationModels \
-lODE \ -lODE \
-lregionModels \ -lregionModels \
-lsurfaceFilmModels -lsurfaceFilmModels \
-lsampling

View File

@ -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()();
}

View File

@ -9,7 +9,8 @@ EXE_INC = \
-I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/regionModels/regionModel/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 = \ EXE_LIBS = \
-llagrangian \ -llagrangian \
@ -24,4 +25,5 @@ EXE_LIBS = \
-lfiniteVolume \ -lfiniteVolume \
-lmeshTools \ -lmeshTools \
-lregionModels \ -lregionModels \
-lsurfaceFilmModels -lsurfaceFilmModels \
-lsampling

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2008-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -28,12 +28,33 @@ Description
Read the dictionary provided as an argument, expand the macros etc. and Read the dictionary provided as an argument, expand the macros etc. and
write the resulting dictionary to standard output. 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 "argList.H"
#include "IFstream.H" #include "IFstream.H"
#include "IOobject.H" #include "IOobject.H"
#include "dictionary.H" #include "dictionary.H"
#include "includeEntry.H"
using namespace Foam; using namespace Foam;
@ -48,6 +69,12 @@ int main(int argc, char *argv[])
"the resulting dictionary to standard output." "the resulting dictionary to standard output."
); );
argList::addBoolOption
(
"list",
"Report the #include/#includeIfPresent to stdout only"
);
argList::noBanner(); argList::noBanner();
argList::noParallel(); argList::noParallel();
argList::validArgs.append("inputDict"); argList::validArgs.append("inputDict");
@ -55,12 +82,22 @@ int main(int argc, char *argv[])
const string dictName = args[1]; const string dictName = args[1];
IOobject::writeBanner(Info) const bool listOpt = args.optionFound("list");
<<"//\n// " << dictName << "\n//\n";
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; return 0;
} }

View File

@ -0,0 +1,3 @@
surfaceMeshInfo.C
EXE = $(FOAM_APPBIN)/surfaceMeshInfo

View File

@ -0,0 +1,5 @@
EXE_INC = \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/surfMesh/lnInclude
EXE_LIBS = -lmeshTools -lsurfMesh

View 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;
}
// ************************************************************************* //

View File

@ -38,9 +38,13 @@
# && _foamSource $foamPrefs # && _foamSource $foamPrefs
# \endcode # \endcode
# #
# Note
# This script must exist in <foamInstall>/OpenFOAM-<VERSION>/bin/
# or <foamInstall>/openfoam<VERSION>/bin/ (for the debian version)
#
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
usage() { usage() {
[ "$quietOpt" = true ] && exit 1 [ "${quietOpt:-$silentOpt}" = true ] && exit 1
exec 1>&2 exec 1>&2
while [ "$#" -ge 1 ]; do echo "$1"; shift; done while [ "$#" -ge 1 ]; do echo "$1"; shift; done
@ -53,6 +57,7 @@ options:
-mode <mode> any combination of u(user), g(group), o(other) -mode <mode> any combination of u(user), g(group), o(other)
-prefix <dir> specify an alternative installation prefix -prefix <dir> specify an alternative installation prefix
-quiet suppress all normal output -quiet suppress all normal output
-silent suppress all stderr output
-version <ver> specify an alternative OpenFOAM version -version <ver> specify an alternative OpenFOAM version
in the form Maj.Min.Rev (eg, 1.7.0) in the form Maj.Min.Rev (eg, 1.7.0)
-help print the usage -help print the usage
@ -72,13 +77,9 @@ USAGE
exit 1 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%/*}" binDir="${0%/*}"
# the project dir: # the project dir:
@ -128,7 +129,7 @@ esac
# default mode is 'ugo' # default mode is 'ugo'
mode=ugo mode=ugo
unset listOpt quietOpt unset listOpt quietOpt silentOpt
# parse options # parse options
while [ "$#" -gt 0 ] while [ "$#" -gt 0 ]
@ -162,6 +163,9 @@ do
-q | -quiet) -q | -quiet)
quietOpt=true quietOpt=true
;; ;;
-s | -silent)
silentOpt=true
;;
-v | -version) -v | -version)
[ "$#" -ge 2 ] || usage "'$1' option requires an argument" [ "$#" -ge 2 ] || usage "'$1' option requires an argument"
version="$2" version="$2"
@ -241,7 +245,7 @@ then
# list directories, or potential file locations # list directories, or potential file locations
[ "$nArgs" -le 1 ] || usage [ "$nArgs" -le 1 ] || usage
# a silly combination, but -quiet has precedence # a silly combination, but -quiet does have precedence
[ "$quietOpt" = true ] && exit 0 [ "$quietOpt" = true ] && exit 0
for dir for dir

View File

@ -31,12 +31,21 @@
# Runs the <foamVersion> version of executable <foamCommand> # Runs the <foamVersion> version of executable <foamCommand>
# with the rest of the arguments. # with the rest of the arguments.
# #
# Can also be used for parallel runs e.g. # Can also be used for parallel runs. For example,
# mpirun -np <nProcs> \ # \code
# foamExec -v <foamVersion> <foamCommand> ... -parallel # 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 # SeeAlso
# foamEtcFile # foamEtcFile
#
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
usage() { usage() {
exec 1>&2 exec 1>&2
@ -46,9 +55,11 @@ usage() {
Usage: ${0##*/} [OPTION] <application> ... Usage: ${0##*/} [OPTION] <application> ...
options: 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 -version <ver> specify an alternative OpenFOAM version
pass through to foamEtcFile pass through to foamEtcFile
-help this usage -help print the usage
* run a particular OpenFOAM version of <application> * run a particular OpenFOAM version of <application>
@ -56,13 +67,21 @@ USAGE
exit 1 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 unset etcOpts version
# parse options # parse options
while [ "$#" -gt 0 ] while [ "$#" -gt 0 ]
@ -71,15 +90,21 @@ do
-h | -help) -h | -help)
usage usage
;; ;;
-v | -version) -m | -mode)
[ "$#" -ge 2 ] || usage "'$1' option requires an argument" [ "$#" -ge 2 ] || usage "'$1' option requires an argument"
version="$2"
etcOpts="$etcOpts $1 $2" # pass-thru to foamEtcFile etcOpts="$etcOpts $1 $2" # pass-thru to foamEtcFile
shift shift
;; ;;
-m | -mode | -p | -prefix) -p | -prefix)
[ "$#" -ge 2 ] || usage "'$1' option requires an argument" [ "$#" -ge 2 ] || usage "'$1' option requires an argument"
etcOpts="$etcOpts $1 $2" # pass-thru to foamEtcFile 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 shift
;; ;;
--) --)
@ -96,22 +121,21 @@ do
shift shift
done done
# #
# Find and source OpenFOAM settings (bashrc) # Find and source OpenFOAM settings (bashrc)
# placed in function to preserve command-line arguments # placed in function to preserve command-line arguments
# #
sourceRc() sourceRc()
{ {
# default is the current version foamDotFile="$($binDir/foamEtcFile $etcOpts bashrc)" || {
: ${version:=${WM_PROJECT_VERSION:-unknown}} echo "Error : bashrc file could not be found for OpenFOAM-${version:-${WM_PROJECT_VERSION:-???}}" 1>&2
foamDotFile="$(${0%/*}/foamEtcFile $etcOpts bashrc)" || {
echo "Error : bashrc file could not be found for OpenFOAM-$version" 1>&2
exit 1 exit 1
} }
. $foamDotFile # set to consistent value before sourcing the bashrc
export FOAM_INST_DIR="$prefixDir"
. $foamDotFile $FOAM_SETTINGS
} }

View File

@ -26,6 +26,8 @@
# foamJob # foamJob
# #
# Description # Description
# Run an OpenFOAM job in background.
# Redirects the output to 'log' in the case directory.
# #
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
usage() { usage() {
@ -36,9 +38,9 @@ usage() {
Usage: ${0##*/} [OPTION] <application> ... Usage: ${0##*/} [OPTION] <application> ...
options: options:
-case <dir> specify alternative case directory, default is the cwd -case <dir> specify alternative case directory, default is the cwd
-p parallel run of processors -parallel parallel run of processors
-s also sends output to screen -screen also sends output to screen
-v <ver> specify OpenFOAM version -version <ver> specify an alternative OpenFOAM version
-help print the usage -help print the usage
* run an OpenFOAM job in background. * run an OpenFOAM job in background.
@ -95,23 +97,22 @@ do
usage usage
;; ;;
-case) -case)
[ "$#" -ge 2 ] || usage "'-case' option requires an argument" [ "$#" -ge 2 ] || usage "'$1' option requires an argument"
caseDir=$2 cd "$2" 2>/dev/null || usage "directory does not exist: '$2'"
shift 2 shift 2
cd "$caseDir" 2>/dev/null || usage "directory does not exist: '$caseDir'"
;; ;;
-p) -p | -parallel)
parallelOpt=true parallelOpt=true
shift shift
;; ;;
-s) -s | -screen)
screenOpt=true screenOpt=true
shift shift
;; ;;
-v) -v | -version)
shift [ "$#" -ge 2 ] || usage "'$1' option requires an argument"
version=$1 version="$2"
shift shift 2
;; ;;
--) --)
shift shift
@ -126,29 +127,32 @@ do
esac esac
done done
if [ "$#" -lt 1 ] [ "$#" -ge 1 ] || usage "No application specified"
then
usage "No application specified"
fi
# 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 ] if [ -n "$version" -o "$parallelOpt" = true ]
then then
APPLICATION=`findExec foamExec` # when possible, determine if application even exists
if [ $? -ne 0 ] if [ -z "$version" ]
then then
usage "'foamExec' not found" findExec $1 >/dev/null || usage "Application '$1' not found"
fi 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 then
APPLICATION="$APPLICATION -v $version" APPLICATION="$APPLICATION -prefix $FOAM_INST_DIR"
fi fi
else else
APPLICATION=`findExec $1` APPLICATION=`findExec $1` || usage "Application '$1' not found"
if [ $? -ne 0 ]
then
usage "Application '$1' executable not found"
fi
echo "Application : $1" echo "Application : $1"
shift shift
fi fi
@ -182,11 +186,7 @@ then
# #
# locate mpirun # locate mpirun
# #
mpirun=`findExec mpirun` mpirun=`findExec mpirun` || usage "'mpirun' not found"
if [ $? -ne 0 ]
then
usage "'mpirun' not found"
fi
mpiopts="-np $NPROCS" mpiopts="-np $NPROCS"
# #
@ -217,10 +217,10 @@ then
# #
if [ "$screenOpt" = true ] if [ "$screenOpt" = true ]
then then
echo "Executing: mpirun $mpiopts $APPLICATION $@ -parallel | tee log" echo "Executing: $mpirun $mpiopts $APPLICATION $@ -parallel | tee log"
$mpirun $mpiopts $APPLICATION $@ -parallel | tee log $mpirun $mpiopts $APPLICATION $@ -parallel | tee log
else 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 & $mpirun $mpiopts $APPLICATION $@ -parallel > log 2>&1 &
fi fi

View File

@ -55,15 +55,25 @@ timestamps as before or the (linux-specific) 'inotify' system framework
- the slave processor directories have no system directory and the - the slave processor directories have no system directory and the
constant directory only contains the mesh. constant directory only contains the mesh.
- start the job in distributed mode by specifying the slave roots - start the job in distributed mode by specifying the slave roots
(so one less than the number of processors) with (so one fewer than the number of processors) with
the -roots command line option: 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 - the alternative to the -roots option is to have a
cavity/system/decomposeParDict on the master with cavity/system/decomposeParDict on the master with
distributed yes; 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: Details:

View File

@ -56,16 +56,22 @@ export ParaView_MAJOR=detect
# Evaluate command-line parameters for ParaView # Evaluate command-line parameters for ParaView
while [ $# -gt 0 ] _foamParaviewEval()
do {
case "$1" in while [ $# -gt 0 ]
ParaView*=*) do
# name=value -> export name=value case "$1" in
eval "export $1" ParaView*=*)
;; # name=value -> export name=value
esac eval "export $1"
shift ;;
done esac
shift
done
}
# Evaluate command-line parameters
_foamParaviewEval $@
# set MAJOR version to correspond to VERSION # set MAJOR version to correspond to VERSION
@ -108,6 +114,7 @@ else
fi fi
unset _foamParaviewEval
unset cleaned cmake paraviewInstDir paraviewPython unset cleaned cmake paraviewInstDir paraviewPython
# ----------------------------------------------------------------------------- # -----------------------------------------------------------------------------

View File

@ -144,6 +144,10 @@ _foamEval()
while [ $# -gt 0 ] while [ $# -gt 0 ]
do do
case "$1" in case "$1" in
-*)
# stray option (not meant for us here) -> get out
break
;;
*=) *=)
# name= -> unset name # name= -> unset name
[ "$FOAM_VERBOSE" -a "$PS1" ] && echo "unset ${1%=}" [ "$FOAM_VERBOSE" -a "$PS1" ] && echo "unset ${1%=}"
@ -160,7 +164,7 @@ _foamEval()
then then
_foamSource "$1" _foamSource "$1"
else else
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile "$1"` _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile -silent "$1"`
fi fi
;; ;;
esac esac

View 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

View 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

View 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

View 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

View File

@ -142,6 +142,10 @@ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile prefs.csh`
setenv FOAM_SETTINGS "${*}" setenv FOAM_SETTINGS "${*}"
while ( $#argv > 0 ) while ( $#argv > 0 )
switch ($argv[1]) switch ($argv[1])
case -*:
# stray option (not meant for us here) -> get out
break
breaksw
case *=: case *=:
# name= -> unsetenv name # name= -> unsetenv name
if ($?FOAM_VERBOSE && $?prompt) echo "unsetenv $argv[1]:s/=//" if ($?FOAM_VERBOSE && $?prompt) echo "unsetenv $argv[1]:s/=//"
@ -157,7 +161,7 @@ while ( $#argv > 0 )
if ( -f "$1" ) then if ( -f "$1" ) then
_foamSource "$1" _foamSource "$1"
else else
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile "$1"` _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile -silent "$1"`
endif endif
breaksw breaksw
endsw endsw

View File

@ -248,6 +248,9 @@ case ThirdParty:
breaksw breaksw
endsw endsw
# optional configuration tweaks:
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config/compiler.csh`
if ( $?gcc_version ) then if ( $?gcc_version ) then
set gccDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/$gcc_version 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 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") switch ("$WM_MPLIB")
case OPENMPI: case OPENMPI:
#setenv FOAM_MPI openmpi-1.4.3
setenv FOAM_MPI openmpi-1.5.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 setenv MPI_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
# Tell OpenMPI where to find its install directory # Tell OpenMPI where to find its install directory

View File

@ -265,6 +265,9 @@ OpenFOAM | ThirdParty)
;; ;;
esac esac
# optional configuration tweaks:
_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config/compiler.sh`
if [ -n "$gcc_version" ] if [ -n "$gcc_version" ]
then then
gccDir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/$gcc_version 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 case "$WM_MPLIB" in
OPENMPI) OPENMPI)
#export FOAM_MPI=openmpi-1.4.3
export FOAM_MPI=openmpi-1.5.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 export MPI_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$FOAM_MPI
# Tell OpenMPI where to find its install directory # Tell OpenMPI where to find its install directory

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -39,6 +39,9 @@ const Foam::word Foam::functionEntries::includeEntry::typeName
// might include includeEntry // might include includeEntry
int Foam::functionEntries::includeEntry::debug(0); int Foam::functionEntries::includeEntry::debug(0);
bool Foam::functionEntries::includeEntry::report(false);
namespace Foam namespace Foam
{ {
namespace functionEntries namespace functionEntries
@ -89,10 +92,15 @@ bool Foam::functionEntries::includeEntry::execute
Istream& is Istream& is
) )
{ {
IFstream ifs(includeFileName(is)); const fileName fName(includeFileName(is));
IFstream ifs(fName);
if (ifs) if (ifs)
{ {
if (Foam::functionEntries::includeEntry::report)
{
Info<< fName << endl;
}
parentDict.read(ifs); parentDict.read(ifs);
return true; return true;
} }
@ -119,10 +127,15 @@ bool Foam::functionEntries::includeEntry::execute
Istream& is Istream& is
) )
{ {
IFstream ifs(includeFileName(is)); const fileName fName(includeFileName(is));
IFstream ifs(fName);
if (ifs) if (ifs)
{ {
if (Foam::functionEntries::includeEntry::report)
{
Info<< fName << endl;
}
entry.read(parentDict, ifs); entry.read(parentDict, ifs);
return true; return true;
} }

View File

@ -82,6 +82,12 @@ protected:
public: public:
// Static data members
//- Report which file is included to stdout
static bool report;
//- Runtime type information //- Runtime type information
ClassName("include"); ClassName("include");

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -69,10 +69,15 @@ bool Foam::functionEntries::includeIfPresentEntry::execute
Istream& is Istream& is
) )
{ {
IFstream ifs(includeFileName(is)); const fileName fName(includeFileName(is));
IFstream ifs(fName);
if (ifs) if (ifs)
{ {
if (Foam::functionEntries::includeEntry::report)
{
Info<< fName << endl;
}
parentDict.read(ifs); parentDict.read(ifs);
} }
@ -87,10 +92,15 @@ bool Foam::functionEntries::includeIfPresentEntry::execute
Istream& is Istream& is
) )
{ {
IFstream ifs(includeFileName(is)); const fileName fName(includeFileName(is));
IFstream ifs(fName);
if (ifs) if (ifs)
{ {
if (Foam::functionEntries::includeEntry::report)
{
Info<< fName << endl;
}
entry.read(parentDict, ifs); entry.read(parentDict, ifs);
} }

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Class Class
Foam::dynamicCode Foam::dynamicCode

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Class Class
Foam::dynamicCodeContext Foam::dynamicCodeContext

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -548,10 +548,14 @@ Foam::argList::argList
if (options_.found("roots")) if (options_.found("roots"))
{ {
source = "'-roots' option"; source = "-roots";
IStringStream str(options_["roots"]); IStringStream is(options_["roots"]);
str >> roots; roots = readList<fileName>(is);
dictNProcs = roots.size()+1;
if (roots.size() != 1)
{
dictNProcs = roots.size()+1;
}
} }
else 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. // Check number of processors.
// nProcs => number of actual procs // nProcs => number of actual procs
// dictNProcs => number of procs specified in decompositionDict // dictNProcs => number of procs specified in decompositionDict
@ -602,11 +621,6 @@ Foam::argList::argList
// distributed data // distributed data
if (roots.size()) if (roots.size())
{ {
forAll(roots, i)
{
roots[i].expand();
}
if (roots.size() != Pstream::nProcs()-1) if (roots.size() != Pstream::nProcs()-1)
{ {
FatalError FatalError
@ -617,6 +631,11 @@ Foam::argList::argList
<< exit(FatalError); << exit(FatalError);
} }
forAll(roots, i)
{
roots[i].expand();
}
// Distribute the master's argument list (with new root) // Distribute the master's argument list (with new root)
bool hadCaseOpt = options_.found("case"); bool hadCaseOpt = options_.found("case");
for for
@ -626,11 +645,7 @@ Foam::argList::argList
slave++ slave++
) )
{ {
options_.set options_.set("case", roots[slave-1]/globalCase_);
(
"case",
fileName(roots[slave-1])/globalCase_
);
OPstream toSlave(Pstream::scheduled, slave); OPstream toSlave(Pstream::scheduled, slave);
toSlave << args_ << options_; toSlave << args_ << options_;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class Class
Foam::tableReader Foam::csvTableReader
Description Description
Reads an interpolation table from a file - CSV-format Reads an interpolation table from a file - CSV-format
@ -44,7 +44,7 @@ namespace Foam
{ {
/*---------------------------------------------------------------------------*\ /*---------------------------------------------------------------------------*\
Class csvTableReader Declaration Class csvTableReader Declaration
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/
template<class Type> template<class Type>
@ -52,26 +52,30 @@ class csvTableReader
: :
public tableReader<Type> public tableReader<Type>
{ {
//- does the file have a header line? // Private data
const bool headerLine_;
//- column of the time //- Does the file have a header line?
const label timeColumn_; const bool headerLine_;
//- labels of the components //- Column of the time
const labelList componentColumns_; const label timeColumn_;
//- read the next value from the splitted string //- Labels of the components
Type readValue(const List<string>&); 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: public:
//- Runtime type information //- Runtime type information
TypeName("csv"); TypeName("csv");
// Constructors // Constructors
//- Construct from dictionary //- Construct from dictionary
@ -91,8 +95,7 @@ public:
//- Destructor //- Destructor
virtual ~csvTableReader();
virtual ~csvTableReader();
// Member Functions // Member Functions
@ -102,7 +105,6 @@ public:
//- write the remaining parameters //- write the remaining parameters
virtual void write(Ostream& os) const; virtual void write(Ostream& os) const;
}; };

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -22,13 +22,13 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class Class
Foam::tableReader Foam::openFoamTableReader
Description Description
Reads an interpolation table from a file - OpenFOAM-format Reads an interpolation table from a file - OpenFOAM-format
SourceFiles SourceFiles
tableReader.C openFoamTableReader.C
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/
@ -43,7 +43,7 @@ namespace Foam
{ {
/*---------------------------------------------------------------------------*\ /*---------------------------------------------------------------------------*\
Class openFoamTableReader Declaration Class openFoamTableReader Declaration
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/
template<class Type> template<class Type>
@ -57,6 +57,7 @@ public:
//- Runtime type information //- Runtime type information
TypeName("openFoam"); TypeName("openFoam");
// Constructors // Constructors
//- Construct from dictionary //- Construct from dictionary
@ -76,15 +77,13 @@ public:
//- Destructor //- Destructor
virtual ~openFoamTableReader();
virtual ~openFoamTableReader();
// Member functions // Member functions
//- Read the table //- Read the table
virtual void operator()(const fileName&, List<Tuple2<scalar, Type> > &); virtual void operator()(const fileName&, List<Tuple2<scalar, Type> > &);
}; };

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -51,7 +51,7 @@ namespace Foam
{ {
/*---------------------------------------------------------------------------*\ /*---------------------------------------------------------------------------*\
Class tableReader Declaration Class tableReader Declaration
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/
template<class Type> template<class Type>
@ -91,8 +91,7 @@ public:
//- Destructor //- Destructor
virtual ~tableReader();
virtual ~tableReader();
// Member functions // Member functions
@ -106,7 +105,6 @@ public:
//- Write additional information //- Write additional information
virtual void write(Ostream& os) const; virtual void write(Ostream& os) const;
}; };

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License 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 // Calculate the centre by breaking the face into triangles and
// area-weighted averaging their centres // area-weighted averaging their centres
const label nPoints = size();
// If the face is a triangle, do a direct calculation // If the face is a triangle, do a direct calculation
if (size() == 3) if (nPoints)
{ {
return return
(1.0/3.0) (1.0/3.0)
*( *(
meshPoints[operator[](0)] points[operator[](0)]
+ meshPoints[operator[](1)] + points[operator[](1)]
+ meshPoints[operator[](2)] + points[operator[](2)]
); );
} }
label nPoints = size();
point centrePoint = point::zero; 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; centrePoint /= nPoints;
scalar sumA = 0; scalar sumA = 0;
vector sumAc = vector::zero; 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 // Calculate 3*triangle centre
vector ttc const vector ttc
( (
meshPoints[operator[](pI)] points[operator[](pI)]
+ nextPoint + nextPoint
+ centrePoint + centrePoint
); );
// Calculate 2*triangle area // Calculate 2*triangle area
scalar ta = Foam::mag const scalar ta = Foam::mag
( (
(meshPoints[operator[](pI)] - centrePoint) (points[operator[](pI)] - centrePoint)
^ (nextPoint - centrePoint) ^ (nextPoint - centrePoint)
); );
@ -545,7 +546,7 @@ Foam::point Foam::face::centre(const pointField& meshPoints) const
if (sumA > VSMALL) if (sumA > VSMALL)
{ {
return sumAc/(3*sumA); return sumAc/(3.0*sumA);
} }
else else
{ {
@ -556,6 +557,8 @@ Foam::point Foam::face::centre(const pointField& meshPoints) const
Foam::vector Foam::face::normal(const pointField& p) const Foam::vector Foam::face::normal(const pointField& p) const
{ {
const label nPoints = size();
// Calculate the normal by summing the face triangle normals. // Calculate the normal by summing the face triangle normals.
// Changed to deal with small concavity by using a central decomposition // 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 // If the face is a triangle, do a direct calculation to avoid round-off
// error-related problems // error-related problems
// //
if (size() == 3) if (nPoints == 3)
{ {
return triPointRef return triPointRef
( (
@ -573,12 +576,10 @@ Foam::vector Foam::face::normal(const pointField& p) const
).normal(); ).normal();
} }
label nPoints = size();
register label pI; register label pI;
point centrePoint = vector::zero; point centrePoint = vector::zero;
for (pI = 0; pI < nPoints; pI++) for (pI = 0; pI < nPoints; ++pI)
{ {
centrePoint += p[operator[](pI)]; centrePoint += p[operator[](pI)];
} }
@ -588,7 +589,7 @@ Foam::vector Foam::face::normal(const pointField& p) const
point nextPoint = centrePoint; point nextPoint = centrePoint;
for (pI = 0; pI < nPoints; pI++) for (pI = 0; pI < nPoints; ++pI)
{ {
if (pI < nPoints - 1) if (pI < nPoints - 1)
{ {

View File

@ -178,7 +178,7 @@ public:
void flip(); void flip();
//- Return the points corresponding to this face //- Return the points corresponding to this face
inline pointField points(const pointField& meshPoints) const; inline pointField points(const pointField&) const;
//- Centre point of face //- Centre point of face
point centre(const pointField&) const; point centre(const pointField&) const;
@ -187,7 +187,7 @@ public:
template<class Type> template<class Type>
Type average(const pointField&, const Field<Type>&) const; Type average(const pointField&, const Field<Type>&) const;
//- Scalar magnitude //- Magnitude of face area
inline scalar mag(const pointField&) const; inline scalar mag(const pointField&) const;
//- Vector normal; magnitude is equal to area of face //- Vector normal; magnitude is equal to area of face
@ -228,8 +228,8 @@ public:
//- Return potential intersection with face with a ray starting //- Return potential intersection with face with a ray starting
// at p, direction n (does not need to be normalized) // at p, direction n (does not need to be normalized)
// Does face-center decomposition and returns triangle intersection // Does face-centre decomposition and returns triangle intersection
// point closest to p. Face-center is calculated from point average. // point closest to p. Face-centre is calculated from point average.
// For a hit, the distance is signed. Positive number // For a hit, the distance is signed. Positive number
// represents the point in front of triangle // represents the point in front of triangle
// In case of miss the point is the nearest point on the face // In case of miss the point is the nearest point on the face
@ -242,20 +242,20 @@ public:
( (
const point& p, const point& p,
const vector& n, const vector& n,
const pointField& meshPoints, const pointField&,
const intersection::algorithm alg = intersection::FULL_RAY, const intersection::algorithm alg = intersection::FULL_RAY,
const intersection::direction dir = intersection::VECTOR const intersection::direction dir = intersection::VECTOR
) const; ) const;
//- Fast intersection with a ray. //- 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. // point closest to p. See triangle::intersection for details.
pointHit intersection pointHit intersection
( (
const point& p, const point& p,
const vector& q, const vector& q,
const point& ctr, const point& ctr,
const pointField& meshPoints, const pointField&,
const intersection::algorithm alg, const intersection::algorithm alg,
const scalar tol = 0.0 const scalar tol = 0.0
) const; ) const;
@ -264,7 +264,7 @@ public:
pointHit nearestPoint pointHit nearestPoint
( (
const point& p, const point& p,
const pointField& meshPoints const pointField&
) const; ) const;
//- Return nearest point to face and classify it: //- Return nearest point to face and classify it:
@ -276,7 +276,7 @@ public:
pointHit nearestPointClassify pointHit nearestPointClassify
( (
const point& p, const point& p,
const pointField& meshPoints, const pointField&,
label& nearType, label& nearType,
label& nearLabel label& nearLabel
) const; ) const;
@ -286,13 +286,13 @@ public:
( (
const point& p, const point& p,
const vector& n, const vector& n,
const pointField& meshPoints const pointField&
) const; ) const;
//- Return area in contact, given the displacement in vertices //- Return area in contact, given the displacement in vertices
scalar areaInContact scalar areaInContact
( (
const pointField& points, const pointField&,
const scalarField& v const scalarField& v
) const; ) const;

View File

@ -103,7 +103,7 @@ public:
inline void flip(); inline void flip();
//- Return the points corresponding to this face //- 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 //- Return triangle as a face
inline face triFaceFace() const; inline face triFaceFace() const;
@ -118,10 +118,10 @@ public:
template<class Type> template<class Type>
Type average(const pointField&, const Field<Type>&) const; Type average(const pointField&, const Field<Type>&) const;
//- Return scalar magnitude //- Magnitude of face area
inline scalar mag(const pointField&) const; inline scalar mag(const pointField&) const;
//- Return vector normal //- Vector normal; magnitude is equal to area of face
inline vector normal(const pointField&) const; inline vector normal(const pointField&) const;
//- Number of triangles after splitting //- Number of triangles after splitting

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -176,6 +176,7 @@ inline Foam::scalar Foam::triFace::mag(const pointField& points) const
return ::Foam::mag(normal(points)); return ::Foam::mag(normal(points));
} }
// could also delegate to triPointRef(...).normal() // could also delegate to triPointRef(...).normal()
inline Foam::vector Foam::triFace::normal(const pointField& points) const inline Foam::vector Foam::triFace::normal(const pointField& points) const
{ {

View File

@ -1,8 +1,31 @@
#!/bin/sh #!/bin/sh
cd ${0%/*} || exit 1 # run from this directory cd ${0%/*} || exit 1 # run from this directory
makeType=${1:-libso} 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 wmake $makeType dummy
case "$WM_MPLIB" in case "$WM_MPLIB" in
@ -11,9 +34,7 @@ case "$WM_MPLIB" in
echo echo
echo "Note: ignore spurious warnings about missing mpicxx.h headers" echo "Note: ignore spurious warnings about missing mpicxx.h headers"
echo echo
set -x wmakeMpiLib mpi
# force compilation into qualified directory
WM_OPTIONS=${WM_OPTIONS}$WM_MPLIB wmake $makeType mpi
;; ;;
#GAMMA) #GAMMA)

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 1991-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 1991-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Class Class
Foam::directMappedFixedInternalValueFvPatchField Foam::directMappedFixedInternalValueFvPatchField

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Class Class
Foam::directMappedFixedPushedInternalValueFvPatchField Foam::directMappedFixedPushedInternalValueFvPatchField

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -8,10 +8,10 @@
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it 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 under the terms of the GNU General Public License as published by
Free Software Foundation; either version 2 of the License, or (at your the Free Software Foundation, either version 3 of the License, or
option) any later version. (at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@ -19,8 +19,7 @@ License
for more details. for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation, along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License

Some files were not shown because too many files have changed in this diff Show More