u4.32.04 Opérateur CALC_FONCTION#
Syntaxe#
Détail de la syntaxe
/ fonction
/ fonction_c
/ nappe = CALC_FONCTION(
◆ / FFT = _F(
◆ FONCTION = fonction / fonction_c,
◇ METHODE = / "COMPLET",
/ "PROL_ZERO" (par défaut),
/ "TRONCATURE",
# Si: is_type("FONCTION")==fonction_c
◇ SYME = / "NON",
/ "OUI" (par défaut),
),
/ DERIVE = _F(
◇ METHODE = "DIFF_CENTREE",
◆ FONCTION = fonction,
),
/ INTEGRE = _F(
◇ METHODE = / "SIMPSON",
/ "TRAPEZE" (par défaut),
◆ FONCTION = fonction,
◇ COEF = float (défaut: 0.0),
),
/ SPEC_OSCI = _F(
◇ TYPE_RESU = / "FONCTION",
/ "NAPPE" (par défaut),
◇ METHODE = / "HARMO",
/ "NIGAM" (par défaut),
/ "RICE",
◆ FONCTION = fonction,
◇ AMOR_REDUIT = list[float],
◇ LIST_FREQ = listr8,
◇ FREQ = list[float],
◆ NORME = float,
# Si: equal_to("METHODE", 'NIGAM')
◇ NATURE_FONC = "ACCE",
◇ NATURE = / "ACCE" (par défaut),
/ "DEPL",
/ "VITE",
# Si: equal_to("METHODE", 'RICE')
◆ DUREE = float,
◇ NATURE_FONC = "DSP",
◇ NATURE = / "ACCE" (par défaut),
/ "DEPL",
/ "VITE",
# Si: equal_to("METHODE", 'HARMO')
◇ PSEUDO = / "NON",
/ "OUI" (par défaut),
◇ NATURE_FONC = "ACCE",
# Si: equal_to("PSEUDO", 'NON')
◇ NATURE = / "ACCE" (par défaut),
/ "DEPL",
/ "VITE",
# Si: equal_to("PSEUDO", 'OUI')
◇ NATURE = / "ACCE" (par défaut),
/ "DEPL",
/ "VITE",
),
/ DSP = _F(
◆ FONCTION = fonction,
◆ AMOR_REDUIT = float,
◆ NORME = float,
◆ / LIST_FREQ = listr8,
/ FREQ_PAS = float,
◇ NB_ITER = int (défaut: 10),
◇ FREQ_FILTRE_ZPA = float (défaut: 0.0),
◇ NB_FREQ_LISS = int (défaut: 0),
◆ FREQ_COUP = float,
◆ DUREE = float,
◇ FRACT = float (défaut: 0.5),
),
/ CORR_ACCE = _F(
◆ FONCTION = fonction,
◆ METHODE = / "FILTRAGE",
/ "POLYNOME",
# Si: equal_to("METHODE", 'FILTRAGE')
◇ FREQ_FILTRE = float (défaut: 0.05),
# Si: equal_to("METHODE", 'POLYNOME')
◇ CORR_DEPL = / "NON" (par défaut),
/ "OUI",
),
/ COMB = _F(
◆ FONCTION = fonction / nappe,
◆ COEF = float,
),
/ COMB_C = _F(
◆ FONCTION = fonction / fonction_c / nappe,
◆ / COEF_R = float,
/ COEF_C = complex,
),
/ MULT = _F(
◆ FONCTION = fonction / fonction_c / nappe,
),
/ ASSE = _F(
◆ FONCTION = list[fonction],
◇ SURCHARGE = / "DROITE" (par défaut),
/ "GAUCHE",
),
/ INVERSE = _F(
◆ FONCTION = fonction,
),
/ ABS = _F(
◆ FONCTION = fonction,
),
/ ENVELOPPE = _F(
◆ FONCTION = list[fonction / nappe],
◇ CRITERE = / "INF",
/ "SUP" (par défaut),
),
/ COMPOSE = _F(
◆ FONC_RESU = fonction,
◆ FONC_PARA = fonction,
),
/ EXTRACTION = _F(
◆ FONCTION = fonction_c,
◆ PARTIE = / "IMAG",
/ "MODULE",
/ "PHASE",
/ "REEL",
),
/ PUISSANCE = _F(
◆ FONCTION = fonction / nappe,
◇ EXPOSANT = int (défaut: 1),
),
/ PROL_SPEC_OSCI = _F(
◆ FONCTION = fonction,
◆ NORME = float,
◆ DEPL_MAX = float,
),
/ INTEGRE_FREQ = _F(
◆ FONCTION = fonction,
◇ NIVEAU = / 1,
/ 2 (par défaut),
◇ FREQ_FILTRE = float (défaut: 0.0),
◆ FREQ_COUP = float,
),
/ DERIVE_FREQ = _F(
◆ FONCTION = fonction,
◇ NIVEAU = / 1,
/ 2 (par défaut),
◇ FREQ_COUP = float (défaut: 50.0),
),
/ LISS_ENVELOP = _F(
◆ / NAPPE = list[nappe],
/ FONCTION = fonction,
/ TABLE = list[table],
◇ LIST_AMOR = list[float],
◆ OPTION = / "CONCEPTION",
/ "VERIFICATION",
# Si: equal_to("OPTION", 'VERIFICATION')
◇ ELARG = list[float],
◇ FREQ_MIN = float,
◇ FREQ_MAX = float,
◇ LIST_FREQ = list[float],
◇ NB_FREQ_LISS = list[int] (défaut: (10,)),
◇ ZPA = float,
),
/ FRACTILE = _F(
◆ FONCTION = list[fonction / nappe],
◇ FRACT = float (défaut: 1.0),
),
/ REGR_POLYNOMIALE = _F(
◆ FONCTION = fonction,
◆ DEGRE = int,
),
/ MOYENNE = _F(
◆ FONCTION = list[fonction / nappe],
),
/ COHERENCE = _F(
◆ NAPPE_1 = nappe,
◆ NAPPE_2 = nappe,
◇ FREQ_COUP = float,
◇ OPTION = / "DUREE_PHASE_FORTE",
/ "TOUT" (par défaut),
# Si: equal_to("OPTION", 'DUREE_PHASE_FORTE')
◇ BORNE_INF = float (défaut: 0.05),
◇ BORNE_SUP = float (défaut: 0.95),
◇ NB_FREQ_LISS = int (défaut: 12),
),
/ INTERPOL_FFT = _F(
◆ FONCTION = fonction,
◆ PAS_INST = float,
◇ PRECISION = float (défaut: 0.01),
),
# Si: exists("COMB") or exists("COMB_C") or exists("REGR_POLYNOMIALE") or exists("MULT")
◇ LIST_PARA = listr8,
◇ NOM_PARA = / "ABSC",
/ "AMOR",
/ "DRX",
/ "DRY",
/ "DRZ",
/ "DSP",
/ "DTAN",
/ "DX",
/ "DY",
/ "DZ",
/ "ENDO",
/ "EPAIS",
/ "EPSI",
/ "EXCENT",
/ "FREQ",
/ "HYDR",
/ "INST",
/ "IRRA",
/ "META",
/ "NEUT1",
/ "NEUT2",
/ "NEUT3",
/ "NEUT4",
/ "NORM",
/ "NUME_ORDRE",
/ "PAD",
/ "PCAP",
/ "PGAZ",
/ "PLIQ",
/ "PORO",
/ "PULS",
/ "PVAP",
/ "SAT",
/ "SECH",
/ "SIGM",
/ "TEMP",
/ "TSEC",
/ "VITE",
/ "X",
/ "XF",
/ "Y",
/ "YF",
/ "Z",
/ "ZF",
◇ NOM_RESU = text,
◇ INTERPOL = / "LIN",
/ "LOG",
◇ PROL_DROITE = / "CONSTANT",
/ "EXCLU",
/ "LINEAIRE",
◇ PROL_GAUCHE = / "CONSTANT",
/ "EXCLU",
/ "LINEAIRE",
◇ NOM_PARA_FONC = / "ABSC",
/ "AMOR",
/ "DRX",
/ "DRY",
/ "DRZ",
/ "DSP",
/ "DTAN",
/ "DX",
/ "DY",
/ "DZ",
/ "ENDO",
/ "EPAIS",
/ "EPSI",
/ "EXCENT",
/ "FREQ",
/ "HYDR",
/ "INST",
/ "IRRA",
/ "META",
/ "NEUT1",
/ "NEUT2",
/ "NEUT3",
/ "NEUT4",
/ "NORM",
/ "NUME_ORDRE",
/ "PAD",
/ "PCAP",
/ "PGAZ",
/ "PLIQ",
/ "PORO",
/ "PULS",
/ "PVAP",
/ "SAT",
/ "SECH",
/ "SIGM",
/ "TEMP",
/ "TSEC",
/ "VITE",
/ "X",
/ "XF",
/ "Y",
/ "YF",
/ "Z",
/ "ZF",
◇ INTERPOL_FONC = / "LIN",
/ "LOG",
◇ PROL_DROITE_FONC = / "CONSTANT",
/ "EXCLU",
/ "LINEAIRE",
◇ PROL_GAUCHE_FONC = / "CONSTANT",
/ "EXCLU",
/ "LINEAIRE",
◇ INFO = / 1 (par défaut),
/ 2,
)
◆ : obligatoire
◇ : optionnel
⟐ : présent par défaut
& : ensemble
/ : un seul parmi
| : plusieurs choix possibles
Opérandes#
mot-clé facteur DERIVE#
Ce mot-clé permet de dériver la fonction (par rapport à son paramètre) donnée par FONCTION.
Ne s’applique pas aux concepts de type nappe. La seule méthode (donnée par METHODE) disponible est actuellement DIFF_CENTREE (par défaut).
- Remarque
Voir mot-clé INTEGRE
mot-clé facteur INTEGRE#
Ce mot-clé permet d’intégrer la fonction (par rapport à son paramètre) donnée par FONCTION.
La constante d’intégration est donnée par COEF, par défaut 0.
Ne s’applique pas aux concepts de type nappe.
Deux méthodes (renseignées par METHODE) sont disponibles: la méthode des “TRAPEZE” (par défaut) et la méthode de “SIMPSON”.
L’intégrale est exacte pour les fonctions linéaires par morceaux telle que fournies en entrée. L’erreur commise par rapport à l’intégrale de la fonction que l’on a discrétisée est en \(o(\frac{1}{{n}^{2}})\) pour des fonctions de classes \(\mathcal{C}^{2}\) .
La méthode de Simpson est exacte pour les polynômes de degré inférieur ou égal à 3. L’erreur est en \(o(\frac{1}{{n}^{4}})\) pour des fonctions de classes \(\mathcal{C}^{4}\) .
Pour les fonctions quelconques, très chahutées, comme les accélérogrammes, il est conseillé d’utiliser la méthode des trapèzes.
En revanche, quand la fonction (avant discrétisation) est suffisamment régulière, la méthode de Simpson est bien plus précise.
- Remarques
Pour INTEGRE comme pour DERIVE, le NOM_PARA de la fonction produite est inchangé. En revanche, le NOM_RESU peut être modifié dans les cas suivants: pour la dérivation, DEPL devient VITE, VITE devient ACCE; pour l’intégration, ACCE devient VITE, VITE devient DEPL. L’utilisateur a toujours la possibilité de le modifier par le mot clé du même nom NOM_RESU dans la commande.
Concernant les prolongements, la fonction produite a, par défaut des prolongements EXCLU à gauche et à droite quels soient ceux de la fonction de départ. Ne pas s’attendre donc à ce qu’un prolongement linéaire devienne constant dans la fonction dérivée. Là encore, l’utilisateur est maître de ses prolongements pour la fonction produite par les mots clés PROL_DROITE et PROL_GAUCHE.
mot-clé facteur INVERSE#
Ce mot-clé permet d’inverser la fonction donnée par FONCTION. Il est nécessaire que celle-ci soit bijective (strictement croissante ou strictement décroissante).
Ne s’applique pas aux concepts de type nappe.
- Remarque
Les labels des paramètres ne sont pas inversés! Le soin est laissé à l’utilisateur d’affecter les valeurs correctes par les mots clés NOM_PARA et NOM_RESU. Par défaut, le NOM_PARA est inchangé et NOM_RESU est affecté à TOUTRESU.
Les modes d’interpolation sont intervertis: par ex. (LIN, LOG) devient (LOG,LIN).
Les prolongements EXCLU et LINEAIRE sont inchangés. En revanche, un prolongement CONSTANT est changé en EXCLU.
mot-clé facteur ABS#
Ce mot-clé permet de créer une fonction ou une nappe contenant la valeur absolue d’une fonction ou d’une nappe donnée par FONCTION.
- Remarque
Les paramètres (prolongements, interpolations, NOM_PARA et NOM_RESU) de la fonction produite sont les mêmes que ceux de la fonction de départ.
Sauf pour le prolongement LINEAIRE, il est systématiquement changé en EXCLU par précaution. En effet, le prolongement linéaire à droite d’une fonction décroissante conduit pour des abscisses suffisamment grandes à des valeurs négatives: la responsabilité est donc laissée à l’utilisateur d’affecter lui-même PROL_DROITE=’LINEAIRE’(et respectivement à PROL_GAUCHE).
mot-clé facteur ENVELOPPE#
Ce mot-clé permet de calculer l’enveloppe de plusieurs fonctions.
Cette opération est disponible sur des opérandes de nature fonction ou nappe.
La liste des fonctions ou nappes dont on cherche l’enveloppe est donnée par le mot-clé FONCTION.
Le mot-clé CRITERE=”SUP” cherche l’enveloppe supérieure et le mot-clé CRITERE=”INF” cherche l’enveloppe inférieure.
- Remarques
Les fonctions doivent être toutes de même nature (fonction ou nappe)
Cas des fonctions simples: pour les prolongements, interpolations, NOM_PARA et NOM_RESU, ce sont les paramètres de la première des fonctions dans la liste qui sont retenus. Le support d’abscisses de la fonction enveloppe sera la réunion des listes d’abscisses de toutes les fonctions.
Cas des nappes: les paramètres (prolongements, interpolations, NOM_PARA, NOM_RESU et NOM_PARA_FONC) doivent impérativement être identiques entre les nappes fournies. Les supports d’abscisses (valeurs des paramètres et abscisses des fonctions des nappes) sont homogénéisés pour pouvoir calculer l’enveloppe. La nappe produite aura cette discrétisation pour abscisses.
mot-clé facteur FRACTILE#
Ce mot-clé permet de calculer le fractile de plusieurs fonctions.
Cette opération est disponible sur des opérandes de nature fonction ou nappe.
La liste des fonctions ou nappes dont on cherche à calculer le fractile est donnée par FONCTION.
FRACT est la valeur du quantile à calculer. Par défaut FRACT = 1, le fractile est alors l’enveloppe supérieure.
mot-clé facteur MOYENNE#
Ce mot-clé permet de calculer la moyenne de plusieurs fonctions données par FONCTION.
Cette opération est disponible sur des opérandes de nature fonction ou nappe.
mot-clé facteur COHERENCE#
Ce mot-clé permet de calculer la fonction de cohérence de signaux temporels.
La fonction de cohérence dépend de la distance entre deux points de mesure et de la fréquence. Elle exprime la corrélation entre les deux signaux, mesurés à une distance \(d\), en fonction de la fréquence. La fonction de cohérence complexe est évaluée en domaine fréquentiel, en passant par les densités spectrales (DSP). L’opérateur renvoie la partie réelle de la cohérence complexe, ce qui correspond à la unlagged coherency ou la plane wave coherency dans le cas d’une onde plane.
Les signaux temporels doivent avoir la même discrétisation (même pas de temps \({dt}\) et même durée \(T\) ). L’utilisateur doit fournir deux nappes qui contiennent respectivement les signaux aux stations 1 et 2, distancés de \(d\) . Les signaux dans chaque nappe sont paramétrés par NUME_ORDRE (1,2,3,..) et ensuite appariés pour calculer les cohérences et en prendre la moyenne.
mot-clés NAPPE_1 et NAPPE_2#
NAPPE_1 contient \(N\) fonctions mesurées à la station 1. Les fonctions de la nappe doivent être numérotées de 1 à \(N\) par NOM_PARA = “NUME_ORDRE”.
NAPPE_2 contient \(N\) fonctions mesurées à la station 2. Les fonctions de la nappe doivent être numérotées de 1 à \(N\) par NOM_PARA = “NUME_ORDRE”.
mot-clé FREQ_COUP#
FREQ_COUP est la fréquence de coupure pour le traçage des fonctions de cohérence. La fréquence de coupure doit être inférieure à \(\frac{1}{2 \, dt}\) , où \(dt\) est le pas de temps des signaux temporels. Pour l’évaluation des fonctions de cohérence, la fréquence de coupure est toujours déterminée par le pas de temps des signaux temporels. Si FREQ_COUP est renseigné, alors la fonction de cohérence est coupée à cette fréquence avant restitution.
mot-clé NB_FREQ_LISS#
NB_FREQ_LISS est le nombre de pas de fréquence utilisé pour le lissage des DSP par fenêtre de Hamming. La fenêtre de Hamming obtenue avec NB_FREQ_LISS = 12 est montrée dans la figure ci-dessous.
Fig. 67 Fenêtre de Hamming pour le calcul de la cohérence de deux fonctions#
Prudence
NOM_PARA n’est pas un mot clé du mot clé facteur COHERENCE.
mot-clé OPTION#
Le mot-clé OPTION permet de définir si le signal entier ou uniquement la phase forte est utilisé pour le calcul de la fonction de cohérence:
Si OPTION=”TOUT”, on utilise les signaux temporels tels quels.
Si OPTION=”DUREE_PHASE_FORTE”, on évalue la fonction de cohérence pour la durée de phase forte uniquement. Les instants de début et de fin de phase forte sont calculés pour le premier signal uniquement. On utilise ensuite le même intervalle de temps pour les autres signaux. Dans le cas du séisme, cela suppose que tous les enregistrements proviennent du même événement. Pour évaluer la durée de phase forte, on utilise la notion de l’intensité d’Arias. Il faut alors renseigner les bornes inférieure et supérieure (voir [INFO_FONCTION]).
mot-clés BORNE_INF et BORNE_SUP#
Les mot-clés BORNE_INF et BORNE_SUP donnent les bornes limitant la part d’intensité Arias définissant les instants initial et final de la phase forte (elles sont donnée en pourcentage de l’intensité d’Arias) du séisme - même signification que pour [INFO_FONCTION]. Par défaut, on prend 5% et 95%.
mot-clé facteur COMB#
Ce mot-clé permet de calculer la fonction donnant la combinaison linéaire réelle de plusieurs concepts de nature fonction ou nappe.
Le nom de la fonction à combiner est donné par FONCTION et la valeur du coefficient est donnée par COEF.
On peut utiliser le mot-clé LIST_PARA pour donner la liste des valeurs des paramètres pour lesquelles la combinaison de fonctions sera discrétisée. Si ce mot clé n’est pas renseigné, une liste par défaut est construite en prenant l’union des listes des valeurs des paramètres de chaque fonction.
Prudence
LIST_PARA n’est pas un mot clé du mot clé facteur COMB.
- Remarque
Voir les remarques pour le mot clé ENVELOPPE
mot-clé facteur COMB_C#
Ce mot-clé permet de calculer la fonction donnant la combinaison linéaire complexe de plusieurs concepts de nature fonction_c.
Le nom de la fonction à combiner est donné par FONCTION. La valeur du coefficient est donnée par COEF_C (complexe) ou COEF_R (réel).
On peut utiliser le mot-clé LIST_PARA pour donner la liste des valeurs des paramètres pour lesquelles la combinaison de fonctions sera discrétisée. Si ce mot clé n’est pas renseigné, une liste par défaut est construite en prenant l’union des listes des valeurs des paramètres de chaque fonction.
Prudence
LIST_PARA n’est pas un mot clé du mot clé facteur COMB_C.
- Remarque
Voir les remarques pour le mot clé ENVELOPPE
mot-clé facteur MULT#
Ce mot-clé facteur permet de multiplier plusieurs fonction, fonction_c ou nappe. Il produit un concept de même nature fonction, fonction_c ou nappe.
FONCTION donne le nom de la fonction à multiplier avec les autres.
LIST_PARA permet de discrétiser la fonction résultat comme pour COMB.
Prudence
LIST_PARA n’est pas un mot clé du mot clé facteur MULT.
mot-clé facteur COMPOSE#
Ce mot-clé facteur permet de calculer la fonction composée de deux fonctions \(F(G( \cdot ))\) .
La fonction \(F(\cdot)\) est donnée par FONC_RESU et \(G( \cdot )\) est donnée par FONC_PARA.
Il ne s’applique pas aux concepts de type nappe.
On vérifie que le NOM_PARA de \(F(\cdot)\) correspond bien au NOM_RESU de \(G( \cdot )\).
mot-clé facteur ASSE#
Ce mot-clé facteur permet de créer une fonction réelle en concaténant deux fonctions réelles tabulées.
Il ne s’applique pas aux concepts de type nappe.
Les fonctions à concaténer sont données par FONCTION. On attend exactement deux fonctions.
Les points de discrétisation de la fonction créée sont ceux de l’ensemble des deux fonctions, modulo les effets de surcharge.
Si les domaines de définition des fonctions se chevauchent, l’une des fonctions impose ses points sur la zone de recouvrement et pour les prolongements, on utilise le mot-clé SURCHARGE:
SURCHARGE= “DROITE”: c’est la fonction qui a la plus grande abscisse qui est choisie,
SURCHARGE= “GAUCHE”: c’est la fonction qui a la plus petite abscisse qui est choisie.
On vérifie que toutes les fonctions ont le même NOM_PARA, ainsi que les mêmes interpolations.
mot-clé facteur EXTRACTION#
Ce mot-clé facteur permet de construire à partir d’une fonction complexe (type fonct_c), une fonction réelle représentant soit la partie réelle, soit la partie imaginaire, soit le module, soit la phase de la fonction complexe.
La fonction (complexe) à traiter est donnée par le mot-clé FONCTION.
Le mot-clé PARTIE permet de choisir quelle opération d’extraction réaliser
Valeur de PARTIE |
Opération |
|---|---|
REEL |
extraction de la partie réelle de la fonction |
IMAG |
extraction de la partie imaginaire de la fonction |
MODULE |
calcul du module de la fonction |
PHASE |
calcul de la phase (en degrés) de la fonction |
mot-clé facteur PUISSANCE#
Le mot-clé facteur PUISSANCE permet de construire la puissance n-ième d’une fonction ou d’un ensemble de fonctions fourni sous forme d’une nappe.
La fonction résultat calculée sera \(f{(\cdot)}^{n}\) .
La fonction à traiter \(f{(\cdot)}\) est donnée par le mot-clé FONCTION et l’exposant \(n\) sera donné par EXPOSANT.
Par défaut, \(n=1\) .
mot-clé facteur REGR_POLYNOMIALE#
Le mot-clé facteur REGR_POLYNOMIALE calcule la régression polynomiale d’une fonction par la méthode des moindres carrés (en utilisant la fonction polyfit de numpy).
La fonction à traiter \(f{(\cdot)}\) est donnée par le mot-clé FONCTION et le degré du polynôme recherche est donné par DEGRE.
On peut utiliser le mot-clé LIST_PARA pour tabuler le polynôme calculé. Sinon, il est tabulé sur la liste des abscisses de la fonction \(f{(\cdot)}\).
Prudence
LIST_PARA n’est pas un mot clé du mot clé facteur REGR_POLYNOMIALE.
mot-clé facteur FFT#
Le mot-clé facteur FFT calcule la transformée de Fourier directe ou inverse d’une fonction (donc par l’algorithme FFT).
Le nom de la fonction sur laquelle s’effectue l’opération est donné par FONCTION.
Si le NOM_PARA de la fonction est INST, alors la FFT directe est calculée.
Si le NOM_PARA de la fonction est FREQ, alors la FFT inverse est calculée.
Ne s’applique pas aux concepts de type nappe.
L’algorithme FFT est plus rapide pour les échantillons dont la longueur est une puissance de 2.
mot-clé METHODE#
Le mot-clé METHODE permet de choisir la manière de traiter les cas où l’échantillon n’est pas une puissance de deux:
La méthode “PROL_ZERO” (par défaut) propose de prolonger le signal d’entrée avec des zéros jusqu’à avoir un nombre total d’échantillons qui est la première puissance de 2 dont la valeur est supérieure au nombre d’échantillons initial.
La méthode “TRONCATURE” ne va considérer que les premiers échantillons dont le nombre total est la plus grande puissance de deux dont la valeur est inférieure au nombre initial d’échantillons.
La méthode “COMPLET” permet de prendre en compte la totalité du signal d’entrée, quel que soit le nombre d’échantillons.
Par exemple, sur un signal de 601 valeurs, la méthode “PROL_ZERO” va compléter le signal pour avoir 1024 échantillons, alors que la méthode “TRONCATURE” ne va considérer que les 512 premiers instants.
Si le signal d’entrée a un nombre d’échantillons qui est une puissance de deux, les deux méthodes sont bien évidemment équivalentes: on prend en compte le signal sans le modifier.
- Remarque
Dans le cas d’un échantillon de longueur \(N\) , dont le pas de temps serait \(dt\) , la fréquence d’échantillonnage de la FFT est \(\frac{1}{N \, dt}\) . En revanche, la dernière fréquence pour laquelle la transformée discrète est calculée n’est pas \(\frac{1}{dt}\) , mais \(\frac{N-1}{N \, dt}\) .
mot-clé SYME#
Le mot-clé SYME ne s’applique que pour la transformée de Fourier inverse.
Dans le cas où on fournirait le spectre complet, alors la transformée inverse est calculée directement en utilisant SYME = “OUI”. Les méthodes “TRONCATURE” et “PROL_ZERO” ne sont alors pas actives.
Si le spectre (complexe) fourni en entrée de la FFT inverse ne contient pas la partie repliée (associée aux fréquences négatives du spectre), on peut néanmoins estimer un signal temporel ayant le même contenu spectral sur la partie associée aux fréquences positives. Si on note \({X}_{k}\) le \(k\)-ième échantillon de la transformée de Fourier d’un échantillon de longueur \(N\) , alors on a \({X}_{k}={X}_{(N-k)}^{\text{*}}\) , où \({(\cdot)}^{\text{*}}\) correspond au complexe conjugué. Cette information peut être exploitée pour reconstruire un signal temporel en ne connaissant que la moitié du spectre. Cette opération est réalisée lorsqu’on choisit SYME = “NON”. Le signal temporel est alors reconstruit pour obtenir un échantillon temporel de longueur paire. En théorie, pour reconstruire un signal temporel de longueur \(2 \times M\) , le spectre doit vérifier certaines conditions:
Le spectre doit être de longueur \(M+1\) ,
Le premier point du spectre doit être réel,
Le dernier point du spectre doit être réel.
Si ces conditions ne sont pas vérifiées, alors on construit un spectre approché de longueur impaire vérifiant ces conditions. Si le spectre initial est de longueur paire, le dernier point est alors reconstruit en effectuant un prolongement par interpolation du spectre initial. Cette reconstruction peut introduire un léger biais lorsque le contenu spectral de l’échantillon est très significatif sur les derniers points du spectre.
Les méthodes “TRONCATURE” et “PROL_ZERO” sont encore disponibles pour la FFT inverse. Attention, cependant, avec l’utilisation de la méthode “TRONCATURE”. Si le nombre de points tronqués est significatif, alors les résultats peuvent être très sensiblement différents.
mot-clé facteur INTERPOL_FFT#
Le mot-clé facteur INTERPOL_FFT réalise l’interpolation d’un accélérogramme par méthode «zero padding». Cette méthode consiste à calculer la transformée de Fourier du signal initial, à compléter le signal fréquentiel obtenu par de nouvelles fréquences de valeur nulle puis à calculer la transformée de Fourier inverse de ce signal fréquentiel modifié. Cette fonctionnalité utilise les mêmes algorithmes que le mot-clé FFT. La méthode est nécessairement “COMPLET” et SYME = “NON”.
Elle permet de ne pas ajouter de contenu fréquentiel à la fonction interpolée.
Le nom de la fonction sur laquelle s’effectue l’opération est donné par FONCTION. Le NOM_PARA de la fonction est nécessairement le temps INST.
Le mot-clé PAS_INST permet de donner l’incrément de temps souhaité pour le signal interpolé. Il doit être plus petit que l’incrément de temps de la fonction fournie.
Le pas de temps réellement obtenu est souvent légèrement différent de celui indiqué via PAS_INST. Le mot-clé PRECISION définit l’écart maximum souhaité entre ces deux valeurs, s’il est dépassé, un message d’alarme est émis pour avertir l’utilisateur.
mot-clé facteur CORR_ACCE#
Le mot-clé facteur CORR_ACCE permet de corriger un accélérogramme (signal sismique en accélération) pour que le signal en déplacement ne possède pas de dérive. On retourne en sortie l’accélérogramme corrigé. Le signal peut ensuite être intégré par les méthodes standards (mot-clé INTEGRE de CALC_FONCTION). Il convient de vérifier la qualité du résultat en vérifiant l’absence de dérive du signal en déplacement et en comparant les spectres de réponse avant et après modification.
Le nom de la fonction sur laquelle s’effectue l’opération est donné par FONCTION. Il s’agit de l’accélérogramme réel mesuré. Ne s’applique pas aux concepts de type nappe.
mot-clé METHODE#
Le mot-clé METHODE permet de désigner la méthode que l’on souhaite utiliser pour corriger les signaux: correction par polynômes ou par filtrage dans le domaine fréquentiel.
Pour la correction par polynômes (METHODE=”POLYNOME”), on supprime la dérive du signal, calculée par lissage linéaire au sens des moindres carrés sur la totalité du signal. La dérive de la vitesse relative correspondante est également supprimée, sauf si CORR_DEPL=”NON”. Dans ce dernier cas, on ne corrige pas la dérive du déplacement relatif, c’est la valeur par défaut. Si CORR_DEPL=”OUI”, on supprime aussi la dérive du déplacement relatif. Cette option est à utiliser avec précaution, car on ne connaît pas a priori la valeur du déplacement final après le séisme.
Pour la correction par filtrage (METHODE=”FILTRAGE”), on supprime la dérive par filtrage («passe_haut») du signal dans le domaine des fréquences. Ce filtre est décrit dans la documentation [R4.05.05]. La fréquence du filtre est donnée par le mot-clé FREQ_FILTRE.
Il faut choisir la plus petite fréquence qui permette d’obtenir l’effet escompté, à savoir supprimer la dérive, sans (trop) altérer les autres propriétés du signal. Par défaut, la fréquence du filtre vaut 0.05Hz. Cette valeur est généralement bien adaptée pour les signaux sismiques. Cette valeur peut être diminuée si le signal le permet ou augmenté si une dérive persiste.
mot-clé facteur LISS_ENVELOP#
Le nom de la nappe ou des nappes d’entrée formée(s) des spectres bruts associés à chaque niveau d’amortissement est donné par le mot-clé NAPPE. La nappe dépend donc des paramètres fréquence et amortissement.
Le nom de la table ou des tables d’entrée formée(s) des spectres bruts associés à chaque niveau d’amortissement est donné par le mot-clé TABLE. Dans le format attendu, la première colonne contient les valeurs des fréquences, chacune des colonnes suivantes contient la valeur de l’accélération associée à la fréquence pour un niveau d’amortissement donné. Les valeurs des amortissements sont données par LIST_AMOR.
Le nom de la fonction formée du spectre brut associé à un niveau d’amortissement est donné par le mot-clé FONCTION. Le mot-clé OPTION permet de choisir la méthode associée au lissage des enveloppes.
Option CONCEPTION: la première étape consiste à réaliser une enveloppe sur les spectres fournis. Dans une seconde étape, on réalise le lissage du spectre obtenu en fonction du nombre de points lissés demandés par le mot-clé NB_FREQ_LISS.
Option VERIFICATION: la première étape consiste à réaliser un lissage de chaque spectre fourni selon le nombre de points demandé. Puis, on réalise un élargissement de chaque spectre suivant les coefficients fournis dans ELARG. Dans une troisième étape, l’enveloppe des spectres élargis est calculée. Enfin la dernière étape réalise le lissage du spectre obtenu en fonction du nombre de points lissés demandé.
NB_FREQ_LISS donne le nombre de fréquences souhaitées pour le spectre lissé. Dans le cas de l’option “CONCEPTION”, on ne fournit qu’une valeur. Pour l’option “VERIFICATION”, on peut fournir deux valeurs qui seront appliquées à la première étape et à la quatrième étape.
La plage de définition en fréquence du spectre lissé est donnée par FREQ_MIN et FREQ_MAX. Les fréquences mentionnées sous FREQ_MIN et FREQ_MAX doivent être choisies parmi les fréquences de discrétisation du spectre brut. Par défaut, on considère le spectre complet.
L’élargissement est activé par le mot-clé ELARG, il porte sur l’ensemble d’un spectre pour l’option VERIFICATION. On doit fournir autant de valeurs avec ELARG que de nombres de nappes ou tables.
Pour chaque fréquence \({F}_{i}\): du spectre brut, on définit deux nouvelles valeurs de fréquences telles que:
et
Les paramètres \({\tau}_{g}\) et \({\tau}_{d}\) représentent l’amplitude de l’élargissement en fréquence et sont égaux à la valeur fournie.
Les valeurs des fréquences excentrées \({F}^{-}\) et \({F}^{+}\) ne correspondent pas aux valeurs \({F}_{i}\) de la liste de définition du spectre brut. On définit ainsi \({F}_{j}\) et \({F}_{k}\) tels que:
\({F}_{j}\) : valeur appartenant à la liste, immédiatement inférieure ou égale à \({F}^{-}\) ,
\({F}_{k}\) : valeur appartenant à la liste, immédiatement inférieure ou égale à \({F}^{+}\) .
Pour chaque fréquence \({F}_{i}\), deux points de coordonnées \(({F}_{j},{\gamma}_{i})\) et \(({F}_{k},{\gamma}_{i})\) sont définis, où \({\gamma}_{i}\) représente l’accélération à la fréquence \({F}_{i}\). Deux nouveaux spectres résultants du décalage du spectre brut sur l’axe des fréquences sont donc construits. Puis on calcule l’enveloppe.
LIST_FREQ donne la liste de fréquences que l’on souhaite conserver pour le spectre lissé. Les éléments de cette liste doivent être contenus dans les valeurs de fréquence des spectres pris en entrée.
LIST_AMOR donne la liste des amortissements que l’on souhaite associer aux différentes valeurs d’accélérations de la table fournie.
La valeur de l’accélération à haute fréquence que l’on souhaite imposer pour le spectre lissé est donnée par ZPA. Par défaut, il s’agit de la valeur du spectre le moins amorti à la fréquence la plus élevée. Un exemple d’application est proposé dans le cas test ZZZZ100E.
mot-clé facteur SPEC_OSCI#
Le mot-clé facteur SPEC_OSCI permet de calculer le spectre d’oscillateur d’un accélérogramme (ou SRO). Il y a deux cas:
Lorsque METHODE = “NIGAM” (défaut) ou “HARMO”, NATURE_FONC = “ACCE”, on calcule le spectre d’oscillateur d’un accélérogramme (ou SRO) [R4.05.03].
Lorsque METHODE = “RICE” , NATURE_FONC = “DSP”, on calcule le spectre d’oscillateur équivalent à une densité spectrale de puissance (DSP) [R4.05.03] sous le mot-clé FONCTION. La fonction doit être de NOM_PARA = “FREQ”.
Dans les deux cas, l’accélérogramme doit être donné par le mot-clé FONCTION.
Lorsque METHODE = “HARMO” on peut choisir entre PSEUDO = “OUI” (défaut) et “NON”. Si PSEUDO = “OUI” alors on calcule le SRO en pseudo-vitesse ou pseudo-accélération. Si PSEUDO = “NON” alors on calcule le SRO en accélération absolue ou en vitesse relative. Pour la méthode NIGAM, seul le calcul de la pseudo-accélération et de la pseudo-vitesse sont possibles.
Le spectre d’oscillateur n’est calculable que sur les fonctions de NOM_PARA = “INST”. La nature de la fonction résultat NOM_RESU correspond à celui renseigné par le mot-clé NATURE (par défaut on a NATURE = “ACCE” et PSEUDO = “OUI” pour un SRO en pseudo-accélération)
Pour tout \(i\) et tout \(j\) on considère \({q}_{j}^{i}\) la solution de l’équation différentielle:
avec \({q}_{j}^{i}(0)={\dot{q}}_{j}^{i}(0)=f(0)\) et \({\omega}_{i}=2 {\pi}{\phi}_{i}\)
Le concept produit \(f^r\) est une nappe (fonction à deux variables) constituée des fonctions \(\left(f^{r}_{i},\cdots,f^{r}_{j},\cdots\right)\) avec \(f^{r}_{j}\) fonction définie aux points \({\omega}_{i}\) avec:
Choix des discrétisations#
Par défaut pour le calcul du spectre d’oscillateur, on considère pour les amortissements réduits les valeurs 0.02, 0.05 et 0.10. Pour les fréquences des SRO, on considère 150 valeurs de fréquence en Hz avec une discrétisation qui dépend de l’intervalle de fréquence.
La première valeur est à \(0.2Hz\), puis on déduit les 150 suivantes par la règle décrite par le tableau ci-dessous ( \(n_1\), \(n_2\) désignent le numéro d’ordre du début et de la fin d’intervalle):
\(n_1\) |
\(n_2\) |
Pas de fréquence |
|---|---|---|
1 |
57 |
0.05 Hz |
58 |
65 |
0.075 Hz |
66 |
79 |
0.10 Hz |
80 |
103 |
0.125 Hz |
104 |
131 |
0.25 Hz |
132 |
137 |
0.5 Hz |
138 |
141 |
1.0 Hz |
142 |
150 |
1.5 Hz |
La fréquence de coupure par défaut est donc \(35.5 Hz\) (l’utilisateur doit vérifier que cette valeur est cohérente avec le contenu fréquentiel du signal d’entrée; si ce n’est pas le cas, il faut définir une liste de fréquences adaptée).
Une liste des amortissements réduits \(\left({\xi}_{1},\cdots,{\xi}_{i},\cdots\right)\) différente de celle utilisée par défaut peut être donnée par le mot-clé AMOR_REDUIT.
Une liste des fréquences différente de celle utilisée par défaut peut être donnée par FREQ ou LIST_FREQ. Dans ce dernier cas, les fréquences sont fournies sous un concept listr8. Les fréquences doivent être strictement positives.
Normalisation#
Le spectre d’oscillateur sera normé à la valeur donnée par le mot-clé NORME (valeur de la pseudo-accélération), cette valeur est rappelée dans le fichier de message.
Choix du type de SRO#
Le mot-clé NATURE permet de choisir la nature des SRO. Il définit la nature de la fonction ou des fonctions de la nappe créées par la commande CALC_FONCTION. Le mot-clé PSEUDO (OUI ou NON) permet de choisir la manière dont ces valeurs sont calculées. Toutes les options sont rappelées dans la table ci-dessous.
Mot-clé |
PSEUDO=”OUI” (default) |
PSEUDO = “NON” |
|---|---|---|
ACCE |
Spectre de pseudo-accélération |
Spectre en accélération absolue |
VITE |
Spectre de pseudo-vitesse |
Spectre en vitesse relative |
DEPL |
Spectre de déplacement relatif |
Spectre de déplacement relatif |
La nature de la fonction qui sert à construire le spectre est donnée par NATURE_FONC. Le choix est imposé selon la méthode sélectionnée: “ACCE” (signal temporel) ou “DSP” (densité spectrale de puissance en accélération). Ce mot clé permet de surcharger le NOM_RESU de la fonction spécifiée sous le mot clé FONCTION lorsque celle-ci est créée par [RECU_FONCTION].
Le mot-clé METHODE donne la méthode que l’on désire utiliser: la méthode par défaut est la méthode “NIGAM”. Si on choisit la méthode “HARMO”, alors le spectre de réponse est obtenu par des calculs harmoniques successifs (pour différentes fréquences propres d’oscillateur) en passant par une FFT/IFFT du signal en entrée. Les deux méthodes, “NIGAM” et “HARMO”, sont détaillées dans le document [R5.05.01]. Si on choisit “RICE” alors on détermine le SRO équivalent pour la donnée d’une DSP.
Par défaut, l’utilisation de SPEC_OSCI produit une nappe. Si AMOR_REDUIT ne contient qu’un amortissement, on crée une nappe ne contenant qu’une fonction. Dans ce cas, on peut choisir TYPE_RESU=”FONCTION” pour retourner directement cette fonction.
Le mot-clé DUREE est à renseigner uniquement si METHODE=”RICE” et donc NATURE_FONC=”DSP”. Il s’agit de la durée de la phase forte du séisme. Le signal sismique est considéré comme stationnaire sur cette durée. Cette valeur est nécessaire pour évaluer le facteur de pic qui intervient dans la formule de Vanmarcke pour trouver le SRO équivalent à la donnée de la DSP.
Mot-clé facteur PROL_SPEC_OSCI#
Ce mot-clé facteur PROL_SPEC_OSCI permet de prolonger un spectre en dessous de la fréquence de définition (par exemple fmin = 0.25Hz) en donnant comme critère une valeur de déplacement maximal dmax.
On calcule la pente à partir des deux premières valeurs du spectre (la plus petite fréquence fmin est supérieure à zéro) et on prolonge le spectre en déplacement en retenant cette pente jusqu’à la valeur dmax.
Le mot-clé FONCTION donne la fonction sur laquelle s’effectue l’opération. Ne s’applique pas aux concepts de type nappe.
Le spectre d’oscillateur sera normé à la valeur donnée par le mot-clé NORME (valeur de la pseudo-accélération), cette valeur est rappelée dans le fichier de message.
La valeur de déplacement utilisée pour prolonger le spectre est donnée par le mot-clé DEPL_MAX. Si la pente du spectre est inférieure à zéro, il faut que dmax soit plus grand que la première valeur de déplacement du spectre donné.
Mot-clé facteur DSP#
Le mot-clé facteur DSP calcule la densité spectrale de puissance (DSP) équivalente à la donnée d’un spectre de réponse d’oscillateur (SRO) avec la formule de Vanmarcke, fonction de nature fonction [R4.05.03].
Le spectre d’oscillateur n’est calculable que sur les fonctions de NOM_PARA = “FREQ”. La fonction définissant le SRO est donnée par le mot-clé FONCTION.
Pour le calcul de la DSP à partir d’un spectre d’oscillateur, on considère que
le SRO exprime le maximum médian (fractile 0.5), sinon il faut renseigner une autre valeur via le mot clé FRACT.
la DSP vaut zéro pour des fréquences inférieures ou égales à \(1/2\pi Hz\) .
le spectre est normé selon la valeur de NORME.
L’utilisateur doit vérifier que la discrétisation fréquentielle (liste des fréquences) est suffisante par rapport au contenu fréquentiel des signaux à modéliser. Il convient également de vérifier l’équivalence entre le DSP et le SRO données en faisant des tirages ou en déterminant des valeurs de réponse maximale d’un oscillateur avec [POST_DYNA_ALEA]. L’opérateur calcule la densité spectrale de puissance (DSP) équivalente à la donnée d’un spectre de réponse d’oscillateur (SRO) avec la formule de Vanmarcke. On n’effectue pas d’itération pour optimiser le fit.
Un exemple d’application est proposé dans le cas test ZZZZ100D.
Les mots-clés AMOR_REDUIT et LIST_FREQ sont identiques à ceux décrits pour SPEC_OSCI .
Le mot-clé FREQ_PAS désigne le pas de fréquence si LIST_FREQ n’est pas renseigné.
La fréquence de coupure est donnée par le mot-clé FREQ_COUP. On détermine la DSP jusqu’à cette fréquence. Le SRO est prolongé (valeur constante correspondante à la ZPA) jusqu’à cette valeur si nécessaire.
Mot-clé DUREE#
La durée de la phase forte du séisme est donnée par le mot-clé DUREE. Le signal sismique est considéré comme stationnaire sur cette durée. Cette valeur est nécessaire pour évaluer le facteur de pic qui intervient dans la formule de Vanmarcke.
On considère des spectres d’oscillateur normés à la valeur donnée par le mot-clé NORME (valeur de la pseudo-accélération). En général, les SRO sont donnés en \(g\), il faut donc renseigner NORME = 9.81.
Mot-clé FRACT#
La DSP est ajustée sur un fractile du spectre de réponse donné par le mot-clé FRACT. La valeur du fractile a un impact sur la détermination du facteur de pic, utilisé dans la formule de Vanmarcke.En général on considère que le spectre cible correspond à la médiane et donc fract = 0.5.
Mot-clé NB_ITER#
Le nombre d’itérations pour améliorer l’ajustement de la DSP est donné par le mot-clé NB_ITER. Il peut être nécessaire de réaliser moins d’itérations afin d’éviter l” overfitting de la DSP (deux itérations par exemple).
Mot-clé NB_FREQ_LISS#
Le nombre de pas de fréquence utilisé pour le lissage des DSP par fenêtre de Hamming est donné par NB_FREQ_LISS. La fenêtre de Hamming obtenue avec NB_FREQ_LISS = 12 est montrée dans la figure Fenêtre de Hamming pour le calcul de la cohérence de deux fonctions.
Mot-clé FREQ_FILTRE_ZPA#
Le mot-clé optionnel FREQ_FILTRE_ZPA donne une fréquence (en \(Hz\) ) pour filtrer les hautes fréquences au-delà de la fréquence ZPA. Il s’agit donc d’un filtre passe-bas. Ce filtre s’applique sur la DSP dans le domaine fréquentiel. Ce filtre permet d’enlever du contenu fréquentiel résiduel au-delà de la valeur de ZPA. La signification est la même que pour l’opérateur GENE_ACCE_SEISME.
Mot-clé facteur INTEGRE_FREQ#
Ce mot-clé permet l’intégration fréquentielle simple ou double d’une fonction du temps en utilisant un filtre fréquentiel haut donné par une fréquence de coupure ou bas donné par une fréquence de filtrage.
La fonction sur laquelle s’effectue l’opération est donnée par le mot-clé FONCTION. Ne s’applique pas aux concepts de type nappe.
Le mot-clé NIVEAU donne le niveau d’intégration simple (=1) ou double (=2).
La fréquence de coupure donne le niveau de filtrage haut du signal. Elle est donnée par FREQ_COUP.
La fréquence de filtrage bas du signal est donnée par le mot-clé FREQ_FILTRE. La valeur par défaut est 0.
Mot-clé facteur DERIVE_FREQ#
Le mot-clé facteur DERIVE_FREQ permet la dérivation fréquentielle simple ou double d’une fonction du temps en utilisant un filtre fréquentiel haut donné par une fréquence de coupure.
Le nom de la fonction sur laquelle s’effectue l’opération est donné par le mot-clé FONCTION. Ne s’applique pas aux concepts de type nappe.
Le mot-clé NIVEAU donne le niveau de dérivation simple (=1) ou double (=2).
La fréquence de coupure FREQ_COUP donne le niveau de filtrage haut du signal.
Les attributs du concept fonction en sortie#
Valeurs par défaut#
Par défaut les attributs du concept fonction en sortie de la commande dépendent des différentes opérations (cf. [DEFI_FONCTION] et [DEFI_NAPPE]).
Pour l’opération DERIVE:
Interpolation : donnée par la fonction en entrée
Prolongement gauche : EXCLU
Prolongement droit : EXCLU
NOM_PARA = “INST” (exemple) donné par la fonction en entrée
NOM_RESU = “VITE” (exemple) donné par la fonction en entrée
Pour l’opération INTEGRE: mêmes règles que pour DERIVE
Pour les opérations COMB / COMB_C: les attributs de la première fonction combinée.
Pour l’opération SPEC_OSCI: le résultat est une nappe sauf si TYPE_RESU=”FONCTION” et qu’il n’y a qu’une valeur d’amortissement réduit. Les attributs de la nappe:
Interpolation : “LOG”
Prolongement gauche : “EXCLU”
Prolongement droit : “EXCLU”
NOM_PARA = “AMOR”
Pour l’opération SPEC_OSCI, les attributs de chaque fonction:
Interpolation : “LOG”
Prolongement gauche : “EXCLU”
Prolongement droit : “CONSTANT”
NOM_PARA = “FREQ”
NOM_RESU = “DEPL” ou “VITE” ou “ACCE”
Pour l’opération ENVELOPPE: les attributs de la première fonction donnée.
Pour l’opération FFT : NOM_PARA = FREQ si NOM_PARA de la fonction est INST, sinon c’est l’inverse.
Pour l’opération COMPOSE :
Interpolation : celle de la fonction FONC_RESU
Prolongement : celui de la fonction FONC_RESU
NOM_PARA : celui de la fonction FONC_PARA
NOM_RESU : celui de la fonction FONC_RESU
Pour l’opération EXTRACTION: attributs identiques à ceux de la fonction donnée en entrée
Pour l’opération ASSE:
Interpolation : linéaire
Prolongement : “EXCLU”
NOM_PARA : celui des fonctions
NOM_RESU: celui des fonctions
Surcharge des attributs#
L’utilisateur peut surcharger les attributs donnés par défaut en utilisant les mots clés suivants.
mot-clé NOM_PARA#
Le mot-clé NOM_PARA désigne le nom du paramètre (variable ou abscisse) de la fonction ou de la nappe. Les valeurs actuellement autorisées pour para sont: “TEMP”, “INST”, “EPSI”, “X”, “Y” , “Z”, “FREQ”, “PULS”, “AMOR”, “DX”, “DY”, “DZ”, “DRX”, “DRY”, “DRZ” et “ABSC”.
mot-clé NOM_RESU#
Le mot-clé NOM_RESU permet de documenter, la fonction créée en donnant un nom (8 caractères) à la fonction. Sauf exception, ce nom n’est pas testé.
mot-clé INTERPOL#
Quand le concept produit est une nappe, le mot-clé INTERPOL définit le type d’interpolation entre deux valeurs consécutives du paramètre de la nappe et entre deux fonctions (une fois celles-ci évaluées). Même sens que dans D[DEFI_NAPPE].
Quand le concept produit est une fonction (réelle ou complexe), le mot-clé INTERPOL définit le type d’interpolation pour les abscisses et les ordonnées de la fonction. On attend jusqu’à deux valeurs. Si une seule valeur est fournie, elle est utilisée pour les abscisses et les ordonnées. Même sens que dans [DEFI_FONCTION].
mot-clés PROL_DROITE et PROL_GAUCHE#
Ils définissent le type de prolongement à droite (respectivement à gauche) du domaine de définition de la variable:
“CONSTANT” pour un prolongement avec la dernière (ou la première) valeur de la fonction,
“LINEAIRE” pour un prolongement le long du premier segment défini (PROL_GAUCHE) ou du dernier segment défini (PROL_DROITE),
“EXCLU” si l’extrapolation des valeurs en dehors du domaine de définition du paramètre est interdite.
Mots-clefs NOM_PARA_FONC/INTERPOL_FONC/PROL_DROITE_FONC/PROL_GAUCHE_FONC#
Ces mots clés permettent de modifier les attributs de la nappe et s’appliquent aux paramètres des fonctions de celle-ci. Ils ont la même signification que les mots clés sans le suffixe FONC.
NOM_PARA_FONC est le nom du paramètre des fonctions (comme dans [DEFI_NAPPE]).
INTERPOL_FONC est le type d’interpolation pour les abscisses et ordonnées des fonctions de la nappe (identique au mot-clé INTERPOL du mot-clé facteur DEFI_FONCTION de [DEFI_NAPPE]).
PROL_GAUCHE_FONC/PROL_DROITE_FONC définissent les prolongements des fonctions (identiques aux mots-clés PROL_GAUCHE/PROL_DROITE du mot-clé facteur DEFI_FONCTION de [DEFI_NAPPE]).
mot-clé INFO#
Si INFO=2, on imprime la fonction (IMPR_FONCTION format TABLEAU) dans le fichier MESSAGE.
Exemples#
Calcul d’une enveloppe#
Le fichier de commandes qui suit:
DEPI=2. * pi
PAS0=DEPI / 200.
LI1=DEFI_LIST_REEL( DEBUT=0.,
INTERVALLE=_F( JUSQU_A = DEPI, PAS = PAS0) )
COa = FORMULE(NOM_PARA=”INST”,VALE=”cos(INST)”)
SIa = FORMULE(NOM_PARA=”INST”,VALE=”sin(INST)”)
CO = CALC_FONC_INTERP( FONCTION=COa, LIST_PARA=LI1,
NOM_PARA=”INST”,
NOM_RESU=”DEPL”,
PROL_GAUCHE=”EXCLU”, PROL_DROITE=”LINEAIRE”,
INTERPOL=”LIN”,
TITRE=” FONCTION COSINUS” )
SI = CALC_FONC_INTERP( FONCTION=SIa, LIST_PARA=LI1,
NOM_PARA=”INST”,
NOM_RESU=”DEPLACEMENT”,
PROL_GAUCHE=”EXCLU”,
PROL_DROITE=”CONSTANT”,
INTERPOL=”LIN”,
TITRE=” FONCTION SINUS “ )
ENV1=CALC_FONCTION( ENVELOPPE=_F( FONCTION = ( SI, CO, ),
CRITERE = “SUP”) )
Calcul de la dérivée de la fonction si#
Les commandes qui suivent
der1 = CALC_FONCTION( DERIVE=_F( FONCTION= si ),)
inst1 = 20. * pas
TEST_FONCTION( VALEUR= _F( FONCTION = der1, NOM_PARA = “inst”, VALE_PARA= inst1, VALE_REFE= COa(inst1),) )
produisent sur le fichier “RESULTAT” :
—- FONCTION : DER1 OK INST RELA -0.016 % VALE: 8.0888392298046D-01 6.28319E-01 TOLE 0.100 % REFE: 8.0901699437495D-01
Concaténation de deux fonctions#
DFC1=DEFI_FONCTION( NOM_PARA='X', NOM_RESU='Y',
VALE=( 0., 10., 4., 14., 6., 16.,), PROL_DROITE=”LINEAIRE”, PROL_GAUCHE=”LINEAIRE”
)
#
DFC2=DEFI_FONCTION( NOM_PARA=”X”, NOM_RESU=”Y”,
VALE=( 5., 25., 7., 27., 8., 28.,), PROL_DROITE=”LINEAIRE”, PROL_GAUCHE=”LINEAIRE”
)
#
DFC3=CALC_FONCTION( ASSE=_F(
FONCTION = ( DFC2, DFC1, ), SURCHARGE = “DROITE”)
)
DFC4=CALC_FONCTION( ASSE=_F(
FONCTION = ( DFC1, DFC2, ), SURCHARGE = “GAUCHE”)
)
Les valeurs de la fonction dfc3 sont:
x = 0. 4. 5. 7. 8. y = 10. 14. 25. 27. 28.
Les valeurs de la fonction dfc4 sont:
x = 0. 4. 6. 7. 8. y = 10. 14. 16. 27. 28.
Composition de deux fonctions#
fonc1 = DEFI_FONCTION ( NOM_PARA = 'X',
NOM_RESU = “F”, VALE = ( 0., 0., 2., 5., 3., 10., 5., 15., 7., 13., 8., 10., 10., 9., 12., 8., 13., 5., 15., 1., 20., 0. ) )
fonc2 = DEFI_FONCTION ( NOM_PARA = 'INST',
NOM_RESU = “X”, VALE = ( 0., 0., 0.1, 2., 0.2 , 4., 0.3 , 6., 0.4 , 8., 0.5 , 10., 0.6 , 12., 0.7 , 14., 0.8 , 16., 0.9 , 18., 1.0 , 20. ) )
comp1 = CALC_FONCTION ( COMPOSE= _F( FONC_RESU= fonc1,
FONC_PARA= fonc2 ) )
Les valeurs de la fonction comp1 sont:
inst = 0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
F = 0. 5. 12.5 14. 10. 9. 8. 3. 0.8 0.4 0.