u4.33.01 Opérateur IMPR_FONCTION#
Syntaxe#
Détail de la syntaxe
IMPR_FONCTION(
◇ FORMAT = / "TABLEAU" (par défaut),
/ "AGRAF",
/ "XMGRACE",
/ "LISS_ENVELOP",
# Si: equal_to("FORMAT", 'XMGRACE')
◇ PILOTE = / "" (par défaut),
/ "POSTSCRIPT",
/ "EPS",
/ "MIF",
/ "SVG",
/ "PNM",
/ "PNG",
/ "JPEG",
/ "PDF",
/ "INTERACTIF",
/ "INTERACTIF_BG",
◇ UNITE = unit (défaut: 29),
# Si: equal_to("FORMAT", 'AGRAF')
◇ UNITE = unit (défaut: 25),
◇ UNITE_DIGR = unit (défaut: 26),
# Si: not equal_to("FORMAT", 'LISS_ENVELOP')
◆ COURBE = _F(
◆ / FONCTION = formule / fonction_c / fonction / nappe,
/ LIST_RESU = listr8,
/ FONC_X = formule / fonction,
/ ABSCISSE = float,
# Si: exists("FONCTION")
◇ LIST_PARA = listr8,
# Si: is_type("FONCTION") in (fonction_c, formule_c)
◇ PARTIE = / "REEL",
/ "IMAG",
# Si: exists("LIST_RESU")
◆ LIST_PARA = listr8,
# Si: exists("FONC_X")
◆ FONC_Y = formule / fonction,
◇ LIST_PARA = listr8,
# Si: exists("ABSCISSE")
◆ ORDONNEE = float,
◇ LEGENDE = text,
◇ STYLE = int,
◇ COULEUR = int,
◇ MARQUEUR = int,
◇ FREQ_MARQUEUR = int,
◇ TRI = / "N" (par défaut),
/ "X",
/ "Y",
/ "XY",
/ "YX",
),
# Si: equal_to("FORMAT", 'LISS_ENVELOP')
◆ COURBE = _F(
◆ / NAPPE = nappe,
/ NAPPE_LISSEE = nappe,
),
# Si: equal_to("FORMAT", 'TABLEAU')
◇ UNITE = unit (défaut: 8),
◇ TITRE = text,
◇ SOUS_TITRE = text,
◇ SEPARATEUR = text (défaut: " "),
◇ COMMENTAIRE = text (défaut: "#"),
◇ COMM_PARA = text,
◇ DEBUT_LIGNE = text,
◇ FIN_LIGNE = text (défaut: "
"),
◇ FORMAT_R = text (défaut: "E12.5"),
# Si: not equal_to("FORMAT", 'TABLEAU')
◇ TITRE = text,
◇ SOUS_TITRE = text,
◇ BORNE_X = float,
◇ BORNE_Y = float,
◇ ECHELLE_X = / "LIN" (par défaut),
/ "LOG",
◇ ECHELLE_Y = / "LIN" (par défaut),
/ "LOG",
◇ GRILLE_X = float,
◇ GRILLE_Y = float,
◇ LEGENDE_X = text,
◇ LEGENDE_Y = text,
# Si: equal_to("FORMAT", 'LISS_ENVELOP')
◇ UNITE = unit (défaut: 25),
◇ INFO = / 1 (par défaut),
/ 2,
)
◆ : obligatoire
◇ : optionnel
⟐ : présent par défaut
& : ensemble
/ : un seul parmi
| : plusieurs choix possibles
Opérandes#
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.
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é PILOTEpermet de produire directement un fichier image ou postscript. |
“LISS_ENVELOP” |
impression destinée aux spectresissus de CALC_FONCTION/LISS_ENVELOP. Les courbes sont tracées grâce aux librairies python Matplotlib disponiblesdans la distribution Salomé-Méca. |
Remarque
Le format XMGRACE est destiné aux versions 5 de grace et n’est pas compatible avec grace6 (version 5.99).
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 .agrou .datde xmgrace(fichier contenant les données et les directives du graphique. |
“POSTSCRIPT”, “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. |
“INTERACTIF_BG” |
: |
Comme INTERACTIFmais xmgraceest lancé en arrière plan, le calcul se poursuit. |
Mise en page du graphique commun à XMGRACE, AGRAF et LISS_ENVELOP#
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é.
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.
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.
Opérandes GRILLE_X/GRILLE_Y#
◊ GRILLE_X= nx
Pour xmgrace, nx 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.
Mise en page au format TABLEAU#
Voir IMPR_TABLE [U4.91.03] pour la description des mots-clés de mise en forme (DEBUT_LIGNE, COMMENTAIRE…).
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.
Mots clés communs à tous les formats#
◊ TITRE
◊ SOUS_TITRE
Permettent de définir les titres principaux et secondaires du graphique ou du tableau.
Si FORMAT=LISS_ENVELOP alors les titres et sous-titres sont utilisés pour renseigner les cartouches du graphique. Le sous-titre doit respecter la nomenclature«Etage, Précisions» pour que les deux cases soient correctement remplies. Si le sous-titre contient plus d’une virgule, les éléments contenus après la deuxième virgule ne seront pas pris en compte dans le cartouche.
Remarque
La valeur du TITRE stockée par certaines commandes (exemple RECU_FONCTION ) dans les objets fonctions n’est pas utilisée par IMPR_FONCTION .
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).
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 freqmarq points de discrétisation de la fonction, un marqueur est imprimé (par défaut tous les points).
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,
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.
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 “TABLEAU”).
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.
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.
Opérande UNITE#
◊ UNITE= unit ◊ UNITE_DIGR = unit_digr si FORMAT = “AGRAF”
Permettent de choisir sur quelle unité logique on imprime les fonctions.
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,
25 au format AGRAF,
29 au format XMGRACE (facultatif si PILOTE = “INTERACTIF/_BG”),
25 au format LISS_ENVELOP.
Tracé d’une nappe ou d’une nappe lissée#
/ ♦ NAPPE= nappe
Nom de la nappe brute à tracer. Le tracé sera réalisé en tirets.
♦ NAPPE_LISSEE= nappe
Nom de la nappe lissée à tracer. Le tracé sera réalisé en trait plein.
Les valeurs de la nappe lissée seront renseignées dans un tableau sous la courbe. Si plusieurs nappes lissées sont fournies, la dernière renseignée sera prise en compte pour le tableau.
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 nœud 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.
Exemples#
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 »,
)
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 .
Nappe et Nappe lissée#
On obtient ainsi un fichier .png suivant.