Difference between revisions of "Tikhonov.m"

From Spinach Documentation Wiki
Jump to: navigation, search
(See also)
(Update function See also links and function index membership)
 
(4 intermediate revisions by the same user not shown)
Line 6: Line 6:
 
     [x,err,reg]=tikhonov(K,D,KtK,DtD,H,y,lambda)
 
     [x,err,reg]=tikhonov(K,D,KtK,DtD,H,y,lambda)
  
==Arguments==
+
==Parameters==
  
 
     K      - kernel matrix, may be complex, may be non-square
 
     K      - kernel matrix, may be complex, may be non-square
Line 40: Line 40:
  
 
==See also==
 
==See also==
[[Import,_export,_and_visualisation#Miscellaneous_data_processing|Miscellaneous data processing]]
+
[[tikhoind.m]], [[acomm.m]], [[arnoldi.m]], [[atranspose.m]], [[autophase.m]], [[aux_mat.m]], [[binpack.m]], [[cheap_norm.m]], [[cheb_coeff.m]], [[clean_up.m]], [[destreak.m]], [[dirdiff.m]], [[eigenfields.m]], [[expdrop.m]], [[expmint.m]], [[expmint2.m]], [[fftdiff.m]], [[fourdif.m]], [[fourlap.m]], [[frob_chop.m]], [[gaussfun.m]], [[hdot.m]], [[herm_spline.m]], [[jacobianest.m]], [[keep_rank.m]], [[krondelta.m]], [[kronm_new.m]], [[logfactorial.m]], [[lorentzcon.m]], [[lorentzfun.m]], [[lpredict.m]], [[md5_hash.m]], [[mprealloc.m]], [[remncomm.m]], [[remtrace.m]], [[rspert.m]], [[rspt_eig.m]], [[snormpdf.m]], [[svd_shrink.m]], [[trapdiff.m]], [[unit_oper.m]], [[unit_state.m]], [[vvpert.m]], [[Import,_export,_and_visualisation]], [[Kernel_utilities]]
 
 
[[Kernel_utilities#Numerical_infrastructure|Numerical infrasctucture]]
 
 
 
[[tikhoind.m]]
 
 
 
  
 
''Version 2.9, authors: [[Anupama Acharya]], [[Ilya Kuprov]]''
 
''Version 2.9, authors: [[Anupama Acharya]], [[Ilya Kuprov]]''

Latest revision as of 19:42, 6 June 2026

Tikhonov regularised solution to K*x=y with a positivity constraint on x using regularised Newton-Raphson method.

Syntax

    [x,err,reg]=tikhonov(K,D,KtK,DtD,H,y,lambda)

Parameters

   K      - kernel matrix, may be complex, may be non-square

   D      - regularisation matrix, leave empty to use finite
            difference second derivative matrix

   KtK    - K'*K, for repeated calls it may be faster to pre-
            compute this quantity, leave empty otherwise

   DtD    - D'*D, for repeated calls it may be faster to pre-
            compute this quantity, leave empty otherwise

   H      - Tikhonov Hessian 2*real(KtK+lambda*DtD), for re-
            peated calls it may be faster to precompute this
            quantity, leave empty otherwise

   y      - a column vector, may be complex

   lambda - Tikhonov regularisation parameter

Outputs

   x      - a real vector, a minimum (subject to positivity)
            of norm(K*x-y,2)^2+lambda*norm(D*x,2)^2

   err    - error signal norm(K*x-y,2)^2

   reg    - regularisation signal norm(D*x,2)^2

Notes

For best numerical performance, scale K to have approximately unit 2-norm, and y to have approximately unit 1-norm.

See also

tikhoind.m, acomm.m, arnoldi.m, atranspose.m, autophase.m, aux_mat.m, binpack.m, cheap_norm.m, cheb_coeff.m, clean_up.m, destreak.m, dirdiff.m, eigenfields.m, expdrop.m, expmint.m, expmint2.m, fftdiff.m, fourdif.m, fourlap.m, frob_chop.m, gaussfun.m, hdot.m, herm_spline.m, jacobianest.m, keep_rank.m, krondelta.m, kronm_new.m, logfactorial.m, lorentzcon.m, lorentzfun.m, lpredict.m, md5_hash.m, mprealloc.m, remncomm.m, remtrace.m, rspert.m, rspt_eig.m, snormpdf.m, svd_shrink.m, trapdiff.m, unit_oper.m, unit_state.m, vvpert.m, Import,_export,_and_visualisation, Kernel_utilities

Version 2.9, authors: Anupama Acharya, Ilya Kuprov