idvar5
C IDVAR5 SOURCE BR232186 16/12/05 21:39:48 9238 *_______________________________________________________________________ * RECHERCHE DES NOMS DE COMPOSANTES DES VARIABLES INTERNES * -------------------------------------------------------- * CAS DE L'ENDOMMAGEMENT * --------------------- * * ENTREES : * --------- * MATEPL NUMERO DU MATERIAU ENDOMAGEABLE * MFR NUMERO DE FORMULATION * IFOUR VALEUR DE IFOU DANS CCOPTIO * IFLAG 0=TOUTES LES VARIABLES * 1=FONCTIONS SEUIL * * SORTIES : * --------- * IPCOMP POINTEUR SUR LA LISTE DES NOMS DE COMPOSANTES * OBLIGATOIRES ET FACULTATIVES * NBROBL NOMBRE DE COMPOSANTES OBLIGATOIRES * NBRFAC NOMBRE DE COMPOSANTES FACTULTATIVES * * PP 16/8/91 ajout var.int pour l'endommagement *_______________________________________________________________________ IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) SEGMENT NOMID CHARACTER*8 LESOBL(NBROBL),LESFAC(NBRFAC) ENDSEGMENT NBROBL=0 NBRFAC=0 NOMID=0 C PRINt *,'ENTREE IDVAR5 MATEPL, MFR =',MATEPL,MFR C 1 - Cas du modele SCALAIRE C ============================ IF (MATEPL.EQ.30.OR.MATEPL.EQ.118) THEN IF (IFLAG.EQ.0) THEN NBROBL=2 SEGINI,NOMID LESOBL(1)='EPTI' LESOBL(2)='D' ELSE NBROBL=1 SEGINI,NOMID LESOBL(1)='EPTI' ENDIF C 2 - Cas du modele UNILATERAL simple ou avec viscosite C ======================================================= ELSE IF (MATEPL.EQ.31.OR.MATEPL.EQ. 97) THEN IF (IFLAG.EQ.0) THEN NBROBL=4 SEGINI,NOMID LESOBL(1)='YLI1' LESOBL(2)='YLI2' LESOBL(3)='DOM1' LESOBL(4)='DOM2' ELSE NBROBL=2 SEGINI,NOMID LESOBL(1)='YLI1' LESOBL(2)='YLI2' ENDIF C 3 - Cas du modele ROTATING_CRACK C ================================== ELSE IF (MATEPL.EQ.37) THEN NBROBL=2 SEGINI,NOMID LESOBL(1)='EPSM' LESOBL(2)='EPSN' C 4 - Cas du modele SIC_SIC C Modele disponible seulement en MASSIF 3D C ============================================== ELSE IF (MATEPL.EQ.88) THEN IF (MFR.EQ.1) THEN NBROBL=10 SEGINI,NOMID LESOBL( 1)='EPSE' LESOBL( 2)='DOM1' LESOBL( 3)='DOM2' LESOBL( 4)='DOM3' LESOBL( 5)='DF11' LESOBL( 6)='DF22' LESOBL( 7)='DF33' LESOBL( 8)='DF23' LESOBL( 9)='DF13' LESOBL(10)='DF12' ELSE ENDIF C 5 - Cas du modele MICROPLANS ORTHOTROPE C ========================================= ELSE IF (MATEPL.EQ.96) THEN NBROBL=14 SEGINI,NOMID LESOBL( 1)='EPSE' LESOBL( 2)='R ' C= Tenseur d'endommagement LESOBL( 3)='D11 ' LESOBL( 4)='D22 ' LESOBL( 5)='D33 ' LESOBL( 6)='D12 ' LESOBL( 7)='D13 ' LESOBL( 8)='D23 ' C= Tenseur des contraintes anelastiques dues a l'endommagement LESOBL( 9)='SA11' LESOBL(10)='SA22' LESOBL(11)='SA33' LESOBL(12)='SA12' LESOBL(13)='SA13' LESOBL(14)='SA23' C 5 - Cas du modele MICROPLANS ISOTROPE C ======================================= ELSE IF (MATEPL.EQ.98) THEN NBROBL=9 SEGINI,NOMID LESOBL(1)='EPSE' LESOBL(2)='R ' C= Scalaire d'endommagement LESOBL(3)='DOM' C= Tenseur des contraintes anelastiques dues a l'endommagement LESOBL(4)='SA11' LESOBL(5)='SA22' LESOBL(6)='SA33' LESOBL(7)='SA12' LESOBL(8)='SA13' LESOBL(9)='SA23' * RDj * ELSEIF(MATEPL.EQ.124)THEN * * CAS DU MODELE SCALAIRE AVEC DEFORMATION ANELASTIQUE * NBROBL=24 SEGINI,NOMID LESOBL(1) ='ECM' LESOBL(2) ='D' LESOBL(3) ='DELT' LESOBL(4) ='EIC1' LESOBL(5) ='EIC2' LESOBL(6) ='EIC3' LESOBL(7) ='EIC4' LESOBL(8) ='EIC5' LESOBL(9) ='EIC6' LESOBL(10) ='EIT1' LESOBL(11) ='EIT2' LESOBL(12) ='EIT3' LESOBL(13) ='EIT4' LESOBL(14) ='EIT5' LESOBL(15) ='EIT6' LESOBL(16) ='EPTI' LESOBL(17) ='VER1' LESOBL(18) ='VER2' LESOBL(19) ='VER3' LESOBL(20) ='VER4' LESOBL(21) ='VER5' LESOBL(22) ='VER6' LESOBL(23) ='ENDP' LESOBL(24) ='ENDM' * RDj * * CCd * ELSEIF(MATEPL.EQ.125)THEN * * MODEL DAMAGE_TC - R. Faria & J. Oliver * C NBROBL=12 NBROBL=6 SEGINI NOMID LESOBL(1)='THRT' LESOBL(2)='EQUT' LESOBL(3)='DAMT' LESOBL(4)='THRC' LESOBL(5)='EQUC' LESOBL(6)='DAMC' * C LESOBL(7) ='SE11' C LESOBL(8) ='SE22' C LESOBL(9) ='SE33' C LESOBL(10)='SE12' C LESOBL(11)='SE13' C LESOBL(12)='SE23' * C 11 - Cas du modele SICf_SIC Scalaire ONERA C SICSCAL C Modele disponible seulement en MASSIF 3D C ============================================== ELSE IF (MATEPL.EQ.131) THEN IF (MFR.EQ.1) THEN NBROBL=19 SEGINI,NOMID * Somme des defo inel LESOBL( 1)='EPSE' * Dommage dans les différentes directions LESOBL( 2)='DOM1' LESOBL( 3)='DOM2' LESOBL( 4)='DOM3' * Déformation repère orthotrope ordre ONERA LESOBL( 5)='DF11' LESOBL( 6)='DF22' LESOBL( 7)='DF33' LESOBL( 8)='DF23' LESOBL( 9)='DF13' LESOBL(10)='DF12' * Indice d'activation des fissures LESOBL(11)='NUA1' LESOBL(12)='NUA2' LESOBL(13)='NUA3' * Déformations inélastiques repère orthotrope ordre ONERA LESOBL(14)='EPI1' LESOBL(15)='EPI2' LESOBL(16)='EPI3' LESOBL(17)='EPI4' LESOBL(18)='EPI5' LESOBL(19)='EPI6' ELSE ENDIF C 12 - Cas du modele SICf_SIC pseudo Tensoriel ONERA C SICTENS C Modele disponible seulement en MASSIF 3D C ============================================== ELSE IF (MATEPL.EQ.132) THEN IF (MFR.EQ.1) THEN NBROBL=23 SEGINI,NOMID * somme defo inel LESOBL( 1)='EPSE' * 5 variables de dommage LESOBL( 2)='DOM1' LESOBL( 3)='DOM2' LESOBL( 4)='DOM3' LESOBL( 5)='DOM4' LESOBL( 6)='DOM5' * Défo dans le repère ortho ordre ONERA LESOBL( 7)='DF11' LESOBL( 8)='DF22' LESOBL( 9)='DF33' LESOBL( 10)='DF23' LESOBL( 11)='DF13' LESOBL( 12)='DF12' * Indices d'activation LESOBL(13)='NUA1' LESOBL(14)='NUA2' LESOBL(15)='NUA3' LESOBL(16)='NUA4' LESOBL(17)='NUA5' * Déformations inélastique repère ortho ordre ONERA LESOBL(18)='EPI1' LESOBL(19)='EPI2' LESOBL(20)='EPI3' LESOBL(21)='EPI4' LESOBL(22)='EPI5' LESOBL(23)='EPI6' ELSE ENDIF * ELSEIF(MATEPL.EQ.134)THEN * * 13. CAS DU MODELE DESMORAT * NBROBL=23 SEGINI,NOMID * * flag pour le non local LESOBL(1) ='EPTI' * * tenseur d'endommagement * LESOBL(2) ='D11 ' LESOBL(3) ='D22 ' LESOBL(4) ='D33 ' LESOBL(5) ='D12 ' LESOBL(6) ='D13 ' LESOBL(7) ='D23 ' * * tenseur de la base d'endommagement * LESOBL(8) ='RT11' LESOBL(9) ='RT12' LESOBL(10) ='RT13' LESOBL(11) ='RT21' LESOBL(12) ='RT22' LESOBL(13) ='RT23' LESOBL(14) ='RT31' LESOBL(15) ='RT32' LESOBL(16) ='RT33' * * flag pour l'endommagement maximum LESOBL(17) ='FAIL' * * tenseur des deformations * LESOBL(18) ='EP11' LESOBL(19) ='EP22' LESOBL(20) ='EP33' LESOBL(21) ='EP12' LESOBL(22) ='EP13' LESOBL(23) ='EP23' ELSEIF(MATEPL.EQ.141)THEN * C 14 - Cas du modele 'FATSIN' C ============================================== IF (IFLAG.EQ.0) THEN NBROBL=3 SEGINI,NOMID LESOBL(1)='EPTI' LESOBL(2) ='D' LESOBL(3) ='EPT0' ELSE NBROBL=1 SEGINI,NOMID LESOBL(1)='EPTI' ENDIF ELSEIF(MATEPL.EQ.144)THEN * C 15 - Cas du modele 'RICRAG' C ============================================== NBROBL=26 SEGINI,NOMID * * POUR LE NON LOCAL * LESOBL(1) ='EPTI' * * TENSEUR DE GLISSEMENT * LESOBL(2) ='EPI1' LESOBL(3) ='EPI2' LESOBL(4) ='EPI3' LESOBL(5) ='EPI4' LESOBL(6) ='EPI5' LESOBL(7) ='EPI6' * * TENSEUR D ECROUISSAGE CINEMATIQUE * LESOBL(8) ='ABC1' LESOBL(9) ='ABC2' LESOBL(10) ='ABC3' LESOBL(11) ='ABC4' LESOBL(12) ='ABC5' LESOBL(13) ='ABC6' * * QUELQUES VARIABLES INTERNES SCALAIRES * LESOBL(14) ='D ' LESOBL(15) ='DOND' LESOBL(16) ='DONI' LESOBL(17) ='FFFZ' LESOBL(18) ='TYPC' * * TENSEUR DE DEFORMATION TOTALES * LESOBL(19) ='EPA1' LESOBL(20) ='EPA2' LESOBL(21) ='EPA3' LESOBL(22) ='EPA4' LESOBL(23) ='EPA5' LESOBL(24) ='EPA6' * * FLAGS POUR ENDOMMAGEMENT ECCESSIF ET ECROUISSAGE * LESOBL(25) ='FZF1' LESOBL(26) ='FZF2' C +BR ELSEIF(MATEPL.EQ.157)THEN * C 16 - Cas du modele 'GLRC_DM' C ============================================== NBROBL=12 SEGINI,NOMID LESOBL( 1) ='VA01' LESOBL( 2) ='VA02' LESOBL( 3) ='VA03' LESOBL( 4) ='VA04' LESOBL( 5) ='VA05' LESOBL( 6) ='VA06' LESOBL( 7) ='VA07' LESOBL( 8) ='VA08' LESOBL( 9) ='XD1 ' LESOBL(10) ='XD2 ' LESOBL(11) ='XDM ' LESOBL(12) ='XDF ' ELSEIF(MATEPL.EQ.158)THEN * C 17 - Cas du modele 'RICBET' C ============================================== NBROBL=42 SEGINI,NOMID LESOBL( 1)='EPTI' LESOBL( 2)='EPI1' LESOBL( 3)='EPI2' LESOBL( 4)='EPI3' LESOBL( 5)='EPI4' LESOBL( 6)='EPI5' LESOBL( 7)='EPI6' LESOBL( 8)='ABC1' LESOBL( 9)='ABC2' LESOBL(10)='ABC3' LESOBL(11)='ABC4' LESOBL(12)='ABC5' LESOBL(13)='ABC6' LESOBL(14)='D ' LESOBL(15)='FZFT' LESOBL(16)='EPA1' LESOBL(17)='EPA2' LESOBL(18)='EPA3' LESOBL(19)='EPA4' LESOBL(20)='EPA5' LESOBL(21)='EPA6' LESOBL(22)='SIC1' LESOBL(23)='SIC2' LESOBL(24)='SIC3' LESOBL(25)='SIC4' LESOBL(26)='SIC5' LESOBL(27)='SIC6' LESOBL(28)='DEFF' LESOBL(29)='SIP1' LESOBL(30)='SIP2' LESOBL(31)='SIP3' LESOBL(32)='SIP4' LESOBL(33)='SIP5' LESOBL(34)='SIP6' LESOBL(35)='EPP1' LESOBL(36)='EPP2' LESOBL(37)='EPP3' LESOBL(38)='EPP4' LESOBL(39)='EPP5' LESOBL(40)='EPP6' LESOBL(41)='RECO' LESOBL(42)='DEPP' ELSEIF(MATEPL.EQ.159)THEN * C 18 - Cas du modele 'RICCOQ' C ============================================== NBROBL=18 SEGINI,NOMID LESOBL(1) ='EPM1' LESOBL(2) ='EPM2' LESOBL(3) ='EPM3' LESOBL(4) ='EPF1' LESOBL(5) ='EPF2' LESOBL(6) ='EPF3' LESOBL(7) ='DT ' LESOBL(8) ='ZT ' LESOBL(9) ='DC ' LESOBL(10)='ZC ' LESOBL(11)='EPP1' LESOBL(12)='EPP2' LESOBL(13)='EPP3' LESOBL(14)='XEC1' LESOBL(15)='XEC2' LESOBL(16)='XEC3' LESOBL(17)='XYDT' LESOBL(18)='XYDC' ELSEIF(MATEPL.EQ.163)THEN * C 19 - Cas du modele 'CONCYC' C ============================================== NBROBL=35 SEGINI,NOMID LESOBL( 1) ='EP11' LESOBL( 2) ='EP22' LESOBL( 3) ='EP33' LESOBL( 4) ='EP12' LESOBL( 5) ='EP13' LESOBL( 6) ='EP23' LESOBL( 7) ='SF11' LESOBL( 8) ='SF22' LESOBL( 9) ='SF33' LESOBL(10) ='SF12' LESOBL(11) ='SF13' LESOBL(12) ='SF23' LESOBL(13) ='QF11' LESOBL(14) ='QF22' LESOBL(15) ='QF33' LESOBL(16) ='QF12' LESOBL(17) ='QF13' LESOBL(18) ='QF23' LESOBL(19) ='D ' LESOBL(20) ='ZT ' LESOBL(21) ='PHI ' LESOBL(22) ='EM11' LESOBL(23) ='EM22' LESOBL(24) ='EM33' LESOBL(25) ='EM12' LESOBL(26) ='EM13' LESOBL(27) ='EM23' LESOBL(28) ='DP11' LESOBL(29) ='DP22' LESOBL(30) ='DP33' LESOBL(31) ='DP12' LESOBL(32) ='DP13' LESOBL(33) ='DP23' LESOBL(34) ='EDIS' LESOBL(35) ='EPTI' C -BR ELSEIF(MATEPL.EQ.177)THEN C 20 - Cas du modele 'EFEM' C ============================================== NBROBL=59 SEGINI,NOMID LESOBL(1) ='RHO1' LESOBL(2) ='RHO2' LESOBL(3) ='RHO4' LESOBL(4) ='RHO7' LESOBL(5) ='EPS1' LESOBL(6) ='EPS2' LESOBL(7) ='EPS3' LESOBL(8) ='EPS4' LESOBL(9) ='EPS5' LESOBL(10) ='EPS6' LESOBL(11) ='T1 ' LESOBL(12) ='T2 ' LESOBL(13) ='OUV1' LESOBL(14) ='OUV2' LESOBL(15) ='Z1 ' LESOBL(16) ='Z2 ' LESOBL(17) ='Z4 ' LESOBL(18) ='Z7 ' LESOBL(19) ='EPSZ' LESOBL(20) ='MNOU' LESOBL(21) ='ZIN1' LESOBL(22) ='ZIN2' LESOBL(23) ='ZIN4' LESOBL(24) ='ZIN7' LESOBL(25) ='DGL1' LESOBL(26) ='DGL2' LESOBL(27) ='DGL3' LESOBL(28) ='SGL1' LESOBL(29) ='SGL2' LESOBL(30) ='SGL3' LESOBL(31) ='NFLA' LESOBL(32) ='NIT ' LESOBL(33) ='XNX1' LESOBL(34) ='YN ' LESOBL(35) ='CPLA' LESOBL(36) ='Z_U ' LESOBL(37) ='UMAX' LESOBL(38) ='OUVN' LESOBL(39) ='OUVT' LESOBL(40) ='RESI' LESOBL(41) ='XNT ' LESOBL(42) ='YNT ' LESOBL(43) ='TUN ' LESOBL(44) ='TUT ' LESOBL(45) ='XNOR' LESOBL(46) ='YNOR' LESOBL(47) ='XPSI' LESOBL(48) ='VPT1' LESOBL(49) ='VPT2' LESOBL(50) ='XNVP' C-------POUR LE NON LOCAL LESOBL(51) ='ENL1' LESOBL(52) ='ENL2' LESOBL(53) ='ENL3' LESOBL(54) ='SXX' LESOBL(55) ='SYY' LESOBL(56) ='SZZ' LESOBL(57) ='SXY' LESOBL(58) ='SLM' LESOBL(59) ='DIFF' ENDIF IPCOMP=NOMID SEGDES,NOMID RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales