Metodi per il calcolo della radice quadrata

Da Wikipedia, l'enciclopedia libera.

1leftarrow.pngVoce principale: Radice quadrata.

Questa voce è dedicata ai molti metodi che sono stati utilizzati per calcolare radici quadrate di numeri reali positivi, o per meglio dire, per calcolare le radici quadrate principali di numeri razionali.

Note storiche[modifica | modifica sorgente]

I primi ad occuparsi del problema dell'estrazione di radice quadrata di un numero sono stati i babilonesi. Essi, tra i primi ad utilizzare un sistema di numerazione posizionale, avevano elaborato un procedimento per l'estrazione di radice quadrata che spesso viene attribuito a matematici posteriori, come Archita (428 - 365 a.C.) oppure ad Erone di Alessandria (vissuto tra il I e II secolo d.C.) oppure a Newton.

I babilonesi avevano ricavato un valore di \sqrt {2} pari a 1,414222 con un errore di circa 0,000008 dal valore vero. Di Erone di Alessandria, matematico e scienziato greco, si hanno poche notizie biografiche. Si occupò di meccanica, matematica e fisica. A lui si deve la formula (detta appunto formula di Erone) mediante la quale calcolare l'area di un triangolo qualsiasi, noti i suoi lati. Studiò metodi approssimati per risolvere problemi di misurazione, sia in geometria che in geodesia ed inventò un metodo per approssimare le radici quadrate e cubiche di numeri che non siano quadrati o cubi perfetti. E proprio del metodo di approssimazione delle radici quadrate di cui vogliamo occuparci.

Metodo babilonese[modifica | modifica sorgente]

Dato un valore  \alpha > 0 , un algoritmo per approssimare \sqrt \alpha comunemente usato è conosciuto come metodo babilonese e sfrutta gli stessi principi poi codificati nel metodo di Newton. Questo metodo funziona nel modo seguente:

  1. Poni  n = 1 e inizia con un valore arbitrario positivo x_n (quanto più esso è prossimo alla radice, tanto migliore è la convergenza dell'algoritmo)
  2. sostituisci x_n con la media di x_n e \alpha/x_n
  3. aumenta n e vai al punto 2

Questo algoritmo può essere rappresentato da

 x_{n + 1} = \frac{1}{2} \left( x_n + \frac{\alpha}{x_n} \right)

da cui si ricava  \lim_{n \to \infty} x_n = \sqrt{\alpha} .

Interpretazione geometrica[modifica | modifica sorgente]

Dato un numero  \alpha positivo, la sua radice quadrata può essere vista come il lato di un quadrato la cui area è proprio  \alpha stesso. L'idea è quella di usare dei rettangoli che possiedano la stessa area  \alpha del quadrato per arrivare attraverso approssimazioni successive ad avere proprio il quadrato che stiamo cercando.

Immaginiamo quindi di partire con un certo valore  x_1 per il lato del nostro rettangolo: l'altro lato misurerà  \frac{\alpha}{x_1} . Prendendo la media di questi due valori

 \frac{1}{2} \left( x_1 + \frac{\alpha}{x_1} \right),

abbiamo due possibilità:

  • la media è uguale a  x_1 , quindi abbiamo già trovato la  \sqrt{\alpha} ;
  • la media è diversa da  x_1 .

In questo secondo caso chiamiamo questo valore medio  x_2 e procediamo nello stesso modo usato per  x_1 : calcoliamo il valore dell'altro lato del rettangolo di area  \alpha e lato  x_2 , otteniamo un nuovo valore medio  x_3 e così via.

Daremo origine ad una successione di rettangoli equiestesi i cui lati saranno ad ogni passo più vicini in lunghezza, ottenendo al limite un quadrato e quindi il valore corretto della radice di  \alpha . Il metodo dà risposta corretta in numero finito di passi nel caso in cui  \alpha sia un quadrato perfetto.

Dimostrazione della convergenza[modifica | modifica sorgente]

Per dimostrare la correttezza di questo metodo, prendiamo la successione cercando di valutare la grandezza dell'elemento  x_n in termini di  \sqrt{\alpha} : quello che si può subito dire è che sia i termini della successione che  \alpha sono numeri reali positivi. Il termine n-esimo della successione è:

 x_n = \frac{1}{2} \left( x_{n-1} + \frac{\alpha}{x_{n-1}} \right) 
           = \frac{\sqrt{\alpha}}{2} \left( \frac{x_{n-1}}{\sqrt{\alpha}} + \frac{\sqrt{\alpha}}{x_{n-1}} \right).

Il secondo fattore della seconda eguaglianza è del tipo

 f(x) = \frac{x}{\sqrt{\alpha}} + \frac{\sqrt{\alpha}}{x} \qquad (x > 0)

funzione che ha un punto di minimo assoluto nel primo quadrante per  x = \sqrt{\alpha} in cui essa vale 2. In particolare, il valore 2 è assunto dalla funzione soltanto quando  x = \sqrt{\alpha} , mentre è sempre maggiore altrove. Da quanto detto segue che

 x_n \geq \frac{\sqrt{\alpha}}{2} \cdot 2 = \sqrt{\alpha}

e questo significa che, preso un valore iniziale  x_0 > 0 , tutti gli altri valori da  x_1 compreso in poi non potranno essere inferiori a  \sqrt{\alpha} . Dalla stessa formula si ricava che

 \frac{\alpha}{x_n} \leq \sqrt{\alpha} \leq x_n.

Quindi, riprendendo la formula per  x_{n + 1} , si ottiene

 x_{n + 1} = \frac{1}{2} \left( x_n + \frac{\alpha}{x_n} \right) 
                  \leq \frac{1}{2} \left( x_n + x_n \right) = x_n.

Questo implica che la successione è decrescente e compresa fra i valori  \sqrt{\alpha} e  x_1 , quindi è limitata. Poiché una successione monotona converge se e solo se è limitata, esiste un valore  x \geq \sqrt{\alpha} a cui la nostra successione converge.

Valutiamo ora lo scarto dell'(n+1)-esimo termine da  \sqrt{\alpha} :


\begin{align}
  x_{n+1} - \sqrt{\alpha} & = x_{n+1} - x_n + x_n - \sqrt{\alpha} = \\
                          & = \frac{1}{2} \left( \frac{\alpha}{x_n} - x_n \right) + x_n - \sqrt{\alpha}
                            \leq \frac{1}{2} \left( \sqrt{\alpha} - x_n \right) + x_n - \sqrt{\alpha}
                            = \frac{x_n - \sqrt{\alpha}}{2}.
\end{align}

Applicando in modo ricorsivo la seguente disuguaglianza:

 x_{n+1} - \sqrt{\alpha} \leq \frac{x_n - \sqrt{\alpha}}{2},

si ottiene che per ogni  \varepsilon > 0 esiste un valore  N tale che per ogni  n \geq N

 x_{n+1} - \sqrt{\alpha} \leq \frac{x_1 - \sqrt{\alpha}}{2^n} < \varepsilon

e con ciò è dimostrata la convergenza della successione a  \sqrt{\alpha} . Questo ci suggerisce anche che la convergenza è molto veloce: per ogni passo la distanza dal valore effettivo è almeno dimezzata, rendendo la decrescita esponenziale.

Rapidità di convergenza[modifica | modifica sorgente]

Al fine di capire meglio la rapidità di convergenza di questo metodo di calcolo, poniamo  \varepsilon_n = x_n - \sqrt{\alpha} . Sfruttando la relazione ricorsiva fornita dal metodo stesso, abbiamo:

 \varepsilon_{n + 1} = x_{n + 1} - \sqrt{\alpha}
                            = \frac{1}{2} \left( x_n + \frac{\alpha}{x_n} \right) - \sqrt{\alpha}
                            = \frac{{\varepsilon_n}^2}{2 x_n}.

Poiché si è dimostrato che per ogni termine della successione vale  x_n > \sqrt{\alpha} , allora

 \varepsilon_{n + 1} < \frac{{\varepsilon_n}^2}{2 \sqrt{\alpha}}.

Adesso, applicando la relazione di ricorrenza a ritroso e ponendo per semplicità di notazione  \beta = 2 \sqrt{\alpha} , si può ottenere

 \varepsilon_{n + 1} < \frac{{\varepsilon_n}^2}{\beta}
                            < \frac{1}{\beta} \left( \frac{\varepsilon_{n-1}^2}{\beta} \right)^2
                            = \beta \left( \frac{\varepsilon_{n-1}}{\beta} \right)^4
                            < \cdots
                            < \beta \left( \frac{\varepsilon_{n-k}}{\beta} \right)^{2^{k+1}}

dove  k è un intero compreso fra 2 e  n - 1 . Quando, in particolare, si ha  k = n - 1 , segue che

 \varepsilon_{n + 1} < \beta \left( \frac{\varepsilon_1}{\beta} \right)^{2^n}.

Questa ultima relazione dimostra che il metodo babilonese è ottimo per il calcolo della radice quadrata in quanto la sua convergenza è molto veloce. Infatti è sufficiente prendere come  x_1 un valore tale che


  x_1 < 3 \sqrt{\alpha}

per rendere il valore fra parentesi tonde minore di 1 e fare decrescere il tutto con estrema rapidità (esponenziale di un esponenziale). Questa scelta di  x_1 può sempre essere fatta perché ci troviamo a lavorare con una successione decrescente.

Esempio d'uso[modifica | modifica sorgente]

Ad esempio, poiché la radice quadrata di 2 deve essere compresa tra 1 e 2, stimiamo che sia circa 1,5. Applicando ripetutamente la formula otteniamo i seguenti valori:

x_0 \,=\, 1,5
x_1 = \frac{1}{2} \left( 1,5 + \frac{2}{1,5} \right) = 1,416667
x_2 = \frac{1}{2} \left( 1,416667 + \frac{2}{1,416667} \right) = 1,414216
x_3 = \frac{1}{2} \left( 1,414216 + \frac{2}{1,414216} \right) = 1,414214
x_4 = \frac{1}{2} \left( 1,414214 + \frac{2}{1,414214} \right) = 1,414214
\cdots ;

in tal modo al quarto passaggio si ha il valore della radice quadrata di 2 corretto alla sesta cifra decimale.

Questo algoritmo funziona ugualmente bene per i numeri p-adici, ma non può essere usato per identificare radici quadrate reali con indice di radice p-esimo. Riferendosi a questo metodo è facile per esempio costruire una sequenza di numeri razionali che converge a +3 nei reali, ma a -3 nei 2-adici.

Approssimazione Bakhshali[modifica | modifica sorgente]

Il metodo Bakhshali è un altro modo per trovare un'approssimazione della radice quadrata di un numero che fu descritto in un antico manoscritto col nome di Manoscritto Bakhshali perché fu scoperto nel 1881 vicino al villaggio di Bakhshali (o Bakhshalai) nella frazione Yusufzai del distretto di Peshawar (ora parte del Pakistan). Il testo era scritto in lingua sarada su corteccia di betulla.

L'approssimazione Bakhshali della radice quadrata si ottiene applicando due volte l'approssimazione semplice.

Con le notazioni precedenti introduciamo P \,:=\, \frac{d}{2 N} ~~\mbox{e}~~ A := N + P

\sqrt{N^2 + d} \approx A - \frac{P^2}{2 A}

Sviluppando l'equazione diventa:

\sqrt{N^2 + d} \approx N + \frac{d}{2\,N} - \frac{d^2}{8\,N^3 + 4\,N\,d}

Esempio di approssimazione Bakhshali[modifica | modifica sorgente]

Trova \sqrt{9,2345}

Usiamo \, N=3 ~~\mbox{e}~~ d = 9,2345 - 3^2 = 0,2345
\sqrt{3^2 + d} \approx 3 + \frac{d}{6} - \frac{d^2}{216 + 12\,d}
\sqrt{3^2 + 0,2345} \approx 3 + \frac{0,2345}{6} - \frac{0,2345^2}{216 + 12 \cdot 0,2345}
\sqrt{3^2 + 0,2345} \approx 3 + 0,039083 - \frac{0,055}{216 + 2,814}
\sqrt{3^2 + 0,2345} \approx 3 + 0,039083 - 0,000251
\sqrt{3^2 + 0,2345} \approx 3,038832

Calcolo della radice quadrata di un intero: algoritmo di Bombelli[modifica | modifica sorgente]

Questo algoritmo si applica alla notazione decimale (e più in generale ad una scrittura posizionale in una qualsiasi base b) di numeri interi e fornisce la parte intera della radice e l'eventuale resto.

Per tale calcolo si inizia distinguendo nella scrittura in base 10 del radicando gruppi di due cifre, consecutive partendo dal gruppo formato dalla cifra delle unità e da quella delle decine; il gruppo delle cifre di maggior peso può ridursi ad una cifra (come nell'esempio che segue). Risulta comodo scrivere il risultato in costruzione al di sopra di questa scrittura collocando ciascuna cifra del risultato sopra un corrispondente gruppo di cifre del radicando: infatti il numero L di cifre decimali del risultato è uguale al numero dei gruppi di cifre del radicando.

Si opera con tre variabili intere correnti: il risultato in costruzione x, un resto r e una cifra d da accodare alla precedente scrittura di x. Inizialmente x ed r sono poste a 0 e si procede a ripetere L volte il seguente blocco di istruzioni.

  1. Modifica la scrittura del resto r accodandole il gruppo di cifre più significativo (quelle più a sinistra) non ancora usato. Chiamiamo c il numero così ottenuto (valore corrente).
  2. Trova la più grande cifra d tale che y := d(20x + d) non superi c. Accoda questa nuova cifra alla scrittura del risultato x.
  3. Sottrai y da r e ottieni così il nuovo resto.

Esempio: Trova la radice quadrata di 1522759[modifica | modifica sorgente]

           1  2 3  4 
       |  01 52 27 59                              1    prima cifra della soluzione
x         01                   1(20*0+1)=1        +1 
          00 52                                    22   seconda cifra della soluzione
2x        00 44                2(20*1+2)=44       + 2 
             08 27                                 243  terza cifra della soluzione
24x          07 29             3(20*12+3)=729     +  3 
                98 59                              2464 quarta cifra della soluzione
246x            98 56          4(20*123+4)=9856       4
                00 03          L'algoritmo termina: la parte intera è 1234 ed il resto 3

Per adattare l'algoritmo ad una base b diversa da 10, basta sostituire la precedente definizione della y con la y := d(2bx + d). Usando la base binaria, l'algoritmo si semplifica molto, perché nel passo 2, per trovare la più grande cifra binaria d tale che y = d(2 b x + d) <= c, si deve provare solo con d=1, cioè stabilire se 1002x + 1 ≤ c. Se la disuguaglianza è verificata, allora la nuova cifra del risultato è 1, altrimenti 0.

Stima asintotica del tempo impiegato dall'algoritmo[modifica | modifica sorgente]

Per trovare ogni cifra del risultato (in base binaria) sono necessarie le seguenti operazioni:

  1. moltiplicare x per 1002 e aggiungere 1 (equivale ad accodare 01 alla scrittura binaria);
  2. un confronto, cioè verificare se la disuguaglianza è soddisfatta;
  3. una differenza tra numeri che hanno al massimo un numero di cifre pari a quello del risultato.

Quindi per trovare la parte intera della radice di un intero n, è necessario un tempo O(\log_2^2(n)).

Implementazione con una funzione nel linguaggio C++

 int intsqrt(int a, int* pr)
 // Dato l'intero positivo a, calcola la parte intera della 
 // sua radice quadrata principale e il relativo resto; 
 // pone il resto in *pr e ritorna la radice
 {
 int x, r, dp1, L, g[10], j, y,yn;
 // separa coppie di cifre e calcola numero delle cifre della radice
 L=0; 
 while(a>0) 
 { 
   g[L++]=a%100; 
   a /= 100; 
 }  
 // corsa per individuare le successive cifre della radice
 x=r=0; 
 for(j=L-1;j>=0;j--) 
 { 
   r=r*100+g[j];  //somma al resto precedente moltiplicato per 100 il nuovo gruppo di 2 cifre
   y=0;  // determina cifra
   for(dp1=1;dp1<10;dp1++)
   { 
     yn=dp1*(20*x+dp1); 
     if(yn<=r) y=yn; else break; 
   } 
   x=x*10+dp1-1; r -= y;
 } 
 *pr=r;
 return(x);
 }

Calcolo della radice quadrata con qualsivoglia precisione[modifica | modifica sorgente]

Il precedente algoritmo può essere adattato per ottenere la radice di un numero dato da una scrittura decimale (o posizionale in qualsiasi base) con qualsivoglia precisione. Si voglia ad esempio la radice del numero a = 152.3469 con p=4 cifre decimali. Innanzitutto si considera il numero intero A = a * 100p+1 = 1523469000000; quindi con l'algoritmo precedente si trova la radice di A trovando la parte intera 1234288 e il resto 2134056. Dividendo la parte intera per 10p+1, cioè per la radice del precedente fattore moltiplicativo, si ottiene 12.34288 come valore per difetto. Si può quindi concludere che il valore cercato è 12.3429 e che costituisce un arrotondamento per eccesso.

Si trova però che questi calcoli su numeri interi sono più onerosi di calcoli approssimati basati su considerazioni geometriche sulla funzione radice quadrata, come gli altri qui presentati. I calcoli sugli interi peraltro sono stati utilizzati per verificare la precisione di calcoli di ispirazione geometrica.

Radici quadrate usando il metodo iterativo di Newton[modifica | modifica sorgente]

Il metodo di Newton trova una singola radice di una funzione f(x) a partire dalla conoscenza di un'approssimazione sufficientemente precisa della radice. Questo metodo converge molto velocemente alla soluzione, richiede poche operazioni per ogni iterazione e, dal punto di vista computazionale è di facile implementazione (per questo viene usato in diverse librerie tra cui la Libreria standard del C). Esso si basa sull'iterazione espressa da:

x_{n+1} = x_n - {f(x_n) \over f^\prime(x_n)}.

Per trovare la radice quadrata di un numero z sono ampiamente utilizzate due particolari funzioni: f(x) = x^2 - z e g(x) = \frac{1}{x^{2}} - z.

Primo metodo[modifica | modifica sorgente]

Il primo metodo ricerca la radice quadrata di z mediante la

f(x) = x^2 - z

Nota che sono radici della funzione f(x) sia \sqrt{z} che - \sqrt{z}, ovvero che f( \sqrt{z} ) = f( -\sqrt{z} ) = 0.

La derivata prima della funzione è f^\prime(x) = 2 x

Allora l'iterazione per x_{n+1} è ottenuta come:

x_0 = 1 \,\,         e

x_{n+1} = x_n - {f(x_n) \over f^\prime(x_n)}
= x_n - {(x_n^2 - z) \over 2 x_n}
= x_n - \frac {x_n}{2} + \frac {z}{2 \,\,\, x_n}
= \frac {x_n}{2} + \frac {z}{2 \,\,\, x_n}.

Notare che corrisponde esattamente al metodo babilonese.

Secondo metodo[modifica | modifica sorgente]

Il secondo metodo ricerca il reciproco della radice quadrata di z mediante la funzione

g(x) = \frac{1}{x^{2}} - z

funzione avente come radici \frac{1}{\sqrt{z}} e \frac{-1}{\sqrt{z}}.

La derivata prima di questa funzione è g^\prime(x) = -2  x^{-3}.

Quindi l'iterazione alla Newton per x_{n+1} è ottenuta come:

\,x_0 = 0,5\qquad e

x_{n+1} \,\! = x_n - {g(x_n) \over g^\prime(x_n)}
= x_n - {x_n^{-2} - z \over -2 x_n^{-3}}
= x_n - (-1/2) {x_n^3} (x^{-2} - z)
= x_n + (1/2) (x_n - z x_n^3)
= \frac{ 3 x_n - z x_n^3 }{2}
= 1,5 \, x_n  - 0,5 \, z x_n^3 = 0,5 \, x_n \,\, ( 3 - z x_n^2 ).

Esempio[modifica | modifica sorgente]

Usiamo entrambi i metodi per trovare \sqrt{7} = 2.6457513 ....

z = 7 poiché stiamo cercando la radice quadrata di 7
f(x) g(x)
x_0 1 x_0 0,5
x_1 \frac{1}{2} + \frac{7}{2 \times 1} = 4 x_1 0.5 \times 0,5 \,\, ( 3 - 7 (0,5)^2 ) = 0,312 \frac{1}{x_1}= 3,2
x_2 \frac{4}{2} + \frac{7}{2 \times 4} = 2,875 x_2 0,5 \times 0,312 \,\, ( 3 - 7 (0,312)^2 ) = 0,362 \frac{1}{x_2}= 2,762
x_3 \frac{2,875}{2} + \frac{7}{2 \times 2,875} = 2,654 x_3 0.5 \times 0,362 \,\, ( 3 - 7 (0,362)^2 ) = 0.376 \frac{1}{x_3}= 2,652
x_4 \frac{2,654}{2} + \frac{7}{2 \times 2,654} = 2,645 x_4 0,5 \times 0,376 \,\, ( 3 - 7 (0,376)^2 ) = 0,378 \frac{1}{x_4}= 2,645
\sqrt{7} \simeq 2,645 \sqrt{7} \simeq 2,645

Confronto[modifica | modifica sorgente]

L'iterazione per f(x) implica una divisione che è più onerosa, in termini di tempi di calcolo, di una moltiplicazione tra interi. L'iterazione per g(x) non implica divisioni ed è quindi raccomandata per z intero grande.

Questa iterazione usando g implica soltanto un elevamento al quadrato e due moltiplicazioni, in alternativa ad una divisione nel caso di f. Nella implementazione pratica di estrazione di radici quadrate di interi grandi, il calcolo iterativo che richiede g è più veloce per interi grandi z, poiché la divisione è al massimo O(M(n)), che è un fattore costante del tempo di moltiplicazione. Il termine costante è quasi sempre 3 o più, in quanto una singola divisione con la maggior parte dei dispositivi di calcolo è più veloce di tre moltiplicazioni.

Approssimazione semplice[modifica | modifica sorgente]

Questo metodo di approssimazione, come dice il nome, è piuttosto semplice, ma può essere altresì altamente impreciso. L'entità dell'imprecisione per questa approssimazione è dipendente dal valore dell'espressione d/2N: quanto più grande è il suo valore, tanto maggiore è l'imprecisione del risultato approssimato.

Costruzione[modifica | modifica sorgente]

Siano N > 0 e d > 0, allora

 N^2 \quad < \quad N^2 + d \quad < \quad N^2 + 2\,d + \frac{d^2}{N^2}
 N^2 \quad < \quad N^2 + d \quad < \quad N^2 + 2\left( N \right) \left( \frac{d}{N} \right) + \left( \frac{d}{N} \right)^2
 N^2 \quad < \quad N^2 + d \quad < \quad \left( N + \frac{d}{N} \right)^2
 N \quad < \quad \sqrt{N^2 + d } \quad < \quad N + \frac{d}{N} .

Dunque il valore di \sqrt{N^2 + d} deve stare tra (N) e ( N + \frac{d}{N}) . Si considera quindi l'approssimazione

\sqrt{N^2 + d} \, \approx \, \mbox{media} \left( N , N + \frac{d}{N} \right) = \frac{1}{2} \left( N + N + \frac{d}{N} \right)

ovvero

\sqrt{N^2 + d} \, \approx \, N + \frac{d}{2\,N}

Esempio:

Per approssimare la radice di 39, si sostituisce 39 con la somma di un quadrato noto e del valore d pari alla differenza (in questo caso 39 = 36 + 3).
\sqrt{39} = \sqrt{36 + 3} \, \approx \, 6 + \frac{3}{12} \, \approx \, 6,25

che approssima discretamente il valore effettivo di 6,244997.

Metodo delle equazioni quadratiche[modifica | modifica sorgente]

La soluzione al problema della ricerca di un valore iniziale ottimale per trovare \sqrt{r} dove 1 < r < 100 può essere risolto in questo modo:

Per radici quadrate di valori maggiori di 100, si usa la seguente identità:
\sqrt{105,3} = \sqrt{1,053} \times 10

Per radici quadrate di valori minori di 1, si usa la seguente identità

\sqrt{0,1053} = \sqrt{10,53} \,\div\, 10

Usando l'equazione \sqrt{r} \,=\, N + \frac{1}{X}      dove X > 1 e N  \in \{1,2,3,4,5,6,7,8,9\}

\sqrt{r} \,=\, N + \frac{1}{X}
r \,=\, { \left( N + \frac{1}{X} \right ) }^2
r \,=\, N^2 + \frac{2\,N}{X} + \frac{1}{X^2}
0 \,=\, \left( N^2 - r \right) + \frac{2\,N}{X} + \frac{1}{X^2}
\left( N^2 - r \right) + \frac{2\,N}{X} + \frac{1}{X^2} \,=\, 0
\left( N^2 - r \right) \, X^2 + \left( 2\,N \right) X + 1 \,=\, 0

Risolvere X utilizzando la formula dell'equazione quadratica, scegliendo la soluzione che soddisfa la condizione  X > 1 .

La soluzione finale è:

\sqrt{r} \,=\, N + \frac{1}{X}

L'ovvio problema è che non possiamo valutare le soluzioni dell'equazione quadratica senza l'uso della funzione radice quadrata. Tuttavia possiamo fare in modo che il serpente morda la propria coda.

\left( N^2 - r \right) \, X^2 + \left( 2\,N \right) X + 1 \,=\, 0
Sia r \, = \, N^2 + d
Allora  d \, = \, r - N^2
E  - d \, = \, N^2 - r

Così l'equazione quadratica diventa:

\left( - d \right) \, X^2 + \left( 2\,N \right) X + 1 \,=\, 0

Iterando per X quanto più possibile porta a

 X \, = \, \frac{N + \sqrt{N^2 + d}}{d}

Reciprocamente

 \frac{1}{X} \, = \, \frac{d}{N + \sqrt{N^2 + d}}

Così la soluzione finale diventa

\sqrt{r} \,=\, N + \frac{1}{X}
\sqrt{r} \,=\, N + \frac{d}{N + \sqrt{N^2 + d}}
\sqrt{r} \,=\, N + \frac{d}{N + \sqrt{r}}

Andiamo più a fondo sostituendo a destra \sqrt{r} la sua stessa definizione:

\sqrt{r} \,=\, N + \frac{d}{N + \left( N + \frac{d}{N + \sqrt{r}} \right) }

Rinormalizzando

\sqrt{r} \,=\, N + \frac{d}{2 N + \frac{d}{N + \sqrt{r}} }

Iterando ulteriormente

\sqrt{r} \,=\, N + \frac{d}{2 N + \frac{d}{2 N + \frac{d}{N + \sqrt{r}} } }

E avanti così

\sqrt{r} \,=\, N + \frac{d}{2 N + \frac{d}{2 N + \frac{d}{2 N + \frac{d}{N + \sqrt{r}}  } } }

Esempio di uso del metodo dell'equazione quadratica[modifica | modifica sorgente]

Trovare \sqrt{923,45}

Utilizzando l'identità \sqrt{923,45} \,=\, \sqrt{9,2345} \times 10
Prima trovare \sqrt{9,2345}.
\sqrt{r} \,=\, N + \frac{1}{X}
\sqrt{9,2345} \,=\, N + \frac{1}{X}

Così  N \,=\, 3 \,\! perché  \!\; 3^2 \; < \; 9,2345 \; < \; 4^2

\left( N^2 - r \right) \, X^2 + \left( 2\,N \right) X + 1 \,=\, 0
\left( 3^2 - 9,2345 \right) \, X^2 + \left( 2 \, \cdot \, 3 \right) X + 1 \,=\, 0
-0.2345 \, X^2 + 6 \, X + 1 \,=\, 0

Usando la formula dell'equazione quadratica, otteniamo le due soluzioni:

sol1 = −0,165 o sol2 = 25,7519

Scegliamo sol2 dato che soddisfa la condizione  X > 1 .

Quindi X = 25,7519
\sqrt{9,2345} \,=\, 3 + \frac{1}{25,7519} \,=\, 3,03883

Alternativamente

\sqrt{r} \,=\, N + \frac{d}{2 N + \frac{d}{2 N + \frac{d}{N + N} } }
\sqrt{9,2345} \,=\, 3 + \frac{0,2345}{6 + \frac{0,2345}{6 + \frac{0,2345}{3 + 3} } }
\sqrt{9,2345} \,\approx\, 3 + \frac{0,2345}{6 + \frac{0,2345}{6 + \frac{0,2345}{3 + 3} } }
\sqrt{9,2345} \,\approx\, 3,03883

E la soluzione finale è

\sqrt{923,45} \,=\, \sqrt{9,2345} \times 10 \,=\, 30,3883

Voci correlate[modifica | modifica sorgente]

matematica Portale Matematica: accedi alle voci di Wikipedia che trattano di matematica