IMP logo
IMP Reference Guide  2.14.0
The Integrative Modeling Platform
PoreRadiusSingletonScore.h
Go to the documentation of this file.
1 /**
2  * \file IMP/npctransport/PoreRadiusSingletonScore.h
3  * \brief - a score on the pore radius equilibrium value
4  * of a slab particle
5  *
6  * Copyright 2007-2020 IMP Inventors. All rights reserved.
7  *
8  */
9 
10 #ifndef IMPNPCTRANSPORT_PORE_RADIUS_SINGLETON_SCORE_H
11 #define IMPNPCTRANSPORT_PORE_RADIUS_SINGLETON_SCORE_H
12 
13 #include "npctransport_config.h"
16 #include <IMP/core/Harmonic.h>
18 
19 IMPNPCTRANSPORT_BEGIN_NAMESPACE
20 
21 //! a harmonic score on the pore radius of a slab particle
22 //! /see SlabWithPore
23 class IMPNPCTRANSPORTEXPORT
25 public core::GenericAttributeSingletonScore<core::Harmonic>
26 {
27  private:
29 
30  public:
31  //! initialize a harmonic score on the pore radius key,
32  //! as defined by SlabWithPore::get_pore_radius_key()
34  P(new core::Harmonic(mean, k),
35  SlabWithPore::get_pore_radius_key())
36  { }
37 
39  const ParticleIndexes &pis) const
41 
42  //! set the coefficient of the score harmonic to k
43  void set_k(double k){
44  P::get_unary_function()->set_k(k);
45  }
46 
47 #ifdef SWIG
50 #endif
51 
52 };
53 
54 IMPNPCTRANSPORT_END_NAMESPACE
55 
56 #endif /* IMPNPCTRANSPORT_PORE_RADIUS_SINGLETON_SCORE_H */
Harmonic function.
void set_k(double k)
set the coefficient of the score harmonic to k
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition: object_macros.h:25
A more IMP-like version of the std::vector.
Definition: Vector.h:39
Class for storing model, its restraints, constraints, and particles.
Definition: Model.h:72
#define IMP_SINGLETON_SCORE_METHODS(Name)
A score based on the unmodified value of an attribute.
A harmonic score on the negative directed distance between a pair of particles. The score equals zero...
double Float
Basic floating-point value (could be float, double...)
Definition: types.h:20
A decorator for a particle that's a slab with a cylindrical pore.
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.
virtual ModelObjectsTemp do_get_inputs(Model *m, const ParticleIndexes &pis) const
Overload this method to specify the inputs.