IMP logo
IMP Reference Guide  develop.36b5e40f34,2024/10/13
The Integrative Modeling Platform
IMP::npctransport::ZBiasSingletonScore Class Reference

Score that biases particles to go down the Z axis. More...

#include <IMP/npctransport/ZBiasSingletonScore.h>

+ Inheritance diagram for IMP::npctransport::ZBiasSingletonScore:

Detailed Description

Score that biases particles to go down the Z axis.

Definition at line 22 of file ZBiasSingletonScore.h.

Public Member Functions

 ZBiasSingletonScore (double k, double max_r=HALF_SQRT_MAX_DOUBLE)
 
virtual ModelObjectsTemp do_get_inputs (Model *m, const ParticleIndexes &pis) const override
 Overload this method to specify the inputs. More...
 
double evaluate_if_good_indexes (Model *m, const ParticleIndexes &p, DerivativeAccumulator *da, double max, unsigned int lower_bound, unsigned int upper_bound) const override
 
virtual double evaluate_index (Model *m, ParticleIndex pi, DerivativeAccumulator *da) const override
 Compute the score and the derivative if needed. More...
 
double evaluate_indexes (Model *m, const ParticleIndexes &p, DerivativeAccumulator *da, unsigned int lower_bound, unsigned int upper_bound) const overridefinal
 Compute the score and the derivative if needed over a set. More...
 
double evaluate_indexes_delta (Model *m, const ParticleIndexes &p, DerivativeAccumulator *da, const std::vector< unsigned > &indexes, std::vector< double > &score) const overridefinal
 Compute the change in score and the derivative if needed over a set. More...
 
double evaluate_indexes_scores (Model *m, const ParticleIndexes &p, DerivativeAccumulator *da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double > &score) const overridefinal
 Compute the score and the derivative if needed over a set. More...
 
double get_k () const
 
virtual std::string get_type_name () const override
 
virtual ::IMP::VersionInfo get_version_info () const override
 Get information about the module and version of the object. More...
 
void set_k (double k)
 
- Public Member Functions inherited from IMP::SingletonScore
 SingletonScore (std::string name="SingletonScore %1%")
 
Restraints create_current_decomposition (Model *m, ParticleIndex vt) const
 
virtual double evaluate_if_good_index (Model *m, ParticleIndex vt, DerivativeAccumulator *da, double max) const
 Compute the score and the derivative if needed, only if "good". More...
 
- Public Member Functions inherited from IMP::ParticleInputs
ModelObjectsTemp get_inputs (Model *m, const ParticleIndexes &pis) const
 Get the ModelObjects read when the given list of particles is used. More...
 
- Public Member Functions inherited from IMP::Object
virtual void clear_caches ()
 
CheckLevel get_check_level () const
 
LogLevel get_log_level () const
 
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)
 

Additional Inherited Members

- Public Types inherited from IMP::SingletonScore
typedef ParticleArgument
 
typedef ParticleIndex IndexArgument
 
typedef SingletonModifier Modifier
 
typedef ParticlePassArgument
 
typedef ParticleIndex PassIndexArgument
 
- Protected Member Functions inherited from IMP::SingletonScore
virtual Restraints do_create_current_decomposition (Model *m, ParticleIndex vt) const
 Override this to return your own decomposition. More...
 
- Protected Member Functions inherited from IMP::Object
 Object (std::string name)
 Construct an object with the given name. More...
 
virtual void do_destroy ()
 

Constructor & Destructor Documentation

IMP::npctransport::ZBiasSingletonScore::ZBiasSingletonScore ( double  k,
double  max_r = HALF_SQRT_MAX_DOUBLE 
)

Exclude particles from the range of z coordinates [bottom_..top_] with repulsive force constant k

Parameters
krepulsive force constant
max_rmaximal distance from origin on x,y plane (radius relative to pore axis) in which force is applied. if 0.0, no limitation

Definition at line 38 of file ZBiasSingletonScore.h.

Member Function Documentation

virtual ModelObjectsTemp IMP::npctransport::ZBiasSingletonScore::do_get_inputs ( Model m,
const ParticleIndexes pis 
) const
overridevirtual

Overload this method to specify the inputs.

Implements IMP::ParticleInputs.

Definition at line 81 of file ZBiasSingletonScore.h.

+ Here is the call graph for this function:

double IMP::npctransport::ZBiasSingletonScore::evaluate_if_good_indexes ( Model m,
const ParticleIndexes o,
DerivativeAccumulator da,
double  max,
unsigned int  lower_bound,
unsigned int  upper_bound 
) const
overridevirtual

Compute the score and the derivative if needed over a set, only if "good". This functions similarly to evaluate_indexes(), but may terminate the computation early if the total score is higher than max.

Returns
the score if score<= max or some arbitrary value > max otherwise.
Note
An implementation for this is provided by the IMP_SINGLETON_SCORE_METHODS() macro.

Reimplemented from IMP::SingletonScore.

Definition at line 86 of file ZBiasSingletonScore.h.

virtual double IMP::npctransport::ZBiasSingletonScore::evaluate_index ( Model m,
ParticleIndex  vt,
DerivativeAccumulator da 
) const
overridevirtual

Compute the score and the derivative if needed.

Parameters
mthe model of vt
vtthe index in m of an object of type Particle
daa DerivativeAccumulator that weights computed derivatives. If nullptr, derivatives will not be computed.

Implements IMP::SingletonScore.

Definition at line 62 of file ZBiasSingletonScore.h.

+ Here is the call graph for this function:

double IMP::npctransport::ZBiasSingletonScore::evaluate_indexes ( Model m,
const ParticleIndexes o,
DerivativeAccumulator da,
unsigned int  lower_bound,
unsigned int  upper_bound 
) const
finaloverridevirtual

Compute the score and the derivative if needed over a set.

Parameters
mthe model of o
oobjects of type Particle, specified by index
daa derivative accumulator that weights computed derivatives. If nullptr, derivatives will not be computed.
lower_boundindex of first item in o to evaluate
upper_boundindex one past last item in o to evaluate
Note
An implementation for this is provided by the IMP_SINGLETON_SCORE_METHODS() macro.

Reimplemented from IMP::SingletonScore.

Definition at line 86 of file ZBiasSingletonScore.h.

double IMP::npctransport::ZBiasSingletonScore::evaluate_indexes_delta ( Model m,
const ParticleIndexes o,
DerivativeAccumulator da,
const std::vector< unsigned > &  indexes,
std::vector< double > &  score 
) const
finaloverridevirtual

Compute the change in score and the derivative if needed over a set.

The score for each o[indexes[x]] is updated in score[indexes[x]] and the total difference between the old and new score values (over the set) is returned.

Note
An implementation for this is provided by the IMP_SINGLETON_SCORE_METHODS() macro.

Reimplemented from IMP::SingletonScore.

Definition at line 86 of file ZBiasSingletonScore.h.

double IMP::npctransport::ZBiasSingletonScore::evaluate_indexes_scores ( Model m,
const ParticleIndexes o,
DerivativeAccumulator da,
unsigned int  lower_bound,
unsigned int  upper_bound,
std::vector< double > &  score 
) const
finaloverridevirtual

Compute the score and the derivative if needed over a set.

Like regular evaluate_indexes(), but the score for each o[x] is also returned as score[x].

Note
An implementation for this is provided by the IMP_SINGLETON_SCORE_METHODS() macro.

Reimplemented from IMP::SingletonScore.

Definition at line 86 of file ZBiasSingletonScore.h.

double IMP::npctransport::ZBiasSingletonScore::get_k ( ) const

returns the force constant for pulling to high z (negative = pull to low z)

Definition at line 50 of file ZBiasSingletonScore.h.

virtual ::IMP::VersionInfo IMP::npctransport::ZBiasSingletonScore::get_version_info ( ) const
overridevirtual

Get information about the module and version of the object.

Reimplemented from IMP::Object.

Definition at line 87 of file ZBiasSingletonScore.h.

void IMP::npctransport::ZBiasSingletonScore::set_k ( double  k)

sets the force constant for pulling to high z (negative = pull to low z)

Parameters
kforce constant

Definition at line 58 of file ZBiasSingletonScore.h.


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