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

You are not logged in.

#1 Code_Aster usage » Calculation of damage or number of cycles CALC_FATIGUE » 2019-01-23 07:37:40

Ceduardolino
Replies: 0

Hello everyone

I come through asking you for help from you.

I would like to know how the damage data that is printed in .mess are interpreted. What is the final damage?
How do I print the damage using FACY_R and ENDO1 using CALC_FATIGUE with CUMUL_DOMMAGE. If it is possible to apply in the code below? If no. How to print on .resu this information.

It appears that in document U4.83.02 wrote:
NBRUP1 name of cycles avant rupture (fonction de SIGEQ1 et d'une courbe de Wöhler)
ENDO1 endommagement associated with NBRUP1 (ENDO1 = 1 / NBRUP1)

Help me please!!

DEBUT();

EM  = 71700.0
COEF_POISON = 0.33
C_MED = 22.3232 
																				   
ALU=DEFI_MATERIAU(ELAS=_F(E=EM,
                         NU=COEF_POISON,
                         ALPHA=0.,),
                         FATIGUE=_F(A_BASQUIN=4.67752330064362E-26,
				    BETA_BASQUIN=8.1967,)
				 );

MAIL=LIRE_MAILLAGE(FORMAT='MED',);

MAIL=MODI_MAILLAGE(reuse=MAIL,
                   MAILLAGE=MAIL,
                   ORIE_PEAU_2D=_F(GROUP_MA=('S_UP','S_DW',),),);

MODE=AFFE_MODELE(MAILLAGE=MAIL,
                 AFFE=_F(TOUT='OUI',
                         PHENOMENE='MECANIQUE',
                         MODELISATION='C_PLAN',),);

MATE=AFFE_MATERIAU(MAILLAGE=MAIL,
                   AFFE=_F(TOUT='OUI',
                           MATER=ALU,),);
						   
PRESSAO=DEFI_FONCTION(NOM_PARA='INST',
                          PROL_DROITE  ='LINEAIRE',
                          PROL_GAUCHE ='LINEAIRE',
                          VALE=( 0.,      C_MED,
                                 0.025,   40.588,
                                 0.050,   C_MED,
                                 0.075,   4.0588,
                                 0.1,     C_MED,
#                                 0.125,   40.588,
#                                 0.150,   C_MED,
#                                 0.175,   4.0588,
#                                 0.2,     C_MED,						         
                                        )
                       )						   

L_INST=DEFI_LIST_REEL(DEBUT=0.,
                           INTERVALLE =_F(JUSQU_A=0.1, NOMBRE=4)
                                         );

CONST=AFFE_CHAR_MECA(MODELE=MODE,
                     DDL_IMPO=(
                        _F(GROUP_NO='DX_0',
                           DX=0.0,),
                        _F(GROUP_NO='DY_0',
                          DY=0.0,),
                        ),
                     PRES_REP=(
                        _F(GROUP_MA='S_UP',
                           PRES=C_MED,),
                        _F(GROUP_MA='S_DW',
                           PRES=C_MED,),
                        ),);

RESU=MECA_STATIQUE(MODELE=MODE,
                   CHAM_MATER=MATE,
                   EXCIT=_F(CHARGE=CONST,
                             FONC_MULT=PRESSAO),
		   LIST_INST=L_INST
				  );

RESU=CALC_CHAMP(reuse=RESU,
                    RESULTAT=RESU,
                    CONTRAINTE=('SIGM_NOEU'),
                    FORCE='FORC_NODA',
                    CRITERES=('SIEQ_ELNO','SIEQ_NOEU','SIEQ_ELGA'),
                );


IMPR_RESU(FORMAT='MED', UNITE=80,
          RESU=(
              _F(MAILLAGE=MAIL,
                   RESULTAT=RESU,
                   NOM_CHAM='SIEQ_NOEU',
                   NOM_CMP=('VMIS','VMIS_SG'),
                ),
             _F(MAILLAGE=MAIL,
                   RESULTAT=RESU,
                   NOM_CHAM='DEPL',
                ),
          ),
)

DANO=CALC_FATIGUE(TYPE_CALCUL='CUMUL_DOMMAGE',
			OPTION='DOMA_ELNO_SIGM',
            		HISTOIRE=_F(RESULTAT=RESU,
				     EQUI_GD='VMIS_SG',),             
			DOMMAGE='WOHLER',
			MATER=ALU,
           		INFO=2,
                   );

IMPR_RESU(FORMAT='RESULTAT', UNITE=8,
           RESU=(_F(CHAM_GD=DANO,),),
)

FIN();

#2 Re: Code_Aster usage » CALC_FATIGUE - with mean stress » 2019-01-14 07:07:45

Good morning, sorry to reopen the topic.
I would like to know how the CALC_FATIGUE damage was printed in Paravis. As in the attached .png image. I am using the codes as an example and I could not perform this postprocessing.

Thank you!!!

#3 Code_Aster usage » Calc_Fatigue number of total cycles!!!!!!!!!!!!! » 2018-11-06 05:45:08

Ceduardolino
Replies: 0

Help me, I can not calculate the total number of cycles on this body of evidence.
How to generate an image in the post-processor in Paravis, from this process of fatigue, I can not.
Help me please. The mesh is attached.
Thank you!!

DEBUT();

EM  = 73000.0
NU = 0.33

a = 6.5
ce = 34.0

Pressao = 66.43

F_WOHLER=DEFI_FONCTION(NOM_PARA='SIGM',
                        PROL_DROITE='LINEAIRE',
                        PROL_GAUCHE='LINEAIRE',
                        VALE=(500.,  10.E6,
                             1000.,     0.,
			      ),                                      
                        TITRE='FONCTION DE WOHLER');
								   
								   
ALU=DEFI_MATERIAU(ELAS=_F(E=EM,
                         NU=NU,
                         ALPHA=0.,),
                         ECRO_LINE=_F(D_SIGM_EPSI=17.5,
                         SY=503.,),
			 FATIGUE=_F(WOHLER=F_WOHLER,),);


MAIL=LIRE_MAILLAGE(FORMAT='MED',);


MAIL=MODI_MAILLAGE(reuse =MAIL,
                   MAILLAGE=MAIL,
                   ORIE_PEAU_2D=_F(GROUP_MA=('S_UP','S_DW',),),);

MODE=AFFE_MODELE(MAILLAGE=MAIL,
                 AFFE=_F(TOUT='OUI',
                         PHENOMENE='MECANIQUE',
                         MODELISATION='C_PLAN',),);

CRACK=DEFI_FISS_XFEM(MAILLAGE=MAIL,
                     DEFI_FISS=_F(FORM_FISS='DEMI_DROITE',
                                 PFON=(ce+a,0.0,0.0,),
                                 DTAN=(1.,0.0,0.0,),),);


MODEX=MODI_MODELE_XFEM(MODELE_IN=MODE,
                       FISSURE=CRACK,);

MATE=AFFE_MATERIAU(MAILLAGE=MAIL,
                   AFFE=_F(TOUT='OUI',
                           MATER=ALU,),);


CONST=AFFE_CHAR_MECA(MODELE=MODEX,
                     DDL_IMPO=(
                        _F(GROUP_NO='DX_0',
                           DX=0.0,),
                        _F(GROUP_NO='DY_0',
                          DY=0.0,),
                        ),
                     PRES_REP=(
                        _F(GROUP_MA='S_UP',
                           PRES=Pressao,),
                        _F(GROUP_MA='S_DW',
                           PRES=Pressao,),
                        ),);


L_INST=DEFI_LIST_REEL(DEBUT=0.,
                      INTERVALLE=(_F(JUSQU_A=1.0,NOMBRE=1),
                                  ),
                      );

RESU=STAT_NON_LINE(MODELE=MODEX,
                    CHAM_MATER=MATE,
                    EXCIT=(_F(CHARGE=CONST,),),
                    COMPORTEMENT=_F(RELATION='ELAS_VMIS_LINE'),
                    INCREMENT=_F(LIST_INST=L_INST),
                    NEWTON=_F(REAC_ITER=1,),
                    );

G_1=CALC_G(THETA=_F(FISSURE=CRACK,
                    R_INF = 0.1,
                    R_SUP = 5.0),
           RESULTAT=RESU,
           );
                  
IMPR_TABLE(TABLE=G_1,);

MA_XFEM=POST_MAIL_XFEM(MODELE=MODEX,);

MOD_VISU=AFFE_MODELE(MAILLAGE=MA_XFEM,
                     AFFE=_F(TOUT='OUI',
                             PHENOMENE='MECANIQUE',
                             MODELISATION='C_PLAN',),);

RES_XFEM=POST_CHAM_XFEM(MODELE_VISU=MOD_VISU,
                        RESULTAT=RESU,);

   
RES_XFEM=CALC_CHAMP(reuse=RES_XFEM,
                    RESULTAT=RES_XFEM,
                    CONTRAINTE=('SIGM_NOEU'),
                    FORCE='FORC_NODA',
                    CRITERES=('SIEQ_ELNO','SIEQ_NOEU','SIEQ_ELGA'),
                );

IMPR_RESU(FORMAT='MED', UNITE=80,
          RESU=(
              _F(MAILLAGE=MAIL,
                   RESULTAT=RES_XFEM,
                   NOM_CHAM='SIEQ_NOEU',
                   NOM_CMP=('VMIS','VMIS_SG'),
                ),
             _F(MAILLAGE=MAIL,
                   RESULTAT=RES_XFEM,
                   NOM_CHAM='DEPL',
                ),
          ),
)

#IMPR_RESU(FORMAT='MED',RESU=_F(RESULTAT=RES_XFEM))

 
FADIGA=CALC_FATIGUE(TYPE_CALCUL='CUMUL_DOMMAGE',
		      OPTION='DOMA_ELNO_SIGM',
                      HISTOIRE=_F(RESULTAT=RES_XFEM,
                                  EQUI_GD='VMIS_SG',),
                      DOMMAGE='WOHLER',
                      MATER=ALU,
                      INFO=2,);	     
				
IMPR_RESU(FORMAT='MED', UNITE=81,
          RESU=_F(CHAM_GD=FADIGA),);

FIN();

Thank you!!

Carlos Eduardo

#4 Code_Aster usage » Questions about Code_Aster !!! » 2018-08-31 07:18:09

Ceduardolino
Replies: 0

I use Code_Aster soon, I would like to ask these questions below.

1 - Are there any operators especially for the J-Integral and to measure the fatigue cycles in an elastoplastic model,
with XFEM?

2 - It is possible to define a monocrystalline or polycrystalline behavior in XFEM with the operator DEFI_COMPOR?

3 - Linear or non-linear elasticity and  anisotropic elastoplasticity possible in XFEM?

4 - Is it possible to use XFEM from Code_Aster for polymers?


I have not found any documents or case tests to answer these questions.
If anyone knows anything is document or test case inform me. Thank you.

Eduardo

#5 Re: Code_Aster usage » IMPR_RESU not working!!! » 2018-08-31 06:45:26

Thanks for the help, I solved the problem.


Eduardo

#6 Re: Code_Aster usage » IMPR_RESU not working!!! » 2018-08-21 17:29:14

Thank you Konyaro

But he still did not print von Mises's tensions.
Do you know why?

Thank you very much in advance.

Eduardo

#7 Re: Code_Aster usage » IMPR_RESU not working!!! » 2018-08-21 06:06:54

Someone can explain why I can not print the von Mises tensions.
Help me please!!

Can somebody give me some advice about it?

Thank you very much in advance.

Eduardo

#8 Code_Aster usage » IMPR_RESU not working!!! » 2018-08-13 07:41:13

Ceduardolino
Replies: 6

I am developing this simulation and it is not generating the .rmed file and displays the message below.
Help files are attached
What should I do. Help me please.

   !------------------------------------------------------------------------------------------!
   ! <EXCEPTION> <CALCUL_3>                                                                              
   !                                                                        
   !  Erreur utilisateur :                                                
   !    Le maillage associé au champ: CHAR    .CHME.PRESS  (MAIL)            
   !    est différent de celui associe au LIGREL:  MOD_VISU.MODELE  (MA_XFEM) 
   !-------------------------------------------------------------------------------------------!

Can somebody give me some advice about it?

Thank you very much in advance.

Eduardo

#9 Code_Aster usage » Erreur numérique (floating point exception)??? » 2018-04-22 20:25:27

Ceduardolino
Replies: 0

Good evening

What would that mistake be? Please help me !!!
These warnings appeared and then the error.

 
   !------------------------------------------------------------------------------------------------------------!
   ! <A> <XFEM_63>                                                                                              !
   !                                                                                                            !
   !   -> ---Éléments XFEM quadratiques 2D---                                                                   !
   !        Un sous élément est découpé par la courbe d'isovaleur zéro de la level-set normale en deux endroits !
   !        sur une arête.                                                                                      !
   !        Cette configuration est proscrite.                                                                  !
   !                                                                                                            !
   !                                                                                                            !
   ! Ceci est une alarme. Si vous ne comprenez pas le sens de cette                                             !
   ! alarme, vous pouvez obtenir des résultats inattendus !                                                     !
   !------------------------------------------------------------------------------------------------------------!
   
   
   !------------------------------------------------------------------------------------------------------------!
   ! <A> <XFEM_63>                                                                                              !
   !                                                                                                            !
   !   -> ---Éléments XFEM quadratiques 2D---                                                                   !
   !        Un sous élément est découpé par la courbe d'isovaleur zéro de la level-set normale en deux endroits !
   !        sur une arête.                                                                                      !
   !        Cette configuration est proscrite.                                                                  !
   !                                                                                                            !
   !                                                                                                            !
   ! Ceci est une alarme. Si vous ne comprenez pas le sens de cette                                             !
   ! alarme, vous pouvez obtenir des résultats inattendus !                                                     !
   !------------------------------------------------------------------------------------------------------------!
   
   
   !------------------------------------------------------------------------------------------------------------!
   ! <A> <XFEM_63>                                                                                              !
   !                                                                                                            !
   !   -> ---Éléments XFEM quadratiques 2D---                                                                   !
   !        Un sous élément est découpé par la courbe d'isovaleur zéro de la level-set normale en deux endroits !
   !        sur une arête.                                                                                      !
   !        Cette configuration est proscrite.                                                                  !
   !                                                                                                            !
   !                                                                                                            !
   ! Ceci est une alarme. Si vous ne comprenez pas le sens de cette                                             !
   ! alarme, vous pouvez obtenir des résultats inattendus !                                                     !
   !------------------------------------------------------------------------------------------------------------!
   
   
   !-------------------------------------------------------!
   ! <EXCEPTION> <DVP_2>                                   !
   !                                                       !
   ! Erreur numérique (floating point exception).          !
   !                                                       !
   !                                                       !
   !                                                       !
   ! Il y a probablement une erreur dans la programmation. !
   ! Veuillez contacter votre assistance technique.        !
   !-------------------------------------------------------!
 
DEBUT();

# DEFINIÇÃO DE ALGUMAS CONSTANTES DO PROBLEMA

# Material

E=10000000.0 #Modulo de Elasticidade do Material [PSI] -> Conversão para [MPa] = 68947.5728
NU = .25        # Coeficiente de Poisson do Material []

# Geometria

#c = 8.0        Comprimento da Placa   [in] Conversão para mm = 203.2
#b = 4.0        Largura da placa       [in] Conversão para mm = 101.6
#h = 0.04       Espessura da Placa    [in] Conversão para mm = 1.016
a = 0.1 #Comprimento Trinca    [in] Conversão para mm = 2.54
r = 0.5 #Raio do Furo da placa [in] Conversão para mm = 12.7


# Carga Aplicada

Pressao =10000.0 # Carga Aplicada [PSI] -> Conversão para [MPa] = 68.9475728

# Definição do Material

STEEL=DEFI_MATERIAU(ELAS=_F(E=E,
                            NU=NU,),);

# Leitura da Malha

MAIL=LIRE_MAILLAGE(FORMAT='MED',);

# Reorietação da malha e Aplicação dos Grupos

MAIL=MODI_MAILLAGE(reuse=MAIL,
                   MAILLAGE=MAIL,
                   ORIE_PEAU_2D=_F(GROUP_MA=('S_UP','S_DW',),),);

# Aplicação das Condições no Plano de Tensão

MODE=AFFE_MODELE(MAILLAGE=MAIL,
                 AFFE=_F(TOUT='OUI',
                         PHENOMENE='MECANIQUE',
                         MODELISATION='C_PLAN',),);

# Definição da Trinca com X-FEM

CRACK=DEFI_FISS_XFEM(MAILLAGE=MAIL,
                     DEFI_FISS=_F(FORM_FISS='SEGMENT',
                                  PFON_ORIG=(r, 0., 0.,),  #Ponto Inicia da Trinca
                                  PFON_EXTR=(r+a, 0., 0.,),)  #Ponto Final da Trinca ou seja a ponta da trinca
                     ,);

# Introdução do Modelo da Trinca

MODEX=MODI_MODELE_XFEM(MODELE_IN=MODE,
                       FISSURE=CRACK,);

# Aplicação das Propriedades do Material ao Domínio

MATE=AFFE_MATERIAU(MAILLAGE=MAIL,
                   AFFE=_F(TOUT='OUI',	
                           MATER=STEEL,),);

# Aplicação das Restrições

CONST=AFFE_CHAR_MECA(MODELE=MODEX,
                     DDL_IMPO=(
                        _F(GROUP_MA='DX_0',
                           DX=0.0,),
                        _F(GROUP_NO='DY_0',
                           DY=0.0,),
                        ),
                     PRES_REP=(
                        _F(GROUP_MA='S_UP',
                           PRES=-Pressao,),
                        _F(GROUP_MA='S_DW',
                           PRES=-Pressao,),
                        ),);

# Definição do Modelo Estático Linear Elastico

RESU=MECA_STATIQUE(MODELE=MODEX,
                   CHAM_MATER=MATE,
                   EXCIT=(_F(CHARGE=CONST,),),);

# Definição da Malha no Pós-processamento

MA_XFEM=POST_MAIL_XFEM(MODELE=MODEX,);

# Definição a visualização e  fenômeno físico do modelo  

MOD_VISU=AFFE_MODELE(MAILLAGE=MA_XFEM,
                     AFFE=_F(TOUT='OUI',
                             PHENOMENE='MECANIQUE',
                             MODELISATION='C_PLAN',),);
							 

# Definição do campo X-FEM

RES_XFEM=POST_CHAM_XFEM(MODELE_VISU=MOD_VISU,
                        RESULTAT=RESU,);
						
# Cálculo do Coeficiente de Intensidade e da Energia

K1K2G=CALC_G(RESULTAT=RESU,
		OPTION='CALC_K_G',
		THETA=_F(FISSURE=CRACK,),);
								  
# Impressão de Resultados

IMPR_TABLE(TABLE=K1K2G,);

#Modifica resultados antes da impressão das informações

RES_XFEM=CALC_CHAMP(reuse=RES_XFEM,
               RESULTAT=RES_XFEM,
               CONTRAINTE=('SIGM_ELNO','SIGM_NOEU'),
               CRITERES=('SIEQ_ELNO','SIEQ_NOEU',),);

# Salvando a saída no formato MED

IMPR_RESU(FORMAT='MED',
          RESU=_F(MAILLAGE=MA_XFEM,
		  	      NOM_CHAM=('SIGM_NOEU','SIEQ_NOEU','DEPL',),
			      RESULTAT=RES_XFEM,),);				  

FIN();

Follow the .mmed attached!!!
Thank you very much!!!

#10 Re: Code_Aster usage » Modify names » 2017-10-17 18:58:05

Good afternoon, Johannes.

Below is my .comm code, but I did not get the expected result. Please help me. Thank you

DEBUT();

MElast=10000000.0;
CPoisson=0.25;

MA=DEFI_MATERIAU(ELAS=_F(E=MElast,
                         NU=CPoisson,),);
						 
MAIL=LIRE_MAILLAGE(FORMAT='MED',);

MAIL=MODI_MAILLAGE(reuse=MAIL,
                   MAILLAGE=MAIL,
                   ORIE_PEAU_2D=_F(GROUP_MA=('S_up', 'S_dwn'),),
                   );

MODE=AFFE_MODELE(MAILLAGE=MAIL,
                 AFFE=_F(TOUT='OUI',
                         PHENOMENE='MECANIQUE',
                         MODELISATION='C_PLAN',),);
 				 
MATE=AFFE_MATERIAU(MAILLAGE=MAIL,
                   AFFE=_F(TOUT='OUI',
                           MATER=MA,),);
						   
Pressao=-10000.0;

CHAR=AFFE_CHAR_MECA(MODELE=MODE,
                    DDL_IMPO=(
                        _F(GROUP_MA='DX_0',
                           DX=0.0,),
                        _F(GROUP_NO='DY_0',
                           DY=0.0,),
                        ),
                    PRES_REP=(
                        _F(GROUP_MA='S_up',
                           PRES=Pressao,),
                        _F(GROUP_MA='S_dwn',
                           PRES=Pressao,),
                        ),
                    );
					
					
RESU=MECA_STATIQUE(MODELE=MODE,
                   CHAM_MATER=MATE,
                   EXCIT=_F(CHARGE=CHAR,),);
				   
RESU=CALC_CHAMP(reuse=RESU,
               RESULTAT=RESU,
               CONTRAINTE=('SIGM_ELNO','SIGM_NOEU'),
               CRITERES=('SIEQ_ELNO','SIEQ_NOEU',),);
			   
INFO_RESU(RESULTAT=RESU)
				  
IMPR_RESU(FORMAT='MED',
          RESU=(
		_F(RESULTAT=RESU, NOM_CHAM='DEPL',      NOM_CMP=('DX','DY','DZ',),NOM_CHAM_MED='DEPL_Displacement',),
                _F(RESULTAT=RESU, NOM_CHAM='DEPL',      NOM_CMP=('LAGS_C',),      NOM_CHAM_MED='LAGS_C_ContactPressure',),
                _F(RESULTAT=RESU, NOM_CHAM='REAC_NODA', NOM_CMP=('DX','DY','DZ',),NOM_CHAM_MED='REAC_NODA_ReactionForce',),
                _F(RESULTAT=RESU, NOM_CHAM='SIGM_NOEU',                           NOM_CHAM_MED='SIGM_NOEU_Stress',),
                _F(RESULTAT=RESU, NOM_CHAM='SIEQ_NOEU', NOM_CMP=('VMIS',),        NOM_CHAM_MED='VMIS_VMises',),
                _F(RESULTAT=RESU, NOM_CHAM='CONT_NOEU',                           NOM_CHAM_MED='CONT_NOEU_ContactValues',),
          ),);

FIN();

Carlos Eduardo
Brasil

#11 Code_Aster usage » Modify names » 2017-10-11 19:35:00

Ceduardolino
Replies: 3

Good afternoon

I'd like some help from the more experienced, please.

Modify in SIGM_NOEU for Medium Stress, SIEQ_NOEU for Equivalent Stress o Displaced Voltage Von-Mises and DEPL as Displacement, to be displayed the Paravis.

IMPR_RESU(FORMAT='MED',
          UNITE=80,
          RESU=_F(RESULTAT=RESU,
                  NOM_CHAM=('SIGM_NOEU','SIEQ_NOEU','DEPL',),),);

I checked the documentation [U7.05.21] and did not understand.
Help me please thank you.




Carlos Eduardo
Brasil