conjugate_gradient_versus_svd_or_lu_decomposition
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| conjugate_gradient_versus_svd_or_lu_decomposition [2017/08/28 15:46] – created alancoelho | conjugate_gradient_versus_svd_or_lu_decomposition [2025/09/19 15:18] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | --- // | ||
| + | |||
| + | TOPAS uses the Conjugate Gradient (CG) routine as described at: | ||
| + | < | ||
| + | Coelho, A. A. (2005). J. Appl. Cryst. 38, 455-461. "A bound constrained conjugate gradient solution method as applied to crystallographic refinement problems" | ||
| + | </ | ||
| + | |||
| + | The routine uses min/max limits during the solution to the normal equations. Newton methods such as LU-Decomposition, | ||
| + | |||
| + | < | ||
| + | Use of TOPAS Conjugate Gradient routine on PAWLEY1.INP: | ||
| + | |||
| + | TOPAS-32 Version 6 (c) 1992-2017 Alan A. Coelho | ||
| + | | ||
| + | Time 0.01, INP file pre-processed | ||
| + | Loading xyz's for p-1 from file C: | ||
| + | Number of hkls generated for C: | ||
| + | Number of independent parameters : 551 | ||
| + | 0 Time | ||
| + | Sparse matrix methods invoked - 83.0% of the A matrix elements are zero | ||
| + | 1 Time | ||
| + | 2 Time | ||
| + | 3 Time | ||
| + | 4 Time | ||
| + | 5 Time | ||
| + | 6 Time | ||
| + | 7 Time | ||
| + | 8 Time | ||
| + | 9 Time | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | --- 0.213 seconds --- | ||
| + | |||
| + | *** Parameter(s) close to limit(s). | ||
| + | Check for LIMIT_MIN and LIMIT_MAX in Grid/Text | ||
| + | Errors calculated | ||
| + | | ||
| + | File C: | ||
| + | with parameters from last iteration | ||
| + | |||
| + | Process Times (secs) | ||
| + | 0.01 = Peak buffer derivatives | ||
| + | 0.01 = Ycalc calculation and Penalties | ||
| + | 0.10 = A and Y matrix dot products and derivatives | ||
| + | 0.06 = Ycalc derivatives | ||
| + | 0.04 = A and Y matrix dot products | ||
| + | 0.07 = Solution to the normal equations | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | Using Cholsky Decomposition on PAWLEY1.INP: | ||
| + | |||
| + | TOPAS-32 Version 6 (c) 1992-2017 Alan A. Coelho | ||
| + | | ||
| + | Loading C: | ||
| + | Time 0.02, INP file pre-processed | ||
| + | Loading xyz's for p-1 from file C: | ||
| + | Number of hkls generated for C: | ||
| + | Number of independent parameters : 551 | ||
| + | 0 Time | ||
| + | Loading C: | ||
| + | Loading C: | ||
| + | 1 Time | ||
| + | 2 Time | ||
| + | 3 Time | ||
| + | 4 Time | ||
| + | 5 Time | ||
| + | 6 Time | ||
| + | 7 Time | ||
| + | 8 Time | ||
| + | 9 Time | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | 100 Time | ||
| + | 101 Time | ||
| + | 102 Time | ||
| + | 103 Time | ||
| + | 104 Time | ||
| + | 105 Time | ||
| + | 106 Time | ||
| + | 107 Time | ||
| + | 108 Time | ||
| + | 109 Time | ||
| + | 110 Time | ||
| + | 111 Time | ||
| + | 112 Time | ||
| + | 113 Time | ||
| + | 114 Time | ||
| + | 115 Time | ||
| + | 116 Time | ||
| + | 117 Time | ||
| + | 118 Time | ||
| + | 119 Time | ||
| + | 120 Time 10.06 Rwp 4.289 | ||
| + | 121 Time 10.12 Rwp 4.288 | ||
| + | 122 Time 10.22 Rwp 4.286 | ||
| + | 123 Time 10.29 Rwp 4.285 | ||
| + | 124 Time 10.38 Rwp 4.282 | ||
| + | 125 Time 10.47 Rwp 4.281 | ||
| + | 126 Time 10.57 Rwp 4.279 | ||
| + | 127 Time 10.63 Rwp 4.278 | ||
| + | --- 10.649 seconds --- | ||
| + | |||
| + | *** Parameter(s) close to limit(s). | ||
| + | Check for LIMIT_MIN and LIMIT_MAX in Grid/Text | ||
| + | Errors calculated | ||
| + | | ||
| + | File C: | ||
| + | with parameters from last iteration | ||
| + | |||
| + | Process Times (secs) | ||
| + | 0.07 = Peak buffer derivatives | ||
| + | 0.20 = Ycalc calculation and Penalties | ||
| + | 1.37 = A and Y matrix dot products and derivatives | ||
| + | 0.58 = Ycalc derivatives | ||
| + | 0.79 = A and Y matrix dot products | ||
| + | 6.37 = Solution to the normal equations | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | SVD convergence behavior on PAWLEY1.INP: | ||
| + | |||
| + | 0 Time | ||
| + | 1 Time | ||
| + | 2 Time | ||
| + | 3 Time | ||
| + | 4 Time | ||
| + | 5 Time | ||
| + | 6 Time | ||
| + | 7 Time 10.84 Rwp 8.807 | ||
| + | 8 Time 12.16 Rwp 7.804 | ||
| + | 9 Time 13.46 Rwp 7.694 | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | A few points to note: | ||
| + | |||
| + | - Convergence of the CG routine is fast. | ||
| + | |||
| + | - The SVD routine does try and minimize on the residual (A x – b)^2 | ||
| + | |||
| + | - The SVD refinement was truncated at 50 iterations to minimize on waiting time. | ||
| + | |||
| + | - On a problem with 551 independent parameters, SVD is 100s of times slower over the whole refinement. Note, the CG routine is threaded. | ||
| + | |||
| + | - The Solution to the normal equations for CG took 0.07s; for LU decomposition its 6.37s. | ||
| + | |||
| + | |||
| + | **Using the CG routine without limits** | ||
| + | |||
| + | The following INP file is used: | ||
| + | |||
| + | < | ||
| + | r_wp 0 | ||
| + | process_times | ||
| + | |||
| + | xdd alvo4.xdd | ||
| + | |||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | bkg @ 0 0 0 0 0 0 0 0 | ||
| + | |||
| + | | ||
| + | a | ||
| + | b | ||
| + | c | ||
| + | al @ 96.1 | ||
| + | be @ 107.2 | ||
| + | ga @ 101.4 | ||
| + | | ||
| + | PV_Peak_Type(, | ||
| + | | ||
| + | |||
| + | macro VV(v) | ||
| + | { | ||
| + | #m_unique i v min = -1e40; max = 1e40; update = Max(Val+Change, | ||
| + | = i; | ||
| + | } | ||
| + | space_group " | ||
| + | | ||
| + | load hkl_m_d_th2 prm I | ||
| + | { | ||
| + | 0 | ||
| + | 0 | ||
| + | 0 | ||
| + | 1 | ||
| + | 1 | ||
| + | 1 -1 | ||
| + | 0 | ||
| + | 1 -1 -1 | ||
| + | 1 | ||
| + | 1 | ||
| + | 0 | ||
| + | 1 -1 | ||
| + | 1 | ||
| + | 1 | ||
| + | 0 | ||
| + | 0 | ||
| + | 1 | ||
| + | 0 | ||
| + | 1 -1 -2 | ||
| + | 1 -2 | ||
| + | 0 | ||
| + | 1 | ||
| + | 1 -2 -1 | ||
| + | 1 -2 | ||
| + | 0 | ||
| + | 2 | ||
| + | 2 -1 -1 | ||
| + | 1 -1 | ||
| + | 0 | ||
| + | 2 -1 | ||
| + | 1 | ||
| + | 2 | ||
| + | 1 | ||
| + | 1 | ||
| + | 2 | ||
| + | 1 | ||
| + | 2 -1 -2 | ||
| + | 0 | ||
| + | 0 | ||
| + | 1 | ||
| + | 1 | ||
| + | 1 -2 -2 | ||
| + | 2 | ||
| + | 1 -2 | ||
| + | 1 -1 -3 | ||
| + | 2 -2 -1 | ||
| + | 2 -2 | ||
| + | 2 -1 | ||
| + | 2 | ||
| + | 1 | ||
| + | 2 | ||
| + | 0 | ||
| + | 2 | ||
| + | 2 | ||
| + | 1 -3 | ||
| + | 0 | ||
| + | 1 | ||
| + | 0 | ||
| + | 0 | ||
| + | 0 | ||
| + | 2 -2 -2 | ||
| + | 2 -2 | ||
| + | 1 -3 | ||
| + | 2 -1 -3 | ||
| + | 1 | ||
| + | 1 -3 -1 | ||
| + | 1 -1 | ||
| + | 2 | ||
| + | 0 | ||
| + | 1 | ||
| + | 0 | ||
| + | 2 | ||
| + | 1 | ||
| + | 1 -2 -3 | ||
| + | 2 -1 | ||
| + | 2 | ||
| + | 1 | ||
| + | 1 -3 | ||
| + | 1 -2 | ||
| + | 1 | ||
| + | 2 | ||
| + | 2 -3 | ||
| + | 2 -3 -1 | ||
| + | 3 -1 -1 | ||
| + | 2 | ||
| + | 0 | ||
| + | 1 | ||
| + | 0 | ||
| + | 2 -2 -3 | ||
| + | 1 -3 -2 | ||
| + | 1 | ||
| + | 2 -2 | ||
| + | 3 | ||
| + | 3 -1 -2 | ||
| + | 1 | ||
| + | 2 | ||
| + | 1 -1 -4 | ||
| + | 3 | ||
| + | 2 | ||
| + | 0 | ||
| + | 2 -3 | ||
| + | 3 -1 | ||
| + | 1 | ||
| + | 0 | ||
| + | 2 | ||
| + | 3 -2 -1 | ||
| + | 2 -3 -2 | ||
| + | 2 | ||
| + | 1 | ||
| + | 3 | ||
| + | 2 -1 -4 | ||
| + | 0 | ||
| + | 0 | ||
| + | 3 -2 | ||
| + | 3 -2 -2 | ||
| + | 3 | ||
| + | 1 | ||
| + | 3 -1 -3 | ||
| + | 0 | ||
| + | 1 | ||
| + | 3 | ||
| + | 2 | ||
| + | 3 | ||
| + | 1 -3 | ||
| + | 1 -4 | ||
| + | 2 | ||
| + | 1 -4 | ||
| + | 3 -1 | ||
| + | 2 -3 | ||
| + | 0 | ||
| + | 1 -1 | ||
| + | 0 | ||
| + | 2 -1 | ||
| + | 3 | ||
| + | 1 -2 -4 | ||
| + | 1 -3 -3 | ||
| + | 3 -2 | ||
| + | 1 -4 -1 | ||
| + | 3 | ||
| + | 1 | ||
| + | 3 -2 -3 | ||
| + | 3 | ||
| + | 2 | ||
| + | 0 | ||
| + | 2 -2 -4 | ||
| + | 1 -2 | ||
| + | 2 -2 | ||
| + | 3 -3 -1 | ||
| + | 2 -3 -3 | ||
| + | 1 | ||
| + | 2 | ||
| + | 2 | ||
| + | 1 | ||
| + | 2 | ||
| + | 1 -4 | ||
| + | 2 -4 | ||
| + | 3 -3 | ||
| + | 3 | ||
| + | 0 | ||
| + | 1 | ||
| + | 3 -1 -4 | ||
| + | 2 -4 -1 | ||
| + | 0 | ||
| + | 1 | ||
| + | 3 -3 -2 | ||
| + | 2 | ||
| + | 2 -4 | ||
| + | 0 | ||
| + | 2 | ||
| + | 1 | ||
| + | 0 | ||
| + | 0 | ||
| + | 2 | ||
| + | 1 | ||
| + | 2 | ||
| + | 3 | ||
| + | 1 -1 -5 | ||
| + | 0 | ||
| + | 3 | ||
| + | 1 | ||
| + | 1 | ||
| + | 0 | ||
| + | 1 -4 -2 | ||
| + | 3 -3 | ||
| + | 1 | ||
| + | 3 | ||
| + | 2 -1 -5 | ||
| + | 3 -1 | ||
| + | 2 | ||
| + | 3 | ||
| + | 2 -3 | ||
| + | 1 | ||
| + | 0 | ||
| + | 3 | ||
| + | 1 -3 | ||
| + | 2 -4 -2 | ||
| + | 3 -2 | ||
| + | 2 | ||
| + | 3 -2 -4 | ||
| + | 1 -4 | ||
| + | 3 -3 -3 | ||
| + | 2 -4 | ||
| + | 3 | ||
| + | 1 | ||
| + | 4 -1 -2 | ||
| + | 4 -1 -1 | ||
| + | 3 | ||
| + | 2 | ||
| + | 0 | ||
| + | 0 | ||
| + | 2 | ||
| + | 2 | ||
| + | 2 -3 -4 | ||
| + | 1 -3 -4 | ||
| + | 4 | ||
| + | 4 -2 -1 | ||
| + | 3 | ||
| + | 4 -2 -2 | ||
| + | 4 | ||
| + | 4 -1 -3 | ||
| + | 2 -1 | ||
| + | 3 -4 -1 | ||
| + | 3 -4 | ||
| + | 3 | ||
| + | 1 | ||
| + | 3 -3 | ||
| + | 2 -2 -5 | ||
| + | 4 | ||
| + | 1 -1 | ||
| + | 1 -2 -5 | ||
| + | 4 -1 | ||
| + | 3 -1 -5 | ||
| + | 2 -2 | ||
| + | 1 | ||
| + | 0 | ||
| + | 0 | ||
| + | 3 | ||
| + | 1 -5 | ||
| + | 1 -5 | ||
| + | 1 -4 -3 | ||
| + | 4 -2 | ||
| + | 2 -4 -3 | ||
| + | 1 -2 | ||
| + | 2 | ||
| + | 3 -4 -2 | ||
| + | 4 -2 -3 | ||
| + | 1 | ||
| + | 1 | ||
| + | 1 | ||
| + | 3 -4 | ||
| + | 0 | ||
| + | 3 | ||
| + | 4 | ||
| + | 1 | ||
| + | 1 | ||
| + | 4 | ||
| + | 2 | ||
| + | 2 -4 | ||
| + | 1 | ||
| + | 3 | ||
| + | 3 -3 -4 | ||
| + | 0 | ||
| + | 1 -5 | ||
| + | 0 | ||
| + | 2 | ||
| + | 0 | ||
| + | 3 | ||
| + | 2 | ||
| + | 4 -3 -1 | ||
| + | 3 -1 | ||
| + | 2 -5 | ||
| + | 1 -5 -1 | ||
| + | 4 -1 -4 | ||
| + | 1 -4 | ||
| + | 4 | ||
| + | 4 | ||
| + | 2 | ||
| + | 4 | ||
| + | 3 -2 | ||
| + | 2 | ||
| + | 4 -3 -2 | ||
| + | 2 -3 | ||
| + | 3 -2 -5 | ||
| + | 2 -5 | ||
| + | 3 | ||
| + | 2 | ||
| + | 3 | ||
| + | 2 -5 -1 | ||
| + | 2 | ||
| + | 0 | ||
| + | 4 -3 | ||
| + | 1 | ||
| + | 4 -1 | ||
| + | 2 | ||
| + | 0 | ||
| + | 4 -2 | ||
| + | 0 | ||
| + | 1 -3 | ||
| + | 3 | ||
| + | 2 -1 -6 | ||
| + | 3 -4 -3 | ||
| + | 1 | ||
| + | 3 | ||
| + | 2 | ||
| + | 1 -1 -6 | ||
| + | 4 -2 -4 | ||
| + | 1 | ||
| + | 0 | ||
| + | 2 | ||
| + | 0 | ||
| + | 3 -4 | ||
| + | 0 | ||
| + | 4 -3 -3 | ||
| + | 4 | ||
| + | 0 | ||
| + | 3 -3 | ||
| + | 4 | ||
| + | 2 | ||
| + | 1 -5 | ||
| + | 4 | ||
| + | 2 -5 | ||
| + | 1 | ||
| + | 3 | ||
| + | 1 | ||
| + | 2 -3 -5 | ||
| + | 3 | ||
| + | 1 -5 -2 | ||
| + | 2 -5 -2 | ||
| + | 3 | ||
| + | 2 | ||
| + | 2 -4 -4 | ||
| + | 4 -3 | ||
| + | 1 -3 -5 | ||
| + | 0 | ||
| + | 1 | ||
| + | 4 | ||
| + | 4 | ||
| + | 1 -4 -4 | ||
| + | 3 | ||
| + | 1 | ||
| + | 4 -1 -5 | ||
| + | 3 -1 -6 | ||
| + | 1 | ||
| + | 4 | ||
| + | 3 | ||
| + | 3 -5 | ||
| + | 1 | ||
| + | 3 -5 -1 | ||
| + | 4 -4 -1 | ||
| + | 2 -4 | ||
| + | 0 | ||
| + | 2 | ||
| + | 2 -1 | ||
| + | 2 -2 -6 | ||
| + | 4 | ||
| + | 3 -3 -5 | ||
| + | 3 | ||
| + | 2 -2 | ||
| + | 4 -4 -2 | ||
| + | 4 -4 | ||
| + | 0 | ||
| + | 4 -3 -4 | ||
| + | 1 | ||
| + | 4 -1 | ||
| + | 4 -2 | ||
| + | 0 | ||
| + | 3 -5 | ||
| + | 0 | ||
| + | 1 -2 -6 | ||
| + | 4 | ||
| + | 3 -4 -4 | ||
| + | 1 -4 | ||
| + | 2 -5 | ||
| + | 4 | ||
| + | 4 | ||
| + | 1 -1 | ||
| + | 4 -2 -5 | ||
| + | 3 -5 -2 | ||
| + | 3 | ||
| + | 3 | ||
| + | 3 -4 | ||
| + | 2 | ||
| + | 2 | ||
| + | 1 -2 | ||
| + | 3 -2 | ||
| + | 3 -1 | ||
| + | 1 | ||
| + | 1 -5 | ||
| + | 3 | ||
| + | 2 -5 -3 | ||
| + | 2 | ||
| + | 1 | ||
| + | 1 | ||
| + | 3 -2 -6 | ||
| + | 0 | ||
| + | 2 | ||
| + | 5 -1 -2 | ||
| + | 2 | ||
| + | 1 | ||
| + | 1 -5 -3 | ||
| + | 2 -3 | ||
| + | 4 -4 -3 | ||
| + | 4 | ||
| + | 4 -3 | ||
| + | 0 | ||
| + | 1 | ||
| + | 4 | ||
| + | 4 -4 | ||
| + | 3 | ||
| + | 1 | ||
| + | 5 -1 -3 | ||
| + | 5 -2 -2 | ||
| + | 2 | ||
| + | 1 -6 | ||
| + | 2 | ||
| + | 5 -1 -1 | ||
| + | 3 | ||
| + | 1 | ||
| + | 3 -5 | ||
| + | 1 -6 | ||
| + | 5 -2 -1 | ||
| + | 5 | ||
| + | 3 -3 | ||
| + | 2 | ||
| + | 3 | ||
| + | 3 | ||
| + | 5 -2 -3 | ||
| + | 5 | ||
| + | 1 -6 | ||
| + | 1 -3 | ||
| + | 1 | ||
| + | 2 | ||
| + | 0 | ||
| + | 3 -5 -3 | ||
| + | 4 | ||
| + | 2 -6 | ||
| + | 0 | ||
| + | 4 | ||
| + | 2 | ||
| + | 2 | ||
| + | 2 -6 | ||
| + | 5 | ||
| + | 0 | ||
| + | 4 -1 -6 | ||
| + | 5 -1 -4 | ||
| + | 2 -4 -5 | ||
| + | 2 -1 -7 | ||
| + | 2 | ||
| + | 3 | ||
| + | 1 | ||
| + | 2 | ||
| + | 4 -3 -5 | ||
| + | 1 -6 -1 | ||
| + | 0 | ||
| + | 5 -3 -2 | ||
| + | 0 | ||
| + | 2 -3 -6 | ||
| + | 5 -1 | ||
| + | 5 -2 | ||
| + | 4 | ||
| + | 0 | ||
| + | 2 -6 -1 | ||
| + | 4 | ||
| + | 5 | ||
| + | 3 | ||
| + | 3 | ||
| + | 5 -3 -1 | ||
| + | 0 | ||
| + | 1 -1 -7 | ||
| + | 0 | ||
| + | 4 | ||
| + | 1 | ||
| + | 4 -4 -4 | ||
| + | 5 -2 -4 | ||
| + | 2 -5 | ||
| + | 1 -4 -5 | ||
| + | 3 | ||
| + | 3 | ||
| + | 4 -5 -1 | ||
| + | 0 | ||
| + | 4 | ||
| + | 4 -2 | ||
| + | 4 -4 | ||
| + | 1 | ||
| + | 2 | ||
| + | 2 -6 | ||
| + | 3 | ||
| + | 2 -4 | ||
| + | 3 -4 -5 | ||
| + | 5 -3 -3 | ||
| + | 0 | ||
| + | 4 | ||
| + | 4 -1 | ||
| + | 3 | ||
| + | 0 | ||
| + | 1 | ||
| + | 1 -6 | ||
| + | 1 -3 -6 | ||
| + | 4 -5 | ||
| + | 5 | ||
| + | 5 | ||
| + | 2 | ||
| + | 4 | ||
| + | 3 -1 -7 | ||
| + | 3 -3 -6 | ||
| + | 4 | ||
| + | 2 -5 -4 | ||
| + | 4 -2 -6 | ||
| + | 4 -5 -2 | ||
| + | 5 | ||
| + | 5 -3 | ||
| + | 3 -4 | ||
| + | 1 | ||
| + | 3 | ||
| + | 3 -5 | ||
| + | 1 -5 | ||
| + | 2 | ||
| + | 0 | ||
| + | 4 -3 | ||
| + | 2 -6 -2 | ||
| + | 5 | ||
| + | 5 | ||
| + | 3 -6 | ||
| + | 1 -5 -4 | ||
| + | 1 | ||
| + | 5 -1 -5 | ||
| + | 3 | ||
| + | 1 -6 -2 | ||
| + | 1 | ||
| + | 1 -4 | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | The CG routine in this case is used to solve the normal equations but the limits on the intensity parameter is set to the very large values of -1e40 and 1e40. The macro VV limits the intensity to a positive value after the solution to the normal equations; this is performed using: | ||
| + | |||
| + | < | ||
| + | #m_unique i v min = -1e40; max = 1e40; update = Max(Val+Change, | ||
| + | </ | ||
| + | |||
| + | Thus convergence output is as follows: | ||
| + | |||
| + | < | ||
| + | TOPAS-32 Version 6 (c) 1992-2017 Alan A. Coelho | ||
| + | | ||
| + | Time 0.01, INP file pre-processed | ||
| + | Number of independent parameters : 551 | ||
| + | 0 Time | ||
| + | Sparse matrix methods invoked - 83.0% of the A matrix elements are zero | ||
| + | 1 Time | ||
| + | 2 Time | ||
| + | 3 Time | ||
| + | 4 Time | ||
| + | 5 Time | ||
| + | 6 Time | ||
| + | 7 Time | ||
| + | 8 Time | ||
| + | 9 Time | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | --- 0.483 seconds --- | ||
| + | |||
| + | *** Parameter(s) close to limit(s). | ||
| + | Check for LIMIT_MIN and LIMIT_MAX in Grid/Text | ||
| + | File C: | ||
| + | with parameters from last iteration | ||
| + | |||
| + | Process Times (secs) | ||
| + | 0.02 = Peak buffer derivatives | ||
| + | 0.04 = Ycalc calculation and Penalties | ||
| + | 0.22 = A and Y matrix dot products and derivatives | ||
| + | 0.15 = Ycalc derivatives | ||
| + | 0.07 = A and Y matrix dot products | ||
| + | 0.13 = Solution to the normal equations | ||
| + | </ | ||
| + | |||
| + | As can be seen, not having min/max limits on the intensity parameters leads to slow convergence. | ||
| + | |||
| + | Removing the ' | ||
| + | |||
| + | #m_unique i v min = -1e40; max = 1e40; | ||
| + | |||
| + | results in fast convergence but many of the intensities become negative. | ||
| + | |||