IMP logo
IMP Reference Guide  develop.7cb8855c60,2024/10/08
The Integrative Modeling Platform
IMP::isd::UnivariateFunction Class Referenceabstract

Base class for functions of one variable. More...

#include <IMP/isd/univariate_functions.h>

+ Inheritance diagram for IMP::isd::UnivariateFunction:

Detailed Description

Base class for functions of one variable.

Definition at line 24 of file univariate_functions.h.

Public Member Functions

 UnivariateFunction (std::string str)
 
virtual void add_to_derivatives (const Floats &x, DerivativeAccumulator &accum) const =0
 update derivatives of particles More...
 
virtual void add_to_particle_derivative (unsigned particle_no, double value, DerivativeAccumulator &accum) const =0
 update derivatives of particles More...
 
virtual FloatsList get_derivative_matrix (const FloatsList &xlist, bool stupid) const =0
 for testing purposes More...
 
virtual Eigen::VectorXd get_derivative_vector (unsigned particle_no, const FloatsList &xlist) const =0
 return derivative vector More...
 
virtual ModelObjectsTemp get_inputs () const =0
 particle manipulation More...
 
virtual unsigned get_ndims_x () const =0
 returns the number of input dimensions More...
 
virtual unsigned get_ndims_y () const =0
 returns the number of output dimensions More...
 
virtual unsigned get_number_of_optimized_particles () const =0
 returns the number of particles that are optimized More...
 
virtual unsigned get_number_of_particles () const =0
 returns the number of particles that this function uses More...
 
virtual bool get_particle_is_optimized (unsigned particle_no) const =0
 returns true if the particle whose index is provided is optimized More...
 
virtual Eigen::VectorXd get_second_derivative_vector (unsigned particle_a, unsigned particle_b, const FloatsList &xlist) const =0
 return second derivative vector More...
 
virtual FloatsList get_second_derivative_vector (unsigned particle_a, unsigned particle_b, const FloatsList &xlist, bool stupid) const =0
 for testing purposes More...
 
virtual bool has_changed () const =0
 return true if internal parameters have changed. More...
 
virtual Floats operator() (const Floats &x) const =0
 evaluate the function at a certain point More...
 
virtual Eigen::VectorXd operator() (const IMP::FloatsList &xlist) const =0
 evaluate the function at a list of points More...
 
virtual FloatsList operator() (const IMP::FloatsList &xlist, bool stupid) const =0
 used for testing only More...
 
virtual void update ()=0
 update internal parameters More...
 
- Public Member Functions inherited from IMP::Object
virtual void clear_caches ()
 
CheckLevel get_check_level () const
 
LogLevel get_log_level () const
 
virtual VersionInfo get_version_info () const
 Get information about the module and version of the object. More...
 
void set_check_level (CheckLevel l)
 
void set_log_level (LogLevel l)
 Set the logging level used in this object. More...
 
void set_was_used (bool tf) const
 
void show (std::ostream &out=std::cout) const
 
const std::string & get_name () const
 
void set_name (std::string name)
 
virtual std::string get_type_name () const
 

Additional Inherited Members

- Protected Member Functions inherited from IMP::Object
 Object (std::string name)
 Construct an object with the given name. More...
 
virtual void do_destroy ()
 

Member Function Documentation

virtual void IMP::isd::UnivariateFunction::add_to_derivatives ( const Floats x,
DerivativeAccumulator accum 
) const
pure virtual

update derivatives of particles

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual void IMP::isd::UnivariateFunction::add_to_particle_derivative ( unsigned  particle_no,
double  value,
DerivativeAccumulator accum 
) const
pure virtual

update derivatives of particles

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual FloatsList IMP::isd::UnivariateFunction::get_derivative_matrix ( const FloatsList xlist,
bool  stupid 
) const
pure virtual

for testing purposes

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual Eigen::VectorXd IMP::isd::UnivariateFunction::get_derivative_vector ( unsigned  particle_no,
const FloatsList xlist 
) const
pure virtual

return derivative vector

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual ModelObjectsTemp IMP::isd::UnivariateFunction::get_inputs ( ) const
pure virtual

particle manipulation

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual unsigned IMP::isd::UnivariateFunction::get_ndims_x ( ) const
pure virtual

returns the number of input dimensions

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual unsigned IMP::isd::UnivariateFunction::get_ndims_y ( ) const
pure virtual

returns the number of output dimensions

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual unsigned IMP::isd::UnivariateFunction::get_number_of_optimized_particles ( ) const
pure virtual

returns the number of particles that are optimized

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual unsigned IMP::isd::UnivariateFunction::get_number_of_particles ( ) const
pure virtual

returns the number of particles that this function uses

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual bool IMP::isd::UnivariateFunction::get_particle_is_optimized ( unsigned  particle_no) const
pure virtual

returns true if the particle whose index is provided is optimized

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual Eigen::VectorXd IMP::isd::UnivariateFunction::get_second_derivative_vector ( unsigned  particle_a,
unsigned  particle_b,
const FloatsList xlist 
) const
pure virtual

return second derivative vector

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual FloatsList IMP::isd::UnivariateFunction::get_second_derivative_vector ( unsigned  particle_a,
unsigned  particle_b,
const FloatsList xlist,
bool  stupid 
) const
pure virtual

for testing purposes

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual bool IMP::isd::UnivariateFunction::has_changed ( ) const
pure virtual

return true if internal parameters have changed.

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual Floats IMP::isd::UnivariateFunction::operator() ( const Floats x) const
pure virtual

evaluate the function at a certain point

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual Eigen::VectorXd IMP::isd::UnivariateFunction::operator() ( const IMP::FloatsList xlist) const
pure virtual

evaluate the function at a list of points

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual FloatsList IMP::isd::UnivariateFunction::operator() ( const IMP::FloatsList xlist,
bool  stupid 
) const
pure virtual

used for testing only

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.

virtual void IMP::isd::UnivariateFunction::update ( )
pure virtual

update internal parameters

Implemented in IMP::isd::GeneralizedGuinierPorodFunction, and IMP::isd::Linear1DFunction.


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