test_nonlin
    
    
    
      test_nonlin,
      a Python code which
      defines a set of test problems for nonlinear
      equation system solvers.
    
    
      A few of the problems are small (2, 3, or 4 equations in 4
      unknowns), but most of the problems may be set to any size whatsoever.
      The software includes routines defining the initial approximation to the
      solution of the system, the N function values at any point, and the N by
      N jacobian matrix at any point.
    
    
      The list of problems includes:
      
        - 
          Generalized Rosenbrock function, 1 < N.
        
 
        - 
          Powell singular function, N = 4.
        
 
        - 
          Powell badly scaled function, N = 2.
        
 
        - 
          Wood function, N = 4.
        
 
        - 
          Helical valley function, N = 3.
        
 
        - 
          Watson function, 1 < N.
        
 
        - 
          Chebyquad function, N arbitrary.
        
 
        - 
          Brown almost linear function, N arbitrary.
        
 
        - 
          Discrete boundary value function, N arbitrary.
        
 
        - 
          Discrete integral equation function, N arbitrary.
        
 
        - 
          Trigonometric function, N arbitrary.
        
 
        - 
          Variably dimensioned function, N arbitrary.
        
 
        - 
          Broyden tridiagonal function, N arbitrary.
        
 
        - 
          Broyden banded function, N arbitrary.
        
 
        - 
          Hammarling 2 by 2 matrix square root problem, N = 4.
        
 
        - 
          Hammarling 3 by 3 matrix square root problem, N = 9.
        
 
        - 
          Dennis and Schnabel example, N = 2.
        
 
        - 
          Sample problem 18, N = 2.
        
 
        - 
          Sample problem 19, N = 2.
        
 
        - 
          Scalar problem, N = 1.
        
 
        - 
          Freudenstein-Roth function, N = 2.
        
 
        - 
          Boggs function, N = 2.
        
 
        - 
          Chandrasekhar function, N arbitrary.
        
 
      
    
    
      Licensing:
    
    
      The information on this web page is distributed under the MIT license.
    
    
      Languages:
    
    
      test_nonlin is available in
      a Fortran77 version and
      a Fortran90 version and
      a MATLAB version and
      an Octave version and
      a Python version.
    
    
      Related Data and Programs:
    
    
      
      fsolve_test,
      a Python code which
      calls fsolve() which
      seeks the solution x of one or more nonlinear equations f(x)=0.
    
    
      
      test_zero,
      a Python code which
      implements test problems for the solution
      of a single nonlinear equation in one variable.
    
    
      Reference:
    
    
      
        - 
          Subramanyan Chandrasekhar,
          Radiative Transfer,
          Dover, 1960,
          ISBN13: 978-0486605906,
          LC: QB461.C46.
         
        - 
          John Dennis, David Gay, Phuong Vu,
          A new nonlinear equations test problem,
          Technical Report 83-16,
          Mathematical Sciences Department,
          Rice University, 1983.
         
        - 
          John Dennis, Robert Schnabel,
          Numerical Methods for Unconstrained Optimization
          and Nonlinear Equations,
          SIAM, 1996,
          ISBN13: 978-0-898713-64-0,
          LC: QA402.5.D44.
         
        - 
          Noel deVilliers, David Glasser,
          A continuation method for nonlinear regression,
          SIAM Journal on Numerical Analysis,
          Volume 18, Number 6, December 1981, pages 1139-1154.
         
        - 
          Chris Fraley, 
          Solution of nonlinear least-squares problems,
          Technical Report STAN-CS-1165, 
          Computer Science Department,
          Stanford University, 1987.
         
        - 
          Chris Fraley,
          Software performance on nonlinear least-squares problems,
          Technical Report SOL 88-17, 
          Systems Optimization Laboratory,
          Department of Operations Research, 
          Stanford University, 1988.
         
        - 
          JJ McKeown,
          Specialized versus general-purpose algorithms for functions
          that are sums of squared terms,
          Mathematical Programming,
          Volume 9, 1975, pages 57-68.
         
        - 
          JJ McKeown,
          On algorithms for sums of squares problems,
          in Towards Global Optimisation,
          edited by Laurence Dixon, Gabor Szego,
          North-Holland, 1975, pages 229-257,
          ISBN: 0444109552,
          LC: QA402.5.T7.
         
        - 
          Jorge More, Burton Garbow, Kenneth Hillstrom,
          Testing unconstrained optimization software,
          ACM Transactions on Mathematical Software,
          Volume 7, Number 1, March 1981, pages 17-41.
         
        - 
          Jorge More, Burton Garbow, Kenneth Hillstrom,
          Algorithm 566:
          Fortran Subroutines for Testing unconstrained optimization software,
          ACM Transactions on Mathematical Software,
          Volume 7, Number 1, March 1981, pages 136-140.
         
        - 
          James Ortega, Werner Rheinboldt
          Iterative Solution of Nonlinear Equations in Several Variables,
          SIAM, 1987,
          ISBN13: 978-0898714616,
          LC: QA297.8.O77.
         
        - 
          Werner Rheinboldt,
          Methods for Solving Systems of Nonlinear Equations,
          SIAM, 1998,
          ISBN: 089871415X,
          LC: QA214.R44.
         
        - 
          Douglas Salane,
          A continuation approach for solving large residual nonlinear
          least squares problems,
          SIAM Journal on Scientific and Statistical Computing,
          Volume 8, Number 4, July 1987, pages 655-671.
         
      
    
    
      Source Code:
    
    
      
    
    
      Individual test problems:
      
    
    
    
      Last revised on 16 October 2020.