Skip to content

Commit 8d75a85

Browse files
committed
Time constants for the LB dynamic stall model updated based on a Leishman paper discussing the tuning of the model to match wind tunnel data for
an NREL airfoil... Still need to validate this (and BV dynamic stall model) against OSU data for Sandia airfoils, but it should be better than the original model settings. JCM
1 parent 6fb2d46 commit 8d75a85

File tree

2 files changed

+19
-12
lines changed

2 files changed

+19
-12
lines changed

mod/dystl.f95

+18-11
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ SUBROUTINE LB_UpdateStates(nb,nbe)
242242
Tp=1.7 ! time constant on LE pressure response to change in CL
243243
TfRef=3.0 ! time constant on TE separation point travel
244244
TvRef=6.0 ! time constant on LE vortex lift indicial function
245-
TvL=5.25 ! Characteristic LE vortex travel time
245+
TvL=11.0 ! Characteristic LE vortex travel time
246246

247247
! Update states for each blade element
248248
do i=1,nb
@@ -285,31 +285,35 @@ SUBROUTINE LB_UpdateStates(nb,nbe)
285285
if (LESepState(nElem)==1) then
286286
if (sLEv(nElem)<TvL) then
287287
if (CLRateFlag(nElem)>0) then
288-
Tf=3*TfRef
288+
!Tf=3.0*TfRef ! original
289+
Tf=4.0*TfRef
289290
Tv=TvRef
290291

291292
! Set logic state flags (for model diagnosis output)
292293
LBLogicOutputs(nElem,8)=1
293294
else
294-
Tf=1/2*TfRef
295-
Tv=1/2*TvRef
295+
Tf=1.0/2.0*TfRef
296+
Tv=1.0/2.0*TvRef
296297

297298
! Set logic state flags (for model diagnosis output)
298299
LBLogicOutputs(nElem,8)=2
299300
end if
300301

301302
! Set logic state flags (for model diagnosis output)
302303
LBLogicOutputs(nElem,7)=1
303-
else if (sLEv(nElem)<2*TvL) then
304+
else if (sLEv(nElem)<2.0*TvL) then
304305
if (CLRateFlag(nElem)>0) then
305-
Tf=1/3*TfRef
306-
Tv=1/4*TvRef
306+
! orig
307+
!Tf=1.0/3.0*TfRef
308+
!Tv=1.0/4.0*TvRef
309+
Tf=2.0*TfRef
310+
Tv=TvRef
307311

308312
! Set logic state flags (for model diagnosis output)
309313
LBLogicOutputs(nElem,8)=3
310314
else
311-
Tf=1/2*TfRef
312-
Tv=1/2*TvRef
315+
Tf=1.0/2.0*TfRef
316+
Tv=1.0/2.0*TvRef
313317

314318
! Set logic state flags (for model diagnosis output)
315319
LBLogicOutputs(nElem,8)=4
@@ -318,8 +322,11 @@ SUBROUTINE LB_UpdateStates(nb,nbe)
318322
! Set logic state flags (for model diagnosis output)
319323
LBLogicOutputs(nElem,7)=2
320324
else
321-
Tf=4*TfRef
322-
Tv=0.9*TvRef
325+
! orig
326+
!Tf=4.0*TfRef
327+
!Tv=0.9*TvRef
328+
Tf=TfRef
329+
Tv=TvRef
323330

324331
! Set logic state flags (for model diagnosis output)
325332
LBLogicOutputs(nElem,7)=3

src/LB_DynStall.f95

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ SUBROUTINE LB_DynStall(nElem,CLstat,CDstat,alphaL,alpha5,umach,Re,SectInd,CL,CD)
1818
CLa = 2*pi
1919

2020
! Model constants
21-
KD=.08 ! TE separation drag factor
21+
KD=.1 ! TE separation drag factor
2222

2323
! Evaluate ideal CL curve at current AOA
2424
Call LB_EvalIdealCL(alphaL,AOA0,CLa,1,CLRef(nElem))

0 commit comments

Comments
 (0)