2. Syntaxe#

resultat = CALC_CHAMP(
    ◇ reuse = <objet de RESULTAT>,
    ◇ MODELE = modele,
    ◇ CHAM_MATER = cham_mater,
    ◇ CARA_ELEM = cara_elem,
    ◆ RESULTAT = resultat,
    ◇ / TOUT_ORDRE = "OUI" (ou non renseigné),
      / NUME_ORDRE = list[int],
      / INST = list[float],
      / FREQ = list[float],
      / NUME_MODE = list[int],
      / NOEUD_CMP = list[text],
      / LIST_INST = listr8,
      / LIST_FREQ = listr8,
      / LIST_ORDRE = listis,
      / NOM_CAS = text,
    ◇ CRITERE = / "ABSOLU",
                / "RELATIF" (par défaut),
    # Si: (equal_to("CRITERE", 'RELATIF'))
        ◇ PRECISION = float (défaut: 1e-06),
    # Si: (equal_to("CRITERE", 'ABSOLU'))
        ◆ PRECISION = float,
    ◇ / TOUT = "OUI" (ou non renseigné),
      / GROUP_MA = list[grma],
    # Si: is_type("RESULTAT") in (evol_elas,mode_meca,mode_meca_c,comb_fourier,mult_elas,fourier_elas,mode_flamb)
          | CONTRAINTE = / "EFGE_ELGA",
                         / "EFGE_ELNO",
                         / "EFGE_NOEU",
                         / "EGRU_ELNO",
                         / "SIEF_ELGA",
                         / "SIEF_ELNO",
                         / "SIEF_NOEU",
                         / "SIGM_ELGA",
                         / "SIGM_ELNO",
                         / "SIGM_NOEU",
                         / "SIMY_ELGA",
                         / "SIPM_ELNO",
                         / "SIPO_ELNO",
                         / "SIPO_NOEU",
                         / "SIRO_ELEM",
                         / "STRX_ELGA",
          | DEFORMATION = / "DEGE_ELGA",
                          / "DEGE_ELNO",
                          / "DEGE_NOEU",
                          / "EPME_ELGA",
                          / "EPME_ELNO",
                          / "EPME_NOEU",
                          / "EPSG_ELGA",
                          / "EPSG_ELNO",
                          / "EPSG_NOEU",
                          / "EPSI_ELGA",
                          / "EPSI_ELNO",
                          / "EPSI_NOEU",
                          / "EPSL_ELGA",
                          / "EPSL_ELNO",
                          / "EPSL_NOEU",
                          / "EPVC_ELGA",
                          / "EPVC_ELNO",
                          / "EPVC_NOEU",
          | ENERGIE = / "DISS_ELEM",
                      / "DISS_ELGA",
                      / "DISS_ELNO",
                      / "DISS_NOEU",
                      / "ECIN_ELEM",
                      / "ENEL_ELEM",
                      / "ENEL_ELGA",
                      / "ENEL_ELNO",
                      / "ENEL_NOEU",
                      / "ENTR_ELEM",
                      / "EPOT_ELEM",
                      / "ETOT_ELEM",
                      / "ETOT_ELGA",
                      / "ETOT_ELNO",
                      / "ETOT_NOEU",
          | CRITERES = / "EPEQ_ELGA",
                       / "EPEQ_ELNO",
                       / "EPEQ_NOEU",
                       / "EPGQ_ELGA",
                       / "EPGQ_ELNO",
                       / "EPGQ_NOEU",
                       / "EPMQ_ELGA",
                       / "EPMQ_ELNO",
                       / "EPMQ_NOEU",
                       / "SIEQ_ELGA",
                       / "SIEQ_ELNO",
                       / "SIEQ_NOEU",
          | VARI_INTERNE = / "VARC_ELGA",
                           / "VARC_ELNO",
                           / "VARC_NOEU",
          | PROPRIETES = / "MATE_ELEM",
                         / "MATE_ELGA",
          | FORCE = / "FORC_NODA",
                    / "REAC_NODA",
        ◆ | CHAM_UTIL = _F(
               ◆ NOM_CHAM = text,
               ◆ / FORMULE = list[formule],
                 / CRITERE = / "INVA_2",
                             / "TRACE",
                             / "VMIS",
                 / NORME = / "FROBENIUS",
                           / "L2",
               ◆ NUME_CHAM_RESU = int,
            ),
        ◇ EXCIT = _F(
             ◆ CHARGE = char_cine_meca / char_meca,
             ◇ / FONC_MULT = fonction / formule / nappe,
               / COEF_MULT = float,
             ◇ TYPE_CHARGE = "FIXE_CSTE",
          ),
    # Si: is_type("RESULTAT") in (dyna_harmo,dyna_trans)
          | CONTRAINTE = / "EFGE_ELGA",
                         / "EFGE_ELNO",
                         / "EFGE_NOEU",
                         / "EGRU_ELNO",
                         / "SIEF_ELGA",
                         / "SIEF_ELNO",
                         / "SIEF_NOEU",
                         / "SIGM_ELGA",
                         / "SIGM_ELNO",
                         / "SIGM_NOEU",
                         / "SIMY_ELGA",
                         / "SIPM_ELNO",
                         / "SIPO_ELNO",
                         / "SIPO_NOEU",
                         / "SIRO_ELEM",
                         / "STRX_ELGA",
          | DEFORMATION = / "DEGE_ELGA",
                          / "DEGE_ELNO",
                          / "DEGE_NOEU",
                          / "EPME_ELGA",
                          / "EPME_ELNO",
                          / "EPME_NOEU",
                          / "EPSG_ELGA",
                          / "EPSG_ELNO",
                          / "EPSG_NOEU",
                          / "EPSI_ELGA",
                          / "EPSI_ELNO",
                          / "EPSI_NOEU",
                          / "EPSL_ELGA",
                          / "EPSL_ELNO",
                          / "EPSL_NOEU",
                          / "EPVC_ELGA",
                          / "EPVC_ELNO",
                          / "EPVC_NOEU",
          | ENERGIE = / "DISS_ELEM",
                      / "DISS_ELGA",
                      / "DISS_ELNO",
                      / "DISS_NOEU",
                      / "ECIN_ELEM",
                      / "ENEL_ELEM",
                      / "ENEL_ELGA",
                      / "ENEL_ELNO",
                      / "ENEL_NOEU",
                      / "ENTR_ELEM",
                      / "EPOT_ELEM",
                      / "ETOT_ELEM",
                      / "ETOT_ELGA",
                      / "ETOT_ELNO",
                      / "ETOT_NOEU",
          | CRITERES = / "EPEQ_ELGA",
                       / "EPEQ_ELNO",
                       / "EPEQ_NOEU",
                       / "EPGQ_ELGA",
                       / "EPGQ_ELNO",
                       / "EPGQ_NOEU",
                       / "EPMQ_ELGA",
                       / "EPMQ_ELNO",
                       / "EPMQ_NOEU",
                       / "SIEQ_ELGA",
                       / "SIEQ_ELNO",
                       / "SIEQ_NOEU",
          | VARI_INTERNE = / "VARC_ELGA",
                           / "VARC_ELNO",
                           / "VARC_NOEU",
          | PROPRIETES = / "MATE_ELEM",
                         / "MATE_ELGA",
          | ACOUSTIQUE = / "INTE_ELNO",
                         / "INTE_NOEU",
                         / "PRAC_ELNO",
                         / "PRAC_NOEU",
                         / "PRME_ELNO",
          | FORCE = / "FORC_NODA",
                    / "REAC_NODA",
        ◆ | CHAM_UTIL = _F(
               ◆ NOM_CHAM = text,
               ◆ / FORMULE = list[formule],
                 / CRITERE = / "INVA_2",
                             / "TRACE",
                             / "VMIS",
                 / NORME = / "FROBENIUS",
                           / "L2",
               ◆ NUME_CHAM_RESU = int,
            ),
        ◇ EXCIT = _F(
             ◆ CHARGE = char_cine_meca / char_meca,
             ◇ PHAS_DEG = float (défaut: 0.0),
             ◇ PUIS_PULS = int (défaut: 0),
             ◇ FONC_MULT_C = fonction_c / formule_c,
             ◇ COEF_MULT_C = complex,
             ◇ / FONC_MULT = fonction / formule / nappe,
               / COEF_MULT = float,
             ◇ TYPE_CHARGE = "FIXE_CSTE",
          ),
    # Si: is_type("RESULTAT") in (evol_noli,)
          | SOUS_POINT = / "DEPL_ELGA",
                         / "TEMP_ELGA",
          | CONTRAINTE = / "EFGE_ELGA",
                         / "EFGE_ELNO",
                         / "EFGE_NOEU",
                         / "EGRU_ELNO",
                         / "SIEF_ELNO",
                         / "SIEF_NOEU",
                         / "SIGM_ELGA",
                         / "SIGM_ELNO",
                         / "SIGM_NOEU",
                         / "SIMY_ELGA",
                         / "SIPM_ELNO",
                         / "SIPO_ELNO",
                         / "SIPO_NOEU",
                         / "SIRO_ELEM",
          | DEFORMATION = / "DEGE_ELGA",
                          / "DEGE_ELNO",
                          / "DEGE_NOEU",
                          / "EPFD_ELGA",
                          / "EPFD_ELNO",
                          / "EPFD_NOEU",
                          / "EPFP_ELGA",
                          / "EPFP_ELNO",
                          / "EPFP_NOEU",
                          / "EPME_ELGA",
                          / "EPME_ELNO",
                          / "EPME_NOEU",
                          / "EPMG_ELGA",
                          / "EPMG_ELNO",
                          / "EPMG_NOEU",
                          / "EPSG_ELGA",
                          / "EPSG_ELNO",
                          / "EPSG_NOEU",
                          / "EPSI_ELGA",
                          / "EPSI_ELNO",
                          / "EPSI_NOEU",
                          / "EPSL_ELGA",
                          / "EPSL_ELNO",
                          / "EPSL_NOEU",
                          / "EPSP_ELGA",
                          / "EPSP_ELNO",
                          / "EPSP_NOEU",
                          / "EPVC_ELGA",
                          / "EPVC_ELNO",
                          / "EPVC_NOEU",
          | ENERGIE = / "DISS_ELEM",
                      / "DISS_ELGA",
                      / "DISS_ELNO",
                      / "DISS_NOEU",
                      / "ENEL_ELEM",
                      / "ENEL_ELGA",
                      / "ENEL_ELNO",
                      / "ENEL_NOEU",
                      / "ENTR_ELEM",
                      / "ETOT_ELEM",
                      / "ETOT_ELGA",
                      / "ETOT_ELNO",
                      / "ETOT_NOEU",
          | CRITERES = / "DERA_ELGA",
                       / "DERA_ELNO",
                       / "DERA_NOEU",
                       / "ENDO_ELGA",
                       / "ENDO_ELNO",
                       / "ENDO_NOEU",
                       / "EPEQ_ELGA",
                       / "EPEQ_ELNO",
                       / "EPEQ_NOEU",
                       / "EPGQ_ELGA",
                       / "EPGQ_ELNO",
                       / "EPGQ_NOEU",
                       / "EPMQ_ELGA",
                       / "EPMQ_ELNO",
                       / "EPMQ_NOEU",
                       / "INDL_ELGA",
                       / "PDIL_ELGA",
                       / "SIEQ_ELGA",
                       / "SIEQ_ELNO",
                       / "SIEQ_NOEU",
          | VARI_INTERNE = / "VARC_ELGA",
                           / "VARC_ELNO",
                           / "VARC_NOEU",
                           / "VARI_ELNO",
                           / "VARI_NOEU",
          | PROPRIETES = / "MATE_ELEM",
                         / "MATE_ELGA",
          | HYDRAULIQUE = "FLHN_ELGA" (ou non renseigné),
          | FORCE = / "FORC_NODA",
                    / "REAC_NODA",
        ◆ | CHAM_UTIL = _F(
               ◆ NOM_CHAM = text,
               ◆ / FORMULE = list[formule],
                 / CRITERE = / "INVA_2",
                             / "TRACE",
                             / "VMIS",
                 / NORME = / "FROBENIUS",
                           / "L2",
               ◆ NUME_CHAM_RESU = int,
            ),
        ◇ EXCIT = _F(
             ◆ CHARGE = char_cine_meca / char_meca,
             ◇ / FONC_MULT = fonction / formule / nappe,
               / COEF_MULT = float,
             ◇ TYPE_CHARGE = / "DIDI",
                             / "FIXE_CSTE" (par défaut),
                             / "FIXE_PILO",
                             / "SUIV",
          ),
    # Si: is_type("RESULTAT") in (evol_ther,fourier_ther,)
          | THERMIQUE = / "ETHE_ELEM",
                        / "FLUX_ELGA",
                        / "FLUX_ELNO",
                        / "FLUX_NOEU",
                        / "GRAT_ELGA",
                        / "GRAT_ELNO",
                        / "GRAT_NOEU",
                        / "HHO_TEMP",
                        / "HYDR_ELGA",
                        / "HYDR_ELNO",
                        / "HYDR_NOEU",
                        / "SOUR_ELGA",
                        / "TEMP_ELGA",
        ◆ | CHAM_UTIL = _F(
               ◆ NOM_CHAM = text,
               ◆ / FORMULE = list[formule],
                 / CRITERE = / "INVA_2",
                             / "TRACE",
                             / "VMIS",
                 / NORME = / "FROBENIUS",
                           / "L2",
               ◆ NUME_CHAM_RESU = int,
            ),
        ◇ EXCIT = _F(
             ◆ CHARGE = char_cine_ther / char_ther,
             ◇ / FONC_MULT = fonction / formule / nappe,
               / COEF_MULT = float,
             ◇ TYPE_CHARGE = "FIXE_CSTE",
          ),
    # Si: is_type("RESULTAT") in (evol_sech,)
          | SECHAGE = / "DIFF_ELGA",
                      / "DIFF_ELNO",
                      / "DIFF_NOEU",
                      / "FLUX_ELGA",
                      / "FLUX_ELNO",
                      / "FLUX_NOEU",
                      / "GRAT_ELGA",
                      / "GRAT_ELNO",
                      / "GRAT_NOEU",
                      / "HYGR_ELGA",
                      / "HYGR_ELNO",
                      / "HYGR_NOEU",
        ◆ | CHAM_UTIL = _F(
               ◆ NOM_CHAM = text,
               ◆ / FORMULE = list[formule],
                 / CRITERE = / "INVA_2",
                             / "TRACE",
                             / "VMIS",
                 / NORME = / "FROBENIUS",
                           / "L2",
               ◆ NUME_CHAM_RESU = int,
            ),
        ◇ EXCIT = _F(
             ◆ CHARGE = char_cine_ther / char_ther,
             ◇ / FONC_MULT = fonction / formule / nappe,
               / COEF_MULT = float,
             ◇ TYPE_CHARGE = "FIXE_CSTE",
          ),
    # Si: is_type("RESULTAT") in (acou_harmo,mode_acou,tran_gene,harm_gene)
          | ACOUSTIQUE = / "INTE_ELNO",
                         / "INTE_NOEU",
                         / "PRAC_ELNO",
                         / "PRAC_NOEU",
                         / "PRME_ELNO",
        ◆ | CHAM_UTIL = _F(
               ◆ NOM_CHAM = text,
               ◆ / FORMULE = list[formule],
                 / CRITERE = / "INVA_2",
                             / "TRACE",
                             / "VMIS",
                 / NORME = / "FROBENIUS",
                           / "L2",
               ◆ NUME_CHAM_RESU = int,
            ),
        ◇ EXCIT = _F(
             ◆ CHARGE = char_cine_meca / char_meca,
             ◇ PHAS_DEG = float (défaut: 0.0),
             ◇ PUIS_PULS = int (défaut: 0),
             ◇ FONC_MULT_C = fonction_c / formule_c,
             ◇ COEF_MULT_C = complex,
             ◇ / FONC_MULT = fonction / formule / nappe,
               / COEF_MULT = float,
             ◇ TYPE_CHARGE = "FIXE_CSTE",
          ),
    ◇ INFO = / 1 (par défaut),
             / 2,
             / 3,
    ◇ PARALLELISME_TEMPS = / "NON" (par défaut),
                           / "OUI",
    ◇ TITRE = text,
)

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