Risolvi, usando del software, graficamente e numericamente, la seguente equazione. Trova la/le soluzioni con almeno 10 cifre.
|x² − x − 3| = (x + 1)³
Se provo a tracciare il grafico di y = |x² − x − 3| − (x + 1)³ ottengo le rappresentazioni seguenti.
Se distinguo i casi in cui l'argomento del valore assoluto è positivo o negativo ottengo le due curve (cubiche)
rappresentate sotto a sinistra:
y = x² − x − 3 − (x+1)³ (rossa)
e
y = - x² + x + 3 − (x+1)³ (arancione).
Con uno zoom verifico se la curva tocca l'asse x a sinistra dell'origine (grafico a destra): vedo che ciò non accade.
Quindi c'è un'unica soluzione, pari a circa 0.5, intersezione dell'asse x con
y =
I grafici sono stati tracciati usando questo script.
Per risolvere l'equazione, conoscendo l'intervallo in cui cade la soluzione, posso utilizzare il metodo di bisezione o un metodo simile. Posso fare tutto automaticamente con lo script solve polinomial equations:
La soluzione, arrotondata è 0.4811943040920156 (16 cifre).
Posso controllare la soluzione con WolframAlpha:
Come avrei potuto utilizzare R:
source("http://macosa.dima.unige.it/r.R") f = function(x) abs(x^2-x-3)-(x+1)^3 # il colore "black" lo indico col numero 1 graficoF(f, -10,10, 1) # zoommo: graficoF(f, -3,1, 1) # Tra 0 ed 1 c'è sicuramente una soluzione x=soluz(f,0, 0,1); x # [1] 0.4811943 # Traccio il punto sul grafico: PUNTO(x,f(x), "magenta") # zoommo ulteriormente per capire che cosa accade vicino a -1.3: graficoF(f, -1.5,-1, 1) # il terzo grafico assicura che non c'è un altro zero; comunque trovo # quanto vale f in questo punto di minimo relativo (e lo traccio): x = maxmin(f,-2,-1); x # [1] -1.302776 y = f(x); y; PUNTO(x,y, "red") # [1] 0.02775641 # Perché il grafico ha quella forma? Ecco cosa ottengo # facendo il grafico delle funzioni ottenute "togliendo" il valore assoluto. g = function(x) (x^2-x-3)-(x+1)^3; h = function(x) -(x^2-x-3)-(x+1)^3 graficoF(f, -3,1, 1); grafico(g, -3,1, "red"); grafico(h, -3,1, "green") # A questo punto posso trovare la soluzione in modo "esatto": # -(x^2-x-3)-(x+1)^3 = -( -2 + 2x + 4x^2 + x^3) # Risolvo l'equazione polinomiale. P = c(-2, 2, 4, 1); solpol(P) # [1] 0.48119430409202 # [1] -1.311107817466 # [1] -3.170086486626