Calcolo numerico
ciao, ho iniziato a guardare l analisi numerica ma nn ho capito se la cancellazione si ha solo quando si ha una sottrazione tra due numeri con una mantissa molto simile oppure se si ha anche con le altre operazioni fondamentali. Se si ha soltanto con la sottrazione sapreste spiegarmi il perche? grazie mille ciao!
Risposte
Non ho ben capito quale sia il tuo problema. Prova a postare un esempio di un problema che non capisci.
nn ho ben capito se la cancellazione numerica avviene solo con l operazione - (sottrazione)...ovvero se solo con la sottrazione si perdono un sacco di cifre significative. Non so fare esempi...quelli sulle mie dispense li ho capiti appunto perche prendeva in considerazione solo la sottrazione
e qualcuno sa spiegarmi come mai nell intervallo $[x_0,x_1]$ il massimo in valore assoluto della funzione $y=(x-x_0)(x-x_1)$ si ha per $x=(x_0+x_1)/2$, $max|(x-x_0)(x-x_1)|=(x_1-x_0)^2/4$. Come mai compare $x_1-x_0$??
perchè y è una parabola con $y(x_0)=y(x_1)=0$, quindi il valore massimo, in modulo, sarà nel punto medio dell'intervallo. Per trovare il max in valore assoluto basta valutare $|y((x_0+x_1)/2)|$
grazi per la risp...quindi dovrei calcolare $((x_1+x_0)/2-x_0)((x_1+x_0)/2-x_1)$??
certo
invece sulla domanda cancellazione sapete dirmi niente?
la cancellazione numerica deriva proprio da quel fenomeno che hai citato te, in particolare si può vedere che non vale più la proprietà associativa della somma.
quindi nn si ha solo con la sottrazione ma anche con l addizione?e la moltiplicazione e la divisione?
succede con l'addizione quando hai due numeri molto simili in mantissa ma opposti in segno; non succede con moltiplicazione e divisione
ok grazie...ho capito come avviene guardando qualche esempio ma nn ho capito perche avviene?
prova a considerare l'applicazione sottrazione:
$f(x,y)=x-y$, con $x!=y$, l'errore relativo vale
$epsilon=((x-y)-(barx-bary))/(x-y)=(xepsilon_x-yepsilon_y)/(x-y)$
dove $epsilon_x$ è l'errore relativo sulla x.
Come vedi, quando $x~=y$ l'errore $epsilon$ diventa grande
$f(x,y)=x-y$, con $x!=y$, l'errore relativo vale
$epsilon=((x-y)-(barx-bary))/(x-y)=(xepsilon_x-yepsilon_y)/(x-y)$
dove $epsilon_x$ è l'errore relativo sulla x.
Come vedi, quando $x~=y$ l'errore $epsilon$ diventa grande
ho provato a mettere dei numeri a caso:
$x=0,314263$
$y=0,314236$
$x_a=0,3142$
$y_a=0,3143$
$epsilon=((0,314263-0,314236)-(0,3143-0,3142))/(0,314263-0,314236)=-2,703703$
e corretto?
$x=0,314263$
$y=0,314236$
$x_a=0,3142$
$y_a=0,3143$
$epsilon=((0,314263-0,314236)-(0,3143-0,3142))/(0,314263-0,314236)=-2,703703$
e corretto?
con $barx$ e $bary$ intendevo i numeri macchina memorizzati; ipotizzando che mantenga 4 cifre decimali allora l'arrotondamento è
$barx=0.3143$
$bary=0.3142$
cmq ok
$barx=0.3143$
$bary=0.3142$
cmq ok
be il concetto mica cambia....o si?
il concetto dell'errore che cresce non cambia, cambiava il concetto dell'arrotondamento
ok....gia che ci sono posso chiederti come cambiava?e se avessi provato a fare la stessa cosa con una somma il risultato nn subiva la cancellazione numerica giusto?
se usi l'applicazione "somma" con addendi entrambi positivi, allora al denominatore non hai il problema di avere un numero piccolo