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

You are not logged in.

## #1 2017-05-30 10:07:18

Msegade
Member
Registered: 2017-02-23
Posts: 31

### [Solved] Buckling loads of a shell

Hi

So I'm continue analyzing the shell that I discussed in the post: Distribute a load to a set of nodes (Sorry I cannot post links).
Now I'm trying to do a buckling analysis wich I do with these steps:

``````# Resolution
# ----------

res1=MECA_STATIQUE(  MODELE=modl,
CHAM_MATER=chmat,
CARA_ELEM=cara,
EXCIT=(
_F( CHARGE = rdisp),
_F( CHARGE = clim),
_F( CHARGE = press),
_F( CHARGE = pload),),
OPTION = 'SIEF_ELGA',
);

# Stress field to calculate the geometric stiffnes matrix
# -------------------------------------------------------

stressg = CREA_CHAMP (
RESULTAT = res1,
OPERATION = 'EXTR',
TYPE_CHAM = 'ELGA_SIEF_R',
NOM_CHAM = 'SIEF_ELGA',
TYPE_MAXI = 'MINI',
TYPE_RESU = 'VALE'
)

# Elementary matrices and Assembly
# ---------------------------

matg = CALC_MATR_ELEM (OPTION = 'RIGI_GEOM',
MODELE = modl,
CARA_ELEM = cara,
SIEF_ELGA = stressg,)

matm = CALC_MATR_ELEM (OPTION = 'RIGI_MECA',
MODELE = modl,
CHAM_MATER = chmat,
CARA_ELEM = cara,
CHARGE = (rdisp, clim,
#press, pload,
),)

nuddl = NUME_DDL (MATR_RIGI = matm,)
masrig = ASSE_MATRICE (MATR_ELEM = matg,
NUME_DDL = nuddl,)
masrim = ASSE_MATRICE (MATR_ELEM = matm,
NUME_DDL = nuddl,)

# Calculate the modes
# -------------------

modp1 = CALC_MODES (MATR_RIGI_GEOM = masrig,
OPTION = 'PLUS_PETITE',
MATR_RIGI = masrim,
SOLVEUR_MODAL  =
_F(
METHODE='SORENSEN'
),
TYPE_RESU = 'MODE_FLAMB',
CALC_CHAR_CRIT = _F(
NMAX_CHAR_CRIT = 6,
),
)``````

I get very low values for the critical load

``````numéro    charge critique    norme d'erreur
1       2.37993E-02        1.35091E-10
2       2.37993E-02        1.43175E-10
3       2.43823E-02        1.52333E-10
4       2.43823E-02        1.21724E-10
5       2.64413E-02        9.63314E-11
6       2.64413E-02        1.12501E-10 ``````

and the modes are global

As in the other post I'm comparing the results with the ones I get using abaqus, where I get much bigger critical load:

``````MODE NO      EIGENVALUE

1      0.51168
2      0.53620
3      0.54860
4      0.55567
5      0.56876
6      0.57455 ``````

and the modes are local which correspond to the location of maximun compression values, that makes more sense than the
global modes:

The rest of results (displacements, stresses...) of the linear static analysis, I get the same values in code_aster and abaqus.

What can I do to solve this?
I attach the .comm and .med file.

Thanks.

Last edited by Msegade (2017-05-31 10:47:04)

Attachments:
buckling.zip, Size: 50.7 KiB, Downloads: 443

Offline

## #2 2017-05-30 15:05:08

jeanpierreaubry
Guru
From: nantes (france)
Registered: 2009-03-12
Posts: 3,935

### Re: [Solved] Buckling loads of a shell

hello

what is the variable load upon which buckling is to be calculated
this is not very clear in your example

jeean pierre aubry

consider reading my book
freely available here https://framabook.org/beginning-with-code_aster/

Offline

## #3 2017-05-30 22:43:37

Msegade
Member
Registered: 2017-02-23
Posts: 31

### Re: [Solved] Buckling loads of a shell

jeanpierreaubry wrote:

hello

what is the variable load upon which buckling is to be calculated
this is not very clear in your example

jeean pierre aubry

Are both the "pload" and "press" loads.

Offline

## #4 2017-05-31 05:48:58

jeanpierreaubry
Guru
From: nantes (france)
Registered: 2009-03-12
Posts: 3,935

### Re: [Solved] Buckling loads of a shell

do you mean they vary linealy TOGETHER at the same rate ?

consider reading my book
freely available here https://framabook.org/beginning-with-code_aster/

Offline

## #5 2017-05-31 08:09:18

Msegade
Member
Registered: 2017-02-23
Posts: 31

### Re: [Solved] Buckling loads of a shell

jeanpierreaubry wrote:

do you mean they vary linealy TOGETHER at the same rate ?

Yes, later I would want to make another analysis where I  just vary one of the loads while remaining the other costant,
but the results I got in abaqus are with both loads varying linealy together at the same rate.

Offline

## #6 2017-05-31 09:09:34

jeanpierreaubry
Guru
From: nantes (france)
Registered: 2009-03-12
Posts: 3,935

### Re: [Solved] Buckling loads of a shell

i get the frist critical at 0.5465 with the shape shown attached

Attachments:
firstmode.png, Size: 55.82 KiB, Downloads: 479

consider reading my book
freely available here https://framabook.org/beginning-with-code_aster/

Offline

## #7 2017-05-31 09:30:29

Msegade
Member
Registered: 2017-02-23
Posts: 31

### Re: [Solved] Buckling loads of a shell

jeanpierreaubry wrote:

i get the frist critical at 0.5465 with the shape shown attached

That's what I was looking for!

Can you please share the .comm file?

Offline

## #8 2017-05-31 09:52:14

jeanpierreaubry
Guru
From: nantes (france)
Registered: 2009-03-12
Posts: 3,935

### Re: [Solved] Buckling loads of a shell

here it is
as can see your first trial was quite out
for buckling as for may other problems code_aster looks very verbose
but can be easily fine tuned once the first .comm file has been written

Attachments:
cylinderbuck.comm, Size: 7.87 KiB, Downloads: 504

consider reading my book
freely available here https://framabook.org/beginning-with-code_aster/

Offline

## #9 2017-05-31 10:46:47

Msegade
Member
Registered: 2017-02-23
Posts: 31

### Re: [Solved] Buckling loads of a shell

Thanks! Now I got it working.

Is there any reason why 'PLUS_PETITE' is not working?
If I use the same .comm file and I replace

``````modp1=CALC_MODES(
TYPE_RESU='MODE_FLAMB',
OPTION='BANDE',
STOP_BANDE_VIDE='OUI',
MATR_RIGI=mascomb,
MATR_RIGI_GEOM=masrigv,
CALC_CHAR_CRIT=_F(
CHAR_CRIT=(mini,maxi,),
),
VERI_MODE=_F(
STOP_ERREUR='NON',
),
);``````

with

``````modp1=CALC_MODES(
TYPE_RESU='MODE_FLAMB',
#OPTION='BANDE',
OPTION = 'PLUS_PETITE',
STOP_BANDE_VIDE='OUI',
MATR_RIGI=mascomb,
MATR_RIGI_GEOM=masrigv,
CALC_CHAR_CRIT=_F(
#CHAR_CRIT=(mini,maxi,),
NMAX_CHAR_CRIT = 6,
),
VERI_MODE=_F(
STOP_ERREUR='NON',
),
);``````

I get bad results.

Offline

## #10 2017-05-31 10:57:36

jeanpierreaubry
Guru
From: nantes (france)
Registered: 2009-03-12
Posts: 3,935

### Re: [Solved] Buckling loads of a shell

Is there any reason why 'PLUS_PETITE' is not working?

this is probably explained somewhere in the doc
without reading it
my first answer is that
as the critical buckling load factor may take negative value
it will always be possible to find a value close to "minus infinity"
which will probably be meaningless

consider reading my book
freely available here https://framabook.org/beginning-with-code_aster/

Offline