Skip to content

Commit 7570ed7

Browse files
authored
Allowed multi betaFI by using new names such as betaFINuTilda. (#610)
* Allowed multi betaFI by using new names such as betaFINuTilda. * Changed the reduceIO to allow manually prescribing additional output. * Fixed the writeAdjState func. * Updated the betaFI names in test scripts.
1 parent fb3380a commit 7570ed7

20 files changed

+176
-145
lines changed

dafoam/pyDAFoam.py

+1
Original file line numberDiff line numberDiff line change
@@ -469,6 +469,7 @@ def __init__(self):
469469
"PCMatPrecomputeInterval": 100,
470470
"PCMatUpdateInterval": 1,
471471
"reduceIO": True,
472+
"additionalOutput": ["None"],
472473
}
473474

474475
## At which iteration should we start the averaging of objective functions.

src/adjoint/DAModel/DATurbulenceModel/DASpalartAllmaras.C

+5-5
Original file line numberDiff line numberDiff line change
@@ -97,15 +97,15 @@ DASpalartAllmaras::DASpalartAllmaras(
9797
#endif
9898
zeroGradientFvPatchField<scalar>::typeName),
9999
y_(mesh.thisDb().lookupObject<volScalarField>("yWall")),
100-
betaFI_(
100+
betaFINuTilda_(
101101
IOobject(
102-
"betaFI",
102+
"betaFINuTilda",
103103
mesh.time().timeName(),
104104
mesh,
105105
IOobject::READ_IF_PRESENT,
106106
IOobject::AUTO_WRITE),
107107
mesh,
108-
dimensionedScalar("betaFI", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
108+
dimensionedScalar("betaFINuTilda", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
109109
"zeroGradient")
110110
{
111111
}
@@ -442,7 +442,7 @@ void DASpalartAllmaras::calcResiduals(const dictionary& options)
442442
+ fvm::div(phaseRhoPhi_, nuTilda_, divNuTildaScheme)
443443
- fvm::laplacian(phase_ * rho_ * DnuTildaEff(), nuTilda_)
444444
- Cb2_ / sigmaNut_ * phase_ * rho_ * magSqr(fvc::grad(nuTilda_))
445-
== Cb1_ * phase_ * rho_ * Stilda * nuTilda_ * betaFI_
445+
== Cb1_ * phase_ * rho_ * Stilda * nuTilda_ * betaFINuTilda_
446446
- fvm::Sp(Cw1_ * phase_ * rho_ * fw(Stilda) * nuTilda_ / sqr(y_), nuTilda_));
447447

448448
nuTildaEqn.ref().relax();
@@ -506,7 +506,7 @@ void DASpalartAllmaras::getFvMatrixFields(
506506
+ fvm::div(phaseRhoPhi_, nuTilda_, "div(pc)")
507507
- fvm::laplacian(phase_ * rho_ * DnuTildaEff(), nuTilda_)
508508
- Cb2_ / sigmaNut_ * phase_ * rho_ * magSqr(fvc::grad(nuTilda_))
509-
== Cb1_ * phase_ * rho_ * Stilda * nuTilda_ * betaFI_
509+
== Cb1_ * phase_ * rho_ * Stilda * nuTilda_ * betaFINuTilda_
510510
- fvm::Sp(Cw1_ * phase_ * rho_ * fw(Stilda) * nuTilda_ / sqr(y_), nuTilda_));
511511

512512
nuTildaEqn.relax();

src/adjoint/DAModel/DATurbulenceModel/DASpalartAllmaras.H

+1-1
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ protected:
9191
const volScalarField& y_;
9292

9393
/// beta field for field inversion
94-
volScalarField betaFI_;
94+
volScalarField betaFINuTilda_;
9595

9696
/// whether to solve for turb states
9797
label solveTurbState_ = 0;

src/adjoint/DAModel/DATurbulenceModel/DASpalartAllmarasFv3.C

+6-6
Original file line numberDiff line numberDiff line change
@@ -107,15 +107,15 @@ DASpalartAllmarasFv3::DASpalartAllmarasFv3(
107107
nuTilda_),
108108
pseudoNuTildaEqn_(fvm::div(phi_, pseudoNuTilda_, "div(phi,nuTilda)")),
109109
y_(mesh.thisDb().lookupObject<volScalarField>("yWall")),
110-
betaFI_(
110+
betaFINuTilda_(
111111
IOobject(
112-
"betaFI",
112+
"betaFINuTilda",
113113
mesh.time().timeName(),
114114
mesh,
115115
IOobject::READ_IF_PRESENT,
116116
IOobject::AUTO_WRITE),
117117
mesh,
118-
dimensionedScalar("betaFI", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
118+
dimensionedScalar("betaFINuTilda", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
119119
"zeroGradient")
120120
{
121121

@@ -467,7 +467,7 @@ void DASpalartAllmarasFv3::calcResiduals(const dictionary& options)
467467
+ fvm::div(phaseRhoPhi_, nuTilda_, divNuTildaScheme)
468468
- fvm::laplacian(phase_ * rho_ * DnuTildaEff(), nuTilda_)
469469
- Cb2_ / sigmaNut_ * phase_ * rho_ * magSqr(fvc::grad(nuTilda_))
470-
== Cb1_ * phase_ * rho_ * Stilda * nuTilda_ * betaFI_
470+
== Cb1_ * phase_ * rho_ * Stilda * nuTilda_ * betaFINuTilda_
471471
- fvm::Sp(Cw1_ * phase_ * rho_ * fw(Stilda) * nuTilda_ / sqr(y_), nuTilda_));
472472

473473
nuTildaEqn.ref().relax();
@@ -666,7 +666,7 @@ void DASpalartAllmarasFv3::calcLduResidualTurb(volScalarField& nuTildaRes)
666666
fvm::div(phi_, nuTilda_, "div(phi,nuTilda)")
667667
- fvm::laplacian(DnuTildaEff(), nuTilda_)
668668
- Cb2_ / sigmaNut_ * magSqr(fvc::grad(nuTilda_))
669-
== Cb1_ * Stilda * nuTilda_ * betaFI_
669+
== Cb1_ * Stilda * nuTilda_ * betaFINuTilda_
670670
- fvm::Sp(Cw1_ * fw(Stilda) * nuTilda_ / sqr(y_), nuTilda_));
671671

672672
List<scalar>& nuTildaSource = nuTildaEqn.source();
@@ -731,7 +731,7 @@ void DASpalartAllmarasFv3::getFvMatrixFields(
731731
+ fvm::div(phaseRhoPhi_, nuTilda_, "div(pc)")
732732
- fvm::laplacian(phase_ * rho_ * DnuTildaEff(), nuTilda_)
733733
- Cb2_ / sigmaNut_ * phase_ * rho_ * magSqr(fvc::grad(nuTilda_))
734-
== Cb1_ * phase_ * rho_ * Stilda * nuTilda_ * betaFI_
734+
== Cb1_ * phase_ * rho_ * Stilda * nuTilda_ * betaFINuTilda_
735735
- fvm::Sp(Cw1_ * phase_ * rho_ * fw(Stilda) * nuTilda_ / sqr(y_), nuTilda_));
736736

737737
nuTildaEqn.relax();

src/adjoint/DAModel/DATurbulenceModel/DASpalartAllmarasFv3.H

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ protected:
9595
const volScalarField& y_;
9696

9797
/// beta field for field inversion
98-
volScalarField betaFI_;
98+
volScalarField betaFINuTilda_;
9999

100100
/// whether to solve for turb states
101101
label solveTurbState_ = 0;

src/adjoint/DAModel/DATurbulenceModel/DAkEpsilon.C

+17-7
Original file line numberDiff line numberDiff line change
@@ -103,15 +103,25 @@ DAkEpsilon::DAkEpsilon(
103103
dimensionedScalar("kRes", dimensionSet(0, 2, -3, 0, 0, 0, 0), 0.0),
104104
#endif
105105
zeroGradientFvPatchField<scalar>::typeName),
106-
betaFI_(
106+
betaFIK_(
107107
IOobject(
108-
"betaFI",
108+
"betaFIK",
109109
mesh.time().timeName(),
110110
mesh,
111111
IOobject::READ_IF_PRESENT,
112112
IOobject::AUTO_WRITE),
113113
mesh,
114-
dimensionedScalar("betaFI", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
114+
dimensionedScalar("betaFIK", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
115+
"zeroGradient"),
116+
betaFIEpsilon_(
117+
IOobject(
118+
"betaFIEpsilon",
119+
mesh.time().timeName(),
120+
mesh,
121+
IOobject::READ_IF_PRESENT,
122+
IOobject::AUTO_WRITE),
123+
mesh,
124+
dimensionedScalar("betaFIEpsilon", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
115125
"zeroGradient")
116126
{
117127

@@ -556,7 +566,7 @@ void DAkEpsilon::calcResiduals(const dictionary& options)
556566
fvm::ddt(phase_, rho_, epsilon_)
557567
+ fvm::div(phaseRhoPhi_, epsilon_, divEpsilonScheme)
558568
- fvm::laplacian(phase_ * rho_ * DepsilonEff(), epsilon_)
559-
== C1_ * phase_() * rho_() * G * epsilon_() / k_() * betaFI_()
569+
== C1_ * phase_() * rho_() * G * epsilon_() / k_() * betaFIEpsilon_()
560570
- fvm::SuSp((scalar(2.0 / 3.0) * C1_ - C3_) * phase_() * rho_() * divU, epsilon_)
561571
- fvm::Sp(C2_ * phase_() * rho_() * epsilon_() / k_(), epsilon_)
562572
+ epsilonSource());
@@ -592,7 +602,7 @@ void DAkEpsilon::calcResiduals(const dictionary& options)
592602
fvm::ddt(phase_, rho_, k_)
593603
+ fvm::div(phaseRhoPhi_, k_, divKScheme)
594604
- fvm::laplacian(phase_ * rho_ * DkEff(), k_)
595-
== phase_() * rho_() * G
605+
== phase_() * rho_() * G * betaFIK_()
596606
- fvm::SuSp((2.0 / 3.0) * phase_() * rho_() * divU, k_)
597607
- fvm::Sp(phase_() * rho_() * epsilon_() / k_(), k_)
598608
+ kSource());
@@ -664,7 +674,7 @@ void DAkEpsilon::getFvMatrixFields(
664674
fvm::ddt(phase_, rho_, epsilon_)
665675
+ fvm::div(phaseRhoPhi_, epsilon_, "div(pc)")
666676
- fvm::laplacian(phase_ * rho_ * DepsilonEff(), epsilon_)
667-
== C1_ * phase_() * rho_() * G * epsilon_() / k_() * betaFI_()
677+
== C1_ * phase_() * rho_() * G * epsilon_() / k_() * betaFIEpsilon_()
668678
- fvm::SuSp((scalar(2.0 / 3.0) * C1_ - C3_) * phase_() * rho_() * divU, epsilon_)
669679
- fvm::Sp(C2_ * phase_() * rho_() * epsilon_() / k_(), epsilon_)
670680
+ epsilonSource());
@@ -684,7 +694,7 @@ void DAkEpsilon::getFvMatrixFields(
684694
fvm::ddt(phase_, rho_, k_)
685695
+ fvm::div(phaseRhoPhi_, k_, "div(pc)")
686696
- fvm::laplacian(phase_ * rho_ * DkEff(), k_)
687-
== phase_() * rho_() * G
697+
== phase_() * rho_() * G * betaFIK_()
688698
- fvm::SuSp((2.0 / 3.0) * phase_() * rho_() * divU, k_)
689699
- fvm::Sp(phase_() * rho_() * epsilon_() / k_(), k_)
690700
+ kSource());

src/adjoint/DAModel/DATurbulenceModel/DAkEpsilon.H

+2-1
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,8 @@ protected:
9090
//@}
9191

9292
/// beta field for field inversion
93-
volScalarField betaFI_;
93+
volScalarField betaFIK_;
94+
volScalarField betaFIEpsilon_;
9495

9596
/// cell-center epsilon values near the wall, this is to fix the issue that the
9697
/// epsilonWallFunction will try to modify epsilon values for the cells near walls

src/adjoint/DAModel/DATurbulenceModel/DAkOmega.C

+17-7
Original file line numberDiff line numberDiff line change
@@ -100,15 +100,25 @@ DAkOmega::DAkOmega(
100100
dimensionedScalar("kRes", dimensionSet(0, 2, -3, 0, 0, 0, 0), 0.0),
101101
#endif
102102
zeroGradientFvPatchField<scalar>::typeName),
103-
betaFI_(
103+
betaFIK_(
104104
IOobject(
105-
"betaFI",
105+
"betaFIK",
106106
mesh.time().timeName(),
107107
mesh,
108108
IOobject::READ_IF_PRESENT,
109109
IOobject::AUTO_WRITE),
110110
mesh,
111-
dimensionedScalar("betaFI", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
111+
dimensionedScalar("betaFIK", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
112+
"zeroGradient"),
113+
betaFIOmega_(
114+
IOobject(
115+
"betaFIOmega",
116+
mesh.time().timeName(),
117+
mesh,
118+
IOobject::READ_IF_PRESENT,
119+
IOobject::AUTO_WRITE),
120+
mesh,
121+
dimensionedScalar("betaFIOmega", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
112122
"zeroGradient")
113123
{
114124

@@ -563,7 +573,7 @@ void DAkOmega::calcResiduals(const dictionary& options)
563573
fvm::ddt(phase_, rho_, omega_)
564574
+ fvm::div(phaseRhoPhi_, omega_, divOmegaScheme)
565575
- fvm::laplacian(phase_ * rho_ * DomegaEff(), omega_)
566-
== gamma_ * phase_ * rho_ * G * omega_ / k_ * betaFI_
576+
== gamma_ * phase_ * rho_ * G * omega_ / k_ * betaFIOmega_
567577
- fvm::SuSp(scalar(2.0 / 3.0) * gamma_ * phase_ * rho_ * divU, omega_)
568578
- fvm::Sp(beta_ * phase_ * rho_ * omega_, omega_));
569579

@@ -597,7 +607,7 @@ void DAkOmega::calcResiduals(const dictionary& options)
597607
fvm::ddt(phase_, rho_, k_)
598608
+ fvm::div(phaseRhoPhi_, k_, divKScheme)
599609
- fvm::laplacian(phase_ * rho_ * DkEff(), k_)
600-
== phase_ * rho_ * G
610+
== phase_ * rho_ * G * betaFIK_
601611
- fvm::SuSp((2.0 / 3.0) * phase_ * rho_ * divU, k_)
602612
- fvm::Sp(Cmu_ * phase_ * rho_ * omega_, k_));
603613

@@ -666,7 +676,7 @@ void DAkOmega::getFvMatrixFields(
666676
fvm::ddt(phase_, rho_, omega_)
667677
+ fvm::div(phaseRhoPhi_, omega_, "div(pc)")
668678
- fvm::laplacian(phase_ * rho_ * DomegaEff(), omega_)
669-
== gamma_ * phase_ * rho_ * G * omega_ / k_ * betaFI_
679+
== gamma_ * phase_ * rho_ * G * omega_ / k_ * betaFIOmega_
670680
- fvm::SuSp(scalar(2.0 / 3.0) * gamma_ * phase_ * rho_ * divU, omega_)
671681
- fvm::Sp(beta_ * phase_ * rho_ * omega_, omega_));
672682

@@ -686,7 +696,7 @@ void DAkOmega::getFvMatrixFields(
686696
fvm::ddt(phase_, rho_, k_)
687697
+ fvm::div(phaseRhoPhi_, k_, "div(pc)")
688698
- fvm::laplacian(phase_ * rho_ * DkEff(), k_)
689-
== phase_ * rho_ * G
699+
== phase_ * rho_ * G * betaFIK_
690700
- fvm::SuSp((2.0 / 3.0) * phase_ * rho_ * divU, k_)
691701
- fvm::Sp(Cmu_ * phase_ * rho_ * omega_, k_));
692702

src/adjoint/DAModel/DATurbulenceModel/DAkOmega.H

+2-1
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,8 @@ protected:
9797
//@}
9898

9999
/// beta field for field inversion
100-
volScalarField betaFI_;
100+
volScalarField betaFIK_;
101+
volScalarField betaFIOmega_;
101102

102103
/// cell-center omega values near the wall, this is to fix the issue that the
103104
/// omegaWallFunction will try to modify omega values for the cells near walls

src/adjoint/DAModel/DATurbulenceModel/DAkOmegaSST.C

+17-7
Original file line numberDiff line numberDiff line change
@@ -133,15 +133,25 @@ DAkOmegaSST::DAkOmegaSST(
133133
#endif
134134
zeroGradientFvPatchField<scalar>::typeName),
135135
y_(mesh_.thisDb().lookupObject<volScalarField>("yWall")),
136-
betaFI_(
136+
betaFIK_(
137137
IOobject(
138-
"betaFI",
138+
"betaFIK",
139139
mesh.time().timeName(),
140140
mesh,
141141
IOobject::READ_IF_PRESENT,
142142
IOobject::AUTO_WRITE),
143143
mesh,
144-
dimensionedScalar("betaFI", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
144+
dimensionedScalar("betaFIK", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
145+
"zeroGradient"),
146+
betaFIOmega_(
147+
IOobject(
148+
"betaFIOmega",
149+
mesh.time().timeName(),
150+
mesh,
151+
IOobject::READ_IF_PRESENT,
152+
IOobject::AUTO_WRITE),
153+
mesh,
154+
dimensionedScalar("betaFIOmega", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
145155
"zeroGradient")
146156
{
147157

@@ -720,7 +730,7 @@ void DAkOmegaSST::calcResiduals(const dictionary& options)
720730
fvm::ddt(phase_, rho_, omega_)
721731
+ fvm::div(phaseRhoPhi_, omega_, divOmegaScheme)
722732
- fvm::laplacian(phase_ * rho_ * DomegaEff(F1), omega_)
723-
== phase_() * rho_() * gamma * GbyNu(GbyNu0, F23(), S2()) * betaFI_()
733+
== phase_() * rho_() * gamma * GbyNu(GbyNu0, F23(), S2()) * betaFIOmega_()
724734
- fvm::SuSp((2.0 / 3.0) * phase_() * rho_() * gamma * divU, omega_)
725735
- fvm::Sp(phase_() * rho_() * beta * omega_(), omega_)
726736
- fvm::SuSp(
@@ -762,7 +772,7 @@ void DAkOmegaSST::calcResiduals(const dictionary& options)
762772
fvm::ddt(phase_, rho_, k_)
763773
+ fvm::div(phaseRhoPhi_, k_, divKScheme)
764774
- fvm::laplacian(phase_ * rho_ * DkEff(F1), k_)
765-
== phase_() * rho_() * Pk(G)
775+
== phase_() * rho_() * Pk(G) * betaFIK_()
766776
- fvm::SuSp((2.0 / 3.0) * phase_() * rho_() * divU, k_)
767777
- fvm::Sp(phase_() * rho_() * epsilonByk(F1, tgradU()), k_)
768778
+ kSource());
@@ -844,7 +854,7 @@ void DAkOmegaSST::getFvMatrixFields(
844854
fvm::ddt(phase_, rho_, omega_)
845855
+ fvm::div(phaseRhoPhi_, omega_, "div(pc)")
846856
- fvm::laplacian(phase_ * rho_ * DomegaEff(F1), omega_)
847-
== phase_() * rho_() * gamma * GbyNu(GbyNu0, F23(), S2()) * betaFI_()
857+
== phase_() * rho_() * gamma * GbyNu(GbyNu0, F23(), S2()) * betaFIOmega_()
848858
- fvm::SuSp((2.0 / 3.0) * phase_() * rho_() * gamma * divU, omega_)
849859
- fvm::Sp(phase_() * rho_() * beta * omega_(), omega_)
850860
- fvm::SuSp(
@@ -871,7 +881,7 @@ void DAkOmegaSST::getFvMatrixFields(
871881
fvm::ddt(phase_, rho_, k_)
872882
+ fvm::div(phaseRhoPhi_, k_, "div(pc)")
873883
- fvm::laplacian(phase_ * rho_ * DkEff(F1), k_)
874-
== phase_() * rho_() * Pk(G)
884+
== phase_() * rho_() * Pk(G) * betaFIK_()
875885
- fvm::SuSp((2.0 / 3.0) * phase_() * rho_() * divU, k_)
876886
- fvm::Sp(phase_() * rho_() * epsilonByk(F1, tgradU()), k_)
877887
+ kSource());

src/adjoint/DAModel/DATurbulenceModel/DAkOmegaSST.H

+2-1
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,8 @@ protected:
171171
const volScalarField& y_;
172172

173173
/// beta field for field inversion
174-
volScalarField betaFI_;
174+
volScalarField betaFIK_;
175+
volScalarField betaFIOmega_;
175176

176177
/// cell-center omega values near the wall, this is to fix the issue that the
177178
/// omegaWallFunction will try to modify omega values for the cells near walls

src/adjoint/DAModel/DATurbulenceModel/DAkOmegaSSTLM.C

+16-6
Original file line numberDiff line numberDiff line change
@@ -195,15 +195,25 @@ DAkOmegaSSTLM::DAkOmegaSSTLM(
195195
gammaIntEff_(const_cast<volScalarField::Internal&>(
196196
mesh_.thisDb().lookupObject<volScalarField::Internal>("gammaIntEff"))),
197197
y_(mesh_.thisDb().lookupObject<volScalarField>("yWall")),
198-
betaFI_(
198+
betaFIK_(
199199
IOobject(
200-
"betaFI",
200+
"betaFIK",
201201
mesh.time().timeName(),
202202
mesh,
203203
IOobject::READ_IF_PRESENT,
204204
IOobject::AUTO_WRITE),
205205
mesh,
206-
dimensionedScalar("betaFI", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
206+
dimensionedScalar("betaFIK", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
207+
"zeroGradient"),
208+
betaFIOmega_(
209+
IOobject(
210+
"betaFIOmega",
211+
mesh.time().timeName(),
212+
mesh,
213+
IOobject::READ_IF_PRESENT,
214+
IOobject::AUTO_WRITE),
215+
mesh,
216+
dimensionedScalar("betaFIOmega", dimensionSet(0, 0, 0, 0, 0, 0, 0), 1.0),
207217
"zeroGradient")
208218
{
209219

@@ -1084,7 +1094,7 @@ void DAkOmegaSSTLM::calcResiduals(const dictionary& options)
10841094
fvm::ddt(phase_, rho_, omega_)
10851095
+ fvm::div(phaseRhoPhi_, omega_, divOmegaScheme)
10861096
- fvm::laplacian(phase_ * rho_ * DomegaEff(F1), omega_)
1087-
== phase_() * rho_() * gamma * GbyNu(GbyNu0, F23(), S2()) * betaFI_()
1097+
== phase_() * rho_() * gamma * GbyNu(GbyNu0, F23(), S2()) * betaFIOmega_()
10881098
- fvm::SuSp((2.0 / 3.0) * phase_() * rho_() * gamma * divU, omega_)
10891099
- fvm::Sp(phase_() * rho_() * beta * omega_(), omega_)
10901100
- fvm::SuSp(
@@ -1126,7 +1136,7 @@ void DAkOmegaSSTLM::calcResiduals(const dictionary& options)
11261136
fvm::ddt(phase_, rho_, k_)
11271137
+ fvm::div(phaseRhoPhi_, k_, divKScheme)
11281138
- fvm::laplacian(phase_ * rho_ * DkEff(F1), k_)
1129-
== phase_() * rho_() * Pk(G)
1139+
== phase_() * rho_() * Pk(G) * betaFIK_()
11301140
- fvm::SuSp((2.0 / 3.0) * phase_() * rho_() * divU, k_)
11311141
- fvm::Sp(phase_() * rho_() * epsilonByk(F1, tgradU()), k_)
11321142
+ kSource());
@@ -1343,7 +1353,7 @@ void DAkOmegaSSTLM::getFvMatrixFields(
13431353
fvm::ddt(phase_, rho_, omega_)
13441354
+ fvm::div(phaseRhoPhi_, omega_, "div(pc)")
13451355
- fvm::laplacian(phase_ * rho_ * DomegaEff(F1), omega_)
1346-
== phase_() * rho_() * gamma * GbyNu(GbyNu0, F23(), S2()) * betaFI_()
1356+
== phase_() * rho_() * gamma * GbyNu(GbyNu0, F23(), S2()) * betaFIOmega_()
13471357
- fvm::SuSp((2.0 / 3.0) * phase_() * rho_() * gamma * divU, omega_)
13481358
- fvm::Sp(phase_() * rho_() * beta * omega_(), omega_)
13491359
- fvm::SuSp(

src/adjoint/DAModel/DATurbulenceModel/DAkOmegaSSTLM.H

+2-1
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,8 @@ protected:
215215
const volScalarField& y_;
216216

217217
/// beta field for field inversion
218-
volScalarField betaFI_;
218+
volScalarField betaFIK_;
219+
volScalarField betaFIOmega_;
219220

220221
/// cell-center omega values near the wall, this is to fix the issue that the
221222
/// omegaWallFunction will try to modify omega values for the cells near walls

0 commit comments

Comments
 (0)