SpectraRust/synspec/extracted/dwnfr0.f
2026-03-19 14:05:33 +08:00

25 lines
630 B
Fortran

SUBROUTINE DWNFR0(ID)
C =====================
C
C Auxiliary quantities for dissolved fractions
C
INCLUDE 'PARAMS.FOR'
INCLUDE 'MODELP.FOR'
PARAMETER (UN=1.,SIXTH=UN/6.,CCOR=0.09)
parameter (p1=0.1402,p2=0.1285,p3=un,p4=3.15,p5=4.)
parameter (f23=-2./3.)
C
ANE=ELEC(ID)
ELEC23(ID)=EXP(F23*LOG(ANE))
ANES=EXP(SIXTH*LOG(ANE))
ACOR=CCOR*ANES/SQRT(TEMP(ID))
X=EXP(P4*LOG(UN+P3*ACOR))
DWC2(ID)=P2*X
A3=ACOR*ACOR*ACOR
DO 10 IZZ=1,MZZ
Z3(IZZ)=IZZ*IZZ*IZZ
DWC1(IZZ,ID)=P1*(X+P5*(IZZ-1.)*A3)
10 CONTINUE
RETURN
END