Merge branch 'master' of ssh://noisy/home/noisy3/OpenFOAM/OpenFOAM-dev

This commit is contained in:
sergio
2010-12-10 13:07:29 +00:00
43 changed files with 238 additions and 236 deletions

View File

@ -482,7 +482,7 @@ bool doCommand
topoSet& currentSet = currentSetPtr();
Info<< " Set:" << currentSet.name()
<< " Size:" << currentSet.size()
<< " Size:" << returnReduce(currentSet.size(), sumOp<label>())
<< " Action:" << actionName
<< endl;
@ -579,7 +579,9 @@ bool doCommand
);
Info<< " Writing " << currentSet.name()
<< " (size " << currentSet.size() << ") to "
<< " (size "
<< returnReduce(currentSet.size(), sumOp<label>())
<< ") to "
<< currentSet.instance()/currentSet.local()
/currentSet.name()
<< " and to vtk file " << vtkName << endl << endl;
@ -589,7 +591,9 @@ bool doCommand
else
{
Info<< " Writing " << currentSet.name()
<< " (size " << currentSet.size() << ") to "
<< " (size "
<< returnReduce(currentSet.size(), sumOp<label>())
<< ") to "
<< currentSet.instance()/currentSet.local()
/currentSet.name() << endl << endl;
}
@ -642,9 +646,9 @@ enum commandStatus
void printMesh(const Time& runTime, const polyMesh& mesh)
{
Info<< "Time:" << runTime.timeName()
<< " cells:" << mesh.nCells()
<< " faces:" << mesh.nFaces()
<< " points:" << mesh.nPoints()
<< " cells:" << mesh.globalData().nTotalCells()
<< " faces:" << mesh.globalData().nTotalFaces()
<< " points:" << mesh.globalData().nTotalPoints()
<< " patches:" << mesh.boundaryMesh().size()
<< " bb:" << mesh.bounds() << nl;
}

View File

@ -51,7 +51,7 @@ using namespace Foam;
void massPropertiesSolid
(
const pointField& pts,
const triFaceList triFaces,
const triFaceList& triFaces,
scalar density,
scalar& mass,
vector& cM,
@ -208,7 +208,7 @@ void massPropertiesSolid
void massPropertiesShell
(
const pointField& pts,
const triFaceList triFaces,
const triFaceList& triFaces,
scalar density,
scalar& mass,
vector& cM,

View File

@ -58,17 +58,17 @@ const scalar
Foam::KRR4::KRR4(const ODE& ode)
:
ODESolver(ode),
yTemp_(n_),
dydxTemp_(n_),
g1_(n_),
g2_(n_),
g3_(n_),
g4_(n_),
yErr_(n_),
dfdx_(n_),
dfdy_(n_, n_),
a_(n_, n_),
pivotIndices_(n_)
yTemp_(n_, 0.0),
dydxTemp_(n_, 0.0),
g1_(n_, 0.0),
g2_(n_, 0.0),
g3_(n_, 0.0),
g4_(n_, 0.0),
yErr_(n_, 0.0),
dfdx_(n_, 0.0),
dfdy_(n_, n_, 0.0),
a_(n_, n_, 0.0),
pivotIndices_(n_, 0.0)
{}

View File

@ -57,14 +57,14 @@ const scalar
Foam::RK::RK(const ODE& ode)
:
ODESolver(ode),
yTemp_(n_),
ak2_(n_),
ak3_(n_),
ak4_(n_),
ak5_(n_),
ak6_(n_),
yErr_(n_),
yTemp2_(n_)
yTemp_(n_, 0.0),
ak2_(n_, 0.0),
ak3_(n_, 0.0),
ak4_(n_, 0.0),
ak5_(n_, 0.0),
ak6_(n_, 0.0),
yErr_(n_, 0.0),
yTemp2_(n_, 0.0)
{}

View File

@ -50,17 +50,17 @@ namespace Foam
Foam::SIBS::SIBS(const ODE& ode)
:
ODESolver(ode),
a_(iMaxX_),
alpha_(kMaxX_, kMaxX_),
d_p_(n_, kMaxX_),
x_p_(kMaxX_),
err_(kMaxX_),
a_(iMaxX_, 0.0),
alpha_(kMaxX_, kMaxX_, 0.0),
d_p_(n_, kMaxX_, 0.0),
x_p_(kMaxX_, 0.0),
err_(kMaxX_, 0.0),
yTemp_(n_),
ySeq_(n_),
yErr_(n_),
dfdx_(n_),
dfdy_(n_, n_),
yTemp_(n_, 0.0),
ySeq_(n_, 0.0),
yErr_(n_, 0.0),
dfdx_(n_, 0.0),
dfdy_(n_, n_, 0.0),
first_(1),
epsOld_(-1.0)
{}

View File

@ -21,12 +21,11 @@ License
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Description
\*---------------------------------------------------------------------------*/
#include "triangle.H"
#include "IOstreams.H"
#include "triPointRef.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -152,7 +151,37 @@ inline Point tetrahedron<Point, PointRef>::circumCentre() const
vector ba = b ^ a;
vector ca = c ^ a;
return a_ + 0.5*(a + (lambda*ba - mu*ca)/((c & ba) + ROOTVSMALL));
vector num = lambda*ba - mu*ca;
scalar denom = (c & ba);
if (Foam::mag(denom) < ROOTVSMALL)
{
// Degenerate tet. Use test of the individual triangles.
{
point triCentre = triPointRef(a_, b_, c_).circumCentre();
if (magSqr(d_ - triCentre) < magSqr(a_ - triCentre))
{
return triCentre;
}
}
{
point triCentre = triPointRef(a_, b_, d_).circumCentre();
if (magSqr(c_ - triCentre) < magSqr(a_ - triCentre))
{
return triCentre;
}
}
{
point triCentre = triPointRef(a_, c_, d_).circumCentre();
if (magSqr(b_ - triCentre) < magSqr(a_ - triCentre))
{
return triCentre;
}
}
return triPointRef(b_, c_, d_).circumCentre();
}
return a_ + 0.5*(a + num/denom);
}

View File

@ -39,7 +39,7 @@ Foam::IObasicSourceList::IObasicSourceList
"sourcesProperties",
mesh.time().constant(),
mesh,
IOobject::MUST_READ,
IOobject::MUST_READ_IF_MODIFIED,
IOobject::NO_WRITE
)
),

View File

@ -1,5 +1,5 @@
basicSolidThermo/basicSolidThermo.C
basicSolidThermo/newBasicSolidThermo.C
basicSolidThermo/basicSolidThermoNew.C
constSolidThermo/constSolidThermo.C
directionalKSolidThermo/directionalKSolidThermo.C

View File

@ -50,7 +50,7 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class basicSolidThermo Declaration
Class basicSolidThermo Declaration
\*---------------------------------------------------------------------------*/
class basicSolidThermo
@ -109,8 +109,7 @@ public:
//- Destructor
virtual ~basicSolidThermo();
virtual ~basicSolidThermo();
// Member functions
@ -204,7 +203,7 @@ public:
//- Read thermophysicalProperties dictionary
virtual bool read() = 0;
// Ostream Operator
//- Ostream Operator
friend Ostream& operator<<(Ostream& os, const basicSolidThermo& s);
};

View File

@ -1,77 +0,0 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
\*---------------------------------------------------------------------------*/
#include "basicSolidThermo.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Foam::autoPtr<Foam::basicSolidThermo> Foam::basicSolidThermo::New
(
const fvMesh& mesh
)
{
if (debug)
{
Info<< "basicSolidThermo::New(const fvMesh&): "
<< "constructing basicSolidThermo"
<< endl;
}
const word thermoType
(
IOdictionary
(
IOobject
(
"solidThermophysicalProperties",
mesh.time().constant(),
mesh,
IOobject::MUST_READ,
IOobject::NO_WRITE,
false
)
).lookup("thermoType")
);
meshConstructorTable::iterator cstrIter =
meshConstructorTablePtr_->find(thermoType);
if (cstrIter == meshConstructorTablePtr_->end())
{
FatalErrorIn
(
"basicSolidThermo::New(const fvMesh&, const word&)"
) << "Unknown solidThermo type " << thermoType
<< endl << endl
<< "Valid solidThermo types are :" << endl
<< meshConstructorTablePtr_->toc()
<< exit(FatalError);
}
return autoPtr<basicSolidThermo>(cstrIter()(mesh));
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -43,7 +43,7 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class constSolidThermo Declaration
Class constSolidThermo Declaration
\*---------------------------------------------------------------------------*/
class constSolidThermo
@ -159,11 +159,8 @@ public:
//- Read solidThermophysicalProperties dictionary
bool read(const dictionary&);
// Ostream Operator
friend Ostream& operator<<(Ostream& os, const constSolidThermo& s);
//- Ostream Operator
friend Ostream& operator<<(Ostream& os, const constSolidThermo& s);
};

View File

@ -309,8 +309,8 @@ void Foam::directionalKSolidThermo::correct()
}
const Foam::volSymmTensorField& Foam::directionalKSolidThermo::
directionalK() const
const Foam::volSymmTensorField&
Foam::directionalKSolidThermo::directionalK() const
{
return directionalK_;
}

View File

@ -44,7 +44,7 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class directionalKSolidThermo Declaration
Class directionalKSolidThermo Declaration
\*---------------------------------------------------------------------------*/
class directionalKSolidThermo
@ -99,8 +99,8 @@ public:
directionalKSolidThermo(const fvMesh& mesh);
// Destructor
virtual ~directionalKSolidThermo();
//- Destructor
virtual ~directionalKSolidThermo();
// Member Functions
@ -136,14 +136,12 @@ public:
//- Read the directionalKSolidThermo properties
bool read(const dictionary& dict);
// Ostream Operator
friend Ostream& operator<<
(
Ostream& os,
const directionalKSolidThermo& s
);
//- Ostream Operator
friend Ostream& operator<<
(
Ostream& os,
const directionalKSolidThermo& s
);
};

View File

@ -31,7 +31,6 @@ License
Foam::interpolateSolid::interpolateSolid(const dictionary& dict)
{
read(dict);
Info<< "Constructed directionalKSolidThermo with samples" << nl
@ -108,4 +107,6 @@ bool Foam::interpolateSolid::read(const dictionary& dict)
sigmaSValues_ = Field<scalar>(dict.lookup("sigmaSValues"));
return true;
}
// ************************************************************************* //

View File

@ -44,7 +44,7 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class interpolateSolid Declaration
Class interpolateSolid Declaration
\*---------------------------------------------------------------------------*/
class interpolateSolid
@ -77,8 +77,7 @@ public:
//- Destructor
virtual ~interpolateSolid();
virtual ~interpolateSolid();
// Member Functions

View File

@ -44,7 +44,7 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class interpolatedSolidThermo Declaration
Class interpolatedSolidThermo Declaration
\*---------------------------------------------------------------------------*/
class interpolatedSolidThermo
@ -119,14 +119,12 @@ public:
//- Read the interpolatedSolidThermo properties
bool read(const dictionary& dict);
// Ostream Operator
friend Ostream& operator<<
(
Ostream& os,
const interpolatedSolidThermo& s
);
//- Ostream Operator
friend Ostream& operator<<
(
Ostream& os,
const interpolatedSolidThermo& s
);
};

View File

@ -43,7 +43,7 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class isotropicKSolidThermo Declaration
Class isotropicKSolidThermo Declaration
\*---------------------------------------------------------------------------*/
class isotropicKSolidThermo
@ -71,9 +71,10 @@ public:
isotropicKSolidThermo(const fvMesh& mesh);
// Destructor
//- Destructor
virtual ~isotropicKSolidThermo();
// Member functions
//- Update properties
@ -102,9 +103,7 @@ public:
//- Write properties
virtual bool writeData(Ostream& os) const;
// Ostream Operator
//- Ostream Operator
friend Ostream& operator<<
(
Ostream& os,

View File

@ -43,8 +43,9 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class multiComponentSolidMixture Declaration
Class multiComponentSolidMixture Declaration
\*---------------------------------------------------------------------------*/
template<class ThermoSolidType>
class multiComponentSolidMixture
:
@ -65,6 +66,7 @@ class multiComponentSolidMixture
//- Return molar fraction for component i in celli and at T
scalar X(label i, label celli, scalar T) const;
public:
@ -75,9 +77,8 @@ public:
//- Destructor
virtual ~multiComponentSolidMixture()
{}
virtual ~multiComponentSolidMixture()
{}
// Member Functions
@ -92,7 +93,7 @@ public:
void read(const dictionary&);
// Cell based properties.
// Cell-based properties
//- Density
virtual scalar rho(scalar T, label celli) const;
@ -118,9 +119,8 @@ public:
//- Total enthalpy
virtual scalar h(scalar T, label celli) const;
//- Cp
//- Specific heat capacity
virtual scalar Cp(scalar T, label celli) const;
};

View File

@ -44,7 +44,7 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class reactingSolidMixture Declaration
Class reactingSolidMixture Declaration
\*---------------------------------------------------------------------------*/
template<class ThermoSolidType>

View File

@ -104,8 +104,7 @@ void Foam::solidMixtureThermo<MixtureType>::correct()
template<class MixtureType>
const Foam::volScalarField&
Foam::solidMixtureThermo<MixtureType>::K() const
const Foam::volScalarField& Foam::solidMixtureThermo<MixtureType>::K() const
{
return K_;
}
@ -220,8 +219,7 @@ Foam::solidMixtureThermo<MixtureType>::Hf() const
template<class MixtureType>
Foam::tmp<Foam::scalarField>
Foam::solidMixtureThermo<MixtureType>::rho
Foam::tmp<Foam::scalarField> Foam::solidMixtureThermo<MixtureType>::rho
(
const label patchI
) const
@ -243,8 +241,7 @@ Foam::solidMixtureThermo<MixtureType>::rho
template<class MixtureType>
Foam::tmp<Foam::scalarField>
Foam::solidMixtureThermo<MixtureType>::Cp
Foam::tmp<Foam::scalarField> Foam::solidMixtureThermo<MixtureType>::Cp
(
const label patchI
) const
@ -266,8 +263,7 @@ Foam::solidMixtureThermo<MixtureType>::Cp
template<class MixtureType>
Foam::tmp<Foam::scalarField>
Foam::solidMixtureThermo<MixtureType>::hs
Foam::tmp<Foam::scalarField> Foam::solidMixtureThermo<MixtureType>::hs
(
const label patchI
) const
@ -289,8 +285,7 @@ Foam::solidMixtureThermo<MixtureType>::hs
template<class MixtureType>
Foam::tmp<Foam::scalarField>
Foam::solidMixtureThermo<MixtureType>::K
Foam::tmp<Foam::scalarField> Foam::solidMixtureThermo<MixtureType>::K
(
const label patchI
) const
@ -312,8 +307,7 @@ Foam::solidMixtureThermo<MixtureType>::K
template<class MixtureType>
Foam::tmp<Foam::scalarField>
Foam::solidMixtureThermo<MixtureType>::Hf
Foam::tmp<Foam::scalarField> Foam::solidMixtureThermo<MixtureType>::Hf
(
const label patchI
) const
@ -335,8 +329,7 @@ Foam::solidMixtureThermo<MixtureType>::Hf
template<class MixtureType>
Foam::tmp<Foam::scalarField>
Foam::solidMixtureThermo<MixtureType>::sigmaS
Foam::tmp<Foam::scalarField> Foam::solidMixtureThermo<MixtureType>::sigmaS
(
const label patchI
) const
@ -359,8 +352,7 @@ Foam::solidMixtureThermo<MixtureType>::sigmaS
template<class MixtureType>
Foam::tmp<Foam::scalarField>
Foam::solidMixtureThermo<MixtureType>::kappa
Foam::tmp<Foam::scalarField> Foam::solidMixtureThermo<MixtureType>::kappa
(
const label patchI
) const
@ -383,8 +375,7 @@ Foam::solidMixtureThermo<MixtureType>::kappa
template<class MixtureType>
Foam::tmp<Foam::scalarField>
Foam::solidMixtureThermo<MixtureType>::emissivity
Foam::tmp<Foam::scalarField> Foam::solidMixtureThermo<MixtureType>::emissivity
(
const label patchI
) const

View File

@ -43,7 +43,7 @@ namespace Foam
{
/*---------------------------------------------------------------------------*\
Class solidMixtureThermo Declaration
Class solidMixtureThermo Declaration
\*---------------------------------------------------------------------------*/
template<class MixtureType>
@ -81,8 +81,7 @@ public:
//- Destructor
virtual ~solidMixtureThermo();
virtual ~solidMixtureThermo();
// Member functions
@ -122,8 +121,8 @@ public:
// Patches variables
//- Density [kg/m3]
//- Density [kg/m3]
virtual tmp<scalarField> rho(const label patchI) const;
//- Specific heat capacity [J/(kg.K)]
@ -148,13 +147,11 @@ public:
virtual tmp<scalarField> emissivity(const label patchI) const;
//- Read thermophysicalProperties dictionary
virtual bool read();
//- Write the basicSolidThermo properties
virtual bool writeData(Ostream& os) const;
};

View File

@ -73,17 +73,16 @@ Foam::autoPtr<Foam::pointSolidMixture> Foam::pointSolidMixture::New
const dictionary& thermophysicalProperties
)
{
return autoPtr<pointSolidMixture>(new
pointSolidMixture(thermophysicalProperties));
return autoPtr<pointSolidMixture>
(
new pointSolidMixture(thermophysicalProperties)
);
}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::scalarField Foam::pointSolidMixture::X
(
const scalarField& Y
) const
Foam::scalarField Foam::pointSolidMixture::X(const scalarField& Y) const
{
scalarField X(Y.size());
scalar rhoInv = 0.0;
@ -97,10 +96,7 @@ Foam::scalarField Foam::pointSolidMixture::X
}
Foam::scalar Foam::pointSolidMixture::rho
(
const scalarField& X
) const
Foam::scalar Foam::pointSolidMixture::rho(const scalarField& X) const
{
scalar val = 0.0;
forAll(properties_, i)
@ -111,10 +107,7 @@ Foam::scalar Foam::pointSolidMixture::rho
}
Foam::scalar Foam::pointSolidMixture::Cp
(
const scalarField& Y
) const
Foam::scalar Foam::pointSolidMixture::Cp(const scalarField& Y) const
{
scalar val = 0.0;
forAll(properties_, i)

View File

@ -55,7 +55,7 @@ Ostream& operator<<
/*---------------------------------------------------------------------------*\
Class pointSolid Declaration
Class pointSolid Declaration
\*---------------------------------------------------------------------------*/
class pointSolid

View File

@ -115,7 +115,9 @@ alphaSgsJayatillekeWallFunctionFvPatchScalarField
fixedValueFvPatchScalarField(p, iF),
Prt_(0.85),
kappa_(0.41),
E_(9.8)
E_(9.8),
hsName_("hs")
{
checkType();
}
@ -133,7 +135,9 @@ alphaSgsJayatillekeWallFunctionFvPatchScalarField
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
Prt_(ptf.Prt_),
kappa_(ptf.kappa_),
E_(ptf.E_)
E_(ptf.E_),
hsName_(ptf.hsName_)
{}
@ -148,7 +152,8 @@ alphaSgsJayatillekeWallFunctionFvPatchScalarField
fixedValueFvPatchScalarField(p, iF, dict),
Prt_(dict.lookupOrDefault<scalar>("Prt", 0.85)),
kappa_(dict.lookupOrDefault<scalar>("kappa", 0.41)),
E_(dict.lookupOrDefault<scalar>("E", 9.8))
E_(dict.lookupOrDefault<scalar>("E", 9.8)),
hsName_(dict.lookupOrDefault<word>("hs", "hs"))
{
checkType();
}
@ -163,7 +168,8 @@ alphaSgsJayatillekeWallFunctionFvPatchScalarField
fixedValueFvPatchScalarField(awfpsf),
Prt_(awfpsf.Prt_),
kappa_(awfpsf.kappa_),
E_(awfpsf.E_)
E_(awfpsf.E_),
hsName_(awfpsf.hsName_)
{
checkType();
}
@ -179,7 +185,8 @@ alphaSgsJayatillekeWallFunctionFvPatchScalarField
fixedValueFvPatchScalarField(awfpsf, iF),
Prt_(awfpsf.Prt_),
kappa_(awfpsf.kappa_),
E_(awfpsf.E_)
E_(awfpsf.E_),
hsName_(awfpsf.hsName_)
{
checkType();
}
@ -209,7 +216,7 @@ void alphaSgsJayatillekeWallFunctionFvPatchScalarField::evaluate
const scalarField& rhow = lesModel.rho().boundaryField()[patchI];
const fvPatchScalarField& hw =
patch().lookupPatchField<volScalarField, scalar>("h");
patch().lookupPatchField<volScalarField, scalar>(hsName_);
const scalarField& ry = patch().deltaCoeffs();
@ -312,6 +319,7 @@ void alphaSgsJayatillekeWallFunctionFvPatchScalarField::write(Ostream& os) const
os.writeKeyword("Prt") << Prt_ << token::END_STATEMENT << nl;
os.writeKeyword("kappa") << kappa_ << token::END_STATEMENT << nl;
os.writeKeyword("E") << E_ << token::END_STATEMENT << nl;
os.writeKeyword("hs") << hsName_ << token::END_STATEMENT << nl;
writeEntry("value", os);
}

View File

@ -66,6 +66,9 @@ class alphaSgsJayatillekeWallFunctionFvPatchScalarField
//- E coefficient
scalar E_;
//- Name of (sensible/total) enthalpy field
word hsName_;
// Solution parameters

View File

@ -3,6 +3,7 @@ EXE_INC = \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/turbulenceModels \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/basicSolidThermo/lnInclude
LIB_LIBS = \

View File

@ -45,5 +45,67 @@ timePrecision 6;
runTimeModifiable true;
functions
{
convergenceChecks
{
type residualControl;
functionObjectLibs ("libjobControl.so");
outputControl timeStep;
outputInterval 1;
maxResiduals
{
p 1e-2;
U 1e-3;
"(k|epsilon|omega)" 1e-3;
}
}
streamLines
{
type streamLine;
// Where to load it from (if not already in solver)
functionObjectLibs ("libfieldFunctionObjects.so");
// Output every
outputControl outputTime;
// outputInterval 10;
setFormat vtk; //gnuplot; //xmgr; //raw; //jplot;
// Velocity field to use for tracking.
U U;
// Tracked forwards (+U) or backwards (-U)
trackForward true;
// Names of fields to sample. Should contain above velocity field!
fields (p k U);
// Steps particles can travel before being removed
lifeTime 10000;
// Number of steps per cell (estimate). Set to 1 to disable subcycling.
nSubCycle 5;
// Cloud name to use
cloudName particleTracks;
// Seeding method. See the sampleSets in sampleDict.
seedSampleSet uniform; //cloud;//triSurfaceMeshPointSet;
uniformCoeffs
{
type uniform;
axis x; //distance;
start (-0.0205 0.001 0.00001);
end (-0.0205 0.0251 0.00001);
nPoints 10;
}
}
}
// ************************************************************************* //

View File

@ -37,8 +37,8 @@ boundaryField
"terrain_.*"
{
type nutkRoughWallFunction;
Ks 0.2; //Ks = 20 Z0
Cs 0.5;
Ks uniform 0.2; //Ks = 20 Z0
Cs uniform 0.5;
value uniform 0.0;
}

View File

@ -18,10 +18,10 @@ FoamFile
disk1
{
typeModel actuationDiskSource;
active on; // on/off switch
timeStart 0.0; // start time
active on; // on/off switch
timeStart 0.0; // start time
duration 1000.0; // duration
selectionMode cellSet; // cellSet // points //cellZone
selectionMode cellZone; // cellSet // points //cellZone
cellSet actuationDisk1; // cellSet name when selectionMode = cellSet
cellZone actuationDisk1; // cellZone name when selectionMode = cellZone
@ -37,10 +37,10 @@ disk1
disk2
{
typeModel actuationDiskSource;
active on; // on/off switch
timeStart 0.0; // start time
active on; // on/off switch
timeStart 0.0; // start time
duration 1000.0; // duration
selectionMode cellSet; // cellSet // points //cellZone
selectionMode cellZone; // cellSet // points //cellZone
cellSet actuationDisk2; // cellSet name when selectionMode = cellSet
cellZone actuationDisk2; // cellZone name when selectionMode = cellZone

View File

@ -40,7 +40,7 @@ solvers
smoother GaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother DICGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother DICGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother GaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -40,7 +40,7 @@ solvers
smoother DICGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother DICGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother DICGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother DICGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother DICGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother DICGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother DICGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother DICGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration false;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother GaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration off;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;

View File

@ -28,7 +28,7 @@ solvers
smoother GaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
nBottomSweeps 2;
nFinestSweeps 2;
cacheAgglomeration off;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;