2
2
========= |
3
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
4
\\ / O peration | Website: https://openfoam.org
5
- \\ / A nd | Copyright (C) 2020-2023 OpenFOAM Foundation
5
+ \\ / A nd | Copyright (C) 2020-2024 OpenFOAM Foundation
6
6
\\/ M anipulation |
7
7
-------------------------------------------------------------------------------
8
8
License
@@ -75,7 +75,16 @@ lambdaThixotropic<BasicMomentumTransportModel>::lambdaThixotropic
75
75
? dimensionedScalar ("sigmay" , dimPressure /dimDensity , this -> coeffDict_ )
76
76
: dimensionedScalar ("sigmay" , dimPressure /dimDensity , 0 )
77
77
),
78
-
78
+ residualAlpha_
79
+ (
80
+ dimensioned < scalar > ::lookupOrAddToDict
81
+ (
82
+ "residualAlpha" ,
83
+ this -> coeffDict_ ,
84
+ dimless ,
85
+ 1e-6
86
+ )
87
+ ),
79
88
lambda_
80
89
(
81
90
IOobject
@@ -210,7 +219,9 @@ template<class BasicMomentumTransportModel>
210
219
void lambdaThixotropic < BasicMomentumTransportModel > ::correct ()
211
220
{
212
221
// Local references
213
- const surfaceScalarField & phi = this -> phi_ ;
222
+ const alphaField & alpha = this -> alpha_ ;
223
+ const rhoField & rho = this -> rho_ ;
224
+ const surfaceScalarField & alphaRhoPhi = this -> alphaRhoPhi_ ;
214
225
const Foam ::fvModels & fvModels (Foam ::fvModels ::New (this -> mesh_ ));
215
226
const Foam ::fvConstraints & fvConstraints
216
227
(
@@ -221,12 +232,20 @@ void lambdaThixotropic<BasicMomentumTransportModel>::correct()
221
232
222
233
tmp < fvScalarMatrix > lambdaEqn
223
234
(
224
- fvm ::ddt (lambda_ ) + fvm :: div ( phi , lambda_ )
225
- - fvm ::Sp ( fvc :: div (phi ) , lambda_ )
235
+ fvm ::ddt (alpha , rho , lambda_ )
236
+ + fvm ::div (alphaRhoPhi , lambda_ )
226
237
==
227
- a_ * pow (1 - lambda_ (), b_ )
228
- - fvm ::Sp (c_ * pow (strainRate (), d_ ), lambda_ )
229
- + fvModels .source (lambda_ )
238
+ alpha ()* rho ()* a_ * pow (1 - lambda_ (), b_ )
239
+ - fvm ::Sp
240
+ (
241
+ rho ()
242
+ * (
243
+ alpha ()* c_ * pow (strainRate (), d_ )
244
+ + max (residualAlpha_ - alpha (), dimensionedScalar (dimless , 0 ))* a_
245
+ ),
246
+ lambda_
247
+ )
248
+ + fvModels .source (alpha , rho , lambda_ )
230
249
);
231
250
232
251
lambdaEqn .ref ().relax ();
0 commit comments