2. Syntaxe#

table = CALC_SPECTRE_IPM(
    ◇ MAILLAGE = maillage,
    # Si: exists("MAILLAGE")
        ◆ EQUIPEMENT = _F(
             ◆ NOM = text,
             ◆ GROUP_NO = grno,
             ◆ RAPPORT_MASSE_TOTALE = float,
             ◆ COEF_MASS_EQUIP = float,
             ◆ FREQ_SUPPORT = float,
             ◆ AMOR_SUPPORT = float,
             ◆ AMOR_EQUIP = float,
             ◆ FREQ_EQUIP = float,
          ),
    # Si: not exists("MAILLAGE")
        ◆ EQUIPEMENT = _F(
             ◆ NOM = text,
             ◆ NOEUD = no,
             ◆ RAPPORT_MASSE_TOTALE = float,
             ◆ COEF_MASS_EQUIP = float,
             ◆ FREQ_SUPPORT = float,
             ◆ AMOR_SUPPORT = float,
             ◆ AMOR_EQUIP = float,
             ◆ FREQ_EQUIP = float,
          ),
    ◆ CALCUL = / "ABSOLU",
               / "RELATIF",
    ◆ AMOR_SPEC = float,
    ◇ LIST_INST = listr8,
    ◇ LIST_FREQ = listr8,
    ◇ FREQ = float,
    ◆ NORME = float,
    # Si: equal_to("CALCUL", 'RELATIF')
        ◆ RESU = _F(
             ◆ / TABLE = table,
               / FONCTION = fonction,
             ◆ ACCE_Z = fonction,
          ),
    # Si: equal_to("CALCUL", 'ABSOLU')
        ◆ RESU = _F(
             ◆ / TABLE = table,
               / FONCTION = fonction,
          ),
    ◇ TOLE_INIT = float (défaut: 0.001),
    ◇ CORR_INIT = / "OUI",
                  / "NON" (par défaut),
)

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