8 common/binary/ cm(4,mmax),xrel(3,mmax),vrel(3,mmax),
9 & hm(mmax),um(4,mmax),umdot(4,mmax),tmdis(mmax),
10 & namem(mmax),nameg(mmax),kstarm(mmax),iflagm(mmax)
11 common/slow0/ range,islow(10)
12 REAL*8 m0,aj,r1,lum1,mc,rcc,menv,renv,k2
13 REAL*8 tscls(20),lums(10),gb(10),tm,tn
22 IF (namem(k).EQ.name(i)) im = k
31 IF(kstarm(im).EQ.11.OR.kstarm(im).EQ.13)
THEN
34 IF (m1.GE.10.0.OR.(kstar(i1).GT.1.AND.kstar(i1).LT.10))
THEN
37 IF (m2.GE.10.0.OR.(kstar(i2).GT.1.AND.kstar(i2).LT.10))
THEN
43 zmb = cm(1,im) + cm(2,im)
44 semi = -0.5*zmb/hm(im)
45 IF (semi*su.GT.10.0)
THEN
58 v20 = v20 + umdot(k,im)**2
59 td2 = td2 + 2.0*um(k,im)*umdot(k,im)
63 ecc2 = (1.0 - rb/semi)**2 + td2**2/(zmb*semi)
65 semi0 = -0.5*body(i)/h(ipair)
68 IF (radius(i1).GE.radius(i2))
THEN
69 IF ((kstar(i1).EQ.1.AND.m1.GT.1.25).OR.
70 & (kstar(i1).EQ.0.AND.m1.LT.0.35))
THEN
76 IF ((kstar(i2).EQ.1.AND.m2.GT.1.25).OR.
77 & (kstar(i2).EQ.0.AND.m2.LT.0.35))
THEN
89 tb = 3.147d+07*yrs*semi*sqrt(semi/zmb)
94 zjdot = 3.8d-30*1.989d+33*m2*rsun**4*r2**3*(twopi/tb)**3
97 zmu = cm(1,im)*cm(2,im)/zmb
98 acm = 3.08d+18*rbar*semi
99 adot = 2.0*sqrt(acm/gms)*zjdot/(1.989d+33*zmbar*zmu)
102 tbr = acm/(3.147d+07*adot)
104 tbr = 0.1d0*tbr/(1.0d+06*tstar)
108 agdot = 1.23d+27*cm(1,im)*cm(2,im)*zmb*(zmbar/acm)**3
109 tgr = acm/(3.147d+07*agdot)
110 tgr = 0.1d0*tgr/(1.0d+06*tstar)
113 IF (((m2.GT.1.25.OR.m2.LT.0.35).AND.kstar(j2).LE.2).OR.
114 & kstar(j2).GE.10)
THEN
120 dt = tev(i) - tev0(i)
121 tk = twopi*abs(semi0)*sqrt(abs(semi0)/body(i))
127 adot = adot/(1.0d+05*vstar)
128 IF (adot*dt.GT.0.1*semi)
THEN
131 semi1 = semi - adot*dt
134 WRITE (6,71) semi, semi1, adot, dt
135 71
FORMAT (
' BRAKE2 !! A A1 AD DT ',1p,4e10.2)
137 IF (abs(semi1).LT.radius(j2).OR.semi1.LT.0.0)
THEN
143 hm(im) = -0.5*zmb/semi1
146 decorr = zmu*(hi - hm(im))
147 emerge = emerge - decorr
148 ecoll = ecoll + decorr
149 egrav = egrav + decorr
152 c2 = sqrt(semi1/semi)
153 v2 = 0.5*(zmb + hm(im)*rb*(semi1/semi))
159 um(k,im) = c2*um(k,im)
160 umdot(k,im) = c1*umdot(k,im)
161 rb = rb + um(k,im)**2
170 q = cm(1,im)/cm(2,im)
179 IF(kstar(i1).LE.1)
THEN
182 aj = time*tstar - epoch(i1)
184 CALL
star(kw,m0,m1,tm,tn,tscls,lums,gb,zpars)
185 CALL
hrdiag(m0,aj,m1,tm,tn,tscls,lums,gb,zpars,
186 & r1,lum1,kw,mc,rcc,menv,renv,k2)
189 tev(i1) = min(tev(i1),time)
191 tm = (tm + epoch(i1))/tstar - time
199 IF(kstar(i2).LE.1)
THEN
202 aj = time*tstar - epoch(i2)
204 CALL
star(kw,m0,m2,tm,tn,tscls,lums,gb,zpars)
205 CALL
hrdiag(m0,aj,m2,tm,tn,tscls,lums,gb,zpars,
206 & r1,lum1,kw,mc,rcc,menv,renv,k2)
209 tev(i2) = min(tev(i2),time)
211 tm = (tm + epoch(i2))/tstar - time
216 IF(rtms2.GT.rtms)
THEN
222 IF(kstar(i1).GE.10.AND.tm0.GT.0.d0) tev0(i1) = time
223 IF(kstar(i2).GE.10.AND.tm0.GT.0.d0) tev0(i2) = time
226 IF (radius(j1)/rl1.LT.radius(j2)/rl2)
THEN
233 IF (radius(j1).GT.rl1.AND.kz(34).GT.0)
THEN
234 WRITE (6,25) name(i1), nameg(im), kstar(i1), kstar(i2),
235 & semi1*su, rl1*su, radius(j1)*su
236 25
FORMAT (
' BRAKE2 TERM NM K* A RL R* ',2i6,2i4,3f7.3)
240 ELSEIF (tm0.EQ.0.d0)
THEN
241 tev(i) = time + step(i1)
246 dt = min(tgr,tbr,tm0)
249 dt1 = dtms*(rl1 - radius(j1))/(rtms - radius(j1))
254 tev(i1) = tev(i) + step(i1)