Su pregunta es acerca de la verificación del modelo. Puede encontrar numerosos recursos sobre métodos y estándares buscando Verificación y Validación ( Roache 1997 , 2002 , 2004 , Oberkampf & Trucano 2002 , Salari & Knupp 2000 , Babuska & Oden 2004 ), así como el tema más amplio de Cuantificación incertidumbre . En lugar de dar más detalles sobre los métodos, me gustaría destacar una comunidad que tomó una posición firme sobre el tema.
En 1986, Roache, Ghia y White establecieron la Declaración de política editorial del Journal of Fluids Engineering sobre el control de la precisión numérica que se abre con
Existe un problema profesional en la comunidad de dinámica de fluidos computacional y también en el área más amplia de la física computacional. A saber, existe la necesidad de estándares más altos en el control de la precisión numérica.
[...] El problema ciertamente no es exclusivo del JFE y se enfocó aún más en la Conferencia AFOSRHTTM-Stanford de 1980-81 sobre flujos turbulentos complejos. Era una conclusión del Comité de Evaluación de esa conferencia que, en la mayoría de las presentaciones a esa conferencia, era imposible evaluar y comparar la precisión de los diferentes modelos de turbulencia, ya que no se podían distinguir los errores de modelado físico de los errores numéricos relacionados con el algoritmo y cuadrícula. Este es especialmente el caso de los métodos precisos de primer orden y los métodos híbridos.
Concluyen con pautas muy directas:
El Journal of Fluids Engineering no aceptará para su publicación ningún documento que informe la solución numérica de un problema de ingeniería de fluidos que no aborda la tarea de la prueba sistemática de errores de truncamiento y la estimación de precisión.
[...] debemos dejar en claro que un solo cálculo en una cuadrícula fija no será aceptable , ya que es imposible inferir una estimación de precisión a partir de dicho cálculo. Además, los editores no considerarán un acuerdo razonable con los datos experimentales como prueba suficiente de precisión, especialmente si se trata de parámetros ajustables, como en el modelado de turbulencias.
La versión actual contiene un conjunto completo de criterios y representa un estándar que, en mi opinión, otros campos deberían aspirar a igualar. Es vergonzoso que incluso hoy, la conciencia sobre la importancia de la verificación del modelo esté ausente en tantos campos.
No existen tales estándares, ya que las estimaciones de errores confiables a menudo cuestan mucho más que los cálculos aproximados.
Básicamente hay cuatro tipos de estimaciones de error:
(i) Análisis teóricos que prueban que un método numérico es numéricamente estable. Esto realmente no da una barra de error ya que el análisis solo garantiza que el error cometido no es peor que un error cuantificado en los argumentos de entrada. Es suficiente para la mayoría de los cálculos científicos, ya que las entradas también son aproximadas, por lo que el error cometido con un método numéricamente estable no es peor que haber usado una entrada ligeramente diferente (pero desconocida). La mayoría de los métodos numéricos de gran prestigio van acompañados de un análisis numérico estable, aunque casi no se encuentra ninguna implementación que informe, a pedido, el llamado error hacia atrás resultante.
(ii) Estimaciones de error asintótico. Estos suponen que los productos de todos los errores (errores de entrada, errores de redondeo o errores de discretización son las fuentes más comunes) pueden ser descuidados (cuestionables si las funciones son muy no lineales), y utilizan análisis de sensibilidad para propagar errores de entrada. Junto con un análisis de estabilidad numérico, esto también puede capturar el efecto de los errores de redondeo o errores de discretización. Las barras de error resultantes son tan realistas como la validez de los supuestos en los que se basan. Usando herramientas de diferenciación automática, el costo de la estimación del error es típicamente un factor de 1 o 2 además del costo de la aproximación. Por lo tanto, este tipo de estimación de error es bastante frecuente en la práctica.
[Editar] Por ejemplo, el teorema de Oettli-Prager proporciona estimaciones de error hacia atrás fácilmente computables para la solución de sistemas lineales. El análisis de sensibilidad indica que estos errores deben multiplicarse por la norma de la matriz inversa, que puede estimarse utilizando el estimador de Hager (integrado en los estimadores de números de condición modernos).
(iii) Análisis de error estocástico: (CESTAC, http://www.sciencedirect.com/science/article/pii/0378475488900705) Esto se realiza sobrecargando todas las operaciones con una variante estocástica correspondiente que evalúa tres conjuntos de argumentos y luego agrega un error de redondeo aleatorio artificial. Los tres resultados finales se utilizan para calcular una media y una desviación estándar de la raíz cuadrada de (suma de cuadrados de desviaciones de la media dividida por 2 = 3-1). Esto proporciona una estimación de precisión bastante útil de la parte del error de redondeo. Sin embargo, esto no tiene en cuenta el error de discretización, que suele ser el error dominante en los cálculos de ODE y PDE. El costo depende del lenguaje de programación debido a la sobrecarga en la ejecución de operaciones sobrecargadas. Suponiendo (que casi nunca es el caso) la sobrecarga no conlleva penalización de tiempo, el costo por resultado más la estimación de error es un factor de 3 en comparación con el cálculo de la aproximación solamente.
(iv) Análisis de intervalo: esto proporciona límites rigurosos para todas las fuentes de error si se realiza correctamente, pero excepto en casos simples requiere mucha experiencia (o software que lo incorpore) para hacerlo de una manera que los límites no sobreestimen severamente los errores verdaderos . Está disponible un buen software de intervalo, entre otros, para álgebra lineal (por ejemplo, IntLab http://www.ti3.tu-harburg.de/rump/intlab/ ; cuesta un factor de aproximadamente 6 si la dimensión es grande) y la optimización global (por ejemplo , COCONUT http://www.mat.univie.ac.at/~coconut/coconut-environment/; puede ser mucho más costoso o incluso más económico que la optimización global aproximada, dependiendo de las características del problema). Pero muchas otras clases de problemas fáciles de tratar con precisión aproximadamente (por ejemplo, encerrar las trayectorias de los grandes planetas del sistema solar durante 10 años) están completamente fuera del alcance de la generación actual de métodos de intervalos.
fuente
Más o menos. Hay límites de error teóricos que han sido derivados por analistas numéricos que generalmente se sobreestiman, y pueden no ser tan útiles en la práctica, porque pueden involucrar información que es difícil de obtener para problemas en la práctica. Un buen ejemplo serían los límites de los errores numéricos en la solución de ecuaciones ordinarias, que puede encontrar en los libros de Hairer y Wanner. El libro de Nick Higham, Precisión y estabilidad de los algoritmos numéricos (puede que esté un poco fuera de lugar sobre el título) también proporciona algunos límites de error en operaciones numéricas comunes y algoritmos de álgebra lineal. La literatura de análisis numérico está plagada de tales límites.
Los métodos de análisis de intervalos también se han utilizado para calcular los límites de error; Estos métodos son rigurosos y tienden a proporcionar límites de error más fuertes que los límites de error teóricos, pero estos métodos aún pueden sobrestimar el error en un cálculo numérico. Estos métodos se han explotado mejor (que yo sepa) en la optimización global, pero también se están utilizando en la cuantificación de la incertidumbre. Arnold Neumaier ha escrito al menos un libro sobre métodos de análisis de intervalos, y está mejor calificado para comentar este tema en detalle. Además de los posibles problemas de sobreestimación, los métodos de análisis de intervalos requieren una infraestructura computacional adicional que requiere una actualización de los paquetes de simulación numérica grandes existentes (como PETSc, Trilinos, CLAWPACK / PyClaw, etc. ) para incluir intervalos aritméticos y diferenciación automática (para métodos basados en Taylor). Por lo que he visto, no hay muchos paquetes de diferenciación automática y aritmética de intervalos con licencia permisible, aunque hay algunos. Incluso entonces, a veces, estas bibliotecas tienen una funcionalidad limitada; ha sido difícil encontrar una biblioteca aritmética de intervalo con licencia permisiva (LGPL o BSD) con funcionalidad similar a BLAS.
Las estimaciones de error a posteriori se pueden obtener más fácilmente, pero no son rigurosas. Estoy más familiarizado con estas estimaciones del trabajo en ecuaciones diferenciales ordinarias, pero también existen para muchos métodos utilizados para calcular soluciones a ecuaciones diferenciales parciales.
En términos más generales, los métodos de cuantificación de la incertidumbre, como el uso de expansiones de caos polinomiales, los métodos de Monte Carlo u otros métodos de muestreo pueden usarse para cuantificar la incertidumbre en los cálculos debido a variaciones en los parámetros de entrada. Estos métodos deberían poder proporcionar algún tipo de "barra de error" heurística debido a variaciones en los parámetros, pero no darán límites rigurosos.
Creo que tiene toda la razón cuando se trata de la especificación de errores numéricos: la ciencia computacional debería ser tan rigurosa al presentar sus resultados como las ciencias físicas basadas en experimentos. Se está realizando una gran cantidad de trabajo en esta área (bajo los términos generales "cuantificación de incertidumbre" y "análisis numérico"), y espero que se incluyan barras de error al analizar la mayoría de los resultados computacionales en algún momento en el futuro .
fuente
Además de las otras respuestas, hay algunos puntos adicionales a considerar.
fuente