nonlin 1.5.2
A library that provides routines to compute the solutions to systems of nonlinear equations.
|
Defines a solver based upon Newtons's method for solving an equation of one variable. The algorithm uses a bisection method in conjunction with Newton's method in order to keep bounds upon the Newton iterations. More...
Public Member Functions | |
procedure, public | solve newt1var_solve |
Solves the equation. | |
Public Member Functions inherited from nonlin_core::equation_solver_1var | |
procedure, public | get_max_fcn_evals es1_get_max_eval |
Gets the maximum number of function evaluations allowed during a single solve. | |
procedure, public | set_max_fcn_evals es1_set_max_eval |
Sets the maximum number of function evaluations allowed during a single solve. | |
procedure, public | get_fcn_tolerance es1_get_fcn_tol |
Gets the convergence on function value tolerance. | |
procedure, public | set_fcn_tolerance es1_set_fcn_tol |
Sets the convergence on function value tolerance. | |
procedure, public | get_var_tolerance es1_get_var_tol |
Gets the convergence on change in variable tolerance. | |
procedure, public | set_var_tolerance es1_set_var_tol |
Sets the convergence on change in variable tolerance. | |
procedure, public | get_print_status es1_get_print_status |
Gets a logical value determining if iteration status should be printed. | |
procedure, public | set_print_status es1_set_print_status |
Sets a logical value determining if iteration status should be printed. | |
procedure, public | get_diff_tolerance es1_get_diff_tol |
Gets the convergence on slope of the function (derivative) tolerance. | |
procedure, public | set_diff_tolerance es1_set_diff_tol |
Sets the convergence on slope of the function (derivative) tolerance. | |
Additional Inherited Members | |
Public Attributes inherited from nonlin_core::equation_solver_1var | |
real(real64) | m_fcntol = 1.0d-8 |
The convergence criteria on function value. | |
real(real64) | m_xtol = 1.0d-12 |
The convergence criteria on change in variable value. | |
real(real64) | m_difftol = 1.0d-12 |
The convergence criteria on the slope of the function (derivative) | |
logical | m_printstatus = .false. |
Set to true to print iteration status; else, false. | |
Defines a solver based upon Newtons's method for solving an equation of one variable. The algorithm uses a bisection method in conjunction with Newton's method in order to keep bounds upon the Newton iterations.
Definition at line 502 of file nonlin_solve.f90.
|
virtual |
Solves the equation.
[in,out] | this | The brent_solver object. |
[in] | fcn | The fcn1var_helper object containing the equation to solve. |
[in,out] | x | A parameter used to return the solution. Notice, any input value will be ignored as this routine relies upon the search limits in lim to provide a starting point. |
[in] | lim | A value_pair object defining the search limits. |
[out] | f | An optional parameter used to return the function residual as computed at x . |
[out] | ib | An optional output, that if provided, allows the caller to obtain iteration performance statistics. |
[out] | err | An optional errors-based object that if provided can be used to retrieve information relating to any errors encountered during execution. If not provided, a default implementation of the errors class is used internally to provide error handling. Possible errors and warning messages that may be encountered are as follows.
|
Implements nonlin_core::equation_solver_1var.
Definition at line 591 of file nonlin_solve.f90.