u4.51.05 Commande CALC_MECA_MULT#
Syntaxe#
Détail de la syntaxe
evol_noli_dict = CALC_MECA_MULT(
◆ MODELE = modele,
◆ CHAM_MATER = cham_mater,
◇ CARA_ELEM = cara_elem,
◆ CHAR_MECA_GLOBAL = char_cine_meca / char_meca,
◇ LIST_INST = list_inst / listr8,
◆ CAS_CHARGE = _F(
◆ EVOL_THER = evol_ther / evol_ther_dict,
# Si: is_type("EVOL_THER") == evol_ther
◆ NOM_CAS = text,
◇ VALE_REF = float (défaut: 0.0),
),
⟐ CONVERGENCE = _F(
# Si: exists("RESI_REFE_RELA")
◆ | EFFORT_REFE = float,
| SIGM_REFE = float,
| EPSI_REFE = float,
| FLUX_THER_REFE = float,
| MOMENT_REFE = float,
| FLUX_HYD1_REFE = float,
| FLUX_HYD2_REFE = float,
| VARI_REFE = float,
| DEPL_REFE = float,
| LAGR_REFE = float,
| PI_REFE = float,
◆ | RESI_REFE_RELA = float,
| RESI_GLOB_MAXI = float,
| RESI_GLOB_RELA = float,
◇ / RESI_COMP_RELA = float,
◇ ITER_GLOB_MAXI = int (défaut: 10),
◇ ITER_GLOB_ELAS = int (défaut: 25),
◇ ARRET = / "NON",
/ "OUI" (par défaut),
◇ VERIF = / "AU_MOINS_UN",
/ "TOUT" (par défaut),
),
⟐ SOLVEUR = _F(
◇ METHODE = / "GCPC",
/ "LDLT",
/ "MULT_FRONT",
/ "MUMPS" (par défaut),
/ "PETSC",
# Si: equal_to("METHODE", 'MULT_FRONT')
◇ RENUM = / "MD",
/ "MDA" (par défaut),
◇ NPREC = int (défaut: 8),
◇ ELIM_LAGR = / "NON" (par défaut),
/ "OUI",
◇ STOP_SINGULIER = / "NON",
/ "OUI" (par défaut),
# Si: equal_to("METHODE", 'LDLT')
◇ RENUM = "RCMK",
◇ NPREC = int (défaut: 8),
◇ ELIM_LAGR = / "NON" (par défaut),
/ "OUI",
◇ STOP_SINGULIER = / "NON",
/ "OUI" (par défaut),
# Si: equal_to("METHODE", 'MUMPS')
◇ RENUM = / "AMD",
/ "AMF",
/ "AUTO" (par défaut),
/ "METIS",
/ "PARMETIS",
/ "PORD",
/ "PTSCOTCH",
/ "QAMD",
/ "SCOTCH",
◇ NPREC = int (défaut: 8),
◇ ELIM_LAGR = / "LAGR2" (par défaut),
/ "NON",
/ "OUI",
◇ STOP_SINGULIER = / "NON",
/ "OUI" (par défaut),
◇ TYPE_RESOL = / "AUTO" (par défaut),
/ "NONSYM",
/ "SYMDEF",
/ "SYMGEN",
◇ ACCELERATION = / "AUTO" (par défaut),
/ "FR",
/ "FR+",
/ "FR++",
/ "LR",
/ "LR+",
/ "LR++",
◇ LOW_RANK_SEUIL = float (défaut: 0.0),
◇ PRETRAITEMENTS = / "AUTO" (par défaut),
/ "SANS",
◇ POSTTRAITEMENTS = / "AUTO" (par défaut),
/ "FORCE",
/ "MINI",
/ "SANS",
◇ PCENT_PIVOT = int (défaut: 35),
◇ REDUCTION_MPI = int (défaut: 0),
◇ NB_RHS = int (défaut: 1),
◇ RESI_RELA = float (défaut: -1.0),
◇ GESTION_MEMOIRE = / "AUTO" (par défaut),
/ "EVAL",
/ "IN_CORE",
/ "OUT_OF_CORE",
◇ FILTRAGE_MATRICE = float (défaut: -1.0),
◇ MIXER_PRECISION = / "NON" (par défaut),
/ "OUI",
◇ MATR_DISTRIBUEE = / "NON" (par défaut),
/ "OUI",
# Si: equal_to("METHODE", 'GCPC')
◇ ELIM_LAGR = / "NON" (par défaut),
/ "OUI",
◇ PRE_COND = / "LDLT_DP",
/ "LDLT_INC" (par défaut),
/ "LDLT_SP",
◇ RESI_RELA = float (défaut: 1e-06),
◇ NMAX_ITER = int (défaut: 0),
# Si: equal_to("PRE_COND", 'LDLT_INC')
◇ RENUM = "RCMK",
◇ NIVE_REMPLISSAGE = int (défaut: 0),
# Si: is_in("PRE_COND", ('LDLT_SP', 'LDLT_DP'))
◇ RENUM = / "METIS",
/ "PARMETIS" (par défaut),
/ "SANS",
◇ REAC_PRECOND = int (défaut: 30),
◇ PCENT_PIVOT = int (défaut: 20),
◇ GESTION_MEMOIRE = / "AUTO" (par défaut),
/ "IN_CORE",
◇ LOW_RANK_SEUIL = float (défaut: 0.0),
# Si: equal_to("METHODE", 'PETSC')
◇ ELIM_LAGR = / "NON" (par défaut),
/ "OUI",
◇ MATR_DISTRIBUEE = / "NON" (par défaut),
/ "OUI",
◇ ALGORITHME = / "CG",
/ "CR",
/ "FGMRES" (par défaut),
/ "GCR",
/ "GMRES",
/ "GMRES_LMP",
◇ OPTION_PETSC = text (défaut: ""),
◇ PRE_COND = / "BLOC_LAGR",
/ "BOOMER",
/ "FIELDSPLIT",
/ "GAMG",
/ "HPDDM",
/ "JACOBI",
/ "LDLT_DP",
/ "LDLT_INC",
/ "LDLT_SP" (par défaut),
/ "ML",
/ "SANS",
/ "SOR",
/ "UTILISATEUR",
◇ RESI_RELA = float (défaut: 1e-06),
◇ NMAX_ITER = int (défaut: 0),
# Si: equal_to("PRE_COND", 'LDLT_INC')
◇ RENUM = "RCMK",
◇ NIVE_REMPLISSAGE = int (défaut: 0),
◇ REMPLISSAGE = float (défaut: 1.0),
# Si: is_in("PRE_COND", ('LDLT_SP', 'LDLT_DP'))
◇ RENUM = / "METIS",
/ "PARMETIS" (par défaut),
/ "SANS",
◇ REAC_PRECOND = int (défaut: 30),
◇ PCENT_PIVOT = int (défaut: 20),
◇ GESTION_MEMOIRE = / "AUTO" (par défaut),
/ "IN_CORE",
◇ LOW_RANK_SEUIL = float (défaut: 0.0),
# Si: equal_to("PRE_COND", 'ML')
◇ RENUM = "SANS",
# Si: equal_to("PRE_COND", 'BOOMER')
◇ RENUM = "SANS",
# Si: equal_to("PRE_COND", 'GAMG')
◇ RENUM = "SANS",
# Si: equal_to("PRE_COND", 'HPDDM')
◇ RENUM = "SANS",
# Si: equal_to("PRE_COND", 'BLOC_LAGR')
◇ RENUM = "SANS",
# Si: is_in("PRE_COND", ('FIELDSPLIT'))
◇ RENUM = "SANS",
◇ PARTITION_CMP = list[int],
◇ NOM_CMP = list[text],
# Si: is_in("PRE_COND", ('UTILISATEUR'))
◇ KSP_UTIL = not_checked,
◇ RENUM = "SANS",
# Si: is_in("PRE_COND", ('JACOBI','SOR','SANS'))
◇ RENUM = / "RCMK",
/ "SANS" (par défaut),
),
⟐ NEWTON = _F(
◇ REAC_INCR = int (défaut: 1),
◇ PREDICTION = / "DEPL_CALCULE",
/ "ELASTIQUE",
/ "EXTRAPOLE",
/ "TANGENTE",
◇ MATRICE = / "ELASTIQUE",
/ "TANGENTE" (par défaut),
◇ PAS_MINI_ELAS = float,
◇ REAC_ITER = int (défaut: 1),
◇ REAC_ITER_ELAS = int (défaut: 0),
◇ EVOL_NOLI = evol_noli,
◇ MATR_RIGI_SYME = / "NON" (par défaut),
/ "OUI",
),
)
◆ : obligatoire
◇ : optionnel
⟐ : présent par défaut
& : ensemble
/ : un seul parmi
| : plusieurs choix possibles
Opérandes#
Opérandes MODELE / CHAM_MATER / CARA_ELEM#
MODELE est le nom du modèle dont les éléments font l’objet du calcul mécanique.
CHAM_MATER est le nom du champ de matériau affecté au modèle renseigné dans MODELE.
CARA_ELEM contient des caractéristiques additionnelles pour les éléments coque, poutre, tuyau, barre, câble et éléments discrets. Ce mot-clé est facultatif.
Opérande CHAR_MECA_GLOBAL#
Concept de type charge produit par les commandes AFFE_CHAR_MECA, AFFE_CHAR_MECA_F, AFFE_CHAR_CINE ou AFFE_CHAR_CINE_F. Ce mot-clé permet de définir le chargement mécanique commun à tous les cas de charge définis par l’utilisateur.
Opérande LIST_INST#
Ce mot-clé sert à renseigner une liste des instants de calcul afin qu’elle soit commune à tous les cas
de charge. Cette liste est définie dans le concept de type litpsr8 par l’opérateur DEFI_LIST_REEL ou dans
le concept litps par l’opérateur DEFI_LIST_INST.
Lorsque ce mot-clé n’est pas renseigné, la discrétisation temporelle choisie pour chaque cas de charge
est identique à la discrétisation du champ thermique correspondant. Les instants sont automatiquement
récupérés et peuvent donc être différents pour chaque cas de charge. Lorsque ce mot-clé est renseigné,
ce sont les instants renseignés dans ce mot-clé et uniquement ces instants qui sont pris en compte.
Opérande CAS_CHARGE#
Ce mot-clé facteur permet de définir chaque cas de charge en renseignant une structure de données résultat provenant d’un calcul thermique, un nom pour le cas, et éventuellement une valeur de référence.
Opérande EVOL_THER#
Ce mot-clé permet de renseigner le résultat thermique à utiliser comme chargement. Celui-ci peut être une structure de données résultats de type evol_ther ou une structure de données composite de type evol_ther_dict pouvant provenir de la commande CALC_THER_MULT.
Opérande NOM_CAS#
Chaîne de caractères servant de variable d’accès à la structure de données résultat. Cette opérande est utile seulement si le résultat renseigné dans le mot-clé EVOL_THER n’est pas un résultat de type evol_ther_dict.
Opérande VALE_REFE#
Ce mot-clé permet de définir la température de référence pour le cas de charge considéré, température pour laquelle il n’y a pas de déformation thermique. Par défaut cette valeur est choisie à 0°C. Attention, dans le cas du calcul d’une réponse à un choc unitaire pour des méthodes d’analyse numérique, le choix d’une température différente de 0°C peut entraîner des résultats non attendus.
Pour la définition de cette valeur, on peut se référer à la documentation concernant les matériaux ; VALE_REFE dans AFFE_MATERIAU.
Mot-clé CONVERGENCE#
Voir mot-clé CONVERGENCE de STAT_NON_LINE.
Mot-clé SOLVEUR#
Voir la documentation de SOLVEUR.
Mot-clé NEWTON#
Un algorithme de Newton-Raphson est utilisé, voir la documentation de la méthode de Newton.