home
about
news
download
doc
source
systems
tests
bugs
contact
IMP Reference Guide
develop.4390929e3e,2024/11/11
The Integrative Modeling Platform
IMP Manual
Reference Guide
Tutorial Index
Modules
Classes
Examples
include
IMP
spb
version 20241111.develop.4390929e3e
DistanceTerminiRestraint.h
Go to the documentation of this file.
1
/**
2
* \file IMP/spb/DistanceTerminiRestraint.h
3
* \brief A distance restraint between protein termini.
4
*
5
* Copyright 2007-2022 IMP Inventors. All rights reserved.
6
*/
7
8
#ifndef IMPSPB_DISTANCE_TERMINI_RESTRAINT_H
9
#define IMPSPB_DISTANCE_TERMINI_RESTRAINT_H
10
11
#include <
IMP/Restraint.h
>
12
#include <
IMP/isd/Scale.h
>
13
#include <IMP/spb/spb_config.h>
14
15
IMPSPB_BEGIN_NAMESPACE
16
17
//! A distance restraint between protein termini.
18
/** The distance between the termini is a sampled ISD particle.
19
*/
20
class
IMPSPBEXPORT
DistanceTerminiRestraint
:
public
IMP::Restraint
{
21
IMP::Pointer<IMP::Particle>
nterm_;
22
IMP::Pointer<IMP::Particle>
cterm_;
23
double
sigma0_dist_;
24
IMP::Pointer<IMP::Particle>
reqd_dist_term_;
25
26
public
:
27
//! Restrains the distance between the termini of a protein.
28
/** The distance between termini is a sampled parameter that changes
29
from step to step.
30
*/
31
32
DistanceTerminiRestraint
(
IMP::Particle
* nterm,
IMP::Particle
* cterm,
33
IMP::Particle
* reqd_dist_term,
double
sigma0_dist);
34
35
// get the distance between termini in current model
36
double
get_model_termini_distance()
const
;
37
38
/** This macro declares the basic needed methods: evaluate and show
39
*/
40
virtual
double
unprotected_evaluate
(
IMP::DerivativeAccumulator
* accum)
const
41
override
;
42
virtual
IMP::ModelObjectsTemp
do_get_inputs
()
const override
;
43
IMP_OBJECT_METHODS
(
DistanceTerminiRestraint
);
44
45
private
:
46
};
47
48
IMPSPB_END_NAMESPACE
49
50
#endif
/* IMPSPB_DISTANCE_TERMINI_RESTRAINT_H */
IMP_OBJECT_METHODS
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition:
object_macros.h:25
IMP::Restraint::unprotected_evaluate
virtual double unprotected_evaluate(DerivativeAccumulator *da) const
Return the unweighted score for the restraint.
Scale.h
A decorator for scale parameters particles.
IMP::Vector
A more IMP-like version of the std::vector.
Definition:
Vector.h:50
IMP::Pointer< IMP::Particle >
IMP::Particle
Class to handle individual particles of a Model object.
Definition:
Particle.h:43
Restraint.h
Abstract base class for all restraints.
IMP::spb::DistanceTerminiRestraint
A distance restraint between protein termini.
Definition:
DistanceTerminiRestraint.h:20
IMP::ModelObject::do_get_inputs
virtual ModelObjectsTemp do_get_inputs() const =0
IMP::DerivativeAccumulator
Class for adding derivatives from restraints to the model.
Definition:
DerivativeAccumulator.h:24
IMP::Restraint
A restraint is a term in an IMP ScoringFunction.
Definition:
Restraint.h:56