2 SUBROUTINE dgcore(kw1,kw2,kw3,m1,m2,m3,ebinde)
12 real*8 m1,m2,m3,ebinde
13 real*8 r1,r2,r3,mhe,mc,mne,ebindi,ebindf,deleb,de,enuc
14 real*8 temp,x,y,m0,mflash
16 parameter(cvhe=3.1d+07,cvc=8.27d+06,cvne=7.44d+06)
18 parameter(ehe=5.812d+17,ec=2.21d+17,ene=2.06d+17)
20 parameter(the=1.0d+08,tc=1.0d+09,gmr=1.906d+15,mch=1.44d0)
29 r1 =
corerd(kw1,m1,m0,mflash)
30 r2 =
corerd(kw2,m2,m0,mflash)
31 r3 =
corerd(kw3,m3,m0,mflash)
34 ebindi = m1*m1/r1 + m2*m2/r2
36 deleb = abs(ebindi - ebindf)
39 ebinde = max(0.d0,ebinde - deleb)
47 if(kw1.le.3.or.kw1.eq.10)
then
54 if(kw2.le.3.or.kw2.eq.10)
then
62 temp = (deleb/(cvhe*mhe+cvc*mc+cvne*mne))*gmr
88 enuc = (x*ehe*mhe + y*(ec*mc + ene*mne))/gmr
92 de = (ebindf + ebinde) - enuc
96 if(de.ge.0.d0) ebinde = max(0.d0,ebinde - enuc)
98 if(de.lt.0.d0) kw3 = 15
102 elseif(ebinde.le.0.d0)
then
108 elseif(ebinde.le.0.d0)
then
112 if(kw3.eq.6.and.y.lt.0.5d0)
then
113 if(ebinde.le.0.d0) kw3 = 11
114 elseif(kw3.eq.6.and.y.gt.0.5d0)
then
115 if(ebinde.le.0.d0) kw3 = 12
117 if(kw3.eq.10.and.x.gt.0.5d0) kw3 = 11
118 if(kw3.eq.11.and.y.gt.0.5d0) kw3 = 12
119 if(kw3.ge.10.and.kw3.le.12.and.m3.ge.mch) kw3 = 15
121 if(kw3.eq.15) m3 = 0.d0