DERIVADOS DE INFORMÁTICA DE PROGRAMAS INFORMÁTICOS CHRISTIAN H. Bischof y H. MARTIN Bucker Instituto de Computación Científica Aachen University of Technology D-52056 Aachen Alemania E-mail: {Bischof, Buecker} @ sc.rwth-aachen.de Diferenciación automática se introduce como una poderosa técnica para calcular deri- tantes de funciones dadas en forma de un programa informático en un alto nivel de programa- idioma ming tales como Fortran, C, o C + +. En contraste con los enfoques tradicionales como handcoding de expresiones analíticas, la aproximación numérica dividida diferencias, o la manipulación de expresiones algebraicas simbólicas de álgebra computacional sistemas, diferenciación automática ofrece los beneficios sustanciales siguientes: es ac- curar hasta precisión de la máquina, eficiente en términos de coste computacional, aplicable a una fórmula de 1-línea, así como a un código 100000-line, y se puede producir con esfuerzo humano mínimo. 1 Introducción Las simulaciones numéricas que surgen en gran escala de aplicaciones científicas como quantum química a menudo requieren la evaluación de derivados de alguna función objetivo. Un ejemplo se da en estas actas de congresos 1 donde la necesidad de derivados en cálculos de química cuántica de propiedades moleculares se demuestra. Derivados juegan un papel fundamental no sólo en la química cuántica, pero en la computación numérica en general. Los ejemplos incluyen la solución de sistemas de ecuaciones no lineales, rígidas ordi- rias ecuaciones diferenciales, ecuaciones diferenciales parciales y diferenciales algebraicas- ecuaciones. Los derivados son también muy abundantes en las áreas de análisis de sensibilidad de modelos informáticos, problemas inversos, y (multidisciplinario) de optimización de diseño. Tradicionalmente, este tipo de problemas con derivados se han abordado mediante el uso de tecnología cas de diferenciación numérica y analítica que se comentan por Gauss 1 . Aquí, nos discutiremos otra técnica