mirror of
https://github.com/OpenFOAM/OpenFOAM-6.git
synced 2025-12-08 06:57:46 +00:00
reactingEulerFoam: Corrected blending for two-resistance models
This commit is contained in:
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -82,6 +82,7 @@ public:
|
||||
|
||||
static autoPtr<blendingMethod> New
|
||||
(
|
||||
const word& modelName,
|
||||
const dictionary& dict,
|
||||
const wordList& phaseNames
|
||||
);
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2014-2018 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -29,13 +29,14 @@ License
|
||||
|
||||
Foam::autoPtr<Foam::blendingMethod> Foam::blendingMethod::New
|
||||
(
|
||||
const word& modelName,
|
||||
const dictionary& dict,
|
||||
const wordList& phaseNames
|
||||
)
|
||||
{
|
||||
word blendingMethodType(dict.lookup("type"));
|
||||
|
||||
Info<< "Selecting " << dict.dictName() << " blending method: "
|
||||
Info<< "Selecting " << modelName << " blending method: "
|
||||
<< blendingMethodType << endl;
|
||||
|
||||
dictionaryConstructorTable::iterator cstrIter =
|
||||
|
||||
@ -352,19 +352,19 @@ correctInterfaceThermo()
|
||||
|
||||
forAllConstIter
|
||||
(
|
||||
massTransferModelTable,
|
||||
massTransferModels_,
|
||||
massTransferModelIter
|
||||
typename BasePhaseSystem::heatTransferModelTable,
|
||||
this->heatTransferModels_,
|
||||
heatTransferModelIter
|
||||
)
|
||||
{
|
||||
const phasePair& pair =
|
||||
this->phasePairs_[massTransferModelIter.key()];
|
||||
this->phasePairs_[heatTransferModelIter.key()];
|
||||
|
||||
const phasePairKey key12(pair.first(), pair.second(), true);
|
||||
const phasePairKey key21(pair.second(), pair.first(), true);
|
||||
|
||||
volScalarField H1(this->heatTransferModels_[pair].first()->K());
|
||||
volScalarField H2(this->heatTransferModels_[pair].second()->K());
|
||||
volScalarField H1(heatTransferModelIter().first()->K());
|
||||
volScalarField H2(heatTransferModelIter().second()->K());
|
||||
dimensionedScalar HSmall("small", heatTransferModel::dimK, small);
|
||||
|
||||
volScalarField mDotL
|
||||
@ -397,7 +397,7 @@ correctInterfaceThermo()
|
||||
{
|
||||
this->interfaceCompositionModels_[key12]->addMDotL
|
||||
(
|
||||
massTransferModelIter().first()->K(),
|
||||
massTransferModels_[pair].first()->K(),
|
||||
Tf,
|
||||
mDotL,
|
||||
mDotLPrime
|
||||
@ -407,7 +407,7 @@ correctInterfaceThermo()
|
||||
{
|
||||
this->interfaceCompositionModels_[key21]->addMDotL
|
||||
(
|
||||
massTransferModelIter().second()->K(),
|
||||
massTransferModels_[pair].second()->K(),
|
||||
Tf,
|
||||
mDotL,
|
||||
mDotLPrime
|
||||
|
||||
@ -209,9 +209,10 @@ Foam::phaseSystem::phaseSystem
|
||||
{
|
||||
blendingMethods_.insert
|
||||
(
|
||||
iter().dict().dictName(),
|
||||
iter().keyword(),
|
||||
blendingMethod::New
|
||||
(
|
||||
iter().keyword(),
|
||||
iter().dict(),
|
||||
phaseModels_.toc()
|
||||
)
|
||||
|
||||
@ -100,6 +100,8 @@ void Foam::phaseSystem::generatePairsAndSubModels
|
||||
(
|
||||
blendingMethods_.found(modelName)
|
||||
? blendingMethods_[modelName]
|
||||
: blendingMethods_.found(member(modelName))
|
||||
? blendingMethods_[member(modelName)]
|
||||
: blendingMethods_["default"]
|
||||
);
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -173,6 +173,36 @@ bool Foam::IOobject::fileNameComponents
|
||||
}
|
||||
|
||||
|
||||
Foam::word Foam::IOobject::group(const word& name)
|
||||
{
|
||||
word::size_type i = name.find_last_of('.');
|
||||
|
||||
if (i == word::npos || i == 0)
|
||||
{
|
||||
return word::null;
|
||||
}
|
||||
else
|
||||
{
|
||||
return name.substr(i+1, word::npos);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Foam::word Foam::IOobject::member(const word& name)
|
||||
{
|
||||
word::size_type i = name.find_last_of('.');
|
||||
|
||||
if (i == word::npos || i == 0)
|
||||
{
|
||||
return name;
|
||||
}
|
||||
else
|
||||
{
|
||||
return name.substr(0, i);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
Foam::IOobject::IOobject
|
||||
@ -348,31 +378,13 @@ const Foam::fileName& Foam::IOobject::caseName() const
|
||||
|
||||
Foam::word Foam::IOobject::group() const
|
||||
{
|
||||
word::size_type i = name_.find_last_of('.');
|
||||
|
||||
if (i == word::npos || i == 0)
|
||||
{
|
||||
return word::null;
|
||||
}
|
||||
else
|
||||
{
|
||||
return name_.substr(i+1, word::npos);
|
||||
}
|
||||
return group(name_);
|
||||
}
|
||||
|
||||
|
||||
Foam::word Foam::IOobject::member() const
|
||||
{
|
||||
word::size_type i = name_.find_last_of('.');
|
||||
|
||||
if (i == word::npos || i == 0)
|
||||
{
|
||||
return name_;
|
||||
}
|
||||
else
|
||||
{
|
||||
return name_.substr(0, i);
|
||||
}
|
||||
return member(name_);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -205,6 +205,12 @@ public:
|
||||
template<class Name>
|
||||
static inline word groupName(Name name, const word& group);
|
||||
|
||||
//- Return group (extension part of name)
|
||||
static word group(const word& name);
|
||||
|
||||
//- Return member (name without the extension)
|
||||
static word member(const word& name);
|
||||
|
||||
//- Type of file modification checking
|
||||
static fileCheckTypes fileModificationChecking;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user