Crack analysis Wizard - failure
- Dominik Krings
- Topic Author
- Offline
- New Member
-
Less
More
- Posts: 2
- Thank you received: 0
11 years 1 month ago #7485
by Dominik Krings
Crack analysis Wizard - failure was created by Dominik Krings
Hello,
my name is Dominik, I come from Germany and I'm new at CAELinux. I'm studying mechanical engineering and need to do some Crack-analysis for a project. I found out that Code-Aster has some features to do crack-analysis. I'm using CAE-Linux 2013. I started with a simple Example: A cylinder (r=50; h=400) meshed with Netgen 1D-2D-3D algorithm (19130 nodes). Than I started the "Crack-Analysis wizard" with normal settings like elliptical crack; moderate refinement; pressure 100E6 etc. When I finish the wizard and want to calculate, the following message appears: "Compilation impossible: File “study4.comm”, line 22 MO[i_raff]=AFFE_MODELE(MAILLAGE=MA[i_raff], SyntaxError: unexpected indent". The message appears also when I want to open study4.comm with efficas. What is wrong with the file? Can anybody help me, please?
study4.comm:
DEBUT(PAR_LOT='NON',IGNORE_ALARM = ('SUPERVIS_1','CALCULEL2_63 '))
#
# parameters from the Wizard
#
# h0 : initial elements size
h0 = 1.0
# hc : target elements size (taille cible)
hc = 0.25
#
# useful parameters
#
# number of mesh refinements
n = (log(h0)-log(hc))/log(2)
nb_raff = int(n)+1
# h : final elements size
h = h0/(2.**nb_raff)
# radius of refinements disc
r_raff = 6*h
# initialization
MA = [None]*(nb_raff+1)
MO = [None]*nb_raff
CHERR = [None]*nb_raff
i_raff=0
MA[i_raff]=LIRE_MAILLAGE(FORMAT='MED',);
# refinements loop
for i_raff in range(nb_raff) :
MO[i_raff]=AFFE_MODELE(MAILLAGE=MA[i_raff],
AFFE=_F(TOUT='OUI',
PHENOMENE='MECANIQUE',
MODELISATION='3D'))
Fiss_01=DEFI_FISS_XFEM(MODELE=MO[i_raff],
DEFI_FISS=(
_F(FORM_FISS='ELLIPSE',
DEMI_GRAND_AXE=6.0,
DEMI_PETIT_AXE=5.0,
CENTRE=(50.0, 0.0, 200.0),
VECT_X=(1.0, 0.0, 0.0),
VECT_Y=(0.0, 1.0, 0.0),),
),);
l_fiss = (Fiss_01,)
# errors evaluation
CHERR[i_raff]=RAFF_XFEM(FISSURE=l_fiss)
# mesh concept n+1
MA[i_raff+1]=CO('MA_%d' % (i_raff+1))
# criterion value of refinement
crit = -max(r_raff , h0/(2.**i_raff) )
MACR_ADAP_MAIL(ADAPTATION = 'RAFFINEMENT',
CHAM_GD = CHERR[i_raff],
CRIT_RAFF_ABS = crit,
USAGE_CMP = 'RELATIF',
MAILLAGE_N = MA[i_raff],
MAILLAGE_NP1 = MA[i_raff+1],
ELEMENTS_NON_HOMARD= 'IGNORER')
DETRUIRE(CONCEPT=_F(NOM=l_fiss),INFO=1)
assert(nb_raff == i_raff+1)
MA[nb_raff]=MODI_MAILLAGE(reuse=MA[nb_raff],
MAILLAGE=MA[nb_raff],
ORIE_PEAU_3D=_F(GROUP_MA=('Group_2',),),
);
IMPR_RESU(FORMAT='MED',UNITE=80,RESU=_F(MAILLAGE=MA[nb_raff]))
MOD=AFFE_MODELE(MAILLAGE=MA[nb_raff],
AFFE=_F(TOUT='OUI',
PHENOMENE='MECANIQUE',
MODELISATION='3D',),)
Fiss_01=DEFI_FISS_XFEM(MODELE=MOD,
DEFI_FISS=(
_F(FORM_FISS='ELLIPSE',
DEMI_GRAND_AXE=6.0,
DEMI_PETIT_AXE=5.0,
CENTRE=(50.0, 0.0, 200.0),
VECT_X=(1.0, 0.0, 0.0),
VECT_Y=(0.0, 1.0, 0.0),),
),);
l_fiss = (Fiss_01,)
MODX=MODI_MODELE_XFEM(MODELE_IN=MOD,
FISSURE=l_fiss)
ACIER=DEFI_MATERIAU(ELAS=_F(E=210000000000.0,
NU=0.3,),)
MATE=AFFE_MATERIAU(MAILLAGE=MA[nb_raff],
AFFE=_F(TOUT='OUI',
MATER=ACIER))
CHAR=AFFE_CHAR_MECA(MODELE=MODX,
DDL_IMPO=(
_F(GROUP_MA='Group_1',
DX=0.0,
DY=0.0,
DZ=0.0,),
),
PRES_REP=(
_F(GROUP_MA='Group_2',
PRES=100000000.0,),
),
);
CHXFEM=AFFE_CHAR_MECA(MODELE=MODX, LIAISON_XFEM='OUI')
L_INST=DEFI_LIST_REEL(VALE=(0.,1.))
RESU=STAT_NON_LINE(MODELE=MODX,
CHAM_MATER=MATE,
EXCIT=(_F(CHARGE=CHAR),
_F(CHARGE=CHXFEM)),
COMP_ELAS=_F(RELATION='ELAS'),
INCREMENT=_F(LIST_INST=L_INST),
)
# visualization
MA_VISU=POST_MAIL_XFEM(MODELE=MODX)
MO_VISU=AFFE_MODELE(MAILLAGE=MA_VISU,
AFFE=_F(TOUT='OUI',
PHENOMENE='MECANIQUE',
MODELISATION='3D'))
RE_VISU=POST_CHAM_XFEM(MODELE_VISU=MO_VISU,
RESULTAT=RESU)
RE_VISU=CALC_ELEM(RESULTAT=RE_VISU,reuse=RE_VISU,
OPTION=('SIEQ_ELGA','SIEQ_ELNO'))
IMPR_RESU(FORMAT='MED',UNITE=80,RESU=_F(RESULTAT=RE_VISU))
# postprocessing in cracks analysis
NB_FOND=RECU_TABLE(CO=Fiss_01,NOM_TABLE='NB_FOND_FISS')
dict = NB_FOND.EXTR_TABLE().values()
nb_fond = dict[0]
DETRUIRE(CONCEPT=_F(NOM=NB_FOND),INFO=1)
G1= [None]*nb_fond
for i in range(nb_fond) :
G1=CALC_G(THETA=_F(FISSURE=Fiss_01,
NUME_FOND=i+1,
R_INF=2*h,
R_SUP=5*h,),
RESULTAT=RESU,
INST=1.,
OPTION='CALC_K_G')
IMPR_TABLE(TABLE=G1)
FIN()
my name is Dominik, I come from Germany and I'm new at CAELinux. I'm studying mechanical engineering and need to do some Crack-analysis for a project. I found out that Code-Aster has some features to do crack-analysis. I'm using CAE-Linux 2013. I started with a simple Example: A cylinder (r=50; h=400) meshed with Netgen 1D-2D-3D algorithm (19130 nodes). Than I started the "Crack-Analysis wizard" with normal settings like elliptical crack; moderate refinement; pressure 100E6 etc. When I finish the wizard and want to calculate, the following message appears: "Compilation impossible: File “study4.comm”, line 22 MO[i_raff]=AFFE_MODELE(MAILLAGE=MA[i_raff], SyntaxError: unexpected indent". The message appears also when I want to open study4.comm with efficas. What is wrong with the file? Can anybody help me, please?
study4.comm:
DEBUT(PAR_LOT='NON',IGNORE_ALARM = ('SUPERVIS_1','CALCULEL2_63 '))
#
# parameters from the Wizard
#
# h0 : initial elements size
h0 = 1.0
# hc : target elements size (taille cible)
hc = 0.25
#
# useful parameters
#
# number of mesh refinements
n = (log(h0)-log(hc))/log(2)
nb_raff = int(n)+1
# h : final elements size
h = h0/(2.**nb_raff)
# radius of refinements disc
r_raff = 6*h
# initialization
MA = [None]*(nb_raff+1)
MO = [None]*nb_raff
CHERR = [None]*nb_raff
i_raff=0
MA[i_raff]=LIRE_MAILLAGE(FORMAT='MED',);
# refinements loop
for i_raff in range(nb_raff) :
MO[i_raff]=AFFE_MODELE(MAILLAGE=MA[i_raff],
AFFE=_F(TOUT='OUI',
PHENOMENE='MECANIQUE',
MODELISATION='3D'))
Fiss_01=DEFI_FISS_XFEM(MODELE=MO[i_raff],
DEFI_FISS=(
_F(FORM_FISS='ELLIPSE',
DEMI_GRAND_AXE=6.0,
DEMI_PETIT_AXE=5.0,
CENTRE=(50.0, 0.0, 200.0),
VECT_X=(1.0, 0.0, 0.0),
VECT_Y=(0.0, 1.0, 0.0),),
),);
l_fiss = (Fiss_01,)
# errors evaluation
CHERR[i_raff]=RAFF_XFEM(FISSURE=l_fiss)
# mesh concept n+1
MA[i_raff+1]=CO('MA_%d' % (i_raff+1))
# criterion value of refinement
crit = -max(r_raff , h0/(2.**i_raff) )
MACR_ADAP_MAIL(ADAPTATION = 'RAFFINEMENT',
CHAM_GD = CHERR[i_raff],
CRIT_RAFF_ABS = crit,
USAGE_CMP = 'RELATIF',
MAILLAGE_N = MA[i_raff],
MAILLAGE_NP1 = MA[i_raff+1],
ELEMENTS_NON_HOMARD= 'IGNORER')
DETRUIRE(CONCEPT=_F(NOM=l_fiss),INFO=1)
assert(nb_raff == i_raff+1)
MA[nb_raff]=MODI_MAILLAGE(reuse=MA[nb_raff],
MAILLAGE=MA[nb_raff],
ORIE_PEAU_3D=_F(GROUP_MA=('Group_2',),),
);
IMPR_RESU(FORMAT='MED',UNITE=80,RESU=_F(MAILLAGE=MA[nb_raff]))
MOD=AFFE_MODELE(MAILLAGE=MA[nb_raff],
AFFE=_F(TOUT='OUI',
PHENOMENE='MECANIQUE',
MODELISATION='3D',),)
Fiss_01=DEFI_FISS_XFEM(MODELE=MOD,
DEFI_FISS=(
_F(FORM_FISS='ELLIPSE',
DEMI_GRAND_AXE=6.0,
DEMI_PETIT_AXE=5.0,
CENTRE=(50.0, 0.0, 200.0),
VECT_X=(1.0, 0.0, 0.0),
VECT_Y=(0.0, 1.0, 0.0),),
),);
l_fiss = (Fiss_01,)
MODX=MODI_MODELE_XFEM(MODELE_IN=MOD,
FISSURE=l_fiss)
ACIER=DEFI_MATERIAU(ELAS=_F(E=210000000000.0,
NU=0.3,),)
MATE=AFFE_MATERIAU(MAILLAGE=MA[nb_raff],
AFFE=_F(TOUT='OUI',
MATER=ACIER))
CHAR=AFFE_CHAR_MECA(MODELE=MODX,
DDL_IMPO=(
_F(GROUP_MA='Group_1',
DX=0.0,
DY=0.0,
DZ=0.0,),
),
PRES_REP=(
_F(GROUP_MA='Group_2',
PRES=100000000.0,),
),
);
CHXFEM=AFFE_CHAR_MECA(MODELE=MODX, LIAISON_XFEM='OUI')
L_INST=DEFI_LIST_REEL(VALE=(0.,1.))
RESU=STAT_NON_LINE(MODELE=MODX,
CHAM_MATER=MATE,
EXCIT=(_F(CHARGE=CHAR),
_F(CHARGE=CHXFEM)),
COMP_ELAS=_F(RELATION='ELAS'),
INCREMENT=_F(LIST_INST=L_INST),
)
# visualization
MA_VISU=POST_MAIL_XFEM(MODELE=MODX)
MO_VISU=AFFE_MODELE(MAILLAGE=MA_VISU,
AFFE=_F(TOUT='OUI',
PHENOMENE='MECANIQUE',
MODELISATION='3D'))
RE_VISU=POST_CHAM_XFEM(MODELE_VISU=MO_VISU,
RESULTAT=RESU)
RE_VISU=CALC_ELEM(RESULTAT=RE_VISU,reuse=RE_VISU,
OPTION=('SIEQ_ELGA','SIEQ_ELNO'))
IMPR_RESU(FORMAT='MED',UNITE=80,RESU=_F(RESULTAT=RE_VISU))
# postprocessing in cracks analysis
NB_FOND=RECU_TABLE(CO=Fiss_01,NOM_TABLE='NB_FOND_FISS')
dict = NB_FOND.EXTR_TABLE().values()
nb_fond = dict[0]
DETRUIRE(CONCEPT=_F(NOM=NB_FOND),INFO=1)
G1= [None]*nb_fond
for i in range(nb_fond) :
G1=CALC_G(THETA=_F(FISSURE=Fiss_01,
NUME_FOND=i+1,
R_INF=2*h,
R_SUP=5*h,),
RESULTAT=RESU,
INST=1.,
OPTION='CALC_K_G')
IMPR_TABLE(TABLE=G1)
FIN()
- Claus
-
- Offline
- Moderator
-
Less
More
- Posts: 670
- Thank you received: 34
11 years 1 month ago #7488
by Claus
Code_Aster release : STA11.4 on OpenSUSE 12.3 64 bits - EDF/Intel version
Replied by Claus on topic Re: Crack analysis Wizard - failure
As far as I have read on the CA forum, there is nothing wrong per se - EFICAS just complains about the python code, but if you ignore this error and launch the simulation, it will run fine. I haven't tested it myself lately, but I also get this error.
/C
/C
Code_Aster release : STA11.4 on OpenSUSE 12.3 64 bits - EDF/Intel version
- kwou
-
- Offline
- Moderator
-
11 years 1 month ago - 11 years 1 month ago #7489
by kwou
Interest: structural mechanics, solar energy (picture at 'my location' shows too little pv panels)
--
kind regards - kees
Replied by kwou on topic Re: Crack analysis Wizard - failure
hoi dk
Just to add to claws reply:
if this is written in your comm file it will just issue the reported error because of a Python syntax error
if this is written in your comm file, I donot understand the error:
Therefore, please add your code inor upload a separate file (although sometimes uploading is a bit timeconsuming).
Just to add to claws reply:
if this is written in your comm file it will just issue the reported error because of a Python syntax error
# refinements loop
for i_raff in range(nb_raff) :
MO[i_raff]=AFFE_MODELE(MAILLAGE=MA[i_raff],
AFFE=_F(TOUT='OUI',
PHENOMENE='MECANIQUE',
MODELISATION='3D'))
if this is written in your comm file, I donot understand the error:
# refinements loop
for i_raff in range(nb_raff):
MO[i_raff]=AFFE_MODELE(MAILLAGE=MA[i_raff],
AFFE=_F(TOUT='OUI',
PHENOMENE='MECANIQUE',
MODELISATION='3D'))
Therefore, please add your code in
[code]...[//code]
Interest: structural mechanics, solar energy (picture at 'my location' shows too little pv panels)
--
kind regards - kees
Last edit: 11 years 1 month ago by kwou.
Moderators: catux
Time to create page: 0.117 seconds