Exemple d’utilisation ===================== Cette section fournit la description des principales étapes d’un calcul de ferraillage, pour la modélisation en contrainte plane. Pour d'autres exemples, voir les cas-tests ssnp105 [:external:ref:`V6.03.105 `] et ssnp106 [:external:ref:`V6.03.105 `]. Avant d’utiliser la macro-commande ---------------------------------- Il est nécessaire de réaliser un calcul élastique linéaire avec une modélisation plane (D_PLAN, C_PLAN). La totalité des éléments est associée au matériau béton. Maillage et modèle ~~~~~~~~~~~~~~~~~~ .. code-block:: text MAIL = LIRE_MAILLAGE(FORMAT = 'ASTER', INFO = 2, UNITE = 20) MAIL = DEFI_GROUP(reuse = MAIL, CREA_GROUP_MA = _F(NOM = 'tout', TOUT='OUI'), MAILLAGE=MAIL) MODEL = AFFE_MODELE(AFFE = _F(GROUP_MA = 'tout', MODELISATION = ('C_PLAN', ), PHENOMENE = 'MECANIQUE'), MAILLAGE = MAIL) Matériaux ~~~~~~~~~ La commande CALC_BT trouve un treillis composé de bielles en béton et de tirants en acier (les armatures). Les deux matériaux sont définis ici. Cependant, pour le calcul de base on utilise seulement le matériau béton, la structure à ferrailler étant considérée homogène. .. code-block:: text BETON = DEFI_MATERIAU(ELAS = _F(E = 30E9, NU = 0.2)) ACIER = DEFI_MATERIAU(ELAS = _F( E = 210E9, NU = 0.3)) materi = AFFE_MATERIAU(AFFE = _F(MATER = (BETON, ), TOUT = 'OUI'), MODELE = MODEL) Conditions aux limites ~~~~~~~~~~~~~~~~~~~~~~ Des conditions aux limites statiques sont définies dans la structure *aux nœuds* . Ces mêmes conditions aux limites seront ensuite utilisées dans le calcul des bielles et tirants. .. code-block:: text bc = AFFE_CHAR_MECA(DDL_IMPO = (_F(GROUP_NO = ('SUP_1', ), LIAISON = 'ENCASTRE'), _F(DY = 0.0, GROUP_NO = ('SUP_2', ))), FORCE_NODALE = (_F(FY = -300000.0, GROUP_NO = 'LOAD_1'), ), MODELE=MODEL) Calcul préliminaire ~~~~~~~~~~~~~~~~~~~ Il s’agit ici de réaliser le calcul mécanique qui fournira l’état de départ pour l’optimisation BT, à partir des chargements et blocages définis auparavant. Pour le moment, les seules conditions aux limites qu’il est possible d’appliquer sont des forces nodales et des degrés de liberté imposés. .. code-block:: text RESU = MECA_STATIQUE( CHAM_MATER = materi, EXCIT = _F(CHARGE = bc, TYPE_CHARGE = 'FIXE_CSTE'), MODELE = MODEL, TITRE = 'SYSTEM') Utilisation de la macro-commande -------------------------------- Comme déjà mentionné, dans les mots clés DDL_IMPO et FORCE_NODALE, les groupes de nœuds et les forces / les déplacements doivent être exactement les mêmes que ceux utilisés pour le calcul de base. Le matériau BETON doit être le même utilisé pour le calcul de base. Le matériau ACIER est utilisé uniquement dans le corps de la macro-commande. .. code-block:: text STM_TOPO = CALC_BT(RESULTAT = RESU, RESU_BT = CO('RES_TOPO'), INST = 1., DDL_IMPO=(_F(GROUP_NO = 'SUP_1', DX = 0, DY = 0), _F(GROUP_NO= 'SUP_2', DY = 0) ), FORCE_NODALE=_F( GROUP_NO = 'LOAD_1', FY=-3000000.0 ), BETON = 'BETON', ACIER = 'ACIER', GROUP_MA_EXT = 'SKIN1', GROUP_MA_INT = 'SKIN2', SCHEMA = 'TOPO', SIGMA_C = 35000000, SIGMA_Y = 500000000, PAS_X = 0.05 , PAS_Y = 0.05, TOLE_BASE = 0.026, NMAX_ITER = 200, RESI_RELA_TOPO = 0.00001, RESI_RELA_SECTION = 0.000001, CRIT_SECTION = 0.5, CRIT_ELIM = 0.5, SECTION_MINI = 1e-6, LONGUEUR_MAX = 7, INIT_ALEA = 0, )