¿Cuándo está mal acondicionada una matriz ? Depende de la precisión de la solución que está buscando, tanto como "la belleza está en el ojo del espectador" ...
¿Puede ser su pregunta mejor reformulada ya que hay estimadores de números de condición baratos y robustos basados en la factorización ?LU
Suponiendo que esté interesado en el problema general real (denso, no simétrico) en aritmética de doble precisión, le sugiero que utilice el solucionador experto de LAPACK DGESVX que proporciona una estimación de la condición en forma de su recíproco, . Como beneficio adicional, también tiene otras ventajas como el equilibrio / equilibrio de ecuaciones, el refinamiento iterativo, los límites de error hacia adelante y hacia atrás. Por cierto, el mal condicionamiento patológico ( κ ( A ) > 1 / ϵ ) se señala como un error mediante .RCOND ≈ 1 / κ ( A )κ ( A ) > 1 / ϵINFO>0
Entrando en más detalle, LAPACK estima que el número de condición en el 1-norma (o -norma, si se te plantea un T x = b ) a través de DGECON . El algoritmo subyacente se describe en el césped 36: "Soluciones triangulares robustas para su uso en la estimación de la condición" .∞UNTx = b
Tengo que confesar que no soy un experto en el área, pero mi filosofía es: "si es lo suficientemente bueno para LAPACK, es para mí".
Es casi imposible saber si su sistema está mal condicionado por un solo resultado. A menos que tenga alguna previsión sobre el comportamiento de su sistema (es decir, sepa cuál debería ser la solución), no hay mucho que pueda decir de una sola solución.
Dicho esto, se puede obtener más información si resuelve más de un sistema con la misma . Supongamos que tiene un sistema de la forma A x = b . Para una A específica que no tiene conocimiento previo sobre su acondicionamiento, puede realizar la siguiente prueba:UN A x = b
Es posible que deba resolver varios sistemas lineales con diferentes vectores del lado derecho para darle una mejor indicación de si el sistema está mal acondicionado. Por supuesto, este proceso es un poco costoso ( operaciones para la primera solución y operaciones Θ ( n 2 ) para cada solución sucesiva, suponiendo que su solucionador directo guarde sus factores). Si su matriz A es bastante pequeña, esto no es un problema. Si es grande, es posible que no desee hacer esto. En cambio, es mejor que calcules el número de condición | El | A | El | ⋅ | El | A - 1 |Θ ( n3) Θ ( n2) en una norma convenienteEl | El | A | El | ⋅ | El | UN- 1El | El |
fuente