Introduction to mnewton
=======================

mnewton is an implementation of Newton's method for solving nonlinear equations in one or more variables.

Numerical methods Share packages Package mnewton

Functions and Variables for mnewton
===================================

 -- Option variable: newtonepsilon
     Default value: 10.0^(-fpprec/2)

     Precision to determine when the mnewton function has converged towards the solution.  If newtonepsilon is a bigfloat, then mnewton computations are done with bigfloats.  See also mnewton

     Package mnewton

 -- Option variable: newtonmaxiter
     Default value: 50

     Maximum number of iterations to stop the mnewton function if it does not converge or if it converges too slowly.

     See also mnewton

     Package mnewton

 -- Function: mnewton (FUNCLIST,VARLIST,GUESSLIST)

     Multiple nonlinear functions solution using the Newton method. FUNCLIST is the list of functions to solve, VARLIST is the list of variable names, and GUESSLIST is the list of initial approximations.

     The solution is returned in the same format that solve() returns. If the solution is not found, [] is returned.

     This function is controlled by global variables newtonepsilon and newtonmaxiter

          (%i1) load("mnewton")$

          (%i2) mnewton([x1+3*log(x1)-x2^2, 2*x1^2-x1*x2-5*x1+1],
                        [x1, x2], [5, 5]);
          (%o2) [[x1 = 3.756834008012769, x2 = 2.779849592817897]]
          (%i3) mnewton([2*a^a-5],[a],[1]);
          (%o3)             [[a = 1.70927556786144]]
          (%i4) mnewton([2*3^u-v/u-5, u+2^v-4], [u, v], [2, 2]);
          (%o4) [[u = 1.066618389595407, v = 1.552564766841786]]

     The variable newtonepsilon controls the precision of the approximations.  It also controls if computations are performed with floats or bigfloats.

          (%i1) load(mnewton)$

          (%i2) (fpprec : 25, newtonepsilon : bfloat(10^(-fpprec+5)))$

          (%i3) mnewton([2*3^u-v/u-5, u+2^v-4], [u, v], [2, 2]);
          (%o3) [[u = 1.066618389595406772591173b0,
                                         v = 1.552564766841786450100418b0]]

     To use this function write first load("mnewton"). See also newtonepsilon and newtonmaxiter

     Package mnewton