c c read in parameters and set up c subroutine parms include 'TThead.f' Character*80 ahead real*8 gg,hh,rr,pp,x,z,c,h,r, x qq(nog),wv(nop+100) integer iv(nop+100),eli(no) open(10,file='TTmi.d',form='formatted',status='old') Gi=0.d0 Hi=0.d0 Pi=0.d0 Ri = 0.d0 ric = 0.d0 do 1 i=1,3 read(10,998,end=20)ahead 998 format(a80) 1 continue c 10 read(10,1001,end=20)kr,kc,gg,pp,hh,rr 1001 format(1x,2i5,4f16.8) m = ihmssf(kr,kc,no) Gi(m) = gg Hi(m) = hh Ri(m) = rr Pi(m) = pp go to 10 c 20 close(10) c call dkmvhf(Gi,no,wv,iv) call dkmvhf(Hi,no,wv,iv) call dkmvhf(Pi,no,wv,iv) c c Residual matrices c and missing traits c rcod=0 ric = 0.d0 open(11,file='misscods.d',form='formatted',status='old') 44 read(11,1106,end=41)icod,(eli(j),j=1,no) 1106 format(1x,i8,1x,25i1) do 46 k=1,no rcod(icod,k)=eli(k) 46 continue go to 44 41 close(11) c c set- up various R-inverses for missing traits c open(12,file='permute.d',form='formatted',status='old') read(12,1212,end=69)iseed 1212 format(1x,i10) call firan(iseed) ric=0.d0 50 do 53 icod=1,28 qq=0.d0 do 176 i=1,no if(rcod(icod,i).gt.0)then do 76 j=i,no if(rcod(icod,j).gt.0)then k=ihmssf(i,j,no) qq(k)=Ri(k) endif 76 continue endif 176 continue call dkmvhf(qq,no,wv,iv) c move into ri do 77 i=1,no do 77 j=i,no mn=ihmssf(i,j,no) ric(icod,mn)=qq(mn) 77 continue 53 continue 69 continue close(12) sage=0.d0 shys=0.d0 sanm=0.d0 symj=0.d0 sape=0.d0 c return end