[U4.32.01] Opérateur CALC_FONC_INTERP

[U4.32.01] Opérateur CALC_FONC_INTERP
Version
default
Code_Aster
Titre : Opérateur CALC_FONC_INTERP
Responsable : Mathieu COURTOIS
Date : 18/10/2011 Page : 1/6
Clé : U4.32.01
Révision : 7556
Opérateur CALC_FONC_INTERP
1
But
Construire un concept de type fonction ou fonction_c à partir d'une fonction FORMULE à 1 ou 2
variables. Peuvent être définies des fonctions réelles à variables réelles, des fonctions complexes à
variables réelles et des nappes.
On peut également produire une nouvelle fonction réelle ou complexe, ou une nappe en interpolant
une autre fonction de même type (réelle, complexe ou une nappe).
L'utilisation de CALC_FONC_INTERP permet une tabulation de la formule préalable au calcul. Son
utilisation est recommandée avant toute analyse transitoire et/ou non linéaire pour des raisons de
performances.
L’opérateur n’est pas réentrant, il produit une nouvelle fonction ou une nappe.
Manuel d'utilisation
Fascicule u4.32 : Tables et fonctions
Copyright 2015 EDF R&D - Document diffusé sous licence GNU FDL (http://www.gnu.org/copyleft/fdl.html)
Version
default
Code_Aster
Titre : Opérateur CALC_FONC_INTERP
Responsable : Mathieu COURTOIS
2
Date : 18/10/2011 Page : 2/6
Clé : U4.32.01
Révision : 7556
Syntaxe
fr [*] = CALC_FONC_INTERP
(
♦
FONCTION = f
◊
NOM_RESU =
◊
NOM_PARA =
♦
/
/
◊
PROL_DROITE =
◊
/
/
/
/
/
/'TOUTRESU'
/ nr
np,
VALE_PARA =
LIST_PARA =
PROL_GAUCHE =
/
/
/
[l_R]
[listr8]
/'CONSTANT',
/'LINEAIRE',
/'EXCLU'
,
[DEFAUT]
/'CONSTANT',
/'LINEAIRE',
/'EXCLU'
,
[DEFAUT]
INTERPOL =
◊
NOM_PARA_FONC = npf,
'LIN',
'LOG',
'NON',
♦
/
/
◊
PROL_DROITE_FONC =
◊
[DEFAUT]
[K8]
lvale ,
lpara ,
◊
◊
,
,
[DEFAUT]
[l_Kn]
VALE_PARA_FONC = lvalef,
LIST_PARA_FONC = lparaf,
PROL_GAUCHE_FONC =
INTERPOL_FONC =
◊
INFO =
/
/
◊
TITRE =
ti ,
[formule]
[formule_c]
[fonction]
[fonction_c]
[nappe]
[l_R]
[listr8]
/'CONSTANT',
/'LINEAIRE',
/'EXCLU'
,
[DEFAUT]
/'CONSTANT',
/'LINEAIRE',
/'EXCLU'
,
[DEFAUT]
/
/
/
'LIN',
'LOG',
'NON',
1,
2,
[DEFAUT]
[l_Kn]
[DEFAUT]
[l_Kn]
)
Si f est une formule à 1 paramètre,
formule à 2 paramètres,
formule_c à 1 paramètre,
nappe,
fonction,
Manuel d'utilisation
[*] = fonction,
nappe,
fonction_c,
nappe,
fonction,
Fascicule u4.32 : Tables et fonctions
Copyright 2015 EDF R&D - Document diffusé sous licence GNU FDL (http://www.gnu.org/copyleft/fdl.html)
Version
default
Code_Aster
Titre : Opérateur CALC_FONC_INTERP
Responsable : Mathieu COURTOIS
fonction_c,
Manuel d'utilisation
Date : 18/10/2011 Page : 3/6
Clé : U4.32.01
Révision : 7556
fonction_c.
Fascicule u4.32 : Tables et fonctions
Copyright 2015 EDF R&D - Document diffusé sous licence GNU FDL (http://www.gnu.org/copyleft/fdl.html)
Version
default
Code_Aster
Titre : Opérateur CALC_FONC_INTERP
Responsable : Mathieu COURTOIS
3
Opérandes
3.1
Opérande FONCTION
♦
Date : 18/10/2011 Page : 4/6
Clé : U4.32.01
Révision : 7556
FONCTION = f
Nom de la FORMULE (fonction interprétable (FORMULE Cf. [U4.31.05])).
Cette fonction peut être à une ou deux variables dans le cas des formules réelles, à une
variable seulement dans le cas des formules complexes.
On peut toutefois créer une nouvelle fonction (respectivement fonction_c, nappe) à partir d’une
fonction (respectivement fonction_c, nappe) en interpolant la première sur une liste de paramètres
différente. Cette possibilité est essentiellement utilisée dans les macro-commandes.
Quand le type en entrée est une formule et que NOM_PARA_FONC est fourni, la structure de donnée
produite est une nappe.
Remarque
Lors de l'interpolation d'une formule à deux paramètres, on vérifie la cohérence entre les
paramètres de la formule et les mots-clés NOM_PARA et NOM_PARA_FONC. Voir l'exemple du
paragraphe 4.2.
3.2
Opérande NOM_RESU
◊
NOM_RESU = nr
Désigne le nom du résultat, la fonction ainsi créée est une fonction dont la valeur est de
nom nr (8 caractères).
3.3
Opérande NOM_PARA
◊
NOM_PARA = nr
Désigne le nom du paramètre de la fonction ou de la nappe. Par défaut, le nom du paramètre
de la formule ou fonction fournie est employé.
3.4
Opérandes VALE_PARA/LIST_PARA
◊
/
VALE_PARA = lvale,
lvale est la liste des valeurs du paramètre.
/
LIST_PARA = lpara,
lpara est la liste des valeurs du paramètre : c'est un concept de type listr8 créé
précédemment par la commande DEFI_LIST_REEL [U4.34.01].
3.5
Opérandes PROL_DROITE et PROL_GAUCHE
◊
PROL_DROITE et PROL_GAUCHE =
Définissent le type de prolongement à droite (à gauche) du domaine de définition du
paramètre de la fonction ou de la nappe
'CONSTANT'
'LINEAIRE'
'EXCLU'
Manuel d'utilisation
pour un prolongement avec la dernière (ou première) valeur de la
fonction,
pour un prolongement le long du premier segment défini
(PROL_GAUCHE) ou du dernier segment défini (PROL_DROITE),
l'extrapolation des valeurs en dehors du domaine de définition du
paramètre est interdite (dans ce cas si un calcul demande une valeur
de la fonction hors du domaine de définition, le code s’arrêtera en
erreur fatale),
Fascicule u4.32 : Tables et fonctions
Copyright 2015 EDF R&D - Document diffusé sous licence GNU FDL (http://www.gnu.org/copyleft/fdl.html)
Version
default
Code_Aster
Titre : Opérateur CALC_FONC_INTERP
Responsable : Mathieu COURTOIS
3.6
Date : 18/10/2011 Page : 5/6
Clé : U4.32.01
Révision : 7556
Opérande INTERPOL
◊
INTERPOL =
Type d'interpolation de la fonction entre les valeurs de la variable ou type d’interpolation de
la nappe entre les valeurs du paramètre. Derrière ce mot clé on attend une liste de
paramètres (deux au maximum).
'LIN' :
'LOG' :
'NON' :
linéaire,
logarithmique,
on n'interpole pas (et donc le programme s'arrêtera si l'on demande la valeur
de la fonction pour une valeur du paramètre où elle n'a pas été définie).
Si une seule valeur est donnée, l'interpolation sera identique pour les abscisses et les
ordonnées. Si deux valeurs sont données, la première correspond à l'interpolation des
abscisses et la seconde à l'interpolation des ordonnées.
3.7
Opérande NOM_PARA_FONC
◊
NOM_PARA_FONC = nr
Désigne le nom de la variable des fonctions définissant la nappe. Quand le type en entrée
est une formule et que ce mot clé est renseigné, alors la structure de données produite est
une nappe.
3.8
Opérandes VALE_PARA_FONC/LIST_PARA_FONC
◊
/
VALE_PARA_FONC = lvale,
lvale est la liste des valeurs de la variable des fonctions définissant la nappe.
/
LIST_PARA_FONC = lpara,
lpara est la liste des valeurs de la variable des fonctions définissant la nappe: c'est un
concept de type listr8 créé précédemment par la commande DEFI_LIST_REEL
[U4.34.01].
3.9
Opérandes PROL_DROITE_FONC et PROL_GAUCHE_FONC
◊
PROL_DROITE_FONC et PROL_GAUCHE_FONC =
Définissent le type de prolongement à droite (à gauche) du domaine de définition de la
variable des fonctions de la nappe :
'CONSTANT', 'LINEAIRE', 'EXCLU' ont le même sens que précédemment.
3.10 Opérande INTERPOL_FONC
◊
INTERPOL_FONC =
Type d'interpolation des fonctions entre les valeurs de la variable des fonctions définissant la
nappe. Derrière ce mot clé on attend une liste de paramètres (deux au maximum).
Le fonctionnement est identique à INTERPOL.
3.11 Opérande INFO
◊
INFO =
Précise les options d'impression sur le fichier MESSAGE.
1 : pas d'impression (option par défaut)
2 : impression des paramètres plus la liste des 10 premières valeurs dans l'ordre
croissant du paramètre
3.12 Opérande TITRE
◊
TITRE = ti
Titre attaché au concept produit par cet opérateur [U4.03.01].
Manuel d'utilisation
Fascicule u4.32 : Tables et fonctions
Copyright 2015 EDF R&D - Document diffusé sous licence GNU FDL (http://www.gnu.org/copyleft/fdl.html)
Version
default
Code_Aster
Titre : Opérateur CALC_FONC_INTERP
Responsable : Mathieu COURTOIS
Date : 18/10/2011 Page : 6/6
Clé : U4.32.01
Révision : 7556
4
Exemples
4.1
Cas d’une fonction
4.1.1
Définir la fonction FORMULE sin(t)
SI = FORMULE ( NOM_PARA = 'INST',
VALE = 'sin(INST)')
4.1.2
Tabuler sin(t) à partir d'une liste de réels
DEPI
= 2.*pi
PAS0
= DEPI/200.
LI1 = DEFI_LIST_REEL (DEBUT = 0, INTERVALLE=_F(JUSQU_A=DEPI, PAS=PAS0),)
SI1 = CALC_FONC_INTERP
4.1.3
(FONCTION= SI, LIST_PARA = LI1, NOM_RESU = 'DEPL',
PROL_GAUCHE='EXCLU', PROL_DROITE='CONSTANT',
INTERPOL='LIN', TITRE='FONCTION SINUS' )
Tabuler sin(t) à partir d'une liste de valeurs
LI2 = ( 0.,0.01,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.10)
SI2 = CALC_FONC_INTERP
(
FONCTION = SI, VALE_PARA = LI2,
NOM_PARA =’INST’,
PROL_GAUCHE = 'EXCLU', PROL_DROITE = 'EXCLU',
INTERPOL = 'LIN', TITRE = 'FONCTION SINUS')
4.2
Cas d’une nappe
4.2.1
Définir la fonction FORMULE sin(omega * t)
SI = FORMULE ( NOM_PARA = ('FREQ', 'INST'),
VALE = 'sin(2*pi*FREQ*INST)')
4.2.2
Tabuler sin(omega * t) à partir d'une liste d’instants
Le paramètre de la nappe est 'FREQ', la variable des fonctions définissant la nappe est 'INST'. On
vérifie dans CALC_FONC_INTERP que le premier paramètre de la formule est le même que
NOM_PARA, et que le deuxième paramètre de la formule est identique à NOM_PARA_FONC.
LI_FREQ
LI_INST
SI1
Manuel d'utilisation
= DEFI_LIST_REEL (DEBUT = 10, INTERVALLE=_F(JUSQU_A=100, PAS=10),)
= DEFI_LIST_REEL (DEBUT = 0, INTERVALLE=_F(JUSQU_A=100, PAS=1),)
= CALC_FONC_INTERP
(
FONCTION= SI,
NOM_RESU = 'DEPL',
NOM_PARA_FONC='INST',
LIST_PARA_FONC = LI_INST
PROL_GAUCHE_FONC='EXCLU',
PROL_DROITE_FONC='CONSTANT',
INTERPOL_FONC='LIN',
NOM_PARA='FREQ',
LIST_PARA = LI_FREQ
PROL_GAUCHE='LINEAIRE',
PROL_DROITE='LINEAIRE',
INTERPOL='LIN',
TITRE='FONCTION SINUS',)
Fascicule u4.32 : Tables et fonctions
Copyright 2015 EDF R&D - Document diffusé sous licence GNU FDL (http://www.gnu.org/copyleft/fdl.html)
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertising