1 : * @OTCOQUE PROCEDUR AM1 92/10/29 21:15:25 734 2 : *---------------------------------------------------------------------- 3 : * 4 : * OTTIMIZZAZIONE PIASTRE A PESO MINIMO 5 : * E TENSIONE LIMITE IMPOSTA. 6 : * 7 : * REVISIONE : 30-7-92 AUTORI : DONARELLI, GIANNUZZI. 8 : * E N E A - VEL MEP TERMO 9 : *---------------------------------------------------------------------- 10 : * 11 : DEBPROC @OTCOQUE CRIT*FLOTTANT NMIT*ENTIER 12 : SPEI*FLOTTANT VLIM*FLOTTANT STEC*FLOTTANT 13 : TMOD*TABLE TMAT*TABLE 14 : FORZE*CHPOINT VINCO*RIGIDITE 15 : PV*POINT ; 16 : *--------------------------------------------------------------- 17 : * CRIT ERRORE SU SIGMA LIMITE --------------------------------- 18 : * NMIT NUMERO MASSIMO ITERAZIONI ------------------------------ 19 : * SPEI SPESSORE INIZIALE ZONE --------------------------------- 20 : * VLIM SIGMA EQUIVALENTE VMISES LIMITE ------------------------ 21 : * STEC SPESSORE MINIMO ---------------------------------------- 22 : * TMOD TAVOLA CONTENENTE GLI OGG. MODELE DELLE ZONE ----------- 23 : * TMAT TAVOLA CONTENENTE GLI OGG. MATERIAU DELLE ZONE --------- 24 : * FORZE CAMPO DI FORZE ----------------------------------------- 25 : * VINCO RIGIDEZZA VINCOLI + ZONE NON OTTIMIZZATE --------------- 26 : * PV PUNTO DI VISTA PER TRACCIAMENTI ----------------------- 27 : * -------------------------------------------------------------- 28 : MESS ' ---------------------------------------------------' ; 29 : MESS ' ---------------------------------------------------' ; 30 : MESS ' ' ; 31 : MESS ' OTTIMIZZAZIONE PIASTRE A PESO MINIMO ' ; 32 : MESS ' ' ; 33 : MESS ' ---------------------------------------------------' ; 34 : MESS ' ---------------------------------------------------' ; 35 : MESS ' ' ; 36 : MESS ' ---------------------------------------------------' ; 37 : MESS ' OGNI QUANTE ITERAZIONI VUOI UNA STAMPA COMPLETA ? ' ; 38 : MESS ' ---------------------------------------------------' ; 39 : OBTENIR FSTAMP*ENTIER ; 40 : MESS ' ----------------------------------------------------------' ; 41 : MESS ' VALORE USUALE DEL COEFFICIENTE DI RILASSAMENTO -1.- ' ; 42 : MESS ' CONFERMARE O CAMBIARE VALORE ' ; 43 : MESS ' ----------------------------------------------------------' ; 44 : A=1. ; 45 : OBTENIR A1*FLOTTANT ; 46 : SI('NEG' A1 'NON' ) ; 47 : A=A1; 48 : FINSI; 49 : * 50 : TCAR = TABLE ; 51 : TRHO = TABLE ; 52 : TRIG = TABLE ; 53 : TMAI = TABLE ; 54 : NZ= DIME TMOD ; 55 : SCNEW = LECT NZ*0 ; 56 : TCOLD = LECT NZ*0 ; 57 : * 58 : * CARICAMENTO SPESSORI INIZIALI 59 : SPZO = PROG NZ * SPEI; 60 : * 61 : * CARATTERISTICHE GEOMETRICHE 62 : N=0 ; 63 : PESO =0. ; 64 : REPETER CA1 NZ; 65 : N=N+1 ; 66 : TCAR.N = CARA TMOD.N EPAI SPEI ; 67 : TRHO.N = EXCO TMAT.N RHO ; 68 : TMAI.N = EXTR TMOD.N 'MAIL' ; 69 : PESZ = INTG TMOD.N TRHO.N TCAR.N ; 70 : PESO = PESO + PESZ ; 71 : SI( N EGA 1) ; 72 : TTMOD = TMOD . 1 ; 73 : SINON ; 74 : TTMOD = TTMOD ET TMOD.N ; 75 : FINSI ; 76 : FIN CA1 ; 77 : PPESO = PROG PESO ; 78 : PITER = PROG 0. ; 79 : * 80 : * CICLO PRINCIPALE 81 : * 82 : NIT=0 ; 83 : REPETER BOUC1 NMIT; 84 : PESO=0. ; 85 : MERS= 0. ; 86 : NOCONV=1 ; 87 : NIT = NIT+1 ; 88 : SAUTER PAGE ; 89 : *SAUTER 2 LIGNE ; 90 : MESS ' ' ; 91 : MESS ' ==============================' ; 92 : MESS ' ITERAZIONE NUMERO ' NIT ; 93 : MESS ' ==============================' ; 94 : MESS ' ' ; 95 : *SAUTER 1 LIGNE ; 96 : * 97 : * COSTRUZIONE RIGIDEZZE 98 : RIGT= VINCO ; 99 : N=0 ; 100 : REPETER LOP11 NZ ; 101 : N=N+1 ; 102 : SI((EXTR SCNEW N) EGA 0) ; 103 : SI( NIT > 1 ) ; 104 : DETR ( TRIG.N) ; 105 : FINSI ; 106 : TRIG.N= RIGI TMOD.N (TMAT.N ET TCAR.N) ; 107 : FINSI; 108 : RIGT = RIGT ET TRIG.N ; 109 : FIN LOP11 ; 110 : * 111 : * RISOLUZIONE ALL ITERAZIONE -NIT- 112 : * 113 : DE1=RESO RIGT FORZE; 114 : * 115 : SI ( NIT EGA 1 ); 116 : TITRE 'MAGLIATURA DELLA STRUTTURA ' ; 117 : MAGLIA= EXTR RIGT MAIL NOMU ; 118 : CMA = CONT MAGLIA; 119 : REPETER LOP55 ; 120 : MESS ' ------------------------------------------------'; 121 : MESS ' DARE COEFFICIENTE DI AMPLIFICAZIONE FORZE '; 122 : MESS ' ------------------------------------------------'; 123 : OBTENIR AMPX*FLOTTANT ; 124 : VF1 = VECT FORZE AMPX FX FY FZ ROUG ; 125 : TRAC PV RIGT VF1; 126 : MESS ' ------------------------------------------------'; 127 : MESS ' VUOI COMBIARE L AMPLIFICAZIONE ? (SI/NO)'; 128 : MESS ' ------------------------------------------------'; 129 : OBTENIR SSNN*MOT ; 130 : SI('EGA' SSNN 'NO'); 131 : QUITTER LOP55 ; 132 : FINSI ; 133 : FIN LOP55 ; 134 : FINSI ; 135 : * 136 : N=0 ; 137 : REPETER BOUC3 NZ; 138 : N=N+1; 139 : * 140 : * CALCOLO SPOSTAMENTI E TENSIONI PER OGNI ZONA 141 : DEZ = REDU DE1 TMAI.N ; 142 : SIGZ = SIGMA DEZ TMOD.N (TMAT.N ET TCAR.N) ; 143 : DETR DEZ ; 144 : * 145 : * TENSIONE VON MISES 146 : VMZ = VMIS TMOD.N SIGZ TCAR.N ; 147 : SI ( N EGA 1) ; 148 : VMT = VMZ ; 149 : SINON ; 150 : VMT = VMT ET VMZ ; 151 : FINSI ; 152 : DETR SIGZ ; 153 : * 154 : * TENSIONI MAX VON MISES E ERRORE MAX PER ZONA 155 : MVMZ =MAXIMUM VMZ ; 156 : XRSZ= ABS((MVMZ - VLIM) / VLIM ) ; 157 : ERSZ= XRSZ ; 158 : * AGGIORNAMENTO DELLO SPESSORE 159 : COEF= (1-A)+(A * MVMZ / VLIM ) ; 160 : SPE = EXTRAI SPZO N ; 161 : SPEN= SPE * COEF ; 162 : * 163 : * VERIFICA CONVERGENZA 164 : * E 165 : * AGGIORNAMENTO SPESSORI 166 : SI (ERSZ <EG CRIT ) ; 167 : * TENSIONI CONVERGENTI 168 : REMPLACE SCNEW N 1 ; 169 : SPEN = SPE ; 170 : SINON ; 171 : * TENSIONI NON CONVERGENTI 172 : SI (SPEN <EG STEC) ; 173 : SPEN= STEC ; 174 : ERSZ= 0. ; 175 : SI ((EXTR TCOLD N) EGA 1); 176 : REMPLACE SCNEW N 1 ; 177 : SINON ; 178 : NOCONV = 0 ; 179 : REMPLACE SCNEW N 0 ; 180 : REMPLACE TCOLD N 1 ; 181 : FINSI ; 182 : SINON ; 183 : NOCONV= 0 ; 184 : REMPLACE SCNEW N 0 ; 185 : FINSI ; 186 : FINSI ; 187 : SI(MERS < ERSZ) ; 188 : MERS = ERSZ ; 189 : FINSI ; 190 : * 191 : SI(( MULT NIT FSTAMP ) OU ( NIT EGA 1 )); 192 : MESS '---------------' ; 193 : MESS ' ZONA ' N ; 194 : MESS '---------------' ; 195 : MESS '-------------------------------------' ; 196 : MESS 'PESO ZONA...............' PESZ ; 197 : MESS '-------------------------------------' ; 198 : MESS 'SPESSORE ATTUALE........' SPEN ; 199 : MESS '-------------------------------------' ; 200 : MESS 'SPESSORE PRECEDENTE.....' SPE ; 201 : MESS '-------------------------------------' ; 202 : MESS 'ERRORE SU ZONA..........' XRSZ ; 203 : MESS '-------------------------------------' ; 204 : MESS 'SIGMA MAX DI VON MISES..' MVMZ ; 205 : MESS '------------------------------------------------'; 206 : SI(( EXTR SCNEW N) EGA 1 ); 207 : MESS ' ==* SI HA CONVERGENZA PER LA ZONA *== '; 208 : SINON ; 209 : MESS ' ==* NON SI HA CONVERGENZA PER LA ZONA *== '; 210 : FINSI ; 211 : MESS '------------------------------------------------'; 212 : FINSI ; 213 : REMPLACE SPZO N SPEN ; 214 : DETR TCAR.N ; 215 : TCAR.N= CARA TMOD.N EPAIS SPEN ; 216 : PESZ = INTG TMOD.N TRHO.N TCAR.N ; 217 : PESO = PESO + PESZ ; 218 : FIN BOUC3 ; 219 : * 220 : SI (NOCONV EGA 1 ) ; 221 : SAUTER PAGE ; 222 : SAUTER LIGNE ; 223 : MESS ' ================================================'; 224 : MESS ' *** SI HA CONVERGENZA SU TUTTE LE ZONE *** '; 225 : MESS ' ================================================'; 226 : FINSI ; 227 : SAUTER 1 LIGNE ; 228 : MESS ' ======================================='; 229 : MESS ' ERRORE MASSIMO...........' MERS ; 230 : MESS ' ======================================='; 231 : MESS ' PESO STRUTTURA...........' PESO ; 232 : MESS ' ======================================='; 233 : SAUTER PAGE ; 234 : SAUTER 2 LIGNE ; 235 : MESS ' ------------------------------------------------'; 236 : MESS ' VUOI GRAFICARE ANDAMENTI PESO ED ERRORE '; 237 : MESS ' E ISOVALORI DI VON MISES ? (SI/NO)'; 238 : MESS ' ------------------------------------------------'; 239 : OBTENIR ZZNN*MOT ; 240 : BOL1='NEG' ZZNN 'NO'; 241 : NITP=NIT + 1 ; 242 : PP11=PPESO ; 243 : PPESO=INSE PP11 NITP PESO ; DETR PP11 ; 244 : PI11=PITER ; 245 : PITER=INSE PI11 NITP ( FLOT NIT ) ; DETR PI11 ; 246 : TITRE ' ANDAMENTO DEL PESO FINO ALL ITERAZIONE ' NIT ; 247 : GPESO= EVOL MANU 'ITERAZIONE' PITER 'PESO' PPESO ; 248 : SI (BOL1) ;DESS GPESO ;FINSI; 249 : DETR GPESO ; 250 : SI (NIT EGA 1 ) ; 251 : PERSG= PROG MERS MERS ; 252 : SINON ; 253 : PE11=PERSG ; 254 : PERSG=INSE PE11 NITP MERS ; DETR PE11 ; 255 : FINSI ; 256 : TITRE ' ANDAMENTO DELL ERRORE SULLE SIGMA ALL ITERAZIONE ' NIT ; 257 : GERSG= EVOL MANU 'ITERAZIONE' PITER 'ERR.SIG' PERSG ; 258 : SI (BOL1) ;DESS GERSG ;FINSI; 259 : DETR GERSG ; 260 : * DISEGNO DELLE ISOVONMISES 261 : TITRE ' ISOVALORI DI VON MISES ' ; 262 : SI (BOL1) ;TRAC PV MAGLIA TTMOD VMT CMA ;FINSI; 263 : DETR VMT ; 264 : SAUTER LIGNE ; 265 : SI (NOCONV EGA 1 ) ; 266 : QUITTER BOUC1 ; 267 : FINSI ; 268 : * 269 : MESS ' ------------------------------------------------'; 270 : MESS ' VUOI CONTINUARE LE ITERAZIONI O USCIRE ? (SI/NO)'; 271 : MESS ' ------------------------------------------------'; 272 : OBTENIR SSNN*MOT ; 273 : SI('EGA' SSNN 'NO') ; 274 : QUITTER BOUC1 ; 275 : FINSI ; 276 : SAUTER LIGNE ; 277 : MESS ' ----------------------------------------------------------' ; 278 : MESS ' FORNIRE IL NUOVO VALORE COEFFICIENTE DI RILASSAMENTO ' ; 279 : MESS ' COEFFICIENTE ATTUALE ' A ; 280 : MESS ' ----------------------------------------------------------' ; 281 : OBTENIR A1*FLOTTANT ; 282 : SI('NEG' A1 'NON') ; 283 : A=A1; 284 : FINSI; 285 : DETR DE1 ; 286 : FIN BOUC1 ; 287 : SAUTER PAGE ; 288 : SAUTER 1 LIGNE ; 289 : MESS ' ======================================='; 290 : MESS ' NUMERO ITERAZIONI EFFETTUATE..' NIT ; 291 : MESS ' ======================================='; 292 : MESS ' PESO STRUTTURA................' PESO ; 293 : MESS ' ======================================='; 294 : SAUTER 1 LIGNE ; 295 : MESS ' ------------------------------------------------'; 296 : N=0; 297 : REPETER LOP22 NZ ; 298 : N=N+1; 299 : MESS ' ZONA ' N ' SPESSORE ' (EXTR SPZO N) ; 300 : MESS ' ------------------------------------------------'; 301 : FIN LOP22; 302 : FINPROC SPZO DE1; 303 : * 304 : *----FINE PROCEDURA OTTIMIZZAZIONE PIASTRE A PESO MINIMO 305 : * 306 : *
© Cast3M 2003 - All rights reserved.
Disclaimer