mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'master' of /home/noisy3/OpenFOAM/OpenFOAM-dev
This commit is contained in:
@ -1,9 +1,9 @@
|
||||
// We do not have a top-level mesh. Construct the fvSolution for
|
||||
// the runTime instead.
|
||||
runTime.readOpt() = IOobject::MUST_READ_IF_MODIFIED;
|
||||
fvSolution solutionDict(runTime);
|
||||
|
||||
const dictionary& pimple = solutionDict.subDict("PIMPLE");
|
||||
|
||||
const int nOuterCorr =
|
||||
pimple.lookupOrDefault<int>("nOuterCorrectors", 1);
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
|
||||
@ -2,7 +2,7 @@ fvVectorMatrix UaEqn(Ua, Ua.dimensions()*dimVol/dimTime);
|
||||
fvVectorMatrix UbEqn(Ub, Ub.dimensions()*dimVol/dimTime);
|
||||
|
||||
{
|
||||
volTensorField Rca(-nuEffa*(fvc::grad(Ua)().T()));
|
||||
volTensorField Rca(-nuEffa*(T(fvc::grad(Ua))));
|
||||
Rca = Rca + (2.0/3.0)*sqr(Ct)*I*k - (2.0/3.0)*I*tr(Rca);
|
||||
|
||||
surfaceScalarField phiRa
|
||||
@ -36,7 +36,7 @@ fvVectorMatrix UbEqn(Ub, Ub.dimensions()*dimVol/dimTime);
|
||||
UaEqn.relax();
|
||||
|
||||
|
||||
volTensorField Rcb(-nuEffb*fvc::grad(Ub)().T());
|
||||
volTensorField Rcb(-nuEffb*T(fvc::grad(Ub)));
|
||||
Rcb = Rcb + (2.0/3.0)*I*k - (2.0/3.0)*I*tr(Rcb);
|
||||
|
||||
surfaceScalarField phiRb
|
||||
|
||||
@ -3,7 +3,7 @@ fvVectorMatrix UbEqn(Ub, Ub.dimensions()*dimVol/dimTime);
|
||||
|
||||
{
|
||||
{
|
||||
volTensorField gradUaT(fvc::grad(Ua)().T());
|
||||
volTensorField gradUaT(T(fvc::grad(Ua)));
|
||||
|
||||
if (kineticTheory.on())
|
||||
{
|
||||
@ -58,7 +58,7 @@ fvVectorMatrix UbEqn(Ub, Ub.dimensions()*dimVol/dimTime);
|
||||
}
|
||||
|
||||
{
|
||||
volTensorField gradUbT(fvc::grad(Ub)().T());
|
||||
volTensorField gradUbT(T(fvc::grad(Ub)));
|
||||
volTensorField Rcb
|
||||
(
|
||||
"Rcb",
|
||||
|
||||
@ -43,6 +43,8 @@ int main(int argc, char *argv[])
|
||||
" $HOME kjhkjhkjh \" \\$HOME/tyetyery $; ${FOAM_RUN} \n $; hkjh;"
|
||||
" $(DONOTSUBST) some other <${USER}> with '${__UNKNOWN:-some default}'"
|
||||
" value "
|
||||
" or with '${HOME:+Home was set}' via :+ alternative"
|
||||
" or with '${__UNKNOWN:+unknown}' empty"
|
||||
);
|
||||
|
||||
dictionary dict;
|
||||
|
||||
@ -31,6 +31,45 @@ License
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
//! \cond fileScope
|
||||
// Find the type/position of the ":-" or ":+" alternative values
|
||||
//
|
||||
static inline int findParameterAlternative
|
||||
(
|
||||
const std::string& s,
|
||||
std::string::size_type& pos,
|
||||
std::string::size_type endPos
|
||||
)
|
||||
{
|
||||
while (pos != std::string::npos)
|
||||
{
|
||||
pos = s.find(':', pos);
|
||||
if (pos != std::string::npos)
|
||||
{
|
||||
if (pos < endPos)
|
||||
{
|
||||
// in-range: check for '+' or '-' following the ':'
|
||||
const int altType = s[pos+1];
|
||||
if (altType == '+' || altType == '-')
|
||||
{
|
||||
return altType;
|
||||
}
|
||||
|
||||
++pos; // unknown/unsupported - continue at next position
|
||||
}
|
||||
else
|
||||
{
|
||||
// out-of-range: abort
|
||||
pos = std::string::npos;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
//! \endcond
|
||||
|
||||
|
||||
Foam::string Foam::stringOps::expand
|
||||
(
|
||||
const string& original,
|
||||
@ -66,7 +105,8 @@ Foam::string& Foam::stringOps::inplaceExpand
|
||||
string::size_type endVar = begVar;
|
||||
string::size_type delim = 0;
|
||||
|
||||
// The position of the ":-" default value
|
||||
// The type/position of the ":-" or ":+" alternative values
|
||||
int altType = 0;
|
||||
string::size_type altPos = string::npos;
|
||||
|
||||
if (s[begVar+1] == '{')
|
||||
@ -74,14 +114,11 @@ Foam::string& Foam::stringOps::inplaceExpand
|
||||
endVar = s.find('}', begVar);
|
||||
delim = 1;
|
||||
|
||||
// looks like ${parameter:-word}
|
||||
// check for ${parameter:-word} or ${parameter:+word}
|
||||
if (endVar != string::npos)
|
||||
{
|
||||
altPos = s.find(":-", begVar);
|
||||
if (altPos != string::npos && altPos > endVar)
|
||||
{
|
||||
altPos = string::npos;
|
||||
}
|
||||
altPos = begVar;
|
||||
altType = findParameterAlternative(s, altPos, endVar);
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -134,7 +171,7 @@ Foam::string& Foam::stringOps::inplaceExpand
|
||||
std::string altValue;
|
||||
if (altPos != string::npos)
|
||||
{
|
||||
// had ":-" default value
|
||||
// had ":-" or ":+" alternative value
|
||||
altValue = s.substr
|
||||
(
|
||||
altPos + 2,
|
||||
@ -148,17 +185,32 @@ Foam::string& Foam::stringOps::inplaceExpand
|
||||
|
||||
if (fnd != HashTable<string, word, string::hash>::end())
|
||||
{
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
endVar - begVar + 1,
|
||||
*fnd
|
||||
);
|
||||
begVar += (*fnd).size();
|
||||
if (altPos != string::npos && altType == '+')
|
||||
{
|
||||
// was found, use ":+" alternative
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
endVar - begVar + 1,
|
||||
altValue
|
||||
);
|
||||
begVar += altValue.size();
|
||||
}
|
||||
else
|
||||
{
|
||||
// was found, use value
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
endVar - begVar + 1,
|
||||
*fnd
|
||||
);
|
||||
begVar += (*fnd).size();
|
||||
}
|
||||
}
|
||||
else if (altPos != string::npos)
|
||||
else if (altPos != string::npos && altType == '-')
|
||||
{
|
||||
// use alternative provided
|
||||
// was not found, use ":-" alternative
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
@ -169,12 +221,8 @@ Foam::string& Foam::stringOps::inplaceExpand
|
||||
}
|
||||
else
|
||||
{
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
endVar - begVar + 1,
|
||||
""
|
||||
);
|
||||
// substitute with nothing, also for ":+" alternative
|
||||
s.std::string::erase(begVar, endVar - begVar + 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -351,7 +399,8 @@ Foam::string& Foam::stringOps::inplaceExpand
|
||||
string::size_type endVar = begVar;
|
||||
string::size_type delim = 0;
|
||||
|
||||
// The position of the ":-" default value
|
||||
// The type/position of the ":-" or ":+" alternative values
|
||||
int altType = 0;
|
||||
string::size_type altPos = string::npos;
|
||||
|
||||
if (s[begVar+1] == '{')
|
||||
@ -359,14 +408,11 @@ Foam::string& Foam::stringOps::inplaceExpand
|
||||
endVar = s.find('}', begVar);
|
||||
delim = 1;
|
||||
|
||||
// looks like ${parameter:-word}
|
||||
// check for ${parameter:-word} or ${parameter:+word}
|
||||
if (endVar != string::npos)
|
||||
{
|
||||
altPos = s.find(":-", begVar);
|
||||
if (altPos != string::npos && altPos > endVar)
|
||||
{
|
||||
altPos = string::npos;
|
||||
}
|
||||
altPos = begVar;
|
||||
altType = findParameterAlternative(s, altPos, endVar);
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -413,7 +459,7 @@ Foam::string& Foam::stringOps::inplaceExpand
|
||||
std::string altValue;
|
||||
if (altPos != string::npos)
|
||||
{
|
||||
// had ":-" default value
|
||||
// had ":-" or ":+" alternative value
|
||||
altValue = s.substr
|
||||
(
|
||||
altPos + 2,
|
||||
@ -424,34 +470,53 @@ Foam::string& Foam::stringOps::inplaceExpand
|
||||
const string varValue = getEnv(varName);
|
||||
if (varValue.size())
|
||||
{
|
||||
// direct replacement
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
endVar - begVar + 1,
|
||||
varValue
|
||||
);
|
||||
begVar += varValue.size();
|
||||
if (altPos != string::npos && altType == '+')
|
||||
{
|
||||
// was found, use ":+" alternative
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
endVar - begVar + 1,
|
||||
altValue
|
||||
);
|
||||
begVar += altValue.size();
|
||||
}
|
||||
else
|
||||
{
|
||||
// was found, use value
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
endVar - begVar + 1,
|
||||
varValue
|
||||
);
|
||||
begVar += varValue.size();
|
||||
}
|
||||
}
|
||||
else if (altPos != string::npos)
|
||||
{
|
||||
// use alternative provided
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
endVar - begVar + 1,
|
||||
altValue
|
||||
);
|
||||
begVar += altValue.size();
|
||||
// use ":-" or ":+" alternative values
|
||||
if (altType == '-')
|
||||
{
|
||||
// was not found, use ":-" alternative
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
endVar - begVar + 1,
|
||||
altValue
|
||||
);
|
||||
begVar += altValue.size();
|
||||
}
|
||||
else
|
||||
{
|
||||
// was not found, ":+" alternative implies
|
||||
// substitute with nothing
|
||||
s.std::string::erase(begVar, endVar - begVar + 1);
|
||||
}
|
||||
}
|
||||
else if (allowEmpty)
|
||||
{
|
||||
s.std::string::replace
|
||||
(
|
||||
begVar,
|
||||
endVar - begVar + 1,
|
||||
""
|
||||
);
|
||||
s.std::string::erase(begVar, endVar - begVar + 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -459,7 +524,7 @@ Foam::string& Foam::stringOps::inplaceExpand
|
||||
(
|
||||
"stringOps::inplaceExpand(string&, const bool)"
|
||||
)
|
||||
<< "Unknown variable name " << varName << '.'
|
||||
<< "Unknown variable name '" << varName << "'"
|
||||
<< exit(FatalError);
|
||||
}
|
||||
}
|
||||
|
||||
@ -62,6 +62,13 @@ namespace stringOps
|
||||
// If parameter is unset or null, the \c defValue is substituted.
|
||||
// Otherwise, the value of parameter is substituted.
|
||||
//
|
||||
// Supports alternative values as per the Bourne/Korn shell.
|
||||
// \code
|
||||
// "${parameter:+altValue}"
|
||||
// \endcode
|
||||
// If parameter is unset or null, nothing is substituted.
|
||||
// Otherwise the \c altValue is substituted.
|
||||
//
|
||||
// Any unknown entries are removed silently.
|
||||
//
|
||||
// Malformed entries (eg, brace mismatch, sigil followed by bad character)
|
||||
@ -89,6 +96,13 @@ namespace stringOps
|
||||
// If parameter is unset or null, the \c defValue is substituted.
|
||||
// Otherwise, the value of parameter is substituted.
|
||||
//
|
||||
// Supports alternative values as per the Bourne/Korn shell.
|
||||
// \code
|
||||
// "${parameter:+altValue}"
|
||||
// \endcode
|
||||
// If parameter is unset or null, nothing is substituted.
|
||||
// Otherwise the \c altValue is substituted.
|
||||
//
|
||||
// Any unknown entries are removed silently.
|
||||
//
|
||||
// Malformed entries (eg, brace mismatch, sigil followed by bad character)
|
||||
@ -155,6 +169,13 @@ namespace stringOps
|
||||
// If parameter is unset or null, the \c defValue is substituted.
|
||||
// Otherwise, the value of parameter is substituted.
|
||||
//
|
||||
// Supports alternative values as per the Bourne/Korn shell.
|
||||
// \code
|
||||
// "${parameter:+altValue}"
|
||||
// \endcode
|
||||
// If parameter is unset or null, nothing is substituted.
|
||||
// Otherwise the \c altValue is substituted.
|
||||
//
|
||||
// Any unknown entries are removed silently, if allowEmpty is true.
|
||||
//
|
||||
// Malformed entries (eg, brace mismatch, sigil followed by bad character)
|
||||
@ -187,6 +208,13 @@ namespace stringOps
|
||||
// If parameter is unset or null, the \c defValue is substituted.
|
||||
// Otherwise, the value of parameter is substituted.
|
||||
//
|
||||
// Supports alternative values as per the Bourne/Korn shell.
|
||||
// \code
|
||||
// "${parameter:+altValue}"
|
||||
// \endcode
|
||||
// If parameter is unset or null, nothing is substituted.
|
||||
// Otherwise the \c altValue is substituted.
|
||||
//
|
||||
// Any unknown entries are removed silently, if allowEmpty is true.
|
||||
//
|
||||
// Malformed entries (eg, brace mismatch, sigil followed by bad character)
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -1180,6 +1180,43 @@ void Foam::fvMatrix<Type>::operator*=
|
||||
}
|
||||
|
||||
|
||||
template<class Type>
|
||||
void Foam::fvMatrix<Type>::operator*=
|
||||
(
|
||||
const volScalarField& vsf
|
||||
)
|
||||
{
|
||||
dimensions_ *= vsf.dimensions();
|
||||
lduMatrix::operator*=(vsf.field());
|
||||
source_ *= vsf.field();
|
||||
|
||||
forAll(vsf.boundaryField(), patchI)
|
||||
{
|
||||
const fvPatchScalarField& psf = vsf.boundaryField()[patchI];
|
||||
|
||||
if (psf.coupled())
|
||||
{
|
||||
internalCoeffs_[patchI] *= psf.patchInternalField();
|
||||
boundaryCoeffs_[patchI] *= psf.patchNeighbourField();
|
||||
}
|
||||
else
|
||||
{
|
||||
internalCoeffs_[patchI] *= psf.patchInternalField();
|
||||
boundaryCoeffs_[patchI] *= psf;
|
||||
}
|
||||
}
|
||||
|
||||
if (faceFluxCorrectionPtr_)
|
||||
{
|
||||
FatalErrorIn
|
||||
(
|
||||
"fvMatrix<Type>::operator*="
|
||||
"(const DimensionedField<scalar, volMesh>&)"
|
||||
) << "cannot scale a matrix containing a faceFluxCorrection"
|
||||
<< abort(FatalError);
|
||||
}
|
||||
}
|
||||
|
||||
template<class Type>
|
||||
void Foam::fvMatrix<Type>::operator*=
|
||||
(
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2004-2010 OpenCFD Ltd.
|
||||
\\ / A nd | Copyright (C) 2004-2011 OpenCFD Ltd.
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -460,6 +460,7 @@ public:
|
||||
|
||||
void operator*=(const DimensionedField<scalar, volMesh>&);
|
||||
void operator*=(const tmp<DimensionedField<scalar, volMesh> >&);
|
||||
void operator*=(const volScalarField&);
|
||||
void operator*=(const tmp<volScalarField>&);
|
||||
|
||||
void operator*=(const dimensioned<scalar>&);
|
||||
|
||||
@ -27,24 +27,6 @@ License
|
||||
|
||||
// * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * * //
|
||||
|
||||
template<class CloudType>
|
||||
Foam::label Foam::LocalInteraction<CloudType>::applyToPatch
|
||||
(
|
||||
const label globalPatchI
|
||||
) const
|
||||
{
|
||||
forAll(patchIDs_, patchI)
|
||||
{
|
||||
if (patchIDs_[patchI] == globalPatchI)
|
||||
{
|
||||
return patchI;
|
||||
}
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
template<class CloudType>
|
||||
void Foam::LocalInteraction<CloudType>::readProps()
|
||||
{
|
||||
@ -131,7 +113,6 @@ Foam::LocalInteraction<CloudType>::LocalInteraction
|
||||
:
|
||||
PatchInteractionModel<CloudType>(dict, cloud, typeName),
|
||||
patchData_(cloud.mesh(), this->coeffDict()),
|
||||
patchIDs_(patchData_.size()),
|
||||
nEscape0_(patchData_.size(), 0),
|
||||
massEscape0_(patchData_.size(), 0.0),
|
||||
nStick0_(patchData_.size(), 0),
|
||||
@ -173,7 +154,6 @@ Foam::LocalInteraction<CloudType>::LocalInteraction
|
||||
:
|
||||
PatchInteractionModel<CloudType>(pim),
|
||||
patchData_(pim.patchData_),
|
||||
patchIDs_(pim.patchIDs_),
|
||||
nEscape0_(pim.nEscape0_),
|
||||
massEscape0_(pim.massEscape0_),
|
||||
nStick0_(pim.nStick0_),
|
||||
@ -208,7 +188,7 @@ bool Foam::LocalInteraction<CloudType>::correct
|
||||
|
||||
bool& active = p.active();
|
||||
|
||||
label patchI = applyToPatch(pp.index());
|
||||
label patchI = patchData_.applyToPatch(pp.index());
|
||||
|
||||
if (patchI >= 0)
|
||||
{
|
||||
|
||||
@ -53,9 +53,6 @@ class LocalInteraction
|
||||
//- List of participating patches
|
||||
const patchInteractionDataList patchData_;
|
||||
|
||||
//- List of participating patch ids
|
||||
List<label> patchIDs_;
|
||||
|
||||
|
||||
// Counters for initial particle fates
|
||||
|
||||
@ -89,9 +86,6 @@ class LocalInteraction
|
||||
|
||||
// Private Member Functions
|
||||
|
||||
//- Returns local patchI if patch is in patchIds_ list
|
||||
label applyToPatch(const label globalPatchI) const;
|
||||
|
||||
//- Read interaction properties from file
|
||||
void readProps();
|
||||
|
||||
|
||||
@ -36,15 +36,12 @@ Foam::label Foam::PatchPostProcessing<CloudType>::applyToPatch
|
||||
const label globalPatchI
|
||||
) const
|
||||
{
|
||||
label patchI = 0;
|
||||
forAllConstIter(labelHashSet, patchIDs_, iter)
|
||||
forAll(patchIDs_, i)
|
||||
{
|
||||
if (iter.key() == globalPatchI)
|
||||
if (patchIDs_[i] == globalPatchI)
|
||||
{
|
||||
return patchI;
|
||||
return i;
|
||||
}
|
||||
|
||||
patchI++;
|
||||
}
|
||||
|
||||
return -1;
|
||||
@ -105,7 +102,7 @@ void Foam::PatchPostProcessing<CloudType>::write()
|
||||
);
|
||||
sort(globalData);
|
||||
|
||||
patchOutFile<< "# Time " + parcelType::propHeader << nl;
|
||||
patchOutFile<< "# Time currentProc " + parcelType::propHeader << nl;
|
||||
|
||||
forAll(globalData, dataI)
|
||||
{
|
||||
@ -135,6 +132,7 @@ Foam::PatchPostProcessing<CloudType>::PatchPostProcessing
|
||||
const wordList allPatchNames = owner.mesh().boundaryMesh().names();
|
||||
wordList patchName(this->coeffDict().lookup("patches"));
|
||||
|
||||
labelHashSet uniquePatchIDs;
|
||||
forAllReverse(patchName, i)
|
||||
{
|
||||
labelList patchIDs = findStrings(patchName[i], allPatchNames);
|
||||
@ -152,9 +150,18 @@ Foam::PatchPostProcessing<CloudType>::PatchPostProcessing
|
||||
<< endl;
|
||||
}
|
||||
|
||||
forAll(patchIDs, j)
|
||||
uniquePatchIDs.insert(patchIDs);
|
||||
}
|
||||
|
||||
patchIDs_ = uniquePatchIDs.toc();
|
||||
|
||||
if (debug)
|
||||
{
|
||||
forAll(patchIDs_, i)
|
||||
{
|
||||
patchIDs_.insert(patchIDs[j]);
|
||||
const label patchI = patchIDs_[i];
|
||||
const word& patchName = owner.mesh().boundaryMesh()[patchI].name();
|
||||
Info<< "Post-process patch " << patchName << endl;
|
||||
}
|
||||
}
|
||||
|
||||
@ -195,7 +202,8 @@ void Foam::PatchPostProcessing<CloudType>::postPatch
|
||||
if (localPatchI != -1 && patchData_[localPatchI].size() < maxStoredParcels_)
|
||||
{
|
||||
OStringStream data;
|
||||
data<< this->owner().time().timeName() << ' ' << p;
|
||||
data<< this->owner().time().timeName() << ' ' << Pstream::myProcNo()
|
||||
<< ' ' << p;
|
||||
patchData_[localPatchI].append(data.str());
|
||||
}
|
||||
}
|
||||
|
||||
@ -59,7 +59,7 @@ class PatchPostProcessing
|
||||
label maxStoredParcels_;
|
||||
|
||||
//- List of patch indices to post-process
|
||||
labelHashSet patchIDs_;
|
||||
labelList patchIDs_;
|
||||
|
||||
//- List of output data per patch
|
||||
List<DynamicList<string> > patchData_;
|
||||
|
||||
@ -90,7 +90,7 @@ Foam::radiation::fvDOM::fvDOM(const volScalarField& T)
|
||||
mesh_.time().timeName(),
|
||||
mesh_,
|
||||
IOobject::NO_READ,
|
||||
IOobject::AUTO_WRITE
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
mesh_,
|
||||
dimensionedScalar("a", dimless/dimLength, 0.0)
|
||||
|
||||
@ -32,8 +32,8 @@ boundaryField
|
||||
sides
|
||||
{
|
||||
type pressureInletOutletVelocity;
|
||||
outletValue uniform (0 0 0);
|
||||
value uniform (0 0 0);
|
||||
phi phi;
|
||||
}
|
||||
base
|
||||
{
|
||||
@ -43,7 +43,7 @@ boundaryField
|
||||
inlet
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0.05 0);
|
||||
value uniform (0 0.01 0);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -32,9 +32,9 @@ boundaryField
|
||||
p0 $internalField;
|
||||
U U;
|
||||
phi phi;
|
||||
rho none;
|
||||
rho rho;
|
||||
psi none;
|
||||
gamma 1;
|
||||
gamma 0;
|
||||
value $internalField;
|
||||
}
|
||||
base
|
||||
|
||||
@ -14,7 +14,6 @@ FoamFile
|
||||
location "constant";
|
||||
object LESProperties;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
LESModel oneEqEddy;
|
||||
@ -26,6 +25,11 @@ turbulence on;
|
||||
printCoeffs on;
|
||||
|
||||
|
||||
oneEqEddyCoeffs
|
||||
{
|
||||
ck 0.07;
|
||||
}
|
||||
|
||||
cubeRootVolCoeffs
|
||||
{
|
||||
deltaCoeff 1;
|
||||
|
||||
@ -20,7 +20,7 @@ combustionModel infinitelyFastChemistry;
|
||||
|
||||
infinitelyFastChemistryCoeffs
|
||||
{
|
||||
C 10.0;
|
||||
C 5.0;
|
||||
}
|
||||
|
||||
noCombustionCoeffs
|
||||
|
||||
@ -18,20 +18,20 @@ convertToMeters 1;
|
||||
|
||||
vertices
|
||||
(
|
||||
(-0.3 0 -0.3)
|
||||
( 0.3 0 -0.3)
|
||||
( 0.3 1.0 -0.3)
|
||||
(-0.3 1.0 -0.3)
|
||||
(-0.3 0 0.3)
|
||||
( 0.3 0 0.3)
|
||||
( 0.3 1.0 0.3)
|
||||
(-0.3 1.0 0.3)
|
||||
(-0.5 0 -0.5)
|
||||
( 0.5 0 -0.5)
|
||||
( 0.5 1.0 -0.5)
|
||||
(-0.5 1.0 -0.5)
|
||||
(-0.5 0 0.5)
|
||||
( 0.5 0 0.5)
|
||||
( 0.5 1.0 0.5)
|
||||
(-0.5 1.0 0.5)
|
||||
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
hex (0 1 2 3 4 5 6 7) (70 70 70) simpleGrading (1 1 1)
|
||||
hex (0 1 2 3 4 5 6 7) (60 60 60) simpleGrading (1 1 1)
|
||||
);
|
||||
|
||||
edges
|
||||
|
||||
@ -20,26 +20,26 @@ FoamFile
|
||||
base
|
||||
{
|
||||
type patch;
|
||||
nFaces 4704;
|
||||
startFace 1014300;
|
||||
nFaces 3456;
|
||||
startFace 637200;
|
||||
}
|
||||
outlet
|
||||
{
|
||||
type patch;
|
||||
nFaces 4900;
|
||||
startFace 1019004;
|
||||
nFaces 3600;
|
||||
startFace 640656;
|
||||
}
|
||||
sides
|
||||
{
|
||||
type patch;
|
||||
nFaces 19600;
|
||||
startFace 1023904;
|
||||
nFaces 14400;
|
||||
startFace 644256;
|
||||
}
|
||||
inlet
|
||||
{
|
||||
type patch;
|
||||
nFaces 196;
|
||||
startFace 1043504;
|
||||
nFaces 144;
|
||||
startFace 658656;
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@ -39,7 +39,7 @@ fvDOMCoeffs
|
||||
// Number of flow iterations per radiation iteration
|
||||
solverFreq 10;
|
||||
|
||||
absorptionEmissionModel constantAbsorptionEmission;
|
||||
absorptionEmissionModel greyMeanAbsorptionEmission;
|
||||
|
||||
constantAbsorptionEmissionCoeffs
|
||||
{
|
||||
|
||||
@ -1 +1 @@
|
||||
faceSet f0 new boxToFace (-0.06 -0.001 -0.06)(0.06 0.005 0.06)
|
||||
faceSet f0 new boxToFace (-0.1 -0.001 -0.1)(0.1 0.005 0.1)
|
||||
|
||||
@ -22,13 +22,13 @@ startTime 0.0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 10.0;
|
||||
endTime 6.0;
|
||||
|
||||
deltaT 0.001;
|
||||
|
||||
writeControl adjustableRunTime;
|
||||
|
||||
writeInterval 0.1;
|
||||
writeInterval 0.05;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
@ -48,7 +48,7 @@ runTimeModifiable yes;
|
||||
|
||||
adjustTimeStep yes;
|
||||
|
||||
maxCo 0.25;
|
||||
maxCo 0.2;
|
||||
|
||||
maxDeltaT 0.1;
|
||||
|
||||
|
||||
@ -27,15 +27,15 @@ gradSchemes
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
div(phi,U) Gauss limitedLinear 1;
|
||||
div(phi,k) Gauss limitedLinear 1;
|
||||
flux(phi,ft) Gauss limitedLinear01 1;
|
||||
default none;
|
||||
div(phi,U) Gauss linear;
|
||||
div(phi,k) Gauss limitedLinear 0.1;
|
||||
flux(phi,ft) Gauss limitedLinear01 0.1;
|
||||
div(phi,ft_b_h) Gauss multivariateSelection
|
||||
{
|
||||
fu limitedLinear01 1;
|
||||
ft limitedLinear01 1;
|
||||
hs limitedLinear 1;
|
||||
fu limitedLinear 0.1;
|
||||
ft limitedLinear 0.1;
|
||||
hs limitedLinear 0.1;
|
||||
};
|
||||
div((muEff*dev2(T(grad(U))))) Gauss linear;
|
||||
div(phiU,p) Gauss linear;
|
||||
@ -44,7 +44,7 @@ divSchemes
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear corrected;
|
||||
default Gauss linear uncorrected;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -54,7 +54,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default corrected;
|
||||
default uncorrected;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -40,7 +40,7 @@ solvers
|
||||
p_rghFinal
|
||||
{
|
||||
$p_rgh;
|
||||
tolerance 1e-7;
|
||||
tolerance 1e-8;
|
||||
relTol 0;
|
||||
};
|
||||
|
||||
@ -57,7 +57,7 @@ solvers
|
||||
"(U|ft|fu|k|hs)Final"
|
||||
{
|
||||
$U;
|
||||
tolerance 1e-7;
|
||||
tolerance 1e-8;
|
||||
relTol 0;
|
||||
};
|
||||
|
||||
@ -77,7 +77,7 @@ solvers
|
||||
{
|
||||
solver PCG;
|
||||
preconditioner DIC;
|
||||
tolerance 1e-06;
|
||||
tolerance 1e-04;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
@ -85,9 +85,9 @@ solvers
|
||||
|
||||
PISO
|
||||
{
|
||||
momentumPredictor yes;
|
||||
momentumPredictor no;
|
||||
nOuterCorrectors 1;
|
||||
nCorrectors 2;
|
||||
nCorrectors 1;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
}
|
||||
|
||||
|
||||
@ -0,0 +1,25 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object radiationProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
radiation off;
|
||||
|
||||
radiationModel none;
|
||||
|
||||
noRadiation
|
||||
{
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -17,8 +17,6 @@ FoamFile
|
||||
thermoType constSolidThermo;
|
||||
//thermoType isotropicKSolidThermo;
|
||||
//thermoType directionalKSolidThermo;
|
||||
//thermoType solidMixtureThermo<multiComponentSolidMixture<exponentialSolidTransport<constSolidRad<exponentialSolidThermo<constRho>>>>>;
|
||||
|
||||
|
||||
constSolidThermoCoeffs
|
||||
{
|
||||
@ -28,12 +26,12 @@ constSolidThermoCoeffs
|
||||
K K [1 1 -3 -1 0 0 0] 80;
|
||||
|
||||
//- radiative properties
|
||||
kappa kappa [0 -1 0 0 0 0 0] 0;
|
||||
sigmaS sigmaS [0 -1 0 0 0 0 0] 0;
|
||||
emissivity emissivity [0 0 0 0 0 0 0] 1;
|
||||
kappa kappa [0 -1 0 0 0 0 0] 0;
|
||||
sigmaS sigmaS [0 -1 0 0 0 0 0] 0;
|
||||
emissivity emissivity [0 0 0 0 0 0 0] 0;
|
||||
|
||||
//- chemical properties
|
||||
Hf Hf [0 2 -2 0 0 0 0] 1;
|
||||
Hf Hf [0 2 -2 0 0 0 0] 0;
|
||||
}
|
||||
|
||||
|
||||
@ -52,7 +50,7 @@ isotropicKSolidThermoCoeffs
|
||||
sigmaSValues (0 0);
|
||||
|
||||
//- chemical properties
|
||||
HfValues (1 1);
|
||||
HfValues (0 0);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -0,0 +1,25 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object radiationProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
radiation off;
|
||||
|
||||
radiationModel none;
|
||||
|
||||
noRadiation
|
||||
{
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -10,7 +10,6 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
note "mesh decomposition control dictionary";
|
||||
location "system";
|
||||
object decomposeParDict;
|
||||
}
|
||||
@ -19,13 +18,7 @@ FoamFile
|
||||
|
||||
numberOfSubdomains 4;
|
||||
|
||||
//- Keep owner and neighbour on same processor for faces in zones:
|
||||
// preserveFaceZones (heater solid1 solid3);
|
||||
|
||||
method scotch;
|
||||
// method hierarchical;
|
||||
// method simple;
|
||||
// method manual;
|
||||
|
||||
simpleCoeffs
|
||||
{
|
||||
@ -42,15 +35,6 @@ hierarchicalCoeffs
|
||||
|
||||
scotchCoeffs
|
||||
{
|
||||
//processorWeights
|
||||
//(
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
//);
|
||||
//writeGraph true;
|
||||
//strategy "b";
|
||||
}
|
||||
|
||||
manualCoeffs
|
||||
@ -58,15 +42,4 @@ manualCoeffs
|
||||
dataFile "decompositionData";
|
||||
}
|
||||
|
||||
|
||||
//// Is the case distributed
|
||||
//distributed yes;
|
||||
//// Per slave (so nProcs-1 entries) the directory above the case.
|
||||
//roots
|
||||
//(
|
||||
// "/tmp"
|
||||
// "/tmp"
|
||||
//);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -16,7 +16,7 @@ FoamFile
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
@ -26,7 +26,7 @@ gradSchemes
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
default none;
|
||||
div(phi,U) Gauss upwind;
|
||||
div(phiU,p) Gauss linear;
|
||||
div(phi,h) Gauss upwind;
|
||||
|
||||
@ -23,13 +23,13 @@ startTime 0.001;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 200;
|
||||
endTime 100;
|
||||
|
||||
deltaT 0.001;
|
||||
|
||||
writeControl adjustableRunTime;
|
||||
|
||||
writeInterval 5;
|
||||
writeInterval 10;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
@ -52,11 +52,4 @@ maxDi 10.0;
|
||||
|
||||
adjustTimeStep yes;
|
||||
|
||||
libs
|
||||
(
|
||||
"libOpenFOAM.so"
|
||||
"libcompressibleTurbulenceModel.so"
|
||||
"libcompressibleRASModels.so"
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -10,22 +10,14 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
note "mesh decomposition control dictionary";
|
||||
location "system";
|
||||
object decomposeParDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
numberOfSubdomains 4;
|
||||
|
||||
//- Keep owner and neighbour on same processor for faces in zones:
|
||||
// preserveFaceZones (heater solid1 solid3);
|
||||
|
||||
method scotch;
|
||||
// method hierarchical;
|
||||
// method simple;
|
||||
// method manual;
|
||||
|
||||
simpleCoeffs
|
||||
{
|
||||
@ -42,15 +34,6 @@ hierarchicalCoeffs
|
||||
|
||||
scotchCoeffs
|
||||
{
|
||||
//processorWeights
|
||||
//(
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
//);
|
||||
//writeGraph true;
|
||||
//strategy "b";
|
||||
}
|
||||
|
||||
manualCoeffs
|
||||
@ -58,15 +41,4 @@ manualCoeffs
|
||||
dataFile "decompositionData";
|
||||
}
|
||||
|
||||
|
||||
//// Is the case distributed
|
||||
//distributed yes;
|
||||
//// Per slave (so nProcs-1 entries) the directory above the case.
|
||||
//roots
|
||||
//(
|
||||
// "/tmp"
|
||||
// "/tmp"
|
||||
//);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -54,6 +54,7 @@ dictionaryReplacement
|
||||
{
|
||||
internalField uniform 0.5;
|
||||
|
||||
|
||||
boundaryField
|
||||
{
|
||||
".*"
|
||||
|
||||
@ -10,22 +10,14 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
note "mesh decomposition control dictionary";
|
||||
location "system";
|
||||
object decomposeParDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
numberOfSubdomains 4;
|
||||
|
||||
//- Keep owner and neighbour on same processor for faces in zones:
|
||||
// preserveFaceZones (heater solid1 solid3);
|
||||
|
||||
method scotch;
|
||||
// method hierarchical;
|
||||
// method simple;
|
||||
// method manual;
|
||||
|
||||
simpleCoeffs
|
||||
{
|
||||
@ -42,15 +34,6 @@ hierarchicalCoeffs
|
||||
|
||||
scotchCoeffs
|
||||
{
|
||||
//processorWeights
|
||||
//(
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
//);
|
||||
//writeGraph true;
|
||||
//strategy "b";
|
||||
}
|
||||
|
||||
manualCoeffs
|
||||
@ -58,15 +41,4 @@ manualCoeffs
|
||||
dataFile "decompositionData";
|
||||
}
|
||||
|
||||
|
||||
//// Is the case distributed
|
||||
//distributed yes;
|
||||
//// Per slave (so nProcs-1 entries) the directory above the case.
|
||||
//roots
|
||||
//(
|
||||
// "/tmp"
|
||||
// "/tmp"
|
||||
//);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -16,7 +16,7 @@ FoamFile
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
@ -32,7 +32,7 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(K,T) Gauss linear limited 0.333;
|
||||
laplacian(K,T) Gauss linear limited 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
|
||||
@ -54,6 +54,7 @@ dictionaryReplacement
|
||||
{
|
||||
internalField uniform 0.5;
|
||||
|
||||
|
||||
boundaryField
|
||||
{
|
||||
".*"
|
||||
|
||||
@ -10,22 +10,14 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
note "mesh decomposition control dictionary";
|
||||
location "system";
|
||||
object decomposeParDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
numberOfSubdomains 4;
|
||||
|
||||
//- Keep owner and neighbour on same processor for faces in zones:
|
||||
// preserveFaceZones (heater solid1 solid3);
|
||||
|
||||
method scotch;
|
||||
// method hierarchical;
|
||||
// method simple;
|
||||
// method manual;
|
||||
|
||||
simpleCoeffs
|
||||
{
|
||||
@ -42,15 +34,6 @@ hierarchicalCoeffs
|
||||
|
||||
scotchCoeffs
|
||||
{
|
||||
//processorWeights
|
||||
//(
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
//);
|
||||
//writeGraph true;
|
||||
//strategy "b";
|
||||
}
|
||||
|
||||
manualCoeffs
|
||||
@ -58,15 +41,4 @@ manualCoeffs
|
||||
dataFile "decompositionData";
|
||||
}
|
||||
|
||||
|
||||
//// Is the case distributed
|
||||
//distributed yes;
|
||||
//// Per slave (so nProcs-1 entries) the directory above the case.
|
||||
//roots
|
||||
//(
|
||||
// "/tmp"
|
||||
// "/tmp"
|
||||
//);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -32,7 +32,7 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(K,T) Gauss linear limited 0.333;
|
||||
laplacian(K,T) Gauss linear limited 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
|
||||
@ -10,22 +10,14 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
note "mesh decomposition control dictionary";
|
||||
location "system";
|
||||
object decomposeParDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
numberOfSubdomains 4;
|
||||
|
||||
//- Keep owner and neighbour on same processor for faces in zones:
|
||||
// preserveFaceZones (heater solid1 solid3);
|
||||
|
||||
method scotch;
|
||||
// method hierarchical;
|
||||
// method simple;
|
||||
// method manual;
|
||||
|
||||
simpleCoeffs
|
||||
{
|
||||
@ -42,15 +34,6 @@ hierarchicalCoeffs
|
||||
|
||||
scotchCoeffs
|
||||
{
|
||||
//processorWeights
|
||||
//(
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
//);
|
||||
//writeGraph true;
|
||||
//strategy "b";
|
||||
}
|
||||
|
||||
manualCoeffs
|
||||
@ -58,15 +41,4 @@ manualCoeffs
|
||||
dataFile "decompositionData";
|
||||
}
|
||||
|
||||
|
||||
//// Is the case distributed
|
||||
//distributed yes;
|
||||
//// Per slave (so nProcs-1 entries) the directory above the case.
|
||||
//roots
|
||||
//(
|
||||
// "/tmp"
|
||||
// "/tmp"
|
||||
//);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -0,0 +1,25 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object radiationProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
radiation off;
|
||||
|
||||
radiationModel none;
|
||||
|
||||
noRadiation
|
||||
{
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,25 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object radiationProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
radiation off;
|
||||
|
||||
radiationModel none;
|
||||
|
||||
noRadiation
|
||||
{
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -52,11 +52,4 @@ maxDi 10.0;
|
||||
|
||||
adjustTimeStep yes;
|
||||
|
||||
libs
|
||||
(
|
||||
"libOpenFOAM.so"
|
||||
"libcompressibleTurbulenceModel.so"
|
||||
"libcompressibleRASModels.so"
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -0,0 +1,25 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object radiationProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
radiation off;
|
||||
|
||||
radiationModel none;
|
||||
|
||||
noRadiation
|
||||
{
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,25 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object radiationProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
radiation off;
|
||||
|
||||
radiationModel none;
|
||||
|
||||
noRadiation
|
||||
{
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -23,13 +23,13 @@ startTime 0.001;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 200;
|
||||
endTime 75;
|
||||
|
||||
deltaT 0.001;
|
||||
|
||||
writeControl adjustableRunTime;
|
||||
|
||||
writeInterval 50;
|
||||
writeInterval 15;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
@ -47,15 +47,8 @@ runTimeModifiable true;
|
||||
|
||||
maxCo 0.3;
|
||||
|
||||
maxDi 10.0;
|
||||
maxDi 10.0;
|
||||
|
||||
adjustTimeStep yes;
|
||||
|
||||
libs
|
||||
(
|
||||
"libOpenFOAM.so"
|
||||
"libcompressibleTurbulenceModel.so"
|
||||
"libcompressibleRASModels.so"
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -0,0 +1,25 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object radiationProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
radiation off;
|
||||
|
||||
radiationModel none;
|
||||
|
||||
noRadiation
|
||||
{
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,25 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object radiationProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
radiation off;
|
||||
|
||||
radiationModel none;
|
||||
|
||||
noRadiation
|
||||
{
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -45,11 +45,4 @@ timePrecision 6;
|
||||
|
||||
runTimeModifiable true;
|
||||
|
||||
libs
|
||||
(
|
||||
"libOpenFOAM.so"
|
||||
"libcompressibleTurbulenceModel.so"
|
||||
"libcompressibleRASModels.so"
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -19,7 +19,7 @@ runParallel snappyHexMesh 2 -overwrite
|
||||
# Add wildcard entries for meshed patches since not preserved
|
||||
# by decomposePar. Notice -literalRE option to add wildcard itself
|
||||
# without evaluation.
|
||||
runParallel changeDictionary 2 -literalRE
|
||||
runParallel changeDictionary 2 -literalRE -enableFunctionEntries
|
||||
|
||||
cp system/decomposeParDict-4proc system/decomposeParDict
|
||||
runParallel redistributeMeshPar 4 -overwrite
|
||||
|
||||
@ -0,0 +1,34 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object RASProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
RASModel kEpsilon;
|
||||
|
||||
turbulence on;
|
||||
|
||||
printCoeffs on;
|
||||
|
||||
kEpsilonCoeffs
|
||||
{
|
||||
Cmu 0.09;
|
||||
C1 1.44;
|
||||
C2 1.92;
|
||||
C3 -0.33;
|
||||
sigmak 1.0;
|
||||
sigmaEps 1.11; //Original value:1.44
|
||||
Prt 1.0;
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,71 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
convertToMeters 1;
|
||||
|
||||
vertices
|
||||
(
|
||||
( 581321 4.78537e+06 930)
|
||||
( 582290 4.78537e+06 930)
|
||||
( 582290 4.78624e+06 930)
|
||||
( 581321 4.78624e+06 930)
|
||||
( 581321 4.78537e+06 1500)
|
||||
( 582290 4.78537e+06 1500)
|
||||
( 582290 4.78624e+06 1500)
|
||||
( 581321 4.78624e+06 1500)
|
||||
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
hex (0 1 2 3 4 5 6 7) (30 30 20) simpleGrading (1 1 1)
|
||||
);
|
||||
|
||||
edges
|
||||
(
|
||||
);
|
||||
|
||||
patches
|
||||
(
|
||||
patch outlet
|
||||
(
|
||||
(2 6 5 1)
|
||||
)
|
||||
patch sides
|
||||
(
|
||||
(1 5 4 0)
|
||||
(3 7 6 2)
|
||||
)
|
||||
patch inlet
|
||||
(
|
||||
(0 4 7 3)
|
||||
)
|
||||
wall ground
|
||||
(
|
||||
(0 3 2 1)
|
||||
)
|
||||
patch top
|
||||
(
|
||||
(4 5 6 7)
|
||||
)
|
||||
);
|
||||
|
||||
mergePatchPairs
|
||||
(
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,58 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class polyBoundaryMesh;
|
||||
location "constant/polyMesh";
|
||||
object boundary;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
6
|
||||
(
|
||||
outlet
|
||||
{
|
||||
type patch;
|
||||
nFaces 922;
|
||||
startFace 364825;
|
||||
}
|
||||
sides
|
||||
{
|
||||
type patch;
|
||||
nFaces 1834;
|
||||
startFace 365747;
|
||||
}
|
||||
inlet
|
||||
{
|
||||
type patch;
|
||||
nFaces 923;
|
||||
startFace 367581;
|
||||
}
|
||||
ground
|
||||
{
|
||||
type wall;
|
||||
nFaces 0;
|
||||
startFace 368504;
|
||||
}
|
||||
top
|
||||
{
|
||||
type patch;
|
||||
nFaces 900;
|
||||
startFace 368504;
|
||||
}
|
||||
terrain_patch0
|
||||
{
|
||||
type wall;
|
||||
nFaces 18201;
|
||||
startFace 369404;
|
||||
}
|
||||
)
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,55 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object sourcesProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
disk1
|
||||
{
|
||||
typeModel actuationDiskSource;
|
||||
active on; //on/off switch
|
||||
timeStart 0.0; //start time
|
||||
duration 1000.0; //duration
|
||||
selectionMode cellSet; //cellSet // points //cellZone
|
||||
cellSet actuationDisk1;//cellSet name when selectionMode = cellSet
|
||||
cellZone actuationDisk1;//cellZone name when selectionMode = cellZone
|
||||
|
||||
actuationDiskSourceCoeffs
|
||||
{
|
||||
diskDir (-1 0 0); // orientation of the disk
|
||||
Cp 0.53; // Cp
|
||||
Ct 0.58; // Ct
|
||||
diskArea 40; // disk area
|
||||
}
|
||||
}
|
||||
|
||||
disk2
|
||||
{
|
||||
typeModel actuationDiskSource;
|
||||
active on;
|
||||
timeStart 0.0;
|
||||
duration 1000.0;
|
||||
selectionMode cellSet;
|
||||
cellSet actuationDisk2;
|
||||
cellZone actuationDisk2;
|
||||
|
||||
actuationDiskSourceCoeffs
|
||||
{
|
||||
diskDir (-1 0 0);
|
||||
Cp 0.53;
|
||||
Ct 0.58;
|
||||
diskArea 40;
|
||||
}
|
||||
}
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,21 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object transportProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
transportModel Newtonian;
|
||||
|
||||
nu nu [0 2 -1 0 0 0 0] 1.5e-05;
|
||||
|
||||
// ************************************************************************* //
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
@ -14,7 +14,6 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
// Use absolute path to make sure it also works in parallel
|
||||
#include "$FOAM_CASE/0/include/initialConditions"
|
||||
|
||||
dictionaryReplacement
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 1.7 |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
@ -17,6 +17,13 @@ FoamFile
|
||||
|
||||
numberOfSubdomains 2;
|
||||
|
||||
method ptscotch;
|
||||
method hierarchical;
|
||||
|
||||
hierarchicalCoeffs
|
||||
{
|
||||
n (2 1 1);
|
||||
delta 0.001;
|
||||
order xyz;
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 1.7 |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
@ -16,12 +16,12 @@ FoamFile
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default steadyState;
|
||||
default steadyState;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
default Gauss linear;
|
||||
grad(p) Gauss linear;
|
||||
grad(U) Gauss linear;
|
||||
}
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 1.7 |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
Reference in New Issue
Block a user