2. Syntaxe#

table_fonction = GENE_ACCE_SEISME(
    ◇ INIT_ALEA = int,
    ◇ TITRE = text,
    ◇ INFO = / 1 (par défaut),
             / 2,
    ◆ PAS_INST = float,
    ◇ NB_POIN = int,
    ◆ PESANTEUR = float,
    ◆ DUREE_PHASE_FORTE = float,
    ◇ NB_TIRAGE = int (défaut: 1),
    ◇ FREQ_CORNER = float,
    ◇ FREQ_FILTRE = float,
    ◇ FREQ_FILTRE_ZPA = float,
    ◇ FREQ_PENTE = float,
      / COEF_CORR = float,
    ◇ / MATR_COHE = _F(
           ◆ MAILLAGE = maillage,
           ◆ GROUP_NO_INTERF = grno,
           ◆ TYPE = / "MITA_LUCO",
                    / "ABRAHAMSON",
                    / "ABRA_ROCHER",
                    / "ABRA_SOLMOYEN",
           # Si: equal_to('TYPE', 'MITA_LUCO')
               ◆ VITE_ONDE = float,
               ◇ PARA_ALPHA = float (défaut: 0.1),
        ),
      / PHASE = _F(
           ◆ MAILLAGE = maillage,
           ◆ GROUP_NO_INTERF = grno,
           ◆ DIRECTION = float,
           ◆ VITE_ONDE = float,
           ◇ COOR_REFE = float,
        ),
    # Si: exists('COEF_CORR') and exists('SPEC_FRACTILE')
        ◇ RATIO_HV = float,
    ◆ / DSP = _F(
           ◆ AMOR_REDUIT = float,
           ◆ FREQ_FOND = float,
        ),
      / SPEC_MEDIANE = _F(
           ◆ SPEC_OSCI = fonction,
           ◆ AMOR_REDUIT = float,
           ◇ / FREQ_PAS = float,
             / LIST_FREQ = listr8,
           ◇ NB_ITER = int,
           ◇ ERRE_ZPA = float (défaut: (1.0, 0.2)),
           ◇ ERRE_MAX = float (défaut: (0.5, 0.2)),
           ◇ ERRE_RMS = float (défaut: (0.5, 0.2)),
           ◇ METHODE = / "NIGAM",
                       / "HARMO" (par défaut),
        ),
      / SPEC_MOYENNE = _F(
           ◆ SPEC_OSCI = fonction,
           ◆ AMOR_REDUIT = float,
           ◇ / FREQ_PAS = float,
             / LIST_FREQ = listr8,
           ◇ NB_ITER = int,
           ◇ ERRE_ZPA = float (défaut: (1.0, 0.2)),
           ◇ ERRE_MAX = float (défaut: (0.5, 0.2)),
           ◇ ERRE_RMS = float (défaut: (0.5, 0.2)),
           ◇ METHODE = / "NIGAM",
                       / "HARMO" (par défaut),
        ),
      / SPEC_UNIQUE = _F(
           ◇ ERRE_ZPA = float (défaut: (1.0, 0.2)),
           ◇ ERRE_MAX = float (défaut: (0.5, 0.2)),
           ◇ ERRE_RMS = float (défaut: (0.5, 0.2)),
           ◆ SPEC_OSCI = fonction,
           ◇ CORR_ZPA = / "NON" (par défaut),
                        / "OUI",
           ◆ AMOR_REDUIT = float,
           ◇ / FREQ_PAS = float,
             / LIST_FREQ = listr8,
           ◇ NB_ITER = int,
           ◇ METHODE = / "NIGAM",
                       / "HARMO" (par défaut),
        ),
      / SPEC_FRACTILE = _F(
           ◆ SPEC_OSCI = fonction,
           ◆ SPEC_1_SIGMA = fonction,
           ◆ AMOR_REDUIT = float,
           ◇ / FREQ_PAS = float,
             / LIST_FREQ = listr8,
        ),
    # Si: exists('DSP')
        ◆ MODULATION = _F(
             ◆ TYPE = / "GAMMA",
                      / "JENNINGS_HOUSNER",
                      / "CONSTANT",
             ◇ / ACCE_MAX = float,
               / INTE_ARIAS = float,
               / ECART_TYPE = float,
             # Si: equal_to('TYPE', 'GAMMA')
                 ◆ INST_INI = float,
          ),
    # Si: not exists('DSP')
        ◆ MODULATION = _F(
             ◆ TYPE = / "GAMMA",
                      / "JENNINGS_HOUSNER",
                      / "CONSTANT",
             # Si: equal_to('TYPE', 'GAMMA')
                 ◆ INST_INI = float,
          ),
)

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