2. Syntaxe#

/ matr_elem_pres_c
/ matr_elem_depl_r
/ matr_elem_temp_r
/ matr_elem_depl_c = CALC_MATR_ELEM(
    ◆ OPTION = / "RIGI_MECA",
               / "MASS_MECA",
               / "RIGI_GEOM",
               / "MASS_THER",
               / "AMOR_MECA",
               / "RIGI_THER",
               / "IMPE_MECA",
               / "ONDE_FLUI",
               / "MASS_FLUI_STRU",
               / "RIGI_FLUI_STRU",
               / "RIGI_ROTA",
               / "MECA_GYRO",
               / "RIGI_GYRO",
               / "MASS_MECA_DIAG",
               / "RIGI_ACOU",
               / "MASS_ACOU",
               / "AMOR_ACOU",
               / "RIGI_MECA_HYST",
    ◆ MODELE = modele,
    ◇ INST = float,
    # Si: equal_to("OPTION", 'RIGI_MECA')
        ◇ GROUP_MA = grma,
        ◇ CHAM_MATER = cham_mater,
        ◇ CARA_ELEM = cara_elem,
        ◇ MODE_FOURIER = int,
        ◇ CHARGE = char_meca,
        ◇ CALC_ELEM_MODELE = / "OUI" (par défaut),
                             / "NON",
    # Si: (equal_to("OPTION", 'MASS_MECA')) or (equal_to("OPTION", 'MASS_MECA_DIAG'))
        ◇ GROUP_MA = grma,
        ◇ CHAM_MATER = cham_mater,
        ◇ CARA_ELEM = cara_elem,
        ◇ CHARGE = char_meca,
    # Si: equal_to("OPTION", 'RIGI_GEOM')
        ◇ GROUP_MA = grma,
        ◆ SIEF_ELGA = cham_elem,
        ◇ CARA_ELEM = cara_elem,
        ◇ STRX_ELGA = cham_elem,
        ◇ DEPL = cham_no,
        ◇ CHAM_MATER = cham_mater,
        ◇ MODE_FOURIER = int,
    # Si: equal_to("OPTION", 'RIGI_ROTA')
        ◆ CHAM_MATER = cham_mater,
        ◇ CARA_ELEM = cara_elem,
        ◆ CHARGE = char_meca,
    # Si: equal_to("OPTION", 'MECA_GYRO')
        ◆ CHAM_MATER = cham_mater,
        ◇ CARA_ELEM = cara_elem,
        ◇ CHARGE = char_meca,
        ◇ GROUP_MA = grma,
    # Si: equal_to("OPTION", 'RIGI_GYRO')
        ◆ CHAM_MATER = cham_mater,
        ◇ CARA_ELEM = cara_elem,
        ◇ CHARGE = char_meca,
        ◇ GROUP_MA = grma,
    # Si: equal_to("OPTION", 'AMOR_MECA')
        ◇ GROUP_MA = grma,
        ◇ CARA_ELEM = cara_elem,
        ◇ CHAM_MATER = cham_mater,
        ◇ RIGI_MECA = matr_elem_depl_r,
        ◇ MASS_MECA = matr_elem_depl_r,
        ◇ CHARGE = char_meca,
        ◇ AMOR_FLUI = / "OUI" (par défaut),
                      / "NON",
        ◇ VNOR = / 1.0 (par défaut),
                 / -1.0,
        ◇ TYPE_AMOR = / "TOUT" (par défaut),
                      / "ABSO",
        # Si: equal_to("TYPE_AMOR", ('TOUT'))
        # Si: equal_to("TYPE_AMOR", 'ABSO')
    # Si: equal_to("OPTION", 'RIGI_MECA_HYST')
        ◇ GROUP_MA = grma,
        ◇ CHARGE = char_meca,
        ◇ CHAM_MATER = cham_mater,
        ◇ CARA_ELEM = cara_elem,
        ◆ RIGI_MECA = matr_elem_depl_r,
    # Si: equal_to("OPTION", 'RIGI_THER')
        ◆ CHAM_MATER = cham_mater,
        ◇ CARA_ELEM = cara_elem,
        ◇ MODE_FOURIER = int,
        ◇ CHARGE = char_ther,
    # Si: equal_to("OPTION", 'MASS_THER')
        ◆ CHAM_MATER = cham_mater,
        ◇ CARA_ELEM = cara_elem,
    # Si: equal_to("OPTION", 'RIGI_ACOU')
        ◆ CHAM_MATER = cham_mater,
        ◇ CHARGE = char_acou,
    # Si: (equal_to("OPTION", 'MASS_ACOU')) or (equal_to("OPTION", 'AMOR_ACOU'))
        ◆ CHAM_MATER = cham_mater,
        ◇ CHARGE = char_acou,
        # Si: (equal_to("OPTION", 'AMOR_ACOU'))
            ◇ VNOR = / 1.0 (par défaut),
                     / -1.0,
    # Si: equal_to("OPTION", 'RIGI_FLUI_STRU')
        ◆ CARA_ELEM = cara_elem,
        ◆ CHAM_MATER = cham_mater,
        ◆ CHARGE = char_meca,
    # Si: equal_to("OPTION", 'MASS_FLUI_STRU')
        ◇ GROUP_MA = grma,
        ◆ CARA_ELEM = cara_elem,
        ◆ CHAM_MATER = cham_mater,
        ◆ CHARGE = char_meca,
    # Si: (equal_to("OPTION", 'IMPE_MECA')) or (equal_to("OPTION", 'ONDE_FLUI'))
        ◆ CHAM_MATER = cham_mater,
        ◇ GROUP_MA = grma,
        ◇ CHARGE = char_meca,
        # Si: (equal_to("OPTION", 'IMPE_MECA'))
            ◇ VNOR = / 1.0 (par défaut),
                     / -1.0,
)

◆ : obligatoire
◇ : optionnel
⟐ : présent par défaut
& : ensemble
/ : un seul parmi
| : plusieurs choix possibles