* MRCFRAME PROCEDUR FANDEUR 22/01/19 21:15:10 11256 TAB_IN*'TABLE' TOL_1*'FLOTTANT' L_ELE1/'LISTENTI'; * * -------------------------------------------------------- * Procedure MRCFRAME * Computation of security coef Lambda for frame element TIMO and POUT * * Developpers: * Alberto FRAU * DEN/DANS/DM2S/SEMT/EMSI * Nicolas ILE * DEN/DANS/DM2S/SEMT/EMSI * Giulia DI STEFANO * INPUT: * TYP_CAL1: Calculation option * 'RECTANGLE' * 'ELLIPSOIDE' * TAB_IN.'MAILLAGE': Maillage du voile [MAILLAGE] * TAB_IN.'EFFORT_SEISME': MCHAML de la matrice * representant l'enveloppe des * efforts sismiques (voir SISSIB) * TAB_IN.'EFFORT_STATIQUE': MCHAML des efforts statiques qui * agissent sur l'element frame * TAB_IN.'CARACTERISTIQUES' :MCHAML contenant les * caracteristiques de l'element * frame : * 'B_Y' longeur Y de la section * 'B_Z' longeur Z de la section * 'LIBY' Longeur ly * 'LIBZ' Longeur lz * 'SCAD' Espacement cadres * 'ENRB' Enrobage * 'PFER' Diametres ferrailage * [LISTREEL] * 'YFER' position y ferraillage * [LISTREEL] * 'ZFER' position z ferraillage * [LISTREEL] * 'ASWY' aire ferraillage transv y * 'ASWZ' aire ferraillage transv z * 'YACI' mod young acier * 'EPSB' eps beton * 'EPSA' eps acier * TAB_IN.'FC_BET': Resistance caracteristique beton * [FLOTTANT] * TAB_IN.'GAM_C': Coef gammac 1.5/1.2 EC2/EC8 * [FLOTTANT] * TAB_IN.'ALP_C': Coef alpa 1.0 EC2 * [FLOTTANT] * TAB_IN.'FS_ACI': resistance caracteristique de l'acier * [FLOTTANT] * TAB_IN.'GAM_S': Coef gammas 1.15 EC2 * [FLOTTANT] * TOL_1: Tolerance [FLOTTANT] * L_ELE1: Liste des elements sur lesquels on veut sortir les * graphiques des surfaces limites et des enveloppes * (sans ou avec covariance - RECTANGLE ou ELLISPOIDE) * (pas necessaire) [LISTREEL] * OUTPUT: * TT2: Table Contenant: * .'CH_LAMBDA': MCHAML les valeurs des marges (composent LAME) * .'CARTE': Maillage avec deux colorations pour indiquer les * elements avec une marge superieure à 1 ou * inferieure: * ROUGE elements -> Lambda < 1.0 * VERT elements -> Lambda > 1.0 * .'GRAPHIQUES': Sous table pour les outils de graphique: * .I. Ieme element * .'LIMITE': Surface limite de la couche externe * [MAILLAGE] * .'RECTANGLE': enveloppe sismique sans prise en compte * des covariances (methode RECTANGLE) * [MAILLAGE] * .'ELLIPSOIDE': enveloppe sismique avec prise en compte * des covariances (methode RECTANGLE) * [MAILLAGE] * .'RECTANGLE_AUG': enveloppe sismique amplifié sans prise * en compte des covariances * (methode RECTANGLE) [MAILLAGE] * .'ELLIPSOIDE_AUG': enveloppe sismique amplifié avec prise * en compte des covariances * (methode RECTANGLE) [MAILLAGE] * * -------------------------------------------------------- * * Controle 'SI' ('EXIST' TAB_IN 'MAILLAGE'); MAI_F = TAB_IN.'MAILLAGE'; 'MESS' 'Error Input....'; 'FINSI'; 'SINON'; 'MESS' 'Error....'; 'FINSI'; 'SI' ('EXIST' TAB_IN 'EFFORT_SEISME'); CH_SEI1 = TAB_IN.'EFFORT_SEISME'; 'MESS' 'Error Input....'; 'FINSI'; 'SINON'; 'MESS' 'Error....'; 'FINSI'; 'SI' ('EXIST' TAB_IN 'EFFORT_STATIQUE'); CH_STA1 = TAB_IN.'EFFORT_STATIQUE'; 'MESS' 'Error Input....'; 'FINSI'; 'SINON'; 'MESS' 'Error....'; 'FINSI'; 'SI' ('EXIST' TAB_IN 'CARACTERISTIQUES'); CH_CAR1 = TAB_IN.'CARACTERISTIQUES'; 'MESS' 'Error Input....'; 'FINSI'; 'SINON'; 'MESS' 'Error....'; 'FINSI'; 'SI' ('EXIST' TAB_IN 'FC_BET'); FCBET1 = TAB_IN.'FC_BET'; 'MESS' 'Error Input....'; 'FINSI'; 'SINON'; 'MESS' 'Error....'; 'FINSI'; 'SI' ('EXIST' TAB_IN 'GAM_C'); GAMC1 = TAB_IN.'GAM_C'; 'MESS' 'Error Input....'; 'FINSI'; 'SINON'; 'MESS' 'Error....'; 'FINSI'; 'SI' ('EXIST' TAB_IN 'ALP_C'); ALPC1 = TAB_IN.'ALP_C'; 'MESS' 'Error Input....'; 'FINSI'; 'SINON'; 'MESS' 'Error....'; 'FINSI'; 'SI' ('EXIST' TAB_IN 'FS_ACI'); FSACI1 = TAB_IN.'FS_ACI'; 'MESS' 'Error Input....'; 'FINSI'; 'SINON'; 'MESS' 'Error....'; 'FINSI'; 'SI' ('EXIST' TAB_IN 'GAM_S'); GAMS1 = TAB_IN.'GAM_S'; 'MESS' 'Error Input....'; 'FINSI'; 'SINON'; 'MESS' 'Error....'; 'FINSI'; * 'MESS' ; 'MESS' ' Calculs des coef de securite '; 'MESS'; * * controle of input data 'SI' (NEG (TYP_CAL1) 'ELLIPSOIDE'); 'SI' (NEG (TYP_CAL1) 'RECTANGLE'); 'FINSI'; 'FINSI'; 'SI' ('EGA' TYP_CAL1 'ELLIPSOIDE'); 'MESS' ' Methode Ellipsoide'; 'MESS'; 'SINON'; 'MESS' ' Methode Rectangle'; 'MESS'; 'FINSI'; * LIS_MOT2 = MOTS 'C11' 'C22' 'C33' 'C44' 'C55' 'C66' 'C12' 'C13' 'C14' 'C15' 'C16' 'C23' 'C24' 'C25' 'C26' 'C34' 'C35' 'C36'; 'SI' ('NON' (EXIST LIS_MOT1 LIS_MOT2 'ET')); 'MESS' ' composantes erronees!!!'; 'FINSI'; * 'SI' ('NON' (EXIST LIS_MOT1 LIS_MOT2 'ET')); 'MESS' ' composantes erronees!!!'; 'FINSI'; * LIS_MOT2 = MOTS 'B_Y' 'B_Z' 'LIBY' 'LIBZ' 'SCAD' 'YFER' 'ENRB' 'PFER' 'ZFER' 'ASWY' 'ASWZ' 'YACI' 'EPSB' 'EPSA' 'TYFR'; 'SI' ('NON' (EXIST LIS_MOT1 LIS_MOT2 'ET')); 'MESS' ' composantes erronees!!!'; 'FINSI'; * * creation of the table output TT2 = 'TABLE'; * * creation of the MCHAML field for the output *Unused*MODTOT = 'VIDE' MMODEL; * * number of element shear wall * * Resistance de design FCD1 = (FCBET1*ALPC1)/GAMC1 ; FSD1 = FSACI1 / GAMS1 ; * * loop for the element I_ELE1 = 1; 'REPE' IND_ELE1 N_ELE1; * element I * extracting the forces and characteristics for the external layer * * * * Determination armature long totale II1 = 1; A_LONG1 = 0.0; A_LONG1 = A_LONG1 + II1 = II1 + 1; 'FIN' IND11; * * Determination parametres adimensionelles OM_SY1 = ((A_LONG1)*(FSD1))/(((BASE_Y1)*(BASE_Z1))*(FCD1)); OM_SZ1 = ((A_LONG1)*(FSD1))/(((BASE_Y1)*(BASE_Z1))*(FCD1)); OM_WZ1 = ((ACADRZ1)*(FSD1))/(((BASE_Y1)*(S_CADR1))*(FCD1)); OM_WY1 = ((ACADRY1)*(FSD1))/(((BASE_Z1)*(S_CADR1))*(FCD1)); LAMB_Y1 = ((LONG_Z1)/(BASE_Y1)); LAMB_Z1 = ((LONG_Y1)/(BASE_Z1)); CHI_Z1 = ((BASE_Z1 - ((2.0)*(ENROBA1)))/(BASE_Z1)); CHI_Y1 = ((BASE_Y1 - ((2.0)*(ENROBA1)))/(BASE_Y1)); * * test pour savoir si on est dans la condiction COURT ou LONG TEST_Y1 = LAMB_Y1 '<EG' (OM_SY1/OM_WY1); TEST_Z1 = LAMB_Z1 '<EG' (OM_SZ1/OM_WZ1); * * table d'entre pour les procedures MRCFRAM1 MRCFRAM2 MRCFRAM3 MRCFRAM4 TAB_IN2 = 'TABLE'; TAB_IN2.'BASE_Y1' = BASE_Y1; TAB_IN2.'BASE_Z1' = BASE_Z1; TAB_IN2.'LONG_Y1' = LONG_Y1; TAB_IN2.'LONG_Z1' = LONG_Z1; TAB_IN2.'ENROBA1' = ENROBA1; TAB_IN2.'ACADRY1' = ACADRY1; TAB_IN2.'ACADRZ1' = ACADRZ1; TAB_IN2.'S_CADR1' = S_CADR1; TAB_IN2.'LI_PHI1' = LI_PHI1; TAB_IN2.'PY_PHI1' = PY_PHI1; TAB_IN2.'PZ_PHI1' = PZ_PHI1; TAB_IN2.'E_ACIE1' = E_ACIE1; TAB_IN2.'EP_BET1' = EP_BET1; TAB_IN2.'EP_ACI1' = EP_ACI1; TAB_IN2.'OM_SY1' = OM_SY1; TAB_IN2.'OM_SZ1' = OM_SZ1; TAB_IN2.'OM_WZ1' = OM_WZ1; TAB_IN2.'OM_WY1' = OM_WY1; TAB_IN2.'LAMB_Y1' = LAMB_Y1; TAB_IN2.'LAMB_Z1' = LAMB_Z1; TAB_IN2.'CHI_Z1' = CHI_Z1; TAB_IN2.'CHI_Y1' = CHI_Y1; TAB_IN2.'EFFX0' = EFFX0; TAB_IN2.'EFFY0' = EFFY0; TAB_IN2.'EFFZ0' = EFFZ0; TAB_IN2.'MOMX0' = MOMX0; TAB_IN2.'MOMY0' = MOMY0; TAB_IN2.'MOMZ0' = MOMZ0; TAB_IN2.'NNNN1' = NNNN1; TAB_IN2.'NNVY1' = NNVY1; TAB_IN2.'NNVZ1' = NNVZ1; TAB_IN2.'NNMT1' = NNMT1; TAB_IN2.'NNMY1' = NNMY1; TAB_IN2.'NNMZ1' = NNMZ1; TAB_IN2.'VYVY1' = VYVY1; TAB_IN2.'VYVZ1' = VYVZ1; TAB_IN2.'VYMT1' = VYMT1; TAB_IN2.'VYMY1' = VYMY1; TAB_IN2.'VYMZ1' = VYMZ1; TAB_IN2.'VZVZ1' = VZVZ1; TAB_IN2.'VZMT1' = VZMT1; TAB_IN2.'VZMY1' = VZMY1; TAB_IN2.'VZMZ1' = VZMZ1; TAB_IN2.'MTMT1' = MTMT1; TAB_IN2.'MTMY1' = MTMY1; TAB_IN2.'MTMZ1' = MTMZ1; TAB_IN2.'MYMY1' = MYMY1; TAB_IN2.'MYMZ1' = MYMZ1; TAB_IN2.'MZMZ1' = MZMZ1; TAB_IN2.'FCD1' = FCD1; TAB_IN2.'FSD1' = FSD1; * * Cas Poteau court 'SI' TEST_TY; 'SI' (TEST_Y1 'ET' TEST_Z1); 'SINON'; * * Cas Poteau Mixte 'SI' (TEST_Y1 'OU' TEST_Z1); 'SINON'; * * Cas Poteau long 'FINSI'; 'FINSI'; 'SINON'; 'SI' TEST_Z1 ; * * Cas Poutre courte 'SINON'; * * Cas Poutre courte 'FINSI'; 'FINSI'; * * Remplissage MMODEL MAILLAGE et MCHML *Unused* MOD1 = 'MODE' ELE_FRA1 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE'; *Unused* MODTOT = MODTOT 'ET' MOD1; 'SI' (LAMB1 '<' 1.0); 'SINON'; 'FINSI'; * I_ELE1 = I_ELE1 + 1; 'FIN' IND_ELE1; * *Unused*'OUBL' MOD1; * * saving TT2.'CH_LAMBDA' = CH_LAM1; TT2.'CARTE' = MAI_RE1; * graphique part (plot of the limit surface, rectangle and ellispe * combination for the k element) * L_ELE1 = L_ELE1 ET LL_ERRE1; 'FINSI'; 'SINON'; L_ELE1 = LL_ERRE1; 'FINSI'; 'FINSI'; * 'FINSI'; * TT2.'GRAPHIQUES' = 'TABLE'; I_VAL1 = 1; * loop for each k-element 'REPE' IND1 (NN1); 'SI' (I_VAL1 EGA 1); * id k-element L_ELE2 = L_ELE2 'ET' I_ELE1 ; * element * seismic effort stare for k-element * static effort stare for k-element * caracteristics for k-element * * Determination armature long totale II1 = 1; A_LONG1 = 0.0; A_LONG1 = A_LONG1 + II1 = II1 + 1; 'FIN' IND11; * * Determination parametres adimensionelles OM_SY1 = (A_LONG1*FSD1)/((BASE_Y1*BASE_Z1)*FCD1) ; OM_SZ1 = (A_LONG1*FSD1)/((BASE_Y1*BASE_Z1)*FCD1) ; OM_WZ1 = (ACADRZ1*FSD1)/((BASE_Y1*S_CADR1)*FCD1) ; OM_WY1 = (ACADRY1*FSD1)/((BASE_Z1*S_CADR1)*FCD1) ; LAMB_Y1 = LONG_Y1/BASE_Y1; LAMB_Z1 = LONG_Z1/BASE_Z1; CHI_Z1 = (BASE_Z1 - (2.0*ENROBA1))/BASE_Z1 ; CHI_Y1 = (BASE_Y1 - (2.0*ENROBA1))/BASE_Y1 ; * TEST_Y1 = LAMB_Y1 <EG (OM_SY1/OM_WY1); TEST_Z1 = LAMB_Z1 <EG (OM_SZ1/OM_WZ1); * T_GAP1 = 'TABLE'; T_GAP1.'TYPE_COUCHE' = CHAINE 'POTEAU'; T_GAP1.'NX' = 100; T_GAP1.'NY' = 10; T_GAP1.'BY' = BASE_Y1; T_GAP1.'BZ' = BASE_Z1; T_GAP1.'ENROBAGE' = ENROBA1; T_GAP1.'S_CADRE' = S_CADR1; T_GAP1.'LONGEUR_Y' = LONG_Y1; T_GAP1.'LONGEUR_Z' = LONG_Z1; T_GAP1.'FCK' = FCBET1; T_GAP1.'FSK' = FSACI1; T_GAP1.'PHI_LON' = LI_PHI1; T_GAP1.'PHI_Y' = PY_PHI1; T_GAP1.'PHI_Z' = PZ_PHI1; T_GAP1.'ASWL_Y' = ACADRY1; T_GAP1.'ASWL_Z' = ACADRZ1; T_GAP1.'GAMMA_C' = GAMC1; T_GAP1.'ALPA_C' = ALPC1; T_GAP1.'GAMMA_S' = GAMS1; T_GAP1.'EPSI_BET' = EP_BET1; T_GAP1.'EPSI_ACI' = EP_ACI1; T_GAP1.'YOUNG_ACIER' = E_ACIE1; 'SI' TEST_TY; 'SI' (TEST_Y1 'ET' TEST_Z1); T_GAP1.'NX' = 30; T_GAP1.'NY' = 10; 'FINSI'; T_GAP1.'TYPE_COUCHE' = CHAINE 'POTEAU'; T_GAP2.'TYPE_COUCHE' = CHAINE 'POTEAU'; 'SINON'; 'SI' (TEST_Z1); T_GAP1.'NX' = 30; T_GAP1.'NY' = 10; 'FINSI'; T_GAP1.'TYPE_COUCHE' = CHAINE 'POUTRE'; T_GAP2.'TYPE_COUCHE' = CHAINE 'POUTRE'; 'FINSI'; T_GAP1.'EFFORT_SEISME' = CHL1; T_GAP1.'EFFORT_STATIQUE' = CHL2; T_GAP2.'EFFORT_SEISME' = (((LAMB1)**(2.0))*(CHL1)); T_GAP2.'EFFORT_STATIQUE' = CHL2; * * TT2.'GRAPHIQUES'. I_ELE1 = 'TABLE'; TT2.'GRAPHIQUES'. I_ELE1 .'LIMITE' = T_GAP3.'LIMITE'; TT2.'GRAPHIQUES'. I_ELE1 .'ELLIPSOIDE' = T_GAP3.'ELLIPSOIDE'; TT2.'GRAPHIQUES'. I_ELE1 .'RECTANGLE' = T_GAP3.'RECTANGLE'; TT2.'GRAPHIQUES'. I_ELE1 .'ELLIPSOIDE_AUG' = T_GAP4.'ELLIPSOIDE'; TT2.'GRAPHIQUES'. I_ELE1 .'RECTANGLE_AUG' = T_GAP4.'RECTANGLE'; * 'SINON'; * id k-element 'SI' (I_ELE1 'NEG' I_ELE2); L_ELE2 = L_ELE2 'ET' I_ELE1 ; * element * seismic effort stare for k-element * static effort stare for k-element * caracteristics for k-element * * * Determination armature long totale II1 = 1; A_LONG1 = 0.0; A_LONG1 = A_LONG1 + II1 = II1 + 1; 'FIN' IND11; * * Determination parametres adimensionelles OM_SY1 = ((A_LONG1)*(FSD1))/(((BASE_Y1)*(BASE_Z1))*(FCD1)); OM_SZ1 = ((A_LONG1)*(FSD1))/(((BASE_Y1)*(BASE_Z1))*(FCD1)); OM_WZ1 = ((ACADRZ1)*(FSD1))/(((BASE_Y1)*(S_CADR1))*(FCD1)); OM_WY1 = ((ACADRY1)*(FSD1))/(((BASE_Z1)*(S_CADR1))*(FCD1)); LAMB_Y1 = ((LONG_Y1)/(BASE_Y1)); LAMB_Z1 = ((LONG_Z1)/(BASE_Z1)); CHI_Z1 = ((BASE_Z1 - ((2.0)*(ENROBA1)))/(BASE_Z1)); CHI_Y1 = ((BASE_Y1 - ((2.0)*(ENROBA1)))/(BASE_Y1)); * TEST_Y1 = LAMB_Y1 '<EG' (OM_SY1/OM_WY1); TEST_Z1 = LAMB_Z1 '<EG' (OM_SZ1/OM_WZ1); * T_GAP1 = 'TABLE'; T_GAP1.'TYPE_COUCHE' = CHAINE 'POTEAU'; T_GAP1.'NX' = 100; T_GAP1.'NY' = 10; T_GAP1.'BY' = BASE_Y1; T_GAP1.'BZ' = BASE_Z1; T_GAP1.'ENROBAGE' = ENROBA1; T_GAP1.'S_CADRE' = S_CADR1; T_GAP1.'LONGEUR_Y' = LONG_Y1; T_GAP1.'LONGEUR_Z' = LONG_Z1; T_GAP1.'FCK' = FCBET1; T_GAP1.'FSK' = FSACI1; T_GAP1.'PHI_LON' = LI_PHI1; T_GAP1.'PHI_Y' = PY_PHI1; T_GAP1.'PHI_Z' = PZ_PHI1; T_GAP1.'ASWL_Y' = ACADRY1; T_GAP1.'ASWL_Z' = ACADRZ1; T_GAP1.'GAMMA_C' = GAMC1; T_GAP1.'ALPA_C' = ALPC1; T_GAP1.'GAMMA_S' = GAMS1; T_GAP1.'EPSI_BET' = EP_BET1; T_GAP1.'EPSI_ACI' = EP_ACI1; T_GAP1.'YOUNG_ACIER' = E_ACIE1; 'SI' TEST_TY; T_GAP1.'TYPE_COUCHE' = CHAINE 'POTEAU'; T_GAP2.'TYPE_COUCHE' = CHAINE 'POTEAU'; 'SINON'; T_GAP1.'TYPE_COUCHE' = CHAINE 'POUTRE'; T_GAP2.'TYPE_COUCHE' = CHAINE 'POUTRE'; 'FINSI'; T_GAP1.'EFFORT_SEISME' = CHL1; T_GAP1.'EFFORT_STATIQUE' = CHL2; T_GAP2.'EFFORT_SEISME' = (LAMB1**2)*CHL1; T_GAP2.'EFFORT_STATIQUE' = CHL2; * * TT2.'GRAPHIQUES'. I_ELE1 = 'TABLE'; TT2.'GRAPHIQUES'. I_ELE1 .'LIMITE' = T_GAP3.'LIMITE'; TT2.'GRAPHIQUES'. I_ELE1 .'ELLIPSOIDE' = T_GAP3.'ELLIPSOIDE'; TT2.'GRAPHIQUES'. I_ELE1 .'RECTANGLE' = T_GAP3.'RECTANGLE'; TT2.'GRAPHIQUES'. I_ELE1 .'ELLIPSOIDE_AUG' = T_GAP4.'ELLIPSOIDE'; TT2.'GRAPHIQUES'. I_ELE1 .'RECTANGLE_AUG' = T_GAP4.'RECTANGLE'; 'FINSI'; 'FINSI'; I_VAL1 = I_VAL1 + 1; 'FIN' IND1; TT2.'GRAPHIQUES'.'LISTE_ELEMENT' = L_ELE2; 'FINSI'; FINPROC TT2;
© Cast3M 2003 - Tous droits réservés.
Mentions légales