Download cficmo.eso

Back to the list

   1 : C CFICMO    SOURCE    KICH      09/09/11    21:15:52     6505           
   2 :       SUBROUTINE CFICMO(TPS1,TPS2,NBR,WR12,wrk52,wrk53,NWA,EFIC,TR,
   3 :      &                  E1,E2)
   4 : *
   5 : *==============================================================
   6 : *        calcul du module fictif du modele maxott
   7 : *==============================================================
   8 : *
   9 : *
  10 : * entrees
  11 : *
  12 : *        XMAT(NCOMAT) = CARACTERISTIQUES MECANIQUES DU MATERIAU
  13 : *
  14 : *   WRK12
  15 : *        EMi(2,NWA(i+1))    i=0 a 8
  16 : *                        = EVOLUTION DU MODUE D'YOUNG DE LA BRANCHE i
  17 : *        SMi(NSTRS)         i=1 a 8
  18 : *                        = VARIABLES INTERNES AU DEBUT DU PAS D'INTEGRATION
  19 : *
  20 : *        TPS1 = TEMPS AU DEBUT DU PAS D'INTEGRATION
  21 : *        TPS2 = TEMPS A LA FIN DU PAS D'INTEGRATION
  22 : *        NBR = INDICE DE LA CHAINE DE MAXWELL CONCERNEE
  23 : *        NWA = TABLEAU DES DIMENSIONS DES EVOLUTIONS DES MODULES DE CHAQUE CHAINE
  24 : *       
  25 : *
  26 : * sortie
  27 : *
  28 : *        EFIC = MODULE FICTIF DE LA CHAINE DE MAXWELL
  29 : *        TR = TEMPS DE RELAXATION DE LA CHAINE DE MAXWELL
  30 : *        E1 = MODULE DE LA CHAINE DE MAXWELL AU DEBUT DU PAS
  31 : *        E2 = MODULE DE LA CHAINE DE MAXWELL A LA FIN DU PAS
  32 : *        KERRE = INDICATEUR D'ERREUR
  33 : *
  34 : *
  35 : *
  36 : *==============================================================
  37 : *
  38 :       IMPLICIT INTEGER(I-N)
  39 :        IMPLICIT REAL*8(A-H,O-Z)
  40 : -INC CCOPTIO
  41 : -INC DECHE
  42 : *
  43 :       SEGMENT WR12
  44 :         REAL*8  EM0(2,NWA(1)),EM1(2,NWA(2)),EM2(2,NWA(3))
  45 :         REAL*8  EM3(2,NWA(4)),EM4(2,NWA(5)),EM5(2,NWA(6))
  46 :         REAL*8  EM6(2,NWA(7)),EM7(2,NWA(8)),EM8(2,NWA(9))
  47 :         REAL*8  SM0(NSTRS),SM1(NSTRS),SM2(NSTRS),SM3(NSTRS)
  48 :         REAL*8  SM4(NSTRS),SM5(NSTRS),SM6(NSTRS),SM7(NSTRS)
  49 :         REAL*8  SM8(NSTRS)
  50 :       ENDSEGMENT
  51 : *
  52 :        DIMENSION NWA(9)
  53 : *
  54 : * offsets pour caracteristiques temps de relaxation
  55 : *
  56 : * deformations planes / axisymetrique
  57 : *
  58 :       IF ((IFOMOD.EQ.-1.AND.IFOUR.NE.-2).OR.
  59 :      &        (IFOMOD.EQ.0.OR.IFOMOD.EQ.1)) THEN
  60 :         IPREMO = 10
  61 :         IPREMF = 51
  62 : *
  63 : * contraintes planes / 3D coques minces
  64 : *      
  65 :       ELSE IF((IFOMOD.EQ.-1.AND.IFOUR.EQ.-2).OR.
  66 :      &        (IFOMOD.EQ.2.AND.(MFR.EQ.3.OR.MFR.EQ.9))) THEN
  67 :         IPREMO = 10
  68 :         IPREMF = 46
  69 : *
  70 : * tridimensionnelle massive
  71 : *
  72 :       ELSE
  73 :         IPREMO = 15
  74 :         IPREMF = 57
  75 :       ENDIF
  76 : *
  77 : *     test sur la branche
  78 : *
  79 :        IF (NBR.EQ.0) THEN
  79 :          CALL MAXINT(EM0,NWA(1),TPS1,FTPS1,IRET1)
  79 :          CALL MAXINT(EM0,NWA(1),TPS2,FTPS2,IRET2)
  80 :          EFIC=FTPS2
  81 :          TR=0.
  82 :          E1=FTPS1
  83 :          E2=FTPS2
  84 :          GOTO 10
  85 :        ELSE IF (NBR.EQ.1) THEN
  85 :          CALL MAXINT(EM1,NWA(2),TPS1,FTPS1,IRET1)
  85 :          CALL MAXINT(EM1,NWA(2),TPS2,FTPS2,IRET2)      
  86 :          TR=XMAT(IPREMO+2)
  87 :        ELSE IF (NBR.EQ.2) THEN
  87 :          CALL MAXINT(EM2,NWA(3),TPS1,FTPS1,IRET1)
  87 :          CALL MAXINT(EM2,NWA(3),TPS2,FTPS2,IRET2) 
  88 :          TR=XMAT(IPREMO+4)
  89 :        ELSE IF (NBR.EQ.3) THEN
  89 :          CALL MAXINT(EM3,NWA(4),TPS1,FTPS1,IRET1)
  89 :          CALL MAXINT(EM3,NWA(4),TPS2,FTPS2,IRET2) 
  90 :          TR=XMAT(IPREMO+6)
  91 :        ELSE IF (NBR.EQ.4) THEN
  91 :          CALL MAXINT(EM4,NWA(5),TPS1,FTPS1,IRET1)
  91 :          CALL MAXINT(EM4,NWA(5),TPS2,FTPS2,IRET2) 
  92 :          TR=XMAT(IPREMO+8)
  93 : *
  94 : *    5 et plus
  95 : *
  96 :        ELSE IF (NBR.EQ.5) THEN
  96 :          CALL MAXINT(EM5,NWA(6),TPS1,FTPS1,IRET1)
  96 :          CALL MAXINT(EM5,NWA(6),TPS2,FTPS2,IRET2) 
  97 :          TR=XMAT(IPREMF+1)
  98 :        ELSE IF (NBR.EQ.6) THEN
  98 :          CALL MAXINT(EM6,NWA(7),TPS1,FTPS1,IRET1)
  98 :          CALL MAXINT(EM6,NWA(7),TPS2,FTPS2,IRET2) 
  99 :          TR=XMAT(IPREMF+3)
 100 :        ELSE IF (NBR.EQ.7) THEN
 100 :          CALL MAXINT(EM7,NWA(8),TPS1,FTPS1,IRET1)
 100 :          CALL MAXINT(EM7,NWA(8),TPS2,FTPS2,IRET2) 
 101 :          TR=XMAT(IPREMF+5)
 102 :        ELSE IF (NBR.EQ.8) THEN
 102 :          CALL MAXINT(EM8,NWA(9),TPS1,FTPS1,IRET1)
 102 :          CALL MAXINT(EM8,NWA(9),TPS2,FTPS2,IRET2) 
 103 :          TR=XMAT(IPREMF+7)
 104 :        ENDIF
 105 : *
 106 : *
 107 :        E1=FTPS1
 108 :        E2=FTPS2
 109 :        IF(TPS2-TPS1.EQ.0.D0) THEN
 110 :          EFIC = FTPS2
 111 :        ELSE
 112 :          EFIC = FTPS2*(1.D0-EXP(-TR*(TPS2-TPS1)))/(TR*(TPS2-TPS1)) 
 113 :        ENDIF
 114 : *
 115 : *
 116 : 10     IF (IRET1.EQ.0) THEN 
 116 :          CALL ERREUR(854)
 117 :          RETURN
 118 :        ELSE IF (IRET2.EQ.0) THEN 
 118 :          CALL ERREUR(854)
 119 :          RETURN
 120 :        ENDIF
 121 :        END 
 122 :                     
 123 :  
 124 :  
 125 :  
 126 :  
 127 : 
 128 : 
 129 :  
 130 :  
 131 :  
 132 :  
 133 :  
 134 :  
 135 :  

© Cast3M 2003 - All rights reserved.
Disclaimer