Merge branch 'master' into testLoop/MartinBeaudoin
This commit is contained in:
commit
6c89f28e58
76 changed files with 732 additions and 470 deletions
|
@ -0,0 +1,3 @@
|
||||||
|
icoDyMFoam.C
|
||||||
|
|
||||||
|
EXE = $(FOAM_APPBIN)/icoDyMFoam
|
13
applications/solvers/incompressible/icoDyMFoam/Make/options
Normal file
13
applications/solvers/incompressible/icoDyMFoam/Make/options
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
EXE_INC = \
|
||||||
|
-I$(LIB_SRC)/dynamicFvMesh/lnInclude \
|
||||||
|
-I$(LIB_SRC)/dynamicMesh/lnInclude \
|
||||||
|
-I$(LIB_SRC)/meshTools/lnInclude \
|
||||||
|
-I$(LIB_SRC)/finiteVolume/lnInclude
|
||||||
|
|
||||||
|
EXE_LIBS = \
|
||||||
|
-ldynamicFvMesh \
|
||||||
|
-ldynamicMesh \
|
||||||
|
-lengine \
|
||||||
|
-lmeshTools \
|
||||||
|
-lfiniteVolume \
|
||||||
|
-llduSolvers
|
11
applications/solvers/incompressible/icoDyMFoam/UEqn.H
Normal file
11
applications/solvers/incompressible/icoDyMFoam/UEqn.H
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
fvVectorMatrix UEqn
|
||||||
|
(
|
||||||
|
fvm::ddt(U)
|
||||||
|
+ fvm::div(phi, U)
|
||||||
|
- fvm::laplacian(nu, U)
|
||||||
|
);
|
||||||
|
|
||||||
|
if (momentumPredictor)
|
||||||
|
{
|
||||||
|
solve(UEqn == -fvc::grad(p));
|
||||||
|
}
|
47
applications/solvers/incompressible/icoDyMFoam/correctPhi.H
Normal file
47
applications/solvers/incompressible/icoDyMFoam/correctPhi.H
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
{
|
||||||
|
wordList pcorrTypes(p.boundaryField().types());
|
||||||
|
|
||||||
|
for (label i=0; i<p.boundaryField().size(); i++)
|
||||||
|
{
|
||||||
|
if (p.boundaryField()[i].fixesValue())
|
||||||
|
{
|
||||||
|
pcorrTypes[i] = fixedValueFvPatchScalarField::typeName;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
volScalarField pcorr
|
||||||
|
(
|
||||||
|
IOobject
|
||||||
|
(
|
||||||
|
"pcorr",
|
||||||
|
runTime.timeName(),
|
||||||
|
mesh,
|
||||||
|
IOobject::NO_READ,
|
||||||
|
IOobject::NO_WRITE
|
||||||
|
),
|
||||||
|
mesh,
|
||||||
|
dimensionedScalar("pcorr", p.dimensions(), 0.0),
|
||||||
|
pcorrTypes
|
||||||
|
);
|
||||||
|
|
||||||
|
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
|
||||||
|
{
|
||||||
|
fvScalarMatrix pcorrEqn
|
||||||
|
(
|
||||||
|
fvm::laplacian(rAU, pcorr) == fvc::div(phi)
|
||||||
|
);
|
||||||
|
|
||||||
|
pcorrEqn.setReference(pRefCell, pRefValue);
|
||||||
|
pcorrEqn.solve();
|
||||||
|
|
||||||
|
if (nonOrth == nNonOrthCorr)
|
||||||
|
{
|
||||||
|
phi -= pcorrEqn.flux();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fluxes are corrected to absolute velocity and further corrected
|
||||||
|
// later. HJ, 6/Feb/2009
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#include "continuityErrs.H"
|
|
@ -0,0 +1,90 @@
|
||||||
|
Info<< "Reading transportProperties\n" << endl;
|
||||||
|
|
||||||
|
IOdictionary transportProperties
|
||||||
|
(
|
||||||
|
IOobject
|
||||||
|
(
|
||||||
|
"transportProperties",
|
||||||
|
runTime.constant(),
|
||||||
|
mesh,
|
||||||
|
IOobject::MUST_READ,
|
||||||
|
IOobject::NO_WRITE
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
dimensionedScalar nu
|
||||||
|
(
|
||||||
|
transportProperties.lookup("nu")
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
Info<< "Reading field p\n" << endl;
|
||||||
|
volScalarField p
|
||||||
|
(
|
||||||
|
IOobject
|
||||||
|
(
|
||||||
|
"p",
|
||||||
|
runTime.timeName(),
|
||||||
|
mesh,
|
||||||
|
IOobject::MUST_READ,
|
||||||
|
IOobject::AUTO_WRITE
|
||||||
|
),
|
||||||
|
mesh
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
Info<< "Reading field U\n" << endl;
|
||||||
|
volVectorField U
|
||||||
|
(
|
||||||
|
IOobject
|
||||||
|
(
|
||||||
|
"U",
|
||||||
|
runTime.timeName(),
|
||||||
|
mesh,
|
||||||
|
IOobject::MUST_READ,
|
||||||
|
IOobject::AUTO_WRITE
|
||||||
|
),
|
||||||
|
mesh
|
||||||
|
);
|
||||||
|
|
||||||
|
# include "createPhi.H"
|
||||||
|
|
||||||
|
|
||||||
|
label pRefCell = 0;
|
||||||
|
scalar pRefValue = 0.0;
|
||||||
|
setRefCell(p, mesh.solutionDict().subDict("PISO"), pRefCell, pRefValue);
|
||||||
|
|
||||||
|
|
||||||
|
Info<< "Reading field rAU if present\n" << endl;
|
||||||
|
volScalarField rAU
|
||||||
|
(
|
||||||
|
IOobject
|
||||||
|
(
|
||||||
|
"rAU",
|
||||||
|
runTime.timeName(),
|
||||||
|
mesh,
|
||||||
|
IOobject::READ_IF_PRESENT,
|
||||||
|
IOobject::AUTO_WRITE
|
||||||
|
),
|
||||||
|
mesh,
|
||||||
|
runTime.deltaT(),
|
||||||
|
zeroGradientFvPatchScalarField::typeName
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
const dictionary& piso = mesh.solutionDict().subDict("PISO");
|
||||||
|
|
||||||
|
bool momentumPredictor = true;
|
||||||
|
if (piso.found("momentumPredictor"))
|
||||||
|
{
|
||||||
|
momentumPredictor = Switch(piso.lookup("momentumPredictor"));
|
||||||
|
}
|
||||||
|
|
||||||
|
bool momentumPredictorSave = momentumPredictor;
|
||||||
|
momentumPredictor = false;
|
||||||
|
# include "UEqn.H"
|
||||||
|
momentumPredictor = momentumPredictorSave;
|
||||||
|
|
||||||
|
rAU = 1.0/UEqn.A();
|
||||||
|
}
|
149
applications/solvers/incompressible/icoDyMFoam/icoDyMFoam.C
Normal file
149
applications/solvers/incompressible/icoDyMFoam/icoDyMFoam.C
Normal file
|
@ -0,0 +1,149 @@
|
||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright held by original author
|
||||||
|
\\/ M anipulation |
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
License
|
||||||
|
This file is part of OpenFOAM.
|
||||||
|
|
||||||
|
OpenFOAM is free software; you can redistribute it and/or modify it
|
||||||
|
under the terms of the GNU General Public License as published by the
|
||||||
|
Free Software Foundation; either version 2 of the License, or (at your
|
||||||
|
option) any later version.
|
||||||
|
|
||||||
|
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with OpenFOAM; if not, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
Application
|
||||||
|
icoDyMFoam
|
||||||
|
|
||||||
|
Description
|
||||||
|
Transient solver for incompressible, laminar flow of Newtonian fluids
|
||||||
|
with dynamic mesh.
|
||||||
|
|
||||||
|
Author
|
||||||
|
Hrvoje Jasak, Wikki Ltd. All rights reserved.
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#include "fvCFD.H"
|
||||||
|
#include "dynamicFvMesh.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
int main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
# include "setRootCase.H"
|
||||||
|
# include "createTime.H"
|
||||||
|
# include "createDynamicFvMesh.H"
|
||||||
|
# include "initContinuityErrs.H"
|
||||||
|
# include "initTotalVolume.H"
|
||||||
|
# include "createFields.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
Info<< "\nStarting time loop\n" << endl;
|
||||||
|
|
||||||
|
while (runTime.run())
|
||||||
|
{
|
||||||
|
# include "readControls.H"
|
||||||
|
# include "checkTotalVolume.H"
|
||||||
|
# include "CourantNo.H"
|
||||||
|
|
||||||
|
# include "setDeltaT.H"
|
||||||
|
|
||||||
|
// Make the fluxes absolute
|
||||||
|
fvc::makeAbsolute(phi, U);
|
||||||
|
|
||||||
|
runTime++;
|
||||||
|
|
||||||
|
Info<< "Time = " << runTime.timeName() << nl << endl;
|
||||||
|
|
||||||
|
bool meshChanged = mesh.update();
|
||||||
|
|
||||||
|
# include "volContinuity.H"
|
||||||
|
|
||||||
|
if (correctPhi && meshChanged)
|
||||||
|
{
|
||||||
|
// Fluxes will be corrected to absolute velocity
|
||||||
|
// HJ, 6/Feb/2009
|
||||||
|
# include "correctPhi.H"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Make the fluxes relative to the mesh motion
|
||||||
|
fvc::makeRelative(phi, U);
|
||||||
|
|
||||||
|
if (meshChanged)
|
||||||
|
{
|
||||||
|
# include "CourantNo.H"
|
||||||
|
}
|
||||||
|
|
||||||
|
# include "UEqn.H"
|
||||||
|
|
||||||
|
// --- PISO loop
|
||||||
|
|
||||||
|
for (int corr=0; corr<nCorr; corr++)
|
||||||
|
{
|
||||||
|
rAU = 1.0/UEqn.A();
|
||||||
|
|
||||||
|
U = rAU*UEqn.H();
|
||||||
|
phi = (fvc::interpolate(U) & mesh.Sf());
|
||||||
|
//+ fvc::ddtPhiCorr(rAU, U, phi);
|
||||||
|
|
||||||
|
adjustPhi(phi, U, p);
|
||||||
|
|
||||||
|
for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
|
||||||
|
{
|
||||||
|
fvScalarMatrix pEqn
|
||||||
|
(
|
||||||
|
fvm::laplacian(rAU, p) == fvc::div(phi)
|
||||||
|
);
|
||||||
|
|
||||||
|
pEqn.setReference(pRefCell, pRefValue);
|
||||||
|
|
||||||
|
if (corr == nCorr - 1 && nonOrth == nNonOrthCorr)
|
||||||
|
{
|
||||||
|
pEqn.solve(mesh.solver(p.name() + "Final"));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pEqn.solve(mesh.solver(p.name()));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (nonOrth == nNonOrthCorr)
|
||||||
|
{
|
||||||
|
phi -= pEqn.flux();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# include "continuityErrs.H"
|
||||||
|
|
||||||
|
// Make the fluxes relative to the mesh motion
|
||||||
|
fvc::makeRelative(phi, U);
|
||||||
|
|
||||||
|
U -= rAU*fvc::grad(p);
|
||||||
|
U.correctBoundaryConditions();
|
||||||
|
}
|
||||||
|
|
||||||
|
runTime.write();
|
||||||
|
|
||||||
|
Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
|
||||||
|
<< " ClockTime = " << runTime.elapsedClockTime() << " s"
|
||||||
|
<< nl << endl;
|
||||||
|
}
|
||||||
|
|
||||||
|
Info<< "End\n" << endl;
|
||||||
|
|
||||||
|
return(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
|
@ -0,0 +1,14 @@
|
||||||
|
# include "readTimeControls.H"
|
||||||
|
# include "readPISOControls.H"
|
||||||
|
|
||||||
|
bool correctPhi = false;
|
||||||
|
if (piso.found("correctPhi"))
|
||||||
|
{
|
||||||
|
correctPhi = Switch(piso.lookup("correctPhi"));
|
||||||
|
}
|
||||||
|
|
||||||
|
bool checkMeshCourantNo = false;
|
||||||
|
if (piso.found("checkMeshCourantNo"))
|
||||||
|
{
|
||||||
|
checkMeshCourantNo = Switch(piso.lookup("checkMeshCourantNo"));
|
||||||
|
}
|
|
@ -24,12 +24,6 @@
|
||||||
pcorrTypes
|
pcorrTypes
|
||||||
);
|
);
|
||||||
|
|
||||||
# include "continuityErrs.H"
|
|
||||||
|
|
||||||
// Flux predictor
|
|
||||||
phi = (fvc::interpolate(U) & mesh.Sf());
|
|
||||||
rAU == runTime.deltaT();
|
|
||||||
|
|
||||||
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
|
for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)
|
||||||
{
|
{
|
||||||
fvScalarMatrix pcorrEqn
|
fvScalarMatrix pcorrEqn
|
||||||
|
@ -50,4 +44,4 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#include "continuityErrs.H"
|
||||||
|
|
|
@ -54,17 +54,37 @@
|
||||||
scalar pRefValue = 0.0;
|
scalar pRefValue = 0.0;
|
||||||
setRefCell(p, mesh.solutionDict().subDict("PISO"), pRefCell, pRefValue);
|
setRefCell(p, mesh.solutionDict().subDict("PISO"), pRefCell, pRefValue);
|
||||||
|
|
||||||
scalar totalVolume = sum(mesh.V()).value();
|
|
||||||
|
|
||||||
|
Info<< "Reading field rAU if present\n" << endl;
|
||||||
volScalarField rAU
|
volScalarField rAU
|
||||||
(
|
(
|
||||||
IOobject
|
IOobject
|
||||||
(
|
(
|
||||||
"rAU",
|
"rAU",
|
||||||
runTime.timeName(),
|
runTime.timeName(),
|
||||||
mesh
|
mesh,
|
||||||
|
IOobject::READ_IF_PRESENT,
|
||||||
|
IOobject::AUTO_WRITE
|
||||||
),
|
),
|
||||||
mesh,
|
mesh,
|
||||||
runTime.deltaT(),
|
runTime.deltaT(),
|
||||||
zeroGradientFvPatchScalarField::typeName
|
zeroGradientFvPatchScalarField::typeName
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
const dictionary& piso = mesh.solutionDict().subDict("PISO");
|
||||||
|
|
||||||
|
bool momentumPredictor = true;
|
||||||
|
if (piso.found("momentumPredictor"))
|
||||||
|
{
|
||||||
|
momentumPredictor = Switch(piso.lookup("momentumPredictor"));
|
||||||
|
}
|
||||||
|
|
||||||
|
bool momentumPredictorSave = momentumPredictor;
|
||||||
|
momentumPredictor = false;
|
||||||
|
# include "UEqn.H"
|
||||||
|
momentumPredictor = momentumPredictorSave;
|
||||||
|
|
||||||
|
rAU = 1.0/UEqn.A();
|
||||||
|
}
|
||||||
|
|
|
@ -46,6 +46,7 @@ int main(int argc, char *argv[])
|
||||||
# include "createTime.H"
|
# include "createTime.H"
|
||||||
# include "createDynamicFvMesh.H"
|
# include "createDynamicFvMesh.H"
|
||||||
# include "initContinuityErrs.H"
|
# include "initContinuityErrs.H"
|
||||||
|
# include "initTotalVolume.H"
|
||||||
# include "createFields.H"
|
# include "createFields.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
|
@ -55,7 +55,7 @@ cleanTimeDirectories ()
|
||||||
zeros=`printf %0${nZeros}d 0`
|
zeros=`printf %0${nZeros}d 0`
|
||||||
nZeros=$(($nZeros + 1))
|
nZeros=$(($nZeros + 1))
|
||||||
done
|
done
|
||||||
rm -rf ./{[1-9]*,-[1-9]*,log,log.*,log-*,logSummary.*,.fxLock,*.xml,ParaView*,paraFoam*,*.OpenFOAM} > /dev/null 2>&1
|
rm -rf ./[1-9]* ./-[1-9]* ./log ./log.* ./log-* ./logSummary.* ./.fxLock ./*.xml ./ParaView* ./paraFoam* ./*.OpenFOAM > /dev/null 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
cleanCase ()
|
cleanCase ()
|
||||||
|
@ -66,10 +66,20 @@ cleanCase ()
|
||||||
rm -rf forces* > /dev/null 2>&1
|
rm -rf forces* > /dev/null 2>&1
|
||||||
|
|
||||||
rm -rf system/machines \
|
rm -rf system/machines \
|
||||||
constant/polyMesh/{allOwner*,cell*,face*,meshModifiers*} \
|
constant/polyMesh/allOwner* \
|
||||||
constant/polyMesh/{owner*,neighbour*,point*,edge*} \
|
constant/polyMesh/cell* \
|
||||||
constant/polyMesh/{cellLevel*,pointLevel*,refinementHistory*,surfaceIndex*} \
|
constant/polyMesh/face* \
|
||||||
constant/{cellToRegion,cellLevel*,pointLevel*} \
|
constant/polyMesh/meshModifiers* \
|
||||||
|
constant/polyMesh/owner* \
|
||||||
|
constant/polyMesh/neighbour* \
|
||||||
|
constant/polyMesh/point* \
|
||||||
|
constant/polyMesh/edge* \
|
||||||
|
constant/polyMesh/zoneToPatchName \
|
||||||
|
constant/polyMesh/cellLevel* \
|
||||||
|
constant/polyMesh/pointLevel* \
|
||||||
|
constant/polyMesh/refinementHistory*, \
|
||||||
|
constant/polyMesh/surfaceIndex* \
|
||||||
|
constant/cellToRegion \
|
||||||
constant/polyMesh/sets/ \
|
constant/polyMesh/sets/ \
|
||||||
VTK \
|
VTK \
|
||||||
> /dev/null 2>&1
|
> /dev/null 2>&1
|
||||||
|
|
|
@ -65,6 +65,12 @@ compileApplication ()
|
||||||
wmake $1
|
wmake $1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
compileLibrary ()
|
||||||
|
{
|
||||||
|
echo "Compiling $1 application"
|
||||||
|
wmake libso $1
|
||||||
|
}
|
||||||
|
|
||||||
cloneCase ()
|
cloneCase ()
|
||||||
{
|
{
|
||||||
if [ -d $2 ] ; then
|
if [ -d $2 ] ; then
|
||||||
|
|
|
@ -911,7 +911,9 @@ Tolerances
|
||||||
patchToPatchProjectionTol 0.05;
|
patchToPatchProjectionTol 0.05;
|
||||||
|
|
||||||
// Thermophysical models
|
// Thermophysical models
|
||||||
specieThermoTol 1e-4;
|
specieThermoTol 1e-4;
|
||||||
|
speciesThermoTJump 20;
|
||||||
|
speciesThermoMaxIter 100;
|
||||||
|
|
||||||
// Intersection tolerance
|
// Intersection tolerance
|
||||||
intersectionPlanarTol 0.2;
|
intersectionPlanarTol 0.2;
|
||||||
|
|
|
@ -81,10 +81,11 @@ protected:
|
||||||
|
|
||||||
//- Face restriction addressing array.
|
//- Face restriction addressing array.
|
||||||
// Maps from the finer to the coarser level.
|
// Maps from the finer to the coarser level.
|
||||||
// Positive indices map the finer faces which form part of the boundary
|
// Positive indices map the finer faces which form part of the
|
||||||
// of the coarser cells to the corresponding coarser cell face.
|
// boundary of the coarser cells to the corresponding coarser
|
||||||
|
// cell face.
|
||||||
// Negative indices map the finer faces which are internal to the
|
// Negative indices map the finer faces which are internal to the
|
||||||
// coarser cells to minus the corresponding coarser cell index minus 1.
|
// coarser cells to minus the corresponding coarser cell index minus 1
|
||||||
PtrList<labelList> faceRestrictAddressing_;
|
PtrList<labelList> faceRestrictAddressing_;
|
||||||
|
|
||||||
//- Hierarchy of mesh addressing
|
//- Hierarchy of mesh addressing
|
||||||
|
|
|
@ -73,7 +73,7 @@ class pointMesh
|
||||||
public:
|
public:
|
||||||
|
|
||||||
// Declare name of the class and its debug switch
|
// Declare name of the class and its debug switch
|
||||||
ClassName("pointMesh");
|
TypeName("pointMesh");
|
||||||
|
|
||||||
typedef pointMesh Mesh;
|
typedef pointMesh Mesh;
|
||||||
typedef pointBoundaryMesh BoundaryMesh;
|
typedef pointBoundaryMesh BoundaryMesh;
|
||||||
|
|
|
@ -1226,7 +1226,6 @@ void Foam::polyMesh::setOldPoints
|
||||||
oldPointsPtr_ = new pointField::subField(oldAllPoints(), nPoints());
|
oldPointsPtr_ = new pointField::subField(oldAllPoints(), nPoints());
|
||||||
curMotionTimeIndex_ = 0;
|
curMotionTimeIndex_ = 0;
|
||||||
primitiveMesh::clearGeom();
|
primitiveMesh::clearGeom();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -28,6 +28,7 @@ License
|
||||||
#include "primitiveMesh.H"
|
#include "primitiveMesh.H"
|
||||||
#include "globalMeshData.H"
|
#include "globalMeshData.H"
|
||||||
#include "demandDrivenData.H"
|
#include "demandDrivenData.H"
|
||||||
|
#include "meshObjectBase.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
@ -90,6 +91,9 @@ void Foam::polyMesh::clearGeom()
|
||||||
// Reset valid directions (could change with rotation)
|
// Reset valid directions (could change with rotation)
|
||||||
geometricD_ = Vector<label>::zero;
|
geometricD_ = Vector<label>::zero;
|
||||||
solutionD_ = Vector<label>::zero;
|
solutionD_ = Vector<label>::zero;
|
||||||
|
|
||||||
|
// Move points all mesh objects. HJ, 13/Oct/2010
|
||||||
|
meshObjectBase::allMovePoints(*this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -27,6 +27,8 @@ License
|
||||||
#include "polyMesh.H"
|
#include "polyMesh.H"
|
||||||
#include "Time.H"
|
#include "Time.H"
|
||||||
#include "cellIOList.H"
|
#include "cellIOList.H"
|
||||||
|
#include "meshObjectBase.H"
|
||||||
|
#include "mapPolyMesh.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
@ -394,6 +396,11 @@ Foam::polyMesh::readUpdateState Foam::polyMesh::readUpdate()
|
||||||
cellZones_.set(czI, newCellZones[czI].clone(cellZones_));
|
cellZones_.set(czI, newCellZones[czI].clone(cellZones_));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Instantiate a dummy mapPolyMesh
|
||||||
|
autoPtr<mapPolyMesh> mapPtr(new mapPolyMesh(*this));
|
||||||
|
|
||||||
|
// Execute dummy topo change on all mesh objects
|
||||||
|
meshObjectBase::allUpdateTopology(*this, mapPtr());
|
||||||
|
|
||||||
if (boundaryChanged)
|
if (boundaryChanged)
|
||||||
{
|
{
|
||||||
|
@ -440,6 +447,9 @@ Foam::polyMesh::readUpdateState Foam::polyMesh::readUpdate()
|
||||||
geometricD_ = Vector<label>::zero;
|
geometricD_ = Vector<label>::zero;
|
||||||
solutionD_ = Vector<label>::zero;
|
solutionD_ = Vector<label>::zero;
|
||||||
|
|
||||||
|
// Move points in all mesh objects
|
||||||
|
meshObjectBase::allMovePoints<polyMesh>(*this);
|
||||||
|
|
||||||
return polyMesh::POINTS_MOVED;
|
return polyMesh::POINTS_MOVED;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -577,7 +577,7 @@ Foam::label Foam::directTopoChange::getCellOrder
|
||||||
// Now we have new-to-old in newOrder.
|
// Now we have new-to-old in newOrder.
|
||||||
newOrder.setSize(cellInOrder);
|
newOrder.setSize(cellInOrder);
|
||||||
|
|
||||||
// Invert to get old-to-new. Make sure removed (i.e. unmapped) cells are -1.
|
// Invert to get old-to-new. Make sure removed (i.e. unmapped) cells are -1
|
||||||
oldToNew = invert(cellCellAddressing.size(), newOrder);
|
oldToNew = invert(cellCellAddressing.size(), newOrder);
|
||||||
|
|
||||||
return cellInOrder;
|
return cellInOrder;
|
||||||
|
@ -1487,7 +1487,8 @@ void Foam::directTopoChange::resetZones
|
||||||
{
|
{
|
||||||
if (newZoneAddr[i] < pointMap_.size())
|
if (newZoneAddr[i] < pointMap_.size())
|
||||||
{
|
{
|
||||||
curPzRnb[i] = oldZone.whichPoint(pointMap_[newZoneAddr[i]]);
|
curPzRnb[i] =
|
||||||
|
oldZone.whichPoint(pointMap_[newZoneAddr[i]]);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1719,13 +1720,13 @@ void Foam::directTopoChange::calcFaceZonePointMap
|
||||||
|
|
||||||
curFzPointRnb.setSize(newZoneMeshPoints.size());
|
curFzPointRnb.setSize(newZoneMeshPoints.size());
|
||||||
|
|
||||||
if( zoneI < oldFaceZoneMeshPointMaps.size() )
|
if( zoneI < oldFaceZoneMeshPointMaps.size() )
|
||||||
{
|
{
|
||||||
//HR 22.11.09: cannot take reference to zero element of
|
//HR 22.11.09: cannot take reference to zero element of
|
||||||
// oldFaceZoneMeshPointMaps. It may be empty. Hence this
|
// oldFaceZoneMeshPointMaps. It may be empty. Hence this
|
||||||
// if-statement needs to move out of the loop
|
// if-statement needs to move out of the loop
|
||||||
const Map<label>& oldZoneMeshPointMap =
|
const Map<label>& oldZoneMeshPointMap =
|
||||||
oldFaceZoneMeshPointMaps[zoneI];
|
oldFaceZoneMeshPointMaps[zoneI];
|
||||||
|
|
||||||
forAll (newZoneMeshPoints, pointI)
|
forAll (newZoneMeshPoints, pointI)
|
||||||
{
|
{
|
||||||
|
@ -2034,7 +2035,8 @@ void Foam::directTopoChange::compactAndReorder
|
||||||
{
|
{
|
||||||
//HR 22.11.09: Fixes error when faceZone is empty
|
//HR 22.11.09: Fixes error when faceZone is empty
|
||||||
label maxFaceIndex = -1;
|
label maxFaceIndex = -1;
|
||||||
if ( mesh.faceZones()[zoneI].size() > 0 )
|
|
||||||
|
if ( mesh.faceZones()[zoneI].size() > 0 )
|
||||||
{
|
{
|
||||||
maxFaceIndex = max(mesh.faceZones()[zoneI]);
|
maxFaceIndex = max(mesh.faceZones()[zoneI]);
|
||||||
}
|
}
|
||||||
|
@ -2211,8 +2213,8 @@ void Foam::directTopoChange::addMesh
|
||||||
const pointZoneMesh& pointZones = mesh.pointZones();
|
const pointZoneMesh& pointZones = mesh.pointZones();
|
||||||
|
|
||||||
// Resize
|
// Resize
|
||||||
points_.setSize(points_.size() + points.size());
|
points_.setCapacity(points_.size() + points.size());
|
||||||
pointMap_.setSize(pointMap_.size() + points.size());
|
pointMap_.setCapacity(pointMap_.size() + points.size());
|
||||||
pointZone_.resize(pointZone_.size() + points.size()/100);
|
pointZone_.resize(pointZone_.size() + points.size()/100);
|
||||||
|
|
||||||
// Precalc offset zones
|
// Precalc offset zones
|
||||||
|
@ -2251,11 +2253,11 @@ void Foam::directTopoChange::addMesh
|
||||||
// always equals nCells
|
// always equals nCells
|
||||||
label nAllCells = mesh.nCells();
|
label nAllCells = mesh.nCells();
|
||||||
|
|
||||||
cellMap_.setSize(cellMap_.size() + nAllCells);
|
cellMap_.setCapacity(cellMap_.size() + nAllCells);
|
||||||
cellFromPoint_.resize(cellFromPoint_.size() + nAllCells/100);
|
cellFromPoint_.resize(cellFromPoint_.size() + nAllCells/100);
|
||||||
cellFromEdge_.resize(cellFromEdge_.size() + nAllCells/100);
|
cellFromEdge_.resize(cellFromEdge_.size() + nAllCells/100);
|
||||||
cellFromFace_.resize(cellFromFace_.size() + nAllCells/100);
|
cellFromFace_.resize(cellFromFace_.size() + nAllCells/100);
|
||||||
cellZone_.setSize(cellZone_.size() + nAllCells);
|
cellZone_.setCapacity(cellZone_.size() + nAllCells);
|
||||||
|
|
||||||
|
|
||||||
// Precalc offset zones
|
// Precalc offset zones
|
||||||
|
@ -2311,11 +2313,11 @@ void Foam::directTopoChange::addMesh
|
||||||
// Resize
|
// Resize
|
||||||
label nAllFaces = mesh.faces().size();
|
label nAllFaces = mesh.faces().size();
|
||||||
|
|
||||||
faces_.setSize(faces_.size() + nAllFaces);
|
faces_.setCapacity(faces_.size() + nAllFaces);
|
||||||
region_.setSize(region_.size() + nAllFaces);
|
region_.setCapacity(region_.size() + nAllFaces);
|
||||||
faceOwner_.setSize(faceOwner_.size() + nAllFaces);
|
faceOwner_.setCapacity(faceOwner_.size() + nAllFaces);
|
||||||
faceNeighbour_.setSize(faceNeighbour_.size() + nAllFaces);
|
faceNeighbour_.setCapacity(faceNeighbour_.size() + nAllFaces);
|
||||||
faceMap_.setSize(faceMap_.size() + nAllFaces);
|
faceMap_.setCapacity(faceMap_.size() + nAllFaces);
|
||||||
faceFromPoint_.resize(faceFromPoint_.size() + nAllFaces/100);
|
faceFromPoint_.resize(faceFromPoint_.size() + nAllFaces/100);
|
||||||
faceFromEdge_.resize(faceFromEdge_.size() + nAllFaces/100);
|
faceFromEdge_.resize(faceFromEdge_.size() + nAllFaces/100);
|
||||||
flipFaceFlux_.resize(flipFaceFlux_.size() + nAllFaces/100);
|
flipFaceFlux_.resize(flipFaceFlux_.size() + nAllFaces/100);
|
||||||
|
|
|
@ -47,7 +47,7 @@ namespace Foam
|
||||||
{
|
{
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
Class repatchPolyTopoChanger Declaration
|
Class repatchPolyTopoChanger Declaration
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
class repatchPolyTopoChanger
|
class repatchPolyTopoChanger
|
||||||
|
|
|
@ -59,6 +59,7 @@ void boundMinMax
|
||||||
const dimensionedScalar& vsf1
|
const dimensionedScalar& vsf1
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
} // End namespace Foam
|
} // End namespace Foam
|
||||||
|
|
|
@ -37,7 +37,6 @@ License
|
||||||
#include "MapFvFields.H"
|
#include "MapFvFields.H"
|
||||||
#include "fvMeshMapper.H"
|
#include "fvMeshMapper.H"
|
||||||
#include "mapClouds.H"
|
#include "mapClouds.H"
|
||||||
#include "meshObjectBase.H"
|
|
||||||
|
|
||||||
#include "volPointInterpolation.H"
|
#include "volPointInterpolation.H"
|
||||||
#include "extendedLeastSquaresVectors.H"
|
#include "extendedLeastSquaresVectors.H"
|
||||||
|
@ -78,9 +77,8 @@ void Foam::fvMesh::clearGeom()
|
||||||
// needs to be saved.
|
// needs to be saved.
|
||||||
|
|
||||||
// Geometry dependent object updated through call-back
|
// Geometry dependent object updated through call-back
|
||||||
// "Reserve" optional delete. Reconsider
|
// and handled by polyMesh
|
||||||
// HJ, 29/Aug/2010
|
// HJ, 29/Aug/2010
|
||||||
// meshObjectBase::allDelete(*this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -89,9 +87,8 @@ void Foam::fvMesh::clearAddressing()
|
||||||
deleteDemandDrivenData(lduPtr_);
|
deleteDemandDrivenData(lduPtr_);
|
||||||
|
|
||||||
// Geometry dependent object updated through call-back
|
// Geometry dependent object updated through call-back
|
||||||
// "Reserve" optional delete. Reconsider
|
// and handled by polyMesh
|
||||||
// HJ, 29/Aug/2010
|
// HJ, 29/Aug/2010
|
||||||
// meshObjectBase::allDelete(*this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -528,9 +525,6 @@ void Foam::fvMesh::syncUpdateMesh()
|
||||||
// This is a temporary solution
|
// This is a temporary solution
|
||||||
surfaceInterpolation::movePoints();
|
surfaceInterpolation::movePoints();
|
||||||
|
|
||||||
// Instantiate a dummy mapPolyMesh
|
|
||||||
autoPtr<mapPolyMesh> mapPtr(new mapPolyMesh(*this));
|
|
||||||
|
|
||||||
// Function object update moved to polyMesh
|
// Function object update moved to polyMesh
|
||||||
// HJ, 29/Aug/2010
|
// HJ, 29/Aug/2010
|
||||||
}
|
}
|
||||||
|
|
|
@ -81,7 +81,7 @@ class volPointInterpolation
|
||||||
public:
|
public:
|
||||||
|
|
||||||
// Declare name of the class and its debug switch
|
// Declare name of the class and its debug switch
|
||||||
ClassName("volPointInterpolation");
|
TypeName("volPointInterpolation");
|
||||||
|
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
|
@ -74,7 +74,7 @@ Foam::bicgSolver::bicgSolver
|
||||||
coupleBouCoeffs,
|
coupleBouCoeffs,
|
||||||
coupleIntCoeffs,
|
coupleIntCoeffs,
|
||||||
interfaces,
|
interfaces,
|
||||||
dict.subDict("preconditioner")
|
dict
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
{}
|
{}
|
||||||
|
|
|
@ -78,7 +78,7 @@ Foam::bicgStabSolver::bicgStabSolver
|
||||||
coupleBouCoeffs,
|
coupleBouCoeffs,
|
||||||
coupleIntCoeffs,
|
coupleIntCoeffs,
|
||||||
interfaces,
|
interfaces,
|
||||||
dict.subDict("preconditioner")
|
dict
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
{}
|
{}
|
||||||
|
|
|
@ -74,7 +74,7 @@ Foam::cgSolver::cgSolver
|
||||||
coupleBouCoeffs,
|
coupleBouCoeffs,
|
||||||
coupleIntCoeffs,
|
coupleIntCoeffs,
|
||||||
interfaces,
|
interfaces,
|
||||||
dict.subDict("preconditioner")
|
dict
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
{}
|
{}
|
||||||
|
|
|
@ -146,7 +146,7 @@ Foam::deflationSolver::deflationSolver
|
||||||
coupleBouCoeffs,
|
coupleBouCoeffs,
|
||||||
coupleIntCoeffs,
|
coupleIntCoeffs,
|
||||||
interfaces,
|
interfaces,
|
||||||
dict.subDict("preconditioner")
|
dict
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
rpmOrder_(readLabel(dict.lookup("rpmOrder"))),
|
rpmOrder_(readLabel(dict.lookup("rpmOrder"))),
|
||||||
|
|
|
@ -109,7 +109,7 @@ Foam::gmresSolver::gmresSolver
|
||||||
coupleBouCoeffs,
|
coupleBouCoeffs,
|
||||||
coupleIntCoeffs,
|
coupleIntCoeffs,
|
||||||
interfaces,
|
interfaces,
|
||||||
dict.subDict("preconditioner")
|
dict
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
nDirs_(readLabel(dict.lookup("nDirections")))
|
nDirs_(readLabel(dict.lookup("nDirections")))
|
||||||
|
|
|
@ -114,10 +114,12 @@ private:
|
||||||
// Private member functions
|
// Private member functions
|
||||||
|
|
||||||
//- Check given temperature is within the range of the fitted coeffs
|
//- Check given temperature is within the range of the fitted coeffs
|
||||||
inline void checkT(const scalar T) const;
|
// Note: bounding T within range. HJ, 12/Oct/2010
|
||||||
|
inline void checkT(scalar& T) const;
|
||||||
|
|
||||||
//- Return the coefficients corresponding to the given temperature
|
//- Return the coefficients corresponding to the given temperature
|
||||||
inline const coeffArray& coeffs(const scalar T) const;
|
// Note: bounding T within range. HJ, 12/Oct/2010
|
||||||
|
inline const coeffArray& coeffs(scalar& T) const;
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
@ -145,19 +147,23 @@ public:
|
||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Heat capacity at constant pressure [J/(kmol K)]
|
//- Heat capacity at constant pressure [J/(kmol K)]
|
||||||
inline scalar cp(const scalar T) const;
|
// Note: bounding T within range. HJ, 12/Oct/2010
|
||||||
|
inline scalar cp(scalar T) const;
|
||||||
|
|
||||||
//- Enthalpy [J/kmol]
|
//- Enthalpy [J/kmol]
|
||||||
inline scalar h(const scalar T) const;
|
// Note: bounding T within range. HJ, 12/Oct/2010
|
||||||
|
inline scalar h(scalar T) const;
|
||||||
|
|
||||||
//- Sensible enthalpy [J/kmol]
|
//- Sensible enthalpy [J/kmol]
|
||||||
inline scalar hs(const scalar T) const;
|
// Note: bounding T within range. HJ, 12/Oct/2010
|
||||||
|
inline scalar hs(scalar T) const;
|
||||||
|
|
||||||
//- Chemical enthalpy [J/kmol]
|
//- Chemical enthalpy [J/kmol]
|
||||||
inline scalar hc() const;
|
inline scalar hc() const;
|
||||||
|
|
||||||
//- Entropy [J/(kmol K)]
|
//- Entropy [J/(kmol K)]
|
||||||
inline scalar s(const scalar T) const;
|
// Note: bounding T within range. HJ, 12/Oct/2010
|
||||||
|
inline scalar s(scalar T) const;
|
||||||
|
|
||||||
|
|
||||||
// Member operators
|
// Member operators
|
||||||
|
|
|
@ -54,17 +54,21 @@ inline Foam::janafThermo<equationOfState>::janafThermo
|
||||||
|
|
||||||
|
|
||||||
template<class equationOfState>
|
template<class equationOfState>
|
||||||
inline void Foam::janafThermo<equationOfState>::checkT(const scalar T) const
|
inline void Foam::janafThermo<equationOfState>::checkT(scalar& T) const
|
||||||
{
|
{
|
||||||
if (T < Tlow_ || T > Thigh_)
|
if (T < Tlow_ || T > Thigh_)
|
||||||
{
|
{
|
||||||
FatalErrorIn
|
// Improvements: graceful exit with recovery. HJ, 11/Oct/2010
|
||||||
|
InfoIn
|
||||||
(
|
(
|
||||||
"janafThermo<equationOfState>::checkT(const scalar T) const"
|
"janafThermo<equationOfState>::checkT(scalar& T) const"
|
||||||
) << "attempt to use janafThermo<equationOfState>"
|
) << "attempt to use janafThermo<equationOfState>"
|
||||||
" out of temperature range "
|
" out of temperature range "
|
||||||
<< Tlow_ << " -> " << Thigh_ << "; T = " << T
|
<< Tlow_ << " -> " << Thigh_ << "; T = " << T
|
||||||
<< abort(FatalError);
|
<< endl;
|
||||||
|
|
||||||
|
// Bracket T to avoid out-of-range error
|
||||||
|
T = Foam::min(Thigh_, Foam::max(T, Tlow_));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -73,9 +77,11 @@ template<class equationOfState>
|
||||||
inline const typename Foam::janafThermo<equationOfState>::coeffArray&
|
inline const typename Foam::janafThermo<equationOfState>::coeffArray&
|
||||||
Foam::janafThermo<equationOfState>::coeffs
|
Foam::janafThermo<equationOfState>::coeffs
|
||||||
(
|
(
|
||||||
const scalar T
|
scalar& T
|
||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
|
// Note: T will be bounded by checkT in coeffs(T). No longer const
|
||||||
|
// HJ, 12/Oct/2010
|
||||||
checkT(T);
|
checkT(T);
|
||||||
|
|
||||||
if (T < Tcommon_)
|
if (T < Tcommon_)
|
||||||
|
@ -103,7 +109,7 @@ inline Foam::janafThermo<equationOfState>::janafThermo
|
||||||
Thigh_(jt.Thigh_),
|
Thigh_(jt.Thigh_),
|
||||||
Tcommon_(jt.Tcommon_)
|
Tcommon_(jt.Tcommon_)
|
||||||
{
|
{
|
||||||
for (register label coefLabel=0; coefLabel<nCoeffs_; coefLabel++)
|
for (register label coefLabel = 0; coefLabel < nCoeffs_; coefLabel++)
|
||||||
{
|
{
|
||||||
highCpCoeffs_[coefLabel] = jt.highCpCoeffs_[coefLabel];
|
highCpCoeffs_[coefLabel] = jt.highCpCoeffs_[coefLabel];
|
||||||
lowCpCoeffs_[coefLabel] = jt.lowCpCoeffs_[coefLabel];
|
lowCpCoeffs_[coefLabel] = jt.lowCpCoeffs_[coefLabel];
|
||||||
|
@ -116,7 +122,7 @@ inline Foam::janafThermo<equationOfState>::janafThermo
|
||||||
template<class equationOfState>
|
template<class equationOfState>
|
||||||
inline Foam::scalar Foam::janafThermo<equationOfState>::cp
|
inline Foam::scalar Foam::janafThermo<equationOfState>::cp
|
||||||
(
|
(
|
||||||
const scalar T
|
scalar T
|
||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
const coeffArray& a = coeffs(T);
|
const coeffArray& a = coeffs(T);
|
||||||
|
@ -127,7 +133,7 @@ inline Foam::scalar Foam::janafThermo<equationOfState>::cp
|
||||||
template<class equationOfState>
|
template<class equationOfState>
|
||||||
inline Foam::scalar Foam::janafThermo<equationOfState>::h
|
inline Foam::scalar Foam::janafThermo<equationOfState>::h
|
||||||
(
|
(
|
||||||
const scalar T
|
scalar T
|
||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
const coeffArray& a = coeffs(T);
|
const coeffArray& a = coeffs(T);
|
||||||
|
@ -142,7 +148,7 @@ inline Foam::scalar Foam::janafThermo<equationOfState>::h
|
||||||
template<class equationOfState>
|
template<class equationOfState>
|
||||||
inline Foam::scalar Foam::janafThermo<equationOfState>::hs
|
inline Foam::scalar Foam::janafThermo<equationOfState>::hs
|
||||||
(
|
(
|
||||||
const scalar T
|
scalar T
|
||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
return h(T) - hc();
|
return h(T) - hc();
|
||||||
|
@ -167,9 +173,12 @@ inline Foam::scalar Foam::janafThermo<equationOfState>::hc() const
|
||||||
template<class equationOfState>
|
template<class equationOfState>
|
||||||
inline Foam::scalar Foam::janafThermo<equationOfState>::s
|
inline Foam::scalar Foam::janafThermo<equationOfState>::s
|
||||||
(
|
(
|
||||||
const scalar T
|
scalar T
|
||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
|
// Note: T will be bounded by checkT in coeffs(T). No longer const
|
||||||
|
// HJ, 12/Oct/2010
|
||||||
|
|
||||||
const coeffArray& a = coeffs(T);
|
const coeffArray& a = coeffs(T);
|
||||||
return
|
return
|
||||||
this->RR*
|
this->RR*
|
||||||
|
|
|
@ -41,6 +41,13 @@ const Foam::scalar Foam::specieThermo<thermo>::tol_
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
template<class thermo>
|
||||||
|
const Foam::scalar Foam::specieThermo<thermo>::TJump_
|
||||||
|
(
|
||||||
|
debug::tolerances("speciesThermoTJump", 20)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
template<class thermo>
|
template<class thermo>
|
||||||
const int Foam::specieThermo<thermo>::maxIter_
|
const int Foam::specieThermo<thermo>::maxIter_
|
||||||
(
|
(
|
||||||
|
|
|
@ -98,13 +98,16 @@ class specieThermo
|
||||||
//- Convergence tolerance of energy -> temperature inversion functions
|
//- Convergence tolerance of energy -> temperature inversion functions
|
||||||
static const scalar tol_;
|
static const scalar tol_;
|
||||||
|
|
||||||
|
//- Max temperature jump of energy -> temperature inversion functions
|
||||||
|
static const scalar TJump_;
|
||||||
|
|
||||||
//- Max number of iterations in energy->temperature inversion functions
|
//- Max number of iterations in energy->temperature inversion functions
|
||||||
static const int maxIter_;
|
static const int maxIter_;
|
||||||
|
|
||||||
|
|
||||||
// Private member functions
|
// Private member functions
|
||||||
|
|
||||||
//- return the temperature corresponding to the value of the
|
//- Return the temperature corresponding to the value of the
|
||||||
// thermodynamic property f, given the function f = F(T) and dF(T)/dT
|
// thermodynamic property f, given the function f = F(T) and dF(T)/dT
|
||||||
inline scalar T
|
inline scalar T
|
||||||
(
|
(
|
||||||
|
@ -131,7 +134,7 @@ public:
|
||||||
|
|
||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
// Fundamaental properties
|
// Fundamental properties
|
||||||
// (These functions must be provided in derived types)
|
// (These functions must be provided in derived types)
|
||||||
|
|
||||||
// Heat capacity at constant pressure [J/(kmol K)]
|
// Heat capacity at constant pressure [J/(kmol K)]
|
||||||
|
|
|
@ -50,23 +50,33 @@ inline Foam::scalar Foam::specieThermo<thermo>::T
|
||||||
scalar Test = T0;
|
scalar Test = T0;
|
||||||
scalar Tnew = T0;
|
scalar Tnew = T0;
|
||||||
scalar Ttol = T0*tol_;
|
scalar Ttol = T0*tol_;
|
||||||
int iter = 0;
|
int iter = 0;
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
|
// Limit the temperature jump in a single corrector to TJump_
|
||||||
|
// HJ, 12/Oct/2010
|
||||||
|
|
||||||
Test = Tnew;
|
Test = Tnew;
|
||||||
Tnew = Test - ((this->*F)(Test) - f)/(this->*dFdT)(Test);
|
Tnew = Test
|
||||||
|
- Foam::min(((this->*F)(Test) - f)/(this->*dFdT)(Test), TJump_);
|
||||||
|
|
||||||
if (iter++ > maxIter_)
|
if (iter++ > maxIter_)
|
||||||
{
|
{
|
||||||
FatalErrorIn
|
// Improvements: graceful exit with recovery. HJ, 11/Oct/2010
|
||||||
|
InfoIn
|
||||||
(
|
(
|
||||||
"specieThermo<thermo>::T(scalar f, scalar T0, "
|
"specieThermo<thermo>::T(scalar f, scalar T0, "
|
||||||
"scalar (specieThermo<thermo>::*F)(const scalar) const, "
|
"scalar (specieThermo<thermo>::*F)(const scalar) const, "
|
||||||
"scalar (specieThermo<thermo>::*dFdT)(const scalar) const"
|
"scalar (specieThermo<thermo>::*dFdT)(const scalar) const"
|
||||||
") const"
|
") const"
|
||||||
) << "Maximum number of iterations exceeded"
|
) << "Maximum number of iterations exceeded. Rescue by HJ"
|
||||||
<< abort(FatalError);
|
<< endl;
|
||||||
|
|
||||||
|
// Use value where dFdT is calculated using T0. HJ, 11/Oct/2010
|
||||||
|
Tnew = f/(this->*dFdT)(T0);
|
||||||
|
|
||||||
|
return Tnew;
|
||||||
}
|
}
|
||||||
|
|
||||||
} while (mag(Tnew - Test) > Ttol);
|
} while (mag(Tnew - Test) > Ttol);
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
currDir=`pwd`
|
|
||||||
application=`basename $currDir`
|
|
||||||
cases="springDamper sixDOFmotion"
|
|
||||||
|
|
||||||
tutorialPath=`dirname $0`/..
|
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
|
||||||
|
|
||||||
for case in $cases
|
|
||||||
do
|
|
||||||
cleanCase $case
|
|
||||||
rm $case/*.dat
|
|
||||||
done
|
|
|
@ -1,13 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
currDir=`pwd`
|
|
||||||
application=`basename $currDir`
|
|
||||||
cases="springDamper sixDOFmotion"
|
|
||||||
|
|
||||||
tutorialPath=`dirname $0`/..
|
|
||||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
|
||||||
|
|
||||||
for case in $cases
|
|
||||||
do
|
|
||||||
(cd $case; runApplication $application)
|
|
||||||
done
|
|
7
tutorials/basic/sixDOFSolver/sixDOFmotion/Allclean
Executable file
7
tutorials/basic/sixDOFSolver/sixDOFmotion/Allclean
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Source tutorial clean functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
|
cleanCase
|
||||||
|
rm -f *.dat
|
7
tutorials/basic/sixDOFSolver/sixDOFmotion/Allrun
Executable file
7
tutorials/basic/sixDOFSolver/sixDOFmotion/Allrun
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Source tutorial run functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||||
|
|
||||||
|
application="sixDOFSolver"
|
||||||
|
|
||||||
|
runApplication $application
|
7
tutorials/basic/sixDOFSolver/springDamper/Allclean
Executable file
7
tutorials/basic/sixDOFSolver/springDamper/Allclean
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Source tutorial clean functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
|
cleanCase
|
||||||
|
rm -f *.dat
|
7
tutorials/basic/sixDOFSolver/springDamper/Allrun
Executable file
7
tutorials/basic/sixDOFSolver/springDamper/Allrun
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Source tutorial run functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||||
|
|
||||||
|
application="sixDOFSolver"
|
||||||
|
|
||||||
|
runApplication $application
|
|
@ -1,52 +0,0 @@
|
||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: 1.5-dev |
|
|
||||||
| \\ / A nd | Web: http://www.OpenFOAM.org |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class polyBoundaryMesh;
|
|
||||||
location "constant/polyMesh";
|
|
||||||
object boundary;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
5
|
|
||||||
(
|
|
||||||
impellerWall
|
|
||||||
{
|
|
||||||
type wall;
|
|
||||||
nFaces 68;
|
|
||||||
startFace 1040;
|
|
||||||
}
|
|
||||||
baffleWall
|
|
||||||
{
|
|
||||||
type wall;
|
|
||||||
nFaces 84;
|
|
||||||
startFace 1108;
|
|
||||||
}
|
|
||||||
insideSlider
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
nFaces 36;
|
|
||||||
startFace 1192;
|
|
||||||
}
|
|
||||||
outsideSlider
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
nFaces 36;
|
|
||||||
startFace 1228;
|
|
||||||
}
|
|
||||||
defaultFaces
|
|
||||||
{
|
|
||||||
type empty;
|
|
||||||
nFaces 1152;
|
|
||||||
startFace 1264;
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
|
@ -10,12 +10,6 @@ FoamFile
|
||||||
{
|
{
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format ascii;
|
format ascii;
|
||||||
|
|
||||||
root "";
|
|
||||||
case "";
|
|
||||||
instance "";
|
|
||||||
local "";
|
|
||||||
|
|
||||||
class dictionary;
|
class dictionary;
|
||||||
object fvSolution;
|
object fvSolution;
|
||||||
}
|
}
|
||||||
|
@ -24,12 +18,10 @@ FoamFile
|
||||||
|
|
||||||
solvers
|
solvers
|
||||||
{
|
{
|
||||||
pcorr PCG
|
pcorr
|
||||||
{
|
{
|
||||||
preconditioner
|
solver BiCGStab;
|
||||||
{
|
preconditioner DILU;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -37,59 +29,41 @@ solvers
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
p PCG
|
p
|
||||||
{
|
{
|
||||||
preconditioner
|
solver CG;
|
||||||
{
|
preconditioner Cholesky;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
tolerance 1e-06;
|
tolerance 1e-07;
|
||||||
relTol 0.05;
|
relTol 0.0;
|
||||||
};
|
};
|
||||||
|
|
||||||
pFinal PCG
|
pFinal
|
||||||
{
|
{
|
||||||
preconditioner
|
solver CG;
|
||||||
{
|
preconditioner Cholesky;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
tolerance 1e-06;
|
tolerance 1e-07;
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
U PBiCG
|
U
|
||||||
{
|
{
|
||||||
preconditioner
|
solver BiCGStab;
|
||||||
{
|
preconditioner DILU;
|
||||||
type DILU;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
tolerance 1e-05;
|
tolerance 1e-07;
|
||||||
relTol 0;
|
|
||||||
};
|
|
||||||
|
|
||||||
cellMotionUx PCG
|
|
||||||
{
|
|
||||||
preconditioner
|
|
||||||
{
|
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
|
||||||
maxIter 1000;
|
|
||||||
tolerance 1e-08;
|
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
PISO
|
PISO
|
||||||
{
|
{
|
||||||
nCorrectors 4;
|
nCorrectors 4;
|
||||||
|
|
|
@ -5,5 +5,5 @@
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
rm -rf VTK
|
rm -rf VTK
|
||||||
rm constant/polyMesh/boundary
|
rm -f constant/polyMesh/boundary
|
||||||
rm -rf constant/polyMesh/sets
|
rm -rf constant/polyMesh/sets
|
|
@ -62,7 +62,7 @@ functions
|
||||||
phi phi;
|
phi phi;
|
||||||
|
|
||||||
// Where to load it from (if not already in solver)
|
// Where to load it from (if not already in solver)
|
||||||
functionObjectLibs ("libsampling.so");
|
functionObjectLibs ("libcheckFunctionObjects.so");
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -18,12 +18,10 @@ FoamFile
|
||||||
|
|
||||||
solvers
|
solvers
|
||||||
{
|
{
|
||||||
pcorr BiCGStab
|
pcorr
|
||||||
{
|
{
|
||||||
preconditioner
|
solver BiCGStab;
|
||||||
{
|
preconditioner DILU;
|
||||||
type DILU;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -31,12 +29,10 @@ solvers
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
p BiCGStab
|
p
|
||||||
{
|
{
|
||||||
preconditioner
|
solver CG;
|
||||||
{
|
preconditioner Cholesky;
|
||||||
type DILU;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -44,12 +40,10 @@ solvers
|
||||||
relTol 0.0;
|
relTol 0.0;
|
||||||
};
|
};
|
||||||
|
|
||||||
pFinal BiCGStab
|
pFinal
|
||||||
{
|
{
|
||||||
preconditioner
|
solver CG;
|
||||||
{
|
preconditioner Cholesky;
|
||||||
type DILU;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -57,12 +51,10 @@ solvers
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
U BiCGStab
|
U
|
||||||
{
|
{
|
||||||
preconditioner
|
solver BiCGStab;
|
||||||
{
|
preconditioner DILU;
|
||||||
type DILU;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -71,6 +63,7 @@ solvers
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
PISO
|
PISO
|
||||||
{
|
{
|
||||||
nCorrectors 4;
|
nCorrectors 4;
|
||||||
|
|
|
@ -25,7 +25,7 @@ License
|
||||||
Author
|
Author
|
||||||
Frank Bos, TU Delft. All rights reserved.
|
Frank Bos, TU Delft. All rights reserved.
|
||||||
|
|
||||||
\*----------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "RBFMotionFunctionObject.H"
|
#include "RBFMotionFunctionObject.H"
|
||||||
#include "addToRunTimeSelectionTable.H"
|
#include "addToRunTimeSelectionTable.H"
|
||||||
|
@ -56,15 +56,14 @@ Foam::RBFMotionFunctionObject::RBFMotionFunctionObject
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
functionObject(),
|
functionObject(name),
|
||||||
name_(name),
|
|
||||||
time_(t),
|
time_(t),
|
||||||
regionName_(polyMesh::defaultRegion),
|
regionName_(polyMesh::defaultRegion),
|
||||||
rotationAmplitude_(readScalar(dict.lookup("rotationAmplitude"))),
|
rotationAmplitude_(readScalar(dict.lookup("rotationAmplitude"))),
|
||||||
rotationFrequency_(readScalar(dict.lookup("rotationFrequency"))),
|
rotationFrequency_(readScalar(dict.lookup("rotationFrequency"))),
|
||||||
translationAmplitude_(dict.lookup("translationAmplitude")),
|
translationAmplitude_(dict.lookup("translationAmplitude")),
|
||||||
translationFrequency_(dict.lookup("translationFrequency")),
|
translationFrequency_(dict.lookup("translationFrequency")),
|
||||||
initialRotationOrigin_(dict.lookup("initialRotationOrigin")),
|
initialRotationOrigin_(dict.lookup("initialRotationOrigin")),
|
||||||
statPoints_()
|
statPoints_()
|
||||||
|
|
||||||
{
|
{
|
||||||
|
@ -86,7 +85,7 @@ bool Foam::RBFMotionFunctionObject::start()
|
||||||
mesh.lookupObject<RBFMotionSolver>("dynamicMeshDict")
|
mesh.lookupObject<RBFMotionSolver>("dynamicMeshDict")
|
||||||
);
|
);
|
||||||
|
|
||||||
statPoints_ = ms.movingPoints();
|
statPoints_ = ms.movingPoints();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,20 +58,17 @@ class RBFMotionFunctionObject
|
||||||
{
|
{
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
//- Name
|
|
||||||
const word name_;
|
|
||||||
|
|
||||||
//- Reference to main object registry
|
//- Reference to main object registry
|
||||||
const Time& time_;
|
const Time& time_;
|
||||||
|
|
||||||
//- Region name
|
//- Region name
|
||||||
word regionName_;
|
word regionName_;
|
||||||
|
|
||||||
scalar rotationAmplitude_;
|
scalar rotationAmplitude_;
|
||||||
scalar rotationFrequency_;
|
scalar rotationFrequency_;
|
||||||
vector translationAmplitude_;
|
vector translationAmplitude_;
|
||||||
vector translationFrequency_;
|
vector translationFrequency_;
|
||||||
vector initialRotationOrigin_;
|
vector initialRotationOrigin_;
|
||||||
|
|
||||||
//- Stationary points
|
//- Stationary points
|
||||||
pointField statPoints_;
|
pointField statPoints_;
|
||||||
|
@ -114,7 +111,7 @@ public:
|
||||||
//- Read and set the function object if its data has changed
|
//- Read and set the function object if its data has changed
|
||||||
virtual bool read(const dictionary& dict);
|
virtual bool read(const dictionary& dict);
|
||||||
|
|
||||||
//- Update for changes of mesh
|
//- Update for changes of mesh
|
||||||
virtual void movePoints(const pointField&)
|
virtual void movePoints(const pointField&)
|
||||||
{}
|
{}
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM Extend Project: Open source CFD |
|
||||||
| \\ / O peration | Version: 1.5-dev |
|
| \\ / O peration | Version: 1.6-ext |
|
||||||
| \\ / A nd | Revision: 1708 |
|
| \\ / A nd | Web: www.extend-project.de |
|
||||||
| \\/ M anipulation | Web: http://www.OpenFOAM.org |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
FoamFile
|
FoamFile
|
||||||
{
|
{
|
||||||
|
|
|
@ -58,10 +58,10 @@ maxDeltaT 0.25;
|
||||||
|
|
||||||
functions
|
functions
|
||||||
(
|
(
|
||||||
RBFMotion
|
RBFMotion
|
||||||
{
|
{
|
||||||
type RBFMotion;
|
type RBFMotion;
|
||||||
functionObjectLibs ("libRBFMotionFunction.so");
|
functionObjectLibs ("libRBFMotionFunction.so");
|
||||||
rotationAmplitude 0.9;
|
rotationAmplitude 0.9;
|
||||||
rotationFrequency 0.25;
|
rotationFrequency 0.25;
|
||||||
translationAmplitude (0.0 3.0 0.0);
|
translationAmplitude (0.0 3.0 0.0);
|
||||||
|
|
|
@ -18,32 +18,29 @@ FoamFile
|
||||||
|
|
||||||
solvers
|
solvers
|
||||||
{
|
{
|
||||||
p CG
|
p
|
||||||
{
|
{
|
||||||
preconditioner
|
solver CG;
|
||||||
{
|
preconditioner DIC;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
tolerance 1e-06;
|
tolerance 1e-06;
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
pFinal CG
|
pFinal
|
||||||
{
|
{
|
||||||
preconditioner
|
solver CG;
|
||||||
{
|
preconditioner DIC;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
tolerance 1e-06;
|
tolerance 1e-06;
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
U BiCGStab
|
U
|
||||||
{
|
{
|
||||||
preconditioner
|
solver BiCGStab;
|
||||||
{
|
preconditioner DILU;
|
||||||
type DILU;
|
|
||||||
}
|
|
||||||
tolerance 1e-7;
|
tolerance 1e-7;
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM Extend Project: Open source CFD |
|
||||||
| \\ / O peration | Version: 1.5 |
|
| \\ / O peration | Version: 1.6-ext |
|
||||||
| \\ / A nd | Web: http://www.OpenFOAM.org |
|
| \\ / A nd | Web: www.extend-project.de |
|
||||||
| \\/ M anipulation | |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
FoamFile
|
FoamFile
|
||||||
|
@ -10,6 +10,7 @@ FoamFile
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format binary;
|
format binary;
|
||||||
class polyBoundaryMesh;
|
class polyBoundaryMesh;
|
||||||
|
location "constant/polyMesh";
|
||||||
object boundary;
|
object boundary;
|
||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
|
@ -16,29 +16,33 @@ FoamFile
|
||||||
|
|
||||||
solvers
|
solvers
|
||||||
{
|
{
|
||||||
pcorr PCG
|
pcorr
|
||||||
{
|
{
|
||||||
|
solver PCG;
|
||||||
preconditioner DIC;
|
preconditioner DIC;
|
||||||
tolerance 1e-02;
|
tolerance 1e-02;
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
p PCG
|
p
|
||||||
{
|
{
|
||||||
|
solver PCG;
|
||||||
preconditioner DIC;
|
preconditioner DIC;
|
||||||
tolerance 1e-06;
|
tolerance 1e-06;
|
||||||
relTol 0.05;
|
relTol 0.05;
|
||||||
};
|
};
|
||||||
|
|
||||||
pFinal PCG
|
pFinal
|
||||||
{
|
{
|
||||||
|
solver PCG;
|
||||||
preconditioner DIC;
|
preconditioner DIC;
|
||||||
tolerance 1e-06;
|
tolerance 1e-06;
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
U PBiCG
|
U
|
||||||
{
|
{
|
||||||
|
solver PBiCG;
|
||||||
preconditioner DILU;
|
preconditioner DILU;
|
||||||
tolerance 1e-05;
|
tolerance 1e-05;
|
||||||
relTol 0;
|
relTol 0;
|
||||||
|
|
|
@ -1,22 +0,0 @@
|
||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: 1.5 |
|
|
||||||
| \\ / A nd | Web: http://www.OpenFOAM.org |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object tetFemSolution;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
solvers
|
|
||||||
{
|
|
||||||
motionU ICCG 1e-06 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
8
tutorials/incompressible/icoDyMFoam/movingConeMotion/Allclean
Executable file
8
tutorials/incompressible/icoDyMFoam/movingConeMotion/Allclean
Executable file
|
@ -0,0 +1,8 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Source tutorial clean functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
|
cleanCase
|
||||||
|
rm -f 0/motionGamma
|
||||||
|
( cd setMotionMovingCone ; wclean )
|
11
tutorials/incompressible/icoDyMFoam/movingConeMotion/Allrun
Executable file
11
tutorials/incompressible/icoDyMFoam/movingConeMotion/Allrun
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Source tutorial run functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||||
|
|
||||||
|
# Get application name from directory
|
||||||
|
application="icoDyMFoam"
|
||||||
|
|
||||||
|
compileApplication setMotionMovingCone
|
||||||
|
runApplication setMotionMovingCone
|
||||||
|
runApplication blockMesh
|
||||||
|
runApplication $application
|
|
@ -1,84 +1,70 @@
|
||||||
/*---------------------------------------------------------------------------*\
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM Extend Project: Open source CFD |
|
||||||
| \\ / O peration | Version: 1.4.1 |
|
| \\ / O peration | Version: 1.6-ext |
|
||||||
| \\ / A nd | Web: http://www.openfoam.org |
|
| \\ / A nd | Web: www.extend-project.de |
|
||||||
| \\/ M anipulation | |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
FoamFile
|
FoamFile
|
||||||
{
|
{
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format ascii;
|
format ascii;
|
||||||
|
class polyBoundaryMesh;
|
||||||
root "/home/hjasak/OpenFOAM/OpenFOAM-1.4.1/tutorials/icoDyMFoam";
|
location "constant/polyMesh";
|
||||||
case "movingConeMotion";
|
object boundary;
|
||||||
instance "constant";
|
|
||||||
local "polyMesh";
|
|
||||||
|
|
||||||
class polyBoundaryMesh;
|
|
||||||
object boundary;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
8
|
8
|
||||||
(
|
(
|
||||||
movingWall
|
movingWall
|
||||||
{
|
{
|
||||||
type wall;
|
type wall;
|
||||||
nFaces 85;
|
nFaces 85;
|
||||||
startFace 3665;
|
startFace 3665;
|
||||||
}
|
}
|
||||||
|
farFieldMoving
|
||||||
farFieldMoving
|
{
|
||||||
{
|
type patch;
|
||||||
type patch;
|
nFaces 50;
|
||||||
nFaces 50;
|
startFace 3750;
|
||||||
startFace 3750;
|
}
|
||||||
}
|
fixedWall
|
||||||
|
{
|
||||||
fixedWall
|
type wall;
|
||||||
{
|
nFaces 35;
|
||||||
type wall;
|
startFace 3800;
|
||||||
nFaces 35;
|
}
|
||||||
startFace 3800;
|
axis
|
||||||
}
|
{
|
||||||
|
type empty;
|
||||||
axis
|
nFaces 0;
|
||||||
{
|
startFace 3835;
|
||||||
type empty;
|
}
|
||||||
nFaces 0;
|
left
|
||||||
startFace 3835;
|
{
|
||||||
}
|
type patch;
|
||||||
|
nFaces 30;
|
||||||
left
|
startFace 3835;
|
||||||
{
|
}
|
||||||
type patch;
|
farField
|
||||||
nFaces 30;
|
{
|
||||||
startFace 3835;
|
type patch;
|
||||||
}
|
nFaces 35;
|
||||||
|
startFace 3865;
|
||||||
farField
|
}
|
||||||
{
|
back
|
||||||
type patch;
|
{
|
||||||
nFaces 35;
|
type wedge;
|
||||||
startFace 3865;
|
nFaces 1900;
|
||||||
}
|
startFace 3900;
|
||||||
|
}
|
||||||
back
|
front
|
||||||
{
|
{
|
||||||
type wedge;
|
type wedge;
|
||||||
nFaces 1900;
|
nFaces 1900;
|
||||||
startFace 3900;
|
startFace 5800;
|
||||||
}
|
}
|
||||||
|
|
||||||
front
|
|
||||||
{
|
|
||||||
type wedge;
|
|
||||||
nFaces 1900;
|
|
||||||
startFace 5800;
|
|
||||||
}
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/*---------------------------------------------------------------------------*\
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
| \\ / O peration | Version: 1.4 |
|
| \\ / O peration | Version: 1.4 |
|
||||||
|
@ -10,12 +10,6 @@ FoamFile
|
||||||
{
|
{
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format ascii;
|
format ascii;
|
||||||
|
|
||||||
root "";
|
|
||||||
case "";
|
|
||||||
instance "";
|
|
||||||
local "";
|
|
||||||
|
|
||||||
class dictionary;
|
class dictionary;
|
||||||
object fvSolution;
|
object fvSolution;
|
||||||
}
|
}
|
||||||
|
@ -24,12 +18,10 @@ FoamFile
|
||||||
|
|
||||||
solvers
|
solvers
|
||||||
{
|
{
|
||||||
pcorr PCG
|
pcorr
|
||||||
{
|
{
|
||||||
preconditioner
|
solver PCG;
|
||||||
{
|
preconditioner DIC;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -37,12 +29,10 @@ solvers
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
p PCG
|
p
|
||||||
{
|
{
|
||||||
preconditioner
|
solver PCG;
|
||||||
{
|
preconditioner DIC;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -50,12 +40,10 @@ solvers
|
||||||
relTol 0.05;
|
relTol 0.05;
|
||||||
};
|
};
|
||||||
|
|
||||||
pFinal PCG
|
pFinal
|
||||||
{
|
{
|
||||||
preconditioner
|
solver PCG;
|
||||||
{
|
preconditioner DIC;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -63,33 +51,19 @@ solvers
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
U PBiCG
|
U
|
||||||
{
|
{
|
||||||
preconditioner
|
solver PBiCG;
|
||||||
{
|
preconditioner DILU;
|
||||||
type DILU;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
tolerance 1e-05;
|
tolerance 1e-05;
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
cellMotionUx PCG
|
|
||||||
{
|
|
||||||
preconditioner
|
|
||||||
{
|
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
|
||||||
maxIter 1000;
|
|
||||||
tolerance 1e-08;
|
|
||||||
relTol 0;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
PISO
|
PISO
|
||||||
{
|
{
|
||||||
nCorrectors 2;
|
nCorrectors 2;
|
||||||
|
|
|
@ -18,8 +18,9 @@ FoamFile
|
||||||
|
|
||||||
solvers
|
solvers
|
||||||
{
|
{
|
||||||
motionU amgSolver
|
motionU
|
||||||
{
|
{
|
||||||
|
solver amgSolver;
|
||||||
cycle W-cycle;
|
cycle W-cycle;
|
||||||
policy AAMG;
|
policy AAMG;
|
||||||
nPreSweeps 0;
|
nPreSweeps 0;
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM Extend Project: Open source CFD |
|
||||||
| \\ / O peration | Version: 1.5-dev |
|
| \\ / O peration | Version: 1.6-ext |
|
||||||
| \\ / A nd | Web: http://www.OpenFOAM.org |
|
| \\ / A nd | Web: www.extend-project.de |
|
||||||
| \\/ M anipulation | |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
FoamFile
|
FoamFile
|
||||||
|
|
|
@ -18,12 +18,10 @@ FoamFile
|
||||||
|
|
||||||
solvers
|
solvers
|
||||||
{
|
{
|
||||||
pcorr PCG
|
pcorr
|
||||||
{
|
{
|
||||||
preconditioner
|
solver PCG;
|
||||||
{
|
preconditioner DIC;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -31,12 +29,10 @@ solvers
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
p PCG
|
p
|
||||||
{
|
{
|
||||||
preconditioner
|
solver PCG;
|
||||||
{
|
preconditioner DIC;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -44,12 +40,10 @@ solvers
|
||||||
relTol 0.0;
|
relTol 0.0;
|
||||||
};
|
};
|
||||||
|
|
||||||
pFinal PCG
|
pFinal
|
||||||
{
|
{
|
||||||
preconditioner
|
solver PCG;
|
||||||
{
|
preconditioner DIC;
|
||||||
type DIC;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
@ -57,12 +51,10 @@ solvers
|
||||||
relTol 0;
|
relTol 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
U PBiCG
|
U
|
||||||
{
|
{
|
||||||
preconditioner
|
solver PBiCG;
|
||||||
{
|
preconditioner DILU;
|
||||||
type DILU;
|
|
||||||
}
|
|
||||||
|
|
||||||
minIter 0;
|
minIter 0;
|
||||||
maxIter 1000;
|
maxIter 1000;
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM Extend Project: Open source CFD |
|
||||||
| \\ / O peration | Version: 1.5 |
|
| \\ / O peration | Version: 1.6-ext |
|
||||||
| \\ / A nd | Web: http://www.OpenFOAM.org |
|
| \\ / A nd | Web: www.extend-project.de |
|
||||||
| \\/ M anipulation | |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
FoamFile
|
FoamFile
|
||||||
|
@ -10,6 +10,7 @@ FoamFile
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format ascii;
|
format ascii;
|
||||||
class polyBoundaryMesh;
|
class polyBoundaryMesh;
|
||||||
|
location "constant/polyMesh";
|
||||||
object boundary;
|
object boundary;
|
||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM Extend Project: Open source CFD |
|
||||||
| \\ / O peration | Version: 1.5 |
|
| \\ / O peration | Version: 1.6-ext |
|
||||||
| \\ / A nd | Web: http://www.OpenFOAM.org |
|
| \\ / A nd | Web: www.extend-project.de |
|
||||||
| \\/ M anipulation | |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
FoamFile
|
FoamFile
|
||||||
|
@ -10,6 +10,7 @@ FoamFile
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format ascii;
|
format ascii;
|
||||||
class polyBoundaryMesh;
|
class polyBoundaryMesh;
|
||||||
|
location "constant/polyMesh";
|
||||||
object boundary;
|
object boundary;
|
||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM Extend Project: Open source CFD |
|
||||||
| \\ / O peration | Version: 1.5 |
|
| \\ / O peration | Version: 1.6-ext |
|
||||||
| \\ / A nd | Web: http://www.OpenFOAM.org |
|
| \\ / A nd | Web: www.extend-project.de |
|
||||||
| \\/ M anipulation | |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
FoamFile
|
FoamFile
|
||||||
|
@ -10,6 +10,7 @@ FoamFile
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format ascii;
|
format ascii;
|
||||||
class polyBoundaryMesh;
|
class polyBoundaryMesh;
|
||||||
|
location "constant/polyMesh";
|
||||||
object boundary;
|
object boundary;
|
||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM Extend Project: Open source CFD |
|
||||||
| \\ / O peration | Version: 1.5 |
|
| \\ / O peration | Version: 1.6-ext |
|
||||||
| \\ / A nd | Web: http://www.OpenFOAM.org |
|
| \\ / A nd | Web: www.extend-project.de |
|
||||||
| \\/ M anipulation | |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
FoamFile
|
FoamFile
|
||||||
|
@ -10,6 +10,7 @@ FoamFile
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format ascii;
|
format ascii;
|
||||||
class polyBoundaryMesh;
|
class polyBoundaryMesh;
|
||||||
|
location "constant/polyMesh";
|
||||||
object boundary;
|
object boundary;
|
||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
|
@ -3,7 +3,5 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
rm -R -f sets
|
rm -rf sets
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,5 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
rm -R -f sets
|
rm -rf sets
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,5 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
rm -R -f sets
|
rm -rf sets
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,6 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
echo "done!"
|
echo "done!"
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
rm -R -f sets
|
rm -R -f sets
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,5 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
rm -R -f sets
|
rm -Rf sets
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,5 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,5 @@
|
||||||
# Source tutorial clean functions
|
# Source tutorial clean functions
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
|
@ -4,5 +4,4 @@
|
||||||
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
|
||||||
cleanCase
|
cleanCase
|
||||||
echo "done!"
|
|
||||||
|
|
||||||
|
|
Reference in a new issue