Code_Aster ®
Version
8.2

Titre :

Opérateur IMPR_FONCTION


Date :
22/02/06
Auteur(s) :
M. COURTOIS Clé
:
U4.33.01-G1 Page :
1/10

Organisme(s) : EDF-R&D/AMA















Manuel d'Utilisation
Fascicule U4.3- : Fonction
Document : U4.33.01





Opérateur IMPR_FONCTION










1 But

Imprimer le contenu d'objets de type fonction ou liste de réels dans un fichier destiné à un traceur de
courbes.

Remplace, avec IMPR_TABLE, l'ancienne procédure IMPR_COURBE.

Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur IMPR_FONCTION


Date :
22/02/06
Auteur(s) :
M. COURTOIS Clé
:
U4.33.01-G1 Page :
2/10


2 Syntaxe

IMPR_FONCTION
(
FORMAT =

/ 'TABLEAU',

/
'XMGRACE',


/
'AGRAF',

# Définition de l'unité logique au format AGRAF




UNITE
= /
unit,
[I]
/
25,
[DEFAUT]



UNITE_DIGR
=
/
unit_digr, [I]
/
26,
[DEFAUT]

# Définition de l'unité logique au format XMGRACE et du pilote d'impression



UNITE
= /
unit,
[I]
/
29,
[DEFAUT]


PILOTE
= / ",
[DEFAUT]
/
'POSTSCRIPT',
[Kn]
/
'EPS',
/
'MIF',
/
'SVG',
/
'PNM',
/
'PNG',
/
'JPEG',
/
'PDF',
/
'INTERACTIF',

# Définition de l'unité logique au format TABLEAU




UNITE
= /
unit,
[I]
/
8,
[DEFAUT]

# Mise en page graphique commune à XMGRACE et AGRAF










BORNE_X = ( xmin , xmax ), [l_R]









BORNE_Y = ( ymin , ymax ), [l_R]










ECHELLE_X
=
/
'LIN',
[DEFAUT]













/ 'LOG',










ECHELLE_Y
=
/
'LIN',
[DEFAUT]













/ 'LOG',










GRILLE_X

=
/
0,
[DEFAUT]













/
nx, [R]









GRILLE_Y

=
/
0,
[DEFAUT]













/
ny,




[R]










LEGENDE_X
=
xlegen
,
[Kn]









LEGENDE_Y
=
ylegen
,
[Kn]

# Mise en page du tableau



SEPARATEUR
=
/
separ,
[DEFAUT]
/
'

',
[Kn]


COMMENTAIRE
=
/
com, [Kn]
/
'#', [DEFAUT]


DEBUT_LIGNE
=
/
deb, [Kn]








/ ",
[DEFAUT]


FIN_LIGNE
=
/
fin, [Kn]
/
'\n',
[DEFAUT]
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur IMPR_FONCTION


Date :
22/02/06
Auteur(s) :
M. COURTOIS Clé
:
U4.33.01-G1 Page :
3/10


# Définition de la fonction à tracer







COURBE = _F(

# Mise en forme de la fonction aux formats XMGRACE et AGRAF










LEGENDE = legende,



[Kn]










STYLE
= sty, [I]










COULEUR
=
coul,
[I]










MARQUEUR
= marq,
[I]










FREQ_MARQUEUR
=
freqmarq,
[I]

# Récupération de la fonction à tracer









/
FONCTION =
fr, [fonction]











LIST_PARA = lpara,

[listr8]










/
FONCTION =
fc, [fonction_C]











PARTIE = / 'REEL',





/
'IMAG',











LIST_PARA = lpara,

[listr8]










/
FONC_X = fx, [fonction]










FONC_Y = fy, [fonction]











LIST_PARA
=
lpara,
[listr8]










/
LIST_PARA
=
lpara,
[listr8]










LIST_RESU
=
lresu,
[listr8]










/
ABSCISSE = labs,

[l_R]










ORDONNEE = lordo,

[l_R]

# Tri éventuel










TRI = / 'N' ,
[DEFAUT]










/
'X',










/
'Y',










/
'XY',










/
'YX',

# Communs à tous les formats



TITRE
=
titre,
[Kn]
SOUS_TITRE =
sous_titre,
[Kn]
INFO =
/
1,







/ 2,










),




)


Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur IMPR_FONCTION


Date :
22/02/06
Auteur(s) :
M. COURTOIS Clé
:
U4.33.01-G1 Page :
4/10


3 Opérandes

3.1
Présentation des courbes

Un ensemble d'opérandes facultatifs permet de définir la présentation de la courbe. Tous ont une
valeur par défaut.

3.1.1 Opérande
FORMAT


FORMAT =

Format d'impression de la fonction

'AGRAF'
impression destinée au logiciel agraf, qui permet aussi d'adapter les

paramètres de présentation en interactif,
'TABLEAU'
l'impression en colonnes permet d'importer facilement les données dans un

tableur, si l'on donne plusieurs courbes, c'est la liste des abscisses de la
première fonction qui est utilisée pour interpoler les valeurs des autres
fonctions,
'XMGRACE'
impression destinée au logiciel xmgrace. On peut aussi adapter les
paramètres de présentation en interactif. L'utilisation du mot clé PILOTE
permet de produire directement un fichier image ou postscript.

3.1.2 Opérande
UNITE


UNITE = unit

UNITE_DIGR = unit_digr si FORMAT = 'AGRAF'

Permettent de choisir sur quelle unité logique on imprime les fonctions. La valeur de unit
doit être la même que dans l'interface astk.

Si l'on trace de nombreuses courbes, il est plus souple d'utiliser le type repe combiné à la
commande DEFI_FICHIER, les fichiers seront dans le répertoire ./REPE_OUT.

Au format AGRAF, les données sont écrites dans UNITE alors que les directives sont écrites
dans UNITE_DIGR (vaut 26 par défaut).

La valeur par défaut de unit vaut :

· 8 au format TABLEAU (correspond au fichier résultat),
· 25 au format AGRAF,
· 29 au format XMGRACE (facultatif si PILOTE = 'INTERACTIF')

3.1.3 Opérande
PILOTE

En choisissant FORMAT = 'XMGRACE', on dispose des pilotes de sortie utilisés par xmgrace en
utilisant le mot clé PILOTE. Ceci revient à utiliser les fonctions d'export de xmgrace via son menu
"File/Print Setup ...".
La liste exacte des pilotes disponibles sur votre serveur est fournie par l'option "-version" de xmgrace.

Valeurs possibles de PILOTE :

· "
: dans ce cas, aucun pilote n'est utilisé, le fichier obtenu est
le .agr ou .dat de xmgrace (fichier contenant les
données et les directives du graphique),
· 'POSTSCRITP', 'EPS'
: fichier postscript pleine-page ou encapsulé,
· 'PNG', 'JPEG', 'PNM'
: fichier de type image,
· 'PDF', 'MIF', 'SVG'
: formats
particuliers,
· 'INTERACTIF'
: aucun fichier n'est retourné si l'on peut ouvrir xmgrace à
l'écran.

NB : 'JPEG' et 'PDF' ne sont pas disponibles sur le serveur de calcul EDF (clayastr).
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur IMPR_FONCTION


Date :
22/02/06
Auteur(s) :
M. COURTOIS Clé
:
U4.33.01-G1 Page :
5/10


3.1.4 Mise en page du graphique commun à XMGRACE et AGRAF

3.1.4.1 Opérandes
BORNE_X / BORNE_Y


BORNE_X =

Tracé de la fonction dans un intervalle des abscisses donné.


BORNE_Y =

Tracé de la fonction dans un intervalle des ordonnées donné.

3.1.4.2 Opérandes
ECHELLE_X / ECHELLE_Y


ECHELLE_X =

Type d'échelle souhaitée pour les abscisses, LINéaire ou LOGarithmique.


ECHELLE_Y =

Type d'échelle souhaitée pour les ordonnées, LINéaire ou LOGarithmique.

3.1.4.3 Opérandes

LEGENDE_X / LEGENDE_Y


LEGENDE_X =

Légende associée à l'axe des abscisses.


LEGENDE_Y =

Légende associée à l'axe des ordonnées.

3.1.4.4 Opérandes

GRILLE_X / GRILLE_Y


GRILLE_X = nx

Pour xmgrace, noc est la distance entre deux lignes successives verticales de la grille.
Pour agraf, nx est l'entier définissant la fréquence de tracé de ces lignes.


GRILLE_Y = ny

Même chose pour les lignes horizontales de la grille.

3.1.5 Mise en page au format TABLEAU

On peut définir ici l'appartenance du tableau imprimé : d'un classique tableau en colonnes à un format
compatible csv ou html ...

Remarque :

Les labels des colonnes sont suffixées par « _ + n° de colonne » (en commençant à 0) afin
d'éviter la répétition car les noms de colonnes doivent tous être différents.


SEPARATEUR = separ

Définit le séparateur utilisé entre deux colonnes (un espace par défaut).


COMMENTAIRE = com

Caractère inséré en début de ligne pour indiquer une ligne en commentaire (ou titre, # par défaut).


DEBUT_LIGNE = deb

Chaîne insérée au début de chaque ligne (vide par défaut).


FIN_LIGNE = fin

Chaîne insérée en fin de ligne ('\n' par défaut).
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur IMPR_FONCTION


Date :
22/02/06
Auteur(s) :
M. COURTOIS Clé
:
U4.33.01-G1 Page :
6/10


3.1.6 Mots clés communs à tous les formats


TITRE

SOUS_TITRE

Permettent de définir les titres principaux et secondaires du graphique ou du tableau.

3.2 Mot
clé
COURBE

COURBE

Mot clé facteur permettant d'imprimer les fonctions définies ou de tracer une ou plusieurs
fonctions dans le même graphique (une fonction par occurrence du mot clé facteur).

3.2.1 Attributs complémentaires pour le tracé de chaque fonction par les logiciels
xmgrace ou agraf



STYLE = sty

Ce mot-clé définit le style de trait de la courbe.

Pour xmgrace, la correspondance est la suivante :
0 pas de ligne 1 trait continu 2 pointillés
3 tirets courts 4 tirets longs
5, 6, 7, 8 tirets alternés pointillés

Pour agraf, les styles sont :
0 ligne
1 pointillés
2 point



MARQUEUR = marq

Ce mot-clé définit le type de marqueur ou symbole des points de la courbe.

Pour xmgrace :
0 pas de marqueur
1 cercle
2 carré
3 losange
4 triangle haut
5 triangle gauche
6 triangle bas 7 triangle droit 8 plus
9 croix
10
étoile


Pour agraf, les marqueurs sont :
0 cercle
1 carré
2 plus
3 losange
4 cercle plein
5 carré plein
6 losange plein 7 cercle+croix 8 losange+croix



COULEUR = coul

Ce mot-clé définit la couleur de la courbe.

Pour xmgrace, les couleurs sont :
0 blanc
1 noir
2 rouge
3 vert
4 bleu
5 jaune
6 brun
7 gris
8 violet
9 cyan
10 magenta
11 orange
12 marron
13 indigo
14 turquoise
15
vert
foncé


Pour agraf, les couleurs sont :
0 noir
1 rouge
2 vert foncé
3 bleu
4 magenta
5 cyan
6 vert
7 marron
8 orange
9 mauve
10 jaune
11 marron clair





LEGENDE = legende

Légende donnée à la fonction (par défaut on récupère le nom de la fonction).



FREQ_MARQUEUR = freqmarq

Entier indiquant la fréquence d'impression du marqueur associé à une fonction. Tous les im
points de discrétisation de la fonction, un marqueur est imprimé (par défaut tous les points).
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur IMPR_FONCTION


Date :
22/02/06
Auteur(s) :
M. COURTOIS Clé
:
U4.33.01-G1 Page :
7/10


3.2.2 Attributs
supplémentaires
pour le tracé par le logiciel agraf



TRI = tr

Ce mot clé permet de trier par ordre croissant les paramètres définissant la fonction :

·
tr = `N', pas de tri,
·
tr = `X', tri des points de la fonction selon l'ordre croissant des abscisses x,
·
tr = `Y', tri des points de la fonction selon l'ordre croissant des ordonnées y,
·
tr = `XY', tri des points de la fonction selon l'ordre croissant des abscisses x et en
cas d'égalité suivant l'ordre croissant des ordonnées,
·
tr = `YX', tri des points de la fonction selon l'ordre croissant des ordonnées y et en
cas d'égalité suivant l'ordre croissant des abscisses,

3.2.3 Impression ou tracé d'une fonction réelle

/
FONCTION = fr

Nom de la fonction réelle à imprimer ou à tracer.



LIST_PARA = lr

Impression ou tracé de la fonction suivant la liste des paramètres donnés.

3.2.4 Impression ou tracé d'une fonction complexe

On trace soit la partie réelle, soit la partie imaginaire. Si on veut tracer la partie réelle et la partie
imaginaire dans le même graphique, il faut répéter le mot clé facteur COURBE.

/
FONCTION = fc

Nom de la fonction complexe à imprimer ou à tracer.



PARTIE =

Impression ou tracé de la partie REELle ou IMAGinaire.



LIST_PARA = lr

Impression ou tracé de la fonction suivant la liste des paramètres donnés.
Sans effet lors d'une impression en colonne (format 'EXCEL').

3.2.5 Impression ou tracé d'une fonction définie par 2 listes de réels

/
LIST_PARA = lpara

Nom de la liste des abscisses.


LIST_RESU = lresu

Nom de la liste des ordonnées.

Ou bien :

/
ABSCISSE = labs

Liste python des abscisses.


ORDONNEE = lordo

Liste python des ordonnées.
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur IMPR_FONCTION


Date :
22/02/06
Auteur(s) :
M. COURTOIS Clé
:
U4.33.01-G1 Page :
8/10


3.2.6 Impression ou tracé d'une fonction paramétrique

/
FONC_X = fx

Nom de la fonction paramétrique x = f(t) à imprimer ou à tracer.


FONC_Y = fy

Nom de la fonction paramétrique y = g(t) à imprimer ou à tracer.



LIST_PARA = lr

Impression ou tracé de la fonction suivant la liste des paramètres donnés.

3.2.7 Fonctionnalités qui existaient dans IMPR_COURBE

La mise en forme des graphiques à partir de table est désormais assurée par IMPR_TABLE.

Le tracé d'un resu_gene en un noeud de choc doit être fait en deux temps : récupérer une fonction
avec RECU_FONCTION, mot clé RESU_GENE, puis imprimer le graphique avec IMPR_FONCTION.
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A


Code_Aster ®
Version
8.2

Titre :

Opérateur IMPR_FONCTION


Date :
22/02/06
Auteur(s) :
M. COURTOIS Clé
:
U4.33.01-G1 Page :
9/10


4 Exemples

4.1
Courbe représentant une fonction complexe

fc = DEFI_FONCTION( NOM_PARA='INST', NOM_RESU='DX',
VALE_C=(0., 0., 0., 1., 2., 3.,
2., 3., 4., 3., 4., 5.,
4., 5., 6., 5., 6., 7. ),)

IMPR_FONCTION(
UNITE = 24,
FORMAT = 'XMGRACE',
PILOTE = 'POSTSCRIPT',
LEGENDE_X = 'Temps (s)',
LEGENDE_Y = 'DX (mm)',
COURBE = (
_F(FONCTION = fc,
PARTIE = 'REEL',
COULEUR = 4,
STYLE = 2,
MARQUEUR = 5,
LEGENDE = 'partie réelle',),
_F(FONCTION = fc,
PARTIE = 'IMAG',
COULEUR = 2,
STYLE = 5,
MARQUEUR = 8,
LEGENDE = 'partie imaginaire',),
),
TITRE = "Tracé d'une fonction complexe",
)



Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur IMPR_FONCTION


Date :
22/02/06
Auteur(s) :
M. COURTOIS Clé
:
U4.33.01-G1 Page :
10/10


4.2 Courbe
paramétrique

lt = DEFI_LIST_REEL(DEBUT = 0., INTERVALLE=_F(JUSQU_A=10., PAS=0.01),)

fx = FORMULE(NOM_PARA='t',
VALE="""2.*cos(t) - cos(2.*t)""",)
cardioX=CALC_FONC_INTERP(
FONCTION = fx,
LIST_PARA = lt,)

fy = FORMULE(NOM_PARA='t',
VALE="""2.*sin(t) - sin(2.*t)""",)
cardioY=CALC_FONC_INTERP(
FONCTION = fy,
LIST_PARA = lt,)

IMPR_FONCTION(
UNITE = 27,
FORMAT = 'XMGRACE',
TITRE = 'Cardioide',
COURBE = (
_F(FONC_X = cardioX,
FONC_Y = cardioY,),
),
)

On obtient ainsi un fichier que l'on peut visualiser dans xmgrace :

Mise en forme supplémentaire dans xmgrace : menu Plot/Graph appearance, type fixed (grille
carrée), et supprimer la légende en décochant la case Display legend.

Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A

Document Outline