@@ -23,6 +23,7 @@ csfacti real /1./ #Bohm speed = sqrt((te+csfacti*ti)/mi)
23
23
cslim real / 1 ./ #frac of cs used for limiter Bohm sheath b.c.
24
24
dcslim real / 0 ./ #reduce sonic flow at limiter by the factor
25
25
#cslim*[1-exp(-(iy-iy_lims+1)/dcslim)]
26
+ islnlamcon integer / 0 / #= 0 , loglambda = Braginskii;if = 1 ,loglambda = lnlam
26
27
lnlam real / 12 ./ #Coulomb log;shouldn't be constant
27
28
methe integer /33/ #elec. eng. eqn: 22-cd, 33-uw, 44-hyb, 55-p-law
28
29
methu integer /33/ #ion mom. eqn: 22-cd, 33-uw, 44-hyb, 55-p-law
@@ -117,10 +118,10 @@ mfl real
117
118
msh real
118
119
ro real
119
120
cs real
121
+ ctaue(0:nx+1,0:ny+1,nisp) _real #calc factor for elec Coulomb coll
122
+ ctaui(0:nx+1,0:ny+1,nisp) _real #calc factor for ion Coulomb coll
120
123
fxe real
121
- ctaue real
122
124
fxi real
123
- ctaui real
124
125
zcoef real #factor (calc) give zeff dependence of elec thermal c.
125
126
coef1 real #factor (calc) for energy equipartion rate
126
127
cnurn real /1./ #scales nurlx rate for ion continuity eqn.
@@ -175,17 +176,17 @@ rrmin real /0./ #min rr used in calc of u_tor & fqy for potential calc.
175
176
isdtsfscal integer / 0 / #if = 1 , dt is included in sfscal Jac scaling factor
176
177
frfqpn real / 1 ./ #frac. of new fqp at ix = 0 ,nx using grad at ix = 1 ,nx- 1
177
178
cffqpsat real / 1 ./ #factor by which fqp can exceed fqpsatlb,rb (sat. cur)
178
- isplflxl integer / 1 / #= 0 , flalfe,i not active at ix = 0 & nx;= 1 active all ix
179
- isplflxlv integer / 1 / #= 0 , flalfv not active at ix = 0 & nx;= 1 active all ix
180
- isplflxlgx integer / 1 / #= 0 , flalfgx not active at ix = 0 & nx;= 1 active all ix
181
- isplflxlgxy integer / 1 / #= 0 , flalfgxy not active at ix = 0 & nx;= 1 active all ix
179
+ isplflxl integer / 0 / #= 0 , flalfe,i not active at ix = 0 & nx;= 1 active all ix
180
+ isplflxlv integer / 0 / #= 0 , flalfv not active at ix = 0 & nx;= 1 active all ix
181
+ isplflxlgx integer / 0 / #= 0 , flalfgx not active at ix = 0 & nx;= 1 active all ix
182
+ isplflxlgxy integer / 0 / #= 0 , flalfgxy not active at ix = 0 & nx;= 1 active all ix
182
183
iswflxlgy integer / 0 / #= 0 , flalfgy not active at iy = 0 & ny;= 1 active all iy
183
- isplflxlvgx integer / 1 / #= 0 , flalfvgx not active at ix = 0 & nx;= 1 active all ix
184
- isplflxlvgxy integer / 1 / #= 0 , flalfvgxy not active at ix = 0 & nx;= 1 active all ix
185
- iswflxlvgy integer / 1 / #= 0 , flalfvgy not active at iy = 0 & ny;= 1 active all iy
186
- isplflxltgx integer / 1 / #= 0 , flalfvgx not active at ix = 0 & nx;= 1 active all ix
187
- isplflxltgxy integer / 1 / #= 0 , flalfvgxy not active at ix = 0 & nx;= 1 active all ix
188
- iswflxltgy integer / 1 / #= 0 , flalfvgy not active at iy = 0 & ny;= 1 active all iy
184
+ isplflxlvgx integer / 0 / #= 0 , flalfvgx not active at ix = 0 & nx;= 1 active all ix
185
+ isplflxlvgxy integer / 0 / #= 0 , flalfvgxy not active at ix = 0 & nx;= 1 active all ix
186
+ iswflxlvgy integer / 0 / #= 0 , flalfvgy not active at iy = 0 & ny;= 1 active all iy
187
+ isplflxltgx integer / 0 / #= 0 , flalfvgx not active at ix = 0 & nx;= 1 active all ix
188
+ isplflxltgxy integer / 0 / #= 0 , flalfvgxy not active at ix = 0 & nx;= 1 active all ix
189
+ iswflxltgy integer / 0 / #= 0 , flalfvgy not active at iy = 0 & ny;= 1 active all iy
189
190
flalfipl real / 1 .e20 / #ion therm flux lim factor on plates when isplflxl = 0
190
191
flalfepl real / 1 .e20 / #elec therm flux lim factor on plates when isplflxl = 0
191
192
isfeexpl0 integer / 0 / #if = 1 , feex cannot be out of inner/ outer plates
@@ -277,7 +278,7 @@ sxgpr real /1./ #stretches x-coord. for gas in private flux region
277
278
xstscal real [m] / 1 ./ #scale- length with stretch- coord decays from plates
278
279
rld2dxg (ngspmx) real / ngspmx* 0 ./ #ratio of gas decay- length to dx via artificial diff.
279
280
rld2dyg (ngspmx) real / ngspmx* 0 ./ #ratio of gas decay- length to dy via artificial diff.
280
- cngflox (ngspmx) real / ngspmx* 1 ./ #fac for x- flux from convection in ng- eqn.
281
+ cngflox (ngspmx) real / ngspmx* 0 ./ #fac for x- flux from convection in ng- eqn.
281
282
cngfloy (ngspmx) real / ngspmx* 1 ./ #fac for y- flux from convection in ng- eqn.
282
283
cngniflox (nispmx,ngspmx) real / nispmxngspmx* 0 ./ #fac for rel ion- neut x- vel in ng- eqn
283
284
cngnifloy (nispmx,ngspmx) real / nispmxngspmx* 0 ./ #fac for rel ion- neut y- vel in ng- eqn
@@ -302,6 +303,8 @@ cfvxnrr real /1./ #=1 gives rr**2 in visx gas; =0 gives old 1 factor
302
303
cfvisyn real / 1 ./ #Coef. for neutral y- visc. in up (,,iispg) eqn
303
304
cfvcsx (1 :nispmx) real / nispmx* 1 ./ #Coefs for x- visc. in ti- eq. with ismcnon> 0
304
305
cfvcsy (1 :nispmx) real / nispmx* 1 ./ #Coefs for y- visc. in ti- eq. with ismcnon> 0
306
+ isvhyha integer / 0 / #switch (= 1 ) for harmonic y- ave of up in visc heat
307
+ upvhflr real / 1 .e2 / #min denom for up harmc ave (isvhyha = 1 ); visc heat
305
308
vboost real / 1 ./ #previously scaled eqp; no longer in use
306
309
cvgp real / 1 ./ #Coef for v.Grad (p) terms.
307
310
cfvgpx (1 :nispmx) real / nispmx* 1 ./ #Coefs for x components of v.grad (p) in ti- eq
@@ -392,11 +395,12 @@ isphilbc integer /0/ #Switch for ix=0 b.c. on phi
392
395
isphirbc integer /0/ #Switch for ix=nx+1 b.c. on phi
393
396
#=0, phi = phi0r + kappar * te
394
397
#=1, phi = phi0r
395
- iphibcc integer /0 / #core BC at iy=1 when isnewpot=1;iy=0
398
+ iphibcc integer /3 / #core BC at iy=1 when isnewpot=1;iy=0
396
399
#=1, d^2(ey)/dy^2=0
397
400
#=2, te=constant & ey(ixmp,0)=eycore
398
401
#=3, phi=constant & ey(ixmp,0)=eycore
399
- #>3, dphi(ix,1)=dphi_iy1,isutcore ctrls ix=ixmp
402
+ #>3 or < 1 now unavailable, previously
403
+ #dphi(ix,1)=dphi_iy1,isutcore ctrls ix=ixmp
400
404
iphibcwi integer /0/ #=0, d(ey)/dy=0
401
405
#=1, phi(ix,0) = phintewi*te(ix,0)/ev
402
406
#=3, d(phi)/dy/phi = 1/lyphi(1)
@@ -656,11 +660,11 @@ isutcore integer /0/ #Used for ix=ixcore phi BC ONLY IF iphibcc > 3
656
660
#=0, tor mom=lzcore on core;
657
661
#=1, d<uz>/dy=0;
658
662
#>1, d^2(Ey)/dy^2=0 at outer midplane
659
- isupwi (nispmx) integer / nispmx* 1 / #= 0 sets up = 0 on inner wall
663
+ isupwi (nispmx) integer / nispmx* 2 / #= 0 sets up = 0 on inner wall
660
664
#=1 sets fmiy=0 (parallel mom-dens y-flux)
661
665
#=2 sets dup/dy=0 on inner wall
662
666
#=3 sets (1/up)dup/dy=1/lyup(1) scale length
663
- isupwo (nispmx) integer / nispmx* 1 / #= 0 sets up = 0 on outer wall
667
+ isupwo (nispmx) integer / nispmx* 2 / #= 0 sets up = 0 on outer wall
664
668
#=1 sets fmiy=0 (parallel mom-dens y-flux)
665
669
#=2 sets dup/dy=0 on outer wall
666
670
#=3 sets (1/up)dup/dy=1/lyup(2) scale length
@@ -1063,6 +1067,7 @@ ipflag integer /1/ #nksol flag to precondition (1=yes)
1063
1067
mfnksol integer /- 3 / #nksol method flag; = 1 means dogleg strategy,
1064
1068
#=2 means linesearch with Arnoldi method,
1065
1069
#=3 means linesearch with GMRES method.
1070
+ #=4 full direct solve by RSmirnov;set premeth=banded
1066
1071
#negative mfnksol ignores global constaints
1067
1072
iprint integer / 1 / #nksol optional statistics flag.
1068
1073
#=0 means no optional statistics are printed.
@@ -1206,8 +1211,8 @@ facbei real [ ] /0./ #factor for Bohm Ti diff. coeff.
1206
1211
vcony (1 :nispmx) real [m/ s] / nispmx* 0 ./ #value of constant radial velocity
1207
1212
difcng real [m** 2 / s] / 50 ./ #constant gas diff. coeff if isgasdc = 1
1208
1213
isgasdc integer / 0 / #switch to turn on constant gas dif coef
1209
- flalfe real / 1 e 20 / #|| heat flux limit factor for elec.
1210
- flalfi real / 1 .e + 10 / #|| heat flux limit factor for ions
1214
+ flalfe real / 0.21 / #|| heat flux limit factor for elec.
1215
+ flalfi real / 0.21 / #|| heat flux limit factor for ions
1211
1216
lxtemax real [m] / 1 .e10 / #max pol. scale len of elec heat- flux lim
1212
1217
lxtimax real [m] / 1 .e10 / #max pol. scale len of ion heat- flux lim
1213
1218
lxtgmax real [m] / 1 .e10 / #max pol. scale len of gas heat- flux lim
@@ -1222,7 +1227,8 @@ fricflf real /1./ #flux-limiting factor for inputs to
1222
1227
isflxlde integer / 0 / #= 1 ,elec flux limit diff;= 0 , conv/ diff
1223
1228
isflxldi integer / 2 / #= 1 ,ion flux limit diff;= 0 , conv/ diff
1224
1229
#=2, diff on individ hxcij
1225
- kxe real / 1.35 / #pol elec heat conduc factor; 1.35 - > Balescu
1230
+ kxe real / 1 ./ #pol Braginsk elec heat conduc factor;
1231
+ #prev 1.35->Balescu explain by M.Zhao
1226
1232
alfkxi real / 0 ./ #reduces ion thermal conduc, K_|| , if
1227
1233
#|ti(ix+1)-ti(ix)|<alfkxi*ti(ix)
1228
1234
alfkxe real / 0 ./ #reduces elec thermal conduc, K_|| , if
@@ -1254,7 +1260,7 @@ gcfacgtx real /0./ #mult grad Ti conv gas x-flux ix=0 & nx
1254
1260
gcfacgty real / 0 ./ #mult grad Ti conv gas y- flux iy = 0 & ny
1255
1261
isdifxg_aug integer / 0 / #= 1 enhances D_xgas with flx- lim factor
1256
1262
isdifyg_aug integer / 0 / #= 1 enhances D_ygas with flx- lim factor
1257
- flalfv real / 1 .e + 10 / #parallel velocity flux limit factor
1263
+ flalfv real / 0.5 / #parallel velocity flux limit factor
1258
1264
isupdrag integer / 0 / #= 1 adds nonunif B- field drag on v_||
1259
1265
con_leng real / 1 e20 / [m] #connect length used for coll trans fac
1260
1266
frac_pt real / 0.3 / #invers aspect ratio for colliless drag
@@ -1567,6 +1573,7 @@ nginit(0:nx+1,0:ny+1) _real [m^-3] #init gas dens in primary cell (ix,iy)
1567
1573
phi(0:nx+1,0:ny+1) _real [V] #potential in primary cell (ix,iy)
1568
1574
phiv(0:nx+1,0:ny+1) _real [V] #potential at vertex of cell
1569
1575
zeff(0:nx+1,0:ny+1) _real [ ] #Z_effective charge in cell (ix,iy)
1576
+ loglambda(0:nx+1,0:ny+1) _real [ ] #Coulomb logarithm
1570
1577
netap(0:nx+1,0:ny+1) _real [ ] #ne*parallel resistivity
1571
1578
znot(0:nx+1,0:ny+1) _real [ ] #=Sum(n_z * Z^2)/n_i in cell
1572
1579
zimpc(0:nx+1,0:ny+1) _real [ ] #Zimp (avg-ion model) in cell (ix,iy)
@@ -1937,6 +1944,7 @@ w0(0:nx+1,0:ny+1) _real
1937
1944
w1(0:nx+1,0:ny+1) _real
1938
1945
w2(0:nx+1,0:ny+1) _real
1939
1946
w3(0:nx+1,0:ny+1) _real
1947
+ wvh(0:nx+1,0:ny+1,1:2) _real #species dependent viscous heating
1940
1948
1941
1949
***** Locflux:
1942
1950
#Local arrays for the calculation of the fluxes and other quantities.
@@ -2778,7 +2786,7 @@ jacfull(neq,neq) _real
2778
2786
premeth character*8 /"ilut"/ # type of preconditioning used in the
2779
2787
# linear iteration:
2780
2788
# ="banded" means use full banded jacobian as
2781
- # preconditioner.
2789
+ # preconditioner. Also used with mfnksol=4
2782
2790
# ="ilut" means use ilut preconditioning.
2783
2791
# ="inel" means use INEL ILU preconditioning
2784
2792
lenpfac integer /60/ # fudge factor to multiply neq by to get an
@@ -3076,8 +3084,8 @@ ifexmain integer /0/ #scalar to indicate if subroutine allocate
3076
3084
#is called by exmain.
3077
3085
#=1 means allocate is called by exmain,
3078
3086
#=0 means it is not.
3079
- iallcall integer / 0 / #flag to signal first call to allocate
3080
3087
exmain_aborted integer / .false ./ # Set to .true . in Python version on control- C abort
3088
+ iallcall integer / 0 / #flag to signal first call to allocate
3081
3089
3082
3090
***** RZ_cell_info:
3083
3091
# RZ grid-cell center and face locations
@@ -3799,7 +3807,7 @@ yielh(imx+1) _real
3799
3807
yielz (imx+ 1 ,lnst+ 1 ) _real
3800
3808
3801
3809
***** Ident_vars:
3802
- uedge_ver character* 80 / '$Name : $' /
3810
+ uedge_ver character* 80 / '$Name : V7_09_01 $' /
3803
3811
uedge_date character* 80 / 'Version date in README_Uedge_vers in dir uedge' /
3804
3812
3805
3813
***** Last_group_ex_sav_var:
0 commit comments