Download princ.eso

Back to the list

   1 : C PRINC     SOURCE    CHAT      05/01/13    02:27:24     5004           
   2 : C PRINC     SOURCE    INSL       24/10/96    
   3 :       SUBROUTINE PRINC(S,T,NSTRS)
   4 : C
   5 : C   CALCUL DES CONTRAINTES ET DIRECTIONS PRINCIPALES
   6 : C    L'ANGLE PHI=T(4) : EST EN DEGRE
   7 : C
   8 :       IMPLICIT INTEGER(I-N)
   9 :       IMPLICIT REAL*8(A-H,O-Z)
  10 :       DIMENSION S(4),T(4)
  11 :       PI=4.D0*DATAN(1.D0)
  12 :       A1=S(1)+S(2)
  13 :       A2=S(1)-S(2)
  14 :       A3=S(3)
  15 :       A4=S(3)
  16 :       IF(NSTRS.EQ.4.OR.NSTRS.EQ.6) A4=S(4)
  17 :       IF(DABS(A4) .GE. 1.D-8) GOTO 11
  18 :       IF(A2 .LT. 1.D-8) GOTO 121
  19 :       T(1)=S(1)
  20 :       T(2)=S(2)
  21 :       T(3)=S(3)
  22 :       T(4)=0.0D+00
  23 :       GO TO 10
  24 :   121 T(1)=S(2)
  25 :       T(2)=S(1)
  26 :       T(3)=S(3)
  27 :       T(4)=90.0D+00
  28 :       GO TO 10
  29 :    11 IF(DABS(A2) .GE. 1.D-8) GOTO 111
  30 :       T(1)=S(1)+DABS(A4)
  31 :       T(2)=S(2)-DABS(A4)
  32 :       T(3)=S(3)
  33 :       T(4)=45.0D+00*DABS(A4)/A4
  34 :       GO TO 10
  35 :   111 A5=DSQRT(A2*A2+4.0D+00*A4*A4)
  36 :       T(1)=(A1+A5)/2.0D+00
  37 :       T(2)=(A1-A5)/2.0D+00
  38 :       T(3)=S(3)
  39 :       T(4)=DATAN(2.0D+00*A4/A2)*90.0D+00/PI
  40 :       IF(A2 .GE. 1.D-8) GOTO 10
  41 :       T(4)=T(4)+90.0D+00*DABS(A4)/A4
  42 :   10  CONTINUE
  43 :       IF(NSTRS.EQ.3.OR.NSTRS.EQ.5) T(3)=0.D0
  44 :       RETURN
  45 :       END
  46 :  
  47 :  

© Cast3M 2003 - All rights reserved.
Disclaimer