KJB
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
kjb::Focal_scale_dynamics Class Reference

#include <dynamics_moves.h>

Inheritance diagram for kjb::Focal_scale_dynamics:
kjb::Likelihood_dynamics kjb::Abstract_dynamics

Public Member Functions

 Focal_scale_dynamics (const kjb::Vector &ideltas, const kjb::Vector &ietas, double(*icompute_likelihood)(Parametric_parapiped &pp, Perspective_camera &c), void(*get_pp_and_camera)(Parametric_parapiped &pp, Perspective_camera &c), void(*log_results)(const Parametric_parapiped &pp, const Perspective_camera &c, double ll), double ialpha=0.99, unsigned int ikick=0)
 
void run (unsigned int iterations)
 
- Public Member Functions inherited from kjb::Likelihood_dynamics
 Likelihood_dynamics (double ialpha=0.99, unsigned int ikick=0)
 
 Likelihood_dynamics (kjb::Vector iparameters, kjb::Vector ideltas, kjb::Vector ietas, double ialpha=0.99, unsigned int ikick=0)
 
 Likelihood_dynamics (const Likelihood_dynamics &src)
 
Likelihood_dynamicsoperator= (const Likelihood_dynamics &src)
 
virtual ~Likelihood_dynamics ()
 
virtual void set_index (unsigned int iindex)
 
virtual void set_index (Int_vector iindex)
 
- Public Member Functions inherited from kjb::Abstract_dynamics
 Abstract_dynamics (double ialpha=0.99, unsigned int ikick=0)
 
 Abstract_dynamics (kjb::Vector iparameters, kjb::Vector ideltas, double ialpha=0.99, unsigned int ikick=0)
 
 Abstract_dynamics (const Abstract_dynamics &src)
 
Abstract_dynamicsoperator= (const Abstract_dynamics &src)
 
virtual ~Abstract_dynamics ()
 
void set_num_parameters (unsigned int num_params)
 Sets the number of parameters we will be sampling over. More...
 

Additional Inherited Members

- Protected Member Functions inherited from kjb::Likelihood_dynamics
virtual void compute_energy_gradient ()
 
- Protected Member Functions inherited from kjb::Abstract_dynamics
void run (unsigned int iterations)
 Implements stochastic dynamics sampling on a set of parameters. This implementation follows the algorithm described in the 1993 Neal Paper, with leapfrog discretization and stochastic transitions weighted by the stochastic alpha parameter. This function MUST be kept protected so that only classes that inherit from this class can use it. Each of this derived class will have to provide its own public interface to this method. More...
 
- Protected Attributes inherited from kjb::Likelihood_dynamics
kjb::Vector etas
 The size of the step to use when computing the gradient of the energy function, in a two point estimate fashion. This varies for each parameter we are sampling over. More...
 
std::vector< boost::function1
< void, double > > 
callbacks
 We have a callback for each parameter we are sampling over. Each of them returns a void and accepts a double. Each callback should change the model according to the sampled parameter value. More...
 
std::vector< boost::function0
< double > > 
parameter_getters
 We have a callback for each parameter we are sampling over. Each of them returns a double. Each callback should get the parameter value to initialize the sampling. More...
 
- Protected Attributes inherited from kjb::Abstract_dynamics
kjb::Vector parameters
 The parameters to sample over. More...
 
kjb::Vector deltas
 The size of the step to take in the gradient direction. This step size is different for each parameter we are sampling over. More...
 
kjb::Vector gradients
 
kjb::Vector stochastic_momenta
 
kjb::Vector momenta
 
kjb::Vector temp_momenta
 
kjb::Vector stochastic_transition
 
kjb::MV_gaussian_distributionmv_gauss
 
double alpha
 
double st_alpha
 
unsigned int kick
 

Constructor & Destructor Documentation

kjb::Focal_scale_dynamics::Focal_scale_dynamics ( const kjb::Vector ideltas,
const kjb::Vector ietas,
double(*)(Parametric_parapiped &pp, Perspective_camera &c)  icompute_likelihood,
void(*)(Parametric_parapiped &pp, Perspective_camera &c)  get_pp_and_camera,
void(*)(const Parametric_parapiped &pp, const Perspective_camera &c, double ll)  log_results,
double  ialpha = 0.99,
unsigned int  ikick = 0 
)

Member Function Documentation

void kjb::Focal_scale_dynamics::run ( unsigned int  iterations)
virtual

Reimplemented from kjb::Likelihood_dynamics.


The documentation for this class was generated from the following files: