QCOR
Public Member Functions | Public Attributes | Protected Attributes | List of all members
qcor::ObjectiveFunction Class Reference
Inheritance diagram for qcor::ObjectiveFunction:
qcor::ObjectiveFunctionImpl< KernelArgs > qcor::RBMChemistry qcor::VQEObjective

Public Member Functions

 ObjectiveFunction (OptimizerFunctor f, const int d)
 
 ObjectiveFunction (OptimizerFunctorNoGrad f, const int d)
 
const std::string name () const override
 
const std::string description () const override
 
virtual const int dimensions () const
 
virtual double operator() (const std::vector< double > &x)
 
virtual double operator() (const std::vector< double > &x, std::vector< double > &dx)
 
virtual double operator() (xacc::internal_compiler::qreg &qreg, std::vector< double > &dx)
 
void update_observable (Operator updated_observable)
 
Operator get_observable ()
 
void update_kernel (std::shared_ptr< CompositeInstruction > updated_kernel)
 
void update_current_iterate_parameters (std::vector< double > x)
 
virtual void set_options (HeterogeneousMap &opts)
 
template<typename T >
void update_options (const std::string key, T value)
 
virtual xacc::internal_compiler::qreg get_qreg ()
 
virtual std::function< std::shared_ptr< CompositeInstruction >std::vector< double >)> get_kernel_evaluator ()
 

Public Attributes

bool gradients_computed = false
 

Protected Attributes

void * kernel_ptr
 
std::shared_ptr< CompositeInstructionkernel
 
Operator observable
 
HeterogeneousMap options
 
std::vector< double > current_iterate_parameters
 
int _dim = 0
 
std::function< double(const std::vector< double > &, std::vector< double > &)> _function
 

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