mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'master' into pairPatchAgglomeration
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@ -42,6 +42,7 @@ linuxming*/
|
||||
SiCortex*Gcc*/
|
||||
solaris*Gcc*/
|
||||
SunOS*Gcc*/
|
||||
platforms/
|
||||
|
||||
# reinstate wmake/rules that might look like build folders
|
||||
!wmake/rules/*/
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -30,7 +30,7 @@ Description
|
||||
corresponding to PDR basic drag model (\link basic.H \endlink)
|
||||
|
||||
The default model coefficients correspond to the following:
|
||||
@verbatim
|
||||
\verbatim
|
||||
PDRkEpsilonCoeffs
|
||||
{
|
||||
Cmu 0.09;
|
||||
@ -41,7 +41,7 @@ Description
|
||||
sigmaEps 1.3;
|
||||
Prt 1.0; // only for compressible
|
||||
}
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
The turbulence source term \f$ G_{R} \f$ appears in the
|
||||
\f$ \kappa-\epsilon \f$ equation for the generation of turbulence due to
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -27,7 +27,7 @@ Class
|
||||
Description
|
||||
Simple SCOPEBlendXiEq model for XiEq based on SCOPEXiEqs correlation
|
||||
with a linear correction function to give a plausible profile for XiEq.
|
||||
See @link SCOPELaminarFlameSpeed.H @endlink for details on the SCOPE
|
||||
See \link SCOPELaminarFlameSpeed.H \endlink for details on the SCOPE
|
||||
laminar flame speed model.
|
||||
|
||||
SourceFiles
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -27,7 +27,7 @@ Class
|
||||
Description
|
||||
This is the equilibrium level of the flame wrinkling generated by
|
||||
instability. It is a constant (default 2.5). It is used in
|
||||
@link XiModel.H @endlink.
|
||||
\link XiModel.H \endlink.
|
||||
|
||||
SourceFiles
|
||||
instability.C
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -47,6 +47,8 @@ Description
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
argList::noParallel();
|
||||
|
||||
#include "setRootCase.H"
|
||||
#include "createTime.H"
|
||||
#include "createSingleCellMesh.H"
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -30,7 +30,7 @@ Description
|
||||
causing pressure loss as estimated using an adjoint formulation.
|
||||
|
||||
References:
|
||||
@verbatim
|
||||
\verbatim
|
||||
"Implementation of a continuous adjoint for topology optimization of
|
||||
ducted flows"
|
||||
C. Othmer,
|
||||
@ -38,7 +38,7 @@ Description
|
||||
H.G. Weller
|
||||
AIAA-2007-3947
|
||||
http://pdf.aiaa.org/preview/CDReadyMCFD07_1379/PV2007_3947.pdf
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
Note that this solver optimises for total pressure loss whereas the
|
||||
above paper describes the method for optimising power-loss.
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -32,14 +32,14 @@ Description
|
||||
implicit term in the pressure equation.
|
||||
|
||||
Reference:
|
||||
@verbatim
|
||||
\verbatim
|
||||
Kunz, R.F., Boger, D.A., Stinebring, D.R., Chyczewski, Lindau. J.W.,
|
||||
Gibeling, H.J., Venkateswaran, S., Govindan, T.R.,
|
||||
“A Preconditioned Implicit Method for Two-Phase Flows with Application
|
||||
to Cavitation Prediction,”
|
||||
Computers and Fluids,
|
||||
29(8):849-875, 2000.
|
||||
@verbatim
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
Kunz.C
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========Merkle= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -28,12 +28,12 @@ Description
|
||||
Merkle cavitation model.
|
||||
|
||||
Reference:
|
||||
@verbatim
|
||||
\verbatim
|
||||
C. L. Merkle, J. Feng, and P. E. O. Buelow,
|
||||
"Computational modeling of the dynamics of sheet cavitation",
|
||||
in Proceedings Third International Symposium on Cavitation
|
||||
Grenoble, France 1998.
|
||||
@verbatim
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
Merkle.C
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -28,12 +28,12 @@ Description
|
||||
SchnerrSauer cavitation model.
|
||||
|
||||
Reference:
|
||||
@verbatim
|
||||
\verbatim
|
||||
Schnerr, G. H., And Sauer, J.,
|
||||
"Physical and Numerical Modeling of Unsteady Cavitation Dynamics",
|
||||
Proc. 4th International Conference on Multiphase Flow,
|
||||
New Orleans, U.S.A., 2001.
|
||||
@verbatim
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
SchnerrSauer.C
|
||||
|
||||
@ -29,12 +29,12 @@ Description
|
||||
|
||||
Plot normal distribution test in gnuplot using:
|
||||
|
||||
@verbatim
|
||||
\verbatim
|
||||
normalDistribution(mean, sigma, x) = \
|
||||
sqrt(1.0/(2.0*pi*sigma**2))*exp(-(x - mean)**2.0/(2.0*sigma**2))
|
||||
|
||||
plot normalDistribution(8.5, 2.5, x), "Distribution_scalar_test_x" w p
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
@ -70,7 +70,12 @@ int main(int argc, char *argv[])
|
||||
);
|
||||
|
||||
// Exchange data. Apply positional transforms.
|
||||
globalPointSlavesMap.distribute(transforms, coords, true);
|
||||
globalPointSlavesMap.distribute
|
||||
(
|
||||
transforms,
|
||||
coords,
|
||||
mapDistribute::transformPosition()
|
||||
);
|
||||
|
||||
// Print
|
||||
forAll(slaves, pointI)
|
||||
@ -127,7 +132,12 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
|
||||
// Exchange data Apply positional transforms.
|
||||
globalEdgeSlavesMap.distribute(transforms, ec, true);
|
||||
globalEdgeSlavesMap.distribute
|
||||
(
|
||||
transforms,
|
||||
ec,
|
||||
mapDistribute::transformPosition()
|
||||
);
|
||||
|
||||
// Print
|
||||
forAll(slaves, edgeI)
|
||||
@ -163,82 +173,131 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
|
||||
|
||||
//// Test: (collocated) point to faces addressing
|
||||
//{
|
||||
// const labelListList& globalPointBoundaryFaces =
|
||||
// globalData.globalPointBoundaryFaces();
|
||||
// const mapDistribute& globalPointBoundaryFacesMap =
|
||||
// globalData.globalPointBoundaryFacesMap();
|
||||
//
|
||||
// label nBnd = mesh.nFaces()-mesh.nInternalFaces();
|
||||
//
|
||||
// pointField fc(globalPointBoundaryFacesMap.constructSize());
|
||||
// SubList<point>(fc, nBnd).assign
|
||||
// (
|
||||
// primitivePatch
|
||||
// (
|
||||
// SubList<face>
|
||||
// (
|
||||
// mesh.faces(),
|
||||
// nBnd,
|
||||
// mesh.nInternalFaces()
|
||||
// ),
|
||||
// mesh.points()
|
||||
// ).faceCentres()
|
||||
// );
|
||||
//
|
||||
// // Exchange data
|
||||
// globalPointBoundaryFacesMap.distribute(fc);
|
||||
//
|
||||
// // Print
|
||||
// forAll(globalPointBoundaryFaces, pointI)
|
||||
// {
|
||||
// const labelList& bFaces = globalPointBoundaryFaces[pointI];
|
||||
//
|
||||
// Pout<< "Point:" << pointI
|
||||
// << " at:" << coupledPatch.localPoints()[pointI]
|
||||
// << " connected to faces:" << endl;
|
||||
//
|
||||
// forAll(bFaces, i)
|
||||
// {
|
||||
// Pout<< " " << fc[bFaces[i]] << endl;
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//
|
||||
//// Test:(collocated) point to cells addressing
|
||||
//{
|
||||
// const labelList& boundaryCells = globalData.boundaryCells();
|
||||
// const labelListList& globalPointBoundaryCells =
|
||||
// globalData.globalPointBoundaryCells();
|
||||
// const mapDistribute& globalPointBoundaryCellsMap =
|
||||
// globalData.globalPointBoundaryCellsMap();
|
||||
//
|
||||
// pointField cc(globalPointBoundaryCellsMap.constructSize());
|
||||
// forAll(boundaryCells, i)
|
||||
// {
|
||||
// cc[i] = mesh.cellCentres()[boundaryCells[i]];
|
||||
// }
|
||||
//
|
||||
// // Exchange data
|
||||
// globalPointBoundaryCellsMap.distribute(cc);
|
||||
//
|
||||
// // Print
|
||||
// forAll(globalPointBoundaryCells, pointI)
|
||||
// {
|
||||
// const labelList& bCells = globalPointBoundaryCells[pointI];
|
||||
//
|
||||
// Pout<< "Point:" << pointI
|
||||
// << " at:" << coupledPatch.localPoints()[pointI]
|
||||
// << " connected to cells:" << endl;
|
||||
//
|
||||
// forAll(bCells, i)
|
||||
// {
|
||||
// Pout<< " " << cc[bCells[i]] << endl;
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
// Test: point to faces addressing
|
||||
{
|
||||
const mapDistribute& globalPointBoundaryFacesMap =
|
||||
globalData.globalPointBoundaryFacesMap();
|
||||
const labelListList& slaves =
|
||||
globalData.globalPointBoundaryFaces();
|
||||
const labelListList& transformedSlaves =
|
||||
globalData.globalPointTransformedBoundaryFaces();
|
||||
|
||||
label nBnd = mesh.nFaces()-mesh.nInternalFaces();
|
||||
|
||||
pointField fc(globalPointBoundaryFacesMap.constructSize());
|
||||
SubList<point>(fc, nBnd).assign
|
||||
(
|
||||
primitivePatch
|
||||
(
|
||||
SubList<face>
|
||||
(
|
||||
mesh.faces(),
|
||||
nBnd,
|
||||
mesh.nInternalFaces()
|
||||
),
|
||||
mesh.points()
|
||||
).faceCentres()
|
||||
);
|
||||
|
||||
// Exchange data
|
||||
globalPointBoundaryFacesMap.distribute
|
||||
(
|
||||
transforms,
|
||||
fc,
|
||||
mapDistribute::transformPosition()
|
||||
);
|
||||
|
||||
// Print
|
||||
forAll(slaves, pointI)
|
||||
{
|
||||
const labelList& slaveFaces = slaves[pointI];
|
||||
|
||||
if (slaveFaces.size() > 0)
|
||||
{
|
||||
Pout<< "Master point:" << pointI
|
||||
<< " at:" << coupledPatch.localPoints()[pointI]
|
||||
<< " connected to " << slaveFaces.size()
|
||||
<< " untransformed faces:" << endl;
|
||||
|
||||
forAll(slaveFaces, i)
|
||||
{
|
||||
Pout<< " " << fc[slaveFaces[i]] << endl;
|
||||
}
|
||||
}
|
||||
|
||||
const labelList& transformedSlaveFaces = transformedSlaves[pointI];
|
||||
|
||||
if (transformedSlaveFaces.size() > 0)
|
||||
{
|
||||
Pout<< "Master point:" << pointI
|
||||
<< " connected to " << transformedSlaveFaces.size()
|
||||
<< " transformed faces:" << endl;
|
||||
|
||||
forAll(transformedSlaveFaces, i)
|
||||
{
|
||||
Pout<< " " << fc[transformedSlaveFaces[i]] << endl;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Test: point to cells addressing
|
||||
{
|
||||
const labelList& boundaryCells = globalData.boundaryCells();
|
||||
const mapDistribute& globalPointBoundaryCellsMap =
|
||||
globalData.globalPointBoundaryCellsMap();
|
||||
const labelListList& slaves = globalData.globalPointBoundaryCells();
|
||||
const labelListList& transformedSlaves =
|
||||
globalData.globalPointTransformedBoundaryCells();
|
||||
|
||||
pointField cc(globalPointBoundaryCellsMap.constructSize());
|
||||
forAll(boundaryCells, i)
|
||||
{
|
||||
cc[i] = mesh.cellCentres()[boundaryCells[i]];
|
||||
}
|
||||
|
||||
// Exchange data
|
||||
globalPointBoundaryCellsMap.distribute
|
||||
(
|
||||
transforms,
|
||||
cc,
|
||||
mapDistribute::transformPosition()
|
||||
);
|
||||
|
||||
// Print
|
||||
forAll(slaves, pointI)
|
||||
{
|
||||
const labelList& pointCells = slaves[pointI];
|
||||
|
||||
if (pointCells.size() > 0)
|
||||
{
|
||||
Pout<< "Master point:" << pointI
|
||||
<< " at:" << coupledPatch.localPoints()[pointI]
|
||||
<< " connected to " << pointCells.size()
|
||||
<< " untransformed boundaryCells:" << endl;
|
||||
|
||||
forAll(pointCells, i)
|
||||
{
|
||||
Pout<< " " << cc[pointCells[i]] << endl;
|
||||
}
|
||||
}
|
||||
|
||||
const labelList& transformPointCells = transformedSlaves[pointI];
|
||||
|
||||
if (transformPointCells.size() > 0)
|
||||
{
|
||||
Pout<< "Master point:" << pointI
|
||||
<< " connected to " << transformPointCells.size()
|
||||
<< " transformed boundaryCells:" << endl;
|
||||
|
||||
forAll(transformPointCells, i)
|
||||
{
|
||||
Pout<< " " << cc[transformPointCells[i]] << endl;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Info<< "End\n" << endl;
|
||||
|
||||
@ -30,12 +30,12 @@ Description
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
#include "syncTools.H"
|
||||
#include "argList.H"
|
||||
#include "polyMesh.H"
|
||||
#include "Time.H"
|
||||
#include "Random.H"
|
||||
#include "PackedList.H"
|
||||
#include "syncTools.H"
|
||||
|
||||
using namespace Foam;
|
||||
|
||||
@ -285,7 +285,7 @@ void testSparseData(const polyMesh& mesh, Random& rndGen)
|
||||
|
||||
{
|
||||
// Create some data. Use slightly perturbed positions.
|
||||
EdgeMap<vector> sparseData;
|
||||
EdgeMap<point> sparseData;
|
||||
pointField fullData(mesh.nEdges(), point::max);
|
||||
|
||||
const edgeList& edges = allBoundary.edges();
|
||||
@ -313,13 +313,13 @@ void testSparseData(const polyMesh& mesh, Random& rndGen)
|
||||
(
|
||||
mesh,
|
||||
sparseData,
|
||||
minEqOp<vector>()
|
||||
minMagSqrEqOp<point>()
|
||||
);
|
||||
syncTools::syncEdgeList
|
||||
(
|
||||
mesh,
|
||||
fullData,
|
||||
minEqOp<vector>(),
|
||||
minMagSqrEqOp<point>(),
|
||||
point::max
|
||||
);
|
||||
|
||||
@ -350,7 +350,7 @@ void testSparseData(const polyMesh& mesh, Random& rndGen)
|
||||
{
|
||||
const edge& e = mesh.edges()[meshEdgeI];
|
||||
|
||||
EdgeMap<vector>::const_iterator iter = sparseData.find(e);
|
||||
EdgeMap<point>::const_iterator iter = sparseData.find(e);
|
||||
|
||||
if (iter != sparseData.end())
|
||||
{
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -31,16 +31,16 @@ Usage
|
||||
- foamToStarMesh [OPTION] \n
|
||||
Reads an OpenFOAM mesh and writes a pro-STAR (v4) bnd/cel/vrt format.
|
||||
|
||||
@param -noBnd \n
|
||||
Suppress writing the @c .bnd file
|
||||
\param -noBnd \n
|
||||
Suppress writing the \c .bnd file
|
||||
|
||||
@param -scale \<factor\>\n
|
||||
\param -scale \<factor\>\n
|
||||
Specify an alternative geometry scaling factor.
|
||||
The default is @b 1000 (scale @em [m] to @em [mm]).
|
||||
The default is \b 1000 (scale \em [m] to \em [mm]).
|
||||
|
||||
Note
|
||||
The cellTable information available in the files
|
||||
@c constant/cellTable and @c constant/polyMesh/cellTableId
|
||||
\c constant/cellTable and @c constant/polyMesh/cellTableId
|
||||
will be used if available. Otherwise the cellZones are used when
|
||||
creating the cellTable information.
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -31,11 +31,11 @@ Usage
|
||||
- foamToSurface [OPTION] \n
|
||||
Reads an OpenFOAM mesh and writes the boundaries in a surface format.
|
||||
|
||||
@param -scale \<factor\>\n
|
||||
\param -scale \<factor\>\n
|
||||
Specify an alternative geometry scaling factor.
|
||||
Eg, use @b 1000 to scale @em [m] to @em [mm].
|
||||
Eg, use \b 1000 to scale \em [m] to \em [mm].
|
||||
|
||||
@param -tri \n
|
||||
\param -tri \n
|
||||
Triangulate surface.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -27,7 +27,7 @@ Description
|
||||
Work in progress! Handles ascii multiblock (and optionally singleBlock)
|
||||
format.
|
||||
By default expects blanking. Use -noBlank if none.
|
||||
Use -2D @a thickness if 2D.
|
||||
Use -2D \a thickness if 2D.
|
||||
|
||||
Niklas Nordin has experienced a problem with lefthandedness of the blocks.
|
||||
The code should detect this automatically - see hexBlock::readPoints but
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -31,14 +31,14 @@ Usage
|
||||
- star4ToFoam [OPTION] ccmMesh\n
|
||||
convert pro-STAR mesh to OpenFOAM
|
||||
|
||||
@param -ascii \n
|
||||
\param -ascii \n
|
||||
Write in ASCII format instead of binary
|
||||
|
||||
@param -scale \<factor\>\n
|
||||
\param -scale \<factor\>\n
|
||||
Specify an alternative geometry scaling factor.
|
||||
The default is @b 0.001 (scale @em [mm] to @em [m]).
|
||||
The default is \b 0.001 (scale \em [mm] to \em [m]).
|
||||
|
||||
@param -solids \n
|
||||
\param -solids \n
|
||||
Treat any solid cells present just like fluid cells.
|
||||
The default is to discard them.
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -29,7 +29,7 @@ Description
|
||||
and run tetgen with -f option.
|
||||
|
||||
Sample smesh file:
|
||||
@verbatim
|
||||
\verbatim
|
||||
# cube.smesh -- A 10x10x10 cube
|
||||
8 3
|
||||
1 0 0 0
|
||||
@ -49,7 +49,7 @@ Description
|
||||
4 2 6 7 3 65
|
||||
0
|
||||
0
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
Note
|
||||
- for some reason boundary faces point inwards. I just reverse them
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -28,20 +28,20 @@ Description
|
||||
A multi-block mesh generator.
|
||||
|
||||
Uses the block mesh description found in
|
||||
@a constant/polyMesh/blockMeshDict
|
||||
(or @a constant/\<region\>/polyMesh/blockMeshDict).
|
||||
\a constant/polyMesh/blockMeshDict
|
||||
(or \a constant/\<region\>/polyMesh/blockMeshDict).
|
||||
|
||||
Usage
|
||||
|
||||
- blockMesh [OPTION]
|
||||
|
||||
@param -blockTopology \n
|
||||
\param -blockTopology \n
|
||||
Write the topology as a set of edges in OBJ format.
|
||||
|
||||
@param -region \<name\> \n
|
||||
\param -region \<name\> \n
|
||||
Specify an alternative mesh region.
|
||||
|
||||
@param -dict \<filename\> \n
|
||||
\param -dict \<filename\> \n
|
||||
Specify alternative dictionary for the block mesh description.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -30,9 +30,9 @@ Description
|
||||
- create baffles in original mesh with directMappedWall patches
|
||||
- if extruding boundary faces:
|
||||
- convert boundary faces to directMappedWall patches
|
||||
- extrude edges of faceZone as a <zone>_sidePatch
|
||||
- extrude edges of faceZone as a \<zone\>_sidePatch
|
||||
- extrude edges inbetween different faceZones as a
|
||||
(nonuniformTransform)cyclic <zoneA>_<zoneB>
|
||||
(nonuniformTransform)cyclic \<zoneA\>_\<zoneB\>
|
||||
- extrudes into master direction (i.e. away from the owner cell
|
||||
if flipMap is false)
|
||||
- not parallel
|
||||
@ -106,15 +106,15 @@ becomes
|
||||
|
||||
Usage
|
||||
|
||||
- extrudeToRegionMesh <regionName> <faceZones> <thickness>
|
||||
- extrudeToRegionMesh \<regionName\> \<faceZones\> \<thickness\>
|
||||
|
||||
@param \<regionName\> \n
|
||||
\param \<regionName\> \n
|
||||
Name of mesh to create.
|
||||
|
||||
@param \<faceZones\> \n
|
||||
\param \<faceZones\> \n
|
||||
List of faceZones to extrude
|
||||
|
||||
@param \<thickness\> \n
|
||||
\param \<thickness\> \n
|
||||
Thickness of extruded mesh.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -28,7 +28,7 @@ Description
|
||||
Walks from starting edge/face around point on patch.
|
||||
|
||||
-# Use in-place: \n
|
||||
@code
|
||||
\code
|
||||
patchPointEdgeCirculator circ(..);
|
||||
|
||||
// Walk
|
||||
@ -38,10 +38,10 @@ Description
|
||||
++circ;
|
||||
}
|
||||
while (circ != circ.end());
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
-# Use like STL iterator: \n
|
||||
@code
|
||||
\code
|
||||
patchPointEdgeCirculator circ(..);
|
||||
for
|
||||
(
|
||||
@ -52,7 +52,7 @@ Description
|
||||
{
|
||||
Info<< "edge:" << iter.edgeID() << endl;
|
||||
}
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
|
||||
SourceFiles
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -32,7 +32,7 @@ Usage
|
||||
|
||||
- extrude2DMesh thickness
|
||||
|
||||
@param thickness \n
|
||||
\param thickness \n
|
||||
Thickness (in metre) of slab.
|
||||
|
||||
Note
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -33,18 +33,18 @@ Usage
|
||||
for it. Normal behaviour is to have each point become a cell
|
||||
(1.5 behaviour)
|
||||
|
||||
@param -concaveMultiCells
|
||||
\param -concaveMultiCells
|
||||
Creates multiple cells for each point on a concave edge. Might limit
|
||||
the amount of distortion on some meshes.
|
||||
|
||||
@param -splitAllFaces
|
||||
\param -splitAllFaces
|
||||
Normally only constructs a single face between two cells. This single face
|
||||
might be too distorted. splitAllFaces will create a single face for every
|
||||
original cell the face passes through. The mesh will thus have
|
||||
multiple faces inbetween two cells! (so is not strictly upper-triangular
|
||||
anymore - checkMesh will complain)
|
||||
|
||||
@param -doNotPreserveFaceZones:
|
||||
\param -doNotPreserveFaceZones:
|
||||
By default all faceZones are preserved by marking all faces, edges and
|
||||
points on them as features. The -doNotPreserveFaceZones disables this
|
||||
behaviour.
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -40,7 +40,7 @@ Description
|
||||
Comparable to running a meshModifier of the form
|
||||
(if masterPatch is called "M" and slavePatch "S"):
|
||||
|
||||
@verbatim
|
||||
\verbatim
|
||||
couple
|
||||
{
|
||||
type slidingInterface;
|
||||
@ -52,7 +52,7 @@ Description
|
||||
slavePatchName S;
|
||||
typeOfMatch partial or integral
|
||||
}
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -32,30 +32,30 @@ Usage
|
||||
|
||||
- decomposePar [OPTION]
|
||||
|
||||
@param -cellDist \n
|
||||
\param -cellDist \n
|
||||
Write the cell distribution as a labelList, for use with 'manual'
|
||||
decomposition method or as a volScalarField for post-processing.
|
||||
|
||||
@param -region regionName \n
|
||||
\param -region regionName \n
|
||||
Decompose named region. Does not check for existence of processor*.
|
||||
|
||||
@param -copyUniform \n
|
||||
Copy any @a uniform directories too.
|
||||
\param -copyUniform \n
|
||||
Copy any \a uniform directories too.
|
||||
|
||||
@param -constant \n
|
||||
\param -constant \n
|
||||
Override controlDict settings and use constant directory.
|
||||
|
||||
@param -fields \n
|
||||
\param -fields \n
|
||||
Use existing geometry decomposition and convert fields only.
|
||||
|
||||
@param -force \n
|
||||
Remove any existing @a processor subdirectories before decomposing the
|
||||
\param -force \n
|
||||
Remove any existing \a processor subdirectories before decomposing the
|
||||
geometry.
|
||||
|
||||
@param -ifRequired \n
|
||||
\param -ifRequired \n
|
||||
Only decompose the geometry if the number of domains has changed from a
|
||||
previous decomposition. No @a processor subdirectories will be removed
|
||||
unless the @a -force option is also specified. This option can be used
|
||||
previous decomposition. No \a processor subdirectories will be removed
|
||||
unless the \a -force option is also specified. This option can be used
|
||||
to avoid redundant geometry decomposition (eg, in scripts), but should
|
||||
be used with caution when the underlying (serial) geometry or the
|
||||
decomposition method etc. have been changed between decompositions.
|
||||
|
||||
@ -32,7 +32,7 @@ Description
|
||||
Balances mesh and writes new mesh to new time directory.
|
||||
|
||||
Can also work like decomposePar:
|
||||
@verbatim
|
||||
\verbatim
|
||||
# Create empty processor directories (have to exist for argList)
|
||||
mkdir processor0
|
||||
..
|
||||
@ -43,7 +43,7 @@ Description
|
||||
|
||||
# Distribute
|
||||
mpirun -np ddd redistributeMeshPar -parallel
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "fvMesh.H"
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -30,22 +30,22 @@ Usage
|
||||
- foamToEnsight [OPTION] \n
|
||||
Translates OpenFOAM data to Ensight format
|
||||
|
||||
@param -ascii \n
|
||||
\param -ascii \n
|
||||
Write Ensight data in ASCII format instead of "C Binary"
|
||||
|
||||
@param -patches patchList \n
|
||||
\param -patches patchList \n
|
||||
Specify particular patches to write.
|
||||
Specifying an empty list suppresses writing the internalMesh.
|
||||
|
||||
@param -noPatches \n
|
||||
\param -noPatches \n
|
||||
Suppress writing any patches.
|
||||
|
||||
@param -faceZones zoneList \n
|
||||
\param -faceZones zoneList \n
|
||||
Specify faceZones to write, with wildcards
|
||||
|
||||
Note
|
||||
Parallel support for cloud data is not supported
|
||||
- writes to @a EnSight directory to avoid collisions with foamToEnsightParts
|
||||
- writes to \a EnSight directory to avoid collisions with foamToEnsightParts
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -32,23 +32,23 @@ Usage
|
||||
- foamToEnsightParts [OPTION] \n
|
||||
Translates OpenFOAM data to Ensight format
|
||||
|
||||
@param -ascii \n
|
||||
\param -ascii \n
|
||||
Write Ensight data in ASCII format instead of "C Binary"
|
||||
|
||||
@param -noZero \n
|
||||
\param -noZero \n
|
||||
Exclude the often incomplete initial conditions.
|
||||
|
||||
@param -index \<start\>\n
|
||||
\param -index \<start\>\n
|
||||
Ignore the time index contained in the time file and use a
|
||||
simple indexing when creating the @c Ensight/data/######## files.
|
||||
simple indexing when creating the \c Ensight/data/######## files.
|
||||
|
||||
@param -noMesh \n
|
||||
\param -noMesh \n
|
||||
Suppress writing the geometry. Can be useful for converting partial
|
||||
results for a static geometry.
|
||||
|
||||
Note
|
||||
- no parallel data.
|
||||
- writes to @a Ensight directory to avoid collisions with foamToEnsight.
|
||||
- writes to \a Ensight directory to avoid collisions with foamToEnsight.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -31,40 +31,40 @@ Usage
|
||||
|
||||
- foamToTecplot360 [OPTION]
|
||||
|
||||
@param -fields \<names\>\n
|
||||
\param -fields \<names\>\n
|
||||
Convert selected fields only. For example,
|
||||
@verbatim
|
||||
\verbatim
|
||||
-fields '( p T U )'
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
The quoting is required to avoid shell expansions and to pass the
|
||||
information as a single argument.
|
||||
|
||||
@param -cellSet \<name\>\n
|
||||
@param -faceSet \<name\>\n
|
||||
\param -cellSet \<name\>\n
|
||||
\param -faceSet \<name\>\n
|
||||
Restrict conversion to the cellSet, faceSet.
|
||||
|
||||
@param -nearCellValue \n
|
||||
\param -nearCellValue \n
|
||||
Output cell value on patches instead of patch value itself
|
||||
|
||||
@param -noInternal \n
|
||||
\param -noInternal \n
|
||||
Do not generate file for mesh, only for patches
|
||||
|
||||
@param -noPointValues \n
|
||||
\param -noPointValues \n
|
||||
No pointFields
|
||||
|
||||
@param -noFaceZones \n
|
||||
\param -noFaceZones \n
|
||||
No faceZones
|
||||
|
||||
@param -excludePatches \<patchNames\>\n
|
||||
\param -excludePatches \<patchNames\>\n
|
||||
Specify patches (wildcards) to exclude. For example,
|
||||
@verbatim
|
||||
\verbatim
|
||||
-excludePatches '( inlet_1 inlet_2 "proc.*")'
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
The quoting is required to avoid shell expansions and to pass the
|
||||
information as a single argument. The double quotes denote a regular
|
||||
expression.
|
||||
|
||||
@param -useTimeName \n
|
||||
\param -useTimeName \n
|
||||
use the time index in the VTK file name instead of the time index
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -40,59 +40,59 @@ Usage
|
||||
|
||||
- foamToVTK [OPTION]
|
||||
|
||||
@param -ascii \n
|
||||
\param -ascii \n
|
||||
Write VTK data in ASCII format instead of binary.
|
||||
|
||||
@param -mesh \<name\>\n
|
||||
\param -mesh \<name\>\n
|
||||
Use a different mesh name (instead of -region)
|
||||
|
||||
@param -fields \<fields\>\n
|
||||
\param -fields \<fields\>\n
|
||||
Convert selected fields only. For example,
|
||||
@verbatim
|
||||
\verbatim
|
||||
-fields "( p T U )"
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
The quoting is required to avoid shell expansions and to pass the
|
||||
information as a single argument.
|
||||
|
||||
@param -surfaceFields \n
|
||||
\param -surfaceFields \n
|
||||
Write surfaceScalarFields (e.g., phi)
|
||||
|
||||
@param -cellSet \<name\>\n
|
||||
@param -faceSet \<name\>\n
|
||||
@param -pointSet \<name\>\n
|
||||
\param -cellSet \<name\>\n
|
||||
\param -faceSet \<name\>\n
|
||||
\param -pointSet \<name\>\n
|
||||
Restrict conversion to the cellSet, faceSet or pointSet.
|
||||
|
||||
@param -nearCellValue \n
|
||||
\param -nearCellValue \n
|
||||
Output cell value on patches instead of patch value itself
|
||||
|
||||
@param -noInternal \n
|
||||
\param -noInternal \n
|
||||
Do not generate file for mesh, only for patches
|
||||
|
||||
@param -noPointValues \n
|
||||
\param -noPointValues \n
|
||||
No pointFields
|
||||
|
||||
@param -noFaceZones \n
|
||||
\param -noFaceZones \n
|
||||
No faceZones
|
||||
|
||||
@param -noLinks \n
|
||||
\param -noLinks \n
|
||||
(in parallel) do not link processor files to master
|
||||
|
||||
@param poly \n
|
||||
\param poly \n
|
||||
write polyhedral cells without tet/pyramid decomposition
|
||||
|
||||
@param -allPatches \n
|
||||
\param -allPatches \n
|
||||
Combine all patches into a single file
|
||||
|
||||
@param -excludePatches \<patchNames\>\n
|
||||
\param -excludePatches \<patchNames\>\n
|
||||
Specify patches (wildcards) to exclude. For example,
|
||||
@verbatim
|
||||
\verbatim
|
||||
-excludePatches '( inlet_1 inlet_2 "proc.*")'
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
The quoting is required to avoid shell expansions and to pass the
|
||||
information as a single argument. The double quotes denote a regular
|
||||
expression.
|
||||
|
||||
@param -useTimeName \n
|
||||
\param -useTimeName \n
|
||||
use the time index in the VTK file name instead of the time index
|
||||
|
||||
Note
|
||||
@ -110,7 +110,7 @@ Note
|
||||
However can have .pvd file format which refers to time simulation
|
||||
if XML *.vtu files are available:
|
||||
|
||||
@verbatim
|
||||
\verbatim
|
||||
<?xml version="1.0"?>
|
||||
<VTKFile type="Collection"
|
||||
version="0.1"
|
||||
@ -129,7 +129,7 @@ Note
|
||||
<DataSet timestep="500" file="pitzDaily_11.vtu"/>
|
||||
</Collection>
|
||||
</VTKFile>
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -45,7 +45,7 @@ Description
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
//! @cond fileScope
|
||||
//! \cond fileScope
|
||||
// Extract up to the first non-word characters
|
||||
inline word getFirstWord(const char* str)
|
||||
{
|
||||
@ -64,7 +64,7 @@ namespace Foam
|
||||
}
|
||||
|
||||
}
|
||||
//! @endcond
|
||||
//! \endcond
|
||||
|
||||
} // End namespace Foam
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2009-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -39,7 +39,7 @@ Description
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
//! @cond fileScope
|
||||
//! \cond fileScope
|
||||
// Extract up to the first non-word characters
|
||||
inline word getFirstWord(const char* str)
|
||||
{
|
||||
@ -58,7 +58,7 @@ namespace Foam
|
||||
}
|
||||
|
||||
}
|
||||
//! @endcond
|
||||
//! \endcond
|
||||
|
||||
} // End namespace Foam
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -45,7 +45,7 @@ defineTypeNameAndDebug(Foam::vtkPV3Readers, 0);
|
||||
|
||||
namespace Foam
|
||||
{
|
||||
//! @cond fileScope
|
||||
//! \cond fileScope
|
||||
// Extract up to the first non-word characters
|
||||
inline word getFirstWord(const char* str)
|
||||
{
|
||||
@ -64,7 +64,7 @@ namespace Foam
|
||||
}
|
||||
|
||||
}
|
||||
//! @endcond
|
||||
//! \endcond
|
||||
|
||||
} // End namespace Foam
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -31,7 +31,7 @@ Usage
|
||||
|
||||
- foamListTimes [OPTION]
|
||||
|
||||
@param -processor \n
|
||||
\param -processor \n
|
||||
List times from processor0/ directory
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -27,13 +27,13 @@ Description
|
||||
|
||||
Keywords:
|
||||
|
||||
@param setFormat : set output format, choice of \n
|
||||
\param setFormat : set output format, choice of \n
|
||||
- xmgr
|
||||
- jplot
|
||||
- gnuplot
|
||||
- raw
|
||||
|
||||
@param surfaceFormat : surface output format, choice of \n
|
||||
\param surfaceFormat : surface output format, choice of \n
|
||||
- null : suppress output
|
||||
- foamFile : separate points, faces and values file
|
||||
- dx : DX scalar or vector format
|
||||
@ -42,7 +42,7 @@ Description
|
||||
- obj : Wavefron stl. Does not contain values!
|
||||
- stl : ascii stl. Does not contain values!
|
||||
|
||||
@param interpolationScheme : interpolation scheme, choice of \n
|
||||
\param interpolationScheme : interpolation scheme, choice of \n
|
||||
- cell : use cell-centre value; constant over cells (default)
|
||||
- cellPoint : use cell-centre and vertex values
|
||||
- cellPointFace : use cell-centre, vertex and face values. \n
|
||||
@ -50,9 +50,9 @@ Description
|
||||
-# face values determined using the current face interpolation scheme
|
||||
for the field (linear, limitedLinear, etc.)
|
||||
|
||||
@param fields : list of fields to sample
|
||||
\param fields : list of fields to sample
|
||||
|
||||
@param sets : list of sets to sample, choice of \n
|
||||
\param sets : list of sets to sample, choice of \n
|
||||
- uniform evenly distributed points on line
|
||||
- face one point per face intersection
|
||||
- midPoint one point per cell, inbetween two face intersections
|
||||
@ -74,7 +74,7 @@ Description
|
||||
uniform: extra number of sampling points
|
||||
curve, cloud: list of coordinates
|
||||
|
||||
@param surfaces : list of surfaces to sample, choice of \n
|
||||
\param surfaces : list of surfaces to sample, choice of \n
|
||||
- plane : values on plane defined by point, normal.
|
||||
- patch : values on patch.
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -30,7 +30,7 @@ Description
|
||||
The -noWrite option has no meaning.
|
||||
|
||||
The flow type parameter is obtained according to the following equation:
|
||||
@verbatim
|
||||
\verbatim
|
||||
|D| - |Omega|
|
||||
lambda = -------------
|
||||
|D| + |Omega|
|
||||
@ -38,7 +38,7 @@ Description
|
||||
-1 = rotational flow
|
||||
0 = simple shear flow
|
||||
1 = planar extensional flow
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -29,10 +29,10 @@ Description
|
||||
type in the field and polyMesh/boundary files.
|
||||
|
||||
Reads dictionaries (fields) and entries to change from a dictionary.
|
||||
E.g. to make the @em movingWall a @em fixedValue for @em p but all other
|
||||
@em Walls a zeroGradient boundary condition, the
|
||||
@c system/changeDictionaryDict would contain the following:
|
||||
@verbatim
|
||||
E.g. to make the \em movingWall a \em fixedValue for @em p but all other
|
||||
\em Walls a zeroGradient boundary condition, the
|
||||
\c system/changeDictionaryDict would contain the following:
|
||||
\verbatim
|
||||
dictionaryReplacement
|
||||
{
|
||||
p // field to change
|
||||
@ -51,13 +51,13 @@ Description
|
||||
}
|
||||
}
|
||||
}
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
Usage
|
||||
|
||||
- changeDictionary [OPTION]
|
||||
|
||||
@param -literalRE \n
|
||||
\param -literalRE \n
|
||||
Do not interpret regular expressions; treat them as any other keyword.
|
||||
|
||||
|
||||
|
||||
@ -31,7 +31,7 @@ Usage
|
||||
|
||||
- foamUpgradeCyclics [OPTION]
|
||||
|
||||
@param -test \n
|
||||
\param -test \n
|
||||
Suppress writing the updated files with split cyclics
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -31,7 +31,7 @@ Usage
|
||||
|
||||
- foamUpgradeFvSolution [OPTION]
|
||||
|
||||
@param -test \n
|
||||
\param -test \n
|
||||
Suppress writing the updated fvSolution file
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -39,7 +39,8 @@ template<class Type>
|
||||
void MapConsistentVolFields
|
||||
(
|
||||
const IOobjectList& objects,
|
||||
const meshToMesh& meshToMeshInterp
|
||||
const meshToMesh& meshToMeshInterp,
|
||||
const meshToMesh::order& mapOrder
|
||||
)
|
||||
{
|
||||
const fvMesh& meshSource = meshToMeshInterp.fromMesh();
|
||||
@ -83,12 +84,7 @@ void MapConsistentVolFields
|
||||
);
|
||||
|
||||
// Interpolate field
|
||||
meshToMeshInterp.interpolate
|
||||
(
|
||||
fieldTarget,
|
||||
fieldSource,
|
||||
meshToMesh::INTERPOLATE
|
||||
);
|
||||
meshToMeshInterp.interpolate(fieldTarget, fieldSource, mapOrder);
|
||||
|
||||
// Write field
|
||||
fieldTarget.write();
|
||||
@ -101,11 +97,7 @@ void MapConsistentVolFields
|
||||
GeometricField<Type, fvPatchField, volMesh> fieldTarget
|
||||
(
|
||||
fieldTargetIOobject,
|
||||
meshToMeshInterp.interpolate
|
||||
(
|
||||
fieldSource,
|
||||
meshToMesh::INTERPOLATE
|
||||
)
|
||||
meshToMeshInterp.interpolate(fieldSource, mapOrder)
|
||||
);
|
||||
|
||||
// Write field
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -39,7 +39,8 @@ template<class Type>
|
||||
void MapVolFields
|
||||
(
|
||||
const IOobjectList& objects,
|
||||
const meshToMesh& meshToMeshInterp
|
||||
const meshToMesh& meshToMeshInterp,
|
||||
const meshToMesh::order& mapOrder
|
||||
)
|
||||
{
|
||||
const fvMesh& meshSource = meshToMeshInterp.fromMesh();
|
||||
@ -83,12 +84,7 @@ void MapVolFields
|
||||
);
|
||||
|
||||
// Interpolate field
|
||||
meshToMeshInterp.interpolate
|
||||
(
|
||||
fieldTarget,
|
||||
fieldSource,
|
||||
meshToMesh::INTERPOLATE
|
||||
);
|
||||
meshToMeshInterp.interpolate(fieldTarget, fieldSource, mapOrder);
|
||||
|
||||
// Write field
|
||||
fieldTarget.write();
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -45,7 +45,8 @@ Description
|
||||
void mapConsistentMesh
|
||||
(
|
||||
const fvMesh& meshSource,
|
||||
const fvMesh& meshTarget
|
||||
const fvMesh& meshTarget,
|
||||
const meshToMesh::order& mapOrder
|
||||
)
|
||||
{
|
||||
// Create the interpolation scheme
|
||||
@ -61,11 +62,16 @@ void mapConsistentMesh
|
||||
|
||||
// Map volFields
|
||||
// ~~~~~~~~~~~~~
|
||||
MapConsistentVolFields<scalar>(objects, meshToMeshInterp);
|
||||
MapConsistentVolFields<vector>(objects, meshToMeshInterp);
|
||||
MapConsistentVolFields<sphericalTensor>(objects, meshToMeshInterp);
|
||||
MapConsistentVolFields<symmTensor>(objects, meshToMeshInterp);
|
||||
MapConsistentVolFields<tensor>(objects, meshToMeshInterp);
|
||||
MapConsistentVolFields<scalar>(objects, meshToMeshInterp, mapOrder);
|
||||
MapConsistentVolFields<vector>(objects, meshToMeshInterp, mapOrder);
|
||||
MapConsistentVolFields<sphericalTensor>
|
||||
(
|
||||
objects,
|
||||
meshToMeshInterp,
|
||||
mapOrder
|
||||
);
|
||||
MapConsistentVolFields<symmTensor>(objects, meshToMeshInterp, mapOrder);
|
||||
MapConsistentVolFields<tensor>(objects, meshToMeshInterp, mapOrder);
|
||||
}
|
||||
|
||||
{
|
||||
@ -98,7 +104,8 @@ void mapSubMesh
|
||||
const fvMesh& meshSource,
|
||||
const fvMesh& meshTarget,
|
||||
const HashTable<word>& patchMap,
|
||||
const wordList& cuttingPatches
|
||||
const wordList& cuttingPatches,
|
||||
const meshToMesh::order& mapOrder
|
||||
)
|
||||
{
|
||||
// Create the interpolation scheme
|
||||
@ -120,11 +127,11 @@ void mapSubMesh
|
||||
|
||||
// Map volFields
|
||||
// ~~~~~~~~~~~~~
|
||||
MapVolFields<scalar>(objects, meshToMeshInterp);
|
||||
MapVolFields<vector>(objects, meshToMeshInterp);
|
||||
MapVolFields<sphericalTensor>(objects, meshToMeshInterp);
|
||||
MapVolFields<symmTensor>(objects, meshToMeshInterp);
|
||||
MapVolFields<tensor>(objects, meshToMeshInterp);
|
||||
MapVolFields<scalar>(objects, meshToMeshInterp, mapOrder);
|
||||
MapVolFields<vector>(objects, meshToMeshInterp, mapOrder);
|
||||
MapVolFields<sphericalTensor>(objects, meshToMeshInterp, mapOrder);
|
||||
MapVolFields<symmTensor>(objects, meshToMeshInterp, mapOrder);
|
||||
MapVolFields<tensor>(objects, meshToMeshInterp, mapOrder);
|
||||
}
|
||||
|
||||
{
|
||||
@ -155,7 +162,8 @@ void mapSubMesh
|
||||
void mapConsistentSubMesh
|
||||
(
|
||||
const fvMesh& meshSource,
|
||||
const fvMesh& meshTarget
|
||||
const fvMesh& meshTarget,
|
||||
const meshToMesh::order& mapOrder
|
||||
)
|
||||
{
|
||||
HashTable<word> patchMap;
|
||||
@ -181,7 +189,14 @@ void mapConsistentSubMesh
|
||||
}
|
||||
}
|
||||
|
||||
mapSubMesh(meshSource, meshTarget, patchMap, cuttingPatchTable.toc());
|
||||
mapSubMesh
|
||||
(
|
||||
meshSource,
|
||||
meshTarget,
|
||||
patchMap,
|
||||
cuttingPatchTable.toc(),
|
||||
mapOrder
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@ -240,6 +255,18 @@ int main(int argc, char *argv[])
|
||||
"scalar",
|
||||
"specify the source time"
|
||||
);
|
||||
argList::addOption
|
||||
(
|
||||
"sourceRegion",
|
||||
"word",
|
||||
"specify the source region"
|
||||
);
|
||||
argList::addOption
|
||||
(
|
||||
"targetRegion",
|
||||
"word",
|
||||
"specify the target region"
|
||||
);
|
||||
argList::addBoolOption
|
||||
(
|
||||
"parallelSource",
|
||||
@ -255,6 +282,12 @@ int main(int argc, char *argv[])
|
||||
"consistent",
|
||||
"source and target geometry and boundary conditions identical"
|
||||
);
|
||||
argList::addOption
|
||||
(
|
||||
"mapMethod",
|
||||
"word",
|
||||
"specify the mapping method"
|
||||
);
|
||||
|
||||
argList args(argc, argv);
|
||||
|
||||
@ -270,13 +303,53 @@ int main(int argc, char *argv[])
|
||||
const fileName rootDirSource = casePath.path();
|
||||
const fileName caseDirSource = casePath.name();
|
||||
|
||||
Info<< "Source: " << rootDirSource << " " << caseDirSource << nl
|
||||
<< "Target: " << rootDirTarget << " " << caseDirTarget << endl;
|
||||
Info<< "Source: " << rootDirSource << " " << caseDirSource << endl;
|
||||
word sourceRegion = fvMesh::defaultRegion;
|
||||
if (args.optionFound("sourceRegion"))
|
||||
{
|
||||
sourceRegion = args["sourceRegion"];
|
||||
Info<< "Source region: " << sourceRegion << endl;
|
||||
}
|
||||
|
||||
Info<< "Target: " << rootDirTarget << " " << caseDirTarget << endl;
|
||||
word targetRegion = fvMesh::defaultRegion;
|
||||
if (args.optionFound("targetRegion"))
|
||||
{
|
||||
targetRegion = args["targetRegion"];
|
||||
Info<< "Target region: " << targetRegion << endl;
|
||||
}
|
||||
|
||||
const bool parallelSource = args.optionFound("parallelSource");
|
||||
const bool parallelTarget = args.optionFound("parallelTarget");
|
||||
const bool consistent = args.optionFound("consistent");
|
||||
|
||||
meshToMesh::order mapOrder = meshToMesh::INTERPOLATE;
|
||||
if (args.optionFound("mapMethod"))
|
||||
{
|
||||
const word mapMethod(args["mapMethod"]);
|
||||
if (mapMethod == "mapNearest")
|
||||
{
|
||||
mapOrder = meshToMesh::MAP;
|
||||
}
|
||||
else if (mapMethod == "interpolate")
|
||||
{
|
||||
mapOrder = meshToMesh::INTERPOLATE;
|
||||
}
|
||||
else if (mapMethod == "cellPointInterpolate")
|
||||
{
|
||||
mapOrder = meshToMesh::CELL_POINT_INTERPOLATE;
|
||||
}
|
||||
else
|
||||
{
|
||||
FatalErrorIn(args.executable())
|
||||
<< "Unknown mapMethod " << mapMethod << ". Valid options are: "
|
||||
<< "mapNearest, interpolate and cellPointInterpolate"
|
||||
<< exit(FatalError);
|
||||
}
|
||||
|
||||
Info<< "Mapping method: " << mapMethod << endl;
|
||||
}
|
||||
|
||||
#include "createTimes.H"
|
||||
|
||||
HashTable<word> patchMap;
|
||||
@ -323,7 +396,7 @@ int main(int argc, char *argv[])
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
fvMesh::defaultRegion,
|
||||
targetRegion,
|
||||
runTimeTarget.timeName(),
|
||||
runTimeTarget
|
||||
)
|
||||
@ -348,7 +421,7 @@ int main(int argc, char *argv[])
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
fvMesh::defaultRegion,
|
||||
sourceRegion,
|
||||
runTimeSource.timeName(),
|
||||
runTimeSource
|
||||
)
|
||||
@ -358,11 +431,18 @@ int main(int argc, char *argv[])
|
||||
|
||||
if (consistent)
|
||||
{
|
||||
mapConsistentSubMesh(meshSource, meshTarget);
|
||||
mapConsistentSubMesh(meshSource, meshTarget, mapOrder);
|
||||
}
|
||||
else
|
||||
{
|
||||
mapSubMesh(meshSource, meshTarget, patchMap, cuttingPatches);
|
||||
mapSubMesh
|
||||
(
|
||||
meshSource,
|
||||
meshTarget,
|
||||
patchMap,
|
||||
cuttingPatches,
|
||||
mapOrder
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -390,7 +470,7 @@ int main(int argc, char *argv[])
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
fvMesh::defaultRegion,
|
||||
sourceRegion,
|
||||
runTimeSource.timeName(),
|
||||
runTimeSource
|
||||
)
|
||||
@ -413,7 +493,7 @@ int main(int argc, char *argv[])
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
fvMesh::defaultRegion,
|
||||
targetRegion,
|
||||
runTimeTarget.timeName(),
|
||||
runTimeTarget
|
||||
)
|
||||
@ -423,7 +503,7 @@ int main(int argc, char *argv[])
|
||||
|
||||
if (consistent)
|
||||
{
|
||||
mapConsistentSubMesh(meshSource, meshTarget);
|
||||
mapConsistentSubMesh(meshSource, meshTarget, mapOrder);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -432,7 +512,8 @@ int main(int argc, char *argv[])
|
||||
meshSource,
|
||||
meshTarget,
|
||||
patchMap,
|
||||
addProcessorPatches(meshTarget, cuttingPatches)
|
||||
addProcessorPatches(meshTarget, cuttingPatches),
|
||||
mapOrder
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -494,7 +575,7 @@ int main(int argc, char *argv[])
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
fvMesh::defaultRegion,
|
||||
sourceRegion,
|
||||
runTimeSource.timeName(),
|
||||
runTimeSource
|
||||
)
|
||||
@ -529,7 +610,7 @@ int main(int argc, char *argv[])
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
fvMesh::defaultRegion,
|
||||
targetRegion,
|
||||
runTimeTarget.timeName(),
|
||||
runTimeTarget
|
||||
)
|
||||
@ -544,7 +625,12 @@ int main(int argc, char *argv[])
|
||||
{
|
||||
if (consistent)
|
||||
{
|
||||
mapConsistentSubMesh(meshSource, meshTarget);
|
||||
mapConsistentSubMesh
|
||||
(
|
||||
meshSource,
|
||||
meshTarget,
|
||||
mapOrder
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -553,7 +639,8 @@ int main(int argc, char *argv[])
|
||||
meshSource,
|
||||
meshTarget,
|
||||
patchMap,
|
||||
addProcessorPatches(meshTarget, cuttingPatches)
|
||||
addProcessorPatches(meshTarget, cuttingPatches),
|
||||
mapOrder
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -571,7 +658,7 @@ int main(int argc, char *argv[])
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
fvMesh::defaultRegion,
|
||||
sourceRegion,
|
||||
runTimeSource.timeName(),
|
||||
runTimeSource
|
||||
)
|
||||
@ -581,7 +668,7 @@ int main(int argc, char *argv[])
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
fvMesh::defaultRegion,
|
||||
targetRegion,
|
||||
runTimeTarget.timeName(),
|
||||
runTimeTarget
|
||||
)
|
||||
@ -592,11 +679,18 @@ int main(int argc, char *argv[])
|
||||
|
||||
if (consistent)
|
||||
{
|
||||
mapConsistentMesh(meshSource, meshTarget);
|
||||
mapConsistentMesh(meshSource, meshTarget, mapOrder);
|
||||
}
|
||||
else
|
||||
{
|
||||
mapSubMesh(meshSource, meshTarget, patchMap, cuttingPatches);
|
||||
mapSubMesh
|
||||
(
|
||||
meshSource,
|
||||
meshTarget,
|
||||
patchMap,
|
||||
cuttingPatches,
|
||||
mapOrder
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -30,13 +30,13 @@ Description
|
||||
Usage
|
||||
- surfaceConvert inputFile outputFile [OPTION]
|
||||
|
||||
@param -clean \n
|
||||
\param -clean \n
|
||||
Perform some surface checking/cleanup on the input surface
|
||||
|
||||
@param -scale \<scale\> \n
|
||||
\param -scale \<scale\> \n
|
||||
Specify a scaling factor for writing the files
|
||||
|
||||
@param -group \n
|
||||
\param -group \n
|
||||
Orders faces by region
|
||||
|
||||
Note
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2009-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -31,25 +31,25 @@ Description
|
||||
Usage
|
||||
- surfaceMeshConvert inputFile outputFile [OPTION]
|
||||
|
||||
@param -clean \n
|
||||
\param -clean \n
|
||||
Perform some surface checking/cleanup on the input surface.
|
||||
|
||||
@param -scaleIn \<scale\> \n
|
||||
\param -scaleIn \<scale\> \n
|
||||
Specify a scaling factor when reading files.
|
||||
|
||||
@param -scaleOut \<scale\> \n
|
||||
\param -scaleOut \<scale\> \n
|
||||
Specify a scaling factor when writing files.
|
||||
|
||||
@param -dict \<dictionary\> \n
|
||||
\param -dict \<dictionary\> \n
|
||||
Specify an alternative dictionary for constant/coordinateSystems.
|
||||
|
||||
@param -from \<coordinateSystem\> \n
|
||||
\param -from \<coordinateSystem\> \n
|
||||
Specify a coordinate System when reading files.
|
||||
|
||||
@param -to \<coordinateSystem\> \n
|
||||
\param -to \<coordinateSystem\> \n
|
||||
Specify a coordinate System when writing files.
|
||||
|
||||
@param -tri \n
|
||||
\param -tri \n
|
||||
Triangulate surface.
|
||||
|
||||
Note
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -31,19 +31,19 @@ Description
|
||||
Usage
|
||||
- surfaceMeshConvertTesting inputFile outputFile [OPTION]
|
||||
|
||||
@param -clean \n
|
||||
\param -clean \n
|
||||
Perform some surface checking/cleanup on the input surface
|
||||
|
||||
@param -orient \n
|
||||
\param -orient \n
|
||||
Check face orientation on the input surface
|
||||
|
||||
@param -scale \<scale\> \n
|
||||
\param -scale \<scale\> \n
|
||||
Specify a scaling factor for writing the files
|
||||
|
||||
@param -triSurface \n
|
||||
\param -triSurface \n
|
||||
Use triSurface library for input/output
|
||||
|
||||
@param -keyed \n
|
||||
\param -keyed \n
|
||||
Use keyedSurface for input/output
|
||||
|
||||
Note
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -32,25 +32,25 @@ Description
|
||||
Usage
|
||||
- surfaceMeshExport outputFile [OPTION]
|
||||
|
||||
@param -clean \n
|
||||
\param -clean \n
|
||||
Perform some surface checking/cleanup on the input surface.
|
||||
|
||||
@param -name \<name\> \n
|
||||
\param -name \<name\> \n
|
||||
Specify an alternative surface name when writing.
|
||||
|
||||
@param -scaleIn \<scale\> \n
|
||||
\param -scaleIn \<scale\> \n
|
||||
Specify a scaling factor when reading files.
|
||||
|
||||
@param -scaleOut \<scale\> \n
|
||||
\param -scaleOut \<scale\> \n
|
||||
Specify a scaling factor when writing files.
|
||||
|
||||
@param -dict \<dictionary\> \n
|
||||
\param -dict \<dictionary\> \n
|
||||
Specify an alternative dictionary for constant/coordinateSystems.
|
||||
|
||||
@param -from \<coordinateSystem\> \n
|
||||
\param -from \<coordinateSystem\> \n
|
||||
Specify a coordinate system when reading files.
|
||||
|
||||
@param -to \<coordinateSystem\> \n
|
||||
\param -to \<coordinateSystem\> \n
|
||||
Specify a coordinate system when writing files.
|
||||
|
||||
Note
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -32,25 +32,25 @@ Description
|
||||
Usage
|
||||
- surfaceMeshImport inputFile [OPTION]
|
||||
|
||||
@param -clean \n
|
||||
\param -clean \n
|
||||
Perform some surface checking/cleanup on the input surface.
|
||||
|
||||
@param -name \<name\> \n
|
||||
\param -name \<name\> \n
|
||||
Specify an alternative surface name when writing.
|
||||
|
||||
@param -scaleIn \<scale\> \n
|
||||
\param -scaleIn \<scale\> \n
|
||||
Specify a scaling factor when reading files.
|
||||
|
||||
@param -scaleOut \<scale\> \n
|
||||
\param -scaleOut \<scale\> \n
|
||||
Specify a scaling factor when writing files.
|
||||
|
||||
@param -dict \<dictionary\> \n
|
||||
\param -dict \<dictionary\> \n
|
||||
Specify an alternative dictionary for constant/coordinateSystems.
|
||||
|
||||
@param -from \<coordinateSystem\> \n
|
||||
\param -from \<coordinateSystem\> \n
|
||||
Specify a coordinate system when reading files.
|
||||
|
||||
@param -to \<coordinateSystem\> \n
|
||||
\param -to \<coordinateSystem\> \n
|
||||
Specify a coordinate system when writing files.
|
||||
|
||||
Note
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
# \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
#-------------------------------------------------------------------------------
|
||||
# License
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
# \\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
# \\/ M anipulation |
|
||||
# -----------------------------------------------------------------------------
|
||||
# License
|
||||
@ -57,7 +57,7 @@ BEGIN {
|
||||
# start comment block
|
||||
if (state == 1)
|
||||
{
|
||||
printf "/*!\n"
|
||||
printf "/*! "
|
||||
state = 2
|
||||
}
|
||||
|
||||
@ -79,7 +79,7 @@ BEGIN {
|
||||
# end comment block
|
||||
if (state == 2)
|
||||
{
|
||||
printf "*/\n"
|
||||
printf "*/ "
|
||||
}
|
||||
state = 0
|
||||
print
|
||||
|
||||
@ -11,34 +11,20 @@
|
||||
/^License/,/\*\//{
|
||||
/^License/,\%http://www.gnu.org/licenses%{
|
||||
s?^License.*?\*\/\
|
||||
\/\*! @file %filePath%\
|
||||
\/\*! \\file %filePath%\
|
||||
<b>Original source file</b> <a href="%filePath%">%fileName%</a>\
|
||||
\
|
||||
\
|
||||
\
|
||||
\
|
||||
\
|
||||
\
|
||||
\
|
||||
\
|
||||
?
|
||||
/^ /d
|
||||
}
|
||||
|
||||
# old FSF address
|
||||
/^License/,/MA 0211.-130. USA/{
|
||||
s?^License.*?\*\/\
|
||||
\/\*! @file %filePath%\
|
||||
<b>Original source file</b> <a href="%filePath%">%fileName%</a>\
|
||||
?
|
||||
/^ /d
|
||||
}
|
||||
|
||||
# remove entry
|
||||
/^Primitive *$/{
|
||||
N
|
||||
N
|
||||
d
|
||||
}
|
||||
|
||||
# remove entry
|
||||
/^Implementation *$/{
|
||||
N
|
||||
N
|
||||
d
|
||||
}
|
||||
|
||||
# remove entry
|
||||
/^Application *$/{
|
||||
@ -47,12 +33,6 @@ N
|
||||
d
|
||||
}
|
||||
|
||||
# remove entry
|
||||
/^Type *$/{
|
||||
N
|
||||
N
|
||||
d
|
||||
}
|
||||
|
||||
# remove entry
|
||||
/^Global *$/{
|
||||
@ -62,96 +42,109 @@ d
|
||||
}
|
||||
|
||||
|
||||
# Primitive
|
||||
# typename
|
||||
# =>
|
||||
# \\relates typename
|
||||
#
|
||||
/^Primitive *$/,/^[^ ]/{
|
||||
s/^Primitive *$//
|
||||
s/^ /\\relates /
|
||||
}
|
||||
|
||||
|
||||
# Class
|
||||
# Foam::className
|
||||
# =>
|
||||
# @class Foam::className
|
||||
# \\class Foam::className
|
||||
#
|
||||
/^Class *$/,/^[^ ]/{
|
||||
/^Class/d
|
||||
s/^ /@class /
|
||||
s/^Class *$//
|
||||
s/^ /\\class /
|
||||
}
|
||||
|
||||
|
||||
# Namespace
|
||||
# namespaceName
|
||||
# =>
|
||||
# @namespace namespaceName
|
||||
# \namespace namespaceName
|
||||
#
|
||||
/^Namespace *$/,/^[^ ]/{
|
||||
/^Namespace/d
|
||||
s/^ /@namespace /
|
||||
s/^Namespace//
|
||||
s/^ /\\namespace /
|
||||
}
|
||||
|
||||
|
||||
# Typedef
|
||||
# Foam::def
|
||||
# =>
|
||||
# @class Foam::def
|
||||
# This is not strictly correct, but makes it easier to find the typedefs
|
||||
# \typedef Foam::def
|
||||
/^Typedef *$/,/^[^ ]/{
|
||||
/^Typedef/d
|
||||
s/^ /@class /
|
||||
s/^Typedef//
|
||||
s/^ /\\typedef /
|
||||
}
|
||||
|
||||
|
||||
# add anchor and use @brief
|
||||
# add anchor and use \brief
|
||||
# the first paragraph will be 'brief' and the others 'detail'
|
||||
/^Description *$/,/^[^ ]/{
|
||||
/^Description/c\
|
||||
<a class="anchor" name="Description"></a>\
|
||||
@brief
|
||||
<a class="anchor" name="Description"></a> \\brief
|
||||
s/^ //
|
||||
}
|
||||
|
||||
/^Usage *$/,/^[^ ]/{
|
||||
/^Usage/c\
|
||||
@par Usage
|
||||
\\par Usage
|
||||
s/^ //
|
||||
}
|
||||
|
||||
|
||||
/^See *Also *$/,/^[^ ]/{
|
||||
/^See *Also/c\
|
||||
@see
|
||||
s/^ //
|
||||
}
|
||||
|
||||
/^Author *$/,/^[^ ]/{
|
||||
/^Author/c\
|
||||
@author
|
||||
\\see
|
||||
s/^ //
|
||||
}
|
||||
|
||||
/^Note *$/,/^[^ ]/{
|
||||
/^Note/c\
|
||||
@note
|
||||
\\note
|
||||
s/^ //
|
||||
}
|
||||
|
||||
|
||||
# remove ToDo paragraph to avoid them showing on related pages
|
||||
/^To[Dd]o *$/,/^ *$/d
|
||||
/^To[Dd]o *$/,/^[^ ]/{
|
||||
s/^To[Dd]o *$//
|
||||
s/^ .*//
|
||||
}
|
||||
|
||||
|
||||
/^Warning *$/,/^[^ ]/{
|
||||
/^Warning/c\
|
||||
@warning
|
||||
\\warning
|
||||
s/^ //
|
||||
}
|
||||
|
||||
|
||||
/^Deprecated *$/,/^[^ ]/{
|
||||
/^Deprecated/c\
|
||||
@deprecated
|
||||
\\deprecated
|
||||
s/^ //
|
||||
}
|
||||
|
||||
/SourceFiles/,/^[ ]*$/{
|
||||
s?SourceFiles?@par Source files\
|
||||
<ul>\
|
||||
<li><a href="%filePath%">%fileName%</a></li>?
|
||||
s?^[ ]*$?</ul>\
|
||||
?
|
||||
|
||||
/^SourceFiles *$/,/^$/{
|
||||
s?SourceFiles?\\par Source files\
|
||||
<ul><li><a href="%filePath%">%fileName%</a></li>?
|
||||
s? *\([a-zA-Z0-9]*\.[a-zA-Z]*\)? <li><a href="%dirName%/\1">\1</a></li>?
|
||||
s?^$?</ul>?
|
||||
}
|
||||
|
||||
/fileName%<\/a><\/li>$/{
|
||||
N
|
||||
s?\n$?</ul>?g
|
||||
s/<\/li>\n/<\/li> /
|
||||
s? *\([a-zA-Z0-9]*\.[a-zA-Z]*\)? <li><a href="%dirName%/\1">\1</a></li>?
|
||||
}
|
||||
|
||||
|
||||
@ -1104,7 +1104,7 @@ TAGFILES =
|
||||
# When a file name is specified after GENERATE_TAGFILE, doxygen will create
|
||||
# a tag file that is based on the input files it reads.
|
||||
|
||||
GENERATE_TAGFILE =
|
||||
GENERATE_TAGFILE = DTAGS
|
||||
|
||||
# If the ALLEXTERNALS tag is set to YES all external classes will be listed
|
||||
# in the class index. If set to NO only the inherited external classes
|
||||
@ -1254,7 +1254,7 @@ DOTFILE_DIRS =
|
||||
# MAX_DOT_GRAPH_NOTES then the graph will not be shown at all. Also note
|
||||
# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
|
||||
|
||||
DOT_GRAPH_MAX_NODES = 50
|
||||
DOT_GRAPH_MAX_NODES = 10
|
||||
|
||||
# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
|
||||
# graphs generated by dot. A depth value of 3 means that only nodes reachable
|
||||
@ -1264,7 +1264,7 @@ DOT_GRAPH_MAX_NODES = 50
|
||||
# code bases. Also note that the size of a graph can be further restricted by
|
||||
# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
|
||||
|
||||
MAX_DOT_GRAPH_DEPTH = 3
|
||||
MAX_DOT_GRAPH_DEPTH = 1
|
||||
|
||||
# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
|
||||
# background. This is disabled by default, which results in a white background.
|
||||
|
||||
@ -2,12 +2,13 @@
|
||||
#
|
||||
#+TITLE: OpenFOAM C++ style guide
|
||||
#+AUTHOR: OpenCFD Ltd.
|
||||
#+DATE: June 2010
|
||||
#+DATE: Feb 2011
|
||||
#+LINK: http://www.opencfd.co.uk
|
||||
#+OPTIONS: author:nil ^:{}
|
||||
#+STARTUP: hidestars
|
||||
#+STARTUP: odd
|
||||
|
||||
* OpenFOAM C++ style guide
|
||||
|
||||
*** General
|
||||
+ 80 character lines max
|
||||
+ The normal indentation is 4 spaces per logical level.
|
||||
@ -23,103 +24,144 @@
|
||||
+ stream output
|
||||
+ =<<= is always four characters after the start of the stream,
|
||||
so that the =<<= symbols align, i.e.
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC c++
|
||||
Info<< ...
|
||||
os << ...
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
so
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
WarningIn("className::functionName()")
|
||||
<< "Warning message"
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOT
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*not*
|
||||
#+BEGIN_SRC C++
|
||||
WarningIn("className::functionName()")
|
||||
<< "Warning message"
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
|
||||
+ no unnecessary class section headers, i.e. remove
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
#+BEGIN_SRC C++
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
|
||||
// Check
|
||||
|
||||
// Edit
|
||||
|
||||
// Write
|
||||
#+END_EXAMPLE
|
||||
|
||||
|
||||
#+END_SRC
|
||||
if they contain nothing, even if planned for 'future use'
|
||||
|
||||
+ class titles are centred
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
/*---------------------------------------------------------------------------*\
|
||||
#+BEGIN_SRC C++
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class exampleClass Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
#+END_EXAMPLE
|
||||
\*---------------------------------------------------------------------------*/
|
||||
#+END_SRC
|
||||
|
||||
NOT
|
||||
*not*
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
/*---------------------------------------------------------------------------*\
|
||||
#+BEGIN_SRC C++
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class exampleClass Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
#+END_EXAMPLE
|
||||
\*---------------------------------------------------------------------------*/
|
||||
#+END_SRC
|
||||
|
||||
*** The /.H/ Files
|
||||
+ header file spacing
|
||||
+ Leave two empty lines between sections
|
||||
(as per functions in the /.C/ file etc)
|
||||
|
||||
+ use =//- Comment= comments in header file
|
||||
+ add descriptions to class data and functions
|
||||
+ use =//- Comment= comments in header file to add descriptions to class
|
||||
data and functions do be included in the Doxygen documentation:
|
||||
+ text on the line starting with =//-= becomes the Doxygen brief
|
||||
description;
|
||||
+ text on subsequent lines becomes the Doxygen detailed description /e.g./
|
||||
#+BEGIN_SRC C++
|
||||
//- A function which returns a thing
|
||||
// This is a detailed description of the function
|
||||
// which processes stuff and returns other stuff
|
||||
// depending on things.
|
||||
thing function(stuff1, stuff2);
|
||||
#+END_SRC
|
||||
+ list entries start with =-= or =-#= for numbered lists but cannot start
|
||||
on the line immediately below the brief description so
|
||||
#+BEGIN_SRC C++
|
||||
//- Compare triFaces
|
||||
// Returns:
|
||||
// - 0: different
|
||||
// - +1: identical
|
||||
// - -1: same face, but different orientation
|
||||
static inline int compare(const triFace&, const triFace&);
|
||||
#+END_SRC
|
||||
or
|
||||
#+BEGIN_SRC C++
|
||||
//- Compare triFaces returning 0, +1 or -1
|
||||
//
|
||||
// - 0: different
|
||||
// - +1: identical
|
||||
// - -1: same face, but different orientation
|
||||
static inline int compare(const triFace&, const triFace&);
|
||||
#+END_SRC
|
||||
*not*
|
||||
#+BEGIN_SRC C++
|
||||
//- Compare triFaces returning 0, +1 or -1
|
||||
// - 0: different
|
||||
// - +1: identical
|
||||
// - -1: same face, but different orientation
|
||||
static inline int compare(const triFace&, const triFace&);
|
||||
#+END_SRC
|
||||
+ list can be nested for example
|
||||
#+BEGIN_SRC C++
|
||||
//- Search for \em name
|
||||
// in the following hierarchy:
|
||||
// -# personal settings:
|
||||
// - ~/.OpenFOAM/\<VERSION\>/
|
||||
// <em>for version-specific files</em>
|
||||
// - ~/.OpenFOAM/
|
||||
// <em>for version-independent files</em>
|
||||
// -# site-wide settings:
|
||||
// - $WM_PROJECT_INST_DIR/site/\<VERSION\>
|
||||
// <em>for version-specific files</em>
|
||||
// - $WM_PROJECT_INST_DIR/site/
|
||||
// <em>for version-independent files</em>
|
||||
// -# shipped settings:
|
||||
// - $WM_PROJECT_DIR/etc/
|
||||
//
|
||||
// \return the full path name or fileName() if the name cannot be found
|
||||
// Optionally abort if the file cannot be found
|
||||
fileName findEtcFile(const fileName&, bool mandatory=false);
|
||||
#+END_SRC
|
||||
+ for more details see the Doxygen documentation.
|
||||
+ destructor
|
||||
+ If adding a comment to the destructor -
|
||||
use =//-= and code as a normal function:
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
//- Destructor
|
||||
~className();
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
+ inline functions
|
||||
+ Use inline functions where appropriate in a separate /classNameI.H/ file.
|
||||
Avoid cluttering the header file with function bodies.
|
||||
+ Use inline functions where appropriate in a separate /classNameI.H/
|
||||
file. Avoid cluttering the header file with function bodies.
|
||||
|
||||
*** The /.C/ Files
|
||||
+ Do not open/close namespaces in a /.C/ file
|
||||
+ Fully scope the function name, i.e.
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
Foam::returnType Foam::className::functionName()
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOT
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*not*
|
||||
#+BEGIN_SRC C++
|
||||
namespace Foam
|
||||
{
|
||||
...
|
||||
returnType className::functionName()
|
||||
...
|
||||
}
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
EXCEPTION
|
||||
|
||||
When there are multiple levels of namespace, they may be used in the /.C/
|
||||
file, i.e.
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
When there are multiple levels of namespace, they may be used in the
|
||||
/.C/ file, i.e.
|
||||
#+BEGIN_SRC C++
|
||||
namespace Foam
|
||||
{
|
||||
namespace compressible
|
||||
@ -130,42 +172,35 @@
|
||||
} // End namespace RASModels
|
||||
} // End namespace compressible
|
||||
} // End namespace Foam
|
||||
#+END_EXAMPLE
|
||||
#+END_SRC
|
||||
|
||||
+ Use two empty lines between functions
|
||||
|
||||
*** Coding Practice
|
||||
+ passing data as arguments or return values.
|
||||
+ Pass bool, label and scalar as copy, anything larger by reference.
|
||||
|
||||
+ const
|
||||
+ Use everywhere it is applicable.
|
||||
|
||||
+ variable initialisation using
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
const className& variableName = otherClass.data();
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOT
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*not*
|
||||
#+BEGIN_SRC C++
|
||||
const className& variableName(otherClass.data());
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
+ virtual functions
|
||||
+ If a class is virtual, make all derived classes virtual.
|
||||
|
||||
*** Conditional Statements
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
if (condition)
|
||||
{
|
||||
code;
|
||||
}
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
OR
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
if
|
||||
(
|
||||
long condition
|
||||
@ -173,29 +208,24 @@
|
||||
{
|
||||
code;
|
||||
}
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOT (no space between =if= and =(= used)
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*not* (no space between =if= and =(= used)
|
||||
#+BEGIN_SRC C++
|
||||
if(condition)
|
||||
{
|
||||
code;
|
||||
}
|
||||
#+END_EXAMPLE
|
||||
#+END_SRC
|
||||
|
||||
*** =for= and =while= Loops
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
for (i = 0; i < maxI; i++)
|
||||
{
|
||||
code;
|
||||
}
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
OR
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
for
|
||||
(
|
||||
i = 0;
|
||||
@ -205,33 +235,26 @@
|
||||
{
|
||||
code;
|
||||
}
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOT this (no space between =for= and =(= used)
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*not* this (no space between =for= and =(= used)
|
||||
#+BEGIN_SRC C++
|
||||
for(i = 0; i < maxI; i++)
|
||||
{
|
||||
code;
|
||||
}
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
Note that when indexing through iterators, it is often slightly more
|
||||
efficient to use the pre-increment form. Eg, =++iter= instead of =iter++=
|
||||
|
||||
*** =forAll=, =forAllIter=, =forAllConstIter=, etc. loops
|
||||
like =for= loops, but
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
forAll(
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOT
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*not*
|
||||
#+BEGIN_SRC C++
|
||||
forAll (
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
Using the =forAllIter= and =forAllConstIter= macros is generally
|
||||
advantageous - less typing, easier to find later. However, since
|
||||
they are macros, they will fail if the iterated object contains
|
||||
@ -239,150 +262,120 @@
|
||||
|
||||
The following will FAIL!:
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
forAllIter(HashTable<labelPair, edge, Hash<edge> >, foo, iter)
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
These convenience macros are also generally avoided in other
|
||||
container classes and OpenFOAM primitive classes.
|
||||
|
||||
*** Splitting Over Multiple Lines
|
||||
|
||||
**** Splitting return type and function name
|
||||
***** Splitting return type and function name
|
||||
+ split initially after the function return type and left align
|
||||
|
||||
+ do not put =const= onto its own line - use a split to keep it with
|
||||
the function name and arguments.
|
||||
|
||||
so
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
const Foam::longReturnTypeName&
|
||||
Foam::longClassName::longFunctionName const
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOT
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*not*
|
||||
#+BEGIN_SRC C++
|
||||
const Foam::longReturnTypeName&
|
||||
Foam::longClassName::longFunctionName const
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOR
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*nor*
|
||||
#+BEGIN_SRC C++
|
||||
const Foam::longReturnTypeName& Foam::longClassName::longFunctionName
|
||||
const
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOR
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*nor*
|
||||
#+BEGIN_SRC C++
|
||||
const Foam::longReturnTypeName& Foam::longClassName::
|
||||
longFunctionName const
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
+ if it needs to be split again, split at the function name (leaving
|
||||
behind the preceding scoping =::=s), and again, left align, i.e.
|
||||
|
||||
For example,
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
const Foam::longReturnTypeName&
|
||||
Foam::veryveryveryverylongClassName::
|
||||
veryveryveryverylongFunctionName const
|
||||
#+END_EXAMPLE
|
||||
|
||||
**** Splitting long lines at an "="
|
||||
#+END_SRC
|
||||
|
||||
***** Splitting long lines at an "="
|
||||
Indent after split
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
variableName =
|
||||
longClassName.longFunctionName(longArgument);
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
OR (where necessary)
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
variableName =
|
||||
longClassName.longFunctionName
|
||||
(
|
||||
longArgument1,
|
||||
longArgument2
|
||||
);
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOT
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*not*
|
||||
#+BEGIN_SRC C++
|
||||
variableName =
|
||||
longClassName.longFunctionName(longArgument);
|
||||
#+END_EXAMPLE
|
||||
|
||||
NOR
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+END_SRC
|
||||
*nor*
|
||||
#+BEGIN_SRC C++
|
||||
variableName = longClassName.longFunctionName
|
||||
(
|
||||
longArgument1,
|
||||
longArgument2
|
||||
);
|
||||
#+END_EXAMPLE
|
||||
#+END_SRC
|
||||
|
||||
*** Maths and Logic
|
||||
+ operator spacing
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
a + b, a - b
|
||||
a*b, a/b
|
||||
a & b, a ^ b
|
||||
a = b, a != b
|
||||
a < b, a > b, a >= b, a <= b
|
||||
a || b, a && b
|
||||
#+END_EXAMPLE
|
||||
#+END_SRC
|
||||
|
||||
+ splitting formulae over several lines
|
||||
|
||||
Split and indent as per "splitting long lines at an ="
|
||||
with the operator on the lower line. Align operator so that first
|
||||
variable, function or bracket on the next line is 4 spaces indented i.e.
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
variableName =
|
||||
a * (a + b)
|
||||
- exp(c/d)
|
||||
* (k + t);
|
||||
#+END_EXAMPLE
|
||||
|
||||
a*(a + b)
|
||||
*exp(c/d)
|
||||
*(k + t);
|
||||
#+END_SRC
|
||||
This is sometimes more legible when surrounded by extra parentheses:
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
variableName =
|
||||
(
|
||||
a * (a + b)
|
||||
- exp(c/d)
|
||||
* (k + t)
|
||||
a*(a + b)
|
||||
*exp(c/d)
|
||||
*(k + t)
|
||||
);
|
||||
#+END_EXAMPLE
|
||||
#+END_SRC
|
||||
|
||||
+ splitting logical tests over several lines
|
||||
|
||||
outdent the operator so that the next variable to test is aligned with
|
||||
the four space indentation, i.e.
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
if
|
||||
(
|
||||
a == true
|
||||
&& b == c
|
||||
)
|
||||
#+END_EXAMPLE
|
||||
#+END_SRC
|
||||
|
||||
** Documentation
|
||||
|
||||
*** General
|
||||
|
||||
+ For readability in the comment blocks, certain tags are used that are
|
||||
translated by pre-filtering the file before sending it to Doxygen.
|
||||
|
||||
@ -397,8 +390,7 @@
|
||||
description.
|
||||
|
||||
For example,
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
Class
|
||||
Foam::myClass
|
||||
|
||||
@ -407,7 +399,7 @@
|
||||
|
||||
The class is implemented as a set of recommendations that may
|
||||
sometimes be useful.
|
||||
#+END_EXAMPLE
|
||||
#+END_SRC
|
||||
|
||||
+ The class name must be qualified by its namespace, otherwise Doxygen
|
||||
will think you are documenting some other class.
|
||||
@ -415,49 +407,33 @@
|
||||
+ If you don't have anything to say about the class (at the moment), use
|
||||
the namespace-qualified class name for the description. This aids with
|
||||
finding these under-documented classes later.
|
||||
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
Class
|
||||
Foam::myUnderDocumentedClass
|
||||
|
||||
Description
|
||||
Foam::myUnderDocumentedClass
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
|
||||
+ Use 'Class' and 'Namespace' tags in the header files.
|
||||
The Description block then applies to documenting the class.
|
||||
|
||||
+ Use 'InClass' and 'InNamespace' in the source files.
|
||||
The Description block then applies to documenting the file itself.
|
||||
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
InClass
|
||||
Foam::myClass
|
||||
|
||||
Description
|
||||
Implements the read and writing of files.
|
||||
#+END_EXAMPLE
|
||||
#+END_SRC
|
||||
|
||||
*** Doxygen Special Commands
|
||||
Doxygen has a large number of special commands with a =\= prefix.
|
||||
|
||||
Doxygen has a large number of special commands with a =\= prefix or
|
||||
(alternatively) an =@= prefix.
|
||||
|
||||
The =@= prefix form is recommended for most Doxygen specials, since it
|
||||
has the advantage of standing out. It also happens to be what projects
|
||||
like gcc and VTK are using.
|
||||
|
||||
The =\= prefix form, however, looks a bit better for the =\n= newline
|
||||
command and when escaping single characters - eg, =\@=, =\<=, =\>=, etc.
|
||||
|
||||
Since the filtering removes the leading 4 spaces within the blocks, the
|
||||
Since the filtering removes the leading spaces within the blocks, the
|
||||
Doxygen commmands can be inserted within the block without problems.
|
||||
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
InClass
|
||||
Foam::myClass
|
||||
|
||||
@ -465,68 +441,57 @@
|
||||
Implements the read and writing of files.
|
||||
|
||||
An example input file:
|
||||
@verbatim
|
||||
\verbatim
|
||||
patchName
|
||||
{
|
||||
type myPatchType;
|
||||
refValue 100;
|
||||
value uniform 1;
|
||||
}
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
Within the implementation, a loop over all patches is done:
|
||||
@code
|
||||
\code
|
||||
forAll(patches, patchI)
|
||||
{
|
||||
... // some operation
|
||||
}
|
||||
@endcode
|
||||
#+END_EXAMPLE
|
||||
\endcode
|
||||
#+END_SRC
|
||||
|
||||
*** HTML Special Commands
|
||||
|
||||
Since Doxygen also handles HTML tags to a certain extent, the angle
|
||||
brackets need quoting in the documentation blocks. Non-HTML tags cause
|
||||
Doxygen to complain, but seem to work anyhow.
|
||||
|
||||
eg,
|
||||
+ The template with type =<HR>= is a bad example.
|
||||
|
||||
+ The template with type =\<HR\>= is a better example.
|
||||
|
||||
+ The template with type =<Type>= causes Doxygen to complain about an
|
||||
unknown html type, but it seems to work okay anyhow.
|
||||
|
||||
|
||||
*** Documenting Namespaces
|
||||
|
||||
+ If namespaces are explictly declared with the =Namespace()= macro,
|
||||
they should be documented there.
|
||||
|
||||
+ If the namespaces is used to hold sub-models, the namespace can be
|
||||
documented in the same file as the class with the model selector.
|
||||
eg,
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
documented namespace 'Foam::functionEntries' within the
|
||||
class 'Foam::functionEntry'
|
||||
#+END_EXAMPLE
|
||||
#+END_SRC
|
||||
|
||||
+ If nothing else helps, find some sensible header.
|
||||
eg,
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
#+BEGIN_SRC C++
|
||||
namespace 'Foam' is documented in the foamVersion.H file
|
||||
#+END_EXAMPLE
|
||||
|
||||
#+END_SRC
|
||||
|
||||
*** Documenting typedefs and classes defined via macros
|
||||
|
||||
... not yet properly resolved
|
||||
|
||||
|
||||
*** Documenting Applications
|
||||
|
||||
Any number of classes might be defined by a particular application, but
|
||||
these classes will not, however, be available to other parts of
|
||||
OpenFOAM. At the moment, the sole purpuse for running Doxygen on the
|
||||
@ -542,23 +507,17 @@
|
||||
The layout of the application documentation has not yet been finalized,
|
||||
but foamToVTK shows an initial attempt.
|
||||
|
||||
*** Orthography (an opinion)
|
||||
|
||||
Given the origins of OpenFOAM, the British spellings (eg, neighbour and
|
||||
not neighbor) are generally favoured. For code sections that interact
|
||||
with external libraries, it can be useful to adopt American spellings,
|
||||
especially for names that constitute a significant part of the external
|
||||
library - eg, 'color' within graphics sub-systems.
|
||||
*** Orthography
|
||||
Given the origins of OpenFOAM, the British spellings (eg, neighbour and not
|
||||
neighbor) are generally favoured.
|
||||
|
||||
Both '-ize' and the '-ise' variant are found in the code comments. If
|
||||
used as a variable or class method name, it is probably better to use
|
||||
'-ize', which is considered the main form by the Oxford University
|
||||
Press.
|
||||
|
||||
Eg,
|
||||
#+BEGIN_EXAMPLE
|
||||
Press. Eg,
|
||||
#+BEGIN_SRC C++
|
||||
myClass.initialize()
|
||||
#+END_EXAMPLE
|
||||
#+END_SRC
|
||||
|
||||
The word "its" (possesive) vs. "it's" (colloquial for "it is" or "it has")
|
||||
seems to confuse non-native (and some native) English speakers.
|
||||
|
||||
Binary file not shown.
@ -207,14 +207,16 @@ OPTIMIZE_FOR_FORTRAN = NO
|
||||
|
||||
OPTIMIZE_OUTPUT_VHDL = NO
|
||||
|
||||
# Doxygen selects the parser to use depending on the extension of the files it parses.
|
||||
# With this tag you can assign which parser to use for a given extension.
|
||||
# Doxygen has a built-in mapping, but you can override or extend it using this tag.
|
||||
# The format is ext=language, where ext is a file extension, and language is one of
|
||||
# the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP,
|
||||
# Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat
|
||||
# .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran),
|
||||
# use: inc=Fortran f=C. Note that for custom extensions you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
|
||||
# Doxygen selects the parser to use depending on the extension of the files it
|
||||
# parses. With this tag you can assign which parser to use for a given
|
||||
# extension. Doxygen has a built-in mapping, but you can override or extend it
|
||||
# using this tag. The format is ext=language, where ext is a file extension,
|
||||
# and language is one of the parsers supported by doxygen: IDL, Java,
|
||||
# Javascript, C#, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL, C,
|
||||
# C++. For instance to make doxygen treat .inc files as Fortran files (default
|
||||
# is PHP), and .f files as C (default is Fortran), use: inc=Fortran f=C. Note
|
||||
# that for custom extensions you also need to set FILE_PATTERNS otherwise the
|
||||
# files are not read by doxygen.
|
||||
|
||||
EXTENSION_MAPPING =
|
||||
|
||||
@ -238,10 +240,10 @@ CPP_CLI_SUPPORT = NO
|
||||
|
||||
SIP_SUPPORT = NO
|
||||
|
||||
# For Microsoft's IDL there are propget and propput attributes to indicate getter
|
||||
# and setter methods for a property. Setting this option to YES (the default)
|
||||
# will make doxygen to replace the get and set methods by a property in the
|
||||
# documentation. This will only work if the methods are indeed getting or
|
||||
# For Microsoft's IDL there are propget and propput attributes to indicate
|
||||
# getter and setter methods for a property. Setting this option to YES (the
|
||||
# default) will make doxygen to replace the get and set methods by a property in
|
||||
# the documentation. This will only work if the methods are indeed getting or
|
||||
# setting a simple type. If this is not the case, or you want to show the
|
||||
# methods anyway, you should set this option to NO.
|
||||
|
||||
@ -411,7 +413,12 @@ SORT_MEMBER_DOCS = NO
|
||||
|
||||
SORT_BRIEF_DOCS = NO
|
||||
|
||||
# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the (brief and detailed) documentation of class members so that constructors and destructors are listed first. If set to NO (the default) the constructors will appear in the respective orders defined by SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.
|
||||
# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
|
||||
# (brief and detailed) documentation of class members so that constructors and
|
||||
# destructors are listed first. If set to NO (the default) the constructors will
|
||||
# appear in the respective orders defined by SORT_MEMBER_DOCS and
|
||||
# SORT_BRIEF_DOCS. This tag will be ignored for brief docs if SORT_BRIEF_DOCS is
|
||||
# set to NO and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.
|
||||
|
||||
SORT_MEMBERS_CTORS_1ST = NO
|
||||
|
||||
@ -505,12 +512,12 @@ SHOW_NAMESPACES = YES
|
||||
|
||||
FILE_VERSION_FILTER =
|
||||
|
||||
# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
|
||||
# doxygen. The layout file controls the global structure of the generated output files
|
||||
# in an output format independent way. The create the layout file that represents
|
||||
# doxygen's defaults, run doxygen with the -l option. You can optionally specify a
|
||||
# file name after the option, if omitted DoxygenLayout.xml will be used as the name
|
||||
# of the layout file.
|
||||
# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
|
||||
# by doxygen. The layout file controls the global structure of the generated
|
||||
# output files in an output format independent way. The create the layout file
|
||||
# that represents doxygen's defaults, run doxygen with the -l option. You can
|
||||
# optionally specify a file name after the option, if omitted DoxygenLayout.xml
|
||||
# will be used as the name of the layout file.
|
||||
|
||||
LAYOUT_FILE =
|
||||
|
||||
@ -574,14 +581,16 @@ WARN_LOGFILE =
|
||||
# directories like "/usr/src/myproject". Separate the files or directories
|
||||
# with spaces.
|
||||
|
||||
#INPUT = $(WM_PROJECT_DIR)/src \
|
||||
# $(WM_PROJECT_DIR)/applications/utilities \
|
||||
# $(WM_PROJECT_DIR)/applications/solvers
|
||||
INPUT = $(WM_PROJECT_DIR)/src \
|
||||
$(WM_PROJECT_DIR)/applications/utilities \
|
||||
$(WM_PROJECT_DIR)/applications/solvers
|
||||
|
||||
# limit input for testing purposes
|
||||
INPUT = $(WM_PROJECT_DIR)/src/OpenFOAM/global \
|
||||
$(WM_PROJECT_DIR)/src/OpenFOAM/containers \
|
||||
$(WM_PROJECT_DIR)/src/OpenFOAM/primitives
|
||||
# INPUT = $(WM_PROJECT_DIR)/src/OpenFOAM/global \
|
||||
# $(WM_PROJECT_DIR)/src/OpenFOAM/containers \
|
||||
# $(WM_PROJECT_DIR)/src/OpenFOAM/primitives \
|
||||
# $(WM_PROJECT_DIR)/sampling \
|
||||
# $(WM_PROJECT_DIR)/src/finiteVolume/fvMesh
|
||||
|
||||
# This tag can be used to specify the character encoding of the source files
|
||||
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
|
||||
@ -836,15 +845,15 @@ HTML_ALIGN_MEMBERS = YES
|
||||
|
||||
HTML_DYNAMIC_SECTIONS = NO
|
||||
|
||||
# If the GENERATE_DOCSET tag is set to YES, additional index files
|
||||
# will be generated that can be used as input for Apple's Xcode 3
|
||||
# integrated development environment, introduced with OSX 10.5 (Leopard).
|
||||
# To create a documentation set, doxygen will generate a Makefile in the
|
||||
# HTML output directory. Running make will produce the docset in that
|
||||
# directory and running "make install" will install the docset in
|
||||
# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
|
||||
# it at startup.
|
||||
# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information.
|
||||
# If the GENERATE_DOCSET tag is set to YES, additional index files will be
|
||||
# generated that can be used as input for Apple's Xcode 3 integrated development
|
||||
# environment, introduced with OSX 10.5 (Leopard). To create a documentation
|
||||
# set, doxygen will generate a Makefile in the HTML output directory. Running
|
||||
# make will produce the docset in that directory and running "make install" will
|
||||
# install the docset in ~/Library/Developer/Shared/Documentation/DocSets so that
|
||||
# Xcode will find it at startup. See
|
||||
# http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more
|
||||
# information.
|
||||
|
||||
GENERATE_DOCSET = NO
|
||||
|
||||
@ -906,10 +915,10 @@ BINARY_TOC = NO
|
||||
|
||||
TOC_EXPAND = NO
|
||||
|
||||
# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER
|
||||
# are set, an additional index file will be generated that can be used as input for
|
||||
# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated
|
||||
# HTML documentation.
|
||||
# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
|
||||
# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
|
||||
# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
|
||||
# (.qch) of the generated HTML documentation.
|
||||
|
||||
GENERATE_QHP = NO
|
||||
|
||||
@ -931,20 +940,23 @@ QHP_NAMESPACE = org.doxygen.Project
|
||||
|
||||
QHP_VIRTUAL_FOLDER = doc
|
||||
|
||||
# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add.
|
||||
# For more information please see
|
||||
# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to
|
||||
# add. For more information please see
|
||||
# http://doc.trolltech.com/qthelpproject.html#custom-filters
|
||||
|
||||
QHP_CUST_FILTER_NAME =
|
||||
|
||||
# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom filter to add.For more information please see
|
||||
# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>.
|
||||
# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom
|
||||
# filter to add.For more information please see <a
|
||||
# href="http://doc.trolltech.com/qthelpproject.html#custom-filters">Qt Help
|
||||
# Project / Custom Filters</a>.
|
||||
|
||||
QHP_CUST_FILTER_ATTRS =
|
||||
|
||||
# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's
|
||||
# filter section matches.
|
||||
# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">Qt Help Project / Filter Attributes</a>.
|
||||
# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
|
||||
# project's filter section matches. <a
|
||||
# href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">Qt Help
|
||||
# Project / Filter Attributes</a>.
|
||||
|
||||
QHP_SECT_FILTER_ATTRS =
|
||||
|
||||
@ -955,13 +967,14 @@ QHP_SECT_FILTER_ATTRS =
|
||||
|
||||
QHG_LOCATION =
|
||||
|
||||
# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files
|
||||
# will be generated, which together with the HTML files, form an Eclipse help
|
||||
# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
|
||||
# generated, which together with the HTML files, form an Eclipse help
|
||||
# plugin. To install this plugin and make it available under the help contents
|
||||
# menu in Eclipse, the contents of the directory containing the HTML and XML
|
||||
# files needs to be copied into the plugins directory of eclipse. The name of
|
||||
# the directory within the plugins directory should be the same as
|
||||
# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before the help appears.
|
||||
# the directory within the plugins directory should be the same as the
|
||||
# ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before the
|
||||
# help appears.
|
||||
|
||||
GENERATE_ECLIPSEHELP = NO
|
||||
|
||||
@ -1011,16 +1024,23 @@ TREEVIEW_WIDTH = 250
|
||||
|
||||
FORMULA_FONTSIZE = 10
|
||||
|
||||
# When the SEARCHENGINE tag is enabled doxygen will generate a search box for the HTML output. The underlying search engine uses javascript
|
||||
# and DHTML and should work on any modern browser. Note that when using HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) there is already a search function so this one should
|
||||
# typically be disabled. For large projects the javascript based search engine
|
||||
# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
|
||||
# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
|
||||
# the HTML output. The underlying search engine uses javascript and DHTML and
|
||||
# should work on any modern browser. Note that when using HTML help
|
||||
# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
|
||||
# there is already a search function so this one should typically be
|
||||
# disabled. For large projects the javascript based search engine can be slow,
|
||||
# then enabling SERVER_BASED_SEARCH may provide a better solution.
|
||||
|
||||
SEARCHENGINE = YES
|
||||
|
||||
# When the SERVER_BASED_SEARCH tag is enabled the search engine will be implemented using a PHP enabled web server instead of at the web client using Javascript. Doxygen will generate the search PHP script and index
|
||||
# file to put on the web server. The advantage of the server based approach is that it scales better to large projects and allows full text search. The disadvances is that it is more difficult to setup
|
||||
# and does not have live searching capabilities.
|
||||
# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
|
||||
# implemented using a PHP enabled web server instead of at the web client using
|
||||
# Javascript. Doxygen will generate the search PHP script and index file to put
|
||||
# on the web server. The advantage of the server based approach is that it
|
||||
# scales better to large projects and allows full text search. The disadvances
|
||||
# is that it is more difficult to setup and does not have live searching
|
||||
# capabilities.
|
||||
|
||||
SERVER_BASED_SEARCH = NO
|
||||
# old default
|
||||
@ -1105,7 +1125,9 @@ LATEX_BATCHMODE = NO
|
||||
|
||||
LATEX_HIDE_INDICES = NO
|
||||
|
||||
# If LATEX_SOURCE_CODE is set to YES then doxygen will include source code with syntax highlighting in the LaTeX output. Note that which sources are shown also depends on other settings such as SOURCE_BROWSER.
|
||||
# If LATEX_SOURCE_CODE is set to YES then doxygen will include source code with
|
||||
# syntax highlighting in the LaTeX output. Note that which sources are shown
|
||||
# also depends on other settings such as SOURCE_BROWSER.
|
||||
|
||||
LATEX_SOURCE_CODE = NO
|
||||
|
||||
@ -1353,7 +1375,7 @@ TAGFILES =
|
||||
# When a file name is specified after GENERATE_TAGFILE, doxygen will create
|
||||
# a tag file that is based on the input files it reads.
|
||||
|
||||
GENERATE_TAGFILE =
|
||||
GENERATE_TAGFILE = DTAGS
|
||||
|
||||
# If the ALLEXTERNALS tag is set to YES all external classes will be listed
|
||||
# in the class index. If set to NO only the inherited external classes
|
||||
@ -1408,8 +1430,8 @@ HIDE_UNDOC_RELATIONS = YES
|
||||
HAVE_DOT = YES
|
||||
|
||||
# By default doxygen will write a font called FreeSans.ttf to the output
|
||||
# directory and reference it in all dot files that doxygen generates. This
|
||||
# font does not include all possible unicode characters however, so when you need
|
||||
# directory and reference it in all dot files that doxygen generates. This font
|
||||
# does not include all possible unicode characters however, so when you need
|
||||
# these (or just want a differently looking font) you can specify the font name
|
||||
# using DOT_FONTNAME. You need need to make sure dot is able to find the font,
|
||||
# which can be done by putting it in a standard location or by setting the
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -109,7 +109,6 @@ namespace Foam
|
||||
|
||||
|
||||
|
||||
//! @cond internalClass
|
||||
//- Internal tracking via stat(3p) or inotify(7)
|
||||
class fileMonitorWatcher
|
||||
{
|
||||
@ -140,7 +139,7 @@ namespace Foam
|
||||
{
|
||||
if (useInotify_)
|
||||
{
|
||||
#ifdef FOAM_USE_INOTIFY
|
||||
#ifdef FOAM_USE_INOTIFY
|
||||
inotifyFd_ = inotify_init();
|
||||
dirWatches_.setCapacity(sz);
|
||||
dirFiles_.setCapacity(sz);
|
||||
@ -167,13 +166,13 @@ namespace Foam
|
||||
<< endl;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#else
|
||||
FatalErrorIn("fileMonitorWatcher(const bool, const label)")
|
||||
<< "You selected inotify but this file was compiled"
|
||||
<< " without FOAM_USE_INOTIFY"
|
||||
<< "Please select another fileModification test method"
|
||||
<< exit(FatalError);
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -184,7 +183,7 @@ namespace Foam
|
||||
//- remove all watches
|
||||
inline ~fileMonitorWatcher()
|
||||
{
|
||||
#ifdef FOAM_USE_INOTIFY
|
||||
#ifdef FOAM_USE_INOTIFY
|
||||
if (useInotify_ && inotifyFd_ >= 0)
|
||||
{
|
||||
forAll(dirWatches_, i)
|
||||
@ -200,7 +199,7 @@ namespace Foam
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
inline bool addWatch(const label watchFd, const fileName& fName)
|
||||
@ -212,7 +211,7 @@ namespace Foam
|
||||
return false;
|
||||
}
|
||||
|
||||
#ifdef FOAM_USE_INOTIFY
|
||||
#ifdef FOAM_USE_INOTIFY
|
||||
// Add/retrieve watch on directory containing file.
|
||||
// Note that fName might be non-existing in special situations
|
||||
// (master-only reading for IODictionaries)
|
||||
@ -250,7 +249,7 @@ namespace Foam
|
||||
|
||||
dirWatches_(watchFd) = dirWatchID;
|
||||
dirFiles_(watchFd) = fName.name();
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -288,7 +287,6 @@ namespace Foam
|
||||
}
|
||||
|
||||
};
|
||||
//! @endcond
|
||||
}
|
||||
|
||||
|
||||
@ -298,7 +296,7 @@ void Foam::fileMonitor::checkFiles() const
|
||||
{
|
||||
if (useInotify_)
|
||||
{
|
||||
#ifdef FOAM_USE_INOTIFY
|
||||
#ifdef FOAM_USE_INOTIFY
|
||||
// Large buffer for lots of events
|
||||
char buffer[EVENT_BUF_LEN];
|
||||
|
||||
@ -392,7 +390,7 @@ void Foam::fileMonitor::checkFiles() const
|
||||
return;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -29,7 +29,7 @@ Description
|
||||
|
||||
SeeAlso
|
||||
The manpage regex(7) for more information about POSIX regular expressions.
|
||||
These differ somewhat from @c Perl and @c sed regular expressions.
|
||||
These differ somewhat from \c Perl and @c sed regular expressions.
|
||||
|
||||
SourceFiles
|
||||
regExp.C
|
||||
|
||||
@ -28,9 +28,9 @@ Description
|
||||
Set up trapping for floating point exceptions (signal FPE).
|
||||
|
||||
Controlled by two env vars:
|
||||
@param FOAM_SIGFPE \n
|
||||
\param FOAM_SIGFPE \n
|
||||
exception trapping
|
||||
@param FOAM_SETNAN \n
|
||||
\param FOAM_SETNAN \n
|
||||
initialization of all malloced memory to NaN. If FOAM_SIGFPE
|
||||
also set, this will cause usage of uninitialized scalars to trigger
|
||||
an abort.
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -28,7 +28,7 @@ Description
|
||||
Implements a timeout mechanism via sigalarm.
|
||||
|
||||
Example usage:
|
||||
@code
|
||||
\code
|
||||
timer myTimer(5); // 5 sec
|
||||
..
|
||||
if (timedOut(myTimer))
|
||||
@ -39,7 +39,7 @@ Description
|
||||
{
|
||||
// do something possible blocking
|
||||
}
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
Constructor set signal handler on sigalarm and alarm(). Destructor
|
||||
clears these.
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -236,10 +236,10 @@ public:
|
||||
|
||||
//- Read a bracket-delimited list, or handle a single value as list of size 1.
|
||||
// For example,
|
||||
// @code
|
||||
// \code
|
||||
// wList = readList<word>(IStringStream("(patch1 patch2 patch3)")());
|
||||
// wList = readList<word>(IStringStream("patch0")());
|
||||
// @endcode
|
||||
// \endcode
|
||||
// Mostly useful for handling command-line arguments.
|
||||
template<class T>
|
||||
List<T> readList(Istream&);
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -37,7 +37,7 @@ Description
|
||||
in one go, minimizing communication, and then picked apart and recombined.
|
||||
|
||||
Example:
|
||||
@code
|
||||
\code
|
||||
// Assuming myContainer defined which holds all the data I want to
|
||||
// transfer (say a pointField and a faceList). myContainer also defines
|
||||
// access operators to
|
||||
@ -76,7 +76,7 @@ Description
|
||||
gatheredData, sizes, myContainerFaces(), offsetOp<face>()
|
||||
)
|
||||
);
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
SourceFiles
|
||||
ListListOps.C
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -54,7 +54,7 @@ namespace Foam
|
||||
// Forward declaration
|
||||
class PackedBoolList;
|
||||
|
||||
//- @typedef A List of PackedBoolList
|
||||
//- \typedef A List of PackedBoolList
|
||||
typedef List<PackedBoolList> PackedBoolListList;
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -42,11 +42,11 @@ Note
|
||||
|
||||
Using the iteratorBase as a proxy allows assignment of values
|
||||
between list elements. Thus the following bit of code works as expected:
|
||||
@code
|
||||
\code
|
||||
list[1] = list[5]; // value assignment, not iterator position
|
||||
list[2] = list[5] = 4; // propagates value
|
||||
list[1] = list[5] = list[6]; // propagates value
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
Using get() or the '[]' operator are similarly fast. Looping and reading
|
||||
via an iterator is approx. 15% slower, but can be more flexible.
|
||||
@ -56,21 +56,21 @@ Note
|
||||
advantage of also returning a bool if the value changed. This can be
|
||||
useful for branching on changed values.
|
||||
|
||||
@code
|
||||
\code
|
||||
list[5] = 4;
|
||||
changed = list.set(5, 8);
|
||||
if (changed) ...
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
The lazy evaluation used means that reading an out-of-range element
|
||||
returns zero, but does not affect the list size. Even in a non-const
|
||||
context, only the assigment itself causes the element to be created.
|
||||
For example,
|
||||
@code
|
||||
\code
|
||||
list.resize(4);
|
||||
Info<< list[10] << "\n"; // print zero, but doesn't adjust list
|
||||
list[8] = 1;
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
Also note that all unused internal storage elements are guaranteed to
|
||||
always be bit-wise zero. This property must not be violated by any
|
||||
@ -79,14 +79,14 @@ Note
|
||||
In addition to the normal output format, PackedList also supports a
|
||||
compact ASCII format that may be convenient for user input in some
|
||||
situations. The general format is a group of index/value pairs:
|
||||
@verbatim
|
||||
\verbatim
|
||||
{ (index1 value1) (index2 value2) (index3 value3) }
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
The bool specialization just uses the indices corresponding to
|
||||
non-zero entries instead of a index/value pair:
|
||||
@verbatim
|
||||
\verbatim
|
||||
{ index1 index2 index3 }
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
In both cases, the supplied indices can be randomly ordered.
|
||||
|
||||
SeeAlso
|
||||
@ -356,14 +356,14 @@ public:
|
||||
//
|
||||
// The indexed output may be convenient in some situations.
|
||||
// The general format is a group of index/value pairs:
|
||||
// @verbatim
|
||||
// \verbatim
|
||||
// { (index1 value1) (index2 value2) (index3 value3) }
|
||||
// @endverbatim
|
||||
// \endverbatim
|
||||
// The bool specialization just uses the indices corresponding to
|
||||
// non-zero entries instead of a index/value pair:
|
||||
// @verbatim
|
||||
// \verbatim
|
||||
// { index1 index2 index3 }
|
||||
// @endverbatim
|
||||
// \endverbatim
|
||||
//
|
||||
// Note the indexed output is only supported for ASCII streams.
|
||||
Ostream& write
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -367,28 +367,28 @@ inline void reverse(UList<T>&);
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
/**
|
||||
* @def forAll(list, i)
|
||||
* Loop across all elements in @a list
|
||||
* @par Usage
|
||||
* @code
|
||||
* \def forAll(list, i)
|
||||
* Loop across all elements in \a list
|
||||
* \par Usage
|
||||
* \code
|
||||
* forAll(anyList, i)
|
||||
* {
|
||||
* statements;
|
||||
* }
|
||||
* @endcode
|
||||
* @sa forAllReverse
|
||||
* \endcode
|
||||
* \sa forAllReverse
|
||||
*/
|
||||
/**
|
||||
* @def forAllReverse(list, i)
|
||||
* Reverse loop across all elements in @a list
|
||||
* @par Usage
|
||||
* @code
|
||||
* \def forAllReverse(list, i)
|
||||
* Reverse loop across all elements in \a list
|
||||
* \par Usage
|
||||
* \code
|
||||
* forAllReverse(anyList, i)
|
||||
* {
|
||||
* statements;
|
||||
* }
|
||||
* @endcode
|
||||
* @sa forAll
|
||||
* \endcode
|
||||
* \sa forAll
|
||||
*/
|
||||
#define forAll(list, i) \
|
||||
for (Foam::label i=0; i<(list).size(); i++)
|
||||
@ -397,17 +397,17 @@ inline void reverse(UList<T>&);
|
||||
for (Foam::label i=(list).size()-1; i>=0; i--)
|
||||
|
||||
/**
|
||||
* @def forAllIter(Container, container, iter)
|
||||
* Iterate across all elements in the @a container object of type
|
||||
* @a Container.
|
||||
* @par Usage
|
||||
* @code
|
||||
* \def forAllIter(Container, container, iter)
|
||||
* Iterate across all elements in the \a container object of type
|
||||
* \a Container.
|
||||
* \par Usage
|
||||
* \code
|
||||
* forAll(ContainerType, container, iter)
|
||||
* {
|
||||
* statements;
|
||||
* }
|
||||
* @endcode
|
||||
* @sa forAllConstIter
|
||||
* \endcode
|
||||
* \sa forAllConstIter
|
||||
*/
|
||||
#define forAllIter(Container,container,iter) \
|
||||
for \
|
||||
@ -418,17 +418,17 @@ inline void reverse(UList<T>&);
|
||||
)
|
||||
|
||||
/**
|
||||
* @def forAllConstIter(Container, container, iter)
|
||||
* Iterate across all elements in the @a container object of type
|
||||
* @a Container with const access.
|
||||
* @par Usage
|
||||
* @code
|
||||
* \def forAllConstIter(Container, container, iter)
|
||||
* Iterate across all elements in the \a container object of type
|
||||
* \a Container with const access.
|
||||
* \par Usage
|
||||
* \code
|
||||
* forAllConstIter(ContainerType, container, iter)
|
||||
* {
|
||||
* statements;
|
||||
* }
|
||||
* @endcode
|
||||
* @sa forAllIter
|
||||
* \endcode
|
||||
* \sa forAllIter
|
||||
*/
|
||||
#define forAllConstIter(Container,container,iter) \
|
||||
for \
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -33,32 +33,32 @@ Description
|
||||
path, a reference to a objectRegistry, and parameters determining its
|
||||
storage status.
|
||||
|
||||
@par Read options
|
||||
\par Read options
|
||||
|
||||
Define what is done on object construction and explicit reads:
|
||||
@param MUST_READ
|
||||
\param MUST_READ
|
||||
Object must be read from Istream on construction. \n
|
||||
Error if Istream does not exist or can't be read.
|
||||
Does not check timestamp or re-read.
|
||||
@param MUST_READ_IF_MODIFIED
|
||||
\param MUST_READ_IF_MODIFIED
|
||||
Object must be read from Istream on construction. \n
|
||||
Error if Istream does not exist or can't be read. If object is
|
||||
registered its timestamp will be checked every timestep and possibly
|
||||
re-read.
|
||||
@param READ_IF_PRESENT
|
||||
\param READ_IF_PRESENT
|
||||
Read object from Istream if Istream exists, otherwise don't. \n
|
||||
Error only if Istream exists but can't be read.
|
||||
Does not check timestamp or re-read.
|
||||
@param NO_READ
|
||||
\param NO_READ
|
||||
Don't read
|
||||
|
||||
@par Write options
|
||||
\par Write options
|
||||
|
||||
Define what is done on object destruction and explicit writes:
|
||||
@param AUTO_WRITE
|
||||
\param AUTO_WRITE
|
||||
Object is written automatically when requested to by the
|
||||
objectRegistry.
|
||||
@param NO_WRITE
|
||||
\param NO_WRITE
|
||||
No automatic write on destruction but can be written explicitly
|
||||
|
||||
SourceFiles
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -393,39 +393,39 @@ public:
|
||||
//- Return true if run should continue,
|
||||
// also invokes the functionObjectList::end() method
|
||||
// when the time goes out of range
|
||||
// @note
|
||||
// \note
|
||||
// For correct behaviour, the following style of time-loop
|
||||
// is recommended:
|
||||
// @code
|
||||
// \code
|
||||
// while (runTime.run())
|
||||
// {
|
||||
// runTime++;
|
||||
// solve;
|
||||
// runTime.write();
|
||||
// }
|
||||
// @endcode
|
||||
// \endcode
|
||||
virtual bool run() const;
|
||||
|
||||
//- Return true if run should continue and if so increment time
|
||||
// also invokes the functionObjectList::end() method
|
||||
// when the time goes out of range
|
||||
// @note
|
||||
// \note
|
||||
// For correct behaviour, the following style of time-loop
|
||||
// is recommended:
|
||||
// @code
|
||||
// \code
|
||||
// while (runTime.loop())
|
||||
// {
|
||||
// solve;
|
||||
// runTime.write();
|
||||
// }
|
||||
// @endcode
|
||||
// \endcode
|
||||
virtual bool loop();
|
||||
|
||||
//- Return true if end of run,
|
||||
// does not invoke any functionObject methods
|
||||
// @note
|
||||
// \note
|
||||
// The rounding heuristics near endTime mean that
|
||||
// @code run() @endcode and @code !end() @endcode may
|
||||
// \code run() \endcode and \code !end() \endcode may
|
||||
// not yield the same result
|
||||
virtual bool end() const;
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -30,7 +30,7 @@ Description
|
||||
The timeSelector provides a convenient means of selecting multiple
|
||||
times. A typical use would be the following:
|
||||
|
||||
@verbatim
|
||||
\verbatim
|
||||
timeSelector::addOptions();
|
||||
// add other options
|
||||
#include "setRootCase.H"
|
||||
@ -41,27 +41,27 @@ Description
|
||||
{
|
||||
...
|
||||
}
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
The result program would receive @b -time, @b -latestTime, @b -constant
|
||||
and @b -noZero options. The @b -constant option explicitly includes the
|
||||
@c constant/ directory in the time list and the @b -noZero option
|
||||
explicitly excludes the @c 0/ directory from the time list.
|
||||
The result program would receive \b -time, @b -latestTime, @b -constant
|
||||
and \b -noZero options. The @b -constant option explicitly includes the
|
||||
\c constant/ directory in the time list and the \b -noZero option
|
||||
explicitly excludes the \c 0/ directory from the time list.
|
||||
|
||||
There may however also be many cases in which neither the @c constant/
|
||||
directory nor the @c 0/ directory contain particularly relevant
|
||||
There may however also be many cases in which neither the \c constant/
|
||||
directory nor the \c 0/ directory contain particularly relevant
|
||||
information. This might occur, for example, when post-processing
|
||||
results. In this case, addOptions is called with optional boolean
|
||||
arguments.
|
||||
|
||||
@verbatim
|
||||
\verbatim
|
||||
timeSelector::addOptions(false, true);
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
The first argument avoids adding the @b -constant option. The second
|
||||
argument adds an additional @b -zeroTime option and also prevents the
|
||||
@c 0/ directory from being included in the default time range and in the
|
||||
@b -latestTime selection.
|
||||
The first argument avoids adding the \b -constant option. The second
|
||||
argument adds an additional \b -zeroTime option and also prevents the
|
||||
\c 0/ directory from being included in the default time range and in the
|
||||
\b -latestTime selection.
|
||||
|
||||
SourceFiles
|
||||
timeSelector.C
|
||||
@ -119,15 +119,15 @@ public:
|
||||
|
||||
//- Add the options handled by timeSelector to argList::validOptions
|
||||
//
|
||||
// @param constant
|
||||
// Add the @b -constant option to include the @c constant/ directory
|
||||
// \param constant
|
||||
// Add the \b -constant option to include the \c constant/ directory
|
||||
//
|
||||
// @param zeroTime
|
||||
// Enable the @b -zeroTime option and alter the normal time selection
|
||||
// behaviour (and @b -latestTime behaviour) to exclude the @c 0/
|
||||
// directory. The @c 0/ directory will only be included when
|
||||
// @b -zeroTime is specified.
|
||||
// The @b -noZero option has precedence over the @b -zeroTime option.
|
||||
// \param zeroTime
|
||||
// Enable the \b -zeroTime option and alter the normal time selection
|
||||
// behaviour (and \b -latestTime behaviour) to exclude the \c 0/
|
||||
// directory. The \c 0/ directory will only be included when
|
||||
// \b -zeroTime is specified.
|
||||
// The \b -noZero option has precedence over the @b -zeroTime option.
|
||||
static void addOptions
|
||||
(
|
||||
const bool constant=true,
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -35,7 +35,7 @@ Description
|
||||
A functionEntry causes entries to be added/manipulated on the specified
|
||||
dictionary given an input stream.
|
||||
|
||||
In dictionaries, a @c '\#' sigil is typically used for a functionEntry.
|
||||
In dictionaries, a \c '\#' sigil is typically used for a functionEntry.
|
||||
|
||||
SourceFiles
|
||||
functionEntry.C
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -28,13 +28,13 @@ Description
|
||||
Specify an include file when reading dictionaries, expects a
|
||||
single string to follow.
|
||||
|
||||
An example of the @c \#include directive:
|
||||
@verbatim
|
||||
An example of the \c \#include directive:
|
||||
\verbatim
|
||||
#include "includeFile"
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
The usual expansion of environment variables and other constructs
|
||||
(eg, the @c ~OpenFOAM/ expansion) is retained.
|
||||
(eg, the \c ~OpenFOAM/ expansion) is retained.
|
||||
|
||||
See Also
|
||||
fileName, string::expand()
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -27,7 +27,7 @@ Class
|
||||
Description
|
||||
Specify a file to include if it exists. Expects a single string to follow.
|
||||
|
||||
The @c \#includeIfPresent directive is similar to the @c \#include
|
||||
The \c \#includeIfPresent directive is similar to the @c \#include
|
||||
directive, but does not generate an error if the file does not exist.
|
||||
|
||||
See Also
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -28,18 +28,18 @@ Description
|
||||
Specify the input mode when reading dictionaries, expects
|
||||
a single word to follow.
|
||||
|
||||
An example of @c \#inputMode directive:
|
||||
@verbatim
|
||||
An example of \c \#inputMode directive:
|
||||
\verbatim
|
||||
#inputMode merge
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
The possible input modes:
|
||||
@param merge merge sub-dictionaries when possible
|
||||
@param overwrite keep last entry and silently remove previous ones
|
||||
@param protect keep initial entry and silently ignore subsequent ones
|
||||
@param warn keep initial entry and warn about subsequent ones
|
||||
@param error issue a FatalError for duplicate entries
|
||||
@param default currently identical to merge
|
||||
\param merge merge sub-dictionaries when possible
|
||||
\param overwrite keep last entry and silently remove previous ones
|
||||
\param protect keep initial entry and silently ignore subsequent ones
|
||||
\param warn keep initial entry and warn about subsequent ones
|
||||
\param error issue a FatalError for duplicate entries
|
||||
\param default currently identical to merge
|
||||
|
||||
SourceFiles
|
||||
inputModeEntry.C
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -27,14 +27,14 @@ Class
|
||||
Description
|
||||
Remove a dictionary entry.
|
||||
|
||||
The @c \#remove directive takes a list or a single wordRe.
|
||||
The \c \#remove directive takes a list or a single wordRe.
|
||||
For example,
|
||||
@verbatim
|
||||
\verbatim
|
||||
#remove entry0
|
||||
#remove ( entry1 entry2 entry3 otherEntry )
|
||||
#remove "entry[1-3]"
|
||||
#remove ( "entry[1-3]" otherEntry )
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
The removal only occurs in the current context.
|
||||
Removing sub-entries or parent entries is not supported.
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2008-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2008-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -72,7 +72,7 @@ class StaticAssertionTest {};
|
||||
// external use:
|
||||
// ~~~~~~~~~~~~~
|
||||
/**
|
||||
* @def StaticAssert(Test)
|
||||
* \def StaticAssert(Test)
|
||||
* Assert that some test is true at compile-time
|
||||
*/
|
||||
#define StaticAssert(Test) \
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -35,10 +35,10 @@ Description
|
||||
handling has beed switched on (off by default).
|
||||
|
||||
Usage
|
||||
@code
|
||||
\code
|
||||
error << "message1" << "message2" << FoamDataType << exit(errNo);
|
||||
error << "message1" << "message2" << FoamDataType << abort();
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
SourceFiles
|
||||
error.C
|
||||
@ -296,7 +296,7 @@ extern IOerror FatalIOError;
|
||||
// Convenience macros to add the file name and line number to the function name
|
||||
|
||||
/**
|
||||
* @def FatalErrorIn(functionName)
|
||||
* \def FatalErrorIn(functionName)
|
||||
* Report an error message using Foam::FatalError for functionName in
|
||||
* file __FILE__ at line __LINE__
|
||||
*/
|
||||
@ -304,7 +304,7 @@ extern IOerror FatalIOError;
|
||||
::Foam::FatalError((fn), __FILE__, __LINE__)
|
||||
|
||||
/**
|
||||
* @def FatalIOErrorIn(functionName, ios)
|
||||
* \def FatalIOErrorIn(functionName, ios)
|
||||
* Report an error message using Foam::FatalIOError for functionName in
|
||||
* file __FILE__ at line __LINE__
|
||||
* for a particular IOstream
|
||||
@ -313,12 +313,12 @@ extern IOerror FatalIOError;
|
||||
::Foam::FatalIOError((fn), __FILE__, __LINE__, (ios))
|
||||
|
||||
/**
|
||||
* @def notImplemented(functionName)
|
||||
* \def notImplemented(functionName)
|
||||
* Issue a FatalErrorIn for the functionName.
|
||||
* This is used for functions that are not currently implemented.
|
||||
* The functionName is printed and then abort is called.
|
||||
*
|
||||
* @note
|
||||
* \note
|
||||
* This macro can be particularly useful when methods must be defined to
|
||||
* complete the interface of a derived class even if they should never be
|
||||
* called for this derived class.
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -30,10 +30,10 @@ Description
|
||||
handling has been switched on (off by default).
|
||||
|
||||
Usage
|
||||
@code
|
||||
\code
|
||||
error << "message1" << "message2" << FoamDataType << exit(error, errNo);
|
||||
error << "message1" << "message2" << FoamDataType << abort(error);
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -34,10 +34,10 @@ Description
|
||||
the messageStream class in the standard manner.
|
||||
|
||||
Usage
|
||||
@code
|
||||
\code
|
||||
messageStream
|
||||
<< "message1" << "message2" << FoamDataType << endl;
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
SourceFiles
|
||||
messageStream.C
|
||||
@ -214,7 +214,7 @@ extern messageStream Info;
|
||||
// Convenience macros to add the file name and line number to the function name
|
||||
|
||||
/**
|
||||
* @def SeriousErrorIn(functionName)
|
||||
* \def SeriousErrorIn(functionName)
|
||||
* Report an error message using Foam::SeriousError for functionName in
|
||||
* file __FILE__ at line __LINE__
|
||||
*/
|
||||
@ -222,7 +222,7 @@ extern messageStream Info;
|
||||
::Foam::SeriousError((fn), __FILE__, __LINE__)
|
||||
|
||||
/**
|
||||
* @def SeriousIOErrorIn(functionName, ios)
|
||||
* \def SeriousIOErrorIn(functionName, ios)
|
||||
* Report an IO error message using Foam::SeriousError for functionName in
|
||||
* file __FILE__ at line __LINE__
|
||||
* for a particular IOstream
|
||||
@ -231,7 +231,7 @@ extern messageStream Info;
|
||||
::Foam::SeriousError((fn), __FILE__, __LINE__, ios)
|
||||
|
||||
/**
|
||||
* @def WarningIn(functionName)
|
||||
* \def WarningIn(functionName)
|
||||
* Report a warning using Foam::Warning for functionName in
|
||||
* file __FILE__ at line __LINE__
|
||||
*/
|
||||
@ -239,7 +239,7 @@ extern messageStream Info;
|
||||
::Foam::Warning((fn), __FILE__, __LINE__)
|
||||
|
||||
/**
|
||||
* @def IOWarningIn(functionName, ios)
|
||||
* \def IOWarningIn(functionName, ios)
|
||||
* Report an IO warning using Foam::Warning for functionName in
|
||||
* file __FILE__ at line __LINE__
|
||||
* for a particular IOstream
|
||||
@ -248,7 +248,7 @@ extern messageStream Info;
|
||||
::Foam::Warning((fn), __FILE__, __LINE__, (ios))
|
||||
|
||||
/**
|
||||
* @def InfoIn(functionName)
|
||||
* \def InfoIn(functionName)
|
||||
* Report a information message using Foam::Info for functionName in
|
||||
* file __FILE__ at line __LINE__
|
||||
*/
|
||||
@ -256,7 +256,7 @@ extern messageStream Info;
|
||||
::Foam::Info((fn), __FILE__, __LINE__)
|
||||
|
||||
/**
|
||||
* @def IOInfoIn(functionName, ios)
|
||||
* \def IOInfoIn(functionName, ios)
|
||||
* Report an IO information message using Foam::Info for functionName in
|
||||
* file __FILE__ at line __LINE__
|
||||
* for a particular IOstream
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -30,9 +30,9 @@ Description
|
||||
|
||||
Note
|
||||
Since the timeIndex is used directly from Foam::Time, it is unaffected
|
||||
by user-time conversions. For example, Foam::engineTime might cause @a
|
||||
by user-time conversions. For example, Foam::engineTime might cause \a
|
||||
writeInterval to be degrees crank angle, but the functionObject
|
||||
execution @a interval would still be in timestep.
|
||||
execution \a interval would still be in timestep.
|
||||
|
||||
SourceFiles
|
||||
OutputFilterFunctionObject.C
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -108,7 +108,7 @@ public:
|
||||
|
||||
//- Construct from Time, a dictionary with "functions" entry
|
||||
// and the execution setting.
|
||||
// @param[in] parentDict - the parent dictionary containing
|
||||
// \param[in] parentDict - the parent dictionary containing
|
||||
// a "functions" entry, which can either be a list or a dictionary
|
||||
// of functionObject specifications.
|
||||
functionObjectList
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -74,7 +74,7 @@ private:
|
||||
//- Type of output
|
||||
outputControls outputControl_;
|
||||
|
||||
//- The execution interval (in time steps) when using @c timeStep mode,
|
||||
//- The execution interval (in time steps) when using \c timeStep mode,
|
||||
// a value <= 1 means execute at every time step
|
||||
label outputInterval_;
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -21,7 +21,8 @@ License
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
@file Foam::addToGlobalFunctionSelectionTable
|
||||
Global
|
||||
Foam::addToGlobalFunctionSelectionTable
|
||||
|
||||
Description
|
||||
Macros for easy insertion into global function selection tables
|
||||
@ -33,20 +34,18 @@ Description
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
// add to hash-table of functions with 'lookup' as the key
|
||||
#define addNamedToGlobalFunctionSelectionTable\
|
||||
(memberFunction,argNames,lookup,functionPtr) \
|
||||
\
|
||||
/* Add to the table, find by lookup name */ \
|
||||
add##memberFunction##argNames##GlobalMemberFunctionToTable \
|
||||
add_##lookup##_##memberFunction##argNames##GlobalMemberFunctionTo##Table_\
|
||||
add_##lookup##_##memberFunction##argNames##GlobalMemberFunctionTo##Table_ \
|
||||
(#lookup, functionPtr)
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -21,7 +21,8 @@ License
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
@file Foam::globalFunctionSelectionTables
|
||||
Global
|
||||
Foam::globalFunctionSelectionTables
|
||||
|
||||
Description
|
||||
Macros to enable the easy declaration of global function selection tables.
|
||||
@ -35,7 +36,6 @@ Description
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
// external use:
|
||||
// ~~~~~~~~~~~~~
|
||||
// declare a run-time selection:
|
||||
@ -138,7 +138,6 @@ Description
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -21,7 +21,8 @@ License
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
@file Foam::addToStaticMemberFunctionSelectionTable
|
||||
Global
|
||||
Foam::addToStaticMemberFunctionSelectionTable
|
||||
|
||||
Description
|
||||
Macros for easy insertion into member function selection tables
|
||||
@ -47,7 +48,6 @@ Description
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -21,7 +21,8 @@ License
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
@file Foam::staticMemberFunctionSelectionTables
|
||||
Global
|
||||
Foam::staticMemberFunctionSelectionTables
|
||||
|
||||
Description
|
||||
Macros to enable the easy declaration of member function selection tables.
|
||||
@ -35,7 +36,6 @@ Description
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
// external use:
|
||||
// ~~~~~~~~~~~~~
|
||||
// declare a run-time selection:
|
||||
@ -140,7 +140,6 @@ Description
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -39,19 +39,19 @@ Description
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
//- Add typeName information from argument @a TypeNameString to a class.
|
||||
//- Add typeName information from argument \a TypeNameString to a class.
|
||||
// Without debug information
|
||||
#define ClassNameNoDebug(TypeNameString) \
|
||||
static const char* typeName_() { return TypeNameString; } \
|
||||
static const ::Foam::word typeName
|
||||
|
||||
//- Add typeName information from argument @a TypeNameString to a namespace.
|
||||
//- Add typeName information from argument \a TypeNameString to a namespace.
|
||||
// Without debug information.
|
||||
#define NamespaceNameNoDebug(TypeNameString) \
|
||||
inline const char* typeName_() { return TypeNameString; } \
|
||||
extern const ::Foam::word typeName
|
||||
|
||||
//- Add typeName information from argument @a TemplateNameString to a
|
||||
//- Add typeName information from argument \a TemplateNameString to a
|
||||
// template class. Without debug information.
|
||||
#define TemplateNameNoDebug(TemplateNameString) \
|
||||
class TemplateNameString##Name \
|
||||
@ -68,19 +68,19 @@ public: \
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
//- Add typeName information from argument @a TypeNameString to a class.
|
||||
//- Add typeName information from argument \a TypeNameString to a class.
|
||||
// Also declares debug information.
|
||||
#define ClassName(TypeNameString) \
|
||||
ClassNameNoDebug(TypeNameString); \
|
||||
static int debug
|
||||
|
||||
//- Add typeName information from argument @a TypeNameString to a namespace.
|
||||
//- Add typeName information from argument \a TypeNameString to a namespace.
|
||||
// Also declares debug information.
|
||||
#define NamespaceName(TypeNameString) \
|
||||
NamespaceNameNoDebug(TypeNameString); \
|
||||
extern int debug
|
||||
|
||||
//- Add typeName information from argument @a TypeNameString to a
|
||||
//- Add typeName information from argument \a TypeNameString to a
|
||||
// template class. Also declares debug information.
|
||||
#define TemplateName(TemplateNameString) \
|
||||
class TemplateNameString##Name \
|
||||
@ -97,7 +97,7 @@ public: \
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
//- Define the typeName, with alternative lookup as @a Name
|
||||
//- Define the typeName, with alternative lookup as \a Name
|
||||
#define defineTypeNameWithName(Type, Name) \
|
||||
const ::Foam::word Type::typeName(Name)
|
||||
|
||||
@ -106,18 +106,18 @@ public: \
|
||||
defineTypeNameWithName(Type, Type::typeName_())
|
||||
|
||||
#ifdef __INTEL_COMPILER
|
||||
//- Define the typeName as @a Name for template classes
|
||||
//- Define the typeName as \a Name for template classes
|
||||
# define defineTemplateTypeNameWithName(Type, Name) \
|
||||
defineTypeNameWithName(Type, Name)
|
||||
//- Define the typeName as @a Name for template sub-classes
|
||||
//- Define the typeName as \a Name for template sub-classes
|
||||
# define defineTemplate2TypeNameWithName(Type, Name) \
|
||||
defineTypeNameWithName(Type, Name)
|
||||
#else
|
||||
//- Define the typeName as @a Name for template classes
|
||||
//- Define the typeName as \a Name for template classes
|
||||
# define defineTemplateTypeNameWithName(Type, Name) \
|
||||
template<> \
|
||||
defineTypeNameWithName(Type, Name)
|
||||
//- Define the typeName as @a Name for template sub-classes
|
||||
//- Define the typeName as \a Name for template sub-classes
|
||||
# define defineTemplate2TypeNameWithName(Type, Name) \
|
||||
template<> \
|
||||
template<> \
|
||||
@ -139,7 +139,7 @@ public: \
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
//- Define the debug information, lookup as @a Name
|
||||
//- Define the debug information, lookup as \a Name
|
||||
#define defineDebugSwitchWithName(Type, Name, DebugSwitch) \
|
||||
int Type::debug(::Foam::debug::debugSwitch(Name, DebugSwitch))
|
||||
|
||||
@ -148,18 +148,18 @@ public: \
|
||||
defineDebugSwitchWithName(Type, Type::typeName_(), DebugSwitch)
|
||||
|
||||
#ifdef __INTEL_COMPILER
|
||||
//- Define the debug information for templates, lookup as @a Name
|
||||
//- Define the debug information for templates, lookup as \a Name
|
||||
# define defineTemplateDebugSwitchWithName(Type, Name, DebugSwitch) \
|
||||
defineDebugSwitchWithName(Type, Name, DebugSwitch)
|
||||
//- Define the debug information for templates sub-classes, lookup as @a Name
|
||||
//- Define the debug information for templates sub-classes, lookup as \a Name
|
||||
# define defineTemplate2DebugSwitchWithName(Type, Name, DebugSwitch) \
|
||||
defineDebugSwitchWithName(Type, Name, DebugSwitch)
|
||||
#else
|
||||
//- Define the debug information for templates, lookup as @a Name
|
||||
//- Define the debug information for templates, lookup as \a Name
|
||||
# define defineTemplateDebugSwitchWithName(Type, Name, DebugSwitch) \
|
||||
template<> \
|
||||
defineDebugSwitchWithName(Type, Name, DebugSwitch)
|
||||
//- Define the debug information for templates sub-classes, lookup as @a Name
|
||||
//- Define the debug information for templates sub-classes, lookup as \a Name
|
||||
# define defineTemplate2DebugSwitchWithName(Type, Name, DebugSwitch) \
|
||||
template<> \
|
||||
template<> \
|
||||
@ -199,7 +199,7 @@ public: \
|
||||
defineTypeName(Type); \
|
||||
defineDebugSwitch(Type, DebugSwitch)
|
||||
|
||||
//- Define the typeName and debug information, lookup as @a Name
|
||||
//- Define the typeName and debug information, lookup as \a Name
|
||||
#define defineTemplateTypeNameAndDebugWithName(Type, Name, DebugSwitch) \
|
||||
defineTemplateTypeNameWithName(Type, Name); \
|
||||
defineTemplateDebugSwitchWithName(Type, Name, DebugSwitch)
|
||||
@ -216,7 +216,7 @@ public: \
|
||||
|
||||
// for templated sub-classes
|
||||
|
||||
//- Define the typeName and debug information, lookup as @a Name
|
||||
//- Define the typeName and debug information, lookup as \a Name
|
||||
#define defineTemplate2TypeNameAndDebugWithName(Type, Name, DebugSwitch) \
|
||||
defineTemplate2TypeNameWithName(Type, Name); \
|
||||
defineTemplate2DebugSwitchWithName(Type, Name, DebugSwitch)
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -29,22 +29,22 @@ Description
|
||||
Used to enhance the standard RTTI to cover I/O.
|
||||
|
||||
The user can get the type's type name using the type info access function
|
||||
@code
|
||||
\code
|
||||
type()
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
The reference type cast template function:
|
||||
@code
|
||||
\code
|
||||
refCast<T>(r)
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
wraps dynamic_cast to handle the bad_cast exception and generate a
|
||||
FatalError.
|
||||
|
||||
The isA function:
|
||||
@code
|
||||
\code
|
||||
isA<T>(r)
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
returns true if r is of type T or derived from type T.
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -46,11 +46,17 @@ Foam::List<T> Foam::transform
|
||||
|
||||
|
||||
template <class T>
|
||||
void Foam::transformList
|
||||
(
|
||||
const tensorField& rotTensor,
|
||||
UList<T>& field
|
||||
)
|
||||
void Foam::transformList(const tensor& rotTensor, UList<T>& field)
|
||||
{
|
||||
forAll(field, i)
|
||||
{
|
||||
field[i] = transform(rotTensor, field[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
template <class T>
|
||||
void Foam::transformList(const tensorField& rotTensor, UList<T>& field)
|
||||
{
|
||||
if (rotTensor.size() == 1)
|
||||
{
|
||||
@ -79,11 +85,17 @@ void Foam::transformList
|
||||
|
||||
|
||||
template <class T>
|
||||
void Foam::transformList
|
||||
(
|
||||
const tensorField& rotTensor,
|
||||
Map<T>& field
|
||||
)
|
||||
void Foam::transformList(const tensor& rotTensor, Map<T>& field)
|
||||
{
|
||||
forAllIter(typename Map<T>, field, iter)
|
||||
{
|
||||
iter() = transform(rotTensor[0], iter());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
template <class T>
|
||||
void Foam::transformList(const tensorField& rotTensor, Map<T>& field)
|
||||
{
|
||||
if (rotTensor.size() == 1)
|
||||
{
|
||||
@ -105,11 +117,17 @@ void Foam::transformList
|
||||
|
||||
|
||||
template <class T>
|
||||
void Foam::transformList
|
||||
(
|
||||
const tensorField& rotTensor,
|
||||
EdgeMap<T>& field
|
||||
)
|
||||
void Foam::transformList(const tensor& rotTensor, EdgeMap<T>& field)
|
||||
{
|
||||
forAllIter(typename EdgeMap<T>, field, iter)
|
||||
{
|
||||
iter() = transform(rotTensor[0], iter());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
template <class T>
|
||||
void Foam::transformList(const tensorField& rotTensor, EdgeMap<T>& field)
|
||||
{
|
||||
if (rotTensor.size() == 1)
|
||||
{
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -60,33 +60,57 @@ List<T> transform
|
||||
//- Apply transformation to list. Either single transformation tensor
|
||||
// or one tensor per element.
|
||||
template<class T>
|
||||
void transformList(const tensor&, UList<T>&);
|
||||
template<class T>
|
||||
void transformList(const tensorField&, UList<T>&);
|
||||
|
||||
template<class T>
|
||||
void transformList(const tensor&, Map<T>&);
|
||||
template<class T>
|
||||
void transformList(const tensorField&, Map<T>&);
|
||||
|
||||
template<class T>
|
||||
void transformList(const tensor&, EdgeMap<T>&);
|
||||
template<class T>
|
||||
void transformList(const tensorField&, EdgeMap<T>&);
|
||||
|
||||
|
||||
template<>
|
||||
inline void transformList(const tensor&, labelUList&)
|
||||
{}
|
||||
template<>
|
||||
inline void transformList(const tensorField&, labelUList&)
|
||||
{}
|
||||
template<>
|
||||
inline void transformList(const tensor&, Map<label>&)
|
||||
{}
|
||||
template<>
|
||||
inline void transformList(const tensorField&, Map<label>&)
|
||||
{}
|
||||
template<>
|
||||
inline void transformList(const tensor&, EdgeMap<label>&)
|
||||
{}
|
||||
template<>
|
||||
inline void transformList(const tensorField&, EdgeMap<label>&)
|
||||
{}
|
||||
|
||||
|
||||
template<>
|
||||
inline void transformList(const tensor&, UList<scalar>&)
|
||||
{}
|
||||
template<>
|
||||
inline void transformList(const tensorField&, UList<scalar>&)
|
||||
{}
|
||||
template<>
|
||||
inline void transformList(const tensor&, Map<scalar>&)
|
||||
{}
|
||||
template<>
|
||||
inline void transformList(const tensorField&, Map<scalar>&)
|
||||
{}
|
||||
template<>
|
||||
inline void transformList(const tensor&, EdgeMap<scalar>&)
|
||||
{}
|
||||
template<>
|
||||
inline void transformList(const tensorField&, EdgeMap<scalar>&)
|
||||
{}
|
||||
|
||||
|
||||
@ -26,38 +26,38 @@ Class
|
||||
|
||||
Description
|
||||
Extract command arguments and options from the supplied
|
||||
@a argc and @a argv parameters.
|
||||
\a argc and @a argv parameters.
|
||||
|
||||
Sequences with "(" ... ")" are transformed into a stringList.
|
||||
For example,
|
||||
@verbatim
|
||||
\verbatim
|
||||
program -listFiles \( *.txt \)
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
would create a stringList:
|
||||
@verbatim
|
||||
\verbatim
|
||||
( "file1.txt" "file2.txt" ... "fileN.txt" )
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
The backslash-escaping is required to avoid interpretation by the shell.
|
||||
|
||||
@par Default command-line options
|
||||
@param -case \<dir\> \n
|
||||
\par Default command-line options
|
||||
\param -case \<dir\> \n
|
||||
select an case directory instead of the current working directory
|
||||
@param -parallel \n
|
||||
\param -parallel \n
|
||||
specify case as a parallel job
|
||||
@param -doc \n
|
||||
\param -doc \n
|
||||
display the documentation in browser
|
||||
@param -srcDoc \n
|
||||
\param -srcDoc \n
|
||||
display the source documentation in browser
|
||||
@param -help \n
|
||||
\param -help \n
|
||||
print the usage
|
||||
|
||||
The environment variable @b FOAM_CASE is set to the path of the
|
||||
The environment variable \b FOAM_CASE is set to the path of the
|
||||
global case (same for serial and parallel jobs).
|
||||
The environment variable @b FOAM_CASENAME is set to the name of the
|
||||
The environment variable \b FOAM_CASENAME is set to the name of the
|
||||
global case.
|
||||
|
||||
Note
|
||||
- The document browser used is defined by the @b FOAM_DOC_BROWSER
|
||||
- The document browser used is defined by the \b FOAM_DOC_BROWSER
|
||||
environment variable or the <tt>Documentation/docBrowser</tt> entry
|
||||
in the <tt>~OpenFOAM/controlDict</tt> file.
|
||||
The \%f token is used as a placeholder for the file name.
|
||||
@ -168,14 +168,14 @@ public:
|
||||
//- Max screen width for displaying usage (default: 80)
|
||||
static string::size_type usageMax;
|
||||
|
||||
//! @cond internalClass
|
||||
//! \cond internalClass
|
||||
class initValidTables
|
||||
{
|
||||
public:
|
||||
|
||||
initValidTables();
|
||||
};
|
||||
//! @endcond
|
||||
//! \endcond
|
||||
|
||||
|
||||
// Constructors
|
||||
@ -230,7 +230,7 @@ public:
|
||||
inline T argRead(const label index) const;
|
||||
|
||||
//- Return arguments that are additional to the executable
|
||||
// @deprecated use operator[] directly (deprecated Feb 2010)
|
||||
// \deprecated use operator[] directly (deprecated Feb 2010)
|
||||
stringList::subList additionalArgs() const
|
||||
{
|
||||
return stringList::subList(args_, args_.size()-1, 1);
|
||||
@ -292,7 +292,7 @@ public:
|
||||
inline const string& operator[](const label index) const;
|
||||
|
||||
//- Return the argument string associated with the named option
|
||||
// @sa option()
|
||||
// \sa option()
|
||||
inline const string& operator[](const word& opt) const;
|
||||
|
||||
// Edit
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -38,7 +38,7 @@ namespace Foam
|
||||
namespace debug
|
||||
{
|
||||
|
||||
//! @cond ignoreDocumentation - local scope
|
||||
//! \cond ignoreDocumentation - local scope
|
||||
dictionary* controlDictPtr_(NULL);
|
||||
dictionary* debugSwitchesPtr_(NULL);
|
||||
dictionary* infoSwitchesPtr_(NULL);
|
||||
@ -63,7 +63,7 @@ public:
|
||||
};
|
||||
|
||||
deleteControlDictPtr deleteControlDictPtr_;
|
||||
//! @endcond
|
||||
//! \endcond
|
||||
|
||||
|
||||
} // End namespace debug
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -49,7 +49,7 @@ namespace debug
|
||||
{
|
||||
//- The central control dictionary.
|
||||
// Located in ~/.OpenFOAM/VERSION or $WM_PROJECT_DIR/etc
|
||||
// @sa Foam::findEtcFile()
|
||||
// \sa Foam::findEtcFile()
|
||||
dictionary& controlDict();
|
||||
|
||||
//- The DebugSwitches sub-dictionary in the central controlDict.
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -25,7 +25,7 @@ Class
|
||||
Foam::xmgrGraph
|
||||
|
||||
Description
|
||||
Output and @b agr file for @em xmgrace
|
||||
Output and \b agr file for \em xmgrace
|
||||
(http://plasma-gate.weizmann.ac.il/Grace/)
|
||||
|
||||
SourceFiles
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -90,7 +90,8 @@ fileName cwd();
|
||||
// else return false
|
||||
bool chDir(const fileName& dir);
|
||||
|
||||
//- Search for @em name in the following hierarchy:
|
||||
//- Search for \em name
|
||||
// in the following hierarchy:
|
||||
// -# personal settings:
|
||||
// - ~/.OpenFOAM/\<VERSION\>/
|
||||
// <em>for version-specific files</em>
|
||||
@ -104,7 +105,7 @@ bool chDir(const fileName& dir);
|
||||
// -# shipped settings:
|
||||
// - $WM_PROJECT_DIR/etc/
|
||||
//
|
||||
// @return the full path name or fileName() if the name cannot be found
|
||||
// \return the full path name or fileName() if the name cannot be found
|
||||
// Optionally abort if the file cannot be found
|
||||
fileName findEtcFile(const fileName&, bool mandatory=false);
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -25,13 +25,13 @@ Class
|
||||
Foam::interpolationTable
|
||||
|
||||
Description
|
||||
An interpolation/look-up table of scalar vs <Type> values.
|
||||
An interpolation/look-up table of scalar vs \<Type\> values.
|
||||
The reference scalar values must be monotonically increasing.
|
||||
|
||||
The handling of out-of-bounds values depends on the current setting
|
||||
of @a outOfBounds.
|
||||
of \a outOfBounds.
|
||||
|
||||
If @a REPEAT is chosen for the out-of-bounds handling, the final time
|
||||
If \a REPEAT is chosen for the out-of-bounds handling, the final time
|
||||
value is treated as being equivalent to time=0 for the following periods.
|
||||
|
||||
Note
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2009-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -30,7 +30,7 @@ Description
|
||||
|
||||
Example usage (scalar): values specified within a dictionary:
|
||||
|
||||
@verbatim
|
||||
\verbatim
|
||||
{
|
||||
x0 0; // lower limit
|
||||
dx 0.2; // fixed interval
|
||||
@ -43,7 +43,7 @@ Description
|
||||
7870 // value at x0 + n*dx
|
||||
);
|
||||
}
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
uniformInterpolationTable.C
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -22,7 +22,7 @@ License
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Class
|
||||
Foam::DiagonalMatrix<Type>
|
||||
Foam::DiagonalMatrix
|
||||
|
||||
Description
|
||||
DiagonalMatrix<Type> is a 2D diagonal matrix of objects
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -38,7 +38,7 @@ Description
|
||||
the same point. The neighbour labels are also ordered in ascending
|
||||
order but only for groups of edges belonging to each point. An example
|
||||
is given below:
|
||||
@verbatim
|
||||
\verbatim
|
||||
owner eighbour
|
||||
0 1
|
||||
0 20
|
||||
@ -60,7 +60,7 @@ Description
|
||||
8 28
|
||||
9 10
|
||||
9 29
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
There exists an alternative way of addressing the owner
|
||||
list: instead of repeating the same label in the owner list, it is
|
||||
@ -68,9 +68,9 @@ Description
|
||||
neighbour list. This reduces the size of owner addressing from a list
|
||||
over all edges to a list over all points + 1:
|
||||
|
||||
@verbatim
|
||||
\verbatim
|
||||
Owner start list: 0 2 4 6 8 10 12 14 16 18
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
|
||||
We shall use the second form of the addressing for fast lookup
|
||||
of edge label from the known owner and neighbour, using the following
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -36,12 +36,12 @@ License
|
||||
int Foam::solution::debug(::Foam::debug::debugSwitch("solution", 0));
|
||||
|
||||
// List of sub-dictionaries to rewrite
|
||||
//! @cond localScope
|
||||
//! \cond localScope
|
||||
static const Foam::List<Foam::word> subDictNames
|
||||
(
|
||||
Foam::IStringStream("(preconditioner smoother)")()
|
||||
);
|
||||
//! @endcond
|
||||
//! \endcond
|
||||
|
||||
|
||||
// * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * * //
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -43,21 +43,21 @@ Description
|
||||
memory becoming inaccessible, the xferMoveTo() function should be used to
|
||||
invoke the correct List\<T\>::transfer(DynamicList\<T\>&) method.
|
||||
|
||||
@code
|
||||
\code
|
||||
DynamicList<label> dynLst;
|
||||
...
|
||||
labelList plainLst( xferMoveTo<labelList>(dynLst) );
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
Of course, since this example is a very common operation, the
|
||||
DynamicList::xfer() method transfers to a plain List anyhow.
|
||||
It would thus be simpler (and clearer) just to use the following code:
|
||||
|
||||
@code
|
||||
\code
|
||||
DynamicList<label> dynLst;
|
||||
...
|
||||
labelList plainLst(dynLst.xfer());
|
||||
@endcode
|
||||
\endcode
|
||||
|
||||
SeeAlso
|
||||
xferCopy, xferCopyTo, xferMove, xferMoveTo, xferTmp
|
||||
@ -135,53 +135,53 @@ public:
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
/**
|
||||
* Construct by copying the contents of the @a arg
|
||||
* Construct by copying the contents of the \a arg
|
||||
*
|
||||
* @sa xferCopyTo, xferMove, xferMoveTo, xferTmp and Foam::Xfer
|
||||
* \sa xferCopyTo, xferMove, xferMoveTo, xferTmp and Foam::Xfer
|
||||
*/
|
||||
template<class T>
|
||||
inline Xfer<T> xferCopy(const T&);
|
||||
|
||||
/**
|
||||
* Construct by transferring the contents of the @a arg
|
||||
* Construct by transferring the contents of the \a arg
|
||||
*
|
||||
* @sa xferCopy, xferCopyTo, xferMoveTo, xferTmp and Foam::Xfer
|
||||
* \sa xferCopy, xferCopyTo, xferMoveTo, xferTmp and Foam::Xfer
|
||||
*/
|
||||
template<class T>
|
||||
inline Xfer<T> xferMove(T&);
|
||||
|
||||
|
||||
/**
|
||||
* Construct by transferring the contents of the @a arg
|
||||
* Construct by transferring the contents of the \a arg
|
||||
*
|
||||
* @sa xferCopy, xferCopyTo, xferMove, xferMoveTo and Foam::Xfer
|
||||
* \sa xferCopy, xferCopyTo, xferMove, xferMoveTo and Foam::Xfer
|
||||
*/
|
||||
template<class T>
|
||||
inline Xfer<T> xferTmp(Foam::tmp<T>&);
|
||||
|
||||
|
||||
/**
|
||||
* Construct by copying the contents of the @a arg
|
||||
* Construct by copying the contents of the \a arg
|
||||
* between dissimilar types
|
||||
*
|
||||
* @sa xferCopy, xferMove, xferMoveTo, xferTmp and Foam::Xfer
|
||||
* \sa xferCopy, xferMove, xferMoveTo, xferTmp and Foam::Xfer
|
||||
*/
|
||||
template<class To, class From>
|
||||
inline Xfer<To> xferCopyTo(const From&);
|
||||
|
||||
|
||||
/**
|
||||
* Construct by transferring the contents of the @a arg
|
||||
* Construct by transferring the contents of the \a arg
|
||||
* between dissimilar types
|
||||
*
|
||||
* @par Example Use
|
||||
* @code
|
||||
* \par Example Use
|
||||
* \code
|
||||
* DynamicList<label> dynLst;
|
||||
* ...
|
||||
* labelList plainLst( xferMoveTo<labelList>(dynLst) );
|
||||
* @endcode
|
||||
* \endcode
|
||||
*
|
||||
* @sa xferCopy, xferCopyTo, xferMove, xferTmp and Foam::Xfer
|
||||
* \sa xferCopy, xferCopyTo, xferMove, xferTmp and Foam::Xfer
|
||||
*/
|
||||
template<class To, class From>
|
||||
inline Xfer<To> xferMoveTo(From&);
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -31,22 +31,22 @@ Description
|
||||
cell-face to mesh-face mapping.
|
||||
|
||||
For example,
|
||||
@verbatim
|
||||
\verbatim
|
||||
hexMatcher hex(mesh);
|
||||
cellShape shape;
|
||||
..
|
||||
bool isHex = hex.match(cellI, shape);
|
||||
@endverbatim
|
||||
Now shape is set to the correct Hex cellShape (if @a isHex is true)
|
||||
\endverbatim
|
||||
Now shape is set to the correct Hex cellShape (if \a isHex is true)
|
||||
|
||||
Alternatively there is direct access to the vertex and face mapping:
|
||||
@verbatim
|
||||
\verbatim
|
||||
const labelList& hexVertLabels = hex.vertLabels();
|
||||
const labelList& hexFaceLabels = hex.faceLabels();
|
||||
@endverbatim
|
||||
\endverbatim
|
||||
Now
|
||||
- @c hexVertLabels[n] is vertex label of hex vertex n
|
||||
- @c hexFaceLabels[n] is face label of hex vertex n
|
||||
- \c hexVertLabels[n] is vertex label of hex vertex n
|
||||
- \c hexFaceLabels[n] is face label of hex vertex n
|
||||
|
||||
Process of cellShape recognition consists of following steps:
|
||||
- renumber vertices of cell to local vertex numbers
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -122,6 +122,7 @@ public:
|
||||
inline linePointRef line(const pointField&) const;
|
||||
|
||||
//- compare edges
|
||||
// Returns:
|
||||
// - 0: different
|
||||
// - +1: identical
|
||||
// - -1: same edge, but different orientation
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -307,6 +307,7 @@ public:
|
||||
inline edge faceEdge(const label n) const;
|
||||
|
||||
//- Return the edge direction on the face
|
||||
// Returns:
|
||||
// - 0: edge not found on the face
|
||||
// - +1: forward (counter-clockwise) on the face
|
||||
// - -1: reverse (clockwise) on the face
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user