2. Syntaxe#

listr8 = MACR_RECAL(
    ◆ UNITE_ESCL = unit,
    ◇ & RESU_EXP = not_checked,
      / LIST_PARA = not_checked,
    ◇ / COURBE = _F(
           ◆ FONC_EXP = fonction,
           ◆ NOM_FONC_CALC = text,
           ◆ PARA_X = text,
           ◆ PARA_Y = text,
           ◇ POIDS = float,
        ),
    ◆ / PARA_OPTI = _F(
           ◆ NOM_PARA = text,
           ◆ VALE_INI = float,
           ◆ VALE_MIN = float,
           ◆ VALE_MAX = float,
        ),
      / LIST_POIDS = not_checked,
    ◇ & RESU_CALC = not_checked,
    ◇ UNITE_RESU = unit (défaut: 91),
    ◇ PARA_DIFF_FINI = float (défaut: 1e-05),
    ◇ GRAPHIQUE = _F(
         ◇ FORMAT = / "XMGRACE" (par défaut),
                    / "GNUPLOT",
         ◇ AFFICHAGE = / "TOUTE_ITERATION" (par défaut),
                       / "ITERATION_FINALE",
         ◇ UNITE = unit (défaut: 29),
         # Si: equal_to("FORMAT", 'XMGRACE')
             ◇ PILOTE = / "" (par défaut),
                        / "POSTSCRIPT",
                        / "EPS",
                        / "MIF",
                        / "SVG",
                        / "PNM",
                        / "PNG",
                        / "JPEG",
                        / "PDF",
                        / "INTERACTIF",
                        / "INTERACTIF_BG",
      ),
    ◇ METHODE = / "LEVENBERG" (par défaut),
                / "FMIN",
                / "FMINBFGS",
                / "FMINNCG",
                / "GENETIQUE",
                / "HYBRIDE",
    # Si: equal_to("METHODE", 'GENETIQUE') or equal_to("METHODE", 'HYBRIDE')
        ◇ NB_PARENTS = int (défaut: 10),
        ◇ NB_FILS = int (défaut: 5),
        ◇ ECART_TYPE = float (défaut: 1.0),
        ◇ GRAINE = int,
        ◇ ITER_ALGO_GENE = int (défaut: 10),
        ◇ RESI_ALGO_GENE = float (défaut: 0.001),
    ◇ ITER_MAXI = int (défaut: 10),
    ◇ ITER_FONC_MAXI = int (défaut: 1000),
    ◇ RESI_GLOB_RELA = float (défaut: 0.001),
    ◇ TOLE_PARA = float (défaut: 1e-08),
    ◇ TOLE_FONC = float (défaut: 1e-08),
    # Si: equal_to("METHODE", 'FMINBFGS')
        ◇ GRADIENT = / "NON_CALCULE" (par défaut),
                     / "NORMAL",
                     / "ADIMENSIONNE",
    # Si: equal_to("METHODE", 'FMINNCG')
        ◆ GRADIENT = / "NORMAL",
                     / "ADIMENSIONNE",
    # Si: equal_to("METHODE", 'LEVENBERG')
        ◇ GRADIENT = / "NORMAL" (par défaut),
                     / "ADIMENSIONNE",
    ⟐ CALCUL_ESCLAVE = _F(
         ◇ LANCEMENT = / "DISTRIBUTION",
                       / "INCLUSION" (par défaut),
         # Si: equal_to("LANCEMENT", 'DISTRIBUTION')
             ◇ UNITE_SUIVI = unit (défaut: 29),
             ◇ MODE = / "INTERACTIF",
                      / "BATCH",
             ◇ MEMOIRE = int,
             ◇ TEMPS = int,
             ◇ MPI_NBCPU = int,
             ◇ MPI_NBNOEUD = int,
             ◇ CLASSE = text,
             ◇ NMAX_SIMULT = int,
      ),
    ◇ DYNAMIQUE = _F(
         ◆ MODE_EXP = text,
         ◆ MODE_CALC = text,
         ◇ APPARIEMENT_MANUEL = / "OUI",
                                / "NON" (par défaut),
      ),
    ◇ INFO = / 1 (par défaut),
             / 2,
)

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