Download trj402.eso

Back to the list

   1 : C TRJ402    SOURCE    CHAT      05/01/13    03:48:07     5004           
   2 :       SUBROUTINE TRJ402(XNOEU,X,G,IER)
   3 : C                                                                               
   4 : C                                                                               
   5 : CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC          
   6 : C                                                                               
   7 : C     CALCUL DES COORDONNEES DE REFERENCES DANS UN QUA4                         
   8 : C     XNOEU COORDONNEES DES SOMMETS                                             
   9 : C     X               REELLES                                                   
  10 : C     G                 REFERENCES                                              
  11 : C                                                                               
  12 : CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC         
  13 : C                                                                               
  14 : C                                                                               
  15 :       IMPLICIT INTEGER(I-N)
  16 :       IMPLICIT REAL*8 (A-H,O-Z)                                                 
  17 : C                                                                               
  18 :       DIMENSION X(2),DX(2),A(2,2),B(2,2),XNOEU(2,4),Y(2)                        
  19 :       DIMENSION DG(2),XN(4),D1XN(4),D2XN(4),G(2)                                
  20 : -INC CCOPTIO
  21 : C                                                                               
  22 : C                                                                               
  23 : C     DATA XNOEU/-169.952,232.302, -172.395,211.479,                            
  24 : C    *           -151.215,206.963, -143.835,227.232/                            
  25 : C     DATA XNOEU/1.,1., 3.,1., 5.,4., 2.,6./                                    
  26 : C     DATA XNOEU/1.,1., 4.,3., 0.,6., -2.,4./                                   
  27 : C     DATA X/0.5,2.1/                                                           
  28 : C     DATA X/2.5,2.1/                                                           
  29 : C     DATA X/1.8,1.1/                                                           
  30 : C     DATA X/-150.,220/                                                         
  31 : C                                                                               
  32 : C                                                                               
  33 : C                                                                               
  34 : C     IDIM=2
  35 :       NOEL=4                                                                    
  36 :       Y(1)=0.D0
  37 :       Y(2)=0.D0
  38 :       G(1)=0.D0
  39 :       G(2)=0.D0
  40 : C                                                                               
  41 : C     WRITE(6,*)' XNOEU '                                                       
  42 : C     WRITE(6,*)XNOEU(1,1),XNOEU(2,1)                                           
  43 : C     WRITE(6,*)XNOEU(1,2),XNOEU(2,2)                                           
  44 : C     WRITE(6,*)XNOEU(1,3),XNOEU(2,3)                                           
  45 : C     WRITE(6,*)XNOEU(1,4),XNOEU(2,4)                                           
  46 : C     WRITE(6,*)' X ',X(1),X(2)                                                 
  47 : C                                                                               
  48 :       DO 1 I=1,NOEL                                                             
  49 :       Y(1)=0.25D0*XNOEU(1,I)+Y(1)
  50 :       Y(2)=0.25D0*XNOEU(2,I)+Y(2)
  51 :    1  CONTINUE                                                                  
  52 : C                                                                               
  53 :       DX(1)=X(1)-Y(1)                                                           
  54 :       DX(2)=X(2)-Y(2)                                                           
  55 : C                                                                               
  56 :       A(1,1)=0.25D0*(-XNOEU(1,1)+XNOEU(1,2)+XNOEU(1,3)-XNOEU(1,4))
  57 :       A(1,2)=0.25D0*(-XNOEU(2,1)+XNOEU(2,2)+XNOEU(2,3)-XNOEU(2,4))
  58 :       A(2,1)=0.25D0*(-XNOEU(1,1)-XNOEU(1,2)+XNOEU(1,3)+XNOEU(1,4))
  59 :       A(2,2)=0.25D0*(-XNOEU(2,1)-XNOEU(2,2)+XNOEU(2,3)+XNOEU(2,4))
  60 : C                                                                               
  61 : C                                                                               
  62 :       N1=15                                                                     
  63 :       DO 10 K=1,N1                                                              
  64 : C                                                                               
  65 :       DEL=A(1,1)*A(2,2)-A(2,1)*A(1,2)                                           
  66 : C     WRITE(6,*)' DEL ',DEL                                                     
  67 : C     WRITE(6,*)' A ',A(1,1),A(1,2),A(2,1),A(2,2)                               
  68 : C     WRITE(6,*)' DEL ',DEL                                                     
  69 : C                                                                               
  70 :       B(1,1)=1.D0/DEL*A(2,2)
  71 :       B(2,2)=1.D0/DEL*A(1,1)
  72 :       B(1,2)=-1.D0/DEL*A(2,1)
  73 :       B(2,1)=-1.D0/DEL*A(1,2)
  74 : C                                                                               
  75 :       DG(1)=B(1,1)*DX(1)+B(1,2)*DX(2)                                           
  76 :       DG(2)=B(2,1)*DX(1)+B(2,2)*DX(2)                                           
  77 : C                                                                               
  78 :       G(1)=DG(1)+G(1)                                                           
  79 :       G(2)=DG(2)+G(2)                                                           
  80 : C                                                                               
  81 :       DA1=ABS(DG(1))                                                            
  82 :       DA2=ABS(DG(2))                                                            
  83 :       IF(DA1.LE.1.D-4.AND.DA2.LE.1.D-4)GO TO 51
  84 : C                                                                               
  85 :       XN(1)=0.25D0*(1.D0-G(1))*(1.D0-G(2))
  86 :       XN(2)=0.25D0*(1.D0+G(1))*(1.D0-G(2))
  87 :       XN(3)=0.25D0*(1.D0+G(1))*(1.D0+G(2))
  88 :       XN(4)=0.25D0*(1.D0-G(1))*(1.D0+G(2))
  89 : C                                                                               
  90 :       Y(1)=0.D0
  91 :       Y(2)=0.D0
  92 : C                                                                               
  93 :       DO 2 I=1,NOEL                                                             
  94 :       Y(1)=XN(I)*XNOEU(1,I)+Y(1)                                                
  95 :       Y(2)=XN(I)*XNOEU(2,I)+Y(2)                                                
  96 :    2  CONTINUE                                                                  
  97 : C                                                                               
  98 :       DX(1)=X(1)-Y(1)                                                           
  99 :       DX(2)=X(2)-Y(2)                                                           
 100 : C                                                                               
 101 :       D1XN(1)=0.25D0*(-1.D0+G(2))
 102 :       D1XN(2)=0.25D0*(+1.D0-G(2))
 103 :       D1XN(3)=0.25D0*(+1.D0+G(2))
 104 :       D1XN(4)=0.25D0*(-1.D0-G(2))
 105 : C                                                                               
 106 :       D2XN(1)=0.25D0*(-1.D0+G(1))
 107 :       D2XN(2)=0.25D0*(-1.D0-G(1))
 108 :       D2XN(3)=0.25D0*(+1.D0+G(1))
 109 :       D2XN(4)=0.25D0*(+1.D0-G(1))
 110 : C                                                                               
 111 :       A(1,1)=0.D0
 112 :       A(1,2)=0.D0
 113 :       A(2,1)=0.D0
 114 :       A(2,2)=0.D0
 115 : C                                                                               
 116 :       DO 4 I=1,NOEL                                                             
 117 :       A(1,1)=D1XN(I)*XNOEU(1,I)+A(1,1)                                          
 118 :       A(1,2)=D1XN(I)*XNOEU(2,I)+A(1,2)                                          
 119 :       A(2,1)=D2XN(I)*XNOEU(1,I)+A(2,1)                                          
 120 :       A(2,2)=D2XN(I)*XNOEU(2,I)+A(2,2)                                          
 121 :    4  CONTINUE                                                                  
 122 : C                                                                               
 123 : C     WRITE(6,*)                                                                
 124 : C     WRITE(6,*)' K ',K                                                         
 125 : C     WRITE(6,*)' Y ',Y                                                         
 126 : C     WRITE(6,*)' DG ',DG                                                       
 127 : C     WRITE(6,*)' G ',G                                                         
 128 : C                                                                               
 129 :   10  CONTINUE                                                                  
 130 : C                                                                               
 131 : C     WRITE(6,1000)X(1),X(2),DA1,DA2
 132 :       MOTERR(1:8)='TRJ402  '
 133 :       REAERR(1)=X(1)
 134 :       REAERR(2)=X(2)
 135 :       REAERR(3)=0.
 135 : C     CALL ERREUR(-300)
 136 :       IER=-300
 137 :  1000 FORMAT(//,5X,' PROBLEME DE CONVERGENCE AU POINT SITUE EN ',               
 138 :      * 2(1PE12.5),/,5X,' CONVERGENCE ',2(1PE12.5))                              
 139 :   51  CONTINUE                                                                  
 140 :       RETURN                                                                    
 141 :       END                                                                       
 142 :                                                                                 
 143 :                                                                                 
 144 :  
 145 :  

© Cast3M 2003 - All rights reserved.
Disclaimer