Skip to content

Commit 3d35d04

Browse files
committed
ACN Method of fixed point
1 parent d8c8d9b commit 3d35d04

2 files changed

Lines changed: 290 additions & 12 deletions

File tree

3rd Year/Analisi e Calcolo Numerico/code/Python Notebooks/02-sistemi-non-lineari.ipynb

Lines changed: 177 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,20 @@
99
},
1010
{
1111
"cell_type": "code",
12-
"execution_count": 1,
12+
"execution_count": 85,
1313
"metadata": {},
1414
"outputs": [],
1515
"source": [
16-
"from numpy import e\n",
16+
"import numpy as np\n",
1717
"import matplotlib.pyplot as plt\n",
1818
"from matplotlib.pyplot import savefig\n",
19+
"from math import sqrt\n",
20+
"import polars as pl\n",
21+
"pl.Config.set_tbl_rows(100)\n",
1922
"\n",
2023
"def show10(n):\n",
24+
" if n == None:\n",
25+
" return \"N/A\"\n",
2126
" return \"{0:.10f}\".format(n)"
2227
]
2328
},
@@ -37,7 +42,7 @@
3742
},
3843
{
3944
"cell_type": "code",
40-
"execution_count": 2,
45+
"execution_count": null,
4146
"metadata": {},
4247
"outputs": [
4348
{
@@ -55,7 +60,7 @@
5560
],
5661
"source": [
5762
"def f1(l: float) -> float:\n",
58-
" return e**l + 0.435/l * (e**l - 1) - 1.564\n",
63+
" return np.e**l + 0.435/l * (np.e**l - 1) - 1.564\n",
5964
"\n",
6065
"\n",
6166
"for i in range(10, 21, 2):\n",
@@ -352,6 +357,174 @@
352357
"\n",
353358
"savefig('../../notes/assets/image-004.png', transparent=True, bbox_inches=\"tight\")"
354359
]
360+
},
361+
{
362+
"cell_type": "markdown",
363+
"metadata": {},
364+
"source": [
365+
"## 1.5) Metodo del punto unito"
366+
]
367+
},
368+
{
369+
"cell_type": "code",
370+
"execution_count": 97,
371+
"metadata": {},
372+
"outputs": [
373+
{
374+
"name": "stdout",
375+
"output_type": "stream",
376+
"text": [
377+
"shape: (31, 6)\n",
378+
"┌─────┬──────────┬──────────┬─────────────┬──────────┬──────────┐\n",
379+
"│ it ┆ phi1 ┆ phi2 ┆ phi3 ┆ phi4 ┆ phi5 │\n",
380+
"│ --- ┆ --- ┆ --- ┆ --- ┆ --- ┆ --- │\n",
381+
"│ i64 ┆ f64 ┆ f64 ┆ f64 ┆ f64 ┆ f64 │\n",
382+
"╞═════╪══════════╪══════════╪═════════════╪══════════╪══════════╡\n",
383+
"│ 0 ┆ 1.5 ┆ 1.5 ┆ 1.5 ┆ 1.5 ┆ 1.5 │\n",
384+
"│ 1 ┆ 1.286954 ┆ 1.0 ┆ -0.875 ┆ 0.816497 ┆ 1.373333 │\n",
385+
"│ 2 ┆ 1.402541 ┆ 1.817121 ┆ 6.732422 ┆ 2.996909 ┆ 1.365262 │\n",
386+
"│ 3 ┆ 1.345458 ┆ null ┆ -469.720012 ┆ 1.0 ┆ 1.36523 │\n",
387+
"│ 4 ┆ 1.37517 ┆ null ┆ 1.0275e8 ┆ 2.44949 ┆ 1.36523 │\n",
388+
"│ 5 ┆ 1.360094 ┆ null ┆ -1.0849e24 ┆ 1.0 ┆ 1.36523 │\n",
389+
"│ 6 ┆ 1.367847 ┆ null ┆ 1.2771e72 ┆ 2.44949 ┆ 1.36523 │\n",
390+
"│ 7 ┆ 1.363887 ┆ null ┆ -2.0827e216 ┆ 1.0 ┆ 1.36523 │\n",
391+
"│ 8 ┆ 1.365917 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
392+
"│ 9 ┆ 1.364878 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
393+
"│ 10 ┆ 1.36541 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
394+
"│ 11 ┆ 1.365138 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
395+
"│ 12 ┆ 1.365277 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
396+
"│ 13 ┆ 1.365206 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
397+
"│ 14 ┆ 1.365242 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
398+
"│ 15 ┆ 1.365224 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
399+
"│ 16 ┆ 1.365233 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
400+
"│ 17 ┆ 1.365228 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
401+
"│ 18 ┆ 1.365231 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
402+
"│ 19 ┆ 1.36523 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
403+
"│ 20 ┆ 1.36523 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
404+
"│ 21 ┆ 1.36523 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
405+
"│ 22 ┆ 1.36523 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
406+
"│ 23 ┆ 1.36523 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
407+
"│ 24 ┆ 1.36523 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
408+
"│ 25 ┆ 1.36523 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
409+
"│ 26 ┆ 1.36523 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
410+
"│ 27 ┆ 1.36523 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
411+
"│ 28 ┆ 1.36523 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
412+
"│ 29 ┆ 1.36523 ┆ null ┆ null ┆ 1.0 ┆ 1.36523 │\n",
413+
"│ 30 ┆ 1.36523 ┆ null ┆ null ┆ 2.44949 ┆ 1.36523 │\n",
414+
"└─────┴──────────┴──────────┴─────────────┴──────────┴──────────┘\n"
415+
]
416+
}
417+
],
418+
"source": [
419+
"def phi1(x): return sqrt(10 - x**3)/2\n",
420+
"def phi2(x): return (10 - 4*(x**2))**(1/3)\n",
421+
"def phi3(x): return -x**3 - 4*(x**2) + 10 + x\n",
422+
"def phi4(x): return sqrt((10 / x) - 4 * x)\n",
423+
"def phi5(x): return x - (x**3 + 4*(x**2) - 10)/(3*(x**2) + 8 * x)\n",
424+
"\n",
425+
"df = pl.DataFrame(\n",
426+
" {\n",
427+
" \"it\": [0],\n",
428+
" \"phi1\": [1.5],\n",
429+
" \"phi2\": [1.5],\n",
430+
" \"phi3\": [1.5],\n",
431+
" \"phi4\": [1.5],\n",
432+
" \"phi5\": [1.5],\n",
433+
" }\n",
434+
")\n",
435+
"\n",
436+
"df_cols = df.columns[1:]\n",
437+
"\n",
438+
"for i in range(30):\n",
439+
" new_df = pl.DataFrame({\n",
440+
" \"it\": [i+1],\n",
441+
" \"phi1\": [0.0],\n",
442+
" \"phi2\": [0.0],\n",
443+
" \"phi3\": [0.0],\n",
444+
" \"phi4\": [0.0],\n",
445+
" \"phi5\": [0.0],\n",
446+
" })\n",
447+
"\n",
448+
" for fn_idx, fn in enumerate([phi1, phi2, phi3, phi4, phi5]):\n",
449+
" current_x = df[i, df_cols[fn_idx]]\n",
450+
"\n",
451+
" if current_x != None:\n",
452+
" try:\n",
453+
" new_x = fn(df[i, df_cols[fn_idx]])\n",
454+
" except (ValueError, ZeroDivisionError):\n",
455+
" new_x = 1\n",
456+
" except OverflowError:\n",
457+
" new_x = None\n",
458+
"\n",
459+
" if type(new_x) == complex:\n",
460+
" new_x = None\n",
461+
"\n",
462+
" new_df[0, df_cols[fn_idx]] = new_x\n",
463+
" else:\n",
464+
" new_df[0, df_cols[fn_idx]] = None\n",
465+
" \n",
466+
" df = pl.concat([df, new_df])\n",
467+
" \n",
468+
"print(df)"
469+
]
470+
},
471+
{
472+
"cell_type": "code",
473+
"execution_count": 96,
474+
"metadata": {},
475+
"outputs": [
476+
{
477+
"name": "stdout",
478+
"output_type": "stream",
479+
"text": [
480+
"\\hline \n",
481+
"$1$ & $1.2869537676$ & $1.0000000000$ & $-0.875$ & $0.8164965809$ & $1.3733333333$ \\\\\n",
482+
"\\hline \n",
483+
"$2$ & $1.4025408035$ & $1.8171205928$ & $6.732421875$ & $2.9969088058$ & $1.3652620149$ \\\\\n",
484+
"\\hline \n",
485+
"$3$ & $1.3454583740$ & $N/A$ & $-469.72001200169325$ & $1.0000000000$ & $1.3652300139$ \\\\\n",
486+
"\\hline \n",
487+
"$4$ & $1.3751702528$ & $N/A$ & $102754555.18738511$ & $2.4494897428$ & $1.3652300134$ \\\\\n",
488+
"\\hline \n",
489+
"$5$ & $1.3600941928$ & $N/A$ & $-1.0849338705317464e+24$ & $1.0000000000$ & $1.3652300134$ \\\\\n",
490+
"\\hline \n",
491+
"$6$ & $1.3678469676$ & $N/A$ & $1.277055591444378e+72$ & $2.4494897428$ & $1.3652300134$ \\\\\n",
492+
"\\hline \n",
493+
"$7$ & $1.3638870039$ & $N/A$ & $-2.082712908581025e+216$ & $1.0000000000$ & $1.3652300134$ \\\\\n",
494+
"\\hline \n",
495+
"$8$ & $1.3659167334$ & $N/A$ & $1.0$ & $2.4494897428$ & $1.3652300134$ \\\\\n",
496+
"\\hline \n",
497+
"$9$ & $1.3648782172$ & $N/A$ & $6.0$ & $1.0000000000$ & $1.3652300134$ \\\\\n",
498+
"\\hline \n",
499+
"$10$ & $1.3654100612$ & $N/A$ & $-344.0$ & $2.4494897428$ & $1.3652300134$ \\\\\n",
500+
"\\hline \n",
501+
"$11$ & $1.3651378207$ & $N/A$ & $40233906.0$ & $1.0000000000$ & $1.3652300134$ \\\\\n",
502+
"\\hline \n",
503+
"$12$ & $1.3652772085$ & $N/A$ & $-6.512933351455806e+22$ & $2.4494897428$ & $1.3652300134$ \\\\\n",
504+
"\\hline \n",
505+
"$13$ & $1.3652058503$ & $N/A$ & $2.762675662562132e+68$ & $1.0000000000$ & $1.3652300134$ \\\\\n",
506+
"\\hline \n",
507+
"$14$ & $1.3652423837$ & $N/A$ & $-2.108578167848422e+205$ & $2.4494897428$ & $1.3652300134$ \\\\\n",
508+
"\\hline \n",
509+
"$15$ & $1.3652236802$ & $N/A$ & $1.0$ & $1.0000000000$ & $1.3652300134$ \\\\\n",
510+
"\\hline \n",
511+
"$16$ & $1.3652332557$ & $N/A$ & $6.0$ & $2.4494897428$ & $1.3652300134$ \\\\\n",
512+
"\\hline \n",
513+
"$17$ & $1.3652283535$ & $N/A$ & $-344.0$ & $1.0000000000$ & $1.3652300134$ \\\\\n",
514+
"\\hline \n",
515+
"$18$ & $1.3652308632$ & $N/A$ & $40233906.0$ & $2.4494897428$ & $1.3652300134$ \\\\\n",
516+
"\\hline \n",
517+
"$19$ & $1.3652295783$ & $N/A$ & $-6.512933351455806e+22$ & $1.0000000000$ & $1.3652300134$ \\\\\n",
518+
"\\hline \n",
519+
"$20$ & $1.3652302362$ & $N/A$ & $2.762675662562132e+68$ & $2.4494897428$ & $1.3652300134$ \\\\\n"
520+
]
521+
}
522+
],
523+
"source": [
524+
"for row in df.rows():\n",
525+
" if row[0] <= 20 and row[0] > 0:\n",
526+
" print(f\"\\\\hline \\n${row[0]}$ & ${show10(row[1])}$ & ${show10(row[2])}$ & ${row[3]}$ & ${show10(row[4])}$ & ${show10(row[5])}$ \\\\\\\\\")"
527+
]
355528
}
356529
],
357530
"metadata": {

3rd Year/Analisi e Calcolo Numerico/notes/chaps/chap3_sistemi_non_lineari.tex

Lines changed: 113 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -451,6 +451,19 @@ \section{Metodi iterativi a un punto (o del punto unito)}
451451
dove $\phi$ è detta \textbf{funzione di iterazione}
452452
\end{definition}
453453

454+
Per meglio spiegare come è possibile trovare, data una funzione $f$, i punti uniti della sua funzione di iterazione associata $\phi$, segue ora un esempio che illustra anche la correlazione tra le due funzioni:
455+
456+
\begin{example}
457+
Consideriamo la funzione $f(x) \eq x^2 - x - 2$: vogliamo trovare le radici di $f(x)$ usando il metodo del punto unito. Iniziamo dunque trovando $\phi(x)$:
458+
\[ \phi(x) \eq x^2 - 2 \eq x \]
459+
460+
Fatto ciò, possiamo procedere nel trovare le radici di $f(x)$, e lo possiamo fare controllando le intersezioni tra $y \eq x$ e $\phi(x)$:
461+
462+
\begin{center}
463+
\includegraphics[width=\linewidth]{assets/image-006.png}
464+
\end{center}
465+
\end{example}
466+
454467
Ma in cosa consiste dunque il metodo del punto unito? In sintesi, questo consente di trovare le radici di un'equazione riscrivendola prima in una forma equivalente, e poi recuperando le radici di questa forma equivalente:
455468
\[ f(x) \eq 0 \quad \Longleftrightarrow \quad x \eq \phi(x) \]
456469

@@ -462,7 +475,8 @@ \section{Metodi iterativi a un punto (o del punto unito)}
462475
Se il metodo è convergente, allora una buona approssimazione di $\xi$ viene data dal valore $x_n$, rispettando dunque il seguente criterio:
463476
\[ |x_n - x_{n - 1}| \leq \epsilon \]
464477

465-
La convergenza del metodo può essere meglio formalizzata come segue:
478+
La convergenza del metodo richiede che due condizioni siano soddisfatte: una necessaria e una sufficiente. Iniziamo a illustrare, in una maniera meglio formalizzata, la condizione necessaria:
479+
466480
\begin{theorem}{Condizione necessaria per la convergenza}
467481
Se la successione generata da:
468482
\[ \begin{cases}
@@ -473,15 +487,106 @@ \section{Metodi iterativi a un punto (o del punto unito)}
473487
è convergente a un valore $\tau$ e $\phi$ è continua in $\tau$, allora $\tau$ è \textbf{punto unito} di $\phi$, cioè $\tau \eq \phi(\tau)$
474488
\end{theorem}
475489

476-
Segue ora un esempio per meglio spiegare l'uso del metodo del punto unito:
490+
Illustriamo ora un altro esempio, per meglio introdurre la condizione sufficiente di convergenza:
477491

478492
\begin{example}
479-
Consideriamo la funzione $f(x) \eq x^2 - x - 2$: vogliamo trovare le radici di $f(x)$ usando il metodo del punto unito. Iniziamo dunque trovando $\phi(x)$:
480-
\[ \phi(x) \eq x^2 - 2 \eq x \]
493+
Consideriamo la funzione $f(x) \eq x^3 + 4x^2 - 10 \eq 0$: vogliamo verificare che, nell'intervallo $[1, \; 2]$ ci sia una singola radice, e vogliamo approssimare la radice tramite il metodo del punto unito.
494+
\nwl
495+
Possiamo verificare facilmente che la funzione ha una sola radice nell'intervallo specificato: infatti, non solo $f(1) \cdot f(2) < 0$, il che vuol dire che la funzione interseca l'asse $x$ almeno una volta, ma $f(x)$ è anche monotona crescente. Quest'ultima informazione ci viene data dalla derivata, che ha radici fuori dall'intervallo in cui siamo interessati. Dunque, la funzione è monotona crescente in $[1, \; 2]$, il che vuol dire che ha solo una radice nell'intervallo interessato.
496+
\nwl
497+
Ora passiamo al calcolare la funzione di iterazione. Possiamo trovarne almeno 5:
498+
\begin{itemize}
499+
\item [1)] tramite l'isolamento di $x^2$:
500+
\[ x^2 \eq \frac{10 - x^3}{4} \; \Longrightarrow \; x \eq \frac{\sqrt{10 - x^3}}{2} \eq \phi_1(x) \]
501+
502+
\item [2)] tramite l'isolamento di $x^3$:
503+
\[ x^3 \eq 10 - 4x^2 \; \Longrightarrow \; x \eq \sqrt[3]{10 - 4x^2} \eq \phi_2(x) \]
504+
505+
\item [3)] aggiungendo $-x$ a entrambi i membri:
506+
\[ x^3 + 4x^2 - 10 - x \eq -x \; \Longrightarrow \; x \eq -x^3 - 4x^2 + 10 + x \eq \phi_3(x) \]
507+
508+
\item [4)] dividendo per $x$ e isolando $x^2$:
509+
\[ \frac{x^3 + 4x^2 - 10}{x} \eq 0 \; \Longrightarrow \; x \eq \left( \frac{10}{x} - 4x \right)^{\frac{1}{2}} \eq \phi_4(x) \]
510+
511+
\item [5)] tramite il metodo di Newton:
512+
\[ x - \frac{f(x)}{f'(x)} \eq x \; \Longrightarrow \; x \eq x - \frac{x^3 + 4x^2 - 10}{3x^2 + 8x} \eq \phi_5(x) \]
513+
\end{itemize}
514+
515+
Utilizziamo ora il metodo del punto fisso per produrre le approssimazioni della nostra radice $\xi$; per farlo, useremo il seguente algoritmo:
516+
\[ \begin{cases}
517+
x_0 \eq 1,5 & \\
518+
x_n \eq \phi(x_{n - 1}) & \text{per } n \eq 1, \; 2, \; ...
519+
\end{cases} \]
520+
521+
Dopo 20 iterazioni per tutti i metodi, possiamo notare come solo alcune funzioni abbiano portato alla convergenza, benché tutte queste siano funzionalmente identiche:
481522

482-
Fatto ciò, possiamo procedere nel trovare le radici di $f(x)$, e lo possiamo fare controllando le intersezioni tra $y \eq x$ e $\phi(x)$:
483-
484523
\begin{center}
485-
\includegraphics[width=\linewidth]{assets/image-006.png}
524+
\resizebox{\linewidth}{!}{
525+
\renewcommand{\arraystretch}{1.3}
526+
\begin{tabular}{|c|c|c|c|c|c|}
527+
\hline
528+
\textbf{Iterazione} & $\mathbf{\phi_1(x)}$ & $\mathbf{\phi_2(x)}$ & $\mathbf{\phi_3(x)}$ & $\mathbf{\phi_4(x)}$ & $\mathbf{\phi_5(x)}$ \\
529+
\hline\hline
530+
$1$ & $1.2869537676$ & $1.0000000000$ & $-0.875$ & $0.8164965809$ & $1.3733333333$ \\
531+
\hline
532+
$2$ & $1.4025408035$ & $1.8171205928$ & $6.732421875$ & $2.9969088058$ & $1.3652620149$ \\
533+
\hline
534+
$3$ & $1.3454583740$ & N/A & $-469.72001200$ & $1.0000000000$ & $1.3652300139$ \\
535+
\hline
536+
$4$ & $1.3751702528$ & N/A & $102754555.19$ & $2.4494897428$ & $1.3652300134$ \\
537+
\hline
538+
$5$ & $1.3600941928$ & N/A & $-1.0849338705 \cdot 10^{24}$ & $1.0000000000$ & $1.3652300134$ \\
539+
\hline
540+
$6$ & $1.3678469676$ & N/A & $1.2770555914 \cdot 10^{72}$ & $2.4494897428$ & $1.3652300134$ \\
541+
\hline
542+
$7$ & $1.3638870039$ & N/A & $-2.0827129086 \cdot 10^{216}$ & $1.0000000000$ & $1.3652300134$ \\
543+
\hline
544+
$8$ & $1.3659167334$ & N/A & N/A & $2.4494897428$ & $1.3652300134$ \\
545+
\hline
546+
$9$ & $1.3648782172$ & N/A & N/A & $1.0000000000$ & $1.3652300134$ \\
547+
\hline
548+
$10$ & $1.3654100612$ & N/A & N/A & $2.4494897428$ & $1.3652300134$ \\
549+
\hline
550+
$11$ & $1.3651378207$ & N/A & N/A & $1.0000000000$ & $1.3652300134$ \\
551+
\hline
552+
$12$ & $1.3652772085$ & N/A & N/A & $2.4494897428$ & $1.3652300134$ \\
553+
\hline
554+
$13$ & $1.3652058503$ & N/A & N/A & $1.0000000000$ & $1.3652300134$ \\
555+
\hline
556+
$14$ & $1.3652423837$ & N/A & N/A & $2.4494897428$ & $1.3652300134$ \\
557+
\hline
558+
$15$ & $1.3652236802$ & N/A & N/A & $1.0000000000$ & $1.3652300134$ \\
559+
\hline
560+
$16$ & $1.3652332557$ & N/A & N/A & $2.4494897428$ & $1.3652300134$ \\
561+
\hline
562+
$17$ & $1.3652283535$ & N/A & N/A & $1.0000000000$ & $1.3652300134$ \\
563+
\hline
564+
$18$ & $1.3652308632$ & N/A & N/A & $2.4494897428$ & $1.3652300134$ \\
565+
\hline
566+
$19$ & $1.3652295783$ & N/A & N/A & $1.0000000000$ & $1.3652300134$ \\
567+
\hline
568+
$20$ & $1.3652302362$ & N/A & N/A & $2.4494897428$ & $1.3652300134$ \\
569+
\hline
570+
\end{tabular}
571+
}
486572
\end{center}
487-
\end{example}
573+
574+
Come possiamo notare, soltanto due funzioni riescono a convergere al valore della radice, mentre tutte le altre invece divergono (addirittura, $\phi_2(x)$ inizia a manifestare numeri complessi e $\phi_3(x)$ genera overflow dopo la 7$^{\text{a}}$ iterazione).
575+
\end{example}
576+
577+
Con lo scorso esempio possiamo facilmente giungere alla conclusione che non tutte le funzioni di iterazione sono valide per essere usate con il metodo del punto unito. Serve dunque introdurre una nuova condizione, per meglio filtrare quali funzioni sono accettabili:
578+
579+
\begin{theorem}{Condizione sufficiente per la convergenza}
580+
Se una funzione d'iterazione $\phi$ è \textbf{derivabile} in un intorno $I \eq [a, \; b]$ e:
581+
\begin{itemize}
582+
\item con $\phi \; : \; I \; \longrightarrow \; I$, dove
583+
\[ a \leq \min_{x \in I} \phi(x) \leq \max_{x \in I} \phi(x) \leq b \]
584+
\item $\exists \; k \in (0, \; 1)$ tale che $|\phi'(x)| \leq k, \; \forall x \in I$;
585+
\end{itemize}
586+
587+
allora:
588+
\begin{itemize}
589+
\item esiste un \textbf{unico punto unito} $\xi \in I$ di $\phi(\xi)$;
590+
\item la successione $x_n \eq \phi(x_{n - 1})$ è convergente a $\xi$ per ogni approssimazione iniziale $x_0 \in I$.
591+
\end{itemize}
592+
\end{theorem}

0 commit comments

Comments
 (0)