C CZTMAX SOURCE KICH 09/09/11 21:17:59 6505 SUBROUTINE CZTMAX(iwrk52,iwrk53,iele,igau) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) C -INC CCOPTIO -INC CCHAMP -INC DECHE wrk52 = iwrk52 wrk53 = iwrk53 t0 = ture0(1) TF = turef(1) pha10 = valma0(1) pha20 = valma0(2) viph0 = valma0(3) AC1 = xmatf(4) AC2 = xmatf(5) AC3 = XMATF(6) AC4 = XMATF(7) * if (iele.eq.1.and.igau.eq.1) write(6,*) pha10,pha20,viph0 if (cmate.eq.'ZTMAX'.and.TF.le.viph0) then viph = viph0 pha1f = pha10 pha2f = pha20 goto 1000 endif if (ac2 .ne. ac1) then z1 = (TF - ac1) / (ac2 - ac1) else if (ac2.eq.ac1) then z1 = TF - ac1 endif if (cmate.eq.'ZTMAX') then tviph = -10. goto 900 endif if (ac4.ne.ac3) then z2 = (tf - ac3)/(ac4 - ac3) else if (ac3.eq.ac4) then if (ac3.ge.0.) then z2 = ac3 - TF else z2 = TF - ac3 endif endif if (ac3.ge.0) then viph = max (TF, viph0) tviph = viph - ac3 else viph = min(TF,viph0) tviph = ac3 - viph endif * if (iele.eq.1.and.igau.eq.1) write(6,*) z1,z2,tviph 900 continue if (z1.ge.1.) then pha2f = 1. pha1f = 0. else if (z1.lt.1.and.tviph.le.0.) then if (z1.ge.0.and.z1.lt.1) then pha2f = z1 pha1f = 1. - z1 else pha2f = 0. pha1f = 1. endif else if (z1.lt.1. and.tviph.gt.0.) then if (z2.ge.1.) then pha2f = 0. pha1f = 1. else if(z2.lt.1.and.z2.ge.0) then pha2f = 1. - z2 pha1f = z2 else pha2f = 1. pha1f = 0. endif endif 1000 continue xmatf(1) = pha1f xmatf(2) = pha2f xmatf(3) = viph RETURN END