mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: Added relaxation factor to cloud explicit calcs
This commit is contained in:
@ -127,17 +127,19 @@ void Foam::cloudSolution::read()
|
||||
schemes_.setSize(vars.size());
|
||||
forAll(vars, i)
|
||||
{
|
||||
// read solution variable name
|
||||
schemes_[i].first() = vars[i];
|
||||
|
||||
// set semi-implicit (1) explicit (0) flag
|
||||
Istream& is = schemesDict.lookup(vars[i]);
|
||||
const word scheme(is);
|
||||
if (scheme == "semiImplicit")
|
||||
{
|
||||
is >> schemes_[i].second();
|
||||
schemes_[i].second().first() = true;
|
||||
}
|
||||
else if (scheme == "explicit")
|
||||
{
|
||||
schemes_[i].second() = -1;
|
||||
schemes_[i].second().first() = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -145,6 +147,9 @@ void Foam::cloudSolution::read()
|
||||
<< "Invalid scheme " << scheme << ". Valid schemes are "
|
||||
<< "explicit and semiImplicit" << exit(FatalError);
|
||||
}
|
||||
|
||||
// read under-relaxation factor
|
||||
is >> schemes_[i].second().second();
|
||||
}
|
||||
}
|
||||
|
||||
@ -155,7 +160,7 @@ Foam::scalar Foam::cloudSolution::relaxCoeff(const word& fieldName) const
|
||||
{
|
||||
if (fieldName == schemes_[i].first())
|
||||
{
|
||||
return schemes_[i].second();
|
||||
return schemes_[i].second().second();
|
||||
}
|
||||
}
|
||||
|
||||
@ -173,7 +178,7 @@ bool Foam::cloudSolution::semiImplicit(const word& fieldName) const
|
||||
{
|
||||
if (fieldName == schemes_[i].first())
|
||||
{
|
||||
return schemes_[i].second() >= 0;
|
||||
return schemes_[i].second().first();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -25,7 +25,7 @@ Class
|
||||
Foam::cloudSolution
|
||||
|
||||
Description
|
||||
- Stores all relevant solution info
|
||||
Stores all relevant solution info for cloud
|
||||
|
||||
SourceFiles
|
||||
cloudSolutionI.H
|
||||
@ -100,7 +100,7 @@ class cloudSolution
|
||||
Switch resetSourcesOnStartup_;
|
||||
|
||||
//- List schemes, e.g. U semiImplicit 1
|
||||
List<Tuple2<word, scalar> > schemes_;
|
||||
List<Tuple2<word, Tuple2<bool, scalar> > > schemes_;
|
||||
|
||||
|
||||
// Private Member Functions
|
||||
|
||||
Reference in New Issue
Block a user