Welcome to the forums. Please post in English or French.

You are not logged in.

#1 2012-07-19 16:32:49

pilafa
Member
Registered: 2011-08-26
Posts: 124

Von Mises Stress in COQUE_3D - Comments and questions

Hi,

I am working with a COQUE_3D model. I want the Von Mises stress of a beam in flexion.
Version: code_aster 11.2

I played around a lot with the post-procesing option. But I can NOT plot want I want.
Here's my comment and questions. Feel free to answer or comment them.

1) USING DIRECTLY CALC_CHAMP 

I use CALC_CHAMP to calculate the following streeses :

Solution=CALC_CHAMP(reuse =Solution,
                    GROUP_MA='beam',
                    TOUT_ORDRE='OUI',
                    RESULTAT=Solution,
                    CONTRAINTE=('SIGM_ELNO','SIEF_ELNO',),
                    CRITERES=('SIEQ_ELNO','SIEQ_NOEU'),
                     );

If I don't use "POST_CHAMP", what's the meaning of the values in "Solution"? They are values at the midplane?

Let's say this value make sense and that it is the value at the mid plane.
'SIEQ_ELNO' is interesting, but not smooth (which is normal).
SIEQ_NOEU' would be good, but it seems the the middle node of the element cause problem (see image "pas_beau").

2)  USING POST_CHAMP 

Then I use "POST_CHAMP":


sol2=POST_CHAMP(RESULTAT=Solution,
                EXTR_COQUE=_F(NOM_CHAM=('SIGM_ELNO',),NUME_COUCHE=1,NIVE_COUCHE='MOY',)
                );

it seems to work well. "sol2" contains 'SIGM_ELNO' (local stress on nodes).
But then, what if I want to see the equivalent stress??

The only values admitted by POST_CHAMP are: 'SIEF_ELGA','SIGM_ELGA','SIGM_ELNO','VARI_ELNO'                                   

So...there is NO way to see Von Mises on the top or bottom plane of the shell?


3)  USING PROJ_CHAMP 

My last option is to use PROJ_CHAMP to project the results on a linear mesh.
It is working only for displacements, but I obtain an error for the stress:

   !-----------------------------------------------------------------------!
   ! <A> <CALCULEL4_63>                                                    !
   !                                                                       !
   !  On n'a pas pu projeter le champ SIEF_ELNO de la SD_RESULTAT Solution !
   !  vers la SD_RESULTAT salomres pour le numéro d'ordre 1                !
   !                                                                       !
   !                                                                       !
   ! Ceci est une alarme. Si vous ne comprenez pas le sens de cette        !
   ! alarme, vous pouvez obtenir des résultats inattendus !                !
   !-----------------------------------------------------------------------!
   
   
   !-----------------------------------------------------------------------!
   ! <A> <CALCULEL4_63>                                                    !
   !                                                                       !
   !  On n'a pas pu projeter le champ SIGM_ELNO de la SD_RESULTAT Solution !
   !  vers la SD_RESULTAT salomres pour le numéro d'ordre 1                !
   !                                                                       !
   !                                                                       !
   ! Ceci est une alarme. Si vous ne comprenez pas le sens de cette        !
   ! alarme, vous pouvez obtenir des résultats inattendus !                !
   !-----------------------------------------------------------------------!
   
   
   !-------------------------------------------------------------------------------------------------------------!
   ! <A> <CALCULEL_54>                                                                                           !
   !                                                                                                             !
   !  Le paramètre:  PCONTEQ  de l'option:  SIEQ_ELNO  n'est pas connu des TYPE_ELEM du LIGREL:  modellin.MODELE !
   !  Champ : salomres.025.000000                                                                                !
   !                                                                                                             !
   !                                                                                                             !
   ! Ceci est une alarme. Si vous ne comprenez pas le sens de cette                                              !
   ! alarme, vous pouvez obtenir des résultats inattendus !                                                      !
   !-------------------------------------------------------------------------------------------------------------!
   
   
   !-----------------------------------------------------------------------!
   ! <A> <CALCULEL4_63>                                                    !
   !                                                                       !
   !  On n'a pas pu projeter le champ SIEQ_ELNO de la SD_RESULTAT Solution !
   !  vers la SD_RESULTAT salomres pour le numéro d'ordre 1                !
   !                                                                       !
   !                                                                       !
   ! Ceci est une alarme. Si vous ne comprenez pas le sens de cette        !
   ! alarme, vous pouvez obtenir des résultats inattendus !                !
   !-----------------------------------------------------------------------!

Maybe I am doing somethinh wrong?


Any help on any of those points would be greatly appreciated!!!
I attach all the files you could need.

Pierre

Last edited by pilafa (2012-07-23 11:12:53)


Attachments:
poutre_forum.zip, Size: 96.65 KiB, Downloads: 256

Offline

#2 2012-07-19 16:45:10

delmas
Administrator
From: EDF R&D
Registered: 2007-12-12
Posts: 837

Re: Von Mises Stress in COQUE_3D - Comments and questions

First step : compute SIGM_ELNO and SIGM_ELGA with CALC_CHAMP

Second step : compute SIGM_ELNO and SIGM_ELGA on a sub-node with POST_CHAMP

Third step : compute SIEQ_ELNO with CALC_CHAMP from POST_CHAMP result.

SIEQ_ELNO should be computed on all sub-nodes but not yet.


Code_Aster release : unstable on (Ubuntu Precise Pangolin 12.04 64 bits) - GNU + Intel

Code_Aster. What else ?

Offline

#3 2012-07-19 17:28:03

pilafa
Member
Registered: 2011-08-26
Posts: 124

Re: Von Mises Stress in COQUE_3D - Comments and questions

Thank you delmas.

It seems to work big_smile

What do you call a "sub-node"?  It's a kind of "node" (or integration point) in the thickness of the plate (i.e. INF, MID or SUP), right?

For those interested I try to resume what to do:

First step : compute SIGM_ELNO and SIGM_ELGA with CALC_CHAMP

=> Calculate stress at nodes and Gauss points of the plate (the "real" nodes)

Solution=CALC_CHAMP(reuse =Solution,
                    GROUP_MA='beam',
                    TOUT_ORDRE='OUI', 
                    RESULTAT=Solution,
                    CONTRAINTE=('SIGM_ELNO','SIGM_ELGA',),
                     );

Second step : compute SIGM_ELNO and SIGM_ELGA on a sub-node with POST_CHAMP 

=> Calculate stress at "nodes" and "Gauss points" in the thickness of the plate. In this case at "INF":

sol2=POST_CHAMP(RESULTAT=Solution,
                EXTR_COQUE=_F(NOM_CHAM=('SIGM_ELNO','SIGM_ELGA',),NUME_COUCHE=1,NIVE_COUCHE='INF',)
                );

Third step : compute SIEQ_ELNO with CALC_CHAMP from POST_CHAMP result.

=> Now that the local stresses are known on the "INF" layer, we can compute equivalent stresses:

sol3=CALC_CHAMP(RESULTAT=sol2,
                    GROUP_MA='beam',
                    TOUT_ORDRE='OUI',       
                    CRITERES=('SIEQ_ELNO',),
                     );

IMPR_RESU(FORMAT='MED',
          RESU=(_F(RESULTAT=sol3,NOM_CHAM=('SIEQ_ELNO',),)
                ),);

======================

Any idea about my PROJ_CHAMP error?

Pierre

Offline

#4 2012-07-20 10:40:37

Thomas DE SOZA
Guru
From: EDF
Registered: 2007-11-23
Posts: 3,066

Re: Von Mises Stress in COQUE_3D - Comments and questions

Hi,

I did have a look at the problem when plotting SIEQ_ELNO for a COQUE_3D model where the center node seems to have a null value (even after using POST_CHAMP and CALC_CHAMP again).

This is a bug. Thanks for the feedback.

We'll fix this. This will eliminate any need for PROJ_CHAMP (if you still want to pursue this way, you should project on second order QUAD8 element and not linear element).

TdS

Offline

#5 2012-07-20 15:43:55

pilafa
Member
Registered: 2011-08-26
Posts: 124

Re: Von Mises Stress in COQUE_3D - Comments and questions

Ok, thanks!

Regarding the PROJ_CHAMP, note that I already project it on a quadratic mesh (the original one).
It works only for the displacements...

DEBUT();

#
# PREPROC
#

# 8-nodes quad
mesh_1=LIRE_MAILLAGE(FORMAT='MED',VERI_MAIL=_F(VERIF='OUI',));


#Definition of element groups 'beam' containing only 2d element 
mesh_1=DEFI_GROUP(reuse=mesh_1,MAILLAGE=mesh_1,
                  CREA_GROUP_MA=_F(NOM='beam',TYPE_MAILLE='2D',UNION=('to1','to2','web','ba1','ba2',),),
                  );



###Dummy model to postproc

modellin=AFFE_MODELE(MAILLAGE=mesh_1,
                 AFFE=(_F(GROUP_MA='beam',
                          PHENOMENE='MECANIQUE',
                          MODELISATION='3D',),),);   
###

mesh=CREA_MAILLAGE(MAILLAGE=mesh_1,
                    MODI_MAILLE=_F(GROUP_MA='beam',OPTION='QUAD8_9',),);


#Create model for 3D shell structure
model=AFFE_MODELE(MAILLAGE=mesh,
                 INFO=2,
                 AFFE=(_F(GROUP_MA='beam',
                          PHENOMENE='MECANIQUE',
                          MODELISATION='COQUE_3D',),),);
#                          MODELISATION='DKT',),),);                     

steel=DEFI_MATERIAU(ELAS=_F(E=210.0e9,
                            NU=0.3,
                            RHO=7800.0),);

material=AFFE_MATERIAU(MAILLAGE=mesh,
                      AFFE=_F(TOUT='OUI',MATER=steel,),);


realcst=AFFE_CARA_ELEM(
                   MODELE=model,
                   COQUE=(
                         _F(GROUP_MA='ba1',EPAIS=0.03,VECTEUR=(1.0,0.0,0.0)),
                         _F(GROUP_MA='ba2',EPAIS=0.03,VECTEUR=(1.0,0.0,0.0)),
                         _F(GROUP_MA='web',EPAIS=0.01,VECTEUR=(0.0,0.0,1.0)),
                         _F(GROUP_MA='to1',EPAIS=0.01,VECTEUR=(1.0,0.0,0.0)),
                         _F(GROUP_MA='to2',EPAIS=0.01,VECTEUR=(1.0,0.0,0.0)),                                                                                                    
                        ),
                        );

bchold=AFFE_CHAR_MECA(MODELE=model,
                       DDL_IMPO=(
                                 _F(GROUP_NO=("h1"),DX=0.0,DY=0.0,DZ=0.0,DRX=0.0,DRY=0.0,DRZ=0.0,),
                                 _F(GROUP_NO=("h2"),DX=0.0,DY=0.0,DZ=0.0,DRX=0.0,DRY=0.0,DRZ=0.0,),
                                 _F(GROUP_NO=("h3"),DX=0.0,DY=0.0,DZ=0.0,DRX=0.0,DRY=0.0,DRZ=0.0,),  
                                 _F(GROUP_NO=("h4"),DX=0.0,DY=0.0,DZ=0.0,DRX=0.0,DRY=0.0,DRZ=0.0,),
                                 _F(GROUP_NO=("h5"),DX=0.0,DY=0.0,DZ=0.0,DRX=0.0,DRY=0.0,DRZ=0.0,),),
                        PRES_REP=(
                                  _F(GROUP_MA=("ba1"),PRES=-1.0E4,), 
                                  _F(GROUP_MA=("ba2"),PRES=-1.0E4,),                                                                                                                                                              
                                  ),
                                  );


#
# SOLUTION
#


Solution=MECA_STATIQUE(MODELE=model,
                   CHAM_MATER=material,
                   CARA_ELEM=realcst,
                   EXCIT=_F(CHARGE=bchold,),);	

#
# POSTPTOC
#
#First step : compute SIGM_ELNO and SIGM_ELGA with CALC_CHAMP
#Second step : compute SIGM_ELNO and SIGM_ELGA on a sub-node with POST_CHAMP
#Third step : compute SIEQ_ELNO with CALC_CHAMP from POST_CHAMP result.
#SIEQ_ELNO should be computed on all sub-nodes but not yet.     
     
Solution=CALC_CHAMP(reuse =Solution,
                    GROUP_MA='beam',
                    TOUT_ORDRE='OUI', 
                    RESULTAT=Solution,
                    CONTRAINTE=('SIGM_ELNO','SIGM_ELGA',),
                    CRITERES=('SIEQ_ELNO','SIEQ_NOEU'),
                     );

sol2=POST_CHAMP(RESULTAT=Solution,
                EXTR_COQUE=_F(NOM_CHAM=('SIGM_ELNO','SIGM_ELGA',),NUME_COUCHE=1,NIVE_COUCHE='MOY',)
                );
                
#choix possibles (u'SIEF_ELGA' u'SIGM_ELGA', u'SIGM_ELNO', u'VARI_ELNO')                                    

sol3=CALC_CHAMP(RESULTAT=sol2,
                    GROUP_MA='beam',
                    TOUT_ORDRE='OUI',       
                    CRITERES=('SIEQ_ELNO',),
                     );

#
# Project and print
#

# determine / project the result fields (champ) from modified model modmod to the initial model modinit
salomres=PROJ_CHAMP(RESULTAT=sol3,
                   MODELE_1=model,        #project quad model
                   MODELE_2=modellin,);   #...to dummy lin model


#                
#IMPR_RESU(FORMAT='MED',
#           RESU=(_F(RESULTAT=salomres,
#                    MAILLAGE=mesh_1,),),
#                    );                



FIN();

Offline