Université

Paul
Sabatier

Master 2 CCPA / Parcours "calcul".

Toulouse III

M.E.F.
Michel SUDRE

Sept 2013

M.E.F.

M SUDRE

Rappels

1 Méthode de Ritz

1.1 Principe des travaux virtuels
Une fonction arbitraire, choisie pour représenter la déformée, qui est continue sur
le domaine et qui respecte les conditions limites cinématiques est dite "cinématiquement admissible". Deux exemples sont donnés ci-dessous:
F
F

L
(1)

v(x) = a.x2 + b.x3

(2)

v(x) = a. sin (

πx )
L

Si on impose un champ de déplacement virtuel cinématiquement admissible à un
corps élastique à l’équilibre sous l’action de forces extérieures, l’accroissement de
l’énergie élastique W est égal au travail des forces extérieures dans ce déplacement.

δW =

Fi . δ u i

Si on admet que les forces Fi dérivent d’un potentiel U, alors le résultat précédent
peut s’exprimer comme une condition d’extémum:

Fi = - δU
δ ui

,

Fi . δ ui = - δU d’où δ (W+U) = 0

U est l’opposé de , travail des forces Fi calculé dans le déplacement virtuel (en supposant les forces Fi constantes).

W- est l’énergie potentielle totale (EPT). On montre que, pour un corps en équilibre
stable, cet extrémum de l’énergie potentielle totale est un minimum absolu.
On énonce le principe du minimum de l’énergie potentielle totale ainsi:
Parmi tous les champs cinématiquement admissibles,
celui qui rend minimale l’énergie potentielle totale
correspond à la solution.

2

M.E.F.

M SUDRE

1.2 Méthode de Ritz
La méthode de Ritz est une méthode de résolution des problèmes d’élasticité
basée sur l’application de ce principe.
Elle consiste à exprimer le champ de déplacement dans une base de N fonctions ϕi ciN
nématiquement admissibles:
Σ(ai.ϕi)
1

La meilleure approximation est celle qui rend extrémale l’énergie potentielle totale.
Elle est donc obtenue par les N relations:
δ(EPT)
=0
i=1..N
δai
La méthode peut être illustrée par le problème de flexion suivant:
A

B

F

L

F

L

Utilisons la méthode de Ritz pour calculer les déplacements des points A et B.
Choisissons de représenter la déformée sur le domaine [0,2L] par:
v(x) = a1.x2 + a2.x3
et exprimons l’énergie potentielle totale W- .
2L

W est l’énergie de flexion:

2L

2
2
Mz2 dx
1.
1 . ( EIz d v ) dx
=
2
dx
2 0 EIz
2 EIz 0

en remplaçant v(x) par a1.x2+a2.x3 , on obtient: W = 4EIzL.( a12 + 12a22L2 + 6a1a2L)
est le travail des 2 efforts extérieurs:
en remplaçant v(x) par a1.x2+a2.x3 , on obtient:

-F.v(L) -F.v(2L)

= -FL2.( 5a1+ 9a2L)

Il reste à minimiser W- par rapport aux 2 coefficients a1 et a2 pour obtenir la
’meilleure solution’ compatible avec la fonction v(x) choisie,

3

M.E.F.

M SUDRE

(W- ) = 0

a1= - 11FL
8EIz

(W- ) = 0

a2=

a1
a2

F
4EIz
3

Les déplacements des points A et B sont donc :

a1.L2 + a2.L3= - 9FL
8EIz

a1.(2L)2 + a2.(2L)3 = -

7FL3
2EIz

2 Méthode des Eléments Finis

2.1 Principe
La Méthode des Eléments Finis consiste à découper la structure en éléments de forme simple et à choisir une approximation du déplacement sur chaque subdivision.
C’est une méthode de Ritz ’par morceaux’ qui s’adapte aux géométries les plus complexes.
élément

noeud

Les subdivisions sont les ’éléments’ et les connexions entre éléments sont les ’noeuds’.
Il est utile que les inconnues soient des paramètres physiques. C’est pourquoi on choisit les composantes de déplacements des noeuds (déplacements nodaux).

4

M.E.F.

M SUDRE

Par exemple: (

I, I ,

I)

pour le noeud N°I.
I

(
I

I, I ,

I) sont

les déplacements nodaux.

I

I

Tous les déplacements nodaux sont rangés dans un vecteur: {U} =

.
.
.

ui
.
.
.

L’énergie potentielle totale (W- ) est calculée en fonction des n variables ui.
Il existe 3 grandes familles d’éléments. Les éléments uni-dimensionnels, bi-dimensionnels, tri-dimensionnels.
L’énergie élastique W est calculée en fonction des déplacements nodaux:
En 1D, grâce aux relations de la théorie des poutres.
Un modèle uni-dimensionnel s’appuie donc sur les hypothèses restrictives de la rdm.
En 2D, en utilisant, selon les cas, les théories des membranes, des plaques
et des coques.
Un modèle bi-dimensionnel s’appuie sur les hypothèses restrictives de ces différentes
théories.
En 3D, en exploitant les relations de l’élasticité sans aucune hypothèse restrictive.
Le travail des efforts extérieurs s’exprime simplement en fonction des déplacements
des noeuds auxquels sont appliqués ces efforts.
La solution recherchée correspond à un minimum de l’énergie potentielle totale.
Elle est obtenue par les conditions:

δ(EPT)
=0
δui

i=1..n

Si le comportement est linéaire, on obtient un système du type:
matrice de rigidité

[K].{U} = {F}
déplacements nodaux

5

efforts appliqués

M.E.F.

M SUDRE

3 Exemple d’application

exemple
On considère un assemblage de 4 ressorts de raideur k liés au bâti
et soumis à 4 efforts d’intensité F.
F
k

F
k

F

k

F

k

Le modèle fait intervenir 4 éléments, 5 noeuds et 5 degrés de liberté.
1

u1

2

3

u2

u3

4

u4

u5

3.1 élément ressort
uI

uJ

I

J

l’allongement est égal à: ∆

=

uJ – uI

L
Donc l’énergie élastique de l’élément (i) vaut:



= { – 1, 1 } ⋅ 

2
1
1
W i = --- ⋅ k ⋅ ∆ = --- ⋅ 
2
2

uI uJ

uI
uJ








k

k




 –k k 

uI
uJ





3.2 assemblage
L’énergie élastique totale s’obtient par addition des contributions de chaque éléments.

1
W = W 1 + W 2 + W 3 + W 4 = --- ⋅ 
2

u1 u2 u3 u4 u5

6


⋅

k –k 0 0
– k 2k – k 0
0 – k 2k – k
0 0 – k 2k
0 0 0 –k




0

0



0

–k 

k

u1
u2
u3
u4
u5











M.E.F.

M SUDRE

3.3 énergie potentielle totale
Si X1 est l’action de liaison exercée au noeud 1:


EPT = W – 

u1 u2 u3 u4 u5




 

 
 



X1 

F 
F 

F 
F 

3.4 minimisation
La minimisation de l’énergie potentielle totale conduit à l’écriture du système:
k –k 0 0
– k 2k – k 0
0 – k 2k – k
0 0 – k 2k
0 0 0 –k




0

0

0 ⋅

–k 

k

u1
u2
u3
u4
u5






 X1 




 F 
 =  F 




 F 

 F 



Ce système ne peut être résolu car il n’existe pas de solution unique tant qu’un déplacement d’ensemble de la structure reste possible. La matrice [K] obtenue par assemblage est singulière.

3.5 conditions limites
Il reste à imposer que u1=0 en modifiant le système précédent.
C’est la phase dite de ’pénalisation’ qui consiste à modifier la ligne et la colonne relatives à u1.
1
0
0
0
0

0 0 0
2k – k 0
– k 2k – k
0 – k 2k
0 0 –k




0

0

0 ⋅

–k 

k

u1
u2
u3
u4
u5






 0 

 F 



 =  F 




 F 

 F 



3.6 résolution

La résolution peut s’effectuer et conduit à:

7











u1
u2
u3
u4
u5






 0 

 4 


F 
- = k ⋅ 7 




 9 

 10 



M.E.F.

M SUDRE

3.7 calcul de l’action de liaison
Il suffit de reprendre la première ligne du système avant sa modification.
Les déplacements étant connus, il vient:





 F
-X1 =  k –k 0 0 0  ⋅ 

 k


0
4
7
9
10





 = – 4F



3.8 calcul des efforts intérieurs
L’effort Normal dans chaque ressort peut être calculé par:
Ni = k ∆i

On trouve:

N1 = k ∆ 1 = 4F



= k ⋅ ( u J – u I ) = { – k, k } ⋅ 

N 2 = k ∆ 2 = 3F

8

uI
uJ

N3 = k ∆ 3 = 2F





N4 = k ∆4 = F

M.E.F.

M SUDRE

Nastran

1 Présentation
NASTRAN (NAsa STRuctural ANalysis) est un logiciel conçu par la NASA dans les années 60. La version utilisée ici est la version MSC/NASTRAN développée et maintenue
par MacNeal-Schwendler Corporation.
Des ensembles pré-programmés en langage DMAP (Direct Matrix Abstraction Programming) sont disponibles pour effectuer les tâches les plus courantes:
sol 101
Analyse Statique Linéaire
sol 103
Fréquences naturelles et modes de vibration
sol 105
Flambement
sol 106
Analyse Statique Non Linéaire
sol 200
Optimisation
.....
Le langage DMAP offre à l’usager la possibilité d’écrire ses propres programmes pour
des besoins particuliers.
Plusieurs logiciels compatibles avec MSC/NASTRAN peuvent être utilisés pour générer
les modèles. Les plus connus sont PATRAN, MSC/NASTRAN for Windows, I-DEAS.

2 Structure d’un fichier NASTRAN
éventuel programme en DMAP
(un exemple est donné en annexe)

SOL --Executive Control Deck
CEND

Case Control Deck

Bulk Data

instructions pour l’analyse
choix des données
cas de charge
résultats désirés (*)
BEGIN BULK
données de base:
matériaux, noeuds,éléments,liaisons,charges
ENDDATA

(*) par exemple:
DISPLACEMENT=ALL
STRESS=ALL

9

M.E.F.

M SUDRE

3 Paramètres standardisés
SID Set identification number

G

Grid point
Degree of freedom

EID

Element identification number

C

PID

Property identification number

1
2
3
4
5
6

MID Material identification number
CID

Coordinate identification number

Tx
Ty
Tz
Rx
Ry
Rz

4 Eléments de NASTRAN
C....
P....

utilisé pour Connection card
utilisé pour Property card

Dimension 1

CELAS
PELAS

CROD
PROD

CBAR
PBAR

Dimension 2

CSHEAR
PSHEAR

CTRIA3 CQUAD4 CTRIA6 CQUAD8
PSHELL

Dimension 3

CTETRA CHEXA
PSOLID

E

Element

nu

G

CROD

Traction

Torsion

CBAR

Traction
Flexion

Torsion
Tranchant

CTRIA3 CQUAD4 CTRIA6 CQUAD8

Membrane et Flexion

Cisaillement
Transverse
Cisaillement

CSHEAR
CTETRA CHEXA

Toutes sollicitations

10

M.E.F.

M SUDRE

5 Commandes de NASTRAN

5.1 Généralités
En format standard, une carte NASTRAN est constituée de 10 champs de 8 caractères.
Le premier champ contient le nom de la commande (GRID, CBAR ..). Les champs de
2 à 9 contiennent les paramètres associés à cette commande.
Le 10ème champ ne contient pas de donnée. Il est réservé à la marque de continuation.
En effet, certaines commandes nécessitent plus de 8 champs de données. (voir cidessous la commande CBAR )
En format libre, les champs sont séparés par des virgules. Ils ne doivent pas dépasser
8 caractères.
Un entier ne peut pas contenir de point décimal. Un réel doit contenir un point décimal.
Un réel peut être écrit de différentes manières:

7.0

.7E1

0.7+1

70.-1

5.2 Quelques exemples
GRID

GRID

définit la position d’un noeud, les directions de ses déplacements et ses SPC.

ID

CP

X1

X2

X3

y

z

cylindrique

x
r

Θ

z

sphérique

r

Θ

Φ

cartésien
Repère

ID:
CP:
X1,X2,X3:
CD:
PS:

11

CD

PS

M.E.F.

M SUDRE

CROD définit les connexions et la géométrie d’un élément barre.

EID

CROD

PID

G1

G2

EID:
PID:
G1,G2:

PROD définit les propriétés d’un élément barre.

PID

PROD

MID

A

J

C

NSM

PID:
MID:
A:
J:
C:
NSM:

CBAR définit les connexions et la géométrie d’un élément poutre.

CBAR

EID

PID

GA

GB

X1

X2

X3

+A1

PA

PB

W1A

W2A

W3A

W1B

W2B

EID:
PID:
GA,GB:
X1,X2,X3:
PA,PB:
W1A,W2A,W3A,W1B,W2B,W3B:

12

+A1
W3B

M.E.F.

M SUDRE

autre configuration:
CBAR

EID

PID

GA

GB

G0

PA

PB

W1A

W2A

W3A

W1B

W2B

W3B

G0:

PBAR définit les propriétés d’un élément poutre.

PBAR

PID

MID

A

I1

I2

J

NSM

C1

C2

D1

D2

E1

E2

F1

F2

K1

K2

I12

G3

G4

G5

G6

PID:
MID:
A:
I1,I2:
J:
NSM:
C1,C2,D1,D2,E1,E2,F1,F2:
K1,K2:
I12:

SPC1 énumère les degrés de liberté fixés.

SPC1

SID

C

G1

G2

+A1

G7

G8

G9

....

SID:
C:
Gi:

13

+A1

M.E.F.

M SUDRE

autre configuration:
SID

SPC1

C

G1

THRU

G2

Pour que la carte SPC1 soit prise en compte, il faut placer la commande SPC=SID
dans la partie Case Control Deck du fichier de données.

MPC

introduit des relations entre les degrés de liberté:

MPC

SID

G1

C1

A1

+A1

G3

C3

A3

....

G2

C2

i

Ai.ui = 0 .

A2

+A1

SID:
Gi:
Ci:
Ai:
Pour que la carte MPC soit prise en compte, il faut placer la commande MPC=SID
dans la partie Case Control Deck du fichier de données.

FORCE définit une force concentrée statique.

SID

FORCE

G

CID

F

N1

N2

N3

SID:
G:
CID:
F:
N1,N2,N3:
Pour que la carte FORCE soit prise en compte, il faut placer la commande LOAD=SID
dans la partie Case Control Deck du fichier de données.

14

M.E.F.

M SUDRE

MOMENT définit un moment concentré statique.

SID

MOMENT

G

CID

M

N1

N2

N3

SID:
G:
CID:
M:
N1,N2,N3:
Pour que la carte MOMENT soit prise en compte, il faut placer la commande
LOAD=SID dans la partie Case Control Deck du fichier de données.

LOAD définit une combinaison de charges.

LOAD

SID

S

S1

+A1

S4

L4

....

L1

S2

L2

S3

L3

+A1

SID:
S:
Si:
Li:
Pour que la carte LOAD soit prise en compte, il faut placer la commande LOAD=SID
dans la partie Case Control Deck du fichier de données.

MAT1 définit les propriétés d’un matériau isotrope.

MID

MAT1

E

G

NU

RHO

MID:
E:
G:

15

A

TREF

GE

M.E.F.

M SUDRE

NU:
RHO:
A:
TREF:
GE:

RBE2 définit un corps rigide.

RBE2

EID

GN

CM

GM1

GM2

EID:
GN:
CM:
GMi:

16

GM3

....

M.E.F.

M SUDRE

Exercice 1:
Une poutre de longueur 0.5m et de section A= 8.E-5 m2 est soumise à un effort de
tension F= 4000 N.
1° question:
Ecrire le fichier *.bdf.
y
.5m

4000 N
x

1

2

matériau: E=210 GPa / nu=.3

2° question:
Effectuer le calcul avec Nastran et lire l’allongement dans le fichier *.f06.
3° question:
Vérifier l’allongement par un calcul analytique.

17

M.E.F.

M SUDRE

Exercice 2:
Voici l’exemple suivant dont le fichier *.bdf est fourni. L’élément 1-2 a pour section A1
et l’élément 2-3 a pour section A2. L’axe local 2 coincide avec la direction y.
1° question: Compléter les cartes "Load".
y
1000 N

1m

1m

500 Nm

x
1

2

3

matériau: E=210 GPa / nu=.3
section A1:

section A2:

2
F

1
E

C

0.05

C

0.05

F

2

D

1
E

0.1

0.05

D

$ Exemple 2
SOL 101
CEND
$
DISPLACEMENT(SORT1,REAL)=ALL
STRESS(SORT1,REAL,VONMISES,BILIN)=ALL
SPC = 20
LOAD =
$
BEGIN BULK
PBAR,1,1,5.000E-3,1.042E-6,4.167E-6,2.861E-6,0.0
,2.500E-2,5.000E-2,-2.50E-2,5.000E-2,-2.50E-2,-5.00E-2,2.500E-2,-5.00E-2
,8.338E-1,8.333E-1,0.0
CBAR,1,1,1,2,0.,1.,0.
PBAR,2,1,2.500E-3,5.208E-7,5.208E-7,8.791E-7,0.0
,2.500E-2,2.500E-2,-2.50E-2,2.500E-2,-2.50E-2,-2.50E-2,2.500E-2,-2.50E-2
,8.334E-1,8.334E-1,0.0
CBAR,2,2,2,3,0.,1.,0.
MAT1,1,2.1+11,,.3
GRID,1,,0.,0.,0.
GRID,2,,1.,0.,0.
GRID,3,,2.,0., 0.
LOAD,
SPC1,20,123456,1
FORCE,
MOMENT,
ENDDATA

18

M.E.F.

M SUDRE

2° question: On ajoute un appui incliné de 45° au niveau du noeud 3. Ecrire la carte
MPC correspondante.
3° question: L’élément 2 est remplacé par un corps rigide.
a- Ecrire la carte RBE2.
b- Ecrire les cartes MPC correspondantes.

19

M.E.F.

M SUDRE

PSHELL introduit les propriétés d’une plaque.
MIDi: Material Identification number for membrane, bending, transvers shear.
Selon la valeur des paramètres MID1, MID2, MID3 l’élément présente une rigidité aux
efforts de membrane, aux efforts de flexion avec ou sans cisaillement transverse.
PSHELL

PID

MID1

T

+A1

Z1

Z2

MID4

MID2

RI

RS

MID3

NSM

+A1

RI: rapport du moment quadratique réel I sur T3/12 (défaut:1)
RS: rapport de l’épaisseur effective en cisaillement sur T (défaut:5/6)
z
y
x

z

MID1
Fxy

z

MID2

y
x

Fy

My

y
x

Mxy

Fxy

Mx

Fx

Mxy

T

T

Qy

Qx

T

I=

Ta

Ta

Tb

Tb

T = Ta + Tb

MID3

I=

T3
12

RS=5/6

RI=1

ha
hb

Ta 3 Tb3
2
2
+ Ta ha + Tbhb
+
12 12

20

RS=TS/T

M.E.F.

M SUDRE

CQUAD4 définit un élément plaque quadrangulaire.

CQUAD4

EID

+A1

PID

G1

G2

G3

G4

T1

T2

T3

T4

THETA
(MCID) ZOFFS

+A1

EID:
PID:
Gi:
THETA:
MCID:
ZOFFS:
Ti:

Exercice 3:
Soit une plaque encastrée de dimensions 100 mm x 100 mm, modélisée par un élément
QUAD4, chargée par un effort de membrane de 10 000 N et par un effort transverse
de 100 N.
z

4
100 N

1

3

5.

10 000 N

100 N
100.

2

100.

10 000 N
matériau: E=70 000 MPa / nu=.3

1° question:
Ecrire le fichier *.bdf en demandant le calcul des déplacements, contraintes et forces.

21

M.E.F.

M SUDRE

2° question:
Retrouver par le calcul une partie des résultats fournis par le fichier *.f06:
Déplacements:
POINT

ID.

TYPE

1

G

2

G

3

G

4

G

T1

D I S P L A C E M E N T
T2
T3

V E C T O R
R1

R2

R3

Contraintes:
ELEMENT
ID.
1

S T R E S S E S
I N
Q U A D R I L A T E R A L
E L E M E N T S
FIBER
STRESSES IN ELEMENT COORD SYSTEM
PRINCIPAL STRESSES (ZERO SHEAR)
DISTANCE
NORMAL-X
NORMAL-Y
SHEAR-XY
ANGLE
MAJOR
MINOR
-2.5E-3
2.5E-3

Forces:
F O R C E S
ELEMENT
ID.

I N
FX

Q U A D R I L A T E R A L
- MEMBRANE FORCES FY
FXY

1

22

E L E M E N T S
- BENDING MOMENTS MX
MY
MXY

M.E.F.

M SUDRE

Etude paramétrée sous PATRAN

1 Objectif.
Soit une plaque trouée de dimensions 100 mm x 200 mm, d’épaisseur 5 mm.
Elle est encastrée sur les bords inférieur et supérieur et soumise à une pression de matage p(Θ) à l’intérieur du trou.

200

Θ

zone2
zone1

p=200.sin(Θ) N/mm2

R2

R1

long

fonction: sinr()

100

larg

matériau: E=70 000 MPa / nu=.3

L’objectif est:
-de paramétrer la géométrie et le maillage grâce au langage pcl,
-de créer une fonction pour appliquer la pression de matage,
-de tester les possibilités de visualisation des résultats.
Le problème étant symétrique, il suffit de considérer la moitié de la plaque. La zone1
sera maillée en "isomesh", la zone2 en "paver". Des éléments ’rod ’ de section 0.01
mm2 seront installés en bord de trou.
Les paramètres dimensionnels sont:
-larg = 50 mm
-long = 200 mm
-R1 = 5 mm
-R2 = 10 mm
Les paramètres de maillage sont:
-nR = 20 (nombre d’éléments en bord de trou)
-ny = 5 (nombre d’éléments entre les 2 cercles)
-elem = 3 mm (taille des éléments en zone 2)

23

M.E.F.

M SUDRE

Pour paramétrer le problème, il faut créer le fichier p3prolog.pcl dans lequel sont
déclarées les variables:
global real larg=50.,long=200.,R1=5.,R2=10.
global real elem=3.
global integer nR=20,ny=5
Enregistrer ce fichier dans le répertoire dans lequel démarre Patran.

2 Paramétrage de la géométrie
Lancer l’enregistrement d’une session appelée "geo".
Créer le point de coordonnées [0. , -R1 , 0.] puis le cercle de rayon R1.

Avec la même méthode, créer le point [0. , -R2 , 0.] et le cercle de rayon R2.
Puis créer les points 5 à 8:

[0. , -long/2 , 0.]
[0. , long/2 , 0.]
[larg , -long/2 , 0.]
[larg , long/2 , 0.]

24

M.E.F.

M SUDRE

Créer les segments entre ces points.
Créer la frontière de la zone 2.
Créer la surface 1 en spécifiant les 2 cercles.

Créer la surface 2 en spécifiant la frontière comme outer loop.
Cliquer sur l’option de visualisation

Arréter l’enregistrement de la session "geo".
’Nettoyer’ le fichier "geo.ses" en supprimant les lignes qui correspondent à l’ouverture et à la fermeture du fichier ".db".

25

M.E.F.

M SUDRE

Pour modifier la géométrie:
- effacer la géométrie précédente,
- changer les paramètres dans la fenêtre Patran,
par exemple en tapant: long=50.
- rejouer le fichier "geo.ses"

fichier "geo.ses":
STRING asm_create_grid_xyz_created_ids[VIRTUAL]
STRING sgm_sweep_curve_rev_created_ids[VIRTUAL]
STRING asm_line_2point_created_ids[VIRTUAL]
STRING sgm_surface_2curve_created_ids[VIRTUAL]
STRING sgm_surface_trimmed__created_id[VIRTUAL]
STRING sgm_create_curve_ch_created_ids[VIRTUAL]
INTEGER sgm_create_curve_cha_segment_id
asm_const_grid_xyz( "1", "[0 `-R1` 0]", "Coord 0", @
asm_create_grid_xyz_created_ids )
asm_const_grid_xyz( "2", "[0 `-R2` 0]", "Coord 0", @
asm_create_grid_xyz_created_ids )
sgm_const_curve_revolve( "1", "Coord 0.3", 180., 0., "Coord 0", "Point 1", @
sgm_sweep_curve_rev_created_ids )
sgm_const_curve_revolve( "2", "Coord 0.3", 180., 0., "Coord 0", "Point 2", @
sgm_sweep_curve_rev_created_ids )
asm_const_grid_xyz( "5", "[0 `-long/2` 0]", "Coord 0", @
asm_create_grid_xyz_created_ids )
asm_const_grid_xyz( "6", "[0 `long/2` 0]", "Coord 0", @
asm_create_grid_xyz_created_ids )
asm_const_grid_xyz( "7", "[`larg` `-long/2` 0]", "Coord 0", @
asm_create_grid_xyz_created_ids )
asm_const_grid_xyz( "8", "[`larg` `long/2` 0]", "Coord 0", @
asm_create_grid_xyz_created_ids )
point_label( TRUE )
asm_const_line_2point( "3", "Point 3", "Point 4", 0, "", 50., 1, @
asm_line_2point_created_ids )
asm_const_line_2point( "4", "Point 4", "Point 6", 0, "", 50., 1, @
asm_line_2point_created_ids )
asm_const_line_2point( "5", "Point 6", "Point 8", 0, "", 50., 1, @
asm_line_2point_created_ids )
asm_const_line_2point( "6", "Point 8", "Point 7", 0, "", 50., 1, @
asm_line_2point_created_ids )
asm_const_line_2point( "7", "Point 7", "Point 5", 0, "", 50., 1, @
asm_line_2point_created_ids )
asm_const_line_2point( "8", "Point 5", "Point 2", 0, "", 50., 1, @
asm_line_2point_created_ids )
asm_const_line_2point( "9", "Point 2", "Point 1", 0, "", 50., 1, @
asm_line_2point_created_ids )
sgm_const_surface_2curve( "1", "Curve 1", "Curve 2", @
sgm_surface_2curve_created_ids )
surface_label( TRUE )
trim_surface_label( TRUE )
sgm_create_curve_chain_v1( "10", "Curve 2 8:4:-1", TRUE, @
sgm_create_curve_cha_segment_id, sgm_create_curve_ch_created_ids )
sgm_create_surface_trimmed_v1( "2", "Curve 10", "", "", TRUE, TRUE, TRUE, @
TRUE, sgm_surface_trimmed__created_id )
ga_display_lines_set( "general", 2 )

26

M.E.F.

M SUDRE

3 Paramétrage du maillage
Lancer l’enregistrement d’une session appelée "mesh".
Définir un ’Mesh Seed’ sur les arcs de cercle (nR) et sur le segment entre les 2 cercles (ny).

Mailler la zone 1 en ’isomesh’.
Mailler la zone 2 en ’paver’ en spécifiant le ’global lenght’ (elem).
Mailler le bord du trou en éléments 1D.

27

M.E.F.

M SUDRE

Arréter l’enregistrement de la session "mesh".
’Nettoyer’ le fichier "mesh.ses" en supprimant les lignes qui correspondent à
l’ouverture et à la fermeture du fichier ".db".
Pour modifier le maillage:
- effacer l’ancien maillage,
- changer les paramètres dans la fenêtre Patran,
par exemple en tapant: nR=10
- rejouer le fichier "mesh.ses"
fichier "mesh.ses":
INTEGER fem_create_mesh_surfa_num_nodes
INTEGER fem_create_mesh_surfa_num_elems
INTEGER fem_create_mesh_curve_num_nodes
INTEGER fem_create_mesh_curve_num_elems
INTEGER fem_equiv_all_x_segment
STRING fem_create_mesh_s_nodes_created[VIRTUAL]
STRING fem_create_mesh_s_elems_created[VIRTUAL]
STRING fem_create_mesh_c_nodes_created[VIRTUAL]
STRING fem_create_mesh_c_elems_created[VIRTUAL]
REAL fem_equiv_all_x_equivtol_ab
ui_exec_function( "mesh_seed_display_mgr", "init" )
mesh_seed_create( "Curve 1", 1, `nR`, 0., 0., 0. )
mesh_seed_create( "Curve 1 Surface 1.2", 1, `nR`, 0., 0., 0. )
mesh_seed_create( "Curve 3 9", 1, `ny`, 0., 0., 0. )
fem_create_mesh_surf_4( "IsoMesh", 49152, "Surface 1", 1, ["1.64988"], "Quad4" @
, "#", "#", "Coord 0", "Coord 0", fem_create_mesh_surfa_num_nodes, @
fem_create_mesh_surfa_num_elems, fem_create_mesh_s_nodes_created, @
fem_create_mesh_s_elems_created )
fem_create_mesh_surf_4( "Paver", 49680, "Surface 2", 4, ["`elem`", "0.1", @
"0.2", "1.0"], "Quad4", "#", "#", "Coord 0", "Coord 0", @
fem_create_mesh_surfa_num_nodes, fem_create_mesh_surfa_num_elems, @
fem_create_mesh_s_nodes_created, fem_create_mesh_s_elems_created )
fem_create_mesh_curv_1( "Curve 1", 16384, 1.5707999, "Bar2", "#", "#", @
"Coord 0", "Coord 0", fem_create_mesh_curve_num_nodes, @
fem_create_mesh_curve_num_elems, fem_create_mesh_c_nodes_created, @
fem_create_mesh_c_elems_created )
fem_equiv_all_group4( [" "], 0, "", 1, 1, 0.0049999999, FALSE, @
fem_equiv_all_x_equivtol_ab, fem_equiv_all_x_segment )

28

M.E.F.

M SUDRE

4 Application de la pression de matage
Créer un repère cylindrique.
Pour créer la fonction "matage", cliquer sur le bouton:

.

Créer et appliquer la pression sur les bords des éléments QUAD4.

29

M.E.F.

M SUDRE

5 Création de graphe dans Excel à partir des résultats
En utilisant Excel, tracer en fonction de Θ:
-les variations de σr et σθ mesurées dans les quadrangles bordant le trou.
-la variation de

σθ mesurée dans les rods bordant le trou.

contrainte (MPa)

Θ(°)

Tracer le graphe dans Patran puis cliquer sur le bouton:
Générer le fichier xyd qui sera importé dans Excel.

30

M.E.F.

M SUDRE

Model validity
Checks
1 Etude modale ’structure libre’.
La structure étant libre, on exécute une sol103 et on vérifie la présence de 6 modes
rigides (frequences inférieures ou égales à 1.0E-04 Hz)

2 Application d’un chargement thermique.
On modifie les matériaux pour qu’ils aient les mêmes caractéristiques (en particulier α
le coefficient de dilatation thermique) et on vérifie qu’une variation de température
n’entraîne pas de contrainte dans la structure pour un cas de liaison isostatique.

3 Déplacements et rotations unitaires imposés.
La structure étant libre, on impose un déplacement unitaire dans une direction (les 5
autres à 0.0) à 1 noeud généralement placé près du centre de gravité.
Le modèle doit se déplacer comme un corps rigide (en translation d’une unité ou en
rotation d’un radian)
La vérification doit être effectuée pour les 3 translations et les 3 rotations.
En translation, on doit vérifier un résultat de 1.0 dans la direction imposée et 0.0 dans
les 5 autres directions pour tous les noeuds.
En rotation, on doit vérifier un résultat de 1.0 dans la direction imposée et 0.0 pour les
2 autres directions. Les translations n’étant pas nulles.

4 Application de la gravité dans les 3 directions.
On applique une accélération de 9.81 ms-2 successivement dans les 3 directions. On
vérifie que le calcul conduit à un calcul correct des actions de liaison. La somme doit
être égale au poids de la structure dans la direction du chargement, 0.0 dans les 2
autres directions.

5 Calcul de la masse.
Dans le BULK, ajouter la carte:
PARAM,GRDPNT,1234
numéro du noeud
où sont calculés
les moments d’inertie

31

M.E.F.

M SUDRE

6 Mesh Check.
Cette vérification concerne le maillage.

L’option FEM Shrink permet de visualiser des éléments manquants.

?

L’option Show Only Free Edges permet de visualiser si les condensations (équivalence)
sont bien réalisées.

avant "equivalence"

après "equivalence"

32

M.E.F.

M SUDRE

7 Geometry Check.
Cette vérification concerne la forme des éléments Quad:

Aspect Ratio:

Warp Angle:

a
b

h
a
un message si

b
>5
a

un message si

h
> 5%
a

Taper:

Skew Angle:

4

3
A1

α
1

A2

2

A3

un message si 2.Amini < 0.5

un message si α<30°

Aire

33

A4

M.E.F.

M SUDRE

8 Vérification du résultat.
Après résolution du système:

[K].{U} = {F}
le terme: {δF} = {F} - [K].{U}

devrait être nul.

En pratique, il ne l’est pas et on calcule

ε=

ε par la formule:

{U}t.{δF}
{U}t.{F}

ε est proche de 0. et indique "l’erreur de résolution".
On trouve

ε dans le fichier f06 et il doit être systématiquement vérifié:

Une valeur inférieure à 10-9 est acceptable.

34

M.E.F.

M SUDRE

Méthode d’intégration de GAUSS

1 Méthode de Newton
Soit par exemple à calculer:

1

∫ f ( x ) dx
–1

f(x)

-1

1

x

Idée: considérons 4 points P1, P2, P3, P4 uniformément distribués. La fonction f(x)
prend respectivement en ces points les valeurs f1 , f2, f3, f4.
f(x)

f2

f4
f3

f1

P3

P2

P1

P4

x

Par ces 4 points, il est possible de faire passer un polynome de °3:

a0 + a1 ⋅ x1 + a2 ⋅ x2 + a3 ⋅ x3
1

et de calculer

f ( x ) dx de façon approchée par:

–1
1

∫ ( a + a ⋅ x + a ⋅ x + a ⋅ x ) dx
1

0

1

2

3

2

3

–1

35

2
= 2 ⋅ a 0 + --- ⋅ a 2
3

M.E.F.

M SUDRE

2 Méthode de Gauss
Idée: considérons 2 points P1, P2 distribués symétriquement, leur position étant repérée par λ.
La fonction f(x) prend la valeur f1 en P1 et la valeur f2 en P2 .
Les 2 points P1 et P2 sont nommés points de GAUSS.
f(x)

f1

f2

λ

λ

x

P2

P1

Faisons passer par ces 2 points un polynome de °3 du type:

a0 + a1 ⋅ x1 + a2 ⋅ x2 + a3 ⋅ x3
f1 + f2

Il vient:
Or

1

= 2 ⋅ ( a0 + a2 ⋅ λ ) .
2

∫ ( a + a ⋅ x + a ⋅ x + a ⋅ x ) dx
1

0

1

2

3

2

3

–1

Donc, il suffit de poser
forme:

λ

1
= ------- pour obtenir:
3

1

1

1
= 2 ⋅  a 0 + --- ⋅ a 2


3

f ( x ) dx de façon approchée sous la

–1

1
1
- + f  -------
f ( x ) dx ≈ f 1 + f 2 = f  – -----

3
3
–1

36

M.E.F.

M SUDRE

Postprocessing
1 Présentation d’un tracé ’Fringe’.

C’est un tracé pour lequel une zone de couleur représente un niveau de valeur du
résultat représenté.

2 Sélection des résultats

.

Sélectionner le subcase.
Sélectionner le résultat à tracer.

3 Sélection des éléments cibles

.

Current Viewport: par défaut, tous les éléments du modèle qui sont affichés à l’écran
sont concernés.
sinon:
Elements: sélectionner des éléments.
Groups: sélectionner un ou des groupes contenant des éléments.
Materials: sélectionner des éléments par le matériau associé.
Properties: sélectionner des éléments par la propriété associée.
Element Types: sélectionner des éléments par leur type.
Free Faces: par défaut, seules les faces libres sont concernées.
Faces: toutes les faces des éléments sélectionnés sont concernées.
Free Edges: seuls les bords libres sont concernés.
Edges: tous les bords sont concernés.

4 Options d’affichage

.

Spectrum: permet de choisir ou de créer un spectre de couleurs.
Style: 4 types de styles sont disponibles:
Discrete/Smooth (par défaut)
bandes de couleurs distinctes.
Continuous
lissage des couleurs
Element Fill
une couleur par élément
Discrete/Flat similaire à Discrete/Smooth

37

M.E.F.
5 Options de tracé

M SUDRE

.

Coordinate Transformation:
Les composantes de vecteurs (déplacements) ou de tenseurs (contraintes)
à afficher peuvent être exprimées dans différents repères.
L’option par defaut ’As Is’ correspond aux repères locaux des éléments (comme dans
le fichier f06). L’option ’CID’ permet de choisir n’importe quel repère créé par l’utilisateur.
Scale Factor:
Permet d’appliquer un coefficient multiplicateur aux résultats affichés.
Filter Values:
Permet de filtrer les valeurs inférieures ou supérieures à un certain seuil ou
bien comprises dans un intervalle donné.
Averaging Domain:
Cette option concerne les résultats "Eléments" qui doivent être affichés aux
noeuds. Plusieurs valeurs se trouvent attachées à un même noeud et il faut choisir
une option pour moyenner ces quantités.
Par défaut toutes les valeurs affectées au noeud sont moyennées. Mais il est possible
de se limiter uniquement aux éléments qui partagent le même matériau, la même
propriété ou le même type.
Averaging Method:
Lorsque des résultats ne sont pas directement les composantes de vecteurs
(déplacements) ou de tenseurs (contraintes) mais proviennent d’un calcul à partir de
ces composantes, le résultat peut varier si:
-on calcule d’abord puis on moyenne ensuite,
-on moyenne d’abord puis on clalcule ensuite.
L’utilisateur doit décider de la formule qui lui semble la plus juste.
Extrapolation Method:
Les résultats qui doivent être affectés aux noeuds sont parfois connus aux
points d’intégration. Il existe différentes méthodes pour extrapoler ces valeurs des
points de Gauss vers les noeuds.
-Shape Function: la fonction de forme utilisée pour l’intégration sert à
effectuer l’extrapolation aux noeuds,
-Average: la moyenne aux points de Gauss est calculée et affectée à
chaque noeud,
-Centroid: le résultat calculé au centre de l’élément est affecté à chaque
noeud.

6 Options d’animation

.

Une animation peut aider à la compréhension du comportement de la structure.
Deux aspects sont à considérer: la création de l’animation et son contrôle
une fois que les images ont été créées.
Dans la plupart des cas, les options par défaut sont suffisantes.
38

M.E.F.

M SUDRE

projet PATRAN-NASTRAN

1 Définition de l’étude et données du problème.
Le projet porte sur la modélisation de la voilure d’un drone (Unmanned Aerial Vehicle).

Cette voilure a fait l’objet d’un essai dynamique suivant Z (balayage en fréquence):

Z
Y
X

3 modes ont été obtenus pour des fréquences de 14.75 Hz, 66.75 Hz et 93.25 Hz.

Le but est de retrouver ces résultats par une modélisation PATRAN-NASTRAN.
39

M.E.F.

M SUDRE

La structure étudiée est la suivante:

root section

Main spar

Rib

1500.

Secondary spar
175.

Position des 7 nervures (ribs):

Y

X

Matériaux:

40

250.

250.
rib7

200.
rib6

175.
rib5

150.
rib4

175.
rib3

150.
rib2

150.
rib1

root section

150.

M.E.F.

M SUDRE

Géométrie:
Rib

123.8

45.33

39.70

52.50

58.32

86.30
R10.0

172.6

198.8
2.4

2.4

Rib + Connectors

8.

6.
18.
6.

24.
8.
20.

20.

20.

Spar

Connector

Propriétés:

41

20.

M.E.F.

M SUDRE

Une maille de base est fournie (rib0.bdf). Elle comprend:
-la nervure (Rib)
-les connecteurs
-deux tronçons d’âmes de longerons (Spar web) de 2x30 mm.
30.

Corner connectors

Rib trailing edge

30.

Main spar web

Secondary spar web

Rib leading edge

Les rivets sont représentés par des RBE2:

axe du rivet
noeuds dépendants

noeud indépendant

-Les noeuds indépendants appartiennent à la nervure ou aux âmes des longerons.
-Les noeuds dépendants appartiennent aux connecteurs.

42

M.E.F.

M SUDRE

Ce fichier bdf contient:
Rib: 239 éléments.
épaisseur: 0.8 mm
matériau: 2024
Connectors: 128 éléments.
épaisseur: 1.65 mm
matériau: 7075
Spar webs: 72 éléments.
épaisseur: 2.4 mm
matériau: 7075
Rivets: 16 RBE2.

Cette nervure sera désignée ’rib0’

2 Génération d’un fichier bdf contenant 7 nervures complètes.

Les nervures (rib1 à rib7) seront dupliquées à partir de la nervure rib0 par la commande Group/Transform/Translate.

43

250

250
rib7

200
rib6

175
rib5

150
rib4

175
rib3

150
rib2

150
rib1

rib0

150

M.E.F.

M SUDRE

Créer rib1 à rib7.
Lancer ’Analyze Entire Model’ pour
créer le bdf.

3 Génération de la structure Ribs + Spars + Connectors.
175

root section

150

1
150

2
150

3

175

4
150

5

c
se

d
on

y
ar

ar
sp

m

ain

b
we

sp

b
we
r
a

6

7

175
200

250

250

44

M.E.F.

M SUDRE

Récupérer le bdf contenant toutes les nervures.
Effacer la nervure rib0.
Réduire les nervures 3-4-7.
Détruire les connecteurs et modifier les RBE2 sur les nervures 3-4-7.
Générer les surfaces correspondant aux âmes des 2 longerons puis mailler.
Générer les surfaces correspondant aux semelles des 2 longerons puis mailler.

4 Modélisation de la peau.
Définir le profil de la voilure (profil.bdf) à partir d’éléments rods reliant les noeuds du
contour de la rib0 puis générer la peau par la commande ’Sweep’.
Respecter la concordance des noeuds entre longerons et peau suivant x.
La peau et des longerons seront liés par des RBE2 (pour simuler le collage).

RBE2
RBE2

2 méthodes sont proposées:
- utiliser l’option "RBE2 coupling" du menu "Utilities"
- générer les cartes dans Excel après avoir récupéré les N° des noeuds à coupler.
Prévoir 500g par m2 de masse additionnelle (vernis et colle)

45

M.E.F.

M SUDRE

5 Création des RBE2 dans les sections extrêmes.
Root.

Tip.

noeud maître
centre de gravité du ’Tip’
[1520. -175. 0]

170g

6 Fixation des longerons au bâti par 8 vis (blocage des noeuds).

root section

30.
60.

30.

7 Calcul.
Caractériser les premiers modes et comparer les résultats obtenus avec les valeurs expérimentales. Exécuter des sol108 et sol111. Conclusions.

46

M.E.F.

M SUDRE

Annexes

Exemple de programme en DMAP:
SOL MONPROG $
COMPILE MONPROG $
SUBDMAP MONPROG $
TYPE PARM,,I,N,ICOUNT $
TYPE PARM,,RS,Y,A $
ICOUNT=1 $
A=0. $
DO WHILE (ICOUNT<10) $
A=A+0.1 $
MESSAGE //'La valeur de A est : '/A $
ICOUNT=ICOUNT+1 $
ENDDO $
END $
CEND
$
BEGIN BULK
ENDDATA

47