kNaN Documentation
version 1.2b
kNaN is a solver for systems of nonlinear equations based on Newton's Method with line search backtracking.
Currently the solver can only work with explicit definitions of
f() and
jf() .
Following methods are planned to be implemented:

krylov

matrixfree

preconditioning

freezed jacobian

diffusion jacobian

diffusion + freezed jacobian

low order approximation to high order nonlinear system

inexact newton

multigrid

numerical jacobian

continuation

fokkema vorst: store resulting F vectors

singular systems
 deltax'e gore de durma kriteri  s based
 absolute
 relative
 introduce analytical jacobian, numerical(one by one and column based)
 introduce jacobian vector multiplication  either directional derivative, full, or sparse storage schemes.
 always compare with the exact value for scaled, small and large for both F and X.
 rename mybeta as beta after numerical_libraries are excluded with the implementation of Krylov Solvers or LU decomposition routines
 initial guess function (either parameter continuation or interpolation or just initialization)
 introduce analytical jacobian, numerical(one by one and column based)
 define weighted norm as a convergence optionoption to compare different grids
 give a detailed analysis file with information on the iterations including the mesh size and weighted norm
 if relative residual is used then it is like weighted norms are used!
 reduce the number of extra F1 and F2 vectors. either by pointers or overwrites
 find a name for this version. this 1.2a  a letter might help :) !
 lambda plot!
problem sets are added
code changes
basic inexact newton is implemented
separate matrix vector multiplier MatVecMult() is added
bicgstab is added as a solver (matmul  no precon)
bicgstab_no_s is added as the default bicgstab solver (matmul no precon)
absolute and relative tolerances are introduced. convergence options are introduced.
solverParameters and physicalParameters modules are added.
Debugging related extra information parameters are added.
module myFunctions is added. quadratic and cubic functions
are carried into this module.
machineps: machineps()  scalar function
calculates the machine eps
In this version the most basic form of a line search backtracking algorithm is implemented. In this program the example problem 6.5.1 given in [1] is examined
[1] Numerical Methods for Unconstrained Optimization and Nonlinear Equations  J.E. Dennis, R.B. Schnabel  SIAM  1996 corrected edition
[2] Iterative Methods for Linear and Nonlinear Equations  C.T. Kelley  SIAM  1995 [3] Testing Unconstrained Optimization Software  J.J. Moré, B.S. Garbow, K.E. Hillstorm  TOMS 7 pp 136140  1981
pdf version of the documentation is
here.
code will be available
here after version 1.5.
Erhan Turan