ralna / RALFit

A non-linear least squares solver
Other
25 stars 6 forks source link

AINT_TR optimization #85

Open talassio opened 4 years ago

talassio commented 4 years ago

Subroutine AINT_TR

  1. Deal separately with B generic and B=Identinity, I(n).
  2. w%B is acting as a dense Identity matrix, and is mostly not required, except for the calls to solve_spd and solve_general, some proposals follow:
    1. Assembly and allocation of m0(2n,2n) and m1(2n,2n) might not be required, specially m1 where it is constituted of two diagonals identities.
    2. Change max_eig so not to expect m1 and m0 but the assembly blocks a and (potentially a non identity block b)
    3. Solving ( A + lambda* B ) x = b can be optimized for the case where B=I(n) and probably the allocation of b(n,n) will not be required.

https://github.com/ralna/RALFit/blob/df2478066331c494b3b9ae1e7aa081d43d6ce8d4/libRALFit/src/ral_nlls_internal.f90#L1560-L1580