SABER
|
Minimization data derived type. More...
Data Types | |
type | minim_type |
Functions/Subroutines | |
subroutine | minim_compute (minim, mpl, rng) |
Minimize ensuring bounds constraints. More... | |
subroutine | minim_cost (minim, mpl, x, f) |
Compute cost function. More... | |
subroutine | minim_cost_fit_diag (minim, mpl, x, f) |
Diagnosic fit function cost. More... | |
subroutine | minim_cost_fit_lct (minim, mpl, x, f) |
LCT fit function cost. More... | |
subroutine | minim_hooke (minim, mpl, guess) |
Seeks a minimizer of a scalar function of several variables. More... | |
subroutine | minim_best_nearby (minim, mpl, delta, point, prevbest, funevals, minf) |
Looks for a better nearby point, one coordinate at a time. More... | |
subroutine | minim_praxis (minim, mpl, rng, guess) |
Seeks a minimizer of a scalar function of several variables. More... | |
subroutine | minim_flin (minim, mpl, jsearch, l, x, nf, v, q0, q1, qd0, qd1, qa, qb, qc, flin) |
Seeks a minimizer of a scalar function of one variable. More... | |
subroutine | minim_quad (minim, mpl, t, h, v, q0, q1, nl, nf, dmin, ldt, fx, qf1, qa, qb, qc, qd0, qd1) |
Minimize the scalar function F along a particular curve. More... | |
subroutine | minim_minny (minim, mpl, jsearch, nits, d2, x1, f1, fk, x, t, h, v, q0, q1, nl, nf, dmin, ldt, fx, qa, qb, qc, qd0, qd1) |
Minimization of a scalar function of N variables along a line. More... | |
subroutine | minfit (mpl, n, tol, a, q) |
Singular value decomposition of an N by N array. More... | |
subroutine | swap (n, a1, a2) |
Swaps the entries of two vectors More... | |
subroutine | svsort (n, d, v) |
Descending sorts singular values D and adjusts V. More... | |
subroutine | minim_vt_dir (minim, x) |
Direct variable transform. More... | |
subroutine | minim_vt_inv (minim, mpl, x) |
Inverse variable transform. More... | |
Variables | |
real(kind_real), parameter | machep = epsilon(1.0_kind_real) |
real(kind_real), parameter | small = machep**2 |
real(kind_real), parameter | vsmall = small**2 |
real(kind_real), parameter | large = 1.0/small |
real(kind_real), parameter | vlarge = 1.0/vsmall |
real(kind_real), parameter | m2 = sqrt(machep) |
real(kind_real), parameter | m4 = sqrt(m2) |
Minimization data derived type.
|
private |
Singular value decomposition of an N by N array.
[in,out] | mpl | MPI data |
[in] | n | Order of the matrix |
[in] | tol | Tolerance |
[in,out] | a | Matrix |
[in,out] | q | Singular values |
Definition at line 1016 of file type_minim.F90.
|
private |
Looks for a better nearby point, one coordinate at a time.
[in,out] | minim | Minimization data |
[in,out] | mpl | MPI data |
[in,out] | delta | Step |
[in] | prevbest | Best existing cost |
[in,out] | funevals | Number of evaluations |
[out] | minf | Minimum cost |
Definition at line 439 of file type_minim.F90.
|
private |
Minimize ensuring bounds constraints.
[in,out] | minim | Minimization data |
[in,out] | mpl | MPI data |
[in,out] | rng | Random number generator |
Definition at line 101 of file type_minim.F90.
|
private |
Compute cost function.
[in] | minim | Minimization data |
[in,out] | mpl | MPI data |
[in] | x | Control vector |
[out] | f | Cost function value |
Definition at line 147 of file type_minim.F90.
|
private |
Diagnosic fit function cost.
[in] | minim | Minimization data |
[in,out] | mpl | MPI data |
[in] | x | Control vector |
[out] | f | Cost function value |
Definition at line 175 of file type_minim.F90.
|
private |
LCT fit function cost.
[in] | minim | Minimization data |
[in,out] | mpl | MPI data |
[in] | x | Control vector |
[out] | f | Cost function value |
Definition at line 292 of file type_minim.F90.
|
private |
Seeks a minimizer of a scalar function of one variable.
[in,out] | minim | Minimization data |
[in,out] | mpl | MPI data |
[in] | jsearch | Kind of search |
[in] | l | Particular point at which the function is to be evaluated |
[in] | x | State |
[in,out] | nf | Number of function evaluations |
[in] | v | Search directions |
[in] | q0 | First auxiliary point |
[in] | q1 | Second auxiliary point |
[in] | qd0 | First auxiliary value |
[in] | qd1 | Second auxiliary value |
[out] | qa | First combination coefficient |
[out] | qb | Second combination coefficient |
[out] | qc | Third combination coefficient |
[out] | flin | Value of the function at the minimizing point |
Definition at line 742 of file type_minim.F90.
|
private |
Seeks a minimizer of a scalar function of several variables.
[in,out] | minim | Minimization data |
[in,out] | mpl | MPI data |
Definition at line 342 of file type_minim.F90.
|
private |
Minimization of a scalar function of N variables along a line.
[in,out] | minim | Minimization data |
[in,out] | mpl | MPI data |
[in] | jsearch | Kind of search |
[in] | nits | Maximum number of times the interval may be halved to retry the calculation |
[in,out] | d2 | Approximation to the second derivative of the function halved |
[in,out] | x1 | Estimate of the distance from x to the minimum along v(*,j) |
[in,out] | f1 | ? |
[in] | fk | If fk is .true., then on input f1 contains the value fline(x1) |
[in,out] | x | State |
[in] | t | ? |
[in] | h | ? |
[in] | v | Search directions |
[in] | q0 | First auxiliary point |
[in] | q1 | Second auxiliary point |
[in,out] | nl | Number of linear searches |
[in,out] | nf | Number of function evaluations |
[in] | dmin | Smallest eigenvalue estimate |
[in] | ldt | Step length |
[in,out] | fx | Function value |
[in,out] | qa | First combination coefficient |
[in,out] | qb | Second combination coefficient |
[in,out] | qc | Third combination coefficient |
[in] | qd0 | First auxiliary value |
[in] | qd1 | Second auxiliary value |
Definition at line 857 of file type_minim.F90.
|
private |
Seeks a minimizer of a scalar function of several variables.
[in,out] | minim | Minimization data |
[in,out] | mpl | MPI data |
[in,out] | rng | Random number generator |
Definition at line 492 of file type_minim.F90.
|
private |
Minimize the scalar function F along a particular curve.
[in,out] | minim | Minimization data |
[in,out] | mpl | MPI data |
[in] | t | ? |
[in] | h | ? |
[in] | v | Search directions |
[in,out] | q0 | First auxiliary point |
[in,out] | q1 | Second auxiliary point |
[in,out] | nl | Number of linear searches |
[in,out] | nf | Number of function evaluations |
[in] | dmin | Smallest eigenvalue estimate |
[in] | ldt | Step length |
[in,out] | fx | Function value |
[in,out] | qf1 | ? |
[in,out] | qa | First combination coefficient |
[in,out] | qb | Second combination coefficient |
[in,out] | qc | Third combination coefficient |
[in,out] | qd0 | First auxiliary value |
[in,out] | qd1 | Second auxiliary value |
Definition at line 790 of file type_minim.F90.
|
private |
Direct variable transform.
[in] | minim | Minimization data |
[in,out] | x | Vector |
Definition at line 1278 of file type_minim.F90.
|
private |
Inverse variable transform.
[in] | minim | Minimization data |
[in,out] | mpl | MPI data |
[in,out] | x | Vector |
Definition at line 1295 of file type_minim.F90.
|
private |
Descending sorts singular values D and adjusts V.
[in] | n | Vector and array size |
[in,out] | d | Vector to be sorted |
[in,out] | v | Array to adjust as d is sorted |
Definition at line 1244 of file type_minim.F90.
|
private |
Swaps the entries of two vectors
[in] | n | Vectors size |
[in,out] | a1 | First vector |
[in,out] | a2 | Second vector |
Definition at line 1221 of file type_minim.F90.
real(kind_real), parameter type_minim::large = 1.0/small |
Definition at line 87 of file type_minim.F90.
real(kind_real), parameter type_minim::m2 = sqrt(machep) |
Definition at line 89 of file type_minim.F90.
real(kind_real), parameter type_minim::m4 = sqrt(m2) |
Definition at line 90 of file type_minim.F90.
real(kind_real), parameter type_minim::machep = epsilon(1.0_kind_real) |
Definition at line 84 of file type_minim.F90.
real(kind_real), parameter type_minim::small = machep**2 |
Definition at line 85 of file type_minim.F90.
real(kind_real), parameter type_minim::vlarge = 1.0/vsmall |
Definition at line 88 of file type_minim.F90.
real(kind_real), parameter type_minim::vsmall = small**2 |
Definition at line 86 of file type_minim.F90.