Inversion of 2D Magnetotelluric and Radiomagnetotelluric data with Non-Linear Conjugate Gradient techniques

University essay from Uppsala universitet/Geofysik


I implemented and tested the method of Non-Linear Conjugate Gradients (NLCG) to invert magnetotelluric (MT) and radiomagnetotelluric (RMT) data in two dimensions. The forward problem and the objective function gradients were computed using finite-difference methods. The NLCG algorithm was applied to three field data sets to test the performance of the code. It was then compared to the inversion techniques of Occam and damped Occam considering the quality of the output resistivity models and the computation times. The implemented code was further investigated by testing two line search techniques to reduce the objective function along a given search direction. The first line search procedure was constrained to the first Wolfe condition, leading to a rather inexact line search. The second, more thorough line search, was additionally constrained to the second Wolfe condition. Three preconditioners were applied to the NLCG algorithm and their performance was analysed. The first preconditioner was set to the diagonal of the approximate Hessian matrix and updated every 20-th iteration. Preconditioners two and three were updated with the Broyden-Fletcher-Goldfarb-Shanno (BFGS) algorithm using the identity matrix and the diagonal of the approximate Hessian matrix as start preconditioners, respectively.

The tests showed that the method of NLCG is more efficient pertaining to computation times compared to the Gauss-Newton (GN) based techniques (Occam and damped Occam). For the two smaller data sets that were inverted, the NLCG inversion was two to four times faster than Occam and damped Occam. For the larger data set, the NLCG inversion converged more than one order of magnitude faster than the GN based inversion techniques. This is because GN methods require to evaluate the entire sensitivity matrix to update the model, whereas NLCG only needs to compute a matrix-vector product of the Jacobian. Moreover, expensive operations such as matrix products and direct inversions of linearised systems are avoided by NLCG. A limitation of the NLCG algorithm is that it is prone to converge to local minima due to the fixed Lagrange multiplier that is used in the penalty function. Occam inversion, which determines the optimal Lagrange multiplier as part of the inversion, did not show such problems. The line search tests of the NLCG algorithm showed that an inexact line search yields higher convergence per CPU time than a more exact line search. In accordance to previous studies, preconditioning accelerated the convergence of the NLCG algorithm considerably. The preconditioners updated with the BFGS algorithm achieved highest convergence. Choosing the identity matrix as a start preconditioner led to fast but unstable convergence. The reasons for that could not be determined completely. Taking the diagonal of the approximate Hessian as a start preconditioner instead of the identity matrix led to slower convergence for most of the inversion tests, but convergence could be stabilised.

All the tests performed within this project led to a robust implementation of the NLCG algorithm. A default set-up pertaining to line search and preconditioning could be established. However, the NLCG set-up can be adjusted by the user to improve convergence for a specific data set. This makes the algorithm implemented in this thesis more flexible than previously introduced NLCG codes. Preconditioning can certainly still be improved with further tests. Moreover, a future project will be to extend the 2D code to 3D, where NLCG should perform especially well, because the number of model parameters is usually higher in 3D. 

  AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)