Analytical Sensitivity Analysis
March 21st, 2009 by Dan HughesI have started working on a toy model and plan to include analytical sensitivity analysis as part of the methods. These notes, and an associated extended discussion that I have up-loaded, serve as a short introduction to the subject.
The file is here:
Summary
These notes introduce a few of the ideas and concepts associated with sensitivity analysis for algebraic and ordinary differential equations. By sensitivity I mean what are the effects of changes in the numerical values of the parameters in a system of equations relative to a response function of interest. The response function can take any mathematical form, but I will focus on the values of the dependent variables of the equation system.
Mathematical methods for identification of, and quantifying the importance of, parameters in complex mathematical models of physical phenomena and processes are discussed. These methods are useful for calculating the sensitivity of the models and numerical solution methods embedded into computer software to the parameters associated with the application areas for the computer codes. Sensitivity investigations, a form of ‘what if’ analysis, are an integral part of the application of computer software. Generally we are almost always asking a question like, what is the effect on the calculated result (a system response) of changes in the parameters of the model equations and application. The mathematical methods discussed here are designed to provide an answer and additionally are also useful in uncertainly, parameter estimation, and optimization analyses.
Of the several methods available for calculating the sensitivity, the discrete adjoint sensitivity method (DASM) is the one that is most applicable, from both theoretical and practical aspects, to models and solution methods already coded into software. From the theoretical view, the DASM methodology is based on exactly the model equations and solutions methods used in the software, which are generally finite difference equation (FDE) approximations to the continuous equations. The adjoint approach also allows efficient investigations into alternative response functions and in particular very efficient investigations of many parameters for a given response. From the practical viewpoint, especially when implicit numerical solution methods are used, the amount of additional coding needed for the sensitivity methodology is relatively small. Finally, the solutions for the sensitivities are very low-cost calculations.
Some of the benefits expected from applications of analytical sensitivity analysis methods to models and software are as follows. Analytical sensitivity analysis, especially the discrete adjoint method applied to finite-difference equations, can be used to achieve a significant reduction in the number of computer runs needed to complete application analyses. Analytical sensitivity analysis is also useful for the case of determination and optimization of model and correlation parameters from experimental data when models embedded into computer codes are used as the method of finding the parameters. Application of sensitivity analyses will significantly improve the objectivity and efficiency of model and correlation development.
Introduction and Background
Identification of, and quantifying the importance of, parameters in complex mathematical models of physical phenomena and processes is an integral part of the application of computer software. Two kinds of parameters are introduced into almost all mathematical models of physical phenomena and engineering equipment: those that are well-based theory, and those of a more empirical, or heuristic nature. The former kind of parameter includes equation-of-state and thermophysical and transport properties of materials, for examples. And although these are well-founded in theory, the exact value might be uncertain for a variety of reasons. The second kind of parameter is associated with engineering models and empirical correlations of physical processes. The numerical value of parameters in the correlations, or even the form of the correlating functions, might be uncertain due to the nature of engineering models and correlations.
Additional parameters of interest are introduced by the use of software in analyses. The geometry of the equipment and systems that are the object of applications of the software is generally well-established. Sometimes, however, the effects of changes in the geometry on the results of an analysis might be of interest. Finally, the continuous equations are usually not solved by the software. Approximate solutions to discrete finite-difference approximations to the continuous equations are usually solved in the software. The effects of changes in parameters associated with finite-difference methods on the solution are usually of interest. The effects of changes in the numerical values of the discrete temporal and spatial increments, and stopping criteria for iterative methods, for examples, are generally investigated.
Questions almost always arise concerning which of the many parameters in the models and methods are the most important and what are the effects of the uncertainty of the numerical values of the important parameters relative to some calculated response of interest. The responses of interest range for the local-instantaneous values of the principal dependent variables, to auxiliary calculations of quantities of interest, to integral functionals of the dependent variables, to global functionals of all the models and methods in the code and an entire calculations. A general notion of a response function will be given below in these notes.
Posted in 0-D Models, Calculation Verification, Code Verification, Numerical methods Verification, ODEs, Verification | 3 Comments »
March 23rd, 2009 at 4:18 am
Of course the interesting case for me was Lorenz in chaotic regime .
I must reread it one more time . Why does it oscillate ?
[WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.
October 12th, 2009 at 5:25 am
Data at this link
https://computation.llnl.gov/casc/sundials/documentation/cvs_examples/node3.html
provides a numerical benchmark for verification of calculation of sensitivities of a simple DE system (Robertson kinetics example) but a validation of numerical values with analytical would also be useful.
The sensitivities of this simple DAE system
y’ = 1/5 (x – y ) (1)
0 = -p1 y^2 – p2 + x
are straight forward
d y’/dp1 = y^2/5
d y’/dp2 = 1/5
d x/dp1 = y^2 (2)
d x/dp2 = 1
and can be approximated by the ‘forward’ method in a numerical solution of (1).
The analytical solution of (1) is
y(t) = b0 + b4 (b1 + b2 exp(-b3 t)) / (b1 – b2 exp(-b3 t)) (3)
x(t) = p1 y(t)^2 + p2
a = -4 ( p1 p2 + 1 ) + 5
b5 = sqrt(a)
b0 = 1/(2 p1)
b1 = 5 + b5
b2 = 5 – b5
b3 = b5/5
b4 = -b5/(2 p1)
p1 and p2 real such that -4 ( p1 p2 +1 ) + 5 > 0, say p1 = -5.837, p2 = 2.458.
(3) satisfies (1) but the analytical sensitivities calculated from (3) have values different from (2).
October 23rd, 2009 at 2:16 am
Hello John,
Thanks for the info and very useful link. I have almost no experience with DAE systems, so I’m not familiar with this problem at all.
Maybe I’ll take a look into it as time from my day job permits.