1. Objective of the exercise#

It is proposed to create a new option that allows the calculation of the average stress per cell.

Here is the intended use case:

RESU = CALC_CHAMP (reuse= RESU, RESULTAT = RESU, NUME_ORDRE =1, CONTRAINTE =( "SIGM_ELEM "))

IMPR_RESU (RESU =_F (RESULTAT = RESU, NOM_CHAM =( "SIGM_ELEM ")), UNITE =8, FORMAT =" RESULTAT ")

A copy of the sslv04a test case, corresponding to tpdev02a, is used for this exercise.

A test case should be:

  • small in size (a few seconds of time CPU, mesh with the minimum number of meshes);

  • easy to understand (few lines) and should cover a single feature (elementary test), all configurations and keywords;

  • example: should not trigger alarms (by default, an alarm in a test case produced an error);

  • documented: in the validation manual.

This test is a 45 degree section of a pipe under internal pressure, for which there is an analytical reference, see [V3.04.004].

Here is the command file to complete:

DEBUT (CODE =_F (NIV_PUB_WEB =" INTERNET "), DEBUG =_F (SDVERI =" OUI "))

M = LIRE_MAILLAGE (FORMAT =" MED ")

DEFI_GROUP (reuse=M, MAILLAGE =M, CREA_GROUP_NO =_F (NOM =" DIRI ", GROUP_MA =" DIRI "))

MO = AFFE_MODELE (MAILLAGE =M, AFFE =_F (TOUT =" OUI ", PHENOMENE =" MECANIQUE ", MODELISATION ="3D"))

MA = DEFI_MATERIAU (ELAS =_F (E=200000.0, NU=0.3, ALPHA =0.0))

CM = AFFE_MATERIAU (MAILLAGE =M, AFFE =_F (TOUT =" OUI ", MATER =MA))

CH = AFFE_CHAR_MECA (
    MODELE =ME,
    DDL_IMPO =( _F (GROUP_NO =" DIRI ", DY=0.0), _F (GROUP_NO ="F", DZ=0.0)),
    FACE_IMPO =_F (GROUP_MA =" DNOR ", DNOR =0.0),
    PRES_REP =_F (GROUP_MA =" PRES ", PRES =60.0),
)

RESU = MECA_STATIQUE (MODELE =MO, CHAM_MATER =CM, EXCIT =_F (CHARGE =CH))

CALC_CHAMP (reuse= RESU, RESULTAT = RESU,
           #...
           )

TEST_RESU (
    RESU =(
        _F (
            NUME_ORDRE =1,
            RESULTAT = RESU,
            NOM_CHAM =" SIGM_ELEM ",
            NOM_CMP =" SIXX ",
            #...
        ),
        _F (
            NUME_ORDRE =1,
            RESULTAT = RESU,
            NOM_CHAM =" SIGM_ELEM ",
            NOM_CMP =" SIYY ",
            #...
        ),
        _F (
            NUME_ORDRE =1,
            RESULTAT = RESU,
            NOM_CHAM =" SIGM_ELEM ",
            NOM_CMP =" SIZZ ",
            #...
        ),
        _F (
            NUME_ORDRE =1,
            RESULTAT = RESU,
            NOM_CHAM =" SIGM_ELEM ",
            NOM_CMP =" SIXY ",
            #...
        ),
        _F (
            NUME_ORDRE =1,
            RESULTAT = RESU,
            NOM_CHAM =" SIGM_ELEM ",
            NOM_CMP =" SIXZ ",
            #...
        ),
        _F (
            NUME_ORDRE =1,
            RESULTAT = RESU,
            NOM_CHAM =" SIGM_ELEM ",
            NOM_CMP =" SIYZ ",
            #...
        ),
    )
)
IMPR_RESU (FORMAT =" MED ", RESU =_F (MAILLAGE =M, RESULTAT = RESU))

FIN ()