nonlin 1.5.2
A library that provides routines to compute the solutions to systems of nonlinear equations.
|
A base class for various solvers of equations of one variable. More...
Public Member Functions | |
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(nonlin_solver_1var), deferred, pass, public | solve nonlin_solver_1var |
Solves the equation. | |
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. | |
Public Attributes | |
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. | |
Private Attributes | |
integer(int32) | m_maxeval = 100 |
The maximum number of function evaluations allowed per solve. | |
A base class for various solvers of equations of one variable.
Definition at line 1512 of file nonlin_core.f90.
procedure, public nonlin_core::equation_solver_1var::get_diff_tolerance |
Gets the convergence on slope of the function (derivative) tolerance.
[in] | this | The equation_solver object. |
Definition at line 1625 of file nonlin_core.f90.
procedure, public nonlin_core::equation_solver_1var::get_fcn_tolerance |
Gets the convergence on function value tolerance.
[in] | this | The equation_solver_1var object. |
Definition at line 1556 of file nonlin_core.f90.
procedure, public nonlin_core::equation_solver_1var::get_max_fcn_evals |
Gets the maximum number of function evaluations allowed during a single solve.
[in] | this | The equation_solver_1var object. |
Definition at line 1535 of file nonlin_core.f90.
procedure, public nonlin_core::equation_solver_1var::get_print_status |
Gets a logical value determining if iteration status should be printed.
[in] | this | The equation_solver_1var object. |
Definition at line 1597 of file nonlin_core.f90.
procedure, public nonlin_core::equation_solver_1var::get_var_tolerance |
Gets the convergence on change in variable tolerance.
[in] | this | The equation_solver_1var object. |
Definition at line 1576 of file nonlin_core.f90.
procedure, public nonlin_core::equation_solver_1var::set_diff_tolerance |
Sets the convergence on slope of the function (derivative) tolerance.
[in,out] | this | The equation_solver object. |
[in] | x | The tolerance value. |
Definition at line 1640 of file nonlin_core.f90.
procedure, public nonlin_core::equation_solver_1var::set_fcn_tolerance |
Sets the convergence on function value tolerance.
[in,out] | this | The equation_solver_1var object. |
[in] | x | The tolerance value. |
Definition at line 1566 of file nonlin_core.f90.
procedure, public nonlin_core::equation_solver_1var::set_max_fcn_evals |
Sets the maximum number of function evaluations allowed during a single solve.
[in,out] | this | The equation_solver_1var object. |
[in] | n | The maximum number of function evaluations. |
Definition at line 1546 of file nonlin_core.f90.
procedure, public nonlin_core::equation_solver_1var::set_print_status |
Sets a logical value determining if iteration status should be printed.
[in,out] | this | The equation_solver_1var object. |
[in] | x | True if the iteration status should be printed; else, false. |
Definition at line 1608 of file nonlin_core.f90.
procedure, public nonlin_core::equation_solver_1var::set_var_tolerance |
Sets the convergence on change in variable tolerance.
[in,out] | this | The equation_solver_1var object. |
[in] | x | The tolerance value. |
Definition at line 1586 of file nonlin_core.f90.
|
pure virtual |
Solves the equation.
Implemented in nonlin_solve::brent_solver, and nonlin_solve::newton_1var_solver.
Definition at line 1614 of file nonlin_core.f90.
real(real64) nonlin_core::equation_solver_1var::m_difftol = 1.0d-12 |
The convergence criteria on the slope of the function (derivative)
Definition at line 1521 of file nonlin_core.f90.
real(real64) nonlin_core::equation_solver_1var::m_fcntol = 1.0d-8 |
The convergence criteria on function value.
Definition at line 1517 of file nonlin_core.f90.
|
private |
The maximum number of function evaluations allowed per solve.
Definition at line 1515 of file nonlin_core.f90.
logical nonlin_core::equation_solver_1var::m_printstatus = .false. |
Set to true to print iteration status; else, false.
Definition at line 1523 of file nonlin_core.f90.
real(real64) nonlin_core::equation_solver_1var::m_xtol = 1.0d-12 |
The convergence criteria on change in variable value.
Definition at line 1519 of file nonlin_core.f90.