Resolviendo desbordamiento para raíces cuadráticas

Supongamos una máquina con un sistema de punto flotante ( β , t , L , tu ) = ( 10 , 8 , 50 , 50 ) se utiliza para calcular las raíces de la ecuación cuadrática

a X 2 + b X + C = 0
dónde a , b , y C se dan coeficientes reales

Para cada uno de los siguientes, indique las dificultades numéricas que surgen si se usa la fórmula estándar para calcular las raíces. Explique cómo superar estas dificultades (si es posible)

Estoy atascado en el tercer problema que tiene a = 10 30 , b = 10 30 , C = 10 30

Resolviendo para las raíces obtenemos X = 10 30 ± ( 10 30 ) 2 4 ( 10 30 10 30 ) 2 10 30

He reorganizado esta ecuación varias veces, pero parece que no puedo encontrar una manera en la que no tenga algo alrededor. 10 60 , que no puede ser representado por este sistema de punto flotante (puedo deshacerme de elevar al cuadrado b factorizando, pero parece que todavía termino con 10 60 al final). No estoy seguro si es imposible o si me estoy perdiendo algún tipo de truco. Cualquier ayuda se agradece, gracias.

Respuestas (2)

Las instrucciones no dicen "resolver". Dicen "identificar las dificultades numéricas". El hecho de que te desbordes es la dificultad.

Y no hay forma de evitarlo si quieres ambas raíces. Claramente una de las raíces está cerca de 1 y el producto de ambas raíces tiene que ser 10 60 , por lo que la raíz restante se ve obligada a ser demasiado grande para su límite de desbordamiento (límite = 10 50 ).

Dejar X = 10 15 y :

10 30 y 2 10 15 y + 1 = 0

Sin embargo, una de las raíces x se desbordará.
¿Quizás otros cálculos pueden usar y en su lugar?

A veces hacemos esto, digamos con logaritmo, para extender el rango de flotación.