%% Nome del file: \newcommand {\Cartellalatex} {/home/esg/Latex} \input{\Cartellalatex/input.tex} \setcounter{Contcap}{10} \setcounter{Contprop}{1} \begin{document}\Century{1100} \setlength {\parindent} {1em} \Capitolo {10. Interpolazione di Hermite} \Situazione{ Siano $\lambda_1, \ldots, \lambda_s \in \CC$ tutti distinti ed $m_1, \ldots, m_s \in~\NN~+~1$. Sia $m:= m_1 + \ldots + m_s$.} \Lemma { Siano $f \in \CC[x]$, $\alpha \in \CC$ e $p \in \NN$. Allora $\alpha$ \eacc uno zero di molteplicit\aacc (esatta) $p$ di $f$ se e solo se $f^{(j)} (\alpha) =0$ per ogni $j= 0, \ldots, p-1$ ed $f^{(p)} (\alpha) \neq 0$.} \Dimostrazione{Corso di Algebra oppure Scheja/Storch, pag. 109.} \Corollario { Sia $f \in \CC[x]$ un polinomio di grado $< m$ tale che per ogni $k= 1, \ldots, s$ si abbia $f^{(j)}(\lambda_k) =0$ per ogni $j=0, \ldots, m_k -1$. Allora $f=0$.} \Dimostrazione{MANCA} \Teorema{ Per ogni $k=1, \ldots, s$ ed ogni $j=0, \ldots, m_k -1$ sia dato un numero complesso $v_{ij}$. Allora esiste esattamente un polinomio $H \in \CC[x]$ di grado $0$ poniamo infine $v_k^{-} := (v_{k0}, \ldots, v_{k, t-1})$. } \Osservazione{ Diamo adesso due dimostrazioni costruttive del teorema 10.4. Nella prima, basata sul teorema cinese del resto, seguiamo Gathen/Gerhard, pagg. 102-105 e 111-113, nella seconda esponiamo, in modo leggermente modificato, lo schema alle differenze che si trova in Stoer, pagg. 44-47, e Deuflhard/Hohmann, pagg. 207-211.} \Lemma[(teorema cinese dei resti)]{$A$ sia un anello euclideo ed $a_1, \ldots, a_s \in A$ tale che $mcd(a_i, a_j)=1$ per ogni $i \neq j$. Sia $b_i := a_1 \cdots \widehat{a_i} \cdots a_s$ (con la notazione introdotta nella definizione 9.6) per ogni $i$. Per ogni $i$ allora $mcd(a_i, b_i)=1$ e quindi esistono $\alpha_i, \beta_i \in A$ tali che $\alpha_i a_i + \beta_i b_i =1$. Si noti che ci\oacc implica ($\beta_i b_i =1$, \text{ in } $A / a_i$), mentre \eacc chiaro che ($\beta_i b_i =0$, in $A / a_j$) per $j \neq i$ perch\'e in tal caso $ b_i = a_1 \cdots \widehat{a_i} \cdots a_j \cdots a_s$ (oppure $ b_i = a_1 \cdots a_j \cdots \widehat{a_i} \cdots a_s$) \eacc un multiplo di $a_j$. Siano adesso dati $c_1, \ldots, c_s \in A$. Se poniamo $c:= \beta_1 b_1 c_1 + \ldots + \beta_s b_s c_s$, allora ($c=c_i$, \text{ in } $A / a_i$) per ogni $i=1, \ldots, s$. Non \eacc difficile ( \eacc per noi irrilevante) dimostrare che $c$ \eacc univocamente determinato dal modulo $a_1 \cdots a_s$.} \Osservazione{ Sia $H \in \CC[x]$ come nel teorema 10.4. Allora $H$ possiede per ogni $k=1, \ldots, s$ uno sviluppo di Taylor\m $\begin{aligned} H &= H(\lambda_k) + H'(\lambda_k) (x -\lambda_k) + \ldots + \Frac{ H^{(m_k -1)}(\lambda_k)}{(m_k-1)!} (x - \lambda_k)^{m_k -1} + \ldots =\\ &= \underbrace{v_{k0} + v_{k1} (x - \lambda_k) + \ldots + \Frac{v_{k, m_k -1}}{(m_k -1)!} (x- \lambda_k)^{m_k -1}}_{=: H_k} + \ldots \end{aligned}$\m \NI e quindi ($H = H_k$, \text{ in } $\CC[x] \slash (x - \lambda_k)^{m_k -1}$) \quad (*)\m \NI Siccome i polinomi $(x - \lambda_i)^{m_i}$ sono a due a due relativamente primi, dal lemma 10.8 vediamo che $H$ \eacc univocamente determinato dalle relazioni (*).} \Osservazione{ Dal punto di vista numerico forse pi\uacc trasparente \eacc la tecnica del calcolo delle differenze che esponiamo adesso.} \Lemma{ Nelle ipotesi e con le notazioni della definizione 10.5 siano $i \neq l$ e $\begin{aligned} F&:= H [\lambda_1 : v_1, \ldots, \lambda_i : v_i^{-}, \ldots, \lambda_s : v_s]\\ G &:= H[\lambda_1 : v_1, \ldots, \lambda_l : v_l^{-}, \ldots, \lambda_s : v_s]. \end{aligned}$ \m \NI Allora\m $H= \Frac{x-\lambda_i}{\lambda_l-\lambda_i} F + \Frac{x-\lambda_l}{\lambda_i-\lambda_l}G$ } \Dimostrazione{MANCA} \Osservazione{Per s=1 il polinomio di interpolazione di Hermite coincide con lo sviluppo di Taylor:\m $H[\lambda_1: (v_{10}, \ldots, v_{1, m_1 -1})] = \displaystyle \sum_{j=0}^{m_1 -1} v_{1j} \Frac{(x-\lambda_1)^j}{j!}$} \Dimostrazione{?} \Nota{Otteniamo cos\iacc un semplice algoritmo ricorsivo per il calcolo del polinomio di interpolazione di Hermite: Per $s=1$ utilizziamo il lemma 10.11, altrimenti riduciamo il grado del problema mediante il lemma 10.10. Soprattutto nei conti a mano si pu\acc{o} accorciare l'algoritmo utilizzando che $H[ \lambda_1 :(v_10), \ldots, \lambda_s: (v_{s0})] = v_{10} L_1 + \ldots + v_{s0}L_s$ nella notazione della osservazione 9.7.} \Esempio{ Calcoliamo $H:=H[1: (3), 2: (7, 1)]$. MANCA} \Esempio{ Calcoliamo $H:=H[1: (3, 4), 0: (6, 2, 10)]$. MANCA} \Nota{ Possiamo realizzare l'algoritmo indicato nella nota 10.12 in Python mediante le seguenti funzioni che utilizzano il modulo \C{swiginac}. MANCA} \Nota{ Nelle ipotesi e con le notazioni della definizione 10.5 denotiamo con $\Delta [ \lambda_1 : v_1, \ldots, \lambda_s : v_s]$ il coefficiente della potenza massimale formale, cio\eacc di $x^{m-1}$, in $H[\lambda_1 : v_1, \ldots, \lambda_s : v_s]$. Scegliamo questa notazione perch\'e questi coefficienti corrispondono a uno schema alle differenze che deriva dal lemma 10.10, come vediamo adesso. Elenchiamo inoltre le condizioni $H^{(0)} (\lambda_1) = v_{10}, \ldots, H^{(m_1 - 1)} (\lambda_1) =~ v_{1, m_1 -1},\\ H^{(0)} (\lambda_2) = v_{20}, \ldots$ nell'ordine indicato e denotiamo, per $i=0, \ldots, m-1$, con $H [\lambda_1 : v_1, \ldots, \lambda_s : v_s]_{[i]}$ il polinomio di interpolazione di Hermite che corrisponde alle prime $i+1$ condizioni, in modo analogo sia definito $\Delta [ \lambda_1 : v_1, \ldots, \lambda_s : v_s]_{[i]}$. In particolare $H [\lambda_1 : v_1, \ldots, \lambda_s : v_s]_{[0]} = \Delta [\lambda_1 : v_1, \ldots, \lambda_s : v_s]_{[0]} = v_{10}$. Definiamo poi $(\alpha_1, \ldots, \alpha_m) : = ( \underbrace{\lambda_1, \ldots, \lambda_1}_{m_1}, \ldots, \underbrace{\lambda_s, \ldots, \lambda_s}_{m_s})$ ed infine\m $\begin{aligned} (x- \alpha)_{[0]} &:= 1 \quad , \quad (x - \alpha)_{[1]} := x - \alpha_1 \quad ,\\ (x- \alpha)_{[i]} &:= (x - \alpha_1) \cdots (x - \alpha_i) \mbox{ per } i=1, \ldots, m. \end{aligned}$ } \Osservazione{ Nelle ipotesi e con le notazioni della nota 10.16 si hanno le seguenti relazioni:\m \lista{ \item [1] Se $i \neq l$, allora\m $\Delta[ \lambda_1:v_1, \ldots, \lambda_s :v_s] = \Frac{ \Delta[ \lambda_1:v_1, \ldots, \lambda_i : v_i^{-}, \ldots, \lambda_s :v_s] - \Delta[ \lambda_1:v_1, \ldots, \lambda_l:v_l^{-}, \ldots, \lambda_s :v_s]}{\lambda_p - \lambda_i}$ \item [2] $\Delta [ \lambda_1 : v_1 ] = \Frac{ v_{1, m_1 -1}}{(m_1 -1)!}$.} } \Dimostrazione{ Direttamente dal lemma 10.10 e dalla osservazione 10.11.} \Osservazione{ Con le notazioni della nota 5.16 vale\m $H[\lambda_1:v_1, \ldots, \lambda_s:v_s] = \displaystyle \sum_{i=0}^{m-1} \Delta [ \lambda_1: v_1, \ldots, \lambda_s :v_s]_{[i]} (x - \alpha)_{[i]}$.} \Dimostrazione{MANCA} \Esempio{ Calcoliamo $H:= H[ 1 : (3), 2 : (7, 1)]$ con il metodo della osservazione 10.18. MANCA} \Esempio{ Calcoliamo $H:= H[ 0 : (6, 2, 10), 1 : (3, 4)]$ con il metodo della osservazione 10.18. MANCA} \Nota{ I calcoli che utilizziamo nell'osservazione 10.18 possono essere semplificati mediante il seguente schema alle differenze che illustriamo per il caso\m $H=H[\lambda_1 : (v_{10}, v_{11}, v_{12}), \lambda_2: (v_{20}), \lambda_3: (v_{30}, v_{31}), \lambda_4: (v_{40}, v_{41})]$.\m \Array [lllllllll] {\lambda_1 : (v_{10}, v_{11}, v_{12})\\[2ex] & v_{10}\\[2ex] & [\lambda_1] & v_{11}\\[2ex] & v_{10} & [\lambda_1] & v_12 \\[2ex] & [\lambda_1] & v_{11} & [\lambda_1, \lambda_2] & \Frac{\operatorname{diff.}}{\lambda_2 - \lambda_1}\\[2ex] & v_{10} & [\lambda_1, \lambda_2] & \Frac{\operatorname{diff.}}{\lambda_2 - \lambda_1} & [\lambda_1, \lambda_3] & \Frac{\operatorname{diff.}}{\lambda_3 - \lambda_1}\\[2ex] \lambda_2 : (v_{20}) & [\lambda_1, \lambda_2] & \Frac{ v_{20} - v_{10}}{\lambda_2 - \lambda_1} & [\lambda_1, \lambda_3] & \Frac{ \operatorname{diff.}}{\lambda_3 - \lambda_1} & [\lambda_1, \lambda_3] & \Frac{\operatorname{diff.}}{\lambda_3 - \lambda_1}\\[2ex] & v_{20} & [\lambda_1, \lambda_3] & \Frac{\operatorname{diff.}}{\lambda_3 - \lambda_1} & [\lambda_1, \lambda_3] & \Frac{\operatorname{diff.}}{\lambda_3 - \lambda_1} & [\lambda_1, \lambda_4] & \Frac{\operatorname{diff.}}{\lambda_4 - \lambda_1}\\[2ex] \lambda_3 : (v_{30}, v_{31}) & [\lambda_2, \lambda_3] & \Frac{v_{30} - v_{20}}{\lambda_3 - \lambda_2} & [\lambda_1, \lambda_3] & \Frac{\operatorname{diff.}}{\lambda_3 - \lambda_1} &[\lambda_1, \lambda_4] & \Frac{\operatorname{diff.}}{\lambda_4 - \lambda_1} &[\lambda_1, \lambda_4] & \Frac{\operatorname{diff.}}{\lambda_4 - \lambda_1} \\[2ex] & v_{30} & [\lambda_2, \lambda_3] & \Frac{ \operatorname{diff.}}{\lambda_3 - \lambda_2} & [\lambda_1, \lambda_4] & \Frac{ \operatorname{diff.}}{\lambda_4 - \lambda_1} & [\lambda_1, \lambda_4] & \Frac{ \operatorname{diff.}}{\lambda_4 - \lambda_1}\\[2ex] & [\lambda_3] & v_{31} & [\lambda_2, \lambda_4] & \Frac{\operatorname{diff.}}{\lambda_4 - \lambda_2} & [\lambda_1, \lambda_4] & \Frac{\operatorname{diff.}}{\lambda_4 - \lambda_1} \\[2ex] & v_{30} & [\lambda_3, \lambda_4] & \Frac{\operatorname{diff.}}{\lambda_4 - \lambda_3} & [\lambda_2, \lambda_4] & \Frac{\operatorname{diff.}}{\lambda_4 - \lambda_2}\\[2ex] \lambda_4 : ( v_{40}, v_{41}) & [\lambda_3, \lambda_4] & \Frac{ v_{40} - v_{30}}{\lambda_4 - \lambda_3} & [\lambda_3, \lambda_4] & \Frac{\operatorname{diff.}}{\lambda_4 - \lambda_3}\\[2ex] & v_{40} & [\lambda_3, \lambda_4] & \Frac{\operatorname{diff.}}{\lambda_4 - \lambda_3}\\[2ex] & [\lambda_4] & v_{41}\\[2ex] & v_{40}\\ }\m \NI MANCA SPIEGAZIONE. \Eacc chiaro che nella diagonale superiore otteniamo i coefficienti $\Delta[\lambda_1 : v_1, \ldots, \lambda_s : v_s]_{[i]}.$} \Esempio{ Calcoliamo $H=H[0 : (-1, -2), 1: (0, 10, 40)]$. MANCA} \Esempio{ Calcoliamo $H=H[1 : (2, 5, 6), 2: (11), 3: (0, -27), 4: (-37, 158)]$. MANCA} \Esempio{ Per $\lambda_1 \neq \lambda_2$ calcoliamo $H=H[\lambda_1 : (1, 0, 0), \lambda_2: (0, 0)]$. MANCA} \Definizione{ Per $k=1, \ldots, s$ e $j=0, \ldots, m_k -1$ definiamo $H_{kj}$ come la soluzione del problema di interpolazione $H_{kj}^{(\alpha)} (\lambda_{\beta}) = \delta_{k \beta} \delta_{j}^{\alpha}$ per $\beta= 1, \ldots, s$ ed $\alpha=0, \ldots, m_{\beta} -1$. Abbiamo quindi $H_{10} = H(\lambda_1 : (1, 0, \ldots, 0), \ldots), H_{11}= H(\lambda_1 : (0, 1, \ldots, 0), \ldots),\\ H_{12}=H(\lambda_1 : (0, 0, 1, \ldots, 0), \ldots), \ldots, H_{20} = H(\lambda_2 : (1, 0, \ldots, 0), \ldots), \\H_{21}= H(\lambda_2 : (0, 1, \ldots, 0), \ldots), \ldots$. I polinomi $H_{kj}$ sono detti \C{polinomi di interpolazione fondamentale di Hermite}. Nell'esempio 10.24 abbiamo calcolato $H_{10}$ per $m_1 = 3$, $m_2 = 2$.} \Proposizione{ Nella situazione della definizione 10.25 siano adesso dati i numeri complessi $v_{kj}$ per $k=1, \ldots, s$ e $j=0, \ldots, m_k -1$. Sia $H:= H[\lambda_1 : v_1, \ldots, \lambda_s : v_s]$. Allora\m $H=\displaystyle \sum_{k=1}^{s} \sum_{j=0}^{m_s -1} v_{kj} H_{kj}$.} \Dimostrazione{MANCA} \end{document}