ADMB Documentation
-a65f1c97
|
Description not yet available. More...
#include <admodel.h>
Public Member Functions | |
function_minimizer (long int sz=0L) | |
virtual | ~function_minimizer () |
Destructor. More... | |
virtual void | AD_uf_inner () |
virtual void | AD_uf_outer () |
void | adamoeba (const dmatrix &p, const dvector &y, int ndim, double ftol, int maxfn) |
Nelder-Mead simplex alogrithm. More... | |
double | adapt_eps (int ii, int iseps, double eps, double alpha, double &adapt_delta, double &mu, dvector &epsvec, dvector &epsbar, dvector &Hbar) |
void | add_sample_dense (const int nvar, int &is2, dvector &m, dmatrix &m2, const independent_variables &q) |
Calculate running covariance using Welford's "online" algorithm. More... | |
void | add_sample_diag (const int nvar, int &n, dvector &m, dvector &m2, const independent_variables &q) |
Calculate running covariance using Welford's "online" algorithm. More... | |
dvariable | adromb (_func func, double a, double b, int ns=9) |
Romberg integration. More... | |
dvariable | adromb (_func func, const dvariable &a, double b, int ns=9) |
Romberg integration. More... | |
dvariable | adromb (_func func, const dvariable &a, const dvariable &b, int ns=9) |
Romberg integration. More... | |
dvariable | adromb (_func func, double a, const dvariable &b, int ns=9) |
Romberg integration. More... | |
dvariable | adrombo (_func func, double a, double b, int ns=9) |
dvariable | adrombo (_func func, const dvariable &a, double b, int ns=9) |
dvariable | adrombo (_func func, const dvariable &a, const dvariable &b, int ns=9) |
dvariable | adrombo (_func func, double a, const dvariable &b, int ns=9) |
virtual void | allocate () |
double | amxxx (const dmatrix &p, const dvector &y, const dvector &psum, int ndim, int ihi, double fac) |
Description not yet available. More... | |
void | begin_df1b2_funnel (void) |
void | begin_funnel_stuff (void) |
void | begin_gauss_hermite_stuff (void) |
virtual void | between_phases_calculations (void) |
void | build_tree (int nvar, dvector &gr, dmatrix &chd, double eps, dvector &p, dvector &y, dvector &gr2, double logu, int v, int j, double H0, dvector &_thetaprime, dvector &_thetaplus, dvector &_thetaminus, dvector &_rplus, dvector &_rminus, double &_alphaprime, int &_nalphaprime, bool &_sprime, int &_nprime, int &_nfevals, bool &_divergent, const random_number_generator &rng, dvector &gr2_end, dvector &_grprime, dvector &_gr2prime, double &_nllprime, double &_Hprime, independent_variables &_parsaveprime) |
bool | calculate_chd_and_inverse (int nvar, const dmatrix &metric, dmatrix &chd, dmatrix &chdinv) |
Calculate the Cholesky decomposition and its inverse given a mass matrix. More... | |
bool | choleski_decomp_hmc (const dmatrix &metric, dmatrix &L) |
void | computations (int argc, char *argv[]) |
void | computations (void) |
void | computations1 (int argc, char *argv[]) |
void | computations_np (int argc, char *argv[]) |
int | compute_next_window (int i, int warmup, int w1, int aws, int w3) |
int | constrained_minimization2 (int _n, int _nh, int _ng, dvector &__x) |
void | constraint_report (void) |
virtual void | constraints_minimize (void) |
virtual void | deallocate () |
dmatrix | dep_hess_routine (const dvariable &dep) |
Description not yet available. More... | |
void | depvars_routine (void) |
Calculate the derivatives of dependent variables with respect to the independent variables. More... | |
dmatrix | diag_hess_routine (void) |
double | diag_projected_hess_determinant (const dvector &g, const int underflow_flag, dmatrix &dh) |
dvariable | do_gauss_hermite_integration (void) |
int | ef_ (double *f, double *x) |
void | end_df1b2_funnel (void) |
void | end_df1b2_funnel_stuff (void) |
void | end_gauss_hermite_stuff (void) |
void | end_get_importance_sampling_comnponent (void) |
double | exprnd (double p) |
virtual void | final_calcs (void) |
double | find_reasonable_stepsize (int nvar, dvector y, dvector p, dmatrix &chd, bool verbose_adapt_mass, bool verbose_find_epsilon, int chain) |
void | function_evaluation_block_pvm_slave (void) |
void | function_evaluation_block_pvm_slave_random_effects (int nvar, int _crit, independent_variables &x, const dvector &g, const double &f) |
void | function_evaluation_block_pvm_slave_random_effects (void) |
void | get_bigS (int ndvar, int nvar1, int nvar, dmatrix &S, dmatrix &BS, dvector &scale) |
Description not yet available. More... | |
std::string | get_filename (const char *f) |
void | get_function_difference (void) |
dmatrix & | get_hessian () |
dmatrix & | get_hessian_inverse () |
double | get_hybrid_monte_carlo_value (int nvar, const independent_variables &y, dvector &g) |
Written by Dave, commented by Cole starting 8/31/2016 Description not yet available. More... | |
double | get_ln_det_value () const |
double | get_monte_carlo_value (int nvar, const independent_variables &x) |
double | get_monte_carlo_value (int nvar, const independent_variables &x, dvector &g) |
double | get_monte_carlo_value (int nvar, const dvector &x) |
void | get_particular_grad (int iprof, int nvar, const dvector &fg, const dvector &g) |
double | hess_determinant (int underflow_flag) |
bool | hess_inv () |
Symmetrize and invert the hessian. More... | |
void | hess_routine (void) |
void | hess_routine_and_constraint (int iprof, const dvector &g, dvector &fg) |
void | hess_routine_master (void) |
void | hess_routine_noparallel (void) |
void | hess_routine_noparallel_random_effects (void) |
Description not yet available. More... | |
void | hess_routine_noparallel_randomeffects (void) |
void | hess_routine_random_effects (void) |
Description not yet available. More... | |
void | hess_routine_slave (void) |
void | hess_routine_slave_random_effects (void) |
Description not yet available. More... | |
void | hess_step () |
hess_step is used for HMC. See details in function_minimizer::hess_step. More... | |
void | hybrid_mcmc_routine (int, int, double, int) |
Description not yet available. More... | |
double | leapfrog (int nvar, dvector &gr, dmatrix &chd, double eps, dvector &p, dvector &x, dvector &gr2) |
Function to take a single HMC leapfrog step, given current position and momentum variables. More... | |
void | likeprof_routine (double global_min) |
void | limited_memory_quasi_newton (const independent_variables &, int) |
void | limited_memory_quasi_newton (const independent_variables &, int, int) |
void | limited_memory_quasi_newton (double &f, const independent_variables &, int, int, int, double) |
void | limited_memory_quasi_newton_block (int nvar, int _crit, independent_variables &x, const dvector &_g, const double &_f, int nsteps) |
Description not yet available. More... | |
void | mcmc_computations (void) |
void | mcmc_eval (void) |
Description not yet available. More... | |
void | mcmc_routine (int, int, double, int) |
Monte Carlo Markov Chain minimization routine Approximate the target distribution by performing a random walk across parameter space, integrating at each step. More... | |
virtual void | minimize (void) |
void | monte_carlo_routine (void) |
void | multint (int n, const dvar_vector &a, const dvar_vector &b, const dvar_vector &h, double al, int m, const dvariable &e, const dvariable &aint, const int &key, PMFVI f) |
void | multint4 (int n, const dvar_vector &a, const dvar_vector &b, const dvar_vector &h, double al, int m, const dvariable &e, const dvariable &aint1, const dvariable &aint2, dvariable &aint3, const dvariable &aint4, const int &key, PMFVIV4 f) |
void | neldmead (int n, dvector &_start, dvector &_xmin, double *ynewlo, double reqmin, double delta, int *icount, int *numres, int *ifault) |
Nelder-Mead simplex alogrithm. More... | |
void | normalize_posterior_distribution (double udet, const dvector &siglevel, const ofstream &ofs2, int num_pp, const dvector &all_values, const dmatrix &actual_value, double global_min, int offset, const dmatrix &lprof, const dmatrix &ldet, const dmatrix &xdist, const dmatrix &penalties) |
void | nuts_mcmc_routine (int, int, double, int) |
The function implements the MCMC algorithm NUTS, which is a self-tuning variant of Hamiltonian Monte Carlo. More... | |
virtual void | other_calculations (void) |
void | other_separable_stuff_begin (void) |
void | other_separable_stuff_end (void) |
void | pre_user_function (void) |
Description not yet available. More... | |
void | pre_userfunction (void) |
void | print_mcmc_progress (int is, int nmcmc, int nwarmup, int chain, int refresh) |
void | print_mcmc_timing (double time_warmup, double time_total, int chain) |
void | prof_hess_routine (int ip, double new_value, double final_weight) |
void | prof_minimize (int iprof, double sigma, double new_value, const double &fprof, const int underflow_flag, double global_min, const double &penalties, const double &final_weight) |
void | prof_minimize_re (int iprof, double sigma, double new_value, const double &fprof, const int underflow_flag, double global_min, const double &penalties, const double &final_weight) |
double | projected_hess_determinant (const dvector &g, const int underflow_flag, const dvector &xscale, const double &ln_det_proj_jac) |
double | projected_hess_determinant (const dvector &g, const int underflow_flag) |
double | projected_hess_determinant (const dmatrix &hh, const dvector &g, const int underflow_flag) |
double | projected_hess_determinant (const dvector &fg, const dvector &g, const int underflow_flag, const dvector &curvscale, const dvector &xscale, double &ln_det_proj_jac, const double &tmp, const dmatrix &hesses) |
double | projected_jacobian (const dvector &g, const dvector &xscale) |
void | pvm_master_function_evaluation (double &f, independent_variables &x, const dvector &g, int nvar) |
void | pvm_master_function_evaluation_no_derivatives (double &f, independent_variables &x, int nvar) |
void | pvm_master_function_evaluation_profile (double &f, independent_variables &x, const dvector &g, int nvar, int iprof, double weight, double new_value) |
double | pvm_master_get_monte_carlo_value (int nvar, const dvector &x) |
void | pvm_master_mcmc_computations (void) |
void | pvm_master_mcmc_routine (int nmcmc, int iseed0, double dscale, int restart_flag) |
void | pvm_master_prof_minimize (int iprof, double sigma, double new_value, const double &_fprof, const int underflow_flag, double global_min, const double &_penalties, const double &_final_weight) |
void | pvm_slave_function_evaluation (void) |
void | pvm_slave_function_evaluation_no_derivatives (void) |
void | pvm_slave_function_evaluation_noder (void) |
void | pvm_slave_get_monte_carlo_value (int nvar) |
void | pvm_slave_likeprof_routine (void) |
void | pvm_slave_mcmc_computations (void) |
void | pvm_slave_mcmc_routine (void) |
void | pvm_slave_prof_minimize (int underflow_flag) |
void | quasi_newton_block (int nvar, int crit, independent_variables &x, const dvector &g, const double &f) |
Description not yet available. More... | |
void | quasi_newton_block_pvm_master (int nvar, int _crit, independent_variables &x, const dvector &g, const double &f) |
void | quasi_newton_block_pvm_master_random_effects (int nvar, int _crit, independent_variables &x, const dvector &g, const double &f) |
void | quasi_newton_minimizer1 (int nvar, double _crit, double &f, const independent_variables &x, const dvector &g) |
dvariable | random_effects_maximization (const dvar_vector &v) |
void | read_mle_hmc (int nvar, dvector &mle) |
dvector | rotate_gradient (const dvector &x, const dmatrix &m) |
dvector | rotate_pars (const dvector &m, const dvector &x) |
dvector | rotate_pars (const dmatrix &m, const dvector &x) |
void | rwm_mcmc_routine (int, int, double, int) |
void | sd_routine (void) |
void | set_initial_simplex (const dmatrix &p, const dvector &y, int nvar, const dvector &x, double delta) |
void | set_multinomial_weights (dvector &d) |
virtual void | set_runtime (void) |
virtual void | set_runtime_crit (const char *) |
virtual void | set_runtime_maxfn (const char *) |
void | setup_quadprior_calcs (void) |
void | sgibbs_mcmc_routine (int, int, double, int) |
void | shmc_mcmc_routine (int, int, double, int) |
bool | slow_phase (int is, int warmup, int w1, int w3) |
void | sob_routine (int nmcmc, double dscale, int restart_flag) |
void | sobol_importance_routine (int nmcmc, int iseed0, double dscale, int restart_flag) |
void | start_get_importance_sampling_comnponent (void) |
bool | stop_criterion (int nvar, dvector &thetaminus, dvector &thetaplus, dvector &rminus, dvector &rplus) |
void | top_mcmc_routine (int, int, double, int) |
dvariable | trapzd (void *, double a, double b, int n) |
dvariable | trapzd (_func func, double a, double b, int n) |
Extended trapezoid rule. More... | |
dvariable | trapzd (_func func, double a, const dvariable &b, int n) |
Extended trapezoid rule. More... | |
dvariable | trapzd (_func func, const dvariable &a, double b, int n) |
Extended trapezoid rule. More... | |
dvariable | trapzd (_func func, const dvariable &a, const dvariable &b, int n) |
Extended trapezoid rule. More... | |
void | trust_region_update (int nvar, int _crit, independent_variables &x, const dvector &_g, const double &_f) |
Description not yet available. More... | |
double | unrestricted_hess_determinant (void) |
virtual dvar_matrix | user_d2frandeff (const dvar_vector &x) |
virtual dvar_vector | user_dfrandeff (const dvar_vector &x) |
virtual void | user_function () |
virtual dvariable | user_randeff (const dvar_vector &x) |
virtual void | userfunction (void)=0 |
Static Public Member Functions | |
static int | inner_opt (void) |
Public Attributes | |
double | crit |
double | dfn |
int | diagonal_metric_flag |
long | iexit |
long | ifn |
long | ihang |
long | ihflag |
int | imax |
int | iprint |
laplace_approximation_calculator * | lapprox |
int | maxfn |
int | maxfn_flag |
int | mcmc2_flag |
double | min_improve |
dvector * | multinomial_weights |
dmatrix * | negdirections |
int | quit_flag |
int | repeatminflag |
int | robust_hybrid_flag |
int | scroll_flag |
int | spminflag |
Static Public Attributes | |
static int | bad_step_flag =0 |
static int | constraint_exit_number |
static int | first_hessian_flag =0 |
static int | inner_opt_flag =0 |
static int | likeprof_flag |
static int | negative_eigenvalue_flag =0 |
static int | output_flag = defaults::output |
static named_dvar_vector * | pg |
static named_dvar_vector * | ph |
static int | random_effects_flag =0 |
static int | test_trust_flag =0 |
Protected Member Functions | |
virtual void | report (const dvector &gradients) |
void | report_function_minimizer_stats (void) |
Protected Attributes | |
double | ffbest |
Static Protected Attributes | |
static dvector | convergence_criteria |
static int | have_constraints =0 |
static dvector | maximum_function_evaluations |
static int | sd_flag |
static adstring | user_data_file |
static adstring | user_par_file |
Private Member Functions | |
dvariable | do_gauss_hermite_integration_multi (void) |
Private Attributes | |
dmatrix | _hessian |
dmatrix | _hessian_inverse |
double | _ln_det_value |
adstring_array | param_labels |
ivector | param_size |
gradient_structure * | pgs |
Friends | |
class | equality_constraint_vector |
class | inequality_constraint_vector |
function_minimizer::function_minimizer | ( | long int | sz = 0L | ) |
Definition at line 553 of file xmodelm3.cpp.
|
virtual |
Destructor.
Definition at line 633 of file xmodelm3.cpp.
|
virtual |
Definition at line 40 of file xmodelm4.cpp.
Referenced by laplace_approximation_calculator::check_hessian_type(), laplace_approximation_calculator::default_calculations_check_derivatives(), laplace_approximation_calculator::do_one_feval(), evaluate_function(), evaluate_function_gradient(), evaluate_function_no_derivatives(), evaluate_function_quiet(), evaluate_function_with_quadprior(), laplace_approximation_calculator::get_fx_fu(), laplace_approximation_calculator::get_gradient_lme(), laplace_approximation_calculator::get_gradient_lme_hp(), laplace_approximation_calculator::get_uhat_lm_newton2(), laplace_approximation_calculator::get_uhat_quasi_newton(), and laplace_approximation_calculator::get_uhat_quasi_newton_block_diagonal().
|
virtual |
Definition at line 39 of file xmodelm4.cpp.
Referenced by calculate_importance_sample(), calculate_importance_sample_block_diagonal(), calculate_importance_sample_block_diagonal_funnel(), calculate_importance_sample_block_diagonal_option2(), calculate_importance_sample_block_diagonal_option_antithetical(), calculate_importance_sample_funnel(), calculate_importance_sample_shess(), calculate_laplace_approximation(), do_gauss_hermite_block_diagonal(), and do_gauss_hermite_block_diagonal_multi().
void function_minimizer::adamoeba | ( | const dmatrix & | _p, |
const dvector & | _y, | ||
int | ndim, | ||
double | ftol, | ||
int | nfunk | ||
) |
Nelder-Mead simplex alogrithm.
_p | Matrix |
_y | Vector |
ndim | Integer |
ftol | Double |
nfunk | Integer |
The implementation of this algorithm was inspired by "Numerical Recipes in C", 2nd edition, Press, Teukolsky, Vetterling, Flannery, chapter 10
Definition at line 38 of file amoeba.cpp.
Referenced by minimize().
double function_minimizer::adapt_eps | ( | int | ii, |
int | iseps, | ||
double | eps, | ||
double | alpha, | ||
double & | adapt_delta, | ||
double & | mu, | ||
dvector & | epsvec, | ||
dvector & | epsbar, | ||
dvector & | Hbar | ||
) |
Definition at line 234 of file hmc_functions.cpp.
Referenced by nuts_mcmc_routine(), and shmc_mcmc_routine().
void function_minimizer::add_sample_dense | ( | const int | nvar, |
int & | n, | ||
dvector & | m, | ||
dmatrix & | m2, | ||
const independent_variables & | q | ||
) |
Calculate running covariance using Welford's "online" algorithm.
n | is a count of samples m is a running vector of means (initialized at 0) m2 is a running vector of unscaled variances (initalized at 0) q is a vector of the new parameters used to update returns updated n, m, and m2 via reference m2/(n-1) is the covariance through n samples this is loosely based off of Stan's algorithm: welford_covar_estimator.hpp |
Definition at line 621 of file hmc_functions.cpp.
Referenced by nuts_mcmc_routine().
void function_minimizer::add_sample_diag | ( | const int | nvar, |
int & | n, | ||
dvector & | m, | ||
dvector & | m2, | ||
const independent_variables & | q | ||
) |
Calculate running covariance using Welford's "online" algorithm.
n | is a count of samples m is a running vector of means (initialized at 0) m2 is a running matrix of unscaled covariance (initalized at 0) q is a vector of the new parameters used to update returns updated n, m, and m2 via reference m2/(n-1) is the covariance through n samples this is loosely based off of Stan's algorithm: welford_covar_estimator.hpp |
Definition at line 598 of file hmc_functions.cpp.
Referenced by nuts_mcmc_routine().
Romberg integration.
func | Pointer to a member function of class model_parameters. |
a | Lower limit of integration. |
b | Upper limit of inegration. |
ns |
Definition at line 40 of file dfqromb.cpp.
Romberg integration.
func | Pointer to a member function of class model_parameters. |
a | Lower limit of integration. |
b | Upper limit of inegration. |
ns |
Definition at line 69 of file dfqromb.cpp.
dvariable function_minimizer::adromb | ( | _func | func, |
const dvariable & | a, | ||
const dvariable & | b, | ||
int | ns = 9 |
||
) |
Romberg integration.
func | Pointer to a member function of class model_parameters. |
a | Lower limit of integration. |
b | Upper limit of inegration. |
ns |
Definition at line 127 of file dfqromb.cpp.
Romberg integration.
func | Pointer to a member function of class model_parameters. |
a | Lower limit of integration. |
b | Upper limit of inegration. |
ns |
Definition at line 98 of file dfqromb.cpp.
dvariable function_minimizer::adrombo | ( | _func | func, |
const dvariable & | a, | ||
const dvariable & | b, | ||
int | ns = 9 |
||
) |
|
inlinevirtual |
Definition at line 1903 of file admodel.h.
Referenced by limited_memory_quasi_newton_block(), prof_minimize_re(), quasi_newton_block(), and trust_region_update().
double function_minimizer::amxxx | ( | const dmatrix & | _p, |
const dvector & | _y, | ||
const dvector & | _psum, | ||
int | ndim, | ||
int | ihi, | ||
double | fac | ||
) |
Description not yet available.
Definition at line 107 of file amoeba.cpp.
Referenced by adamoeba().
|
inline |
void function_minimizer::begin_funnel_stuff | ( | void | ) |
Definition at line 803 of file xmodelm3.cpp.
void function_minimizer::begin_gauss_hermite_stuff | ( | void | ) |
Definition at line 761 of file xmodelm3.cpp.
Referenced by begin_funnel_stuff().
|
inlinevirtual |
Definition at line 1937 of file admodel.h.
Referenced by minimize().
void function_minimizer::build_tree | ( | int | nvar, |
dvector & | gr, | ||
dmatrix & | chd, | ||
double | eps, | ||
dvector & | p, | ||
dvector & | y, | ||
dvector & | gr2, | ||
double | logu, | ||
int | v, | ||
int | j, | ||
double | H0, | ||
dvector & | _thetaprime, | ||
dvector & | _thetaplus, | ||
dvector & | _thetaminus, | ||
dvector & | _rplus, | ||
dvector & | _rminus, | ||
double & | _alphaprime, | ||
int & | _nalphaprime, | ||
bool & | _sprime, | ||
int & | _nprime, | ||
int & | _nfevals, | ||
bool & | _divergent, | ||
const random_number_generator & | rng, | ||
dvector & | gr2_end, | ||
dvector & | _grprime, | ||
dvector & | _gr2prime, | ||
double & | _nllprime, | ||
double & | _Hprime, | ||
independent_variables & | _parsaveprime | ||
) |
Definition at line 75 of file hmc_functions.cpp.
Referenced by nuts_mcmc_routine().
bool function_minimizer::calculate_chd_and_inverse | ( | int | nvar, |
const dmatrix & | metric, | ||
dmatrix & | chd, | ||
dmatrix & | chdinv | ||
) |
Calculate the Cholesky decomposition and its inverse given a mass matrix.
nvar | Number of active parameters metric Mass matrix chd Choleksy decomposition, updated via reference chdinv Inverse of chd, updated via reference returns nothing except updated matrices by reference |
Definition at line 641 of file hmc_functions.cpp.
Referenced by nuts_mcmc_routine().
what is this?
Definition at line 686 of file hmc_functions.cpp.
Referenced by calculate_chd_and_inverse().
void function_minimizer::computations | ( | int | argc, |
char * | argv[] | ||
) |
Definition at line 39 of file modspmin.cpp.
void function_minimizer::computations | ( | void | ) |
Definition at line 397 of file modspmin.cpp.
void function_minimizer::computations1 | ( | int | argc, |
char * | argv[] | ||
) |
Definition at line 138 of file modspmin.cpp.
Referenced by computations(), and hess_step().
void function_minimizer::computations_np | ( | int | argc, |
char * | argv[] | ||
) |
int function_minimizer::compute_next_window | ( | int | i, |
int | warmup, | ||
int | w1, | ||
int | aws, | ||
int | w3 | ||
) |
Definition at line 34 of file hmc_functions.cpp.
Referenced by nuts_mcmc_routine().
int function_minimizer::constrained_minimization2 | ( | int | _n, |
int | _nh, | ||
int | _ng, | ||
dvector & | __x | ||
) |
void function_minimizer::constraint_report | ( | void | ) |
|
virtual |
Referenced by computations1().
|
inlinevirtual |
Definition at line 1904 of file admodel.h.
Referenced by quasi_newton_block().
void function_minimizer::depvars_routine | ( | void | ) |
Calculate the derivatives of dependent variables with respect to the independent variables.
Definition at line 488 of file mod_hess.cpp.
Referenced by computations1(), and hess_step().
dmatrix function_minimizer::diag_hess_routine | ( | void | ) |
double function_minimizer::diag_projected_hess_determinant | ( | const dvector & | g, |
const int | underflow_flag, | ||
dmatrix & | dh | ||
) |
dvariable function_minimizer::do_gauss_hermite_integration | ( | void | ) |
Definition at line 12 of file xmodelm5.cpp.
Referenced by do_gauss_hermite_block_diagonal(), and do_gauss_hermite_block_diagonal_multi().
|
private |
Definition at line 31 of file xmodelm5.cpp.
Referenced by do_gauss_hermite_integration().
int function_minimizer::ef_ | ( | double * | f, |
double * | x | ||
) |
|
inline |
void function_minimizer::end_df1b2_funnel_stuff | ( | void | ) |
Definition at line 830 of file xmodelm3.cpp.
void function_minimizer::end_gauss_hermite_stuff | ( | void | ) |
Definition at line 863 of file xmodelm3.cpp.
Referenced by end_df1b2_funnel_stuff().
void function_minimizer::end_get_importance_sampling_comnponent | ( | void | ) |
Definition at line 785 of file xmodelm3.cpp.
Referenced by end_df1b2_funnel_stuff().
double function_minimizer::exprnd | ( | double | p | ) |
|
inlinevirtual |
Definition at line 1934 of file admodel.h.
Referenced by computations().
double function_minimizer::find_reasonable_stepsize | ( | int | nvar, |
dvector | y, | ||
dvector | p, | ||
dmatrix & | chd, | ||
bool | verbose_adapt_mass, | ||
bool | verbose_find_epsilon, | ||
int | chain | ||
) |
Definition at line 331 of file hmc_functions.cpp.
Referenced by nuts_mcmc_routine().
void function_minimizer::function_evaluation_block_pvm_slave | ( | void | ) |
Referenced by minimize().
void function_minimizer::function_evaluation_block_pvm_slave_random_effects | ( | int | nvar, |
int | _crit, | ||
independent_variables & | x, | ||
const dvector & | g, | ||
const double & | f | ||
) |
void function_minimizer::function_evaluation_block_pvm_slave_random_effects | ( | void | ) |
Referenced by minimize().
void function_minimizer::get_bigS | ( | int | ndvar, |
int | nvar1, | ||
int | nvar, | ||
dmatrix & | S, | ||
dmatrix & | BS, | ||
dvector & | scale | ||
) |
Description not yet available.
Definition at line 15 of file getbigs.cpp.
Referenced by sd_routine().
std::string function_minimizer::get_filename | ( | const char * | f | ) |
Definition at line 63 of file hmc_functions.cpp.
Referenced by hess_step(), nuts_mcmc_routine(), and rwm_mcmc_routine().
void function_minimizer::get_function_difference | ( | void | ) |
Definition at line 823 of file xmodelm3.cpp.
Referenced by end_df1b2_funnel_stuff().
|
inline |
double function_minimizer::get_hybrid_monte_carlo_value | ( | int | nvar, |
const independent_variables & | y, | ||
dvector & | g | ||
) |
Written by Dave, commented by Cole starting 8/31/2016 Description not yet available.
y | is vector of Choleski rotated parameters (i.e., unbounded space; y=chd*x where x is algorithm space). g is a vector of empty gradients returns the negative log likelihood (density), but also stores gradients at y in g |
Definition at line 258 of file hmc_functions.cpp.
Referenced by find_reasonable_stepsize(), hybrid_mcmc_routine(), leapfrog(), nuts_mcmc_routine(), and shmc_mcmc_routine().
|
inline |
double function_minimizer::get_monte_carlo_value | ( | int | nvar, |
const independent_variables & | x | ||
) |
Definition at line 11 of file mod_mc2.cpp.
Referenced by mcmc_eval(), mcmc_routine(), monte_carlo_routine(), and rwm_mcmc_routine().
double function_minimizer::get_monte_carlo_value | ( | int | nvar, |
const independent_variables & | x, | ||
dvector & | g | ||
) |
Definition at line 75 of file mod_mc2.cpp.
double function_minimizer::get_monte_carlo_value | ( | int | nvar, |
const dvector & | x | ||
) |
Definition at line 10 of file mod_mc4.cpp.
void function_minimizer::get_particular_grad | ( | int | iprof, |
int | nvar, | ||
const dvector & | fg, | ||
const dvector & | g | ||
) |
Definition at line 175 of file newmodm2.cpp.
Referenced by likeprof_routine().
double function_minimizer::hess_determinant | ( | int | underflow_flag | ) |
Definition at line 10 of file modhdet.cpp.
bool function_minimizer::hess_inv | ( | void | ) |
Symmetrize and invert the hessian.
Definition at line 574 of file mod_hess.cpp.
Referenced by computations1(), and hess_step().
void function_minimizer::hess_routine | ( | void | ) |
Definition at line 21 of file mod_hess.cpp.
Referenced by computations1(), and hess_step().
Definition at line 215 of file mod_hess.cpp.
void function_minimizer::hess_routine_master | ( | void | ) |
Referenced by hess_routine().
void function_minimizer::hess_routine_noparallel | ( | void | ) |
Definition at line 61 of file mod_hess.cpp.
Referenced by hess_routine().
void function_minimizer::hess_routine_noparallel_random_effects | ( | void | ) |
Description not yet available.
Definition at line 129 of file mod_rhes.cpp.
Referenced by hess_routine_random_effects().
void function_minimizer::hess_routine_noparallel_randomeffects | ( | void | ) |
void function_minimizer::hess_routine_random_effects | ( | void | ) |
Description not yet available.
Definition at line 99 of file mod_rhes.cpp.
Referenced by hess_routine().
void function_minimizer::hess_routine_slave | ( | void | ) |
Referenced by hess_routine().
void function_minimizer::hess_routine_slave_random_effects | ( | void | ) |
Description not yet available.
Definition at line 556 of file mod_rhes.cpp.
Referenced by hess_routine_random_effects().
void function_minimizer::hess_step | ( | ) |
hess_step is used for HMC. See details in function_minimizer::hess_step.
Feature to try and get closer to the optimal point (minimum) using Newton steps with the inverse Hessian.
If successful it gives evidence that the mode has been reached and the nearby curvature is well approximated by a quadratic form.
Let x be the current MLE parameter vector. Then a single step consists of calculating x'=x-inv(Hessian)*gradient. This calculation is done in the unbounded parameter space.
This feature is initiated by calling "-hess_step N -hess_step_tol eps" to specify the maximum number of steps (N) and a minimum threshold (eps) for the maximum absolute gradient ('maxgrad'), below which is deemed sufficient and causes the function to exit early with success. The defaults are N=5 and eps=1e-12. The function will continue even if the maxgrad gets bigger because often sucessive steps improve the Hessian and can finish successfully. If successful, the new MLE is deemed improved and is propagated through the model to update all output files.
The upside of this feature is it confirms that the geometry near the mode is quadratic and well represented by the Hessian. It may also slightly improve the MLE and uncertainty estimates. The downside is that the Hessian needs to be recalculated and inverted at each step so it is costly computationally.
One technical issue is that because this is run after optimization, the model initialization needs to be considered. If there are inactive parameters in some cases they may not be intialized to what is in the template. A workaround is to specify initial values via the -ainp or -binp arguments, as is standard. Future versions should explore how to automate this, or only warn the user when there are inactive parameters.
Typical usage is to optimize model, then use this feature if convergence is suspect. If it reduces the maxgrad to zero this gives strong evidence for convergence.
Definition at line 49 of file output_checks.cpp.
Referenced by computations().
void function_minimizer::hybrid_mcmc_routine | ( | int | nmcmc, |
int | iseed0, | ||
double | dscale, | ||
int | restart_flag | ||
) |
Description not yet available.
Definition at line 83 of file hybmcmc.cpp.
Referenced by mcmc_computations().
|
static |
Definition at line 39 of file xmodelm3.cpp.
Referenced by end_df1b2_funnel_stuff(), and pre_userfunction().
double function_minimizer::leapfrog | ( | int | nvar, |
dvector & | gr, | ||
dmatrix & | chd, | ||
double | eps, | ||
dvector & | p, | ||
dvector & | x, | ||
dvector & | gr2 | ||
) |
Function to take a single HMC leapfrog step, given current position and momentum variables.
Returns nll value but also updates position and momentum variables by reference.
Definition at line 408 of file hmc_functions.cpp.
Referenced by build_tree(), find_reasonable_stepsize(), and shmc_mcmc_routine().
void function_minimizer::likeprof_routine | ( | double | global_min | ) |
Definition at line 67 of file mod_pmin.cpp.
Referenced by computations1().
void function_minimizer::limited_memory_quasi_newton | ( | const independent_variables & | _x, |
int | m | ||
) |
Definition at line 32 of file lmnewton.cpp.
Referenced by laplace_approximation_calculator::get_uhat_lm_newton(), and minimize().
void function_minimizer::limited_memory_quasi_newton | ( | const independent_variables & | , |
int | , | ||
int | |||
) |
void function_minimizer::limited_memory_quasi_newton | ( | double & | f, |
const independent_variables & | _x, | ||
int | m, | ||
int | noprintx, | ||
int | maxfn, | ||
double | crit | ||
) |
Definition at line 231 of file lmnewton.cpp.
void function_minimizer::limited_memory_quasi_newton_block | ( | int | nvar, |
int | _crit, | ||
independent_variables & | x, | ||
const dvector & | _g, | ||
const double & | _f, | ||
int | nsteps | ||
) |
Description not yet available.
Definition at line 23 of file df1b2lmn2.cpp.
Referenced by minimize().
void function_minimizer::mcmc_computations | ( | void | ) |
Definition at line 472 of file modspmin.cpp.
Referenced by computations1().
void function_minimizer::mcmc_eval | ( | void | ) |
Description not yet available.
Definition at line 14 of file mceval.cpp.
Referenced by computations().
void function_minimizer::mcmc_routine | ( | int | nmcmc, |
int | iseed0, | ||
double | dscale, | ||
int | restart_flag | ||
) |
Monte Carlo Markov Chain minimization routine Approximate the target distribution by performing a random walk across parameter space, integrating at each step.
This routine also parses the command line arguments and performs actions for the following ones: -mcdiag Use diagonal covariance matrix with covariance = dscale. -mcrb N Modify covariance matrix to reduce high correlations. 1<=N<=9 where 1=10% and 9=90%. -mcec Read in empirical covariance matrix. This is a file with the program name prepended to extension '.ecm'. -mcpin NAME Read in starting values for MCMC from file NAME. NAME must be a valid ADMB '.par' file. -mcscale Dynamically scales covariance matrix until a reasonable acceptance rate is observed. -nosdmcmc Turn off calculation os sdreport variables during mcsave phase (saves a lot of CPU time). -mcu Use uniform multivariate distributions as bounds, if this is not specified then random normal multivariate distributions will be used. -mcnoscale Don't rescale step size based on acceptance rate. -mcr Continue MCMC from a previous -mcmc call. Uses '.mcm' file to accomplish this. -mcsave N Save parameter values from every Nth simulation instead of every single one. -mcprobe N Use probing strategy, 0.00001<N<=0.499. See the function new_probing_bounded_multivariate_normal() in prmonte.cpp for more detail. -mcgrope Deprecated, equivalent to -mcprobe
int | nmcmc The number of MCMC simulations to run. |
int | iseed0 Initial seed value for simulations. |
double | dscale Scale value used only if -mcdiag is specified. |
int | restart_flag Restart the MCMC, even if -mcr is specified. |
Definition at line 126 of file xxmcmc.cpp.
Referenced by mcmc_computations().
|
virtual |
Definition at line 49 of file xmodelm3.cpp.
Referenced by computations(), and computations1().
void function_minimizer::monte_carlo_routine | ( | void | ) |
Definition at line 35 of file mod_mc.cpp.
void function_minimizer::multint | ( | int | n, |
const dvar_vector & | a, | ||
const dvar_vector & | b, | ||
const dvar_vector & | h, | ||
double | al, | ||
int | m, | ||
const dvariable & | e, | ||
const dvariable & | aint, | ||
const int & | key, | ||
PMFVI | f | ||
) |
void function_minimizer::multint4 | ( | int | n, |
const dvar_vector & | a, | ||
const dvar_vector & | b, | ||
const dvar_vector & | h, | ||
double | al, | ||
int | m, | ||
const dvariable & | e, | ||
const dvariable & | aint1, | ||
const dvariable & | aint2, | ||
dvariable & | aint3, | ||
const dvariable & | aint4, | ||
const int & | key, | ||
PMFVIV4 | f | ||
) |
void function_minimizer::neldmead | ( | int | n, |
dvector & | _start, | ||
dvector & | _xmin, | ||
double * | ynewlo, | ||
double | reqmin, | ||
double | delta, | ||
int * | icount, | ||
int * | numres, | ||
int * | ifault | ||
) |
Nelder-Mead simplex alogrithm.
n | Integer |
_start | Vector |
_xmin | Vector |
ynewlo | Double |
reqmin | Double |
delta | Double |
icount | Integer pointer |
numres | Integer pointer |
ifault | Integer pointer |
Definition at line 150 of file amoeba.cpp.
Referenced by minimize().
void function_minimizer::normalize_posterior_distribution | ( | double | udet, |
const dvector & | siglevel, | ||
const ofstream & | ofs2, | ||
int | num_pp, | ||
const dvector & | all_values, | ||
const dmatrix & | actual_value, | ||
double | global_min, | ||
int | offset, | ||
const dmatrix & | lprof, | ||
const dmatrix & | ldet, | ||
const dmatrix & | xdist, | ||
const dmatrix & | penalties | ||
) |
Definition at line 63 of file newmodmn.cpp.
Referenced by likeprof_routine().
void function_minimizer::nuts_mcmc_routine | ( | int | nmcmc, |
int | iseed0, | ||
double | dscale, | ||
int | restart_flag | ||
) |
The function implements the MCMC algorithm NUTS, which is a self-tuning variant of Hamiltonian Monte Carlo.
This function implements the original algorithm of Hoffman and Gelman (2014), namely dynamic trajectory lengths and step size adaptation via the dual averaging algorithm. In addition, it uses a diagonal mass matrix adaptation scheme based on Stan's. Thus, a covariance matrix is not necessary (so it works on models without an invertible Hessian).
This routine also parses the command line arguments and performs actions for the following ones: -adapt_delta Target acceptance rate [0,1]. Defaults to 0.8. -max_treedepth Maximum treedepth. Defaults to 12. Caps trajectory lengths at 2^12 -hyeps The step size to use. If not specified it will be adapted (recommended). -duration The maximum runtime in minutes. -mcdiag Initial mass matrix is unit diagonal -mcpin NAME Read in MCMC starting values for active parameters only from file NAME. -warmup The number of warmup iterations during which adaptation occurs. -refresh How often to refresh the console output (defaults to 10%) -adapt_mass Do diagonal mass matrix adaptation -adapt_mass_dense Do dense mass matrix adaptation -verbose_adapt_mass Flag whether to print mass adaptation updates to console -adapt_window Mass matrix adaptation initial window size
int | nmcmc The number of MCMC simulations to run. |
int | iseed0 Initial seed value for simulations. |
double | dscale Scale value used only if -mcdiag is specified. Disabled for NUTS. |
int | restart_flag Restart the MCMC, even if -mcr is specified. Disalbed for NUTS. |
Mass matrix and inverse are now ready to be used.
Prepare initial value. Need to both back-transform, and then rotate this to be in the "x" space.
Now z0 is either the MLE or the user specified value
Start initializing the algorithm at the initial point. z0
Definition at line 51 of file nuts.cpp.
Referenced by mcmc_computations().
|
inlinevirtual |
Definition at line 1933 of file admodel.h.
Referenced by computations().
void function_minimizer::other_separable_stuff_begin | ( | void | ) |
Definition at line 732 of file xmodelm3.cpp.
void function_minimizer::other_separable_stuff_end | ( | void | ) |
Definition at line 748 of file xmodelm3.cpp.
void function_minimizer::pre_user_function | ( | void | ) |
Description not yet available.
Definition at line 370 of file df1b2lp8.cpp.
Referenced by laplace_approximation_calculator::block_diagonal_calculations(), laplace_approximation_calculator::check_hessian_type(), laplace_approximation_calculator::check_hessian_type2(), and laplace_approximation_calculator::get_newton_raphson_info_block_diagonal().
void function_minimizer::pre_userfunction | ( | void | ) |
Definition at line 586 of file model7.cpp.
Referenced by depvars_routine(), hess_routine_and_constraint(), hess_routine_noparallel(), limited_memory_quasi_newton_block(), and quasi_newton_block().
void function_minimizer::print_mcmc_progress | ( | int | is, |
int | nmcmc, | ||
int | nwarmup, | ||
int | chain, | ||
int | refresh | ||
) |
Definition at line 284 of file hmc_functions.cpp.
Referenced by nuts_mcmc_routine(), rwm_mcmc_routine(), and shmc_mcmc_routine().
void function_minimizer::print_mcmc_timing | ( | double | time_warmup, |
double | time_total, | ||
int | chain | ||
) |
Definition at line 298 of file hmc_functions.cpp.
Referenced by nuts_mcmc_routine(), rwm_mcmc_routine(), and shmc_mcmc_routine().
void function_minimizer::prof_hess_routine | ( | int | ip, |
double | new_value, | ||
double | final_weight | ||
) |
void function_minimizer::prof_minimize | ( | int | iprof, |
double | sigma, | ||
double | new_value, | ||
const double & | fprof, | ||
const int | underflow_flag, | ||
double | global_min, | ||
const double & | penalties, | ||
const double & | final_weight | ||
) |
Definition at line 221 of file newmodm2.cpp.
Referenced by likeprof_routine().
void function_minimizer::prof_minimize_re | ( | int | iprof, |
double | sigma, | ||
double | new_value, | ||
const double & | fprof, | ||
const int | underflow_flag, | ||
double | global_min, | ||
const double & | penalties, | ||
const double & | final_weight | ||
) |
Definition at line 17 of file newmodm5.cpp.
Referenced by likeprof_routine().
double function_minimizer::projected_hess_determinant | ( | const dvector & | g, |
const int | underflow_flag, | ||
const dvector & | xscale, | ||
const double & | ln_det_proj_jac | ||
) |
Definition at line 9 of file nnewmod2.cpp.
double function_minimizer::projected_hess_determinant | ( | const dvector & | g, |
const int | underflow_flag | ||
) |
Definition at line 17 of file newmodm2.cpp.
double function_minimizer::projected_hess_determinant | ( | const dmatrix & | hh, |
const dvector & | g, | ||
const int | underflow_flag | ||
) |
double function_minimizer::projected_hess_determinant | ( | const dvector & | fg, |
const dvector & | g, | ||
const int | underflow_flag, | ||
const dvector & | curvscale, | ||
const dvector & | xscale, | ||
double & | ln_det_proj_jac, | ||
const double & | tmp, | ||
const dmatrix & | hesses | ||
) |
void function_minimizer::pvm_master_function_evaluation | ( | double & | f, |
independent_variables & | x, | ||
const dvector & | g, | ||
int | nvar | ||
) |
void function_minimizer::pvm_master_function_evaluation_no_derivatives | ( | double & | f, |
independent_variables & | x, | ||
int | nvar | ||
) |
Referenced by minimize().
void function_minimizer::pvm_master_function_evaluation_profile | ( | double & | f, |
independent_variables & | x, | ||
const dvector & | g, | ||
int | nvar, | ||
int | iprof, | ||
double | weight, | ||
double | new_value | ||
) |
double function_minimizer::pvm_master_get_monte_carlo_value | ( | int | nvar, |
const dvector & | x | ||
) |
Definition at line 36 of file mod_mc2.cpp.
Referenced by monte_carlo_routine().
void function_minimizer::pvm_master_mcmc_computations | ( | void | ) |
Definition at line 598 of file modspmin.cpp.
Referenced by computations1().
void function_minimizer::pvm_master_mcmc_routine | ( | int | nmcmc, |
int | iseed0, | ||
double | dscale, | ||
int | restart_flag | ||
) |
Referenced by pvm_master_mcmc_computations().
void function_minimizer::pvm_master_prof_minimize | ( | int | iprof, |
double | sigma, | ||
double | new_value, | ||
const double & | _fprof, | ||
const int | underflow_flag, | ||
double | global_min, | ||
const double & | _penalties, | ||
const double & | _final_weight | ||
) |
Referenced by likeprof_routine().
void function_minimizer::pvm_slave_function_evaluation | ( | void | ) |
void function_minimizer::pvm_slave_function_evaluation_no_derivatives | ( | void | ) |
Referenced by minimize().
void function_minimizer::pvm_slave_function_evaluation_noder | ( | void | ) |
void function_minimizer::pvm_slave_get_monte_carlo_value | ( | int | nvar | ) |
Definition at line 59 of file mod_mc2.cpp.
Referenced by monte_carlo_routine().
void function_minimizer::pvm_slave_likeprof_routine | ( | void | ) |
Definition at line 50 of file mod_pmin.cpp.
Referenced by computations1().
void function_minimizer::pvm_slave_mcmc_computations | ( | void | ) |
Definition at line 661 of file modspmin.cpp.
void function_minimizer::pvm_slave_mcmc_routine | ( | void | ) |
Referenced by computations1(), and pvm_slave_mcmc_computations().
void function_minimizer::pvm_slave_prof_minimize | ( | int | underflow_flag | ) |
Referenced by pvm_slave_likeprof_routine().
void function_minimizer::quasi_newton_block | ( | int | nvar, |
int | _crit, | ||
independent_variables & | x, | ||
const dvector & | _g, | ||
const double & | _f | ||
) |
Description not yet available.
Definition at line 23 of file df1b2qnm.cpp.
Referenced by minimize().
void function_minimizer::quasi_newton_block_pvm_master | ( | int | nvar, |
int | _crit, | ||
independent_variables & | x, | ||
const dvector & | g, | ||
const double & | f | ||
) |
Referenced by minimize().
void function_minimizer::quasi_newton_block_pvm_master_random_effects | ( | int | nvar, |
int | _crit, | ||
independent_variables & | x, | ||
const dvector & | g, | ||
const double & | f | ||
) |
Referenced by minimize().
void function_minimizer::quasi_newton_minimizer1 | ( | int | nvar, |
double | _crit, | ||
double & | f, | ||
const independent_variables & | x, | ||
const dvector & | g | ||
) |
dvariable function_minimizer::random_effects_maximization | ( | const dvar_vector & | v | ) |
Definition at line 33 of file randeff.cpp.
void function_minimizer::read_mle_hmc | ( | int | nvar, |
dvector & | mle | ||
) |
Definition at line 432 of file hmc_functions.cpp.
Referenced by hess_step(), nuts_mcmc_routine(), and rwm_mcmc_routine().
|
inlineprotectedvirtual |
Definition at line 1915 of file admodel.h.
Referenced by minimize().
|
inlineprotected |
Definition at line 1914 of file admodel.h.
Referenced by minimize().
Definition at line 547 of file hmc_functions.cpp.
Referenced by find_reasonable_stepsize(), leapfrog(), and nuts_mcmc_routine().
Referenced by find_reasonable_stepsize(), leapfrog(), and nuts_mcmc_routine().
Definition at line 498 of file hmc_functions.cpp.
void function_minimizer::rwm_mcmc_routine | ( | int | nmcmc, |
int | iseed0, | ||
double | dscale, | ||
int | restart_flag | ||
) |
Definition at line 92 of file rwm.cpp.
Referenced by mcmc_computations().
void function_minimizer::sd_routine | ( | void | ) |
Definition at line 101 of file mod_sd.cpp.
Referenced by computations1().
void function_minimizer::set_initial_simplex | ( | const dmatrix & | p, |
const dvector & | y, | ||
int | nvar, | ||
const dvector & | x, | ||
double | delta | ||
) |
Definition at line 656 of file xmodelm3.cpp.
Referenced by minimize().
void function_minimizer::set_multinomial_weights | ( | dvector & | d | ) |
Definition at line 548 of file xmodelm3.cpp.
|
virtual |
Definition at line 451 of file modspmin.cpp.
Referenced by computations1().
|
virtual |
Definition at line 463 of file modspmin.cpp.
Referenced by computations1().
|
virtual |
Definition at line 453 of file modspmin.cpp.
Referenced by computations1().
|
inline |
void function_minimizer::sgibbs_mcmc_routine | ( | int | , |
int | , | ||
double | , | ||
int | |||
) |
void function_minimizer::shmc_mcmc_routine | ( | int | nmcmc, |
int | iseed0, | ||
double | dscale, | ||
int | restart_flag | ||
) |
Definition at line 19 of file hmc.cpp.
Referenced by mcmc_computations().
bool function_minimizer::slow_phase | ( | int | is, |
int | warmup, | ||
int | w1, | ||
int | w3 | ||
) |
Definition at line 53 of file hmc_functions.cpp.
Referenced by nuts_mcmc_routine().
void function_minimizer::sob_routine | ( | int | nmcmc, |
double | dscale, | ||
int | restart_flag | ||
) |
void function_minimizer::sobol_importance_routine | ( | int | nmcmc, |
int | iseed0, | ||
double | dscale, | ||
int | restart_flag | ||
) |
void function_minimizer::start_get_importance_sampling_comnponent | ( | void | ) |
Definition at line 777 of file xmodelm3.cpp.
Referenced by begin_funnel_stuff().
bool function_minimizer::stop_criterion | ( | int | nvar, |
dvector & | thetaminus, | ||
dvector & | thetaplus, | ||
dvector & | rminus, | ||
dvector & | rplus | ||
) |
Definition at line 214 of file hmc_functions.cpp.
Referenced by build_tree(), and nuts_mcmc_routine().
void function_minimizer::top_mcmc_routine | ( | int | , |
int | , | ||
double | , | ||
int | |||
) |
Extended trapezoid rule.
This algorithm was adapted from function trapzd in "Numerical Recipes in C", 2nd edition, Press, Teukolsky, Vetterling, Flannery, chapter 4.2
Definition at line 156 of file dfqromb.cpp.
Extended trapezoid rule.
This algorithm was adapted from function trapzd in "Numerical Recipes in C", 2nd edition, Press, Teukolsky, Vetterling, Flannery, chapter 4.2
Definition at line 211 of file dfqromb.cpp.
Extended trapezoid rule.
This algorithm was adapted from function trapzd in "Numerical Recipes in C", 2nd edition, Press, Teukolsky, Vetterling, Flannery, chapter 4.2
Definition at line 184 of file dfqromb.cpp.
dvariable function_minimizer::trapzd | ( | _func | func, |
const dvariable & | a, | ||
const dvariable & | b, | ||
int | n | ||
) |
Extended trapezoid rule.
This algorithm was adapted from function trapzd in "Numerical Recipes in C", 2nd edition, Press, Teukolsky, Vetterling, Flannery, chapter 4.2
Definition at line 240 of file dfqromb.cpp.
void function_minimizer::trust_region_update | ( | int | nvar, |
int | _crit, | ||
independent_variables & | x, | ||
const dvector & | _g, | ||
const double & | _f | ||
) |
Description not yet available.
Definition at line 20 of file f1b2trst.cpp.
Referenced by minimize().
double function_minimizer::unrestricted_hess_determinant | ( | void | ) |
Definition at line 10 of file newmodm4.cpp.
Referenced by likeprof_routine().
|
virtual |
Definition at line 26 of file model37.cpp.
Referenced by random_effects_maximization().
|
virtual |
Definition at line 18 of file model37.cpp.
Referenced by random_effects_maximization().
|
virtual |
Definition at line 43 of file xmodelm4.cpp.
Referenced by laplace_approximation_calculator::banded_calculations(), laplace_approximation_calculator::block_diagonal_calculations(), laplace_approximation_calculator::default_calculations(), laplace_approximation_calculator::default_calculations_check_derivatives(), laplace_approximation_calculator::get_complete_hessian(), get_newton_raphson_info(), laplace_approximation_calculator::get_newton_raphson_info(), laplace_approximation_calculator::get_newton_raphson_info_banded(), get_second_ders(), and pre_user_function().
|
virtual |
Definition at line 9 of file model37.cpp.
Referenced by random_effects_maximization().
|
pure virtual |
Referenced by adamoeba(), amxxx(), dep_hess_routine(), do_evaluation(), get_hybrid_monte_carlo_value(), get_monte_carlo_value(), get_particular_grad(), hess_step(), limited_memory_quasi_newton(), minimize(), neldmead(), nuts_mcmc_routine(), pre_userfunction(), prof_minimize(), prof_minimize_re(), pvm_master_get_monte_carlo_value(), pvm_slave_get_monte_carlo_value(), and set_initial_simplex().
|
friend |
|
friend |
|
private |
Definition at line 2198 of file admodel.h.
Referenced by get_hessian(), get_ln_det_value(), and hess_inv().
|
private |
Definition at line 2199 of file admodel.h.
Referenced by get_hessian_inverse(), and hess_inv().
|
private |
Definition at line 2197 of file admodel.h.
Referenced by get_ln_det_value(), and sd_routine().
|
static |
Definition at line 1853 of file admodel.h.
Referenced by laplace_approximation_calculator::banded_calculations(), laplace_approximation_calculator::do_newton_raphson_banded(), and quasi_newton_block().
|
staticprotected |
Definition at line 1915 of file admodel.h.
Referenced by limited_memory_quasi_newton(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), quasi_newton_block(), random_effects_maximization(), set_runtime_crit(), and ~function_minimizer().
double function_minimizer::crit |
Definition at line 1891 of file admodel.h.
Referenced by function_minimizer(), limited_memory_quasi_newton(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), quasi_newton_block(), and random_effects_maximization().
double function_minimizer::dfn |
Definition at line 1893 of file admodel.h.
Referenced by function_minimizer(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), and quasi_newton_block().
int function_minimizer::diagonal_metric_flag |
Definition at line 1887 of file admodel.h.
Referenced by calculate_chd_and_inverse(), nuts_mcmc_routine(), rotate_gradient(), rotate_pars(), and shmc_mcmc_routine().
|
protected |
Definition at line 1908 of file admodel.h.
Referenced by computations1(), limited_memory_quasi_newton_block(), and quasi_newton_block().
|
static |
Definition at line 1855 of file admodel.h.
Referenced by laplace_approximation_calculator::block_diagonal_calculations(), laplace_approximation_calculator::default_calculations(), laplace_approximation_calculator::default_calculations_check_derivatives(), and hess_routine_noparallel_random_effects().
|
staticprotected |
Definition at line 1921 of file admodel.h.
Referenced by computations1().
long function_minimizer::iexit |
Definition at line 1894 of file admodel.h.
Referenced by function_minimizer(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), and quasi_newton_block().
long function_minimizer::ifn |
Definition at line 1888 of file admodel.h.
Referenced by limited_memory_quasi_newton(), limited_memory_quasi_newton_block(), quasi_newton_block(), and random_effects_maximization().
long function_minimizer::ihang |
Definition at line 1896 of file admodel.h.
Referenced by function_minimizer(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), and quasi_newton_block().
long function_minimizer::ihflag |
Definition at line 1895 of file admodel.h.
Referenced by function_minimizer(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), and quasi_newton_block().
int function_minimizer::imax |
Definition at line 1892 of file admodel.h.
Referenced by function_minimizer(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), and quasi_newton_block().
|
static |
Definition at line 1860 of file admodel.h.
Referenced by laplace_approximation_calculator::get_fx_fu(), laplace_approximation_calculator::get_uhat_lm_newton2(), laplace_approximation_calculator::get_uhat_quasi_newton(), and inner_opt().
int function_minimizer::iprint |
Definition at line 1890 of file admodel.h.
Referenced by function_minimizer(), laplace_approximation_calculator::get_uhat_lm_newton(), likeprof_routine(), limited_memory_quasi_newton(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), quasi_newton_block(), and random_effects_maximization().
laplace_approximation_calculator* function_minimizer::lapprox |
Definition at line 1862 of file admodel.h.
Referenced by laplace_approximation_calculator::banded_calculations_trust_region_approach(), begin_funnel_stuff(), begin_gauss_hermite_stuff(), laplace_approximation_calculator::block_diagonal_calculations(), calculate_importance_sample(), calculate_importance_sample_block_diagonal(), calculate_importance_sample_block_diagonal_funnel(), calculate_importance_sample_block_diagonal_option2(), calculate_importance_sample_block_diagonal_option_antithetical(), calculate_importance_sample_funnel(), calculate_importance_sample_shess(), calculate_laplace_approximation(), laplace_approximation_calculator::check_hessian_type(), laplace_approximation_calculator::check_hessian_type2(), computations1(), depvars_routine(), do_gauss_hermite_block_diagonal(), do_gauss_hermite_block_diagonal_multi(), do_gauss_hermite_integration(), do_gauss_hermite_integration_multi(), end_df1b2_funnel_stuff(), end_gauss_hermite_stuff(), end_get_importance_sampling_comnponent(), evaluate_function_with_quadprior(), function_minimizer(), get_bigS(), get_function_difference(), get_hybrid_monte_carlo_value(), get_monte_carlo_value(), get_particular_grad(), hess_routine(), hess_routine_noparallel_random_effects(), hess_routine_slave_random_effects(), limited_memory_quasi_newton_block(), minimize(), other_separable_stuff_begin(), pre_user_function(), pre_userfunction(), prof_minimize_re(), quasi_newton_block(), start_get_importance_sampling_comnponent(), trust_region_update(), and ~function_minimizer().
int function_minimizer::maxfn |
Definition at line 1889 of file admodel.h.
Referenced by function_minimizer(), hess_step(), limited_memory_quasi_newton(), limited_memory_quasi_newton_block(), minimize(), prof_minimize(), prof_minimize_re(), quasi_newton_block(), and random_effects_maximization().
int function_minimizer::maxfn_flag |
Definition at line 1898 of file admodel.h.
Referenced by function_minimizer(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), and quasi_newton_block().
|
staticprotected |
Definition at line 1917 of file admodel.h.
Referenced by limited_memory_quasi_newton(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), quasi_newton_block(), random_effects_maximization(), set_runtime_maxfn(), and ~function_minimizer().
int function_minimizer::mcmc2_flag |
Definition at line 1885 of file admodel.h.
Referenced by computations1(), get_hybrid_monte_carlo_value(), get_monte_carlo_value(), hybrid_mcmc_routine(), mcmc_routine(), nuts_mcmc_routine(), rwm_mcmc_routine(), and shmc_mcmc_routine().
double function_minimizer::min_improve |
Definition at line 1900 of file admodel.h.
Referenced by function_minimizer(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), and quasi_newton_block().
dvector* function_minimizer::multinomial_weights |
Definition at line 1863 of file admodel.h.
Referenced by function_minimizer(), set_multinomial_weights(), and ~function_minimizer().
|
static |
Definition at line 1859 of file admodel.h.
Referenced by hess_inv(), and minimize().
dmatrix* function_minimizer::negdirections |
Definition at line 1858 of file admodel.h.
Referenced by function_minimizer(), hess_inv(), limited_memory_quasi_newton_block(), prof_minimize_re(), quasi_newton_block(), and ~function_minimizer().
|
static |
Definition at line 1972 of file admodel.h.
Referenced by computations(), depvars_routine(), fmm::fmin(), get_output_stream(), hess_inv(), hess_routine_noparallel(), hess_routine_noparallel_random_effects(), hess_step(), minimize(), and sd_routine().
|
private |
Definition at line 1911 of file admodel.h.
Referenced by sd_routine().
|
private |
Definition at line 1912 of file admodel.h.
Referenced by sd_routine().
|
static |
|
private |
Definition at line 1910 of file admodel.h.
Referenced by function_minimizer(), and ~function_minimizer().
|
static |
int function_minimizer::quit_flag |
Definition at line 1899 of file admodel.h.
Referenced by computations1(), function_minimizer(), limited_memory_quasi_newton_block(), minimize(), prof_minimize(), prof_minimize_re(), and quasi_newton_block().
|
static |
Definition at line 1857 of file admodel.h.
Referenced by fmm::fmin(), hess_routine(), likeprof_routine(), limited_memory_quasi_newton_block(), mcmc_routine(), minimize(), quasi_newton_block(), rwm_mcmc_routine(), and trust_region_update().
int function_minimizer::repeatminflag |
Definition at line 1884 of file admodel.h.
Referenced by computations1(), function_minimizer(), and minimize().
int function_minimizer::robust_hybrid_flag |
Definition at line 1886 of file admodel.h.
Referenced by hybrid_mcmc_routine().
int function_minimizer::scroll_flag |
Definition at line 1897 of file admodel.h.
Referenced by function_minimizer(), limited_memory_quasi_newton_block(), prof_minimize(), prof_minimize_re(), and quasi_newton_block().
int function_minimizer::spminflag |
Definition at line 1883 of file admodel.h.
Referenced by computations1(), function_minimizer(), hess_inv(), and minimize().
|
static |
Definition at line 1856 of file admodel.h.
Referenced by computations1(), and laplace_approximation_calculator::operator()().
|
staticprotected |
|
staticprotected |
Generated on Wed Sep 7 2022 00:01:33 for ADMB Documentation by 1.8.5 |