* @OTPOUT PROCEDUR AM1 92/10/29 21:15:34 734 *--------------------------------------------------------------- * OTTIMIZZAZIONE TRAVI A SEZIONE RETTANGOLARE * A PESO MINIMO , TENSIONE LIMITE IMPOSTA * * REVISIONE 21-10-92 AUTORI : CHIRICOZZI - DONARELLI - GIANNUZZI * E N E A - VEL MEP TERMO *--------------------------------------------------------------- DEBPROC @OTPOUT SEZY*FLOTTANT SEZZ*FLOTTANT SLIM*FLOTTANT STEC*FLOTTANT TMOD*TABLE TMAT*TABLE FORZ*CHPOINT VINCO*RIGIDITE TVECT*TABLE; *--------------------------------------------------------------- * CRIT ERRORE SU SIGMA LIMITE --------------------------------- * NMIT NUMERO MASSIMO ITERAZIONI ------------------------------ * SEZY LARGHEZZA INIZIALE TRAVI ------------------------------- * SEZZ ALTEZZA INIZIALE TRAVI --------------------------------- * SLIM SIGMA LIMITE ------------------------------------------- * STEC DIMENSIONE MINIMA -------------------------------------- * TMOD TAVOLA CONTENENTE GLI OGG. MODELE DELLE ZONE ----------- * TMAT TAVOLA CONTENENTE GLI OGG. MATERIAU DELLE ZONE --------- * FORZ CAMPO DI FORZE ----------------------------------------- * VINCO RIGIDEZZA VINCOLI + ZONE NON OTTIMIZZATE --------------- * TVECT TAVOLA CONTENENTE I VETTORI ORIETAZIONE DELLE ZONE ----- * -------------------------------------------------------------- TTRA = TABLE ; TMAI = TABLE ; TCAR = TABLE ; TRIG = TABLE ; SAUTER 2 LIGNE ; MESS ' ' ; MESS ' OTTIMIZZAZIONE TRAVI A PESO MINIMO ' ; MESS ' ' ; SAUTER 1 LIGNE; MESS ' OGNI QUANTE ITERAZIONI VUOI UNA STAMPA COMPLETA ? ' ; OBTENIR FSTAMP*ENTIER ; MESS ' CONFERMARE O CAMBIARE VALORE ' ; A=1. ; OBTENIR A1*FLOTTANT ; SI('NEG' A1 'NON' ); A=A1; FINSI; * * MOMEMTI E SFORZI NORMALI SIGNIFICATIVI ALF=0.001 ; DMFS = @CTRAVE STEC STEC ; MFS = SLIM * ALF * IM / STEC ; FNS = SLIM * ALF * SEZM ; DETR DMFS ; * * CARICAMENTO DIMENSIONI E MOMENTI INIZIALI DELLE ZONE N=0 ; REPETER CTRA NZ ; N=N+1 ; TTRA.N=@CTRAVE SEZY SEZZ ; *CALCOLO PESO SI ( N EGA 1 ) ; TEL = TMAI.N ; PESO=PESZ ; SINON ; PESO = PESO + PESZ ; TEL = TEL ET ( TMAI.N ) ; FINSI ; FIN CTRA ; REPE LL66 ; MESS 'FORNIRE PUNTO DI VISTA' ; OBTENIR PVX*FLOTTANT PVY*FLOTTANT PVZ*FLOTTANT; PV=PVX PVY PVZ ; TRAC PV TEL ; SI ( 'NEG' FF66 'SI' ); QUITTER LL66 ; FINSI; FIN LL66; * * CICLO PRINCIPALE * NIT=0; REPETER BOUC1 NMIT; MERS=0. ; NOCONV= 1; NIT = NIT+1; SAUTER 2 LIGNE ; MESS ' ITERAZIONE NUMERO ' NIT ; SAUTER 1 LIGNE ; * RIGIDEZZA TOTALE N=0; REPETER LOP11 NZ ; N=N+1; SI( NIT > 1 ) ; FINSI ; FINSI; SI ( N EGA 1 ) ; RIGT = VINCO ET (TRIG.N ) ; SINON ; RIGT = RIGT ET (TRIG.N) ; FINSI ; FIN LOP11 ; * *RISOLUZIONE ALL ITERAZIONE -NIT- * * N=0 ; REPETER BOUC3 NZ; N=N+1; SFOZ = SIGMA SPOZ TMOD.N (TMAT.N ET TCAR.N) ; DETR SPOZ ; * DY =EXTRAI TTRA.N 1; DZ =EXTRAI TTRA.N 2; SEZ=EXTRAI TTRA.N 3; IY =EXTRAI TTRA.N 4; IZ =EXTRAI TTRA.N 5; * * CALCOLO TENSIONI DOVUTE A: TZX SFORZO NORMALE * TZY MOM. FLETTENTE INTORNO A Y * TZZ MOM. FLETTENTE INTORNO A Z DETR SFOZ ; * * RAPPORTO MOMENTI MASSIMI E DIMENSIONI SI ( MCMZ < MCMY ) ; SI ( MCMY < MFS ) ; RM=1. ; SINON ; SI ( MCMZ < MFS ) ; RM = MFS / MCMY ; SINON ; RM = MCMZ / MCMY ; FINSI ; FINSI ; SINON ; SI ( MCMZ < MFS ) ; RM=1. ; SINON ; SI ( MCMY < MFS ) ; RM = MFS / MCMZ ; SINON ; RM = MCMY / MCMZ ; FINSI ; FINSI ; FINSI ; RMZY=MCMZ / (MCMY + 1.E-6) ; SF = (MCX + ( 6. * ( MCMY + MCMZ ) / STEC)) / SEZM; RO = 1. - ( MCX / SEZM / SF ) ; RD = 1. - ( RO * ( 1. - RM )) ; SI ( MCMY < MCMZ ) ; RD = 1. / RD ; FINSI ; * * SIGMA TOTALE MASSIMA CONSERVATIVA MSIGT= MTZX + MTZY + MTZZ ; * SIGMA TOTALE MASSIMA REALE KK1 = TZX + TZY + TZZ ; * RAPPORTO UNIFORMITA SFORZI RUNIF = SIGTM / MSIGT ; * * VERIFICA CONVERGENZA ZONA * E * AGGIORNAMENTO AREA E DIMENSIONI TRAVE COEFA= (1.-A)+(A * SIGTM / SLIM ) ; ERSZ= ABS ((SIGTM - SLIM ) /SLIM ) ; SEZP= COEFA * SEZ ; SI (SEZM < SEZP ) ; SEZN = SEZP ; DYN = ( RD * SEZN) ** 0.5 ; DZN = ( SEZN / DYN ) ; SI ( DYN < STEC ) ; DYN= STEC ; DZN= SEZN / STEC ; FINSI ; SI ( DZN < STEC ) ; DZN= STEC ; DYN= SEZN / STEC ; FINSI ; REMPL SCNEW N 0 ; REMPL TCOLD N 0 ; SINON ; * LIMITE TECNOLOGICO REMPL SCNEW N 1 ; SINON ; REMPL SCNEW N 0 ; FINSI ; REMPL TCOLD N 1 ; SEZN = SEZM ; DYN = STEC ; DZN = STEC ; FINSI ; SINON ; * CONVERGENZA TENSIONI DYP = ( RD * SEZP) ** 0.5 ; DZP = ( SEZP/ DYP ) ; ((DYP < STEC ) OU ( DZP < STEC )))) ; * NON VA RIPARTITA L AREA REMPL SCNEW N 1 ; REMPL TCOLD N 0 ; SEZN= SEZ ; DYN = DY ; DZN = DZ ; SINON ; * VA RIPARTITA L AREA REMPL SCNEW N 0 ; REMPL TCOLD N 0 ; SEZN= SEZP ; DYN = DYP ; DZN = DZP ; FINSI ; FINSI ; * TTRA.N = @CTRAVE DYN DZN ; *CALCOLO PESO SI ( N EGA 1 ) ; PESO=PESZ ; SINON ; PESO = PESO + PESZ ; FINSI ; MESS ' ZONA ' N ; MESS 'PESO ZONA............' PESZ ; MESS 'SEZIONE ATTUALE......' SEZN ; MESS 'RAPPORTO DIMENSIONI..' RD ; MESS 'SEZIONE PRECEDENTE...' SEZ ; MESS 'ERRORE SU ZONA.......' ERSZ ; MESS 'SIGMA TOTALE MAX MAX.' MSIGT ; MESS 'SIGMA TOTALE MAX.....' SIGTM ; MESS 'RAPPORTO UNIFORMITA..' RUNIF ; MESS 'RAPPORTO MOMENTI.....' RMZY ; MESS 'MOMENTO SIGNIFICATIVO' MFS ; SINON ; FINSI ; FINSI ; * NOCONV=0 ; FINSI ; * MERS=ERSZ ; FINSI ; FIN BOUC3 ; * SAUTER 1 LIGNE ; MESS ' PESO STRUTTURA................. ' PESO ; MESS ' ERRORE MASSIMO SU TUTTE LE ZONE ' MERS ; SI ( NOCONV EGA 1 ) ; FINSI ; * OUTPUT GRAFICI NITP= NIT + 1 ; PP11=PPESO ; PI11=PITER ; TITRE ' ANDAMENTO DEL PESO ALL ITERAZIONE ' NIT ; SI (NIT EGA 1 ) ; SINON ; PE11=PERSG ; FINSI ; TITRE ' ANDAMENTO DELL ERRORE SULLE SIGMA ALL ITERAZIONE ' NIT ; TITRE 'ZONE ROSSE NON ANCORA IN CONVERGENZA ALL ITERAZIONE' NIT ; N=0 ; REPE LL77 NZ ; N=N+1 ; SINON ; FINSI ; SI('EGA' N 1 ) ; TEL1= TMAIN ; SINON ; TEL1=TEL1 ET TMAIN ; FINSI ; FIN LL77 ; TRAC PV TEL1 ; DETR TEL1 ; * SI ( NOCONV EGA 1 ) ; QUITTER BOUC1 ; FINSI ; SI('EGA'SSNN 'NO'); QUITTER BOUC1; FINSI; DETR SPOT ; MESS ' FORNIRE IL NUOVO VALORE COEFFICIENTE DI RILASSAMENTO ' ; MESS ' COEFFICIENTE ATTUALE ' A ; OBTENIR A1*FLOTTANT ; SI('NEG' A1 'NON') ; A=A1; FINSI; FIN BOUC1; N=0; REPETER LOP22 NZ ; N=N+1; DY =EXTRAI (TTRA.N) 1; DZ =EXTRAI (TTRA.N) 2; SEZ=EXTRAI (TTRA.N) 3; MESS ' ZONA NUMERO ' N ; FIN LOP22 ; FINPROC TTRA SPOT;
© Cast3M 2003 - Tous droits réservés.
Mentions légales