Download @otcoque.procedur

Back to the list

   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