1 function [alpha,valfder]=val_derivee_multiple(i,X,Y)
\r
4 % val_derivee_multiple : sortie des valeurs des dérivées successives pour un support quelconque
\r
6 % *********************************************************
\r
8 % [alpha,valfder]=val_derivee_multiple(i,X,Y)
\r
9 % sorties des valeurs des dérivées successives (définies dans Y)
\r
10 % pour un support à n+1 points quelconque (ordonnée) stocké dans X,
\r
11 % pour un élément x_i de ce support.
\r
14 % variables d'entrées :
\r
15 % * i : entier compris entre 0 et n
\r
16 % * X : contient les valeurs x_j, pour 0 <=j<=n (dans l'ordre croissant)
\r
17 % * Y : contient les valeurs f^(r)(x_j), pour 0 <=j<=n, de telle sorte que :
\r
18 % si x_k est multiple avec x_{k-1}~=x_k=x_{k+1}=...=x_{k+r}~=x_{k+r+1} alors
\r
19 % y_k=f(x_k), y_{k+1}=f'(x_k), ..., y_{k+r}=f^(r)(x_k).
\r
21 % variables de sortie
\r
22 % * alpha : nombre d'éléments du n+1 uplet (x_0,x_1,...,x_n) égaux à x_i.
\r
23 % * valfder : vecteur ligne de longueur alpha tel que :
\r
24 % pour tout l dans {0,...,alpha-1}; valfder(l+1)=f^{l}(x_i).
\r
27 % ************ Fonctions auxiliaires utilisées ************
\r
31 % *********************************************************
\r
35 % Contrôles d'entrée
\r
37 % nombre d'arguments
\r
39 error('nombre d''arguments de la fonction incorrect');
\r
41 % taille des deux variables
\r
45 error('les deux tableaux n''ont pas la même taille');
\r
47 % vérification de l'ordre croissant des x_i
\r
50 if max(abs(sort(X)-X))~=0
\r
51 error('support non ordonné');
\r
54 % vérification de l'appartenance de i à {0,...,n}
\r
55 % vérification de l'ordre croissant des x_i
\r
56 if ~((0<=i) & (i<=n))
\r
57 error('le premier argument n''appartient pas à {0,...,n}');
\r
61 % Corps d'algorithme
\r