Equazione esponenziale
Ho un dubbio: un'equazione di questo
$1 + 5^(2x) = 3^(x + 1)$ dove l'utilizzo dei logaritmi non porta a nulla...perché l'espressione $log(1 + 5^(2x))$ non si puó semplificare, si puó risolvere senza ricorrere al metodo grafico. Grazie
$1 + 5^(2x) = 3^(x + 1)$ dove l'utilizzo dei logaritmi non porta a nulla...perché l'espressione $log(1 + 5^(2x))$ non si puó semplificare, si puó risolvere senza ricorrere al metodo grafico. Grazie
Risposte
Magari sbaglio, ma mi sembra che a mano non ci siano alternative al metodo grafico.
Magari non sbagli. Senza grafici a mano non si fa.
"milos144":
Ho un dubbio: un'equazione di questo
$1 + 5^(2x) = 3^(x + 1)$ dove l'utilizzo dei logaritmi non porta a nulla...perché l'espressione $log(1 + 5^(2x))$ non si puó semplificare, si puó risolvere senza ricorrere al metodo grafico. Grazie
Potresti usare un qualche metodo numerico. Per esempio, riscrivi la cosa come:
$x=\log_3(1+5^{2x})-1$
E fai una cosa iterativa.
$x_0=0$ poi $x_n=\log_3(1+5^{2x_{n-1}})-1$ ripetutamente.
Per esempio:
#!/usr/bin/perl
$x=0;
while (1) {
print $x."\n";
$x=(log(1+5**(2*$x))/log(3))-1;
}
stampa:
0
-0.369070246428543
-0.757808061605301
-0.92387986837907
-0.954631051164484
-0.958811534736303
-0.959349962126715
-0.959418806911474
-0.959427601366886
-0.959428724664804
-0.959428868139174
-0.959428886464549
-0.95942888880517
-0.959428889104128
-0.959428889142313
-0.95942888914719
-0.959428889147813
-0.959428889147892
-0.959428889147902
-0.959428889147904
e poi non cambia più.
Verifichiamo con una calcolatrice:
$1+5^{2*-0.959428889147904}=1.045580173$
$3^{-0.959428889147904+1}=1.045580173$
e ci siamo.
Ci sono altri metodi possibili. Se ti accontenti di, diciamo, 3 cifre puoi farlo con 6 giri con una calcolatrice.
https://it.wikipedia.org/wiki/Metodo_delle_tangenti
è più veloce:
-1
-0.958756817288305
-0.959428711260713
-0.959428889147892
-0.959428889147904
ma se parti da 0 non funziona.
-1 non è assurdo come punto di partenza. $1+\frac{1}{25}$ e $3^0$ non sono troppo diversi.
(L'altro metodo, anche partendo da -1, è più lento.)
Questo si può fare con una calcolatrice senza troppa fatica se ti accontenti di 3 cifre. E se non ti bastano 3 cifre, con poco lavoro in più hai troppissime cifre.
è più veloce:
#!/usr/bin/perl
$x=-1;
while (1) {
print $x."\n";
$f=1+25**$x-3**($x+1);
$f1=log(25)*25**$x-3*log(3)*3**$x;
$x=$x-$f/$f1;
}
-1
-0.958756817288305
-0.959428711260713
-0.959428889147892
-0.959428889147904
ma se parti da 0 non funziona.
-1 non è assurdo come punto di partenza. $1+\frac{1}{25}$ e $3^0$ non sono troppo diversi.
(L'altro metodo, anche partendo da -1, è più lento.)
Questo si può fare con una calcolatrice senza troppa fatica se ti accontenti di 3 cifre. E se non ti bastano 3 cifre, con poco lavoro in più hai troppissime cifre.
(A scuola abbiamo fatto Newton, iterazione, bisezione e secante. Halley non lo conoscevo prima di leggere la pagina Wikipedia sul metodo di Newton in questi giorni.)
Grazie mille per i consigli.
"milos144":
Grazie mille per i consigli.
Il "metodo grafico" in cosa consiste?
A scuola abbiamo fatto Newton, iterazione, bisezione e secante....mi puoi consigliare un libro su cui trovare questi procedimenti.
Grazie
Grazie
"milos144":
A scuola abbiamo fatto Newton, iterazione, bisezione e secante....mi puoi consigliare un libro su cui trovare questi procedimenti.
Grazie
Dovrebbe bastare Wikipedia, credo.
Tanto per vedere....
La bisezione. Dovrebbe essere il metodo più lento.
stampa:
-0.5
-0.75
-0.875
-0.9375
-0.96875
-0.953125
-0.9609375
-0.95703125
-0.958984375
-0.9599609375
-0.95947265625
-0.959228515625
-0.9593505859375
-0.95941162109375
-0.959442138671875
-0.959426879882812
-0.959434509277344
-0.959430694580078
-0.959428787231445
-0.959429740905762
-0.959429264068604
-0.959429025650024
-0.959428906440735
-0.95942884683609
-0.959428876638412
-0.959428891539574
-0.959428884088993
-0.959428887814283
-0.959428889676929
-0.959428888745606
-0.959428889211267
-0.959428888978437
-0.959428889094852
-0.95942888915306
-0.959428889123956
-0.959428889138508
-0.959428889145784
-0.959428889149422
-0.959428889147603
-0.959428889148512
-0.959428889148057
-0.95942888914783
-0.959428889147944
-0.959428889147887
-0.959428889147915
-0.959428889147901
-0.959428889147908
-0.959428889147905
-0.959428889147903
-0.959428889147904
-0.959428889147904
La bisezione. Dovrebbe essere il metodo più lento.
#!/usr/bin/perl
$a=-1;
$b=0;
while (1) {
$x=($a+$b)/2;
print $x."\n";
$f=1+25**$x-3**($x+1);
if ($f>0) {
$a=$x;
} else {
$b=$x;
}
}
stampa:
-0.5
-0.75
-0.875
-0.9375
-0.96875
-0.953125
-0.9609375
-0.95703125
-0.958984375
-0.9599609375
-0.95947265625
-0.959228515625
-0.9593505859375
-0.95941162109375
-0.959442138671875
-0.959426879882812
-0.959434509277344
-0.959430694580078
-0.959428787231445
-0.959429740905762
-0.959429264068604
-0.959429025650024
-0.959428906440735
-0.95942884683609
-0.959428876638412
-0.959428891539574
-0.959428884088993
-0.959428887814283
-0.959428889676929
-0.959428888745606
-0.959428889211267
-0.959428888978437
-0.959428889094852
-0.95942888915306
-0.959428889123956
-0.959428889138508
-0.959428889145784
-0.959428889149422
-0.959428889147603
-0.959428889148512
-0.959428889148057
-0.95942888914783
-0.959428889147944
-0.959428889147887
-0.959428889147915
-0.959428889147901
-0.959428889147908
-0.959428889147905
-0.959428889147903
-0.959428889147904
-0.959428889147904
E per la completezza... il metodo delle secanti che forse non uso da molto tempo.
-0.961538461538461
-0.959511999542263
-0.959428819987952
-0.959428889150169
-0.959428889147904
-0.959428889147904
Non male! Temevo molto peggio!
#!/usr/bin/perl
$a=-1;
$b=0;
sub f {
my $x=shift;
return 1+25**$x-3**($x+1);
}
while (1) {
$c=$b-(f($b)*($b-$a)/(f($b) - f($a)));
print $c."\n";
$a=$b;
$b=$c;
}
-0.961538461538461
-0.959511999542263
-0.959428819987952
-0.959428889150169
-0.959428889147904
-0.959428889147904
Non male! Temevo molto peggio!
C'è un'altra radice in x=0.404774...
"veciorik":
C'è un'altra radice in x=0.404774...
Non mi ero nemmeno messo a cercare altre radici, lo ammetto.
Scusami ghira, ma c'é una qualche applicazione per fare i calcoli che hai fatto? Come dovrei fare per non eseguirli a mano.
Grazie
Grazie
"milos144":
Scusami ghira, ma c'é una qualche applicazione per fare i calcoli che hai fatto? Come dovrei fare per non eseguirli a mano.
Un qualsiasi linguaggio di programmazione? Un foglio di calcolo?
Il tuo programma scolastico quali strumenti prevede ?
"milos144":
Scusami ghira, ma c'é una qualche applicazione per fare i calcoli che hai fatto? Come dovrei fare per non eseguirli a mano.
Forse non capisco cosa intendi. I miei messaggi contengono programmi perl. Non sarebbero "applicazioni"? Non ti consiglio necessariamente il perl. Il python sembra molto popolare attualmente. Imparare un qualche linguaggio di programmazione potrebbe esserti utile. O potresti usare un foglio di calcolo come Excel o LibreOffice. O una calcolatrice.