Télécharger @mistpar.procedur

Retour à la liste

Numérotation des lignes :

  1. * @MISTPAR PROCEDUR FABRICE 03/11/13 21:20:16 4732
  2. debproc @MISTPAR fichier*'MOT' SENSIP1*'ENTIER' SENSIP2*'ENTIER' ;
  3. *-------------------------------------------------------------------------------
  4. * SENSIP1 = numero d'ordre du 1er vecteur de la base d'orthotropie de MISTRAL
  5. * dans la base d'orthotropie de CASTEM
  6. * SENSIP2 = numero d'ordre du 2eme vecteur de la base d'orthotropie de MISTRAL
  7. * dans la base d'orthotropie de CASTEM
  8. * Remarque: un numero negatif indique que le vecteur MISTRAL
  9. * est de sens oppose au vecteur CASTEM
  10. *-------------------------------------------------------------------------------
  11. IP1 = abs SENSIP1 ; IP2 = abs SENSIP2 ;
  12. si (ega IP1 IP2) ;
  13. mess 'ERREUR: les 2 vecteurs sont colineaires !' ;
  14. mess 'Corrigez et utilisez a nouveau MISTPAR.' ;
  15. finsi ;
  16. *-------------------------------------------------------------------------------
  17. * LE FICHIER 'fichier' CONTIENT LES PROPRIETES ELASTIQUES et NON LINEAIRES DU
  18. * MODELE MISTRAL DANS LA BASE D'ORTHOTROPIE DE MISTRAL. CE PROGRAMME LIT
  19. * fichier ET PRODUIT DES LISTES DE REELS CONTENANT LES PROPRIETES NON LINEAIRES.
  20. * IL PRODUIT AUSSI LES PROPRIETES ELASTIQUES DANS LA BASE D'ORTHOTROPIE
  21. * DE CASTEM CONNAISSANT L'ORIENTATION DE LA BASE D'ORTHOTROPIE DE MISTRAL
  22. * / A CELLE DE CASTEM. CETTE ORIENTATION EST DEFINIE PAR LES ENTIERS SENSIP1
  23. * et SENSIP2 (CF. CI-DESSUS). IL S'AGIT D'UNE SIMPLE PERMUTATION DES AXES.
  24. * REMARQUE : UN MATERIAU ISOTROPE EST TRAITE COMME UN MATERIAU ORTHOTROPE.
  25. *-------------------------------------------------------------------------------
  26. * Lecture de 'fichier' cree par le programme en FORTRAN MISTLOI :
  27. *
  28. option ACQUERIR fichier ;
  29. *
  30. ACQU NPDILT*'ENTIER' ;
  31. PDILT = prog ;
  32. repeter bT NPDILT ;
  33. ACQU x*'FLOTTANT' ;
  34. PDILT = PDILT et (prog x) ;
  35. fin bT ;
  36. *
  37. * PCOEL : proprietes elastiques (YOUNG, POISSON, modules de cisaillement)
  38. ACQU NPCOEL*'ENTIER' ;
  39. PCOEL = prog ;
  40. repeter bE NPCOEL ;
  41. ACQU x*'FLOTTANT' ;
  42. PCOEL = PCOEL et (prog x) ;
  43. fin bE ;
  44. *
  45. ACQU NDPI*'ENTIER' ;
  46. ACQU NDVP*'ENTIER' ;
  47. ACQU NXX*'ENTIER' ;
  48. ACQU NPSI*'ENTIER' ;
  49. NDP = NDPI + NDVP ;
  50. *
  51. si (NDP > 0) ;
  52. *
  53. ACQU NPCOHI*'ENTIER' ;
  54. PCOHI = prog ;
  55. repeter bH NPCOHI ;
  56. ACQU x*'FLOTTANT' ;
  57. PCOHI = PCOHI et (prog x) ;
  58. fin bH ;
  59. *
  60. si (NDVP > 0) ;
  61. ACQU NPECOU*'ENTIER' ;
  62. PECOU = prog ;
  63. repeter bV NPECOU ;
  64. ACQU x*'FLOTTANT' ;
  65. PECOU = PECOU et (prog x) ;
  66. fin bV ;
  67. sinon ;
  68. PECOU = prog 0. ;
  69. finsi ;
  70. *
  71. ACQU NPEDIR*'ENTIER' ;
  72. PEDIR = prog ;
  73. repeter bR NPEDIR ;
  74. ACQU x*'FLOTTANT' ;
  75. PEDIR = PEDIR et (prog x) ;
  76. fin bR ;
  77. *
  78. ACQU NPRVCE*'ENTIER' ;
  79. PRVCE = prog ;
  80. repeter bQ NPRVCE ;
  81. ACQU x*'FLOTTANT' ;
  82. PRVCE = PRVCE et (prog x) ;
  83. fin bQ ;
  84. *
  85. si (NXX > 0) ;
  86. ACQU NPECRX*'ENTIER' ;
  87. PECRX = prog ;
  88. repeter bX NPECRX ;
  89. ACQU x*'FLOTTANT' ;
  90. PECRX = PECRX et (prog x) ;
  91. fin bX ;
  92. sinon ;
  93. PECRX = prog 0. ;
  94. finsi ;
  95. *
  96. ACQU NPDVDI*'ENTIER' ;
  97. PDVDI = prog ;
  98. repeter bP NPDVDI ;
  99. ACQU x*'FLOTTANT' ;
  100. PDVDI = PDVDI et (prog x) ;
  101. fin bP ;
  102. sinon ;
  103. PCOHI = prog 0. ;
  104. PECOU = prog 0. ;
  105. PEDIR = prog 0. ;
  106. PRVCE = prog 0. ;
  107. PECRX = prog 0. ;
  108. PDVDI = prog 0. ;
  109. finsi ;
  110. *
  111. ACQU NPCROI*'ENTIER' ;
  112. PCROI = prog ;
  113. repeter bC NPCROI ;
  114. ACQU x*'FLOTTANT' ;
  115. PCROI = PCROI et (prog x) ;
  116. fin bC ;
  117. *
  118. ACQU NPINCR*'ENTIER' ;
  119. PINCR = prog ;
  120. repeter bI NPINCR ;
  121. ACQU x*'FLOTTANT' ;
  122. PINCR = PINCR et (prog x) ;
  123. fin bI ;
  124. *
  125. PNBRE = prog NDPI NDVP NXX NPSI ;
  126. *
  127. * FIN de lecture de 'fichier'
  128. *-------------------------------------------------------------------------------
  129. * LISTE DE TEMPERATURES
  130. *
  131. TK = prog 273.15 pas 100 2273.15 ; nTK = dime TK ;
  132. *
  133. ISOEL = enti (extr PCOEL 1) ;
  134. si (ega ISOEL 1) ;
  135. *
  136. * materiau isotrope converti en materiau orthotrope
  137. *
  138. E10 = prog nTK*(extr PCOEL 2) ;
  139. E11 = extr PCOEL 3 ;
  140. E1 = E10 + (E11*TK) ;
  141. E1 = evol manu 'T' TK 'YG1' E1 ;
  142. E2 = evol manu 'T' TK 'YG2' (EXTR E1 ORDO) ;
  143. E3 = evol manu 'T' TK 'YG3' (EXTR E1 ORDO) ;
  144. NU120 = prog nTK*(extr PCOEL 4) ;
  145. NU121 = extr PCOEL 5 ;
  146. NU12 = NU120 + (NU121*TK) ;
  147. NU12 = evol manu 'T' TK 'NU12' NU12 ;
  148. NU23 = evol manu 'T' TK 'NU23'(EXTR NU12 ORDO) ;
  149. NU13 = evol manu 'T' TK 'NU13'(EXTR NU12 ORDO) ;
  150. un = prog nTK*1 ;
  151. MU12 = (EXTR E1 ORDO) / (un + (EXTR NU12 ORDO)) ;
  152. MU12 = MU12 / 2. ;
  153. MU12 = evol manu 'T' TK 'G12' MU12 ;
  154. MU23 = evol manu 'T' TK 'G23' (EXTR MU12 ORDO) ;
  155. MU13 = evol manu 'T' TK 'G13' (EXTR MU12 ORDO) ;
  156. sinon ;
  157. *
  158. * materiau orthotrope
  159. *
  160. E10 = prog nTK*(extr PCOEL 2) ;
  161. E11 = extr PCOEL 3 ;
  162. E1 = E10 + (E11*TK) ;
  163. E1 = evol manu 'T' TK 'YG1' E1 ;
  164. E20 = prog nTK*(extr PCOEL 4) ;
  165. E21 = extr PCOEL 5 ;
  166. E2 = E20 + (E21*TK) ;
  167. E2 = evol manu 'T' TK 'YG2' E2 ;
  168. E30 = prog nTK*(extr PCOEL 6) ;
  169. E31 = extr PCOEL 7 ;
  170. E3 = E30 + (E31*TK) ;
  171. E3 = evol manu 'T' TK 'YG3' E3 ;
  172. *
  173. NU120 = prog nTK*(extr PCOEL 8) ;
  174. NU121 = extr PCOEL 9 ;
  175. NU12 = NU120 + (NU121*TK) ;
  176. NU12 = evol manu 'T' TK 'NU12' NU12 ;
  177. NU230 = prog nTK*(extr PCOEL 10) ;
  178. NU231 = extr PCOEL 11 ;
  179. NU23 = NU230 + (NU231*TK) ;
  180. NU23 = evol manu 'T' TK 'NU23' NU23 ;
  181. NU310 = prog nTK*(extr PCOEL 12) ;
  182. NU311 = extr PCOEL 13 ;
  183. NU31 = NU310 + (NU311*TK) ;
  184. NU31 = evol manu 'T' TK 'NU31' NU31 ;
  185. *
  186. MU120 = prog nTK*(extr PCOEL 14) ;
  187. MU121 = extr PCOEL 15 ;
  188. MU12 = MU120 + (MU121*TK) ;
  189. MU12 = evol manu 'T' TK 'G12' MU12 ;
  190. MU130 = prog nTK*(extr PCOEL 16) ;
  191. MU131 = extr PCOEL 17 ;
  192. MU13 = MU130 + (MU131*TK) ;
  193. MU13 = evol manu 'T' TK 'G13' MU13 ;
  194. MU230 = prog nTK*(extr PCOEL 18) ;
  195. MU231 = extr PCOEL 19 ;
  196. MU23 = MU230 + (MU231*TK) ;
  197. MU23 = evol manu 'T' TK 'G23' MU23 ;
  198. *
  199. * coefficients d'elasticite dans la base d'orthotropie de CASTEM
  200. *
  201. si (ega IP1 1) ;
  202. si (ega IP2 2) ;
  203. * IP1=1 IP2=2 IP3=3
  204. NU13 = (EXTR NU31 ORDO) * ( (EXTR E1 ORDO)/(EXTR E3 ORDO) ) ;
  205. NU13 = evol manu 'T' TK 'NU13' NU13 ;
  206. sinon ;
  207. * IP1=1 IP2=3 IP3=2
  208. E2mis = E2 ;
  209. E2 = evol manu 'T' TK 'YG2' (EXTR E3 ORDO) ;
  210. E3 = evol manu 'T' TK 'YG3' (EXTR E2mis ORDO) ;
  211. NU13 = evol manu 'T' TK 'NU13' (EXTR NU12 ORDO) ;
  212. NU12 = (EXTR NU31 ORDO) * ( (EXTR E1 ORDO)/(EXTR E2 ORDO) ) ;
  213. NU12 = evol manu 'T' TK 'NU12' NU12 ;
  214. NU23 = (EXTR NU23 ORDO) * ( (EXTR E2 ORDO)/(EXTR E3 ORDO) ) ;
  215. NU23 = evol manu 'T' TK 'NU23' NU23 ;
  216. MU13mis = MU13 ;
  217. MU13 = evol manu 'T' TK 'G13' (EXTR MU12 ORDO) ;
  218. MU12 = evol manu 'T' TK 'G12' (EXTR MU13mis ORDO) ;
  219. finsi ;
  220. finsi ;
  221. si (ega IP1 2) ;
  222. si (ega IP2 1) ;
  223. * IP1=2 IP2=1 IP3=3
  224. E2mis = E2 ;
  225. E2 = evol manu 'T' TK 'YG2' (EXTR E1 ORDO) ;
  226. E1 = evol manu 'T' TK 'YG1' (EXTR E2mis ORDO) ;
  227. NU12 = (EXTR NU12 ORDO) * ( (EXTR E1 ORDO)/(EXTR E2 ORDO) ) ;
  228. NU12 = evol manu 'T' TK 'NU12' NU12 ;
  229. NU13 = evol manu 'T' TK 'NU13' (EXTR NU23 ORDO) ;
  230. NU23 = (EXTR NU31 ORDO) * ( (EXTR E2 ORDO)/(EXTR E3 ORDO) ) ;
  231. NU23 = evol manu 'T' TK 'NU23' NU23 ;
  232. MU23mis = MU23 ;
  233. MU23 = evol manu 'T' TK 'G23' (EXTR MU13 ORDO) ;
  234. MU13 = evol manu 'T' TK 'G13' (EXTR MU23mis ORDO) ;
  235. sinon ;
  236. * IP1=2 IP2=3 IP3=1
  237. E1mis = E1 ;
  238. E1 = evol manu 'T' TK 'YG1' (EXTR E3 ORDO) ;
  239. E3 = evol manu 'T' TK 'YG3' (EXTR E2 ORDO) ;
  240. E2 = evol manu 'T' TK 'YG2' (EXTR E1mis ORDO) ;
  241. NU13 = (EXTR NU23 ORDO) * ( (EXTR E1 ORDO)/(EXTR E3 ORDO) ) ;
  242. NU13 = evol manu 'T' TK 'NU13' NU13 ;
  243. NU23 = evol manu 'T' TK 'NU23' (EXTR NU12 ORDO) ;
  244. NU12 = evol manu 'T' TK 'NU12' (EXTR NU31 ORDO) ;
  245. MU12mis = MU12 ;
  246. MU12 = evol manu 'T' TK 'G12' (EXTR MU13 ORDO) ;
  247. MU13 = evol manu 'T' TK 'G13' (EXTR MU23 ORDO) ;
  248. MU23 = evol manu 'T' TK 'G23' (EXTR MU12mis ORDO) ;
  249. finsi ;
  250. finsi ;
  251. si (ega IP1 3) ;
  252. si (ega IP2 1) ;
  253. * IP1=3 IP2=1 IP3=2
  254. E3mis = E3 ;
  255. E3 = evol manu 'T' TK 'YG3' (EXTR E1 ORDO) ;
  256. E1 = evol manu 'T' TK 'YG1' (EXTR E2 ORDO) ;
  257. E2 = evol manu 'T' TK 'YG2' (EXTR E3mis ORDO) ;
  258. NU13 = (EXTR NU12 ORDO) * ( (EXTR E1 ORDO)/(EXTR E3 ORDO) ) ;
  259. NU13 = evol manu 'T' TK 'NU13' NU13 ;
  260. NU12 = evol manu 'T' TK 'NU12' (EXTR NU23 ORDO) ;
  261. NU23 = evol manu 'T' TK 'NU23' (EXTR NU31 ORDO) ;
  262. MU13mis = MU13 ;
  263. MU13 = evol manu 'T' TK 'G13' (EXTR MU12 ORDO) ;
  264. MU12 = evol manu 'T' TK 'G12' (EXTR MU23 ORDO) ;
  265. MU23 = evol manu 'T' TK 'G23' (EXTR MU13mis ORDO) ;
  266. sinon ;
  267. * IP1=3 IP2=2 IP3=1
  268. E3mis = E3 ;
  269. E3 = evol manu 'T' TK 'YG3' (EXTR E1 ORDO) ;
  270. E1 = evol manu 'T' TK 'YG1' (EXTR E3mis ORDO) ;
  271. NU23mis = NU23 ;
  272. NU23 = (EXTR NU12 ORDO) * ( (EXTR E2 ORDO)/(EXTR E3 ORDO) ) ;
  273. NU23 = evol manu 'T' TK 'NU23' NU23 ;
  274. NU12 = (EXTR NU23mis ORDO) * ((EXTR E1 ORDO)/(EXTR E2 ORDO)) ;
  275. NU12 = evol manu 'T' TK 'NU12' NU12 ;
  276. NU13 = evol manu 'T' TK 'NU13' (EXTR NU31 ORDO) ;
  277. MU23mis = MU23 ;
  278. MU23 = evol manu 'T' TK 'G23' (EXTR MU12 ORDO) ;
  279. MU12 = evol manu 'T' TK 'G12' (EXTR MU23mis ORDO) ;
  280. finsi ;
  281. finsi ;
  282. * fin materiau orthotrope
  283. finsi ;
  284. *-------------------------------------------------------------------------------
  285. finproc PDILT E1 E2 E3 NU12 NU23 NU13 MU12 MU23 MU13
  286. PNBRE PCOHI PECOU PEDIR PRVCE PECRX PDVDI PCROI PINCR ;
  287.  
  288.  
  289.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales