8 REAL*8 tscls(20),lums(10),gb(10),tm,tn
9 REAL*8 m0,m1,rm,lum,age,mc,mc1,rcc,rm0,age0,m10
11 REAL*8 pts1,pts2,eps,alpha2,tol
12 parameter(pts1=0.05d0,pts2=0.02d0)
13 parameter(eps=1.0d-06,alpha2=0.09d0,tol=1.0d-10)
18 IF(m1.LE.0.0) m1 = radius(i)*su
21 age = tev0(i)*tstar - epoch(i)
22 CALL
star(kw,m0,m1,tm,tn,tscls,lums,gb,zpars)
23 CALL
hrdiag(m0,age,m1,tm,tn,tscls,lums,gb,zpars,
24 & rm,lum,kw,mc,rcc,menv,renv,k2)
27 if((kstar(i).le.6.and.kw.gt.6).or.
28 & (kstar(i).le.9.and.kw.gt.9))
then
46 dtm = pts1*(tscls(1) - tm)
49 if(age.lt.tscls(6))
then
50 dtm = pts2*(tscls(4) - age)
52 dtm = pts2*(tscls(5) - age)
54 dtr = min(tscls(2),tn) - age
57 dtr = min(tn,tscls(2) + tscls(3)) - age
59 if(age.lt.tscls(9))
then
60 dtm = pts2*(tscls(7) - age)
62 dtm = pts2*(tscls(8) - age)
64 dtr = min(tn,tscls(13)) - age
66 if(age.lt.tscls(12))
then
67 dtm = pts2*(tscls(10) - age)
69 dtm = pts2*(tscls(11) - age)
76 elseif(kw.eq.8.or.kw.eq.9)
then
77 if(age.lt.tscls(6))
then
78 dtm = pts2*(tscls(4) - age)
80 dtm = pts2*(tscls(5) - age)
96 if((dtr-dtm).le.tol)
then
100 age = max(age,age*(1.d0-eps) + dtr)
101 CALL
hrdiag(m0,age,m1,tm,tn,tscls,lums,gb,zpars,
102 & rm,lum,kw,mc1,rcc,menv,renv,k2)
104 if(abs(dr).gt.0.1*rm0)
then
107 dtm = alpha2*max(rm,rm0)*dtdr
121 CALL
hrdiag(m0,age,m1,tm,tn,tscls,lums,gb,zpars,
122 & rm,lum,kw,mc1,rcc,menv,renv,k2)
125 if(it.eq.20.and.kw.eq.4) goto 30
127 WRITE (6,22) it, kstar(i), m0, dr, rm
128 22
FORMAT (
' DANGER! TRDOT: IT K* M0 DR RM ',2i4,1p,3e10.2)
131 if(abs(dr).gt.0.1*rm0)
then
133 dtm = alpha2*max(rm0,rm)*dtdr
134 if(it.ge.20) dtm = 0.5d0*dtm
141 dtm = max(dtm,1.0d-04)/tstar
144 10
IF(iphase.EQ.8.OR.iphase.EQ.9)
THEN