Télécharger @lakappa.procedur

Retour à la liste

Numérotation des lignes :

  1. * @LAKAPPA PROCEDUR KK2000 99/11/30 21:15:11 3720
  2. *
  3. ************************************************************************
  4. * PROCEDURA @LAKAPPA
  5. ************************************************************************
  6. *
  7. * Descrizione : trova i coefficenti correttivi del taglio K13 e K23,
  8. * lamina per lamina, e fornisce in uscita una tabella
  9. * identica a quella di INPUT, ma con i moduli G13 e G23
  10. * di ogni lamina opportunamente corretti.
  11. * I valori sono moltiplicati per 6/5 in modo da annullare
  12. * la correzione nel caso di materiali isotropi, gi…
  13. * apportata internamente a procedure di calcolo
  14. *
  15. * Sintassi : TG = @LAKAPPA TAB_COMP
  16. *
  17. * Autore/Data : Miliozzi A. 10/04/1997
  18. *
  19. * Revisione :
  20. *
  21. ***********************************************************************
  22. *
  23. *--- INPUT
  24. *=========
  25. *
  26. * TAB_COMP tavola caratteristica dei laminati compositi
  27. *
  28. *--- OUTPUT
  29. *==========
  30. *
  31. * TG tavola caratteristica dei laminati compositi con i valori
  32. * G13 e G23 corretti
  33. *
  34. *
  35. **********************************************************************
  36. *
  37. DEBPROC @LAKAPPA TCOMP*TABLE ;
  38. *
  39. NZON = (DIME TCOMP) - 2 ;
  40. N1 = 1 ;
  41. REPETER LOOP1 NZON ;
  42. *
  43. TG = TCOMP ;
  44. N2 = 1 ;
  45. PD1 = PROG ; PD2 = PROG ;
  46. PZS = PROG ; PZI = PROG ;
  47. NZN1 = 0; DZN1 = 0 ;
  48. NZN2 = 0; DZN2 = 0 ;
  49. NLAM = (DIME TCOMP.N1) - 6 ;
  50. *
  51. REPETER LOOP2 NLAM ;
  52. *
  53. EX1 = TCOMP.N1.N2.EXC ;
  54. EP1 = TCOMP.N1.N2.EPA ;
  55. AN1 = TCOMP.N1.N2.ANG ;
  56. ID1 = TCOMP.N1.N2.IDM ;
  57. *
  58. TCM = TCOMP.MCOL ;
  59. Y1 = TCM.ID1.YG1 ; Y2 = TCM.ID1.YG2 ;
  60. N12 = TCM.ID1.NU12 ; G1 = TCM.ID1.G12 ;
  61. *
  62. BETA = AN1 ;
  63. *
  64. *******************************************************
  65. * Ricavo le coordinate estreme di ogni lamina
  66. *******************************************************
  67. *
  68. ZS = EX1+(EP1 / 2) ;
  69. ZI = EX1-(EP1 / 2) ;
  70. POLD=PZS;
  71. PZS = INSERE POLD N2 ZS ; DETR POLD ;
  72. POLD=PZI;
  73. PZI = INSERE POLD N2 ZI ; DETR POLD ;
  74. *
  75. ********************************************************
  76. * Calcolo i valori delle costanti ingegneristiche
  77. * nel sistema di riferimento globale
  78. ********************************************************
  79. *
  80. CB = COS BETA; SB = SIN BETA;
  81. YX = 1/(((CB**4)/Y1)+((1/G1)-((2*N12/Y1))*(SB**2)*(CB**2))
  82. +((SB**4)/Y2));
  83. YY = 1/(((SB**4)/Y1)+((1/G1)-((2*N12/Y1))*(SB**2)*(CB**2))
  84. +((CB**4)/Y2));
  85. NXY = (((N12/Y1)*((SB**4)+(CB**4)))-
  86. (((1/Y1)+(1/Y2)-(1/G1))*(SB**2)*(CB**2)))*YX ;
  87. GXY = 1/((2*((2/Y1)+(2/Y2)+(4*N12/Y1)-(1/G1))*(SB**2)*(CB**2))
  88. +(((SB**4)+(CB**4))/G1)) ;
  89. NYX = (YY/YX)*NXY ;
  90. *
  91. *******************************************************
  92. * Ricavo i valori D1 e D2 per ogni lamina
  93. *******************************************************
  94. *
  95. D1 = YX/(1-(NXY*NYX)) ;
  96. D2 = YY/(1-(NXY*NYX)) ;
  97. POLD=PD1;
  98. PD1 = INSERE POLD N2 D1 ; DETR POLD ;
  99. POLD=PD2;
  100. PD2 = INSERE POLD N2 D2 ; DETR POLD ;
  101. *
  102. * Ricavo num e denom per il calcolo di z neutra
  103. *
  104. NZN1 = (D1*((ZS**2)-(ZI**2)))+NZN1 ;
  105. DZN1 = (D1*EP1)+DZN1 ;
  106. NZN2 = (D2*((ZS**2)-(ZI**2)))+NZN2 ;
  107. DZN2 = (D2*EP1)+DZN2 ;
  108. *
  109. N2 = N2 + 1;
  110. FIN LOOP2 ;
  111. *
  112. ******************************************************
  113. * Calcolo la quota delle fibre medie
  114. ******************************************************
  115. *
  116. ZN1 = 0.5*NZN1/DZN1 ;
  117. ZN2 = 0.5*NZN2/DZN2 ;
  118. *
  119. ******************************************************
  120. * Calcolo SUM1 e SUM2 per ogni lamina
  121. ******************************************************
  122. *
  123. PSUM1 = PROG ; PSUM2 = PROG ;
  124. POLD = PSUM1;
  125. PSUM1 = INSERE POLD 1 0. ; DETR POLD ;
  126. POLD=PSUM2;
  127. PSUM2 = INSERE POLD 1 0. ; DETR POLD ;
  128. N2 = NLAM ;
  129. SUM1 = 0. ; SUM2 = 0. ;
  130. SI (NLAM > 1 ) ;
  131. REPETER LOOP3 (NLAM-1) ;
  132. ZS = EXTR PZS N2 ;
  133. ZI = EXTR PZI N2 ;
  134. D1 = EXTR PD1 N2 ;
  135. D2 = EXTR PD2 N2 ;
  136. *
  137. SUM1 = (D1*((((ZS**2)-(ZI**2))/2)-(EP1*ZN1)))
  138. + SUM1 ;
  139. SUM2 = (D2*((((ZS**2)-(ZI**2))/2)-(EP1*ZN2)))
  140. + SUM2 ;
  141. *
  142. N2 = N2-1 ;
  143. POLD=PSUM1;
  144. PSUM1 = INSERE POLD (NLAM+1-N2) SUM1 ; DETR POLD ;
  145. POLD=PSUM2;
  146. PSUM2 = INSERE POLD (NLAM+1-N2) SUM2 ; DETR POLD ;
  147. FIN LOOP3 ;
  148. FINSI;
  149. N2 = 1 ;
  150. R1 = 0 ; R2 = 0 ;
  151. I1TOT = 0 ; I2TOT = 0 ;
  152. PI1 = PROG ; PI2 = PROG ;
  153. REPETER LOOP4 NLAM ;
  154. D1 = EXTR PD1 N2 ;
  155. D2 = EXTR PD2 N2 ;
  156. ZS = EXTR PZS N2 ;
  157. ZI = EXTR PZI N2 ;
  158. SUM1 = EXTR PSUM1 (NLAM+1-N2) ;
  159. SUM2 = EXTR PSUM2 (NLAM+1-N2) ;
  160. *
  161. ********************************************************
  162. * Calcolo R1 e R2
  163. ********************************************************
  164. *
  165. R1 = (D1*((((ZS**3)-(ZI**3))/3)-(((ZS**2)-(ZI**2))*ZN1)+
  166. (EP1*(ZN1**2))))+R1 ;
  167.  
  168. R2 = (D2*((((ZS**3)-(ZI**3))/3)-(((ZS**2)-(ZI**2))*ZN2)+
  169. (EP1*(ZN2**2))))+R2 ;
  170. *
  171. *
  172. ********************************************************
  173. * Calcolo Gxz eGyz rispetto al riferimento
  174. * globale
  175. ********************************************************
  176. *
  177. EP1 = TCOMP.N1.N2.EPA ;
  178. AN1 = TCOMP.N1.N2.ANG ;
  179. ID1 = TCOMP.N1.N2.IDM ;
  180. *
  181. TCM = TCOMP.MCOL ;
  182. G2 = TCM.ID1.G23 ; G3 = TCM.ID1.G13 ;
  183. *
  184. BETA = AN1 ;
  185. *
  186. CB = COS BETA; SB = SIN BETA;
  187. GXZ = (G2*G3)/(((SB**2)*G3)+((CB**2)*G2)) ;
  188. GYZ = (G2*G3)/(((CB**2)*G3)+((SB**2)*G2)) ;
  189. *
  190. ********************************************************
  191. * Calcolo I1 per ogni lamina
  192. ********************************************************
  193. *
  194. A11 = (-1)*(D1/2) ;
  195. A21 = D1*ZN1 ;
  196. A31 = ((-1)*A11*(ZI**2))-(D1*ZI*ZN1)-SUM1 ;
  197. I1 = (((((ZS**5)-(ZI**5))*(A11**2))/5)+((((ZS**4)-(ZI**4))
  198. *A11*A21)/2)+((((A21**2)+(2*A11*A31))/3)*((ZS**3)-(ZI**3)))
  199. +(A21*A31*((ZS**2)-(ZI**2)))+(EP1*(A31**2)))
  200. /GXZ ;
  201. *
  202. POLD=PI1;
  203. PI1 = INSERE POLD N2 I1 ; DETR POLD ;
  204. *
  205. ********************************************************
  206. * Calcolo I2 per ogni lamina
  207. ********************************************************
  208. *
  209. A12 = (-1)*(D2/2) ;
  210. A22 = D2*ZN2 ;
  211. A32 = ((-1)*A12*(ZI**2))-(D2*ZI*ZN2)-SUM2 ;
  212. I2 = (((((ZS**5)-(ZI**5))*(A12**2))/5)+((((ZS**4)-(ZI**4))
  213. *A12*A22)/2)+((((A22**2)+(2*A12*A32))/3)*((ZS**3)-(ZI**3)))
  214. +(A22*A32*((ZS**2)-(ZI**2)))+(EP1*(A32**2)))
  215. /GYZ ;
  216. *
  217. POLD=PI2;
  218. PI2 = INSERE POLD N2 I2 ; DETR POLD ;
  219. *
  220. * Calcolo I1TOT e I2TOT
  221. *
  222. I1TOT = I1 + I1TOT ;
  223. I2TOT = I2 + I2TOT ;
  224. *
  225. N2 = N2+1 ;
  226. FIN LOOP4 ;
  227. *
  228. N2 = 1 ;
  229. REPETER LOOP5 NLAM;
  230. I1 = EXTR PI1 N2 ;
  231. I2 = EXTR PI2 N2 ;
  232. *
  233. EP1 = TCOMP.N1.N2.EPA ;
  234. AN1 = TCOMP.N1.N2.ANG ;
  235. *
  236. BETA = AN1 ;
  237. CB = COS BETA; SB = SIN BETA;
  238. *
  239. ********************************************************
  240. * Calcolo i valori corretti per GXY e GYZ
  241. ********************************************************
  242. *
  243. GXZ = ((R1**2)*I1)/(EP1*(I1TOT**2)) ;
  244. GYZ = ((R2**2)*I2)/(EP1*(I2TOT**2)) ;
  245. *
  246. *
  247. * e li ruoto per ciascuna lamina nel sistema
  248. * di riferimento ortotropo
  249. *
  250. SI (ABS((CB**4)-(SB**4)) <EG 0.01) ;
  251. G1 = (GXZ + GYZ)*3/5 ;
  252. G2 = G1 ;
  253. SINON ;
  254. G1 = ((((CB**2)*GXZ)-((SB**2)*GYZ))/((CB**4)-(SB**4)))*6/5 ;
  255. G2 = ((((SB**2)*GXZ)-((CB**2)*GYZ))/((SB**4)-(CB**4)))*6/5 ;
  256. FINSI ;
  257. *
  258. TG.N1.N2.G13 = G1 ;
  259. TG.N1.N2.G23 = G2 ;
  260. N2 = N2 + 1 ;
  261. FIN LOOP5 ;
  262. *
  263. N1 = N1 + 1 ;
  264. FIN LOOP1 ;
  265. *
  266. ************************************************************************
  267. * FINE PROCEDURA @LAKAPPA
  268. ************************************************************************
  269. *
  270. FINPROC ;
  271.  
  272.  
  273.  

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