14 from sys 
import version_info 
as _swig_python_version_info
 
   18     import builtins 
as __builtin__
 
   24         strthis = 
"proxy of " + self.this.__repr__()
 
   25     except __builtin__.Exception:
 
   27     return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
 
   30 def _swig_setattr_nondynamic_instance_variable(set):
 
   31     def set_instance_attr(self, name, value):
 
   33             set(self, name, value)
 
   34         elif name == 
"thisown":
 
   36         elif hasattr(self, name) 
and isinstance(getattr(type(self), name), property):
 
   37             set(self, name, value)
 
   39             raise AttributeError(
"You cannot add instance attributes to %s" % self)
 
   40     return set_instance_attr
 
   43 def _swig_setattr_nondynamic_class_variable(set):
 
   44     def set_class_attr(cls, name, value):
 
   45         if hasattr(cls, name) 
and not isinstance(getattr(cls, name), property):
 
   48             raise AttributeError(
"You cannot add class attributes to %s" % cls)
 
   52 def _swig_add_metaclass(metaclass):
 
   53     """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass""" 
   55         return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
 
   59 class _SwigNonDynamicMeta(type):
 
   60     """Meta class to enforce nondynamic attributes (no new attributes) for a class""" 
   61     __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)
 
   66 class IMP_ATOM_SwigPyIterator(object):
 
   67     r"""Proxy of C++ swig::IMP_ATOM_SwigPyIterator class.""" 
   69     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
   71     def __init__(self, *args, **kwargs):
 
   72         raise AttributeError(
"No constructor defined - class is abstract")
 
   74     __swig_destroy__ = _IMP_atom.delete_IMP_ATOM_SwigPyIterator
 
   77         r"""value(IMP_ATOM_SwigPyIterator self) -> PyObject *""" 
   78         return _IMP_atom.IMP_ATOM_SwigPyIterator_value(self)
 
   81         r"""incr(IMP_ATOM_SwigPyIterator self, size_t n=1) -> IMP_ATOM_SwigPyIterator""" 
   82         return _IMP_atom.IMP_ATOM_SwigPyIterator_incr(self, n)
 
   85         r"""decr(IMP_ATOM_SwigPyIterator self, size_t n=1) -> IMP_ATOM_SwigPyIterator""" 
   86         return _IMP_atom.IMP_ATOM_SwigPyIterator_decr(self, n)
 
   88     def distance(self, x):
 
   89         r"""distance(IMP_ATOM_SwigPyIterator self, IMP_ATOM_SwigPyIterator x) -> ptrdiff_t""" 
   90         return _IMP_atom.IMP_ATOM_SwigPyIterator_distance(self, x)
 
   93         r"""equal(IMP_ATOM_SwigPyIterator self, IMP_ATOM_SwigPyIterator x) -> bool""" 
   94         return _IMP_atom.IMP_ATOM_SwigPyIterator_equal(self, x)
 
   97         r"""copy(IMP_ATOM_SwigPyIterator self) -> IMP_ATOM_SwigPyIterator""" 
   98         return _IMP_atom.IMP_ATOM_SwigPyIterator_copy(self)
 
  101         r"""next(IMP_ATOM_SwigPyIterator self) -> PyObject *""" 
  102         return _IMP_atom.IMP_ATOM_SwigPyIterator_next(self)
 
  105         r"""__next__(IMP_ATOM_SwigPyIterator self) -> PyObject *""" 
  106         return _IMP_atom.IMP_ATOM_SwigPyIterator___next__(self)
 
  109         r"""previous(IMP_ATOM_SwigPyIterator self) -> PyObject *""" 
  110         return _IMP_atom.IMP_ATOM_SwigPyIterator_previous(self)
 
  112     def advance(self, n):
 
  113         r"""advance(IMP_ATOM_SwigPyIterator self, ptrdiff_t n) -> IMP_ATOM_SwigPyIterator""" 
  114         return _IMP_atom.IMP_ATOM_SwigPyIterator_advance(self, n)
 
  117         r"""__eq__(IMP_ATOM_SwigPyIterator self, IMP_ATOM_SwigPyIterator x) -> bool""" 
  118         return _IMP_atom.IMP_ATOM_SwigPyIterator___eq__(self, x)
 
  121         r"""__ne__(IMP_ATOM_SwigPyIterator self, IMP_ATOM_SwigPyIterator x) -> bool""" 
  122         return _IMP_atom.IMP_ATOM_SwigPyIterator___ne__(self, x)
 
  124     def __iadd__(self, n):
 
  125         r"""__iadd__(IMP_ATOM_SwigPyIterator self, ptrdiff_t n) -> IMP_ATOM_SwigPyIterator""" 
  126         return _IMP_atom.IMP_ATOM_SwigPyIterator___iadd__(self, n)
 
  128     def __isub__(self, n):
 
  129         r"""__isub__(IMP_ATOM_SwigPyIterator self, ptrdiff_t n) -> IMP_ATOM_SwigPyIterator""" 
  130         return _IMP_atom.IMP_ATOM_SwigPyIterator___isub__(self, n)
 
  132     def __add__(self, n):
 
  133         r"""__add__(IMP_ATOM_SwigPyIterator self, ptrdiff_t n) -> IMP_ATOM_SwigPyIterator""" 
  134         return _IMP_atom.IMP_ATOM_SwigPyIterator___add__(self, n)
 
  136     def __sub__(self, *args):
 
  138         __sub__(IMP_ATOM_SwigPyIterator self, ptrdiff_t n) -> IMP_ATOM_SwigPyIterator 
  139         __sub__(IMP_ATOM_SwigPyIterator self, IMP_ATOM_SwigPyIterator x) -> ptrdiff_t 
  141         return _IMP_atom.IMP_ATOM_SwigPyIterator___sub__(self, *args)
 
  146 _IMP_atom.IMP_ATOM_SwigPyIterator_swigregister(IMP_ATOM_SwigPyIterator)
 
  153 IMP_DEBUG = _IMP_atom.IMP_DEBUG
 
  155 IMP_RELEASE = _IMP_atom.IMP_RELEASE
 
  157 IMP_SILENT = _IMP_atom.IMP_SILENT
 
  159 IMP_PROGRESS = _IMP_atom.IMP_PROGRESS
 
  161 IMP_TERSE = _IMP_atom.IMP_TERSE
 
  163 IMP_VERBOSE = _IMP_atom.IMP_VERBOSE
 
  165 IMP_MEMORY = _IMP_atom.IMP_MEMORY
 
  167 IMP_NONE = _IMP_atom.IMP_NONE
 
  169 IMP_USAGE = _IMP_atom.IMP_USAGE
 
  171 IMP_INTERNAL = _IMP_atom.IMP_INTERNAL
 
  173 IMP_KERNEL_HAS_LOG4CXX = _IMP_atom.IMP_KERNEL_HAS_LOG4CXX
 
  175 IMP_COMPILER_HAS_CEREAL_RAW_POINTER = _IMP_atom.IMP_COMPILER_HAS_CEREAL_RAW_POINTER
 
  177 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_atom.IMP_COMPILER_HAS_DEBUG_VECTOR
 
  179 IMP_COMPILER_HAS_RANDOM_SHUFFLE = _IMP_atom.IMP_COMPILER_HAS_RANDOM_SHUFFLE
 
  181 IMP_COMPILER_HAS_THREE_WAY = _IMP_atom.IMP_COMPILER_HAS_THREE_WAY
 
  183 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_atom.IMP_KERNEL_HAS_BOOST_RANDOM
 
  185 IMP_KERNEL_HAS_NUMPY = _IMP_atom.IMP_KERNEL_HAS_NUMPY
 
  187 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_atom.IMP_KERNEL_HAS_GPERFTOOLS
 
  189 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_atom.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
 
  191 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_atom.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
 
  193 IMPKERNEL_SHOW_WARNINGS = _IMP_atom.IMPKERNEL_SHOW_WARNINGS
 
  197 class _DirectorObjects:
 
  198     """@internal Simple class to keep references to director objects 
  199        to prevent premature deletion.""" 
  202     def register(self, obj):
 
  203         """Take a reference to a director object; will only work for 
  204            refcounted C++ classes""" 
  205         if hasattr(obj, 
'get_ref_count'):
 
  206             self._objects.append(obj)
 
  208         """Only drop our reference and allow cleanup by Python if no other 
  209            Python references exist (we hold 3 references: one in self._objects, 
  210            one in x, and one in the argument list for getrefcount) *and* no 
  211            other C++ references exist (the Python object always holds one)""" 
  212         objs = [x 
for x 
in self._objects 
if sys.getrefcount(x) > 3 \
 
  213                                          or x.get_ref_count() > 1]
 
  217     def get_object_count(self):
 
  218         """Get number of director objects (useful for testing only)""" 
  219         return len(self._objects)
 
  220 _director_objects = _DirectorObjects()
 
  222 class _ostream(object):
 
  223     r"""Proxy of C++ std::ostream class.""" 
  225     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
  227     def __init__(self, *args, **kwargs):
 
  228         raise AttributeError(
"No constructor defined")
 
  229     __repr__ = _swig_repr
 
  231     def write(self, osa_buf):
 
  232         r"""write(_ostream self, char const * osa_buf)""" 
  233         return _IMP_atom._ostream_write(self, osa_buf)
 
  236 _IMP_atom._ostream_swigregister(_ostream)
 
  237 IMP_C_OPEN_BINARY = _IMP_atom.IMP_C_OPEN_BINARY
 
  240 IMP_CGAL_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_CGAL_HAS_BOOST_FILESYSTEM
 
  242 IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS
 
  244 IMP_CGAL_HAS_BOOST_RANDOM = _IMP_atom.IMP_CGAL_HAS_BOOST_RANDOM
 
  246 IMP_CGAL_HAS_BOOST_SYSTEM = _IMP_atom.IMP_CGAL_HAS_BOOST_SYSTEM
 
  248 IMP_CGAL_HAS_NUMPY = _IMP_atom.IMP_CGAL_HAS_NUMPY
 
  250 IMPCGAL_SHOW_WARNINGS = _IMP_atom.IMPCGAL_SHOW_WARNINGS
 
  253 IMP_ALGEBRA_HAS_IMP_CGAL = _IMP_atom.IMP_ALGEBRA_HAS_IMP_CGAL
 
  255 IMP_ALGEBRA_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_ALGEBRA_HAS_BOOST_FILESYSTEM
 
  257 IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS
 
  259 IMP_ALGEBRA_HAS_BOOST_RANDOM = _IMP_atom.IMP_ALGEBRA_HAS_BOOST_RANDOM
 
  261 IMP_ALGEBRA_HAS_BOOST_SYSTEM = _IMP_atom.IMP_ALGEBRA_HAS_BOOST_SYSTEM
 
  263 IMP_ALGEBRA_HAS_CGAL = _IMP_atom.IMP_ALGEBRA_HAS_CGAL
 
  265 IMP_ALGEBRA_HAS_NUMPY = _IMP_atom.IMP_ALGEBRA_HAS_NUMPY
 
  267 IMP_ALGEBRA_HAS_ANN = _IMP_atom.IMP_ALGEBRA_HAS_ANN
 
  269 IMPALGEBRA_SHOW_WARNINGS = _IMP_atom.IMPALGEBRA_SHOW_WARNINGS
 
  272 IMP_DISPLAY_HAS_IMP_CGAL = _IMP_atom.IMP_DISPLAY_HAS_IMP_CGAL
 
  274 IMP_DISPLAY_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_DISPLAY_HAS_BOOST_FILESYSTEM
 
  276 IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS
 
  278 IMP_DISPLAY_HAS_BOOST_RANDOM = _IMP_atom.IMP_DISPLAY_HAS_BOOST_RANDOM
 
  280 IMP_DISPLAY_HAS_BOOST_SYSTEM = _IMP_atom.IMP_DISPLAY_HAS_BOOST_SYSTEM
 
  282 IMP_DISPLAY_HAS_CGAL = _IMP_atom.IMP_DISPLAY_HAS_CGAL
 
  284 IMP_DISPLAY_HAS_NUMPY = _IMP_atom.IMP_DISPLAY_HAS_NUMPY
 
  286 IMPDISPLAY_SHOW_WARNINGS = _IMP_atom.IMPDISPLAY_SHOW_WARNINGS
 
  289 IMP_SCORE_FUNCTOR_HAS_IMP_CGAL = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_IMP_CGAL
 
  291 IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM
 
  293 IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS
 
  295 IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM
 
  297 IMP_SCORE_FUNCTOR_HAS_BOOST_SYSTEM = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_BOOST_SYSTEM
 
  299 IMP_SCORE_FUNCTOR_HAS_CGAL = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_CGAL
 
  301 IMP_SCORE_FUNCTOR_HAS_HDF5 = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_HDF5
 
  303 IMP_SCORE_FUNCTOR_HAS_NUMPY = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_NUMPY
 
  305 IMPSCOREFUNCTOR_SHOW_WARNINGS = _IMP_atom.IMPSCOREFUNCTOR_SHOW_WARNINGS
 
  308 IMP_CORE_HAS_IMP_CGAL = _IMP_atom.IMP_CORE_HAS_IMP_CGAL
 
  310 IMP_CORE_HAS_IMP_KERNEL = _IMP_atom.IMP_CORE_HAS_IMP_KERNEL
 
  312 IMP_CORE_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_CORE_HAS_BOOST_FILESYSTEM
 
  314 IMP_CORE_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_CORE_HAS_BOOST_PROGRAMOPTIONS
 
  316 IMP_CORE_HAS_BOOST_RANDOM = _IMP_atom.IMP_CORE_HAS_BOOST_RANDOM
 
  318 IMP_CORE_HAS_BOOST_SYSTEM = _IMP_atom.IMP_CORE_HAS_BOOST_SYSTEM
 
  320 IMP_CORE_HAS_CGAL = _IMP_atom.IMP_CORE_HAS_CGAL
 
  322 IMP_CORE_HAS_HDF5 = _IMP_atom.IMP_CORE_HAS_HDF5
 
  324 IMP_CORE_HAS_NUMPY = _IMP_atom.IMP_CORE_HAS_NUMPY
 
  326 IMPCORE_SHOW_WARNINGS = _IMP_atom.IMPCORE_SHOW_WARNINGS
 
  329 IMP_CONTAINER_HAS_IMP_ALGEBRA = _IMP_atom.IMP_CONTAINER_HAS_IMP_ALGEBRA
 
  331 IMP_CONTAINER_HAS_IMP_CGAL = _IMP_atom.IMP_CONTAINER_HAS_IMP_CGAL
 
  333 IMP_CONTAINER_HAS_IMP_DISPLAY = _IMP_atom.IMP_CONTAINER_HAS_IMP_DISPLAY
 
  335 IMP_CONTAINER_HAS_IMP_KERNEL = _IMP_atom.IMP_CONTAINER_HAS_IMP_KERNEL
 
  337 IMP_CONTAINER_HAS_IMP_SCORE_FUNCTOR = _IMP_atom.IMP_CONTAINER_HAS_IMP_SCORE_FUNCTOR
 
  339 IMP_CONTAINER_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_CONTAINER_HAS_BOOST_FILESYSTEM
 
  341 IMP_CONTAINER_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_CONTAINER_HAS_BOOST_PROGRAMOPTIONS
 
  343 IMP_CONTAINER_HAS_BOOST_RANDOM = _IMP_atom.IMP_CONTAINER_HAS_BOOST_RANDOM
 
  345 IMP_CONTAINER_HAS_BOOST_SYSTEM = _IMP_atom.IMP_CONTAINER_HAS_BOOST_SYSTEM
 
  347 IMP_CONTAINER_HAS_CGAL = _IMP_atom.IMP_CONTAINER_HAS_CGAL
 
  349 IMP_CONTAINER_HAS_HDF5 = _IMP_atom.IMP_CONTAINER_HAS_HDF5
 
  351 IMP_CONTAINER_HAS_NUMPY = _IMP_atom.IMP_CONTAINER_HAS_NUMPY
 
  353 IMP_CONTAINER_HAS_PYTHON_IHM = _IMP_atom.IMP_CONTAINER_HAS_PYTHON_IHM
 
  355 IMP_CONTAINER_HAS_GOOGLE_DENSE_HASH_MAP = _IMP_atom.IMP_CONTAINER_HAS_GOOGLE_DENSE_HASH_MAP
 
  357 IMP_CONTAINER_HAS_ROBIN_MAP = _IMP_atom.IMP_CONTAINER_HAS_ROBIN_MAP
 
  359 IMPCONTAINER_SHOW_WARNINGS = _IMP_atom.IMPCONTAINER_SHOW_WARNINGS
 
  362 IMP_ATOM_HAS_IMP_CGAL = _IMP_atom.IMP_ATOM_HAS_IMP_CGAL
 
  364 IMP_ATOM_HAS_IMP_KERNEL = _IMP_atom.IMP_ATOM_HAS_IMP_KERNEL
 
  366 IMP_ATOM_HAS_IMP_SCORE_FUNCTOR = _IMP_atom.IMP_ATOM_HAS_IMP_SCORE_FUNCTOR
 
  368 IMP_ATOM_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_ATOM_HAS_BOOST_PROGRAMOPTIONS
 
  370 IMP_ATOM_HAS_BOOST_RANDOM = _IMP_atom.IMP_ATOM_HAS_BOOST_RANDOM
 
  372 IMP_ATOM_HAS_BOOST_REGEX = _IMP_atom.IMP_ATOM_HAS_BOOST_REGEX
 
  374 IMP_ATOM_HAS_BOOST_SYSTEM = _IMP_atom.IMP_ATOM_HAS_BOOST_SYSTEM
 
  376 IMP_ATOM_HAS_CGAL = _IMP_atom.IMP_ATOM_HAS_CGAL
 
  378 IMP_ATOM_HAS_HDF5 = _IMP_atom.IMP_ATOM_HAS_HDF5
 
  380 IMP_ATOM_HAS_NUMPY = _IMP_atom.IMP_ATOM_HAS_NUMPY
 
  382 IMP_ATOM_HAS_PYTHON_IHM = _IMP_atom.IMP_ATOM_HAS_PYTHON_IHM
 
  384 IMPATOM_SHOW_WARNINGS = _IMP_atom.IMPATOM_SHOW_WARNINGS
 
  386 IMP_ATOM_TYPE_INDEX = _IMP_atom.IMP_ATOM_TYPE_INDEX
 
  388 IMP_RESIDUE_TYPE_INDEX = _IMP_atom.IMP_RESIDUE_TYPE_INDEX
 
  390 IMP_HIERARCHY_TYPE_INDEX = _IMP_atom.IMP_HIERARCHY_TYPE_INDEX
 
  392 IMP_CHAIN_TYPE_INDEX = _IMP_atom.IMP_CHAIN_TYPE_INDEX
 
  395     r"""Proxy of C++ IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex > class.""" 
  397     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
  398     __repr__ = _swig_repr
 
  401         r"""__init__(HierarchyTree self) -> HierarchyTree""" 
  402         _IMP_atom.HierarchyTree_swiginit(self, _IMP_atom.new_HierarchyTree())
 
  405         r"""get_graph(HierarchyTree self) -> IMP::atom::HierarchyTree const &""" 
  406         return _IMP_atom.HierarchyTree_get_graph(self)
 
  409         r"""get_vertices(HierarchyTree self) -> IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptors""" 
  410         return _IMP_atom.HierarchyTree_get_vertices(self)
 
  412     def get_vertex_name(self, i):
 
  413         r"""get_vertex_name(HierarchyTree self, IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptor i) -> Hierarchy""" 
  414         return _IMP_atom.HierarchyTree_get_vertex_name(self, i)
 
  416     def get_in_neighbors(self, v):
 
  417         r"""get_in_neighbors(HierarchyTree self, IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptor v) -> IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptors""" 
  418         return _IMP_atom.HierarchyTree_get_in_neighbors(self, v)
 
  420     def get_out_neighbors(self, v):
 
  421         r"""get_out_neighbors(HierarchyTree self, IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptor v) -> IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptors""" 
  422         return _IMP_atom.HierarchyTree_get_out_neighbors(self, v)
 
  425         r"""show_graphviz(HierarchyTree self, _ostream out=std::cout)""" 
  426         return _IMP_atom.HierarchyTree_show_graphviz(self, *args)
 
  428     def get_graphviz_string(self):
 
  429         r"""get_graphviz_string(HierarchyTree self) -> std::string""" 
  430         return _IMP_atom.HierarchyTree_get_graphviz_string(self)
 
  432     def add_edge(self, v0, v1):
 
  433         r"""add_edge(HierarchyTree self, IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptor v0, IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptor v1)""" 
  434         return _IMP_atom.HierarchyTree_add_edge(self, v0, v1)
 
  436     def add_vertex(self, l):
 
  437         r"""add_vertex(HierarchyTree self, Hierarchy l) -> IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptor""" 
  438         return _IMP_atom.HierarchyTree_add_vertex(self, l)
 
  440     def remove_vertex(self, l):
 
  441         r"""remove_vertex(HierarchyTree self, IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptor l)""" 
  442         return _IMP_atom.HierarchyTree_remove_vertex(self, l)
 
  443     __swig_destroy__ = _IMP_atom.delete_HierarchyTree
 
  446 _IMP_atom.HierarchyTree_swigregister(HierarchyTree)
 
  448 _value_types.append(
"HierarchyTree")
 
  452 _plural_types.append(
"PDBRecords")
 
  453 _value_types.append(
"PDBRecord")
 
  456 _object_types.append(
"LennardJonesType")
 
  459 def _object_cast_to_LennardJonesType(o):
 
  460     r"""_object_cast_to_LennardJonesType(Object o) -> LennardJonesType""" 
  461     return _IMP_atom._object_cast_to_LennardJonesType(o)
 
  463 _object_types.append(
"PDBSelector")
 
  466 def _object_cast_to_PDBSelector(o):
 
  467     r"""_object_cast_to_PDBSelector(Object o) -> PDBSelector""" 
  468     return _IMP_atom._object_cast_to_PDBSelector(o)
 
  471     return [Angle(x) 
for x 
in l]
 
  472 _plural_types.append(
"Angles")
 
  475 _value_types.append(
"Angle")
 
  479     return [Atom(x) 
for x 
in l]
 
  480 _plural_types.append(
"Atoms")
 
  483 _value_types.append(
"Atom")
 
  487     return [Bond(x) 
for x 
in l]
 
  488 _plural_types.append(
"Bonds")
 
  491 _value_types.append(
"Bond")
 
  495     return [Bonded(x) 
for x 
in l]
 
  496 _plural_types.append(
"Bondeds")
 
  499 _value_types.append(
"Bonded")
 
  502 def CHARMMAtomList(l=[]):
 
  503     return [CHARMMAtom(x) 
for x 
in l]
 
  504 _plural_types.append(
"CHARMMAtomList")
 
  507 _value_types.append(
"CHARMMAtom")
 
  511     return [Chain(x) 
for x 
in l]
 
  512 _plural_types.append(
"Chains")
 
  515 _value_types.append(
"Chain")
 
  518 def CenterOfMasses(l=[]):
 
  519     return [CenterOfMass(x) 
for x 
in l]
 
  520 _plural_types.append(
"CenterOfMasses")
 
  523 _value_types.append(
"CenterOfMass")
 
  527     return [Charged(x) 
for x 
in l]
 
  528 _plural_types.append(
"Chargeds")
 
  531 _value_types.append(
"Charged")
 
  534 def Diffusions(l=[]):
 
  535     return [Diffusion(x) 
for x 
in l]
 
  536 _plural_types.append(
"Diffusions")
 
  539 _value_types.append(
"Diffusion")
 
  542 def RigidBodyDiffusions(l=[]):
 
  543     return [RigidBodyDiffusion(x) 
for x 
in l]
 
  544 _plural_types.append(
"RigidBodyDiffusions")
 
  547 _value_types.append(
"RigidBodyDiffusion")
 
  550 def TAMDParticles(l=[]):
 
  551     return [TAMDParticle(x) 
for x 
in l]
 
  552 _plural_types.append(
"TAMDParticles")
 
  555 _value_types.append(
"TAMDParticle")
 
  558 def TAMDCentroids(l=[]):
 
  559     return [TAMDCentroid(x) 
for x 
in l]
 
  560 _plural_types.append(
"TAMDCentroids")
 
  563 _value_types.append(
"TAMDCentroid")
 
  567     return [Dihedral(x) 
for x 
in l]
 
  568 _plural_types.append(
"Dihedrals")
 
  571 _value_types.append(
"Dihedral")
 
  575     return [Domain(x) 
for x 
in l]
 
  576 _plural_types.append(
"Domains")
 
  579 _value_types.append(
"Domain")
 
  583     return [Fragment(x) 
for x 
in l]
 
  584 _plural_types.append(
"Fragments")
 
  587 _value_types.append(
"Fragment")
 
  590 def Hierarchies(l=[]):
 
  591     return [Hierarchy(x) 
for x 
in l]
 
  592 _plural_types.append(
"Hierarchies")
 
  595 _value_types.append(
"Hierarchy")
 
  598 def LennardJonesList(l=[]):
 
  599     return [LennardJones(x) 
for x 
in l]
 
  600 _plural_types.append(
"LennardJonesList")
 
  603 _value_types.append(
"LennardJones")
 
  606 def LennardJonesTypeds(l=[]):
 
  607     return [LennardJonesTyped(x) 
for x 
in l]
 
  608 _plural_types.append(
"LennardJonesTypeds")
 
  611 _value_types.append(
"LennardJonesTyped")
 
  615     return [Mass(x) 
for x 
in l]
 
  616 _plural_types.append(
"Masses")
 
  619 _value_types.append(
"Mass")
 
  622 def LinearVelocities(l=[]):
 
  623     return [LinearVelocity(x) 
for x 
in l]
 
  624 _plural_types.append(
"LinearVelocities")
 
  627 _value_types.append(
"LinearVelocity")
 
  630 def AngularVelocities(l=[]):
 
  631     return [AngularVelocity(x) 
for x 
in l]
 
  632 _plural_types.append(
"AngularVelocities")
 
  635 _value_types.append(
"AngularVelocity")
 
  639     return [Molecule(x) 
for x 
in l]
 
  640 _plural_types.append(
"Molecules")
 
  643 _value_types.append(
"Molecule")
 
  647     return [Residue(x) 
for x 
in l]
 
  648 _plural_types.append(
"Residues")
 
  651 _value_types.append(
"Residue")
 
  654 def Representations(l=[]):
 
  655     return [Representation(x) 
for x 
in l]
 
  656 _plural_types.append(
"Representations")
 
  659 _value_types.append(
"Representation")
 
  663     return [State(x) 
for x 
in l]
 
  664 _plural_types.append(
"States")
 
  667 _value_types.append(
"State")
 
  671     return [Copy(x) 
for x 
in l]
 
  672 _plural_types.append(
"Copies")
 
  675 _value_types.append(
"Copy")
 
  678 def SecondaryStructureResidues(l=[]):
 
  679     return [SecondaryStructureResidue(x) 
for x 
in l]
 
  680 _plural_types.append(
"SecondaryStructureResidues")
 
  683 _value_types.append(
"SecondaryStructureResidue")
 
  686 def StructureSources(l=[]):
 
  687     return [StructureSource(x) 
for x 
in l]
 
  688 _plural_types.append(
"StructureSources")
 
  691 _value_types.append(
"StructureSource")
 
  694 _object_types.append(
"Simulator")
 
  697 def _object_cast_to_Simulator(o):
 
  698     r"""_object_cast_to_Simulator(Object o) -> Simulator""" 
  699     return _IMP_atom._object_cast_to_Simulator(o)
 
  701 _object_types.append(
"ATOMPDBSelector")
 
  704 def _object_cast_to_ATOMPDBSelector(o):
 
  705     r"""_object_cast_to_ATOMPDBSelector(Object o) -> ATOMPDBSelector""" 
  706     return _IMP_atom._object_cast_to_ATOMPDBSelector(o)
 
  708 _object_types.append(
"AllMol2Selector")
 
  711 def _object_cast_to_AllMol2Selector(o):
 
  712     r"""_object_cast_to_AllMol2Selector(Object o) -> AllMol2Selector""" 
  713     return _IMP_atom._object_cast_to_AllMol2Selector(o)
 
  715 _object_types.append(
"AllPDBSelector")
 
  718 def _object_cast_to_AllPDBSelector(o):
 
  719     r"""_object_cast_to_AllPDBSelector(Object o) -> AllPDBSelector""" 
  720     return _IMP_atom._object_cast_to_AllPDBSelector(o)
 
  722 _object_types.append(
"AndPDBSelector")
 
  725 def _object_cast_to_AndPDBSelector(o):
 
  726     r"""_object_cast_to_AndPDBSelector(Object o) -> AndPDBSelector""" 
  727     return _IMP_atom._object_cast_to_AndPDBSelector(o)
 
  729 _object_types.append(
"XorPDBSelector")
 
  732 def _object_cast_to_XorPDBSelector(o):
 
  733     r"""_object_cast_to_XorPDBSelector(Object o) -> XorPDBSelector""" 
  734     return _IMP_atom._object_cast_to_XorPDBSelector(o)
 
  736 _object_types.append(
"ResidueTypePDBSelector")
 
  739 def _object_cast_to_ResidueTypePDBSelector(o):
 
  740     r"""_object_cast_to_ResidueTypePDBSelector(Object o) -> ResidueTypePDBSelector""" 
  741     return _IMP_atom._object_cast_to_ResidueTypePDBSelector(o)
 
  743 _object_types.append(
"AtomTypePDBSelector")
 
  746 def _object_cast_to_AtomTypePDBSelector(o):
 
  747     r"""_object_cast_to_AtomTypePDBSelector(Object o) -> AtomTypePDBSelector""" 
  748     return _IMP_atom._object_cast_to_AtomTypePDBSelector(o)
 
  750 _object_types.append(
"AngleSingletonScore")
 
  753 def _object_cast_to_AngleSingletonScore(o):
 
  754     r"""_object_cast_to_AngleSingletonScore(Object o) -> AngleSingletonScore""" 
  755     return _IMP_atom._object_cast_to_AngleSingletonScore(o)
 
  757 _object_types.append(
"BondEndpointsRefiner")
 
  760 def _object_cast_to_BondEndpointsRefiner(o):
 
  761     r"""_object_cast_to_BondEndpointsRefiner(Object o) -> BondEndpointsRefiner""" 
  762     return _IMP_atom._object_cast_to_BondEndpointsRefiner(o)
 
  764 _object_types.append(
"BondPairContainer")
 
  767 def _object_cast_to_BondPairContainer(o):
 
  768     r"""_object_cast_to_BondPairContainer(Object o) -> BondPairContainer""" 
  769     return _IMP_atom._object_cast_to_BondPairContainer(o)
 
  771 _object_types.append(
"BondSingletonScore")
 
  774 def _object_cast_to_BondSingletonScore(o):
 
  775     r"""_object_cast_to_BondSingletonScore(Object o) -> BondSingletonScore""" 
  776     return _IMP_atom._object_cast_to_BondSingletonScore(o)
 
  778 _object_types.append(
"BondedPairFilter")
 
  781 def _object_cast_to_BondedPairFilter(o):
 
  782     r"""_object_cast_to_BondedPairFilter(Object o) -> BondedPairFilter""" 
  783     return _IMP_atom._object_cast_to_BondedPairFilter(o)
 
  785 _object_types.append(
"BrownianDynamics")
 
  788 def _object_cast_to_BrownianDynamics(o):
 
  789     r"""_object_cast_to_BrownianDynamics(Object o) -> BrownianDynamics""" 
  790     return _IMP_atom._object_cast_to_BrownianDynamics(o)
 
  792 _object_types.append(
"BrownianDynamicsTAMD")
 
  795 def _object_cast_to_BrownianDynamicsTAMD(o):
 
  796     r"""_object_cast_to_BrownianDynamicsTAMD(Object o) -> BrownianDynamicsTAMD""" 
  797     return _IMP_atom._object_cast_to_BrownianDynamicsTAMD(o)
 
  799 _object_types.append(
"CAlphaPDBSelector")
 
  802 def _object_cast_to_CAlphaPDBSelector(o):
 
  803     r"""_object_cast_to_CAlphaPDBSelector(Object o) -> CAlphaPDBSelector""" 
  804     return _IMP_atom._object_cast_to_CAlphaPDBSelector(o)
 
  806 _object_types.append(
"CBetaPDBSelector")
 
  809 def _object_cast_to_CBetaPDBSelector(o):
 
  810     r"""_object_cast_to_CBetaPDBSelector(Object o) -> CBetaPDBSelector""" 
  811     return _IMP_atom._object_cast_to_CBetaPDBSelector(o)
 
  813 _object_types.append(
"BackbonePDBSelector")
 
  816 def _object_cast_to_BackbonePDBSelector(o):
 
  817     r"""_object_cast_to_BackbonePDBSelector(Object o) -> BackbonePDBSelector""" 
  818     return _IMP_atom._object_cast_to_BackbonePDBSelector(o)
 
  820 _object_types.append(
"CHARMMParameters")
 
  823 def _object_cast_to_CHARMMParameters(o):
 
  824     r"""_object_cast_to_CHARMMParameters(Object o) -> CHARMMParameters""" 
  825     return _IMP_atom._object_cast_to_CHARMMParameters(o)
 
  827 _object_types.append(
"CHARMMResidueTopology")
 
  830 def _object_cast_to_CHARMMResidueTopology(o):
 
  831     r"""_object_cast_to_CHARMMResidueTopology(Object o) -> CHARMMResidueTopology""" 
  832     return _IMP_atom._object_cast_to_CHARMMResidueTopology(o)
 
  834 _object_types.append(
"CHARMMSegmentTopology")
 
  837 def _object_cast_to_CHARMMSegmentTopology(o):
 
  838     r"""_object_cast_to_CHARMMSegmentTopology(Object o) -> CHARMMSegmentTopology""" 
  839     return _IMP_atom._object_cast_to_CHARMMSegmentTopology(o)
 
  841 _object_types.append(
"CHARMMStereochemistryRestraint")
 
  844 def _object_cast_to_CHARMMStereochemistryRestraint(o):
 
  845     r"""_object_cast_to_CHARMMStereochemistryRestraint(Object o) -> CHARMMStereochemistryRestraint""" 
  846     return _IMP_atom._object_cast_to_CHARMMStereochemistryRestraint(o)
 
  848 _object_types.append(
"CHARMMTopology")
 
  851 def _object_cast_to_CHARMMTopology(o):
 
  852     r"""_object_cast_to_CHARMMTopology(Object o) -> CHARMMTopology""" 
  853     return _IMP_atom._object_cast_to_CHARMMTopology(o)
 
  855 _object_types.append(
"CPDBSelector")
 
  858 def _object_cast_to_CPDBSelector(o):
 
  859     r"""_object_cast_to_CPDBSelector(Object o) -> CPDBSelector""" 
  860     return _IMP_atom._object_cast_to_CPDBSelector(o)
 
  862 _object_types.append(
"ChainPDBSelector")
 
  865 def _object_cast_to_ChainPDBSelector(o):
 
  866     r"""_object_cast_to_ChainPDBSelector(Object o) -> ChainPDBSelector""" 
  867     return _IMP_atom._object_cast_to_ChainPDBSelector(o)
 
  869 _object_types.append(
"CoulombPairScore")
 
  872 def _object_cast_to_CoulombPairScore(o):
 
  873     r"""_object_cast_to_CoulombPairScore(Object o) -> CoulombPairScore""" 
  874     return _IMP_atom._object_cast_to_CoulombPairScore(o)
 
  876 _object_types.append(
"CoverBond")
 
  879 def _object_cast_to_CoverBond(o):
 
  880     r"""_object_cast_to_CoverBond(Object o) -> CoverBond""" 
  881     return _IMP_atom._object_cast_to_CoverBond(o)
 
  883 _object_types.append(
"DihedralSingletonScore")
 
  886 def _object_cast_to_DihedralSingletonScore(o):
 
  887     r"""_object_cast_to_DihedralSingletonScore(Object o) -> DihedralSingletonScore""" 
  888     return _IMP_atom._object_cast_to_DihedralSingletonScore(o)
 
  890 _object_types.append(
"DopePairScore")
 
  893 def _object_cast_to_DopePairScore(o):
 
  894     r"""_object_cast_to_DopePairScore(Object o) -> DopePairScore""" 
  895     return _IMP_atom._object_cast_to_DopePairScore(o)
 
  897 _object_types.append(
"LoopStatisticalPairScore")
 
  900 def _object_cast_to_LoopStatisticalPairScore(o):
 
  901     r"""_object_cast_to_LoopStatisticalPairScore(Object o) -> LoopStatisticalPairScore""" 
  902     return _IMP_atom._object_cast_to_LoopStatisticalPairScore(o)
 
  904 _object_types.append(
"OrientedSoapPairScore")
 
  907 def _object_cast_to_OrientedSoapPairScore(o):
 
  908     r"""_object_cast_to_OrientedSoapPairScore(Object o) -> OrientedSoapPairScore""" 
  909     return _IMP_atom._object_cast_to_OrientedSoapPairScore(o)
 
  911 _object_types.append(
"EzRestraint")
 
  914 def _object_cast_to_EzRestraint(o):
 
  915     r"""_object_cast_to_EzRestraint(Object o) -> EzRestraint""" 
  916     return _IMP_atom._object_cast_to_EzRestraint(o)
 
  918 _object_types.append(
"ForceFieldParameters")
 
  921 def _object_cast_to_ForceFieldParameters(o):
 
  922     r"""_object_cast_to_ForceFieldParameters(Object o) -> ForceFieldParameters""" 
  923     return _IMP_atom._object_cast_to_ForceFieldParameters(o)
 
  925 _object_types.append(
"ForceSwitch")
 
  928 def _object_cast_to_ForceSwitch(o):
 
  929     r"""_object_cast_to_ForceSwitch(Object o) -> ForceSwitch""" 
  930     return _IMP_atom._object_cast_to_ForceSwitch(o)
 
  932 _object_types.append(
"HydrogenPDBSelector")
 
  935 def _object_cast_to_HydrogenPDBSelector(o):
 
  936     r"""_object_cast_to_HydrogenPDBSelector(Object o) -> HydrogenPDBSelector""" 
  937     return _IMP_atom._object_cast_to_HydrogenPDBSelector(o)
 
  939 _object_types.append(
"ImproperSingletonScore")
 
  942 def _object_cast_to_ImproperSingletonScore(o):
 
  943     r"""_object_cast_to_ImproperSingletonScore(Object o) -> ImproperSingletonScore""" 
  944     return _IMP_atom._object_cast_to_ImproperSingletonScore(o)
 
  946 _object_types.append(
"LennardJonesPairScore")
 
  949 def _object_cast_to_LennardJonesPairScore(o):
 
  950     r"""_object_cast_to_LennardJonesPairScore(Object o) -> LennardJonesPairScore""" 
  951     return _IMP_atom._object_cast_to_LennardJonesPairScore(o)
 
  953 _object_types.append(
"_LennardJonesTypedPairScore")
 
  956 def _object_cast_to__LennardJonesTypedPairScore(o):
 
  957     r"""_object_cast_to__LennardJonesTypedPairScore(Object o) -> _LennardJonesTypedPairScore""" 
  958     return _IMP_atom._object_cast_to__LennardJonesTypedPairScore(o)
 
  960 _object_types.append(
"_SwitchedLennardJonesTypedPairScore")
 
  963 def _object_cast_to__SwitchedLennardJonesTypedPairScore(o):
 
  964     r"""_object_cast_to__SwitchedLennardJonesTypedPairScore(Object o) -> _SwitchedLennardJonesTypedPairScore""" 
  965     return _IMP_atom._object_cast_to__SwitchedLennardJonesTypedPairScore(o)
 
  967 _object_types.append(
"Mol2Selector")
 
  970 def _object_cast_to_Mol2Selector(o):
 
  971     r"""_object_cast_to_Mol2Selector(Object o) -> Mol2Selector""" 
  972     return _IMP_atom._object_cast_to_Mol2Selector(o)
 
  974 _object_types.append(
"MolecularDynamics")
 
  977 def _object_cast_to_MolecularDynamics(o):
 
  978     r"""_object_cast_to_MolecularDynamics(Object o) -> MolecularDynamics""" 
  979     return _IMP_atom._object_cast_to_MolecularDynamics(o)
 
  981 _object_types.append(
"NPDBSelector")
 
  984 def _object_cast_to_NPDBSelector(o):
 
  985     r"""_object_cast_to_NPDBSelector(Object o) -> NPDBSelector""" 
  986     return _IMP_atom._object_cast_to_NPDBSelector(o)
 
  988 _object_types.append(
"NonAlternativePDBSelector")
 
  991 def _object_cast_to_NonAlternativePDBSelector(o):
 
  992     r"""_object_cast_to_NonAlternativePDBSelector(Object o) -> NonAlternativePDBSelector""" 
  993     return _IMP_atom._object_cast_to_NonAlternativePDBSelector(o)
 
  995 _object_types.append(
"NonHydrogenMol2Selector")
 
  998 def _object_cast_to_NonHydrogenMol2Selector(o):
 
  999     r"""_object_cast_to_NonHydrogenMol2Selector(Object o) -> NonHydrogenMol2Selector""" 
 1000     return _IMP_atom._object_cast_to_NonHydrogenMol2Selector(o)
 
 1002 _object_types.append(
"NonHydrogenPDBSelector")
 
 1005 def _object_cast_to_NonHydrogenPDBSelector(o):
 
 1006     r"""_object_cast_to_NonHydrogenPDBSelector(Object o) -> NonHydrogenPDBSelector""" 
 1007     return _IMP_atom._object_cast_to_NonHydrogenPDBSelector(o)
 
 1009 _object_types.append(
"NonWaterNonHydrogenPDBSelector")
 
 1012 def _object_cast_to_NonWaterNonHydrogenPDBSelector(o):
 
 1013     r"""_object_cast_to_NonWaterNonHydrogenPDBSelector(Object o) -> NonWaterNonHydrogenPDBSelector""" 
 1014     return _IMP_atom._object_cast_to_NonWaterNonHydrogenPDBSelector(o)
 
 1016 _object_types.append(
"NonWaterPDBSelector")
 
 1019 def _object_cast_to_NonWaterPDBSelector(o):
 
 1020     r"""_object_cast_to_NonWaterPDBSelector(Object o) -> NonWaterPDBSelector""" 
 1021     return _IMP_atom._object_cast_to_NonWaterPDBSelector(o)
 
 1023 _object_types.append(
"NotPDBSelector")
 
 1026 def _object_cast_to_NotPDBSelector(o):
 
 1027     r"""_object_cast_to_NotPDBSelector(Object o) -> NotPDBSelector""" 
 1028     return _IMP_atom._object_cast_to_NotPDBSelector(o)
 
 1030 _object_types.append(
"OrPDBSelector")
 
 1033 def _object_cast_to_OrPDBSelector(o):
 
 1034     r"""_object_cast_to_OrPDBSelector(Object o) -> OrPDBSelector""" 
 1035     return _IMP_atom._object_cast_to_OrPDBSelector(o)
 
 1037 _object_types.append(
"PPDBSelector")
 
 1040 def _object_cast_to_PPDBSelector(o):
 
 1041     r"""_object_cast_to_PPDBSelector(Object o) -> PPDBSelector""" 
 1042     return _IMP_atom._object_cast_to_PPDBSelector(o)
 
 1044 _object_types.append(
"ProteinLigandAtomPairScore")
 
 1047 def _object_cast_to_ProteinLigandAtomPairScore(o):
 
 1048     r"""_object_cast_to_ProteinLigandAtomPairScore(Object o) -> ProteinLigandAtomPairScore""" 
 1049     return _IMP_atom._object_cast_to_ProteinLigandAtomPairScore(o)
 
 1051 _object_types.append(
"ProteinLigandRestraint")
 
 1054 def _object_cast_to_ProteinLigandRestraint(o):
 
 1055     r"""_object_cast_to_ProteinLigandRestraint(Object o) -> ProteinLigandRestraint""" 
 1056     return _IMP_atom._object_cast_to_ProteinLigandRestraint(o)
 
 1058 _object_types.append(
"SameResiduePairFilter")
 
 1061 def _object_cast_to_SameResiduePairFilter(o):
 
 1062     r"""_object_cast_to_SameResiduePairFilter(Object o) -> SameResiduePairFilter""" 
 1063     return _IMP_atom._object_cast_to_SameResiduePairFilter(o)
 
 1065 _object_types.append(
"SoapPairFilter")
 
 1068 def _object_cast_to_SoapPairFilter(o):
 
 1069     r"""_object_cast_to_SoapPairFilter(Object o) -> SoapPairFilter""" 
 1070     return _IMP_atom._object_cast_to_SoapPairFilter(o)
 
 1072 _object_types.append(
"SmoothingFunction")
 
 1075 def _object_cast_to_SmoothingFunction(o):
 
 1076     r"""_object_cast_to_SmoothingFunction(Object o) -> SmoothingFunction""" 
 1077     return _IMP_atom._object_cast_to_SmoothingFunction(o)
 
 1079 _object_types.append(
"StereochemistryPairFilter")
 
 1082 def _object_cast_to_StereochemistryPairFilter(o):
 
 1083     r"""_object_cast_to_StereochemistryPairFilter(Object o) -> StereochemistryPairFilter""" 
 1084     return _IMP_atom._object_cast_to_StereochemistryPairFilter(o)
 
 1086 _object_types.append(
"VelocityScalingOptimizerState")
 
 1089 def _object_cast_to_VelocityScalingOptimizerState(o):
 
 1090     r"""_object_cast_to_VelocityScalingOptimizerState(Object o) -> VelocityScalingOptimizerState""" 
 1091     return _IMP_atom._object_cast_to_VelocityScalingOptimizerState(o)
 
 1093 _object_types.append(
"WaterPDBSelector")
 
 1096 def _object_cast_to_WaterPDBSelector(o):
 
 1097     r"""_object_cast_to_WaterPDBSelector(Object o) -> WaterPDBSelector""" 
 1098     return _IMP_atom._object_cast_to_WaterPDBSelector(o)
 
 1100 _object_types.append(
"WritePDBOptimizerState")
 
 1103 def _object_cast_to_WritePDBOptimizerState(o):
 
 1104     r"""_object_cast_to_WritePDBOptimizerState(Object o) -> WritePDBOptimizerState""" 
 1105     return _IMP_atom._object_cast_to_WritePDBOptimizerState(o)
 
 1108 _plural_types.append(
"AtomTypes")
 
 1109 _value_types.append(
"AtomType")
 
 1112 CHARMMAtomTopologies=list
 
 1113 _plural_types.append(
"CHARMMAtomTopologies")
 
 1114 _value_types.append(
"CHARMMAtomTopology")
 
 1117 CHARMMBondEndpoints=list
 
 1118 _plural_types.append(
"CHARMMBondEndpoints")
 
 1119 _value_types.append(
"CHARMMBondEndpoint")
 
 1122 CHARMMBondParametersList=list
 
 1123 _plural_types.append(
"CHARMMBondParametersList")
 
 1124 _value_types.append(
"CHARMMBondParameters")
 
 1127 CHARMMDihedralParametersList=list
 
 1128 _plural_types.append(
"CHARMMDihedralParametersList")
 
 1129 _value_types.append(
"CHARMMDihedralParameters")
 
 1132 _object_types.append(
"CHARMMIdealResidueTopology")
 
 1135 def _object_cast_to_CHARMMIdealResidueTopology(o):
 
 1136     r"""_object_cast_to_CHARMMIdealResidueTopology(Object o) -> CHARMMIdealResidueTopology""" 
 1137     return _IMP_atom._object_cast_to_CHARMMIdealResidueTopology(o)
 
 1139 CHARMMInternalCoordinates=list
 
 1140 _plural_types.append(
"CHARMMInternalCoordinates")
 
 1141 _value_types.append(
"CHARMMInternalCoordinate")
 
 1144 _object_types.append(
"CHARMMPatch")
 
 1147 def _object_cast_to_CHARMMPatch(o):
 
 1148     r"""_object_cast_to_CHARMMPatch(Object o) -> CHARMMPatch""" 
 1149     return _IMP_atom._object_cast_to_CHARMMPatch(o)
 
 1151 _object_types.append(
"CHARMMResidueTopologyBase")
 
 1154 def _object_cast_to_CHARMMResidueTopologyBase(o):
 
 1155     r"""_object_cast_to_CHARMMResidueTopologyBase(Object o) -> CHARMMResidueTopologyBase""" 
 1156     return _IMP_atom._object_cast_to_CHARMMResidueTopologyBase(o)
 
 1159 _plural_types.append(
"ResidueTypes")
 
 1160 _value_types.append(
"ResidueType")
 
 1164 _plural_types.append(
"ChainTypes")
 
 1165 _value_types.append(
"ChainType")
 
 1169 _plural_types.append(
"Selections")
 
 1170 _value_types.append(
"Selection")
 
 1173 _object_types.append(
"RemoveRigidMotionOptimizerState")
 
 1176 def _object_cast_to_RemoveRigidMotionOptimizerState(o):
 
 1177     r"""_object_cast_to_RemoveRigidMotionOptimizerState(Object o) -> RemoveRigidMotionOptimizerState""" 
 1178     return _IMP_atom._object_cast_to_RemoveRigidMotionOptimizerState(o)
 
 1180 _object_types.append(
"BerendsenThermostatOptimizerState")
 
 1183 def _object_cast_to_BerendsenThermostatOptimizerState(o):
 
 1184     r"""_object_cast_to_BerendsenThermostatOptimizerState(Object o) -> BerendsenThermostatOptimizerState""" 
 1185     return _IMP_atom._object_cast_to_BerendsenThermostatOptimizerState(o)
 
 1187 _object_types.append(
"LangevinThermostatOptimizerState")
 
 1190 def _object_cast_to_LangevinThermostatOptimizerState(o):
 
 1191     r"""_object_cast_to_LangevinThermostatOptimizerState(Object o) -> LangevinThermostatOptimizerState""" 
 1192     return _IMP_atom._object_cast_to_LangevinThermostatOptimizerState(o)
 
 1194 _object_types.append(
"SelectionGeometry")
 
 1197 def _object_cast_to_SelectionGeometry(o):
 
 1198     r"""_object_cast_to_SelectionGeometry(Object o) -> SelectionGeometry""" 
 1199     return _IMP_atom._object_cast_to_SelectionGeometry(o)
 
 1201 _object_types.append(
"HierarchyGeometry")
 
 1204 def _object_cast_to_HierarchyGeometry(o):
 
 1205     r"""_object_cast_to_HierarchyGeometry(Object o) -> HierarchyGeometry""" 
 1206     return _IMP_atom._object_cast_to_HierarchyGeometry(o)
 
 1208 _object_types.append(
"HierarchiesGeometry")
 
 1211 def _object_cast_to_HierarchiesGeometry(o):
 
 1212     r"""_object_cast_to_HierarchiesGeometry(Object o) -> HierarchiesGeometry""" 
 1213     return _IMP_atom._object_cast_to_HierarchiesGeometry(o)
 
 1215 _object_types.append(
"BondGeometry")
 
 1218 def _object_cast_to_BondGeometry(o):
 
 1219     r"""_object_cast_to_BondGeometry(Object o) -> BondGeometry""" 
 1220     return _IMP_atom._object_cast_to_BondGeometry(o)
 
 1222 _object_types.append(
"BondsGeometry")
 
 1225 def _object_cast_to_BondsGeometry(o):
 
 1226     r"""_object_cast_to_BondsGeometry(Object o) -> BondsGeometry""" 
 1227     return _IMP_atom._object_cast_to_BondsGeometry(o)
 
 1229 _object_types.append(
"CAAngleRestraint")
 
 1232 def _object_cast_to_CAAngleRestraint(o):
 
 1233     r"""_object_cast_to_CAAngleRestraint(Object o) -> CAAngleRestraint""" 
 1234     return _IMP_atom._object_cast_to_CAAngleRestraint(o)
 
 1236 _object_types.append(
"CADihedralRestraint")
 
 1239 def _object_cast_to_CADihedralRestraint(o):
 
 1240     r"""_object_cast_to_CADihedralRestraint(Object o) -> CADihedralRestraint""" 
 1241     return _IMP_atom._object_cast_to_CADihedralRestraint(o)
 
 1243 _object_types.append(
"HelixRestraint")
 
 1246 def _object_cast_to_HelixRestraint(o):
 
 1247     r"""_object_cast_to_HelixRestraint(Object o) -> HelixRestraint""" 
 1248     return _IMP_atom._object_cast_to_HelixRestraint(o)
 
 1250 CHARMMDihedrals=list
 
 1251 _plural_types.append(
"CHARMMDihedrals")
 
 1252 _value_types.append(
"CHARMMDihedral")
 
 1256 _plural_types.append(
"CHARMMBonds")
 
 1257 _value_types.append(
"CHARMMBond")
 
 1261 _plural_types.append(
"CHARMMAngles")
 
 1262 _value_types.append(
"CHARMMAngle")
 
 1265     r"""Proxy of C++ IMP::atom::Bond class.""" 
 1267     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 1269     def __init__(self, *args):
 
 1271         __init__(Bond self) -> Bond 
 1272         __init__(Bond self, Model m, ParticleIndex id) -> Bond 
 1273         __init__(Bond self, _ParticleAdaptor d) -> Bond 
 1275         _IMP_atom.Bond_swiginit(self, _IMP_atom.new_Bond(*args))
 
 1277     def show(self, *args):
 
 1278         r"""show(Bond self, _ostream out=std::cout)""" 
 1279         return _IMP_atom.Bond_show(self, *args)
 
 1282     def get_is_setup(*args):
 
 1284         get_is_setup(_ParticleAdaptor p) -> bool 
 1285         get_is_setup(Model m, ParticleIndex pi) -> bool 
 1287         return _IMP_atom.Bond_get_is_setup(*args)
 
 1288     UNKNOWN = _IMP_atom.Bond_UNKNOWN
 
 1290     NONBIOLOGICAL = _IMP_atom.Bond_NONBIOLOGICAL
 
 1292     SINGLE = _IMP_atom.Bond_SINGLE
 
 1294     DOUBLE = _IMP_atom.Bond_DOUBLE
 
 1296     TRIPLE = _IMP_atom.Bond_TRIPLE
 
 1298     HYDROGEN = _IMP_atom.Bond_HYDROGEN
 
 1300     SALT = _IMP_atom.Bond_SALT
 
 1302     PEPTIDE = _IMP_atom.Bond_PEPTIDE
 
 1304     AMIDE = _IMP_atom.Bond_AMIDE
 
 1306     AROMATIC = _IMP_atom.Bond_AROMATIC
 
 1309     def get_bonded(self, i):
 
 1310         r"""get_bonded(Bond self, unsigned int i) -> Bonded""" 
 1311         return _IMP_atom.Bond_get_bonded(self, i)
 
 1314         r"""get_type(Bond self) -> IMP::Int""" 
 1315         return _IMP_atom.Bond_get_type(self)
 
 1317     def set_type(self, t):
 
 1318         r"""set_type(Bond self, IMP::Int t)""" 
 1319         return _IMP_atom.Bond_set_type(self, t)
 
 1322         r"""get_order(Bond self) -> IMP::Int""" 
 1323         return _IMP_atom.Bond_get_order(self)
 
 1325     def set_order(self, t):
 
 1326         r"""set_order(Bond self, IMP::Int t)""" 
 1327         return _IMP_atom.Bond_set_order(self, t)
 
 1329     def get_length(self):
 
 1330         r"""get_length(Bond self) -> IMP::Float""" 
 1331         return _IMP_atom.Bond_get_length(self)
 
 1333     def set_length(self, t):
 
 1334         r"""set_length(Bond self, IMP::Float t)""" 
 1335         return _IMP_atom.Bond_set_length(self, t)
 
 1337     def get_stiffness(self):
 
 1338         r"""get_stiffness(Bond self) -> IMP::Float""" 
 1339         return _IMP_atom.Bond_get_stiffness(self)
 
 1341     def set_stiffness(self, t):
 
 1342         r"""set_stiffness(Bond self, IMP::Float t)""" 
 1343         return _IMP_atom.Bond_set_stiffness(self, t)
 
 1346     def get_length_key():
 
 1347         r"""get_length_key() -> FloatKey""" 
 1348         return _IMP_atom.Bond_get_length_key()
 
 1350     def add_attribute(self, *args):
 
 1352         add_attribute(Bond self, FloatKey k, IMP::Float v, bool opt) 
 1353         add_attribute(Bond self, FloatKey a0, IMP::Float a1) 
 1354         add_attribute(Bond self, IntKey a0, IMP::Int a1) 
 1355         add_attribute(Bond self, FloatsKey a0, IMP::Floats a1) 
 1356         add_attribute(Bond self, IntsKey a0, IMP::Ints a1) 
 1357         add_attribute(Bond self, StringKey a0, IMP::String a1) 
 1358         add_attribute(Bond self, ParticleIndexKey a0, Particle a1) 
 1359         add_attribute(Bond self, ObjectKey a0, Object a1) 
 1360         add_attribute(Bond self, SparseFloatKey a0, IMP::Float a1) 
 1361         add_attribute(Bond self, SparseIntKey a0, IMP::Int a1) 
 1362         add_attribute(Bond self, SparseStringKey a0, IMP::String a1) 
 1363         add_attribute(Bond self, SparseParticleIndexKey a0, ParticleIndex a1) 
 1365         return _IMP_atom.Bond_add_attribute(self, *args)
 
 1367     def get_value(self, *args):
 
 1369         get_value(Bond self, FloatKey a0) -> IMP::Float 
 1370         get_value(Bond self, IntKey a0) -> IMP::Int 
 1371         get_value(Bond self, FloatsKey a0) -> IMP::Floats 
 1372         get_value(Bond self, IntsKey a0) -> IMP::Ints 
 1373         get_value(Bond self, StringKey a0) -> IMP::String 
 1374         get_value(Bond self, ParticleIndexKey a0) -> Particle 
 1375         get_value(Bond self, ObjectKey a0) -> Object 
 1376         get_value(Bond self, SparseFloatKey a0) -> IMP::Float 
 1377         get_value(Bond self, SparseIntKey a0) -> IMP::Int 
 1378         get_value(Bond self, SparseStringKey a0) -> IMP::String 
 1379         get_value(Bond self, SparseParticleIndexKey a0) -> ParticleIndex 
 1381         return _IMP_atom.Bond_get_value(self, *args)
 
 1383     def set_value(self, *args):
 
 1385         set_value(Bond self, FloatKey a0, IMP::Float a1) 
 1386         set_value(Bond self, IntKey a0, IMP::Int a1) 
 1387         set_value(Bond self, FloatsKey a0, IMP::Floats a1) 
 1388         set_value(Bond self, IntsKey a0, IMP::Ints a1) 
 1389         set_value(Bond self, StringKey a0, IMP::String a1) 
 1390         set_value(Bond self, ParticleIndexKey a0, Particle a1) 
 1391         set_value(Bond self, ObjectKey a0, Object a1) 
 1392         set_value(Bond self, SparseFloatKey a0, IMP::Float a1) 
 1393         set_value(Bond self, SparseIntKey a0, IMP::Int a1) 
 1394         set_value(Bond self, SparseStringKey a0, IMP::String a1) 
 1395         set_value(Bond self, SparseParticleIndexKey a0, ParticleIndex a1) 
 1397         return _IMP_atom.Bond_set_value(self, *args)
 
 1399     def remove_attribute(self, *args):
 
 1401         remove_attribute(Bond self, FloatKey a0) 
 1402         remove_attribute(Bond self, IntKey a0) 
 1403         remove_attribute(Bond self, FloatsKey a0) 
 1404         remove_attribute(Bond self, IntsKey a0) 
 1405         remove_attribute(Bond self, StringKey a0) 
 1406         remove_attribute(Bond self, ParticleIndexKey a0) 
 1407         remove_attribute(Bond self, ObjectKey a0) 
 1408         remove_attribute(Bond self, SparseFloatKey a0) 
 1409         remove_attribute(Bond self, SparseIntKey a0) 
 1410         remove_attribute(Bond self, SparseStringKey a0) 
 1411         remove_attribute(Bond self, SparseParticleIndexKey a0) 
 1413         return _IMP_atom.Bond_remove_attribute(self, *args)
 
 1415     def has_attribute(self, *args):
 
 1417         has_attribute(Bond self, FloatKey a0) -> bool 
 1418         has_attribute(Bond self, IntKey a0) -> bool 
 1419         has_attribute(Bond self, FloatsKey a0) -> bool 
 1420         has_attribute(Bond self, IntsKey a0) -> bool 
 1421         has_attribute(Bond self, StringKey a0) -> bool 
 1422         has_attribute(Bond self, ParticleIndexKey a0) -> bool 
 1423         has_attribute(Bond self, ObjectKey a0) -> bool 
 1424         has_attribute(Bond self, SparseFloatKey a0) -> bool 
 1425         has_attribute(Bond self, SparseIntKey a0) -> bool 
 1426         has_attribute(Bond self, SparseStringKey a0) -> bool 
 1427         has_attribute(Bond self, SparseParticleIndexKey a0) -> bool 
 1429         return _IMP_atom.Bond_has_attribute(self, *args)
 
 1431     def get_derivative(self, a0):
 
 1432         r"""get_derivative(Bond self, FloatKey a0) -> double""" 
 1433         return _IMP_atom.Bond_get_derivative(self, a0)
 
 1436         r"""get_name(Bond self) -> std::string""" 
 1437         return _IMP_atom.Bond_get_name(self)
 
 1439     def clear_caches(self):
 
 1440         r"""clear_caches(Bond self)""" 
 1441         return _IMP_atom.Bond_clear_caches(self)
 
 1443     def set_name(self, a0):
 
 1444         r"""set_name(Bond self, std::string a0)""" 
 1445         return _IMP_atom.Bond_set_name(self, a0)
 
 1448         r"""set_check_level(Bond self, IMP::CheckLevel a0)""" 
 1449         return _IMP_atom.Bond_set_check_level(self, a0)
 
 1451     def add_to_derivative(self, a0, a1, a2):
 
 1452         r"""add_to_derivative(Bond self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 1453         return _IMP_atom.Bond_add_to_derivative(self, a0, a1, a2)
 
 1455     def set_is_optimized(self, a0, a1):
 
 1456         r"""set_is_optimized(Bond self, FloatKey a0, bool a1)""" 
 1457         return _IMP_atom.Bond_set_is_optimized(self, a0, a1)
 
 1459     def get_is_optimized(self, a0):
 
 1460         r"""get_is_optimized(Bond self, FloatKey a0) -> bool""" 
 1461         return _IMP_atom.Bond_get_is_optimized(self, a0)
 
 1464         r"""get_check_level(Bond self) -> IMP::CheckLevel""" 
 1465         return _IMP_atom.Bond_get_check_level(self)
 
 1467     def __eq__(self, *args):
 
 1469         __eq__(Bond self, Bond o) -> bool 
 1470         __eq__(Bond self, Particle d) -> bool 
 1472         return _IMP_atom.Bond___eq__(self, *args)
 
 1474     def __ne__(self, *args):
 
 1476         __ne__(Bond self, Bond o) -> bool 
 1477         __ne__(Bond self, Particle d) -> bool 
 1479         return _IMP_atom.Bond___ne__(self, *args)
 
 1481     def __le__(self, *args):
 
 1483         __le__(Bond self, Bond o) -> bool 
 1484         __le__(Bond self, Particle d) -> bool 
 1486         return _IMP_atom.Bond___le__(self, *args)
 
 1488     def __lt__(self, *args):
 
 1490         __lt__(Bond self, Bond o) -> bool 
 1491         __lt__(Bond self, Particle d) -> bool 
 1493         return _IMP_atom.Bond___lt__(self, *args)
 
 1495     def __ge__(self, *args):
 
 1497         __ge__(Bond self, Bond o) -> bool 
 1498         __ge__(Bond self, Particle d) -> bool 
 1500         return _IMP_atom.Bond___ge__(self, *args)
 
 1502     def __gt__(self, *args):
 
 1504         __gt__(Bond self, Bond o) -> bool 
 1505         __gt__(Bond self, Particle d) -> bool 
 1507         return _IMP_atom.Bond___gt__(self, *args)
 
 1510         r"""__hash__(Bond self) -> std::size_t""" 
 1511         return _IMP_atom.Bond___hash__(self)
 
 1514         r"""__str__(Bond self) -> std::string""" 
 1515         return _IMP_atom.Bond___str__(self)
 
 1518         r"""__repr__(Bond self) -> std::string""" 
 1519         return _IMP_atom.Bond___repr__(self)
 
 1521     def _get_as_binary(self):
 
 1522         r"""_get_as_binary(Bond self) -> PyObject *""" 
 1523         return _IMP_atom.Bond__get_as_binary(self)
 
 1525     def _set_from_binary(self, p):
 
 1526         r"""_set_from_binary(Bond self, PyObject * p)""" 
 1527         return _IMP_atom.Bond__set_from_binary(self, p)
 
 1529     def __getstate__(self):
 
 1530         p = self._get_as_binary()
 
 1531         if len(self.__dict__) > 1:
 
 1532             d = self.__dict__.copy()
 
 1537     def __setstate__(self, p):
 
 1538         if not hasattr(self, 
'this'):
 
 1540         if isinstance(p, tuple):
 
 1542             self.__dict__.update(d)
 
 1543         return self._set_from_binary(p)
 
 1545     __swig_destroy__ = _IMP_atom.delete_Bond
 
 1548 _IMP_atom.Bond_swigregister(Bond)
 
 1550     r"""Proxy of C++ IMP::atom::Bonded class.""" 
 1552     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 1554     def __init__(self, *args):
 
 1556         __init__(Bonded self) -> Bonded 
 1557         __init__(Bonded self, Model m, ParticleIndex id) -> Bonded 
 1558         __init__(Bonded self, _ParticleAdaptor d) -> Bonded 
 1560         _IMP_atom.Bonded_swiginit(self, _IMP_atom.new_Bonded(*args))
 
 1562     def show(self, *args):
 
 1563         r"""show(Bonded self, _ostream out=std::cout)""" 
 1564         return _IMP_atom.Bonded_show(self, *args)
 
 1567     def setup_particle(*args):
 
 1569         setup_particle(Model m, ParticleIndex pi) -> Bonded 
 1570         setup_particle(_ParticleAdaptor pa) -> Bonded 
 1572         return _IMP_atom.Bonded_setup_particle(*args)
 
 1575     def get_is_setup(*args):
 
 1577         get_is_setup(_ParticleAdaptor p) -> bool 
 1578         get_is_setup(Model m, ParticleIndex pi) -> bool 
 1580         return _IMP_atom.Bonded_get_is_setup(*args)
 
 1582     def get_number_of_bonds(self):
 
 1583         r"""get_number_of_bonds(Bonded self) -> unsigned int""" 
 1584         return _IMP_atom.Bonded_get_number_of_bonds(self)
 
 1586     def get_bond_indexes(self):
 
 1587         r"""get_bond_indexes(Bonded self) -> IMP::ParticleIndexes""" 
 1588         return _IMP_atom.Bonded_get_bond_indexes(self)
 
 1591         r"""get_bond(Bonded self, unsigned int i) -> Bond""" 
 1592         return _IMP_atom.Bonded_get_bond(self, i)
 
 1594     def get_bonded(self, i):
 
 1595         r"""get_bonded(Bonded self, unsigned int i) -> Bonded""" 
 1596         return _IMP_atom.Bonded_get_bonded(self, i)
 
 1598     def add_attribute(self, *args):
 
 1600         add_attribute(Bonded self, FloatKey k, IMP::Float v, bool opt) 
 1601         add_attribute(Bonded self, FloatKey a0, IMP::Float a1) 
 1602         add_attribute(Bonded self, IntKey a0, IMP::Int a1) 
 1603         add_attribute(Bonded self, FloatsKey a0, IMP::Floats a1) 
 1604         add_attribute(Bonded self, IntsKey a0, IMP::Ints a1) 
 1605         add_attribute(Bonded self, StringKey a0, IMP::String a1) 
 1606         add_attribute(Bonded self, ParticleIndexKey a0, Particle a1) 
 1607         add_attribute(Bonded self, ObjectKey a0, Object a1) 
 1608         add_attribute(Bonded self, SparseFloatKey a0, IMP::Float a1) 
 1609         add_attribute(Bonded self, SparseIntKey a0, IMP::Int a1) 
 1610         add_attribute(Bonded self, SparseStringKey a0, IMP::String a1) 
 1611         add_attribute(Bonded self, SparseParticleIndexKey a0, ParticleIndex a1) 
 1613         return _IMP_atom.Bonded_add_attribute(self, *args)
 
 1615     def get_value(self, *args):
 
 1617         get_value(Bonded self, FloatKey a0) -> IMP::Float 
 1618         get_value(Bonded self, IntKey a0) -> IMP::Int 
 1619         get_value(Bonded self, FloatsKey a0) -> IMP::Floats 
 1620         get_value(Bonded self, IntsKey a0) -> IMP::Ints 
 1621         get_value(Bonded self, StringKey a0) -> IMP::String 
 1622         get_value(Bonded self, ParticleIndexKey a0) -> Particle 
 1623         get_value(Bonded self, ObjectKey a0) -> Object 
 1624         get_value(Bonded self, SparseFloatKey a0) -> IMP::Float 
 1625         get_value(Bonded self, SparseIntKey a0) -> IMP::Int 
 1626         get_value(Bonded self, SparseStringKey a0) -> IMP::String 
 1627         get_value(Bonded self, SparseParticleIndexKey a0) -> ParticleIndex 
 1629         return _IMP_atom.Bonded_get_value(self, *args)
 
 1631     def set_value(self, *args):
 
 1633         set_value(Bonded self, FloatKey a0, IMP::Float a1) 
 1634         set_value(Bonded self, IntKey a0, IMP::Int a1) 
 1635         set_value(Bonded self, FloatsKey a0, IMP::Floats a1) 
 1636         set_value(Bonded self, IntsKey a0, IMP::Ints a1) 
 1637         set_value(Bonded self, StringKey a0, IMP::String a1) 
 1638         set_value(Bonded self, ParticleIndexKey a0, Particle a1) 
 1639         set_value(Bonded self, ObjectKey a0, Object a1) 
 1640         set_value(Bonded self, SparseFloatKey a0, IMP::Float a1) 
 1641         set_value(Bonded self, SparseIntKey a0, IMP::Int a1) 
 1642         set_value(Bonded self, SparseStringKey a0, IMP::String a1) 
 1643         set_value(Bonded self, SparseParticleIndexKey a0, ParticleIndex a1) 
 1645         return _IMP_atom.Bonded_set_value(self, *args)
 
 1647     def remove_attribute(self, *args):
 
 1649         remove_attribute(Bonded self, FloatKey a0) 
 1650         remove_attribute(Bonded self, IntKey a0) 
 1651         remove_attribute(Bonded self, FloatsKey a0) 
 1652         remove_attribute(Bonded self, IntsKey a0) 
 1653         remove_attribute(Bonded self, StringKey a0) 
 1654         remove_attribute(Bonded self, ParticleIndexKey a0) 
 1655         remove_attribute(Bonded self, ObjectKey a0) 
 1656         remove_attribute(Bonded self, SparseFloatKey a0) 
 1657         remove_attribute(Bonded self, SparseIntKey a0) 
 1658         remove_attribute(Bonded self, SparseStringKey a0) 
 1659         remove_attribute(Bonded self, SparseParticleIndexKey a0) 
 1661         return _IMP_atom.Bonded_remove_attribute(self, *args)
 
 1663     def has_attribute(self, *args):
 
 1665         has_attribute(Bonded self, FloatKey a0) -> bool 
 1666         has_attribute(Bonded self, IntKey a0) -> bool 
 1667         has_attribute(Bonded self, FloatsKey a0) -> bool 
 1668         has_attribute(Bonded self, IntsKey a0) -> bool 
 1669         has_attribute(Bonded self, StringKey a0) -> bool 
 1670         has_attribute(Bonded self, ParticleIndexKey a0) -> bool 
 1671         has_attribute(Bonded self, ObjectKey a0) -> bool 
 1672         has_attribute(Bonded self, SparseFloatKey a0) -> bool 
 1673         has_attribute(Bonded self, SparseIntKey a0) -> bool 
 1674         has_attribute(Bonded self, SparseStringKey a0) -> bool 
 1675         has_attribute(Bonded self, SparseParticleIndexKey a0) -> bool 
 1677         return _IMP_atom.Bonded_has_attribute(self, *args)
 
 1679     def get_derivative(self, a0):
 
 1680         r"""get_derivative(Bonded self, FloatKey a0) -> double""" 
 1681         return _IMP_atom.Bonded_get_derivative(self, a0)
 
 1684         r"""get_name(Bonded self) -> std::string""" 
 1685         return _IMP_atom.Bonded_get_name(self)
 
 1687     def clear_caches(self):
 
 1688         r"""clear_caches(Bonded self)""" 
 1689         return _IMP_atom.Bonded_clear_caches(self)
 
 1691     def set_name(self, a0):
 
 1692         r"""set_name(Bonded self, std::string a0)""" 
 1693         return _IMP_atom.Bonded_set_name(self, a0)
 
 1696         r"""set_check_level(Bonded self, IMP::CheckLevel a0)""" 
 1697         return _IMP_atom.Bonded_set_check_level(self, a0)
 
 1699     def add_to_derivative(self, a0, a1, a2):
 
 1700         r"""add_to_derivative(Bonded self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 1701         return _IMP_atom.Bonded_add_to_derivative(self, a0, a1, a2)
 
 1703     def set_is_optimized(self, a0, a1):
 
 1704         r"""set_is_optimized(Bonded self, FloatKey a0, bool a1)""" 
 1705         return _IMP_atom.Bonded_set_is_optimized(self, a0, a1)
 
 1707     def get_is_optimized(self, a0):
 
 1708         r"""get_is_optimized(Bonded self, FloatKey a0) -> bool""" 
 1709         return _IMP_atom.Bonded_get_is_optimized(self, a0)
 
 1712         r"""get_check_level(Bonded self) -> IMP::CheckLevel""" 
 1713         return _IMP_atom.Bonded_get_check_level(self)
 
 1715     def __eq__(self, *args):
 
 1717         __eq__(Bonded self, Bonded o) -> bool 
 1718         __eq__(Bonded self, Particle d) -> bool 
 1720         return _IMP_atom.Bonded___eq__(self, *args)
 
 1722     def __ne__(self, *args):
 
 1724         __ne__(Bonded self, Bonded o) -> bool 
 1725         __ne__(Bonded self, Particle d) -> bool 
 1727         return _IMP_atom.Bonded___ne__(self, *args)
 
 1729     def __le__(self, *args):
 
 1731         __le__(Bonded self, Bonded o) -> bool 
 1732         __le__(Bonded self, Particle d) -> bool 
 1734         return _IMP_atom.Bonded___le__(self, *args)
 
 1736     def __lt__(self, *args):
 
 1738         __lt__(Bonded self, Bonded o) -> bool 
 1739         __lt__(Bonded self, Particle d) -> bool 
 1741         return _IMP_atom.Bonded___lt__(self, *args)
 
 1743     def __ge__(self, *args):
 
 1745         __ge__(Bonded self, Bonded o) -> bool 
 1746         __ge__(Bonded self, Particle d) -> bool 
 1748         return _IMP_atom.Bonded___ge__(self, *args)
 
 1750     def __gt__(self, *args):
 
 1752         __gt__(Bonded self, Bonded o) -> bool 
 1753         __gt__(Bonded self, Particle d) -> bool 
 1755         return _IMP_atom.Bonded___gt__(self, *args)
 
 1758         r"""__hash__(Bonded self) -> std::size_t""" 
 1759         return _IMP_atom.Bonded___hash__(self)
 
 1762         r"""__str__(Bonded self) -> std::string""" 
 1763         return _IMP_atom.Bonded___str__(self)
 
 1766         r"""__repr__(Bonded self) -> std::string""" 
 1767         return _IMP_atom.Bonded___repr__(self)
 
 1769     def _get_as_binary(self):
 
 1770         r"""_get_as_binary(Bonded self) -> PyObject *""" 
 1771         return _IMP_atom.Bonded__get_as_binary(self)
 
 1773     def _set_from_binary(self, p):
 
 1774         r"""_set_from_binary(Bonded self, PyObject * p)""" 
 1775         return _IMP_atom.Bonded__set_from_binary(self, p)
 
 1777     def __getstate__(self):
 
 1778         p = self._get_as_binary()
 
 1779         if len(self.__dict__) > 1:
 
 1780             d = self.__dict__.copy()
 
 1785     def __setstate__(self, p):
 
 1786         if not hasattr(self, 
'this'):
 
 1788         if isinstance(p, tuple):
 
 1790             self.__dict__.update(d)
 
 1791         return self._set_from_binary(p)
 
 1793     __swig_destroy__ = _IMP_atom.delete_Bonded
 
 1796 _IMP_atom.Bonded_swigregister(Bonded)
 
 1799     r"""create_custom_bond(Bonded a, Bonded b, IMP::Float length, IMP::Float stiffness=-1) -> Bond""" 
 1800     return _IMP_atom.create_custom_bond(a, b, length, stiffness)
 
 1804     create_bond(Bonded a, Bonded b, IMP::Int t) -> Bond 
 1805     create_bond(Bonded a, Bonded b, Bond o) -> Bond 
 1807     return _IMP_atom.create_bond(*args)
 
 1810     r"""destroy_bond(Bond b)""" 
 1811     return _IMP_atom.destroy_bond(b)
 
 1814     r"""get_bond(Bonded a, Bonded b) -> Bond""" 
 1815     return _IMP_atom.get_bond(a, b)
 
 1817     r"""Proxy of C++ IMP::atom::BondGeometry class.""" 
 1819     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 1821     def __init__(self, *args):
 
 1823         __init__(BondGeometry self, Particle p) -> BondGeometry 
 1824         __init__(BondGeometry self, Bond d) -> BondGeometry 
 1826         _IMP_atom.BondGeometry_swiginit(self, _IMP_atom.new_BondGeometry(*args))
 
 1828     def get_version_info(self):
 
 1829         r"""get_version_info(BondGeometry self) -> VersionInfo""" 
 1830         return _IMP_atom.BondGeometry_get_version_info(self)
 
 1831     __swig_destroy__ = _IMP_atom.delete_BondGeometry
 
 1834         r"""__str__(BondGeometry self) -> std::string""" 
 1835         return _IMP_atom.BondGeometry___str__(self)
 
 1838         r"""__repr__(BondGeometry self) -> std::string""" 
 1839         return _IMP_atom.BondGeometry___repr__(self)
 
 1843        return _object_cast_to_BondGeometry(o)
 
 1847 _IMP_atom.BondGeometry_swigregister(BondGeometry)
 
 1849     r"""Proxy of C++ IMP::atom::BondsGeometry class.""" 
 1851     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 1853     def __init__(self, sc):
 
 1854         r"""__init__(BondsGeometry self, SingletonContainer sc) -> BondsGeometry""" 
 1855         _IMP_atom.BondsGeometry_swiginit(self, _IMP_atom.new_BondsGeometry(sc))
 
 1857     def get_version_info(self):
 
 1858         r"""get_version_info(BondsGeometry self) -> VersionInfo""" 
 1859         return _IMP_atom.BondsGeometry_get_version_info(self)
 
 1860     __swig_destroy__ = _IMP_atom.delete_BondsGeometry
 
 1863         r"""__str__(BondsGeometry self) -> std::string""" 
 1864         return _IMP_atom.BondsGeometry___str__(self)
 
 1867         r"""__repr__(BondsGeometry self) -> std::string""" 
 1868         return _IMP_atom.BondsGeometry___repr__(self)
 
 1872        return _object_cast_to_BondsGeometry(o)
 
 1876 _IMP_atom.BondsGeometry_swigregister(BondsGeometry)
 
 1878     r"""Proxy of C++ IMP::atom::Hierarchy class.""" 
 1880     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 1882     def __init__(self, *args):
 
 1884         __init__(Hierarchy self, Model m, ParticleIndex pi) -> Hierarchy 
 1885         __init__(Hierarchy self, _ParticleAdaptor pi) -> Hierarchy 
 1886         __init__(Hierarchy self) -> Hierarchy 
 1887         __init__(Hierarchy self, Hierarchy h) -> Hierarchy 
 1889         _IMP_atom.Hierarchy_swiginit(self, _IMP_atom.new_Hierarchy(*args))
 
 1892     def setup_particle(*args):
 
 1894         setup_particle(Particle p, _ParticleIndexesAdaptor children) -> Hierarchy 
 1895         setup_particle(Particle p) -> Hierarchy 
 1896         setup_particle(Model m, ParticleIndex pi, _ParticleIndexesAdaptor children=IMP::ParticleIndexesAdaptor()) -> Hierarchy 
 1898         return _IMP_atom.Hierarchy_setup_particle(*args)
 
 1901     def get_is_setup(*args):
 
 1903         get_is_setup(Particle p) -> bool 
 1904         get_is_setup(Model m, ParticleIndex p) -> bool 
 1906         return _IMP_atom.Hierarchy_get_is_setup(*args)
 
 1908     def get_is_valid(self, print_info=False):
 
 1909         r"""get_is_valid(Hierarchy self, bool print_info=False) -> bool""" 
 1910         return _IMP_atom.Hierarchy_get_is_valid(self, print_info)
 
 1912     def add_child(self, o):
 
 1913         r"""add_child(Hierarchy self, Hierarchy o)""" 
 1914         return _IMP_atom.Hierarchy_add_child(self, o)
 
 1916     def get_child(self, i):
 
 1917         r"""get_child(Hierarchy self, unsigned int i) -> Hierarchy""" 
 1918         return _IMP_atom.Hierarchy_get_child(self, i)
 
 1920     def get_children(self):
 
 1921         r"""get_children(Hierarchy self) -> IMP::atom::Hierarchies""" 
 1922         return _IMP_atom.Hierarchy_get_children(self)
 
 1924     def get_parent(self):
 
 1925         r"""get_parent(Hierarchy self) -> Hierarchy""" 
 1926         return _IMP_atom.Hierarchy_get_parent(self)
 
 1930         r"""get_traits() -> HierarchyTraits""" 
 1931         return _IMP_atom.Hierarchy_get_traits()
 
 1933     def show(self, *args):
 
 1935         show(Hierarchy self, _ostream out, std::string delimiter) 
 1936         show(Hierarchy self, _ostream out=std::cout) 
 1938         return _IMP_atom.Hierarchy_show(self, *args)
 
 1940     def add_attribute(self, *args):
 
 1942         add_attribute(Hierarchy self, FloatKey k, IMP::Float v, bool opt) 
 1943         add_attribute(Hierarchy self, FloatKey a0, IMP::Float a1) 
 1944         add_attribute(Hierarchy self, IntKey a0, IMP::Int a1) 
 1945         add_attribute(Hierarchy self, FloatsKey a0, IMP::Floats a1) 
 1946         add_attribute(Hierarchy self, IntsKey a0, IMP::Ints a1) 
 1947         add_attribute(Hierarchy self, StringKey a0, IMP::String a1) 
 1948         add_attribute(Hierarchy self, ParticleIndexKey a0, Particle a1) 
 1949         add_attribute(Hierarchy self, ObjectKey a0, Object a1) 
 1950         add_attribute(Hierarchy self, SparseFloatKey a0, IMP::Float a1) 
 1951         add_attribute(Hierarchy self, SparseIntKey a0, IMP::Int a1) 
 1952         add_attribute(Hierarchy self, SparseStringKey a0, IMP::String a1) 
 1953         add_attribute(Hierarchy self, SparseParticleIndexKey a0, ParticleIndex a1) 
 1955         return _IMP_atom.Hierarchy_add_attribute(self, *args)
 
 1957     def get_value(self, *args):
 
 1959         get_value(Hierarchy self, FloatKey a0) -> IMP::Float 
 1960         get_value(Hierarchy self, IntKey a0) -> IMP::Int 
 1961         get_value(Hierarchy self, FloatsKey a0) -> IMP::Floats 
 1962         get_value(Hierarchy self, IntsKey a0) -> IMP::Ints 
 1963         get_value(Hierarchy self, StringKey a0) -> IMP::String 
 1964         get_value(Hierarchy self, ParticleIndexKey a0) -> Particle 
 1965         get_value(Hierarchy self, ObjectKey a0) -> Object 
 1966         get_value(Hierarchy self, SparseFloatKey a0) -> IMP::Float 
 1967         get_value(Hierarchy self, SparseIntKey a0) -> IMP::Int 
 1968         get_value(Hierarchy self, SparseStringKey a0) -> IMP::String 
 1969         get_value(Hierarchy self, SparseParticleIndexKey a0) -> ParticleIndex 
 1971         return _IMP_atom.Hierarchy_get_value(self, *args)
 
 1973     def set_value(self, *args):
 
 1975         set_value(Hierarchy self, FloatKey a0, IMP::Float a1) 
 1976         set_value(Hierarchy self, IntKey a0, IMP::Int a1) 
 1977         set_value(Hierarchy self, FloatsKey a0, IMP::Floats a1) 
 1978         set_value(Hierarchy self, IntsKey a0, IMP::Ints a1) 
 1979         set_value(Hierarchy self, StringKey a0, IMP::String a1) 
 1980         set_value(Hierarchy self, ParticleIndexKey a0, Particle a1) 
 1981         set_value(Hierarchy self, ObjectKey a0, Object a1) 
 1982         set_value(Hierarchy self, SparseFloatKey a0, IMP::Float a1) 
 1983         set_value(Hierarchy self, SparseIntKey a0, IMP::Int a1) 
 1984         set_value(Hierarchy self, SparseStringKey a0, IMP::String a1) 
 1985         set_value(Hierarchy self, SparseParticleIndexKey a0, ParticleIndex a1) 
 1987         return _IMP_atom.Hierarchy_set_value(self, *args)
 
 1989     def remove_attribute(self, *args):
 
 1991         remove_attribute(Hierarchy self, FloatKey a0) 
 1992         remove_attribute(Hierarchy self, IntKey a0) 
 1993         remove_attribute(Hierarchy self, FloatsKey a0) 
 1994         remove_attribute(Hierarchy self, IntsKey a0) 
 1995         remove_attribute(Hierarchy self, StringKey a0) 
 1996         remove_attribute(Hierarchy self, ParticleIndexKey a0) 
 1997         remove_attribute(Hierarchy self, ObjectKey a0) 
 1998         remove_attribute(Hierarchy self, SparseFloatKey a0) 
 1999         remove_attribute(Hierarchy self, SparseIntKey a0) 
 2000         remove_attribute(Hierarchy self, SparseStringKey a0) 
 2001         remove_attribute(Hierarchy self, SparseParticleIndexKey a0) 
 2003         return _IMP_atom.Hierarchy_remove_attribute(self, *args)
 
 2005     def has_attribute(self, *args):
 
 2007         has_attribute(Hierarchy self, FloatKey a0) -> bool 
 2008         has_attribute(Hierarchy self, IntKey a0) -> bool 
 2009         has_attribute(Hierarchy self, FloatsKey a0) -> bool 
 2010         has_attribute(Hierarchy self, IntsKey a0) -> bool 
 2011         has_attribute(Hierarchy self, StringKey a0) -> bool 
 2012         has_attribute(Hierarchy self, ParticleIndexKey a0) -> bool 
 2013         has_attribute(Hierarchy self, ObjectKey a0) -> bool 
 2014         has_attribute(Hierarchy self, SparseFloatKey a0) -> bool 
 2015         has_attribute(Hierarchy self, SparseIntKey a0) -> bool 
 2016         has_attribute(Hierarchy self, SparseStringKey a0) -> bool 
 2017         has_attribute(Hierarchy self, SparseParticleIndexKey a0) -> bool 
 2019         return _IMP_atom.Hierarchy_has_attribute(self, *args)
 
 2021     def get_derivative(self, a0):
 
 2022         r"""get_derivative(Hierarchy self, FloatKey a0) -> double""" 
 2023         return _IMP_atom.Hierarchy_get_derivative(self, a0)
 
 2026         r"""get_name(Hierarchy self) -> std::string""" 
 2027         return _IMP_atom.Hierarchy_get_name(self)
 
 2029     def clear_caches(self):
 
 2030         r"""clear_caches(Hierarchy self)""" 
 2031         return _IMP_atom.Hierarchy_clear_caches(self)
 
 2033     def set_name(self, a0):
 
 2034         r"""set_name(Hierarchy self, std::string a0)""" 
 2035         return _IMP_atom.Hierarchy_set_name(self, a0)
 
 2038         r"""set_check_level(Hierarchy self, IMP::CheckLevel a0)""" 
 2039         return _IMP_atom.Hierarchy_set_check_level(self, a0)
 
 2041     def add_to_derivative(self, a0, a1, a2):
 
 2042         r"""add_to_derivative(Hierarchy self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 2043         return _IMP_atom.Hierarchy_add_to_derivative(self, a0, a1, a2)
 
 2045     def set_is_optimized(self, a0, a1):
 
 2046         r"""set_is_optimized(Hierarchy self, FloatKey a0, bool a1)""" 
 2047         return _IMP_atom.Hierarchy_set_is_optimized(self, a0, a1)
 
 2049     def get_is_optimized(self, a0):
 
 2050         r"""get_is_optimized(Hierarchy self, FloatKey a0) -> bool""" 
 2051         return _IMP_atom.Hierarchy_get_is_optimized(self, a0)
 
 2054         r"""get_check_level(Hierarchy self) -> IMP::CheckLevel""" 
 2055         return _IMP_atom.Hierarchy_get_check_level(self)
 
 2057     def __eq__(self, *args):
 
 2059         __eq__(Hierarchy self, Hierarchy o) -> bool 
 2060         __eq__(Hierarchy self, Particle d) -> bool 
 2062         return _IMP_atom.Hierarchy___eq__(self, *args)
 
 2064     def __ne__(self, *args):
 
 2066         __ne__(Hierarchy self, Hierarchy o) -> bool 
 2067         __ne__(Hierarchy self, Particle d) -> bool 
 2069         return _IMP_atom.Hierarchy___ne__(self, *args)
 
 2071     def __le__(self, *args):
 
 2073         __le__(Hierarchy self, Hierarchy o) -> bool 
 2074         __le__(Hierarchy self, Particle d) -> bool 
 2076         return _IMP_atom.Hierarchy___le__(self, *args)
 
 2078     def __lt__(self, *args):
 
 2080         __lt__(Hierarchy self, Hierarchy o) -> bool 
 2081         __lt__(Hierarchy self, Particle d) -> bool 
 2083         return _IMP_atom.Hierarchy___lt__(self, *args)
 
 2085     def __ge__(self, *args):
 
 2087         __ge__(Hierarchy self, Hierarchy o) -> bool 
 2088         __ge__(Hierarchy self, Particle d) -> bool 
 2090         return _IMP_atom.Hierarchy___ge__(self, *args)
 
 2092     def __gt__(self, *args):
 
 2094         __gt__(Hierarchy self, Hierarchy o) -> bool 
 2095         __gt__(Hierarchy self, Particle d) -> bool 
 2097         return _IMP_atom.Hierarchy___gt__(self, *args)
 
 2100         r"""__hash__(Hierarchy self) -> std::size_t""" 
 2101         return _IMP_atom.Hierarchy___hash__(self)
 
 2104         r"""__str__(Hierarchy self) -> std::string""" 
 2105         return _IMP_atom.Hierarchy___str__(self)
 
 2108         r"""__repr__(Hierarchy self) -> std::string""" 
 2109         return _IMP_atom.Hierarchy___repr__(self)
 
 2111     def _get_as_binary(self):
 
 2112         r"""_get_as_binary(Hierarchy self) -> PyObject *""" 
 2113         return _IMP_atom.Hierarchy__get_as_binary(self)
 
 2115     def _set_from_binary(self, p):
 
 2116         r"""_set_from_binary(Hierarchy self, PyObject * p)""" 
 2117         return _IMP_atom.Hierarchy__set_from_binary(self, p)
 
 2119     def __getstate__(self):
 
 2120         p = self._get_as_binary()
 
 2121         if len(self.__dict__) > 1:
 
 2122             d = self.__dict__.copy()
 
 2127     def __setstate__(self, p):
 
 2128         if not hasattr(self, 
'this'):
 
 2130         if isinstance(p, tuple):
 
 2132             self.__dict__.update(d)
 
 2133         return self._set_from_binary(p)
 
 2135     __swig_destroy__ = _IMP_atom.delete_Hierarchy
 
 2138 _IMP_atom.Hierarchy_swigregister(Hierarchy)
 
 2139 ATOM_TYPE = _IMP_atom.ATOM_TYPE
 
 2141 RESIDUE_TYPE = _IMP_atom.RESIDUE_TYPE
 
 2143 CHAIN_TYPE = _IMP_atom.CHAIN_TYPE
 
 2145 MOLECULE_TYPE = _IMP_atom.MOLECULE_TYPE
 
 2147 DOMAIN_TYPE = _IMP_atom.DOMAIN_TYPE
 
 2149 FRAGMENT_TYPE = _IMP_atom.FRAGMENT_TYPE
 
 2151 XYZ_TYPE = _IMP_atom.XYZ_TYPE
 
 2153 XYZR_TYPE = _IMP_atom.XYZR_TYPE
 
 2155 MASS_TYPE = _IMP_atom.MASS_TYPE
 
 2157 STATE_TYPE = _IMP_atom.STATE_TYPE
 
 2160 def get_by_type(mhd, t):
 
 2161     r"""get_by_type(Hierarchy mhd, IMP::atom::GetByType t) -> IMP::atom::Hierarchies""" 
 2162     return _IMP_atom.get_by_type(mhd, t)
 
 2164 def create_fragment(ps):
 
 2165     r"""create_fragment(IMP::atom::Hierarchies const & ps) -> Hierarchy""" 
 2166     return _IMP_atom.create_fragment(ps)
 
 2168 def get_internal_bonds(mhd, with_representations=False):
 
 2169     r"""get_internal_bonds(Hierarchy mhd, bool with_representations=False) -> IMP::atom::Bonds""" 
 2170     return _IMP_atom.get_internal_bonds(mhd, with_representations)
 
 2173     r"""get_root(Hierarchy h) -> Hierarchy""" 
 2174     return _IMP_atom.get_root(h)
 
 2177     r"""show(Hierarchy h, _ostream out=std::cout)""" 
 2178     return _IMP_atom.show(*args)
 
 2182     create_rigid_body(IMP::atom::Hierarchies const & h, std::string name=std::string("created rigid body")) -> RigidBody 
 2183     create_rigid_body(Hierarchy h) -> RigidBody 
 2185     return _IMP_atom.create_rigid_body(*args)
 
 2188     r"""create_compatible_rigid_body(Hierarchy h, Hierarchy reference) -> RigidBody""" 
 2189     return _IMP_atom.create_compatible_rigid_body(h, reference)
 
 2191 def get_is_heterogen(h):
 
 2192     r"""get_is_heterogen(Hierarchy h) -> bool""" 
 2193     return _IMP_atom.get_is_heterogen(h)
 
 2196     r"""create_clone(Hierarchy d) -> Hierarchy""" 
 2197     return _IMP_atom.create_clone(d)
 
 2199 def create_clone_one(d):
 
 2200     r"""create_clone_one(Hierarchy d) -> Hierarchy""" 
 2201     return _IMP_atom.create_clone_one(d)
 
 2204     r"""destroy(Hierarchy d)""" 
 2205     return _IMP_atom.destroy(d)
 
 2207 def get_bounding_box(h):
 
 2208     r"""get_bounding_box(Hierarchy h) -> BoundingBox3D""" 
 2209     return _IMP_atom.get_bounding_box(h)
 
 2211 def get_bounding_sphere(h):
 
 2212     r"""get_bounding_sphere(Hierarchy h) -> Sphere3D""" 
 2213     return _IMP_atom.get_bounding_sphere(h)
 
 2215     r"""Proxy of C++ IMP::atom::Angle class.""" 
 2217     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 2219     def __init__(self, *args):
 
 2221         __init__(Angle self) -> Angle 
 2222         __init__(Angle self, Model m, ParticleIndex id) -> Angle 
 2223         __init__(Angle self, _ParticleAdaptor d) -> Angle 
 2225         _IMP_atom.Angle_swiginit(self, _IMP_atom.new_Angle(*args))
 
 2227     def show(self, *args):
 
 2228         r"""show(Angle self, _ostream out=std::cout)""" 
 2229         return _IMP_atom.Angle_show(self, *args)
 
 2232     def setup_particle(*args):
 
 2234         setup_particle(Model m, ParticleIndex pi, XYZ a, XYZ b, XYZ c) -> Angle 
 2235         setup_particle(_ParticleAdaptor pa, XYZ a, XYZ b, XYZ c) -> Angle 
 2237         return _IMP_atom.Angle_setup_particle(*args)
 
 2240     def get_is_setup(*args):
 
 2242         get_is_setup(_ParticleAdaptor p) -> bool 
 2243         get_is_setup(Model m, ParticleIndex pi) -> bool 
 2245         return _IMP_atom.Angle_get_is_setup(*args)
 
 2247     def get_particle(self, *args):
 
 2249         get_particle(Angle self) -> Particle 
 2250         get_particle(Angle self, unsigned int i) -> Particle 
 2252         return _IMP_atom.Angle_get_particle(self, *args)
 
 2254     def get_ideal(self):
 
 2255         r"""get_ideal(Angle self) -> IMP::Float""" 
 2256         return _IMP_atom.Angle_get_ideal(self)
 
 2258     def set_ideal(self, t):
 
 2259         r"""set_ideal(Angle self, IMP::Float t)""" 
 2260         return _IMP_atom.Angle_set_ideal(self, t)
 
 2262     def get_stiffness(self):
 
 2263         r"""get_stiffness(Angle self) -> IMP::Float""" 
 2264         return _IMP_atom.Angle_get_stiffness(self)
 
 2266     def set_stiffness(self, t):
 
 2267         r"""set_stiffness(Angle self, IMP::Float t)""" 
 2268         return _IMP_atom.Angle_set_stiffness(self, t)
 
 2271     def get_particle_key(i):
 
 2272         r"""get_particle_key(unsigned int i) -> ParticleIndexKey""" 
 2273         return _IMP_atom.Angle_get_particle_key(i)
 
 2276     def get_ideal_key():
 
 2277         r"""get_ideal_key() -> FloatKey""" 
 2278         return _IMP_atom.Angle_get_ideal_key()
 
 2281     def get_stiffness_key():
 
 2282         r"""get_stiffness_key() -> FloatKey""" 
 2283         return _IMP_atom.Angle_get_stiffness_key()
 
 2285     def add_attribute(self, *args):
 
 2287         add_attribute(Angle self, FloatKey k, IMP::Float v, bool opt) 
 2288         add_attribute(Angle self, FloatKey a0, IMP::Float a1) 
 2289         add_attribute(Angle self, IntKey a0, IMP::Int a1) 
 2290         add_attribute(Angle self, FloatsKey a0, IMP::Floats a1) 
 2291         add_attribute(Angle self, IntsKey a0, IMP::Ints a1) 
 2292         add_attribute(Angle self, StringKey a0, IMP::String a1) 
 2293         add_attribute(Angle self, ParticleIndexKey a0, Particle a1) 
 2294         add_attribute(Angle self, ObjectKey a0, Object a1) 
 2295         add_attribute(Angle self, SparseFloatKey a0, IMP::Float a1) 
 2296         add_attribute(Angle self, SparseIntKey a0, IMP::Int a1) 
 2297         add_attribute(Angle self, SparseStringKey a0, IMP::String a1) 
 2298         add_attribute(Angle self, SparseParticleIndexKey a0, ParticleIndex a1) 
 2300         return _IMP_atom.Angle_add_attribute(self, *args)
 
 2302     def get_value(self, *args):
 
 2304         get_value(Angle self, FloatKey a0) -> IMP::Float 
 2305         get_value(Angle self, IntKey a0) -> IMP::Int 
 2306         get_value(Angle self, FloatsKey a0) -> IMP::Floats 
 2307         get_value(Angle self, IntsKey a0) -> IMP::Ints 
 2308         get_value(Angle self, StringKey a0) -> IMP::String 
 2309         get_value(Angle self, ParticleIndexKey a0) -> Particle 
 2310         get_value(Angle self, ObjectKey a0) -> Object 
 2311         get_value(Angle self, SparseFloatKey a0) -> IMP::Float 
 2312         get_value(Angle self, SparseIntKey a0) -> IMP::Int 
 2313         get_value(Angle self, SparseStringKey a0) -> IMP::String 
 2314         get_value(Angle self, SparseParticleIndexKey a0) -> ParticleIndex 
 2316         return _IMP_atom.Angle_get_value(self, *args)
 
 2318     def set_value(self, *args):
 
 2320         set_value(Angle self, FloatKey a0, IMP::Float a1) 
 2321         set_value(Angle self, IntKey a0, IMP::Int a1) 
 2322         set_value(Angle self, FloatsKey a0, IMP::Floats a1) 
 2323         set_value(Angle self, IntsKey a0, IMP::Ints a1) 
 2324         set_value(Angle self, StringKey a0, IMP::String a1) 
 2325         set_value(Angle self, ParticleIndexKey a0, Particle a1) 
 2326         set_value(Angle self, ObjectKey a0, Object a1) 
 2327         set_value(Angle self, SparseFloatKey a0, IMP::Float a1) 
 2328         set_value(Angle self, SparseIntKey a0, IMP::Int a1) 
 2329         set_value(Angle self, SparseStringKey a0, IMP::String a1) 
 2330         set_value(Angle self, SparseParticleIndexKey a0, ParticleIndex a1) 
 2332         return _IMP_atom.Angle_set_value(self, *args)
 
 2334     def remove_attribute(self, *args):
 
 2336         remove_attribute(Angle self, FloatKey a0) 
 2337         remove_attribute(Angle self, IntKey a0) 
 2338         remove_attribute(Angle self, FloatsKey a0) 
 2339         remove_attribute(Angle self, IntsKey a0) 
 2340         remove_attribute(Angle self, StringKey a0) 
 2341         remove_attribute(Angle self, ParticleIndexKey a0) 
 2342         remove_attribute(Angle self, ObjectKey a0) 
 2343         remove_attribute(Angle self, SparseFloatKey a0) 
 2344         remove_attribute(Angle self, SparseIntKey a0) 
 2345         remove_attribute(Angle self, SparseStringKey a0) 
 2346         remove_attribute(Angle self, SparseParticleIndexKey a0) 
 2348         return _IMP_atom.Angle_remove_attribute(self, *args)
 
 2350     def has_attribute(self, *args):
 
 2352         has_attribute(Angle self, FloatKey a0) -> bool 
 2353         has_attribute(Angle self, IntKey a0) -> bool 
 2354         has_attribute(Angle self, FloatsKey a0) -> bool 
 2355         has_attribute(Angle self, IntsKey a0) -> bool 
 2356         has_attribute(Angle self, StringKey a0) -> bool 
 2357         has_attribute(Angle self, ParticleIndexKey a0) -> bool 
 2358         has_attribute(Angle self, ObjectKey a0) -> bool 
 2359         has_attribute(Angle self, SparseFloatKey a0) -> bool 
 2360         has_attribute(Angle self, SparseIntKey a0) -> bool 
 2361         has_attribute(Angle self, SparseStringKey a0) -> bool 
 2362         has_attribute(Angle self, SparseParticleIndexKey a0) -> bool 
 2364         return _IMP_atom.Angle_has_attribute(self, *args)
 
 2366     def get_derivative(self, a0):
 
 2367         r"""get_derivative(Angle self, FloatKey a0) -> double""" 
 2368         return _IMP_atom.Angle_get_derivative(self, a0)
 
 2371         r"""get_name(Angle self) -> std::string""" 
 2372         return _IMP_atom.Angle_get_name(self)
 
 2374     def clear_caches(self):
 
 2375         r"""clear_caches(Angle self)""" 
 2376         return _IMP_atom.Angle_clear_caches(self)
 
 2378     def set_name(self, a0):
 
 2379         r"""set_name(Angle self, std::string a0)""" 
 2380         return _IMP_atom.Angle_set_name(self, a0)
 
 2383         r"""set_check_level(Angle self, IMP::CheckLevel a0)""" 
 2384         return _IMP_atom.Angle_set_check_level(self, a0)
 
 2386     def add_to_derivative(self, a0, a1, a2):
 
 2387         r"""add_to_derivative(Angle self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 2388         return _IMP_atom.Angle_add_to_derivative(self, a0, a1, a2)
 
 2390     def set_is_optimized(self, a0, a1):
 
 2391         r"""set_is_optimized(Angle self, FloatKey a0, bool a1)""" 
 2392         return _IMP_atom.Angle_set_is_optimized(self, a0, a1)
 
 2394     def get_is_optimized(self, a0):
 
 2395         r"""get_is_optimized(Angle self, FloatKey a0) -> bool""" 
 2396         return _IMP_atom.Angle_get_is_optimized(self, a0)
 
 2399         r"""get_check_level(Angle self) -> IMP::CheckLevel""" 
 2400         return _IMP_atom.Angle_get_check_level(self)
 
 2402     def __eq__(self, *args):
 
 2404         __eq__(Angle self, Angle o) -> bool 
 2405         __eq__(Angle self, Particle d) -> bool 
 2407         return _IMP_atom.Angle___eq__(self, *args)
 
 2409     def __ne__(self, *args):
 
 2411         __ne__(Angle self, Angle o) -> bool 
 2412         __ne__(Angle self, Particle d) -> bool 
 2414         return _IMP_atom.Angle___ne__(self, *args)
 
 2416     def __le__(self, *args):
 
 2418         __le__(Angle self, Angle o) -> bool 
 2419         __le__(Angle self, Particle d) -> bool 
 2421         return _IMP_atom.Angle___le__(self, *args)
 
 2423     def __lt__(self, *args):
 
 2425         __lt__(Angle self, Angle o) -> bool 
 2426         __lt__(Angle self, Particle d) -> bool 
 2428         return _IMP_atom.Angle___lt__(self, *args)
 
 2430     def __ge__(self, *args):
 
 2432         __ge__(Angle self, Angle o) -> bool 
 2433         __ge__(Angle self, Particle d) -> bool 
 2435         return _IMP_atom.Angle___ge__(self, *args)
 
 2437     def __gt__(self, *args):
 
 2439         __gt__(Angle self, Angle o) -> bool 
 2440         __gt__(Angle self, Particle d) -> bool 
 2442         return _IMP_atom.Angle___gt__(self, *args)
 
 2445         r"""__hash__(Angle self) -> std::size_t""" 
 2446         return _IMP_atom.Angle___hash__(self)
 
 2449         r"""__str__(Angle self) -> std::string""" 
 2450         return _IMP_atom.Angle___str__(self)
 
 2453         r"""__repr__(Angle self) -> std::string""" 
 2454         return _IMP_atom.Angle___repr__(self)
 
 2456     def _get_as_binary(self):
 
 2457         r"""_get_as_binary(Angle self) -> PyObject *""" 
 2458         return _IMP_atom.Angle__get_as_binary(self)
 
 2460     def _set_from_binary(self, p):
 
 2461         r"""_set_from_binary(Angle self, PyObject * p)""" 
 2462         return _IMP_atom.Angle__set_from_binary(self, p)
 
 2464     def __getstate__(self):
 
 2465         p = self._get_as_binary()
 
 2466         if len(self.__dict__) > 1:
 
 2467             d = self.__dict__.copy()
 
 2472     def __setstate__(self, p):
 
 2473         if not hasattr(self, 
'this'):
 
 2475         if isinstance(p, tuple):
 
 2477             self.__dict__.update(d)
 
 2478         return self._set_from_binary(p)
 
 2480     __swig_destroy__ = _IMP_atom.delete_Angle
 
 2483 _IMP_atom.Angle_swigregister(Angle)
 
 2485     r"""Proxy of C++ IMP::atom::Dihedral class.""" 
 2487     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 2489     def __init__(self, *args):
 
 2491         __init__(Dihedral self) -> Dihedral 
 2492         __init__(Dihedral self, Model m, ParticleIndex id) -> Dihedral 
 2493         __init__(Dihedral self, _ParticleAdaptor d) -> Dihedral 
 2495         _IMP_atom.Dihedral_swiginit(self, _IMP_atom.new_Dihedral(*args))
 
 2497     def show(self, *args):
 
 2498         r"""show(Dihedral self, _ostream out=std::cout)""" 
 2499         return _IMP_atom.Dihedral_show(self, *args)
 
 2502     def setup_particle(*args):
 
 2504         setup_particle(Model m, ParticleIndex pi, XYZ a, XYZ b, XYZ c, XYZ d) -> Dihedral 
 2505         setup_particle(_ParticleAdaptor pa, XYZ a, XYZ b, XYZ c, XYZ d) -> Dihedral 
 2507         return _IMP_atom.Dihedral_setup_particle(*args)
 
 2510     def get_is_setup(*args):
 
 2512         get_is_setup(_ParticleAdaptor p) -> bool 
 2513         get_is_setup(Model m, ParticleIndex pi) -> bool 
 2515         return _IMP_atom.Dihedral_get_is_setup(*args)
 
 2517     def get_particle(self, *args):
 
 2519         get_particle(Dihedral self) -> Particle 
 2520         get_particle(Dihedral self, unsigned int i) -> Particle 
 2522         return _IMP_atom.Dihedral_get_particle(self, *args)
 
 2524     def get_ideal(self):
 
 2525         r"""get_ideal(Dihedral self) -> IMP::Float""" 
 2526         return _IMP_atom.Dihedral_get_ideal(self)
 
 2528     def set_ideal(self, t):
 
 2529         r"""set_ideal(Dihedral self, IMP::Float t)""" 
 2530         return _IMP_atom.Dihedral_set_ideal(self, t)
 
 2532     def get_multiplicity(self):
 
 2533         r"""get_multiplicity(Dihedral self) -> IMP::Int""" 
 2534         return _IMP_atom.Dihedral_get_multiplicity(self)
 
 2536     def set_multiplicity(self, t):
 
 2537         r"""set_multiplicity(Dihedral self, IMP::Int t)""" 
 2538         return _IMP_atom.Dihedral_set_multiplicity(self, t)
 
 2540     def get_stiffness(self):
 
 2541         r"""get_stiffness(Dihedral self) -> IMP::Float""" 
 2542         return _IMP_atom.Dihedral_get_stiffness(self)
 
 2544     def set_stiffness(self, t):
 
 2545         r"""set_stiffness(Dihedral self, IMP::Float t)""" 
 2546         return _IMP_atom.Dihedral_set_stiffness(self, t)
 
 2549     def get_particle_key(i):
 
 2550         r"""get_particle_key(unsigned int i) -> ParticleIndexKey""" 
 2551         return _IMP_atom.Dihedral_get_particle_key(i)
 
 2554     def get_ideal_key():
 
 2555         r"""get_ideal_key() -> FloatKey""" 
 2556         return _IMP_atom.Dihedral_get_ideal_key()
 
 2559     def get_multiplicity_key():
 
 2560         r"""get_multiplicity_key() -> IntKey""" 
 2561         return _IMP_atom.Dihedral_get_multiplicity_key()
 
 2564     def get_stiffness_key():
 
 2565         r"""get_stiffness_key() -> FloatKey""" 
 2566         return _IMP_atom.Dihedral_get_stiffness_key()
 
 2568     def add_attribute(self, *args):
 
 2570         add_attribute(Dihedral self, FloatKey k, IMP::Float v, bool opt) 
 2571         add_attribute(Dihedral self, FloatKey a0, IMP::Float a1) 
 2572         add_attribute(Dihedral self, IntKey a0, IMP::Int a1) 
 2573         add_attribute(Dihedral self, FloatsKey a0, IMP::Floats a1) 
 2574         add_attribute(Dihedral self, IntsKey a0, IMP::Ints a1) 
 2575         add_attribute(Dihedral self, StringKey a0, IMP::String a1) 
 2576         add_attribute(Dihedral self, ParticleIndexKey a0, Particle a1) 
 2577         add_attribute(Dihedral self, ObjectKey a0, Object a1) 
 2578         add_attribute(Dihedral self, SparseFloatKey a0, IMP::Float a1) 
 2579         add_attribute(Dihedral self, SparseIntKey a0, IMP::Int a1) 
 2580         add_attribute(Dihedral self, SparseStringKey a0, IMP::String a1) 
 2581         add_attribute(Dihedral self, SparseParticleIndexKey a0, ParticleIndex a1) 
 2583         return _IMP_atom.Dihedral_add_attribute(self, *args)
 
 2585     def get_value(self, *args):
 
 2587         get_value(Dihedral self, FloatKey a0) -> IMP::Float 
 2588         get_value(Dihedral self, IntKey a0) -> IMP::Int 
 2589         get_value(Dihedral self, FloatsKey a0) -> IMP::Floats 
 2590         get_value(Dihedral self, IntsKey a0) -> IMP::Ints 
 2591         get_value(Dihedral self, StringKey a0) -> IMP::String 
 2592         get_value(Dihedral self, ParticleIndexKey a0) -> Particle 
 2593         get_value(Dihedral self, ObjectKey a0) -> Object 
 2594         get_value(Dihedral self, SparseFloatKey a0) -> IMP::Float 
 2595         get_value(Dihedral self, SparseIntKey a0) -> IMP::Int 
 2596         get_value(Dihedral self, SparseStringKey a0) -> IMP::String 
 2597         get_value(Dihedral self, SparseParticleIndexKey a0) -> ParticleIndex 
 2599         return _IMP_atom.Dihedral_get_value(self, *args)
 
 2601     def set_value(self, *args):
 
 2603         set_value(Dihedral self, FloatKey a0, IMP::Float a1) 
 2604         set_value(Dihedral self, IntKey a0, IMP::Int a1) 
 2605         set_value(Dihedral self, FloatsKey a0, IMP::Floats a1) 
 2606         set_value(Dihedral self, IntsKey a0, IMP::Ints a1) 
 2607         set_value(Dihedral self, StringKey a0, IMP::String a1) 
 2608         set_value(Dihedral self, ParticleIndexKey a0, Particle a1) 
 2609         set_value(Dihedral self, ObjectKey a0, Object a1) 
 2610         set_value(Dihedral self, SparseFloatKey a0, IMP::Float a1) 
 2611         set_value(Dihedral self, SparseIntKey a0, IMP::Int a1) 
 2612         set_value(Dihedral self, SparseStringKey a0, IMP::String a1) 
 2613         set_value(Dihedral self, SparseParticleIndexKey a0, ParticleIndex a1) 
 2615         return _IMP_atom.Dihedral_set_value(self, *args)
 
 2617     def remove_attribute(self, *args):
 
 2619         remove_attribute(Dihedral self, FloatKey a0) 
 2620         remove_attribute(Dihedral self, IntKey a0) 
 2621         remove_attribute(Dihedral self, FloatsKey a0) 
 2622         remove_attribute(Dihedral self, IntsKey a0) 
 2623         remove_attribute(Dihedral self, StringKey a0) 
 2624         remove_attribute(Dihedral self, ParticleIndexKey a0) 
 2625         remove_attribute(Dihedral self, ObjectKey a0) 
 2626         remove_attribute(Dihedral self, SparseFloatKey a0) 
 2627         remove_attribute(Dihedral self, SparseIntKey a0) 
 2628         remove_attribute(Dihedral self, SparseStringKey a0) 
 2629         remove_attribute(Dihedral self, SparseParticleIndexKey a0) 
 2631         return _IMP_atom.Dihedral_remove_attribute(self, *args)
 
 2633     def has_attribute(self, *args):
 
 2635         has_attribute(Dihedral self, FloatKey a0) -> bool 
 2636         has_attribute(Dihedral self, IntKey a0) -> bool 
 2637         has_attribute(Dihedral self, FloatsKey a0) -> bool 
 2638         has_attribute(Dihedral self, IntsKey a0) -> bool 
 2639         has_attribute(Dihedral self, StringKey a0) -> bool 
 2640         has_attribute(Dihedral self, ParticleIndexKey a0) -> bool 
 2641         has_attribute(Dihedral self, ObjectKey a0) -> bool 
 2642         has_attribute(Dihedral self, SparseFloatKey a0) -> bool 
 2643         has_attribute(Dihedral self, SparseIntKey a0) -> bool 
 2644         has_attribute(Dihedral self, SparseStringKey a0) -> bool 
 2645         has_attribute(Dihedral self, SparseParticleIndexKey a0) -> bool 
 2647         return _IMP_atom.Dihedral_has_attribute(self, *args)
 
 2649     def get_derivative(self, a0):
 
 2650         r"""get_derivative(Dihedral self, FloatKey a0) -> double""" 
 2651         return _IMP_atom.Dihedral_get_derivative(self, a0)
 
 2654         r"""get_name(Dihedral self) -> std::string""" 
 2655         return _IMP_atom.Dihedral_get_name(self)
 
 2657     def clear_caches(self):
 
 2658         r"""clear_caches(Dihedral self)""" 
 2659         return _IMP_atom.Dihedral_clear_caches(self)
 
 2661     def set_name(self, a0):
 
 2662         r"""set_name(Dihedral self, std::string a0)""" 
 2663         return _IMP_atom.Dihedral_set_name(self, a0)
 
 2666         r"""set_check_level(Dihedral self, IMP::CheckLevel a0)""" 
 2667         return _IMP_atom.Dihedral_set_check_level(self, a0)
 
 2669     def add_to_derivative(self, a0, a1, a2):
 
 2670         r"""add_to_derivative(Dihedral self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 2671         return _IMP_atom.Dihedral_add_to_derivative(self, a0, a1, a2)
 
 2673     def set_is_optimized(self, a0, a1):
 
 2674         r"""set_is_optimized(Dihedral self, FloatKey a0, bool a1)""" 
 2675         return _IMP_atom.Dihedral_set_is_optimized(self, a0, a1)
 
 2677     def get_is_optimized(self, a0):
 
 2678         r"""get_is_optimized(Dihedral self, FloatKey a0) -> bool""" 
 2679         return _IMP_atom.Dihedral_get_is_optimized(self, a0)
 
 2682         r"""get_check_level(Dihedral self) -> IMP::CheckLevel""" 
 2683         return _IMP_atom.Dihedral_get_check_level(self)
 
 2685     def __eq__(self, *args):
 
 2687         __eq__(Dihedral self, Dihedral o) -> bool 
 2688         __eq__(Dihedral self, Particle d) -> bool 
 2690         return _IMP_atom.Dihedral___eq__(self, *args)
 
 2692     def __ne__(self, *args):
 
 2694         __ne__(Dihedral self, Dihedral o) -> bool 
 2695         __ne__(Dihedral self, Particle d) -> bool 
 2697         return _IMP_atom.Dihedral___ne__(self, *args)
 
 2699     def __le__(self, *args):
 
 2701         __le__(Dihedral self, Dihedral o) -> bool 
 2702         __le__(Dihedral self, Particle d) -> bool 
 2704         return _IMP_atom.Dihedral___le__(self, *args)
 
 2706     def __lt__(self, *args):
 
 2708         __lt__(Dihedral self, Dihedral o) -> bool 
 2709         __lt__(Dihedral self, Particle d) -> bool 
 2711         return _IMP_atom.Dihedral___lt__(self, *args)
 
 2713     def __ge__(self, *args):
 
 2715         __ge__(Dihedral self, Dihedral o) -> bool 
 2716         __ge__(Dihedral self, Particle d) -> bool 
 2718         return _IMP_atom.Dihedral___ge__(self, *args)
 
 2720     def __gt__(self, *args):
 
 2722         __gt__(Dihedral self, Dihedral o) -> bool 
 2723         __gt__(Dihedral self, Particle d) -> bool 
 2725         return _IMP_atom.Dihedral___gt__(self, *args)
 
 2728         r"""__hash__(Dihedral self) -> std::size_t""" 
 2729         return _IMP_atom.Dihedral___hash__(self)
 
 2732         r"""__str__(Dihedral self) -> std::string""" 
 2733         return _IMP_atom.Dihedral___str__(self)
 
 2736         r"""__repr__(Dihedral self) -> std::string""" 
 2737         return _IMP_atom.Dihedral___repr__(self)
 
 2739     def _get_as_binary(self):
 
 2740         r"""_get_as_binary(Dihedral self) -> PyObject *""" 
 2741         return _IMP_atom.Dihedral__get_as_binary(self)
 
 2743     def _set_from_binary(self, p):
 
 2744         r"""_set_from_binary(Dihedral self, PyObject * p)""" 
 2745         return _IMP_atom.Dihedral__set_from_binary(self, p)
 
 2747     def __getstate__(self):
 
 2748         p = self._get_as_binary()
 
 2749         if len(self.__dict__) > 1:
 
 2750             d = self.__dict__.copy()
 
 2755     def __setstate__(self, p):
 
 2756         if not hasattr(self, 
'this'):
 
 2758         if isinstance(p, tuple):
 
 2760             self.__dict__.update(d)
 
 2761         return self._set_from_binary(p)
 
 2763     __swig_destroy__ = _IMP_atom.delete_Dihedral
 
 2766 _IMP_atom.Dihedral_swigregister(Dihedral)
 
 2768     r"""Proxy of C++ IMP::atom::SmoothingFunction class.""" 
 2770     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 2772     def __init__(self, *args, **kwargs):
 
 2773         raise AttributeError(
"No constructor defined - class is abstract")
 
 2775     def __call__(self, *args):
 
 2777         __call__(SmoothingFunction self, double score, double distance) -> double 
 2778         __call__(SmoothingFunction self, double score, double deriv, double distance) -> IMP::DerivativePair 
 2780         return _IMP_atom.SmoothingFunction___call__(self, *args)
 
 2781     __swig_destroy__ = _IMP_atom.delete_SmoothingFunction
 
 2784         r"""__str__(SmoothingFunction self) -> std::string""" 
 2785         return _IMP_atom.SmoothingFunction___str__(self)
 
 2788         r"""__repr__(SmoothingFunction self) -> std::string""" 
 2789         return _IMP_atom.SmoothingFunction___repr__(self)
 
 2793        return _object_cast_to_SmoothingFunction(o)
 
 2797 _IMP_atom.SmoothingFunction_swigregister(SmoothingFunction)
 
 2798 class ForceSwitch(SmoothingFunction):
 
 2799     r"""Proxy of C++ IMP::atom::ForceSwitch class.""" 
 2801     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 2803     def __init__(self, min_distance, max_distance):
 
 2804         r"""__init__(ForceSwitch self, double min_distance, double max_distance) -> ForceSwitch""" 
 2805         _IMP_atom.ForceSwitch_swiginit(self, _IMP_atom.new_ForceSwitch(min_distance, max_distance))
 
 2807     def __call__(self, *args):
 
 2809         __call__(ForceSwitch self, double score, double distance) -> double 
 2810         __call__(ForceSwitch self, double score, double deriv, double distance) -> IMP::DerivativePair 
 2812         return _IMP_atom.ForceSwitch___call__(self, *args)
 
 2814     def get_version_info(self):
 
 2815         r"""get_version_info(ForceSwitch self) -> VersionInfo""" 
 2816         return _IMP_atom.ForceSwitch_get_version_info(self)
 
 2817     __swig_destroy__ = _IMP_atom.delete_ForceSwitch
 
 2820         r"""__str__(ForceSwitch self) -> std::string""" 
 2821         return _IMP_atom.ForceSwitch___str__(self)
 
 2824         r"""__repr__(ForceSwitch self) -> std::string""" 
 2825         return _IMP_atom.ForceSwitch___repr__(self)
 
 2829        return _object_cast_to_ForceSwitch(o)
 
 2833 _IMP_atom.ForceSwitch_swigregister(ForceSwitch)
 
 2835     r"""Proxy of C++ IMP::atom::AngleSingletonScore class.""" 
 2837     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 2839     def __init__(self, f):
 
 2840         r"""__init__(AngleSingletonScore self, UnaryFunction f) -> AngleSingletonScore""" 
 2841         _IMP_atom.AngleSingletonScore_swiginit(self, _IMP_atom.new_AngleSingletonScore(f))
 
 2843     def do_get_inputs(self, m, pis):
 
 2844         r"""do_get_inputs(AngleSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 2845         return _IMP_atom.AngleSingletonScore_do_get_inputs(self, m, pis)
 
 2847     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 2848         r"""evaluate_indexes(AngleSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 2849         return _IMP_atom.AngleSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 2851     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 2852         r"""evaluate_indexes_scores(AngleSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 2853         return _IMP_atom.AngleSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 2855     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 2856         r"""evaluate_indexes_delta(AngleSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 2857         return _IMP_atom.AngleSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 2859     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 2860         r"""evaluate_if_good_indexes(AngleSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 2861         return _IMP_atom.AngleSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 2863     def get_version_info(self):
 
 2864         r"""get_version_info(AngleSingletonScore self) -> VersionInfo""" 
 2865         return _IMP_atom.AngleSingletonScore_get_version_info(self)
 
 2866     __swig_destroy__ = _IMP_atom.delete_AngleSingletonScore
 
 2869         r"""__str__(AngleSingletonScore self) -> std::string""" 
 2870         return _IMP_atom.AngleSingletonScore___str__(self)
 
 2873         r"""__repr__(AngleSingletonScore self) -> std::string""" 
 2874         return _IMP_atom.AngleSingletonScore___repr__(self)
 
 2878        return _object_cast_to_AngleSingletonScore(o)
 
 2882 _IMP_atom.AngleSingletonScore_swigregister(AngleSingletonScore)
 
 2884     r"""Proxy of C++ IMP::atom::BondEndpointsRefiner class.""" 
 2886     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 2889         r"""__init__(BondEndpointsRefiner self) -> BondEndpointsRefiner""" 
 2890         _IMP_atom.BondEndpointsRefiner_swiginit(self, _IMP_atom.new_BondEndpointsRefiner())
 
 2892     def do_get_inputs(self, m, pis):
 
 2893         r"""do_get_inputs(BondEndpointsRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 2894         return _IMP_atom.BondEndpointsRefiner_do_get_inputs(self, m, pis)
 
 2896     def get_version_info(self):
 
 2897         r"""get_version_info(BondEndpointsRefiner self) -> VersionInfo""" 
 2898         return _IMP_atom.BondEndpointsRefiner_get_version_info(self)
 
 2899     __swig_destroy__ = _IMP_atom.delete_BondEndpointsRefiner
 
 2902         r"""__str__(BondEndpointsRefiner self) -> std::string""" 
 2903         return _IMP_atom.BondEndpointsRefiner___str__(self)
 
 2906         r"""__repr__(BondEndpointsRefiner self) -> std::string""" 
 2907         return _IMP_atom.BondEndpointsRefiner___repr__(self)
 
 2911        return _object_cast_to_BondEndpointsRefiner(o)
 
 2915 _IMP_atom.BondEndpointsRefiner_swigregister(BondEndpointsRefiner)
 
 2917     r"""Proxy of C++ IMP::atom::BondPairContainer class.""" 
 2919     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 2921     def __init__(self, sc):
 
 2922         r"""__init__(BondPairContainer self, SingletonContainer sc) -> BondPairContainer""" 
 2923         _IMP_atom.BondPairContainer_swiginit(self, _IMP_atom.new_BondPairContainer(sc))
 
 2925     def do_get_inputs(self):
 
 2926         r"""do_get_inputs(BondPairContainer self) -> IMP::ModelObjectsTemp""" 
 2927         return _IMP_atom.BondPairContainer_do_get_inputs(self)
 
 2929     def do_apply(self, sm):
 
 2930         r"""do_apply(BondPairContainer self, PairModifier sm)""" 
 2931         return _IMP_atom.BondPairContainer_do_apply(self, sm)
 
 2933     def do_apply_moved(self, sm, moved_pis, reset_pis):
 
 2934         r"""do_apply_moved(BondPairContainer self, PairModifier sm, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)""" 
 2935         return _IMP_atom.BondPairContainer_do_apply_moved(self, sm, moved_pis, reset_pis)
 
 2937     def get_version_info(self):
 
 2938         r"""get_version_info(BondPairContainer self) -> VersionInfo""" 
 2939         return _IMP_atom.BondPairContainer_get_version_info(self)
 
 2940     __swig_destroy__ = _IMP_atom.delete_BondPairContainer
 
 2943         r"""__str__(BondPairContainer self) -> std::string""" 
 2944         return _IMP_atom.BondPairContainer___str__(self)
 
 2947         r"""__repr__(BondPairContainer self) -> std::string""" 
 2948         return _IMP_atom.BondPairContainer___repr__(self)
 
 2952        return _object_cast_to_BondPairContainer(o)
 
 2956 _IMP_atom.BondPairContainer_swigregister(BondPairContainer)
 
 2958     r"""Proxy of C++ IMP::atom::BondSingletonScore class.""" 
 2960     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 2962     def __init__(self, f):
 
 2963         r"""__init__(BondSingletonScore self, UnaryFunction f) -> BondSingletonScore""" 
 2964         _IMP_atom.BondSingletonScore_swiginit(self, _IMP_atom.new_BondSingletonScore(f))
 
 2966     def get_unary_function(self):
 
 2967         r"""get_unary_function(BondSingletonScore self) -> UnaryFunction""" 
 2968         return _IMP_atom.BondSingletonScore_get_unary_function(self)
 
 2970     def do_get_inputs(self, m, pis):
 
 2971         r"""do_get_inputs(BondSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 2972         return _IMP_atom.BondSingletonScore_do_get_inputs(self, m, pis)
 
 2974     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 2975         r"""evaluate_indexes(BondSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 2976         return _IMP_atom.BondSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 2978     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 2979         r"""evaluate_indexes_scores(BondSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 2980         return _IMP_atom.BondSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 2982     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 2983         r"""evaluate_indexes_delta(BondSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 2984         return _IMP_atom.BondSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 2986     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 2987         r"""evaluate_if_good_indexes(BondSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 2988         return _IMP_atom.BondSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 2990     def get_version_info(self):
 
 2991         r"""get_version_info(BondSingletonScore self) -> VersionInfo""" 
 2992         return _IMP_atom.BondSingletonScore_get_version_info(self)
 
 2993     __swig_destroy__ = _IMP_atom.delete_BondSingletonScore
 
 2996         r"""__str__(BondSingletonScore self) -> std::string""" 
 2997         return _IMP_atom.BondSingletonScore___str__(self)
 
 3000         r"""__repr__(BondSingletonScore self) -> std::string""" 
 3001         return _IMP_atom.BondSingletonScore___repr__(self)
 
 3005        return _object_cast_to_BondSingletonScore(o)
 
 3009 _IMP_atom.BondSingletonScore_swigregister(BondSingletonScore)
 
 3011     r"""Proxy of C++ IMP::atom::DihedralSingletonScore class.""" 
 3013     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 3016         r"""__init__(DihedralSingletonScore self) -> DihedralSingletonScore""" 
 3017         _IMP_atom.DihedralSingletonScore_swiginit(self, _IMP_atom.new_DihedralSingletonScore())
 
 3019     def do_get_inputs(self, m, pis):
 
 3020         r"""do_get_inputs(DihedralSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 3021         return _IMP_atom.DihedralSingletonScore_do_get_inputs(self, m, pis)
 
 3023     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 3024         r"""evaluate_indexes(DihedralSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 3025         return _IMP_atom.DihedralSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 3027     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 3028         r"""evaluate_indexes_scores(DihedralSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 3029         return _IMP_atom.DihedralSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 3031     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 3032         r"""evaluate_indexes_delta(DihedralSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 3033         return _IMP_atom.DihedralSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 3035     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 3036         r"""evaluate_if_good_indexes(DihedralSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 3037         return _IMP_atom.DihedralSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 3039     def get_version_info(self):
 
 3040         r"""get_version_info(DihedralSingletonScore self) -> VersionInfo""" 
 3041         return _IMP_atom.DihedralSingletonScore_get_version_info(self)
 
 3042     __swig_destroy__ = _IMP_atom.delete_DihedralSingletonScore
 
 3045         r"""__str__(DihedralSingletonScore self) -> std::string""" 
 3046         return _IMP_atom.DihedralSingletonScore___str__(self)
 
 3049         r"""__repr__(DihedralSingletonScore self) -> std::string""" 
 3050         return _IMP_atom.DihedralSingletonScore___repr__(self)
 
 3054        return _object_cast_to_DihedralSingletonScore(o)
 
 3057     def _get_as_binary(self):
 
 3058         r"""_get_as_binary(DihedralSingletonScore self) -> PyObject *""" 
 3059         return _IMP_atom.DihedralSingletonScore__get_as_binary(self)
 
 3061     def _set_from_binary(self, p):
 
 3062         r"""_set_from_binary(DihedralSingletonScore self, PyObject * p)""" 
 3063         return _IMP_atom.DihedralSingletonScore__set_from_binary(self, p)
 
 3065     def __getstate__(self):
 
 3066         p = self._get_as_binary()
 
 3067         if len(self.__dict__) > 1:
 
 3068             d = self.__dict__.copy()
 
 3073     def __setstate__(self, p):
 
 3074         if not hasattr(self, 
'this'):
 
 3076         if isinstance(p, tuple):
 
 3078             self.__dict__.update(d)
 
 3079         return self._set_from_binary(p)
 
 3083 _IMP_atom.DihedralSingletonScore_swigregister(DihedralSingletonScore)
 
 3085     r"""Proxy of C++ IMP::atom::ImproperSingletonScore class.""" 
 3087     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 3089     def __init__(self, f):
 
 3090         r"""__init__(ImproperSingletonScore self, UnaryFunction f) -> ImproperSingletonScore""" 
 3091         _IMP_atom.ImproperSingletonScore_swiginit(self, _IMP_atom.new_ImproperSingletonScore(f))
 
 3093     def do_get_inputs(self, m, pis):
 
 3094         r"""do_get_inputs(ImproperSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 3095         return _IMP_atom.ImproperSingletonScore_do_get_inputs(self, m, pis)
 
 3097     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 3098         r"""evaluate_indexes(ImproperSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 3099         return _IMP_atom.ImproperSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 3101     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 3102         r"""evaluate_indexes_scores(ImproperSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 3103         return _IMP_atom.ImproperSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 3105     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 3106         r"""evaluate_indexes_delta(ImproperSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 3107         return _IMP_atom.ImproperSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 3109     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 3110         r"""evaluate_if_good_indexes(ImproperSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 3111         return _IMP_atom.ImproperSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 3113     def get_version_info(self):
 
 3114         r"""get_version_info(ImproperSingletonScore self) -> VersionInfo""" 
 3115         return _IMP_atom.ImproperSingletonScore_get_version_info(self)
 
 3116     __swig_destroy__ = _IMP_atom.delete_ImproperSingletonScore
 
 3119         r"""__str__(ImproperSingletonScore self) -> std::string""" 
 3120         return _IMP_atom.ImproperSingletonScore___str__(self)
 
 3123         r"""__repr__(ImproperSingletonScore self) -> std::string""" 
 3124         return _IMP_atom.ImproperSingletonScore___repr__(self)
 
 3128        return _object_cast_to_ImproperSingletonScore(o)
 
 3132 _IMP_atom.ImproperSingletonScore_swigregister(ImproperSingletonScore)
 
 3134     r"""Proxy of C++ IMP::atom::CenterOfMass class.""" 
 3136     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 3138     def get_constraint(self):
 
 3139         r"""get_constraint(CenterOfMass self) -> Constraint""" 
 3140         return _IMP_atom.CenterOfMass_get_constraint(self)
 
 3143         r"""get_mass(CenterOfMass self) -> IMP::Float""" 
 3144         return _IMP_atom.CenterOfMass_get_mass(self)
 
 3146     def get_coordinate(self, i):
 
 3147         r"""get_coordinate(CenterOfMass self, int i) -> IMP::Float""" 
 3148         return _IMP_atom.CenterOfMass_get_coordinate(self, i)
 
 3150     def get_coordinates(self):
 
 3151         r"""get_coordinates(CenterOfMass self) -> Vector3D""" 
 3152         return _IMP_atom.CenterOfMass_get_coordinates(self)
 
 3154     def __init__(self, *args):
 
 3156         __init__(CenterOfMass self) -> CenterOfMass 
 3157         __init__(CenterOfMass self, Model m, ParticleIndex id) -> CenterOfMass 
 3158         __init__(CenterOfMass self, _ParticleAdaptor d) -> CenterOfMass 
 3160         _IMP_atom.CenterOfMass_swiginit(self, _IMP_atom.new_CenterOfMass(*args))
 
 3162     def show(self, *args):
 
 3163         r"""show(CenterOfMass self, _ostream out=std::cout)""" 
 3164         return _IMP_atom.CenterOfMass_show(self, *args)
 
 3167     def setup_particle(*args):
 
 3169         setup_particle(Model m, ParticleIndex pi, _ParticleIndexesAdaptor members) -> CenterOfMass 
 3170         setup_particle(_ParticleAdaptor pa, _ParticleIndexesAdaptor members) -> CenterOfMass 
 3171         setup_particle(Model m, ParticleIndex pi, Refiner refiner) -> CenterOfMass 
 3172         setup_particle(_ParticleAdaptor pa, Refiner refiner) -> CenterOfMass 
 3174         return _IMP_atom.CenterOfMass_setup_particle(*args)
 
 3177     def teardown_particle(com):
 
 3178         r"""teardown_particle(CenterOfMass com)""" 
 3179         return _IMP_atom.CenterOfMass_teardown_particle(com)
 
 3182     def get_is_setup(*args):
 
 3184         get_is_setup(_ParticleAdaptor p) -> bool 
 3185         get_is_setup(Model m, ParticleIndex pi) -> bool 
 3187         return _IMP_atom.CenterOfMass_get_is_setup(*args)
 
 3189     def add_attribute(self, *args):
 
 3191         add_attribute(CenterOfMass self, FloatKey k, IMP::Float v, bool opt) 
 3192         add_attribute(CenterOfMass self, FloatKey a0, IMP::Float a1) 
 3193         add_attribute(CenterOfMass self, IntKey a0, IMP::Int a1) 
 3194         add_attribute(CenterOfMass self, FloatsKey a0, IMP::Floats a1) 
 3195         add_attribute(CenterOfMass self, IntsKey a0, IMP::Ints a1) 
 3196         add_attribute(CenterOfMass self, StringKey a0, IMP::String a1) 
 3197         add_attribute(CenterOfMass self, ParticleIndexKey a0, Particle a1) 
 3198         add_attribute(CenterOfMass self, ObjectKey a0, Object a1) 
 3199         add_attribute(CenterOfMass self, SparseFloatKey a0, IMP::Float a1) 
 3200         add_attribute(CenterOfMass self, SparseIntKey a0, IMP::Int a1) 
 3201         add_attribute(CenterOfMass self, SparseStringKey a0, IMP::String a1) 
 3202         add_attribute(CenterOfMass self, SparseParticleIndexKey a0, ParticleIndex a1) 
 3204         return _IMP_atom.CenterOfMass_add_attribute(self, *args)
 
 3206     def get_value(self, *args):
 
 3208         get_value(CenterOfMass self, FloatKey a0) -> IMP::Float 
 3209         get_value(CenterOfMass self, IntKey a0) -> IMP::Int 
 3210         get_value(CenterOfMass self, FloatsKey a0) -> IMP::Floats 
 3211         get_value(CenterOfMass self, IntsKey a0) -> IMP::Ints 
 3212         get_value(CenterOfMass self, StringKey a0) -> IMP::String 
 3213         get_value(CenterOfMass self, ParticleIndexKey a0) -> Particle 
 3214         get_value(CenterOfMass self, ObjectKey a0) -> Object 
 3215         get_value(CenterOfMass self, SparseFloatKey a0) -> IMP::Float 
 3216         get_value(CenterOfMass self, SparseIntKey a0) -> IMP::Int 
 3217         get_value(CenterOfMass self, SparseStringKey a0) -> IMP::String 
 3218         get_value(CenterOfMass self, SparseParticleIndexKey a0) -> ParticleIndex 
 3220         return _IMP_atom.CenterOfMass_get_value(self, *args)
 
 3222     def set_value(self, *args):
 
 3224         set_value(CenterOfMass self, FloatKey a0, IMP::Float a1) 
 3225         set_value(CenterOfMass self, IntKey a0, IMP::Int a1) 
 3226         set_value(CenterOfMass self, FloatsKey a0, IMP::Floats a1) 
 3227         set_value(CenterOfMass self, IntsKey a0, IMP::Ints a1) 
 3228         set_value(CenterOfMass self, StringKey a0, IMP::String a1) 
 3229         set_value(CenterOfMass self, ParticleIndexKey a0, Particle a1) 
 3230         set_value(CenterOfMass self, ObjectKey a0, Object a1) 
 3231         set_value(CenterOfMass self, SparseFloatKey a0, IMP::Float a1) 
 3232         set_value(CenterOfMass self, SparseIntKey a0, IMP::Int a1) 
 3233         set_value(CenterOfMass self, SparseStringKey a0, IMP::String a1) 
 3234         set_value(CenterOfMass self, SparseParticleIndexKey a0, ParticleIndex a1) 
 3236         return _IMP_atom.CenterOfMass_set_value(self, *args)
 
 3238     def remove_attribute(self, *args):
 
 3240         remove_attribute(CenterOfMass self, FloatKey a0) 
 3241         remove_attribute(CenterOfMass self, IntKey a0) 
 3242         remove_attribute(CenterOfMass self, FloatsKey a0) 
 3243         remove_attribute(CenterOfMass self, IntsKey a0) 
 3244         remove_attribute(CenterOfMass self, StringKey a0) 
 3245         remove_attribute(CenterOfMass self, ParticleIndexKey a0) 
 3246         remove_attribute(CenterOfMass self, ObjectKey a0) 
 3247         remove_attribute(CenterOfMass self, SparseFloatKey a0) 
 3248         remove_attribute(CenterOfMass self, SparseIntKey a0) 
 3249         remove_attribute(CenterOfMass self, SparseStringKey a0) 
 3250         remove_attribute(CenterOfMass self, SparseParticleIndexKey a0) 
 3252         return _IMP_atom.CenterOfMass_remove_attribute(self, *args)
 
 3254     def has_attribute(self, *args):
 
 3256         has_attribute(CenterOfMass self, FloatKey a0) -> bool 
 3257         has_attribute(CenterOfMass self, IntKey a0) -> bool 
 3258         has_attribute(CenterOfMass self, FloatsKey a0) -> bool 
 3259         has_attribute(CenterOfMass self, IntsKey a0) -> bool 
 3260         has_attribute(CenterOfMass self, StringKey a0) -> bool 
 3261         has_attribute(CenterOfMass self, ParticleIndexKey a0) -> bool 
 3262         has_attribute(CenterOfMass self, ObjectKey a0) -> bool 
 3263         has_attribute(CenterOfMass self, SparseFloatKey a0) -> bool 
 3264         has_attribute(CenterOfMass self, SparseIntKey a0) -> bool 
 3265         has_attribute(CenterOfMass self, SparseStringKey a0) -> bool 
 3266         has_attribute(CenterOfMass self, SparseParticleIndexKey a0) -> bool 
 3268         return _IMP_atom.CenterOfMass_has_attribute(self, *args)
 
 3270     def get_derivative(self, a0):
 
 3271         r"""get_derivative(CenterOfMass self, FloatKey a0) -> double""" 
 3272         return _IMP_atom.CenterOfMass_get_derivative(self, a0)
 
 3275         r"""get_name(CenterOfMass self) -> std::string""" 
 3276         return _IMP_atom.CenterOfMass_get_name(self)
 
 3278     def clear_caches(self):
 
 3279         r"""clear_caches(CenterOfMass self)""" 
 3280         return _IMP_atom.CenterOfMass_clear_caches(self)
 
 3282     def set_name(self, a0):
 
 3283         r"""set_name(CenterOfMass self, std::string a0)""" 
 3284         return _IMP_atom.CenterOfMass_set_name(self, a0)
 
 3287         r"""set_check_level(CenterOfMass self, IMP::CheckLevel a0)""" 
 3288         return _IMP_atom.CenterOfMass_set_check_level(self, a0)
 
 3290     def add_to_derivative(self, a0, a1, a2):
 
 3291         r"""add_to_derivative(CenterOfMass self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 3292         return _IMP_atom.CenterOfMass_add_to_derivative(self, a0, a1, a2)
 
 3294     def set_is_optimized(self, a0, a1):
 
 3295         r"""set_is_optimized(CenterOfMass self, FloatKey a0, bool a1)""" 
 3296         return _IMP_atom.CenterOfMass_set_is_optimized(self, a0, a1)
 
 3298     def get_is_optimized(self, a0):
 
 3299         r"""get_is_optimized(CenterOfMass self, FloatKey a0) -> bool""" 
 3300         return _IMP_atom.CenterOfMass_get_is_optimized(self, a0)
 
 3303         r"""get_check_level(CenterOfMass self) -> IMP::CheckLevel""" 
 3304         return _IMP_atom.CenterOfMass_get_check_level(self)
 
 3306     def __eq__(self, *args):
 
 3308         __eq__(CenterOfMass self, CenterOfMass o) -> bool 
 3309         __eq__(CenterOfMass self, Particle d) -> bool 
 3311         return _IMP_atom.CenterOfMass___eq__(self, *args)
 
 3313     def __ne__(self, *args):
 
 3315         __ne__(CenterOfMass self, CenterOfMass o) -> bool 
 3316         __ne__(CenterOfMass self, Particle d) -> bool 
 3318         return _IMP_atom.CenterOfMass___ne__(self, *args)
 
 3320     def __le__(self, *args):
 
 3322         __le__(CenterOfMass self, CenterOfMass o) -> bool 
 3323         __le__(CenterOfMass self, Particle d) -> bool 
 3325         return _IMP_atom.CenterOfMass___le__(self, *args)
 
 3327     def __lt__(self, *args):
 
 3329         __lt__(CenterOfMass self, CenterOfMass o) -> bool 
 3330         __lt__(CenterOfMass self, Particle d) -> bool 
 3332         return _IMP_atom.CenterOfMass___lt__(self, *args)
 
 3334     def __ge__(self, *args):
 
 3336         __ge__(CenterOfMass self, CenterOfMass o) -> bool 
 3337         __ge__(CenterOfMass self, Particle d) -> bool 
 3339         return _IMP_atom.CenterOfMass___ge__(self, *args)
 
 3341     def __gt__(self, *args):
 
 3343         __gt__(CenterOfMass self, CenterOfMass o) -> bool 
 3344         __gt__(CenterOfMass self, Particle d) -> bool 
 3346         return _IMP_atom.CenterOfMass___gt__(self, *args)
 
 3349         r"""__hash__(CenterOfMass self) -> std::size_t""" 
 3350         return _IMP_atom.CenterOfMass___hash__(self)
 
 3353         r"""__str__(CenterOfMass self) -> std::string""" 
 3354         return _IMP_atom.CenterOfMass___str__(self)
 
 3357         r"""__repr__(CenterOfMass self) -> std::string""" 
 3358         return _IMP_atom.CenterOfMass___repr__(self)
 
 3360     def _get_as_binary(self):
 
 3361         r"""_get_as_binary(CenterOfMass self) -> PyObject *""" 
 3362         return _IMP_atom.CenterOfMass__get_as_binary(self)
 
 3364     def _set_from_binary(self, p):
 
 3365         r"""_set_from_binary(CenterOfMass self, PyObject * p)""" 
 3366         return _IMP_atom.CenterOfMass__set_from_binary(self, p)
 
 3368     def __getstate__(self):
 
 3369         p = self._get_as_binary()
 
 3370         if len(self.__dict__) > 1:
 
 3371             d = self.__dict__.copy()
 
 3376     def __setstate__(self, p):
 
 3377         if not hasattr(self, 
'this'):
 
 3379         if isinstance(p, tuple):
 
 3381             self.__dict__.update(d)
 
 3382         return self._set_from_binary(p)
 
 3384     __swig_destroy__ = _IMP_atom.delete_CenterOfMass
 
 3387 _IMP_atom.CenterOfMass_swigregister(CenterOfMass)
 
 3389     r"""Proxy of C++ IMP::atom::CoverBond class.""" 
 3391     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 3394         r"""__init__(CoverBond self) -> CoverBond""" 
 3395         _IMP_atom.CoverBond_swiginit(self, _IMP_atom.new_CoverBond())
 
 3397     def do_get_inputs(self, m, pis):
 
 3398         r"""do_get_inputs(CoverBond self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 3399         return _IMP_atom.CoverBond_do_get_inputs(self, m, pis)
 
 3401     def do_get_outputs(self, m, pis):
 
 3402         r"""do_get_outputs(CoverBond self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 3403         return _IMP_atom.CoverBond_do_get_outputs(self, m, pis)
 
 3405     def get_version_info(self):
 
 3406         r"""get_version_info(CoverBond self) -> VersionInfo""" 
 3407         return _IMP_atom.CoverBond_get_version_info(self)
 
 3408     __swig_destroy__ = _IMP_atom.delete_CoverBond
 
 3411         r"""__str__(CoverBond self) -> std::string""" 
 3412         return _IMP_atom.CoverBond___str__(self)
 
 3415         r"""__repr__(CoverBond self) -> std::string""" 
 3416         return _IMP_atom.CoverBond___repr__(self)
 
 3420        return _object_cast_to_CoverBond(o)
 
 3424 _IMP_atom.CoverBond_swigregister(CoverBond)
 
 3426     r"""Proxy of C++ IMP::atom::Simulator class.""" 
 3428     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 3430     def __init__(self, *args):
 
 3431         r"""__init__(Simulator self, Model m, std::string name="Simulator %1%", double wave_factor=1.0) -> Simulator""" 
 3432         if self.__class__ == Simulator:
 
 3436         _IMP_atom.Simulator_swiginit(self, _IMP_atom.new_Simulator(_self, *args))
 
 3438         if self.__class__ != Simulator:
 
 3439             _director_objects.register(self)
 
 3444     def simulate(self, time_in_fs):
 
 3445         r"""simulate(Simulator self, double time_in_fs) -> double""" 
 3446         return _IMP_atom.Simulator_simulate(self, time_in_fs)
 
 3448     def simulate_wave(self, time_in_fs, max_time_step_factor=10.0, base=1.5):
 
 3449         r"""simulate_wave(Simulator self, double time_in_fs, double max_time_step_factor=10.0, double base=1.5) -> double""" 
 3450         return _IMP_atom.Simulator_simulate_wave(self, time_in_fs, max_time_step_factor, base)
 
 3452     def get_temperature(self):
 
 3453         r"""get_temperature(Simulator self) -> double""" 
 3454         return _IMP_atom.Simulator_get_temperature(self)
 
 3456     def set_temperature(self, d):
 
 3457         r"""set_temperature(Simulator self, double d)""" 
 3458         return _IMP_atom.Simulator_set_temperature(self, d)
 
 3460     def set_maximum_time_step(self, ts):
 
 3461         r"""set_maximum_time_step(Simulator self, double ts)""" 
 3462         return _IMP_atom.Simulator_set_maximum_time_step(self, ts)
 
 3464     def get_maximum_time_step(self):
 
 3465         r"""get_maximum_time_step(Simulator self) -> double""" 
 3466         return _IMP_atom.Simulator_get_maximum_time_step(self)
 
 3468     def get_last_time_step(self):
 
 3469         r"""get_last_time_step(Simulator self) -> double""" 
 3470         return _IMP_atom.Simulator_get_last_time_step(self)
 
 3472     def set_time_step(self, ts):
 
 3473         r"""set_time_step(Simulator self, double ts)""" 
 3474         return _IMP_atom.Simulator_set_time_step(self, ts)
 
 3477         r"""get_kt(Simulator self) -> double""" 
 3478         return _IMP_atom.Simulator_get_kt(self)
 
 3480     def get_current_time(self):
 
 3481         r"""get_current_time(Simulator self) -> double""" 
 3482         return _IMP_atom.Simulator_get_current_time(self)
 
 3484     def set_current_time(self, ct):
 
 3485         r"""set_current_time(Simulator self, double ct)""" 
 3486         return _IMP_atom.Simulator_set_current_time(self, ct)
 
 3488     def get_simulation_particles(self):
 
 3489         r"""get_simulation_particles(Simulator self) -> IMP::ParticlesTemp""" 
 3490         return _IMP_atom.Simulator_get_simulation_particles(self)
 
 3492     def get_simulation_particle_indexes(self):
 
 3493         r"""get_simulation_particle_indexes(Simulator self) -> IMP::ParticleIndexes""" 
 3494         return _IMP_atom.Simulator_get_simulation_particle_indexes(self)
 
 3495     def __get_particles(self):  
return IMP._list_util.VarList(getdimfunc=self.get_number_of_particles,  getfunc=self.get_particle, erasefunc=self.erase_particle,  appendfunc=self.add_particle, extendfunc=self.add_particles,  clearfunc=self.clear_particles, indexfunc=self._python_index_particle)  
 
 3496     def __set_particles(self, obj): IMP._list_util.set_varlist(self.particles, obj)  
 
 3497     def __del_particles(self): IMP._list_util.del_varlist(self.particles)       
 
 3498     particles = property(__get_particles, __set_particles, __del_particles, doc=
"List of ##ucnames")  
 
 3500     def remove_particle(self, d):
 
 3501         r"""remove_particle(Simulator self, Particle d)""" 
 3502         return _IMP_atom.Simulator_remove_particle(self, d)
 
 3504     def _python_index_particle(self, d, start, stop):
 
 3505         r"""_python_index_particle(Simulator self, Particle d, unsigned int start, unsigned int stop) -> unsigned int""" 
 3506         return _IMP_atom.Simulator__python_index_particle(self, d, start, stop)
 
 3508     def remove_particles(self, d):
 
 3509         r"""remove_particles(Simulator self, IMP::Particles const & d)""" 
 3510         return _IMP_atom.Simulator_remove_particles(self, d)
 
 3512     def set_particles(self, ps):
 
 3513         r"""set_particles(Simulator self, IMP::Particles const & ps)""" 
 3514         return _IMP_atom.Simulator_set_particles(self, ps)
 
 3516     def set_particles_order(self, objs):
 
 3517         r"""set_particles_order(Simulator self, IMP::Particles const & objs)""" 
 3518         return _IMP_atom.Simulator_set_particles_order(self, objs)
 
 3521         r"""add_particle(Simulator self, Particle obj) -> unsigned int""" 
 3522         return _IMP_atom.Simulator_add_particle(self, obj)
 
 3525         r"""add_particles(Simulator self, IMP::Particles const & objs)""" 
 3526         return _IMP_atom.Simulator_add_particles(self, objs)
 
 3528     def clear_particles(self):
 
 3529         r"""clear_particles(Simulator self)""" 
 3530         return _IMP_atom.Simulator_clear_particles(self)
 
 3532     def get_number_of_particles(self):
 
 3533         r"""get_number_of_particles(Simulator self) -> unsigned int""" 
 3534         return _IMP_atom.Simulator_get_number_of_particles(self)
 
 3536     def get_has_particles(self):
 
 3537         r"""get_has_particles(Simulator self) -> bool""" 
 3538         return _IMP_atom.Simulator_get_has_particles(self)
 
 3540     def get_particle(self, i):
 
 3541         r"""get_particle(Simulator self, unsigned int i) -> Particle""" 
 3542         return _IMP_atom.Simulator_get_particle(self, i)
 
 3545         r"""get_particles(Simulator self) -> IMP::Particles""" 
 3546         return _IMP_atom.Simulator_get_particles(self)
 
 3548     def erase_particle(self, i):
 
 3549         r"""erase_particle(Simulator self, unsigned int i)""" 
 3550         return _IMP_atom.Simulator_erase_particle(self, i)
 
 3552     def reserve_particles(self, sz):
 
 3553         r"""reserve_particles(Simulator self, unsigned int sz)""" 
 3554         return _IMP_atom.Simulator_reserve_particles(self, sz)
 
 3556     def do_optimize(self, max_steps):
 
 3557         r"""do_optimize(Simulator self, unsigned int max_steps) -> IMP::Float""" 
 3558         return _IMP_atom.Simulator_do_optimize(self, max_steps)
 
 3560     def setup(self, arg0):
 
 3561         r"""setup(Simulator self, IMP::ParticleIndexes const & arg0)""" 
 3562         return _IMP_atom.Simulator_setup(self, arg0)
 
 3564     def do_step(self, sc, dt):
 
 3565         r"""do_step(Simulator self, IMP::ParticleIndexes const & sc, double dt) -> double""" 
 3566         return _IMP_atom.Simulator_do_step(self, sc, dt)
 
 3568     def get_is_simulation_particle(self, p):
 
 3569         r"""get_is_simulation_particle(Simulator self, ParticleIndex p) -> bool""" 
 3570         return _IMP_atom.Simulator_get_is_simulation_particle(self, p)
 
 3572     def do_simulate(self, time):
 
 3573         r"""do_simulate(Simulator self, double time) -> double""" 
 3574         return _IMP_atom.Simulator_do_simulate(self, time)
 
 3576     def do_simulate_wave(self, time_in_fs, max_time_step_factor=10.0, base=1.5):
 
 3577         r"""do_simulate_wave(Simulator self, double time_in_fs, double max_time_step_factor=10.0, double base=1.5) -> double""" 
 3578         return _IMP_atom.Simulator_do_simulate_wave(self, time_in_fs, max_time_step_factor, base)
 
 3581         r"""__str__(Simulator self) -> std::string""" 
 3582         return _IMP_atom.Simulator___str__(self)
 
 3585         r"""__repr__(Simulator self) -> std::string""" 
 3586         return _IMP_atom.Simulator___repr__(self)
 
 3590        return _object_cast_to_Simulator(o)
 
 3593     def get_type_name(self):
 
 3594         return self.__class__.__name__
 
 3595     def do_show(self, out):
 
 3597     def get_version_info(self):
 
 3598         if"IMP::atom" == 
"IMP":
 
 3599           return VersionInfo(self.__module__,
 
 3606        return _object_cast_to_Simulator(o)
 
 3608     __swig_destroy__ = _IMP_atom.delete_Simulator
 
 3609     def __disown__(self):
 
 3611         _IMP_atom.disown_Simulator(self)
 
 3612         return weakref.proxy(self)
 
 3614     def do_destroy(self):
 
 3615         r"""do_destroy(Simulator self)""" 
 3616         return _IMP_atom.Simulator_do_destroy(self)
 
 3618     def handle_set_has_required_score_states(self, arg0):
 
 3619         r"""handle_set_has_required_score_states(Simulator self, bool arg0)""" 
 3620         return _IMP_atom.Simulator_handle_set_has_required_score_states(self, arg0)
 
 3622     def do_get_inputs(self):
 
 3623         r"""do_get_inputs(Simulator self) -> IMP::ModelObjectsTemp""" 
 3624         return _IMP_atom.Simulator_do_get_inputs(self)
 
 3626     def do_get_outputs(self):
 
 3627         r"""do_get_outputs(Simulator self) -> IMP::ModelObjectsTemp""" 
 3628         return _IMP_atom.Simulator_do_get_outputs(self)
 
 3630     def do_get_interactions(self):
 
 3631         r"""do_get_interactions(Simulator self) -> IMP::ModelObjectsTemps""" 
 3632         return _IMP_atom.Simulator_do_get_interactions(self)
 
 3635 _IMP_atom.Simulator_swigregister(Simulator)
 
 3636 IMP_ATOM_DEFAULT_BD_RANDOM_POOL_SIZE = _IMP_atom.IMP_ATOM_DEFAULT_BD_RANDOM_POOL_SIZE
 
 3638 class BrownianDynamics(Simulator):
 
 3639     r"""Proxy of C++ IMP::atom::BrownianDynamics class.""" 
 3641     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 3643     def __init__(self, *args):
 
 3644         r"""__init__(BrownianDynamics self, Model m, std::string name="BrownianDynamics%1%", double wave_factor=1.0, unsigned int random_pool_size=10000) -> BrownianDynamics""" 
 3645         _IMP_atom.BrownianDynamics_swiginit(self, _IMP_atom.new_BrownianDynamics(*args))
 
 3647     def set_maximum_move(self, ms_in_A):
 
 3648         r"""set_maximum_move(BrownianDynamics self, double ms_in_A)""" 
 3649         return _IMP_atom.BrownianDynamics_set_maximum_move(self, ms_in_A)
 
 3651     def set_use_stochastic_runge_kutta(self, tf):
 
 3652         r"""set_use_stochastic_runge_kutta(BrownianDynamics self, bool tf)""" 
 3653         return _IMP_atom.BrownianDynamics_set_use_stochastic_runge_kutta(self, tf)
 
 3655     def get_version_info(self):
 
 3656         r"""get_version_info(BrownianDynamics self) -> VersionInfo""" 
 3657         return _IMP_atom.BrownianDynamics_get_version_info(self)
 
 3658     __swig_destroy__ = _IMP_atom.delete_BrownianDynamics
 
 3661         r"""__str__(BrownianDynamics self) -> std::string""" 
 3662         return _IMP_atom.BrownianDynamics___str__(self)
 
 3665         r"""__repr__(BrownianDynamics self) -> std::string""" 
 3666         return _IMP_atom.BrownianDynamics___repr__(self)
 
 3670        return _object_cast_to_BrownianDynamics(o)
 
 3674 _IMP_atom.BrownianDynamics_swigregister(BrownianDynamics)
 
 3677     r"""get_maximum_time_step_estimate(BrownianDynamics bd) -> double""" 
 3678     return _IMP_atom.get_maximum_time_step_estimate(bd)
 
 3680 def get_harmonic_sigma(D, f):
 
 3681     r"""get_harmonic_sigma(double D, double f) -> double""" 
 3682     return _IMP_atom.get_harmonic_sigma(D, f)
 
 3683 class BrownianDynamicsTAMD(BrownianDynamics):
 
 3684     r"""Proxy of C++ IMP::atom::BrownianDynamicsTAMD class.""" 
 3686     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 3688     def __init__(self, *args):
 
 3689         r"""__init__(BrownianDynamicsTAMD self, Model m, std::string name="BrownianDynamicsTAMD%1%", double wave_factor=1.0) -> BrownianDynamicsTAMD""" 
 3690         _IMP_atom.BrownianDynamicsTAMD_swiginit(self, _IMP_atom.new_BrownianDynamicsTAMD(*args))
 
 3693         r"""__str__(BrownianDynamicsTAMD self) -> std::string""" 
 3694         return _IMP_atom.BrownianDynamicsTAMD___str__(self)
 
 3697         r"""__repr__(BrownianDynamicsTAMD self) -> std::string""" 
 3698         return _IMP_atom.BrownianDynamicsTAMD___repr__(self)
 
 3702        return _object_cast_to_BrownianDynamicsTAMD(o)
 
 3704     __swig_destroy__ = _IMP_atom.delete_BrownianDynamicsTAMD
 
 3707 _IMP_atom.BrownianDynamicsTAMD_swigregister(BrownianDynamicsTAMD)
 
 3709     r"""Proxy of C++ IMP::atom::Diffusion class.""" 
 3711     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 3713     def __init__(self, *args):
 
 3715         __init__(Diffusion self) -> Diffusion 
 3716         __init__(Diffusion self, Model m, ParticleIndex id) -> Diffusion 
 3717         __init__(Diffusion self, _ParticleAdaptor d) -> Diffusion 
 3719         _IMP_atom.Diffusion_swiginit(self, _IMP_atom.new_Diffusion(*args))
 
 3721     def show(self, *args):
 
 3722         r"""show(Diffusion self, _ostream out=std::cout)""" 
 3723         return _IMP_atom.Diffusion_show(self, *args)
 
 3726     def setup_particle(*args):
 
 3728         setup_particle(Model m, ParticleIndex pi, IMP::Float D) -> Diffusion 
 3729         setup_particle(_ParticleAdaptor pa, IMP::Float D) -> Diffusion 
 3730         setup_particle(Model m, ParticleIndex pi, Vector3D v, IMP::Float D) -> Diffusion 
 3731         setup_particle(_ParticleAdaptor pa, Vector3D v, IMP::Float D) -> Diffusion 
 3732         setup_particle(Model m, ParticleIndex pi) -> Diffusion 
 3733         setup_particle(_ParticleAdaptor pa) -> Diffusion 
 3735         return _IMP_atom.Diffusion_setup_particle(*args)
 
 3738     def get_is_setup(*args):
 
 3740         get_is_setup(_ParticleAdaptor p) -> bool 
 3741         get_is_setup(Model m, ParticleIndex p) -> bool 
 3743         return _IMP_atom.Diffusion_get_is_setup(*args)
 
 3745     def set_diffusion_coefficient(self, d):
 
 3746         r"""set_diffusion_coefficient(Diffusion self, double d)""" 
 3747         return _IMP_atom.Diffusion_set_diffusion_coefficient(self, d)
 
 3750         r"""get_diffusion_coefficient(Diffusion self) -> double""" 
 3751         return _IMP_atom.Diffusion_get_diffusion_coefficient(self)
 
 3754     def get_diffusion_coefficient_key():
 
 3755         r"""get_diffusion_coefficient_key() -> FloatKey""" 
 3756         return _IMP_atom.Diffusion_get_diffusion_coefficient_key()
 
 3758     def add_attribute(self, *args):
 
 3760         add_attribute(Diffusion self, FloatKey k, IMP::Float v, bool opt) 
 3761         add_attribute(Diffusion self, FloatKey a0, IMP::Float a1) 
 3762         add_attribute(Diffusion self, IntKey a0, IMP::Int a1) 
 3763         add_attribute(Diffusion self, FloatsKey a0, IMP::Floats a1) 
 3764         add_attribute(Diffusion self, IntsKey a0, IMP::Ints a1) 
 3765         add_attribute(Diffusion self, StringKey a0, IMP::String a1) 
 3766         add_attribute(Diffusion self, ParticleIndexKey a0, Particle a1) 
 3767         add_attribute(Diffusion self, ObjectKey a0, Object a1) 
 3768         add_attribute(Diffusion self, SparseFloatKey a0, IMP::Float a1) 
 3769         add_attribute(Diffusion self, SparseIntKey a0, IMP::Int a1) 
 3770         add_attribute(Diffusion self, SparseStringKey a0, IMP::String a1) 
 3771         add_attribute(Diffusion self, SparseParticleIndexKey a0, ParticleIndex a1) 
 3773         return _IMP_atom.Diffusion_add_attribute(self, *args)
 
 3775     def get_value(self, *args):
 
 3777         get_value(Diffusion self, FloatKey a0) -> IMP::Float 
 3778         get_value(Diffusion self, IntKey a0) -> IMP::Int 
 3779         get_value(Diffusion self, FloatsKey a0) -> IMP::Floats 
 3780         get_value(Diffusion self, IntsKey a0) -> IMP::Ints 
 3781         get_value(Diffusion self, StringKey a0) -> IMP::String 
 3782         get_value(Diffusion self, ParticleIndexKey a0) -> Particle 
 3783         get_value(Diffusion self, ObjectKey a0) -> Object 
 3784         get_value(Diffusion self, SparseFloatKey a0) -> IMP::Float 
 3785         get_value(Diffusion self, SparseIntKey a0) -> IMP::Int 
 3786         get_value(Diffusion self, SparseStringKey a0) -> IMP::String 
 3787         get_value(Diffusion self, SparseParticleIndexKey a0) -> ParticleIndex 
 3789         return _IMP_atom.Diffusion_get_value(self, *args)
 
 3791     def set_value(self, *args):
 
 3793         set_value(Diffusion self, FloatKey a0, IMP::Float a1) 
 3794         set_value(Diffusion self, IntKey a0, IMP::Int a1) 
 3795         set_value(Diffusion self, FloatsKey a0, IMP::Floats a1) 
 3796         set_value(Diffusion self, IntsKey a0, IMP::Ints a1) 
 3797         set_value(Diffusion self, StringKey a0, IMP::String a1) 
 3798         set_value(Diffusion self, ParticleIndexKey a0, Particle a1) 
 3799         set_value(Diffusion self, ObjectKey a0, Object a1) 
 3800         set_value(Diffusion self, SparseFloatKey a0, IMP::Float a1) 
 3801         set_value(Diffusion self, SparseIntKey a0, IMP::Int a1) 
 3802         set_value(Diffusion self, SparseStringKey a0, IMP::String a1) 
 3803         set_value(Diffusion self, SparseParticleIndexKey a0, ParticleIndex a1) 
 3805         return _IMP_atom.Diffusion_set_value(self, *args)
 
 3807     def remove_attribute(self, *args):
 
 3809         remove_attribute(Diffusion self, FloatKey a0) 
 3810         remove_attribute(Diffusion self, IntKey a0) 
 3811         remove_attribute(Diffusion self, FloatsKey a0) 
 3812         remove_attribute(Diffusion self, IntsKey a0) 
 3813         remove_attribute(Diffusion self, StringKey a0) 
 3814         remove_attribute(Diffusion self, ParticleIndexKey a0) 
 3815         remove_attribute(Diffusion self, ObjectKey a0) 
 3816         remove_attribute(Diffusion self, SparseFloatKey a0) 
 3817         remove_attribute(Diffusion self, SparseIntKey a0) 
 3818         remove_attribute(Diffusion self, SparseStringKey a0) 
 3819         remove_attribute(Diffusion self, SparseParticleIndexKey a0) 
 3821         return _IMP_atom.Diffusion_remove_attribute(self, *args)
 
 3823     def has_attribute(self, *args):
 
 3825         has_attribute(Diffusion self, FloatKey a0) -> bool 
 3826         has_attribute(Diffusion self, IntKey a0) -> bool 
 3827         has_attribute(Diffusion self, FloatsKey a0) -> bool 
 3828         has_attribute(Diffusion self, IntsKey a0) -> bool 
 3829         has_attribute(Diffusion self, StringKey a0) -> bool 
 3830         has_attribute(Diffusion self, ParticleIndexKey a0) -> bool 
 3831         has_attribute(Diffusion self, ObjectKey a0) -> bool 
 3832         has_attribute(Diffusion self, SparseFloatKey a0) -> bool 
 3833         has_attribute(Diffusion self, SparseIntKey a0) -> bool 
 3834         has_attribute(Diffusion self, SparseStringKey a0) -> bool 
 3835         has_attribute(Diffusion self, SparseParticleIndexKey a0) -> bool 
 3837         return _IMP_atom.Diffusion_has_attribute(self, *args)
 
 3839     def get_derivative(self, a0):
 
 3840         r"""get_derivative(Diffusion self, FloatKey a0) -> double""" 
 3841         return _IMP_atom.Diffusion_get_derivative(self, a0)
 
 3844         r"""get_name(Diffusion self) -> std::string""" 
 3845         return _IMP_atom.Diffusion_get_name(self)
 
 3847     def clear_caches(self):
 
 3848         r"""clear_caches(Diffusion self)""" 
 3849         return _IMP_atom.Diffusion_clear_caches(self)
 
 3851     def set_name(self, a0):
 
 3852         r"""set_name(Diffusion self, std::string a0)""" 
 3853         return _IMP_atom.Diffusion_set_name(self, a0)
 
 3856         r"""set_check_level(Diffusion self, IMP::CheckLevel a0)""" 
 3857         return _IMP_atom.Diffusion_set_check_level(self, a0)
 
 3859     def add_to_derivative(self, a0, a1, a2):
 
 3860         r"""add_to_derivative(Diffusion self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 3861         return _IMP_atom.Diffusion_add_to_derivative(self, a0, a1, a2)
 
 3863     def set_is_optimized(self, a0, a1):
 
 3864         r"""set_is_optimized(Diffusion self, FloatKey a0, bool a1)""" 
 3865         return _IMP_atom.Diffusion_set_is_optimized(self, a0, a1)
 
 3867     def get_is_optimized(self, a0):
 
 3868         r"""get_is_optimized(Diffusion self, FloatKey a0) -> bool""" 
 3869         return _IMP_atom.Diffusion_get_is_optimized(self, a0)
 
 3872         r"""get_check_level(Diffusion self) -> IMP::CheckLevel""" 
 3873         return _IMP_atom.Diffusion_get_check_level(self)
 
 3875     def __eq__(self, *args):
 
 3877         __eq__(Diffusion self, Diffusion o) -> bool 
 3878         __eq__(Diffusion self, Particle d) -> bool 
 3880         return _IMP_atom.Diffusion___eq__(self, *args)
 
 3882     def __ne__(self, *args):
 
 3884         __ne__(Diffusion self, Diffusion o) -> bool 
 3885         __ne__(Diffusion self, Particle d) -> bool 
 3887         return _IMP_atom.Diffusion___ne__(self, *args)
 
 3889     def __le__(self, *args):
 
 3891         __le__(Diffusion self, Diffusion o) -> bool 
 3892         __le__(Diffusion self, Particle d) -> bool 
 3894         return _IMP_atom.Diffusion___le__(self, *args)
 
 3896     def __lt__(self, *args):
 
 3898         __lt__(Diffusion self, Diffusion o) -> bool 
 3899         __lt__(Diffusion self, Particle d) -> bool 
 3901         return _IMP_atom.Diffusion___lt__(self, *args)
 
 3903     def __ge__(self, *args):
 
 3905         __ge__(Diffusion self, Diffusion o) -> bool 
 3906         __ge__(Diffusion self, Particle d) -> bool 
 3908         return _IMP_atom.Diffusion___ge__(self, *args)
 
 3910     def __gt__(self, *args):
 
 3912         __gt__(Diffusion self, Diffusion o) -> bool 
 3913         __gt__(Diffusion self, Particle d) -> bool 
 3915         return _IMP_atom.Diffusion___gt__(self, *args)
 
 3918         r"""__hash__(Diffusion self) -> std::size_t""" 
 3919         return _IMP_atom.Diffusion___hash__(self)
 
 3922         r"""__str__(Diffusion self) -> std::string""" 
 3923         return _IMP_atom.Diffusion___str__(self)
 
 3926         r"""__repr__(Diffusion self) -> std::string""" 
 3927         return _IMP_atom.Diffusion___repr__(self)
 
 3929     def _get_as_binary(self):
 
 3930         r"""_get_as_binary(Diffusion self) -> PyObject *""" 
 3931         return _IMP_atom.Diffusion__get_as_binary(self)
 
 3933     def _set_from_binary(self, p):
 
 3934         r"""_set_from_binary(Diffusion self, PyObject * p)""" 
 3935         return _IMP_atom.Diffusion__set_from_binary(self, p)
 
 3937     def __getstate__(self):
 
 3938         p = self._get_as_binary()
 
 3939         if len(self.__dict__) > 1:
 
 3940             d = self.__dict__.copy()
 
 3945     def __setstate__(self, p):
 
 3946         if not hasattr(self, 
'this'):
 
 3948         if isinstance(p, tuple):
 
 3950             self.__dict__.update(d)
 
 3951         return self._set_from_binary(p)
 
 3953     __swig_destroy__ = _IMP_atom.delete_Diffusion
 
 3956 _IMP_atom.Diffusion_swigregister(Diffusion)
 
 3958 def get_diffusion_coefficient_from_cm2_per_second(din):
 
 3959     r"""get_diffusion_coefficient_from_cm2_per_second(double din) -> double""" 
 3960     return _IMP_atom.get_diffusion_coefficient_from_cm2_per_second(din)
 
 3961 class RigidBodyDiffusion(Diffusion):
 
 3962     r"""Proxy of C++ IMP::atom::RigidBodyDiffusion class.""" 
 3964     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 3966     def __init__(self, *args):
 
 3968         __init__(RigidBodyDiffusion self) -> RigidBodyDiffusion 
 3969         __init__(RigidBodyDiffusion self, Model m, ParticleIndex id) -> RigidBodyDiffusion 
 3970         __init__(RigidBodyDiffusion self, _ParticleAdaptor d) -> RigidBodyDiffusion 
 3972         _IMP_atom.RigidBodyDiffusion_swiginit(self, _IMP_atom.new_RigidBodyDiffusion(*args))
 
 3974     def show(self, *args):
 
 3975         r"""show(RigidBodyDiffusion self, _ostream out=std::cout)""" 
 3976         return _IMP_atom.RigidBodyDiffusion_show(self, *args)
 
 3979     def setup_particle(*args):
 
 3981         setup_particle(Model m, ParticleIndex pi) -> RigidBodyDiffusion 
 3982         setup_particle(_ParticleAdaptor pa) -> RigidBodyDiffusion 
 3984         return _IMP_atom.RigidBodyDiffusion_setup_particle(*args)
 
 3987         r"""get_rotational_diffusion_coefficient(RigidBodyDiffusion self) -> double""" 
 3988         return _IMP_atom.RigidBodyDiffusion_get_rotational_diffusion_coefficient(self)
 
 3990     def set_rotational_diffusion_coefficient(self, d):
 
 3991         r"""set_rotational_diffusion_coefficient(RigidBodyDiffusion self, double d)""" 
 3992         return _IMP_atom.RigidBodyDiffusion_set_rotational_diffusion_coefficient(self, d)
 
 3995     def get_is_setup(*args):
 
 3997         get_is_setup(_ParticleAdaptor p) -> bool 
 3998         get_is_setup(Model m, ParticleIndex p) -> bool 
 4000         return _IMP_atom.RigidBodyDiffusion_get_is_setup(*args)
 
 4003     def get_rotational_diffusion_coefficient_key():
 
 4004         r"""get_rotational_diffusion_coefficient_key() -> FloatKey""" 
 4005         return _IMP_atom.RigidBodyDiffusion_get_rotational_diffusion_coefficient_key()
 
 4007     def add_attribute(self, *args):
 
 4009         add_attribute(RigidBodyDiffusion self, FloatKey k, IMP::Float v, bool opt) 
 4010         add_attribute(RigidBodyDiffusion self, FloatKey a0, IMP::Float a1) 
 4011         add_attribute(RigidBodyDiffusion self, IntKey a0, IMP::Int a1) 
 4012         add_attribute(RigidBodyDiffusion self, FloatsKey a0, IMP::Floats a1) 
 4013         add_attribute(RigidBodyDiffusion self, IntsKey a0, IMP::Ints a1) 
 4014         add_attribute(RigidBodyDiffusion self, StringKey a0, IMP::String a1) 
 4015         add_attribute(RigidBodyDiffusion self, ParticleIndexKey a0, Particle a1) 
 4016         add_attribute(RigidBodyDiffusion self, ObjectKey a0, Object a1) 
 4017         add_attribute(RigidBodyDiffusion self, SparseFloatKey a0, IMP::Float a1) 
 4018         add_attribute(RigidBodyDiffusion self, SparseIntKey a0, IMP::Int a1) 
 4019         add_attribute(RigidBodyDiffusion self, SparseStringKey a0, IMP::String a1) 
 4020         add_attribute(RigidBodyDiffusion self, SparseParticleIndexKey a0, ParticleIndex a1) 
 4022         return _IMP_atom.RigidBodyDiffusion_add_attribute(self, *args)
 
 4024     def get_value(self, *args):
 
 4026         get_value(RigidBodyDiffusion self, FloatKey a0) -> IMP::Float 
 4027         get_value(RigidBodyDiffusion self, IntKey a0) -> IMP::Int 
 4028         get_value(RigidBodyDiffusion self, FloatsKey a0) -> IMP::Floats 
 4029         get_value(RigidBodyDiffusion self, IntsKey a0) -> IMP::Ints 
 4030         get_value(RigidBodyDiffusion self, StringKey a0) -> IMP::String 
 4031         get_value(RigidBodyDiffusion self, ParticleIndexKey a0) -> Particle 
 4032         get_value(RigidBodyDiffusion self, ObjectKey a0) -> Object 
 4033         get_value(RigidBodyDiffusion self, SparseFloatKey a0) -> IMP::Float 
 4034         get_value(RigidBodyDiffusion self, SparseIntKey a0) -> IMP::Int 
 4035         get_value(RigidBodyDiffusion self, SparseStringKey a0) -> IMP::String 
 4036         get_value(RigidBodyDiffusion self, SparseParticleIndexKey a0) -> ParticleIndex 
 4038         return _IMP_atom.RigidBodyDiffusion_get_value(self, *args)
 
 4040     def set_value(self, *args):
 
 4042         set_value(RigidBodyDiffusion self, FloatKey a0, IMP::Float a1) 
 4043         set_value(RigidBodyDiffusion self, IntKey a0, IMP::Int a1) 
 4044         set_value(RigidBodyDiffusion self, FloatsKey a0, IMP::Floats a1) 
 4045         set_value(RigidBodyDiffusion self, IntsKey a0, IMP::Ints a1) 
 4046         set_value(RigidBodyDiffusion self, StringKey a0, IMP::String a1) 
 4047         set_value(RigidBodyDiffusion self, ParticleIndexKey a0, Particle a1) 
 4048         set_value(RigidBodyDiffusion self, ObjectKey a0, Object a1) 
 4049         set_value(RigidBodyDiffusion self, SparseFloatKey a0, IMP::Float a1) 
 4050         set_value(RigidBodyDiffusion self, SparseIntKey a0, IMP::Int a1) 
 4051         set_value(RigidBodyDiffusion self, SparseStringKey a0, IMP::String a1) 
 4052         set_value(RigidBodyDiffusion self, SparseParticleIndexKey a0, ParticleIndex a1) 
 4054         return _IMP_atom.RigidBodyDiffusion_set_value(self, *args)
 
 4056     def remove_attribute(self, *args):
 
 4058         remove_attribute(RigidBodyDiffusion self, FloatKey a0) 
 4059         remove_attribute(RigidBodyDiffusion self, IntKey a0) 
 4060         remove_attribute(RigidBodyDiffusion self, FloatsKey a0) 
 4061         remove_attribute(RigidBodyDiffusion self, IntsKey a0) 
 4062         remove_attribute(RigidBodyDiffusion self, StringKey a0) 
 4063         remove_attribute(RigidBodyDiffusion self, ParticleIndexKey a0) 
 4064         remove_attribute(RigidBodyDiffusion self, ObjectKey a0) 
 4065         remove_attribute(RigidBodyDiffusion self, SparseFloatKey a0) 
 4066         remove_attribute(RigidBodyDiffusion self, SparseIntKey a0) 
 4067         remove_attribute(RigidBodyDiffusion self, SparseStringKey a0) 
 4068         remove_attribute(RigidBodyDiffusion self, SparseParticleIndexKey a0) 
 4070         return _IMP_atom.RigidBodyDiffusion_remove_attribute(self, *args)
 
 4072     def has_attribute(self, *args):
 
 4074         has_attribute(RigidBodyDiffusion self, FloatKey a0) -> bool 
 4075         has_attribute(RigidBodyDiffusion self, IntKey a0) -> bool 
 4076         has_attribute(RigidBodyDiffusion self, FloatsKey a0) -> bool 
 4077         has_attribute(RigidBodyDiffusion self, IntsKey a0) -> bool 
 4078         has_attribute(RigidBodyDiffusion self, StringKey a0) -> bool 
 4079         has_attribute(RigidBodyDiffusion self, ParticleIndexKey a0) -> bool 
 4080         has_attribute(RigidBodyDiffusion self, ObjectKey a0) -> bool 
 4081         has_attribute(RigidBodyDiffusion self, SparseFloatKey a0) -> bool 
 4082         has_attribute(RigidBodyDiffusion self, SparseIntKey a0) -> bool 
 4083         has_attribute(RigidBodyDiffusion self, SparseStringKey a0) -> bool 
 4084         has_attribute(RigidBodyDiffusion self, SparseParticleIndexKey a0) -> bool 
 4086         return _IMP_atom.RigidBodyDiffusion_has_attribute(self, *args)
 
 4088     def get_derivative(self, a0):
 
 4089         r"""get_derivative(RigidBodyDiffusion self, FloatKey a0) -> double""" 
 4090         return _IMP_atom.RigidBodyDiffusion_get_derivative(self, a0)
 
 4093         r"""get_name(RigidBodyDiffusion self) -> std::string""" 
 4094         return _IMP_atom.RigidBodyDiffusion_get_name(self)
 
 4096     def clear_caches(self):
 
 4097         r"""clear_caches(RigidBodyDiffusion self)""" 
 4098         return _IMP_atom.RigidBodyDiffusion_clear_caches(self)
 
 4100     def set_name(self, a0):
 
 4101         r"""set_name(RigidBodyDiffusion self, std::string a0)""" 
 4102         return _IMP_atom.RigidBodyDiffusion_set_name(self, a0)
 
 4105         r"""set_check_level(RigidBodyDiffusion self, IMP::CheckLevel a0)""" 
 4106         return _IMP_atom.RigidBodyDiffusion_set_check_level(self, a0)
 
 4108     def add_to_derivative(self, a0, a1, a2):
 
 4109         r"""add_to_derivative(RigidBodyDiffusion self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 4110         return _IMP_atom.RigidBodyDiffusion_add_to_derivative(self, a0, a1, a2)
 
 4112     def set_is_optimized(self, a0, a1):
 
 4113         r"""set_is_optimized(RigidBodyDiffusion self, FloatKey a0, bool a1)""" 
 4114         return _IMP_atom.RigidBodyDiffusion_set_is_optimized(self, a0, a1)
 
 4116     def get_is_optimized(self, a0):
 
 4117         r"""get_is_optimized(RigidBodyDiffusion self, FloatKey a0) -> bool""" 
 4118         return _IMP_atom.RigidBodyDiffusion_get_is_optimized(self, a0)
 
 4121         r"""get_check_level(RigidBodyDiffusion self) -> IMP::CheckLevel""" 
 4122         return _IMP_atom.RigidBodyDiffusion_get_check_level(self)
 
 4124     def __eq__(self, *args):
 
 4126         __eq__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool 
 4127         __eq__(RigidBodyDiffusion self, Particle d) -> bool 
 4129         return _IMP_atom.RigidBodyDiffusion___eq__(self, *args)
 
 4131     def __ne__(self, *args):
 
 4133         __ne__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool 
 4134         __ne__(RigidBodyDiffusion self, Particle d) -> bool 
 4136         return _IMP_atom.RigidBodyDiffusion___ne__(self, *args)
 
 4138     def __le__(self, *args):
 
 4140         __le__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool 
 4141         __le__(RigidBodyDiffusion self, Particle d) -> bool 
 4143         return _IMP_atom.RigidBodyDiffusion___le__(self, *args)
 
 4145     def __lt__(self, *args):
 
 4147         __lt__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool 
 4148         __lt__(RigidBodyDiffusion self, Particle d) -> bool 
 4150         return _IMP_atom.RigidBodyDiffusion___lt__(self, *args)
 
 4152     def __ge__(self, *args):
 
 4154         __ge__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool 
 4155         __ge__(RigidBodyDiffusion self, Particle d) -> bool 
 4157         return _IMP_atom.RigidBodyDiffusion___ge__(self, *args)
 
 4159     def __gt__(self, *args):
 
 4161         __gt__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool 
 4162         __gt__(RigidBodyDiffusion self, Particle d) -> bool 
 4164         return _IMP_atom.RigidBodyDiffusion___gt__(self, *args)
 
 4167         r"""__hash__(RigidBodyDiffusion self) -> std::size_t""" 
 4168         return _IMP_atom.RigidBodyDiffusion___hash__(self)
 
 4171         r"""__str__(RigidBodyDiffusion self) -> std::string""" 
 4172         return _IMP_atom.RigidBodyDiffusion___str__(self)
 
 4175         r"""__repr__(RigidBodyDiffusion self) -> std::string""" 
 4176         return _IMP_atom.RigidBodyDiffusion___repr__(self)
 
 4178     def _get_as_binary(self):
 
 4179         r"""_get_as_binary(RigidBodyDiffusion self) -> PyObject *""" 
 4180         return _IMP_atom.RigidBodyDiffusion__get_as_binary(self)
 
 4182     def _set_from_binary(self, p):
 
 4183         r"""_set_from_binary(RigidBodyDiffusion self, PyObject * p)""" 
 4184         return _IMP_atom.RigidBodyDiffusion__set_from_binary(self, p)
 
 4186     def __getstate__(self):
 
 4187         p = self._get_as_binary()
 
 4188         if len(self.__dict__) > 1:
 
 4189             d = self.__dict__.copy()
 
 4194     def __setstate__(self, p):
 
 4195         if not hasattr(self, 
'this'):
 
 4197         if isinstance(p, tuple):
 
 4199             self.__dict__.update(d)
 
 4200         return self._set_from_binary(p)
 
 4202     __swig_destroy__ = _IMP_atom.delete_RigidBodyDiffusion
 
 4205 _IMP_atom.RigidBodyDiffusion_swigregister(RigidBodyDiffusion)
 
 4207     r"""Proxy of C++ IMP::atom::TAMDParticle class.""" 
 4209     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 4211     def __init__(self, *args):
 
 4213         __init__(TAMDParticle self) -> TAMDParticle 
 4214         __init__(TAMDParticle self, Model m, ParticleIndex id) -> TAMDParticle 
 4215         __init__(TAMDParticle self, _ParticleAdaptor d) -> TAMDParticle 
 4217         _IMP_atom.TAMDParticle_swiginit(self, _IMP_atom.new_TAMDParticle(*args))
 
 4219     def show(self, *args):
 
 4220         r"""show(TAMDParticle self, _ostream out=std::cout)""" 
 4221         return _IMP_atom.TAMDParticle_show(self, *args)
 
 4224     def setup_particle(*args):
 
 4226         setup_particle(Model m, ParticleIndex pi, ParticleIndex pi_ref, IMP::Float tsf, IMP::Float fsf) -> TAMDParticle 
 4227         setup_particle(_ParticleAdaptor pa, ParticleIndex pi_ref, IMP::Float tsf, IMP::Float fsf) -> TAMDParticle 
 4228         setup_particle(Model m, ParticleIndex pi, Particle p_ref, IMP::Float tsf, IMP::Float fsf) -> TAMDParticle 
 4229         setup_particle(_ParticleAdaptor pa, Particle p_ref, IMP::Float tsf, IMP::Float fsf) -> TAMDParticle 
 4231         return _IMP_atom.TAMDParticle_setup_particle(*args)
 
 4234     def get_is_setup(*args):
 
 4236         get_is_setup(_ParticleAdaptor p) -> bool 
 4237         get_is_setup(Model m, ParticleIndex p) -> bool 
 4239         return _IMP_atom.TAMDParticle_get_is_setup(*args)
 
 4241     def get_reference_particle_index(self):
 
 4242         r"""get_reference_particle_index(TAMDParticle self) -> ParticleIndex""" 
 4243         return _IMP_atom.TAMDParticle_get_reference_particle_index(self)
 
 4245     def set_temperature_scale_factor(self, tsf):
 
 4246         r"""set_temperature_scale_factor(TAMDParticle self, float tsf)""" 
 4247         return _IMP_atom.TAMDParticle_set_temperature_scale_factor(self, tsf)
 
 4249     def get_temperature_scale_factor(self):
 
 4250         r"""get_temperature_scale_factor(TAMDParticle self) -> double""" 
 4251         return _IMP_atom.TAMDParticle_get_temperature_scale_factor(self)
 
 4253     def set_friction_scale_factor(self, tsf):
 
 4254         r"""set_friction_scale_factor(TAMDParticle self, float tsf)""" 
 4255         return _IMP_atom.TAMDParticle_set_friction_scale_factor(self, tsf)
 
 4257     def get_friction_scale_factor(self):
 
 4258         r"""get_friction_scale_factor(TAMDParticle self) -> double""" 
 4259         return _IMP_atom.TAMDParticle_get_friction_scale_factor(self)
 
 4261     def update_coordinates_from_ref(self):
 
 4262         r"""update_coordinates_from_ref(TAMDParticle self)""" 
 4263         return _IMP_atom.TAMDParticle_update_coordinates_from_ref(self)
 
 4266     def get_temperature_scale_factor_key():
 
 4267         r"""get_temperature_scale_factor_key() -> FloatKey""" 
 4268         return _IMP_atom.TAMDParticle_get_temperature_scale_factor_key()
 
 4271     def get_friction_scale_factor_key():
 
 4272         r"""get_friction_scale_factor_key() -> FloatKey""" 
 4273         return _IMP_atom.TAMDParticle_get_friction_scale_factor_key()
 
 4276     def get_reference_particle_index_key():
 
 4277         r"""get_reference_particle_index_key() -> ParticleIndexKey""" 
 4278         return _IMP_atom.TAMDParticle_get_reference_particle_index_key()
 
 4280     def add_attribute(self, *args):
 
 4282         add_attribute(TAMDParticle self, FloatKey k, IMP::Float v, bool opt) 
 4283         add_attribute(TAMDParticle self, FloatKey a0, IMP::Float a1) 
 4284         add_attribute(TAMDParticle self, IntKey a0, IMP::Int a1) 
 4285         add_attribute(TAMDParticle self, FloatsKey a0, IMP::Floats a1) 
 4286         add_attribute(TAMDParticle self, IntsKey a0, IMP::Ints a1) 
 4287         add_attribute(TAMDParticle self, StringKey a0, IMP::String a1) 
 4288         add_attribute(TAMDParticle self, ParticleIndexKey a0, Particle a1) 
 4289         add_attribute(TAMDParticle self, ObjectKey a0, Object a1) 
 4290         add_attribute(TAMDParticle self, SparseFloatKey a0, IMP::Float a1) 
 4291         add_attribute(TAMDParticle self, SparseIntKey a0, IMP::Int a1) 
 4292         add_attribute(TAMDParticle self, SparseStringKey a0, IMP::String a1) 
 4293         add_attribute(TAMDParticle self, SparseParticleIndexKey a0, ParticleIndex a1) 
 4295         return _IMP_atom.TAMDParticle_add_attribute(self, *args)
 
 4297     def get_value(self, *args):
 
 4299         get_value(TAMDParticle self, FloatKey a0) -> IMP::Float 
 4300         get_value(TAMDParticle self, IntKey a0) -> IMP::Int 
 4301         get_value(TAMDParticle self, FloatsKey a0) -> IMP::Floats 
 4302         get_value(TAMDParticle self, IntsKey a0) -> IMP::Ints 
 4303         get_value(TAMDParticle self, StringKey a0) -> IMP::String 
 4304         get_value(TAMDParticle self, ParticleIndexKey a0) -> Particle 
 4305         get_value(TAMDParticle self, ObjectKey a0) -> Object 
 4306         get_value(TAMDParticle self, SparseFloatKey a0) -> IMP::Float 
 4307         get_value(TAMDParticle self, SparseIntKey a0) -> IMP::Int 
 4308         get_value(TAMDParticle self, SparseStringKey a0) -> IMP::String 
 4309         get_value(TAMDParticle self, SparseParticleIndexKey a0) -> ParticleIndex 
 4311         return _IMP_atom.TAMDParticle_get_value(self, *args)
 
 4313     def set_value(self, *args):
 
 4315         set_value(TAMDParticle self, FloatKey a0, IMP::Float a1) 
 4316         set_value(TAMDParticle self, IntKey a0, IMP::Int a1) 
 4317         set_value(TAMDParticle self, FloatsKey a0, IMP::Floats a1) 
 4318         set_value(TAMDParticle self, IntsKey a0, IMP::Ints a1) 
 4319         set_value(TAMDParticle self, StringKey a0, IMP::String a1) 
 4320         set_value(TAMDParticle self, ParticleIndexKey a0, Particle a1) 
 4321         set_value(TAMDParticle self, ObjectKey a0, Object a1) 
 4322         set_value(TAMDParticle self, SparseFloatKey a0, IMP::Float a1) 
 4323         set_value(TAMDParticle self, SparseIntKey a0, IMP::Int a1) 
 4324         set_value(TAMDParticle self, SparseStringKey a0, IMP::String a1) 
 4325         set_value(TAMDParticle self, SparseParticleIndexKey a0, ParticleIndex a1) 
 4327         return _IMP_atom.TAMDParticle_set_value(self, *args)
 
 4329     def remove_attribute(self, *args):
 
 4331         remove_attribute(TAMDParticle self, FloatKey a0) 
 4332         remove_attribute(TAMDParticle self, IntKey a0) 
 4333         remove_attribute(TAMDParticle self, FloatsKey a0) 
 4334         remove_attribute(TAMDParticle self, IntsKey a0) 
 4335         remove_attribute(TAMDParticle self, StringKey a0) 
 4336         remove_attribute(TAMDParticle self, ParticleIndexKey a0) 
 4337         remove_attribute(TAMDParticle self, ObjectKey a0) 
 4338         remove_attribute(TAMDParticle self, SparseFloatKey a0) 
 4339         remove_attribute(TAMDParticle self, SparseIntKey a0) 
 4340         remove_attribute(TAMDParticle self, SparseStringKey a0) 
 4341         remove_attribute(TAMDParticle self, SparseParticleIndexKey a0) 
 4343         return _IMP_atom.TAMDParticle_remove_attribute(self, *args)
 
 4345     def has_attribute(self, *args):
 
 4347         has_attribute(TAMDParticle self, FloatKey a0) -> bool 
 4348         has_attribute(TAMDParticle self, IntKey a0) -> bool 
 4349         has_attribute(TAMDParticle self, FloatsKey a0) -> bool 
 4350         has_attribute(TAMDParticle self, IntsKey a0) -> bool 
 4351         has_attribute(TAMDParticle self, StringKey a0) -> bool 
 4352         has_attribute(TAMDParticle self, ParticleIndexKey a0) -> bool 
 4353         has_attribute(TAMDParticle self, ObjectKey a0) -> bool 
 4354         has_attribute(TAMDParticle self, SparseFloatKey a0) -> bool 
 4355         has_attribute(TAMDParticle self, SparseIntKey a0) -> bool 
 4356         has_attribute(TAMDParticle self, SparseStringKey a0) -> bool 
 4357         has_attribute(TAMDParticle self, SparseParticleIndexKey a0) -> bool 
 4359         return _IMP_atom.TAMDParticle_has_attribute(self, *args)
 
 4361     def get_derivative(self, a0):
 
 4362         r"""get_derivative(TAMDParticle self, FloatKey a0) -> double""" 
 4363         return _IMP_atom.TAMDParticle_get_derivative(self, a0)
 
 4366         r"""get_name(TAMDParticle self) -> std::string""" 
 4367         return _IMP_atom.TAMDParticle_get_name(self)
 
 4369     def clear_caches(self):
 
 4370         r"""clear_caches(TAMDParticle self)""" 
 4371         return _IMP_atom.TAMDParticle_clear_caches(self)
 
 4373     def set_name(self, a0):
 
 4374         r"""set_name(TAMDParticle self, std::string a0)""" 
 4375         return _IMP_atom.TAMDParticle_set_name(self, a0)
 
 4378         r"""set_check_level(TAMDParticle self, IMP::CheckLevel a0)""" 
 4379         return _IMP_atom.TAMDParticle_set_check_level(self, a0)
 
 4381     def add_to_derivative(self, a0, a1, a2):
 
 4382         r"""add_to_derivative(TAMDParticle self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 4383         return _IMP_atom.TAMDParticle_add_to_derivative(self, a0, a1, a2)
 
 4385     def set_is_optimized(self, a0, a1):
 
 4386         r"""set_is_optimized(TAMDParticle self, FloatKey a0, bool a1)""" 
 4387         return _IMP_atom.TAMDParticle_set_is_optimized(self, a0, a1)
 
 4389     def get_is_optimized(self, a0):
 
 4390         r"""get_is_optimized(TAMDParticle self, FloatKey a0) -> bool""" 
 4391         return _IMP_atom.TAMDParticle_get_is_optimized(self, a0)
 
 4394         r"""get_check_level(TAMDParticle self) -> IMP::CheckLevel""" 
 4395         return _IMP_atom.TAMDParticle_get_check_level(self)
 
 4397     def __eq__(self, *args):
 
 4399         __eq__(TAMDParticle self, TAMDParticle o) -> bool 
 4400         __eq__(TAMDParticle self, Particle d) -> bool 
 4402         return _IMP_atom.TAMDParticle___eq__(self, *args)
 
 4404     def __ne__(self, *args):
 
 4406         __ne__(TAMDParticle self, TAMDParticle o) -> bool 
 4407         __ne__(TAMDParticle self, Particle d) -> bool 
 4409         return _IMP_atom.TAMDParticle___ne__(self, *args)
 
 4411     def __le__(self, *args):
 
 4413         __le__(TAMDParticle self, TAMDParticle o) -> bool 
 4414         __le__(TAMDParticle self, Particle d) -> bool 
 4416         return _IMP_atom.TAMDParticle___le__(self, *args)
 
 4418     def __lt__(self, *args):
 
 4420         __lt__(TAMDParticle self, TAMDParticle o) -> bool 
 4421         __lt__(TAMDParticle self, Particle d) -> bool 
 4423         return _IMP_atom.TAMDParticle___lt__(self, *args)
 
 4425     def __ge__(self, *args):
 
 4427         __ge__(TAMDParticle self, TAMDParticle o) -> bool 
 4428         __ge__(TAMDParticle self, Particle d) -> bool 
 4430         return _IMP_atom.TAMDParticle___ge__(self, *args)
 
 4432     def __gt__(self, *args):
 
 4434         __gt__(TAMDParticle self, TAMDParticle o) -> bool 
 4435         __gt__(TAMDParticle self, Particle d) -> bool 
 4437         return _IMP_atom.TAMDParticle___gt__(self, *args)
 
 4440         r"""__hash__(TAMDParticle self) -> std::size_t""" 
 4441         return _IMP_atom.TAMDParticle___hash__(self)
 
 4444         r"""__str__(TAMDParticle self) -> std::string""" 
 4445         return _IMP_atom.TAMDParticle___str__(self)
 
 4448         r"""__repr__(TAMDParticle self) -> std::string""" 
 4449         return _IMP_atom.TAMDParticle___repr__(self)
 
 4451     def _get_as_binary(self):
 
 4452         r"""_get_as_binary(TAMDParticle self) -> PyObject *""" 
 4453         return _IMP_atom.TAMDParticle__get_as_binary(self)
 
 4455     def _set_from_binary(self, p):
 
 4456         r"""_set_from_binary(TAMDParticle self, PyObject * p)""" 
 4457         return _IMP_atom.TAMDParticle__set_from_binary(self, p)
 
 4459     def __getstate__(self):
 
 4460         p = self._get_as_binary()
 
 4461         if len(self.__dict__) > 1:
 
 4462             d = self.__dict__.copy()
 
 4467     def __setstate__(self, p):
 
 4468         if not hasattr(self, 
'this'):
 
 4470         if isinstance(p, tuple):
 
 4472             self.__dict__.update(d)
 
 4473         return self._set_from_binary(p)
 
 4475     __swig_destroy__ = _IMP_atom.delete_TAMDParticle
 
 4478 _IMP_atom.TAMDParticle_swigregister(TAMDParticle)
 
 4480     r"""Proxy of C++ IMP::atom::Charged class.""" 
 4482     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 4484     def __init__(self, *args):
 
 4486         __init__(Charged self) -> Charged 
 4487         __init__(Charged self, Model m, ParticleIndex id) -> Charged 
 4488         __init__(Charged self, _ParticleAdaptor d) -> Charged 
 4490         _IMP_atom.Charged_swiginit(self, _IMP_atom.new_Charged(*args))
 
 4492     def show(self, *args):
 
 4493         r"""show(Charged self, _ostream out=std::cout)""" 
 4494         return _IMP_atom.Charged_show(self, *args)
 
 4497     def setup_particle(*args):
 
 4499         setup_particle(Model m, ParticleIndex pi, IMP::Float charge) -> Charged 
 4500         setup_particle(_ParticleAdaptor pa, IMP::Float charge) -> Charged 
 4501         setup_particle(Model m, ParticleIndex pi, Vector3D v, IMP::Float charge) -> Charged 
 4502         setup_particle(_ParticleAdaptor pa, Vector3D v, IMP::Float charge) -> Charged 
 4504         return _IMP_atom.Charged_setup_particle(*args)
 
 4506     def get_charge(self):
 
 4507         r"""get_charge(Charged self) -> IMP::Float""" 
 4508         return _IMP_atom.Charged_get_charge(self)
 
 4510     def set_charge(self, t):
 
 4511         r"""set_charge(Charged self, IMP::Float t)""" 
 4512         return _IMP_atom.Charged_set_charge(self, t)
 
 4515     def get_is_setup(*args):
 
 4517         get_is_setup(_ParticleAdaptor p) -> bool 
 4518         get_is_setup(Model m, ParticleIndex pi) -> bool 
 4520         return _IMP_atom.Charged_get_is_setup(*args)
 
 4523     def get_charge_key():
 
 4524         r"""get_charge_key() -> FloatKey""" 
 4525         return _IMP_atom.Charged_get_charge_key()
 
 4527     def add_attribute(self, *args):
 
 4529         add_attribute(Charged self, FloatKey k, IMP::Float v, bool opt) 
 4530         add_attribute(Charged self, FloatKey a0, IMP::Float a1) 
 4531         add_attribute(Charged self, IntKey a0, IMP::Int a1) 
 4532         add_attribute(Charged self, FloatsKey a0, IMP::Floats a1) 
 4533         add_attribute(Charged self, IntsKey a0, IMP::Ints a1) 
 4534         add_attribute(Charged self, StringKey a0, IMP::String a1) 
 4535         add_attribute(Charged self, ParticleIndexKey a0, Particle a1) 
 4536         add_attribute(Charged self, ObjectKey a0, Object a1) 
 4537         add_attribute(Charged self, SparseFloatKey a0, IMP::Float a1) 
 4538         add_attribute(Charged self, SparseIntKey a0, IMP::Int a1) 
 4539         add_attribute(Charged self, SparseStringKey a0, IMP::String a1) 
 4540         add_attribute(Charged self, SparseParticleIndexKey a0, ParticleIndex a1) 
 4542         return _IMP_atom.Charged_add_attribute(self, *args)
 
 4544     def get_value(self, *args):
 
 4546         get_value(Charged self, FloatKey a0) -> IMP::Float 
 4547         get_value(Charged self, IntKey a0) -> IMP::Int 
 4548         get_value(Charged self, FloatsKey a0) -> IMP::Floats 
 4549         get_value(Charged self, IntsKey a0) -> IMP::Ints 
 4550         get_value(Charged self, StringKey a0) -> IMP::String 
 4551         get_value(Charged self, ParticleIndexKey a0) -> Particle 
 4552         get_value(Charged self, ObjectKey a0) -> Object 
 4553         get_value(Charged self, SparseFloatKey a0) -> IMP::Float 
 4554         get_value(Charged self, SparseIntKey a0) -> IMP::Int 
 4555         get_value(Charged self, SparseStringKey a0) -> IMP::String 
 4556         get_value(Charged self, SparseParticleIndexKey a0) -> ParticleIndex 
 4558         return _IMP_atom.Charged_get_value(self, *args)
 
 4560     def set_value(self, *args):
 
 4562         set_value(Charged self, FloatKey a0, IMP::Float a1) 
 4563         set_value(Charged self, IntKey a0, IMP::Int a1) 
 4564         set_value(Charged self, FloatsKey a0, IMP::Floats a1) 
 4565         set_value(Charged self, IntsKey a0, IMP::Ints a1) 
 4566         set_value(Charged self, StringKey a0, IMP::String a1) 
 4567         set_value(Charged self, ParticleIndexKey a0, Particle a1) 
 4568         set_value(Charged self, ObjectKey a0, Object a1) 
 4569         set_value(Charged self, SparseFloatKey a0, IMP::Float a1) 
 4570         set_value(Charged self, SparseIntKey a0, IMP::Int a1) 
 4571         set_value(Charged self, SparseStringKey a0, IMP::String a1) 
 4572         set_value(Charged self, SparseParticleIndexKey a0, ParticleIndex a1) 
 4574         return _IMP_atom.Charged_set_value(self, *args)
 
 4576     def remove_attribute(self, *args):
 
 4578         remove_attribute(Charged self, FloatKey a0) 
 4579         remove_attribute(Charged self, IntKey a0) 
 4580         remove_attribute(Charged self, FloatsKey a0) 
 4581         remove_attribute(Charged self, IntsKey a0) 
 4582         remove_attribute(Charged self, StringKey a0) 
 4583         remove_attribute(Charged self, ParticleIndexKey a0) 
 4584         remove_attribute(Charged self, ObjectKey a0) 
 4585         remove_attribute(Charged self, SparseFloatKey a0) 
 4586         remove_attribute(Charged self, SparseIntKey a0) 
 4587         remove_attribute(Charged self, SparseStringKey a0) 
 4588         remove_attribute(Charged self, SparseParticleIndexKey a0) 
 4590         return _IMP_atom.Charged_remove_attribute(self, *args)
 
 4592     def has_attribute(self, *args):
 
 4594         has_attribute(Charged self, FloatKey a0) -> bool 
 4595         has_attribute(Charged self, IntKey a0) -> bool 
 4596         has_attribute(Charged self, FloatsKey a0) -> bool 
 4597         has_attribute(Charged self, IntsKey a0) -> bool 
 4598         has_attribute(Charged self, StringKey a0) -> bool 
 4599         has_attribute(Charged self, ParticleIndexKey a0) -> bool 
 4600         has_attribute(Charged self, ObjectKey a0) -> bool 
 4601         has_attribute(Charged self, SparseFloatKey a0) -> bool 
 4602         has_attribute(Charged self, SparseIntKey a0) -> bool 
 4603         has_attribute(Charged self, SparseStringKey a0) -> bool 
 4604         has_attribute(Charged self, SparseParticleIndexKey a0) -> bool 
 4606         return _IMP_atom.Charged_has_attribute(self, *args)
 
 4608     def get_derivative(self, a0):
 
 4609         r"""get_derivative(Charged self, FloatKey a0) -> double""" 
 4610         return _IMP_atom.Charged_get_derivative(self, a0)
 
 4613         r"""get_name(Charged self) -> std::string""" 
 4614         return _IMP_atom.Charged_get_name(self)
 
 4616     def clear_caches(self):
 
 4617         r"""clear_caches(Charged self)""" 
 4618         return _IMP_atom.Charged_clear_caches(self)
 
 4620     def set_name(self, a0):
 
 4621         r"""set_name(Charged self, std::string a0)""" 
 4622         return _IMP_atom.Charged_set_name(self, a0)
 
 4625         r"""set_check_level(Charged self, IMP::CheckLevel a0)""" 
 4626         return _IMP_atom.Charged_set_check_level(self, a0)
 
 4628     def add_to_derivative(self, a0, a1, a2):
 
 4629         r"""add_to_derivative(Charged self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 4630         return _IMP_atom.Charged_add_to_derivative(self, a0, a1, a2)
 
 4632     def set_is_optimized(self, a0, a1):
 
 4633         r"""set_is_optimized(Charged self, FloatKey a0, bool a1)""" 
 4634         return _IMP_atom.Charged_set_is_optimized(self, a0, a1)
 
 4636     def get_is_optimized(self, a0):
 
 4637         r"""get_is_optimized(Charged self, FloatKey a0) -> bool""" 
 4638         return _IMP_atom.Charged_get_is_optimized(self, a0)
 
 4641         r"""get_check_level(Charged self) -> IMP::CheckLevel""" 
 4642         return _IMP_atom.Charged_get_check_level(self)
 
 4644     def __eq__(self, *args):
 
 4646         __eq__(Charged self, Charged o) -> bool 
 4647         __eq__(Charged self, Particle d) -> bool 
 4649         return _IMP_atom.Charged___eq__(self, *args)
 
 4651     def __ne__(self, *args):
 
 4653         __ne__(Charged self, Charged o) -> bool 
 4654         __ne__(Charged self, Particle d) -> bool 
 4656         return _IMP_atom.Charged___ne__(self, *args)
 
 4658     def __le__(self, *args):
 
 4660         __le__(Charged self, Charged o) -> bool 
 4661         __le__(Charged self, Particle d) -> bool 
 4663         return _IMP_atom.Charged___le__(self, *args)
 
 4665     def __lt__(self, *args):
 
 4667         __lt__(Charged self, Charged o) -> bool 
 4668         __lt__(Charged self, Particle d) -> bool 
 4670         return _IMP_atom.Charged___lt__(self, *args)
 
 4672     def __ge__(self, *args):
 
 4674         __ge__(Charged self, Charged o) -> bool 
 4675         __ge__(Charged self, Particle d) -> bool 
 4677         return _IMP_atom.Charged___ge__(self, *args)
 
 4679     def __gt__(self, *args):
 
 4681         __gt__(Charged self, Charged o) -> bool 
 4682         __gt__(Charged self, Particle d) -> bool 
 4684         return _IMP_atom.Charged___gt__(self, *args)
 
 4687         r"""__hash__(Charged self) -> std::size_t""" 
 4688         return _IMP_atom.Charged___hash__(self)
 
 4691         r"""__str__(Charged self) -> std::string""" 
 4692         return _IMP_atom.Charged___str__(self)
 
 4695         r"""__repr__(Charged self) -> std::string""" 
 4696         return _IMP_atom.Charged___repr__(self)
 
 4698     def _get_as_binary(self):
 
 4699         r"""_get_as_binary(Charged self) -> PyObject *""" 
 4700         return _IMP_atom.Charged__get_as_binary(self)
 
 4702     def _set_from_binary(self, p):
 
 4703         r"""_set_from_binary(Charged self, PyObject * p)""" 
 4704         return _IMP_atom.Charged__set_from_binary(self, p)
 
 4706     def __getstate__(self):
 
 4707         p = self._get_as_binary()
 
 4708         if len(self.__dict__) > 1:
 
 4709             d = self.__dict__.copy()
 
 4714     def __setstate__(self, p):
 
 4715         if not hasattr(self, 
'this'):
 
 4717         if isinstance(p, tuple):
 
 4719             self.__dict__.update(d)
 
 4720         return self._set_from_binary(p)
 
 4722     __swig_destroy__ = _IMP_atom.delete_Charged
 
 4725 _IMP_atom.Charged_swigregister(Charged)
 
 4727     r"""Proxy of C++ IMP::atom::CoulombPairScore class.""" 
 4729     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 4731     def __init__(self, f):
 
 4732         r"""__init__(CoulombPairScore self, SmoothingFunction f) -> CoulombPairScore""" 
 4733         _IMP_atom.CoulombPairScore_swiginit(self, _IMP_atom.new_CoulombPairScore(f))
 
 4735     def set_relative_dielectric(self, relative_dielectric):
 
 4736         r"""set_relative_dielectric(CoulombPairScore self, double relative_dielectric)""" 
 4737         return _IMP_atom.CoulombPairScore_set_relative_dielectric(self, relative_dielectric)
 
 4739     def get_relative_dielectric(self):
 
 4740         r"""get_relative_dielectric(CoulombPairScore self) -> double""" 
 4741         return _IMP_atom.CoulombPairScore_get_relative_dielectric(self)
 
 4743     def do_get_inputs(self, m, pis):
 
 4744         r"""do_get_inputs(CoulombPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 4745         return _IMP_atom.CoulombPairScore_do_get_inputs(self, m, pis)
 
 4747     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 4748         r"""evaluate_indexes(CoulombPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 4749         return _IMP_atom.CoulombPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 4751     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 4752         r"""evaluate_indexes_scores(CoulombPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 4753         return _IMP_atom.CoulombPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 4755     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 4756         r"""evaluate_indexes_delta(CoulombPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 4757         return _IMP_atom.CoulombPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 4759     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 4760         r"""evaluate_if_good_indexes(CoulombPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 4761         return _IMP_atom.CoulombPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 4763     def get_version_info(self):
 
 4764         r"""get_version_info(CoulombPairScore self) -> VersionInfo""" 
 4765         return _IMP_atom.CoulombPairScore_get_version_info(self)
 
 4766     __swig_destroy__ = _IMP_atom.delete_CoulombPairScore
 
 4769         r"""__str__(CoulombPairScore self) -> std::string""" 
 4770         return _IMP_atom.CoulombPairScore___str__(self)
 
 4773         r"""__repr__(CoulombPairScore self) -> std::string""" 
 4774         return _IMP_atom.CoulombPairScore___repr__(self)
 
 4778        return _object_cast_to_CoulombPairScore(o)
 
 4782 _IMP_atom.CoulombPairScore_swigregister(CoulombPairScore)
 
 4783 class Domain(Hierarchy):
 
 4784     r"""Proxy of C++ IMP::atom::Domain class.""" 
 4786     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 4788     def set_index_range(self, ir):
 
 4789         r"""set_index_range(Domain self, IMP::IntRange ir)""" 
 4790         return _IMP_atom.Domain_set_index_range(self, ir)
 
 4792     def get_index_range(self):
 
 4793         r"""get_index_range(Domain self) -> IMP::IntRange""" 
 4794         return _IMP_atom.Domain_get_index_range(self)
 
 4796     def __init__(self, *args):
 
 4798         __init__(Domain self) -> Domain 
 4799         __init__(Domain self, Model m, ParticleIndex id) -> Domain 
 4800         __init__(Domain self, _ParticleAdaptor d) -> Domain 
 4802         _IMP_atom.Domain_swiginit(self, _IMP_atom.new_Domain(*args))
 
 4805     def get_is_setup(*args):
 
 4807         get_is_setup(Model m, ParticleIndex pi) -> bool 
 4808         get_is_setup(_ParticleAdaptor p) -> bool 
 4810         return _IMP_atom.Domain_get_is_setup(*args)
 
 4812     def show(self, *args):
 
 4813         r"""show(Domain self, _ostream out=std::cout)""" 
 4814         return _IMP_atom.Domain_show(self, *args)
 
 4817     def setup_particle(*args):
 
 4819         setup_particle(Model m, ParticleIndex pi, Domain other) -> Domain 
 4820         setup_particle(_ParticleAdaptor pa, Domain other) -> Domain 
 4821         setup_particle(Model m, ParticleIndex pi, IMP::IntRange residues) -> Domain 
 4822         setup_particle(_ParticleAdaptor pa, IMP::IntRange residues) -> Domain 
 4824         return _IMP_atom.Domain_setup_particle(*args)
 
 4826     def add_attribute(self, *args):
 
 4828         add_attribute(Domain self, FloatKey k, IMP::Float v, bool opt) 
 4829         add_attribute(Domain self, FloatKey a0, IMP::Float a1) 
 4830         add_attribute(Domain self, IntKey a0, IMP::Int a1) 
 4831         add_attribute(Domain self, FloatsKey a0, IMP::Floats a1) 
 4832         add_attribute(Domain self, IntsKey a0, IMP::Ints a1) 
 4833         add_attribute(Domain self, StringKey a0, IMP::String a1) 
 4834         add_attribute(Domain self, ParticleIndexKey a0, Particle a1) 
 4835         add_attribute(Domain self, ObjectKey a0, Object a1) 
 4836         add_attribute(Domain self, SparseFloatKey a0, IMP::Float a1) 
 4837         add_attribute(Domain self, SparseIntKey a0, IMP::Int a1) 
 4838         add_attribute(Domain self, SparseStringKey a0, IMP::String a1) 
 4839         add_attribute(Domain self, SparseParticleIndexKey a0, ParticleIndex a1) 
 4841         return _IMP_atom.Domain_add_attribute(self, *args)
 
 4843     def get_value(self, *args):
 
 4845         get_value(Domain self, FloatKey a0) -> IMP::Float 
 4846         get_value(Domain self, IntKey a0) -> IMP::Int 
 4847         get_value(Domain self, FloatsKey a0) -> IMP::Floats 
 4848         get_value(Domain self, IntsKey a0) -> IMP::Ints 
 4849         get_value(Domain self, StringKey a0) -> IMP::String 
 4850         get_value(Domain self, ParticleIndexKey a0) -> Particle 
 4851         get_value(Domain self, ObjectKey a0) -> Object 
 4852         get_value(Domain self, SparseFloatKey a0) -> IMP::Float 
 4853         get_value(Domain self, SparseIntKey a0) -> IMP::Int 
 4854         get_value(Domain self, SparseStringKey a0) -> IMP::String 
 4855         get_value(Domain self, SparseParticleIndexKey a0) -> ParticleIndex 
 4857         return _IMP_atom.Domain_get_value(self, *args)
 
 4859     def set_value(self, *args):
 
 4861         set_value(Domain self, FloatKey a0, IMP::Float a1) 
 4862         set_value(Domain self, IntKey a0, IMP::Int a1) 
 4863         set_value(Domain self, FloatsKey a0, IMP::Floats a1) 
 4864         set_value(Domain self, IntsKey a0, IMP::Ints a1) 
 4865         set_value(Domain self, StringKey a0, IMP::String a1) 
 4866         set_value(Domain self, ParticleIndexKey a0, Particle a1) 
 4867         set_value(Domain self, ObjectKey a0, Object a1) 
 4868         set_value(Domain self, SparseFloatKey a0, IMP::Float a1) 
 4869         set_value(Domain self, SparseIntKey a0, IMP::Int a1) 
 4870         set_value(Domain self, SparseStringKey a0, IMP::String a1) 
 4871         set_value(Domain self, SparseParticleIndexKey a0, ParticleIndex a1) 
 4873         return _IMP_atom.Domain_set_value(self, *args)
 
 4875     def remove_attribute(self, *args):
 
 4877         remove_attribute(Domain self, FloatKey a0) 
 4878         remove_attribute(Domain self, IntKey a0) 
 4879         remove_attribute(Domain self, FloatsKey a0) 
 4880         remove_attribute(Domain self, IntsKey a0) 
 4881         remove_attribute(Domain self, StringKey a0) 
 4882         remove_attribute(Domain self, ParticleIndexKey a0) 
 4883         remove_attribute(Domain self, ObjectKey a0) 
 4884         remove_attribute(Domain self, SparseFloatKey a0) 
 4885         remove_attribute(Domain self, SparseIntKey a0) 
 4886         remove_attribute(Domain self, SparseStringKey a0) 
 4887         remove_attribute(Domain self, SparseParticleIndexKey a0) 
 4889         return _IMP_atom.Domain_remove_attribute(self, *args)
 
 4891     def has_attribute(self, *args):
 
 4893         has_attribute(Domain self, FloatKey a0) -> bool 
 4894         has_attribute(Domain self, IntKey a0) -> bool 
 4895         has_attribute(Domain self, FloatsKey a0) -> bool 
 4896         has_attribute(Domain self, IntsKey a0) -> bool 
 4897         has_attribute(Domain self, StringKey a0) -> bool 
 4898         has_attribute(Domain self, ParticleIndexKey a0) -> bool 
 4899         has_attribute(Domain self, ObjectKey a0) -> bool 
 4900         has_attribute(Domain self, SparseFloatKey a0) -> bool 
 4901         has_attribute(Domain self, SparseIntKey a0) -> bool 
 4902         has_attribute(Domain self, SparseStringKey a0) -> bool 
 4903         has_attribute(Domain self, SparseParticleIndexKey a0) -> bool 
 4905         return _IMP_atom.Domain_has_attribute(self, *args)
 
 4907     def get_derivative(self, a0):
 
 4908         r"""get_derivative(Domain self, FloatKey a0) -> double""" 
 4909         return _IMP_atom.Domain_get_derivative(self, a0)
 
 4912         r"""get_name(Domain self) -> std::string""" 
 4913         return _IMP_atom.Domain_get_name(self)
 
 4915     def clear_caches(self):
 
 4916         r"""clear_caches(Domain self)""" 
 4917         return _IMP_atom.Domain_clear_caches(self)
 
 4919     def set_name(self, a0):
 
 4920         r"""set_name(Domain self, std::string a0)""" 
 4921         return _IMP_atom.Domain_set_name(self, a0)
 
 4924         r"""set_check_level(Domain self, IMP::CheckLevel a0)""" 
 4925         return _IMP_atom.Domain_set_check_level(self, a0)
 
 4927     def add_to_derivative(self, a0, a1, a2):
 
 4928         r"""add_to_derivative(Domain self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 4929         return _IMP_atom.Domain_add_to_derivative(self, a0, a1, a2)
 
 4931     def set_is_optimized(self, a0, a1):
 
 4932         r"""set_is_optimized(Domain self, FloatKey a0, bool a1)""" 
 4933         return _IMP_atom.Domain_set_is_optimized(self, a0, a1)
 
 4935     def get_is_optimized(self, a0):
 
 4936         r"""get_is_optimized(Domain self, FloatKey a0) -> bool""" 
 4937         return _IMP_atom.Domain_get_is_optimized(self, a0)
 
 4940         r"""get_check_level(Domain self) -> IMP::CheckLevel""" 
 4941         return _IMP_atom.Domain_get_check_level(self)
 
 4943     def __eq__(self, *args):
 
 4945         __eq__(Domain self, Domain o) -> bool 
 4946         __eq__(Domain self, Particle d) -> bool 
 4948         return _IMP_atom.Domain___eq__(self, *args)
 
 4950     def __ne__(self, *args):
 
 4952         __ne__(Domain self, Domain o) -> bool 
 4953         __ne__(Domain self, Particle d) -> bool 
 4955         return _IMP_atom.Domain___ne__(self, *args)
 
 4957     def __le__(self, *args):
 
 4959         __le__(Domain self, Domain o) -> bool 
 4960         __le__(Domain self, Particle d) -> bool 
 4962         return _IMP_atom.Domain___le__(self, *args)
 
 4964     def __lt__(self, *args):
 
 4966         __lt__(Domain self, Domain o) -> bool 
 4967         __lt__(Domain self, Particle d) -> bool 
 4969         return _IMP_atom.Domain___lt__(self, *args)
 
 4971     def __ge__(self, *args):
 
 4973         __ge__(Domain self, Domain o) -> bool 
 4974         __ge__(Domain self, Particle d) -> bool 
 4976         return _IMP_atom.Domain___ge__(self, *args)
 
 4978     def __gt__(self, *args):
 
 4980         __gt__(Domain self, Domain o) -> bool 
 4981         __gt__(Domain self, Particle d) -> bool 
 4983         return _IMP_atom.Domain___gt__(self, *args)
 
 4986         r"""__hash__(Domain self) -> std::size_t""" 
 4987         return _IMP_atom.Domain___hash__(self)
 
 4990         r"""__str__(Domain self) -> std::string""" 
 4991         return _IMP_atom.Domain___str__(self)
 
 4994         r"""__repr__(Domain self) -> std::string""" 
 4995         return _IMP_atom.Domain___repr__(self)
 
 4997     def _get_as_binary(self):
 
 4998         r"""_get_as_binary(Domain self) -> PyObject *""" 
 4999         return _IMP_atom.Domain__get_as_binary(self)
 
 5001     def _set_from_binary(self, p):
 
 5002         r"""_set_from_binary(Domain self, PyObject * p)""" 
 5003         return _IMP_atom.Domain__set_from_binary(self, p)
 
 5005     def __getstate__(self):
 
 5006         p = self._get_as_binary()
 
 5007         if len(self.__dict__) > 1:
 
 5008             d = self.__dict__.copy()
 
 5013     def __setstate__(self, p):
 
 5014         if not hasattr(self, 
'this'):
 
 5016         if isinstance(p, tuple):
 
 5018             self.__dict__.update(d)
 
 5019         return self._set_from_binary(p)
 
 5021     __swig_destroy__ = _IMP_atom.delete_Domain
 
 5024 _IMP_atom.Domain_swigregister(Domain)
 
 5026     r"""Proxy of C++ IMP::atom::LennardJones class.""" 
 5028     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 5030     def __init__(self, *args):
 
 5032         __init__(LennardJones self) -> LennardJones 
 5033         __init__(LennardJones self, Model m, ParticleIndex id) -> LennardJones 
 5034         __init__(LennardJones self, _ParticleAdaptor d) -> LennardJones 
 5036         _IMP_atom.LennardJones_swiginit(self, _IMP_atom.new_LennardJones(*args))
 
 5038     def show(self, *args):
 
 5039         r"""show(LennardJones self, _ostream out=std::cout)""" 
 5040         return _IMP_atom.LennardJones_show(self, *args)
 
 5043     def setup_particle(*args):
 
 5045         setup_particle(Model m, ParticleIndex pi) -> LennardJones 
 5046         setup_particle(_ParticleAdaptor pa) -> LennardJones 
 5047         setup_particle(Model m, ParticleIndex pi, IMP::Float well_depth) -> LennardJones 
 5048         setup_particle(_ParticleAdaptor pa, IMP::Float well_depth) -> LennardJones 
 5050         return _IMP_atom.LennardJones_setup_particle(*args)
 
 5052     def get_well_depth(self):
 
 5053         r"""get_well_depth(LennardJones self) -> IMP::Float""" 
 5054         return _IMP_atom.LennardJones_get_well_depth(self)
 
 5056     def set_well_depth(self, well_depth):
 
 5057         r"""set_well_depth(LennardJones self, IMP::Float well_depth)""" 
 5058         return _IMP_atom.LennardJones_set_well_depth(self, well_depth)
 
 5061     def get_is_setup(*args):
 
 5063         get_is_setup(_ParticleAdaptor p) -> bool 
 5064         get_is_setup(Model m, ParticleIndex pi) -> bool 
 5066         return _IMP_atom.LennardJones_get_is_setup(*args)
 
 5069     def get_well_depth_key():
 
 5070         r"""get_well_depth_key() -> FloatKey""" 
 5071         return _IMP_atom.LennardJones_get_well_depth_key()
 
 5073     def add_attribute(self, *args):
 
 5075         add_attribute(LennardJones self, FloatKey k, IMP::Float v, bool opt) 
 5076         add_attribute(LennardJones self, FloatKey a0, IMP::Float a1) 
 5077         add_attribute(LennardJones self, IntKey a0, IMP::Int a1) 
 5078         add_attribute(LennardJones self, FloatsKey a0, IMP::Floats a1) 
 5079         add_attribute(LennardJones self, IntsKey a0, IMP::Ints a1) 
 5080         add_attribute(LennardJones self, StringKey a0, IMP::String a1) 
 5081         add_attribute(LennardJones self, ParticleIndexKey a0, Particle a1) 
 5082         add_attribute(LennardJones self, ObjectKey a0, Object a1) 
 5083         add_attribute(LennardJones self, SparseFloatKey a0, IMP::Float a1) 
 5084         add_attribute(LennardJones self, SparseIntKey a0, IMP::Int a1) 
 5085         add_attribute(LennardJones self, SparseStringKey a0, IMP::String a1) 
 5086         add_attribute(LennardJones self, SparseParticleIndexKey a0, ParticleIndex a1) 
 5088         return _IMP_atom.LennardJones_add_attribute(self, *args)
 
 5090     def get_value(self, *args):
 
 5092         get_value(LennardJones self, FloatKey a0) -> IMP::Float 
 5093         get_value(LennardJones self, IntKey a0) -> IMP::Int 
 5094         get_value(LennardJones self, FloatsKey a0) -> IMP::Floats 
 5095         get_value(LennardJones self, IntsKey a0) -> IMP::Ints 
 5096         get_value(LennardJones self, StringKey a0) -> IMP::String 
 5097         get_value(LennardJones self, ParticleIndexKey a0) -> Particle 
 5098         get_value(LennardJones self, ObjectKey a0) -> Object 
 5099         get_value(LennardJones self, SparseFloatKey a0) -> IMP::Float 
 5100         get_value(LennardJones self, SparseIntKey a0) -> IMP::Int 
 5101         get_value(LennardJones self, SparseStringKey a0) -> IMP::String 
 5102         get_value(LennardJones self, SparseParticleIndexKey a0) -> ParticleIndex 
 5104         return _IMP_atom.LennardJones_get_value(self, *args)
 
 5106     def set_value(self, *args):
 
 5108         set_value(LennardJones self, FloatKey a0, IMP::Float a1) 
 5109         set_value(LennardJones self, IntKey a0, IMP::Int a1) 
 5110         set_value(LennardJones self, FloatsKey a0, IMP::Floats a1) 
 5111         set_value(LennardJones self, IntsKey a0, IMP::Ints a1) 
 5112         set_value(LennardJones self, StringKey a0, IMP::String a1) 
 5113         set_value(LennardJones self, ParticleIndexKey a0, Particle a1) 
 5114         set_value(LennardJones self, ObjectKey a0, Object a1) 
 5115         set_value(LennardJones self, SparseFloatKey a0, IMP::Float a1) 
 5116         set_value(LennardJones self, SparseIntKey a0, IMP::Int a1) 
 5117         set_value(LennardJones self, SparseStringKey a0, IMP::String a1) 
 5118         set_value(LennardJones self, SparseParticleIndexKey a0, ParticleIndex a1) 
 5120         return _IMP_atom.LennardJones_set_value(self, *args)
 
 5122     def remove_attribute(self, *args):
 
 5124         remove_attribute(LennardJones self, FloatKey a0) 
 5125         remove_attribute(LennardJones self, IntKey a0) 
 5126         remove_attribute(LennardJones self, FloatsKey a0) 
 5127         remove_attribute(LennardJones self, IntsKey a0) 
 5128         remove_attribute(LennardJones self, StringKey a0) 
 5129         remove_attribute(LennardJones self, ParticleIndexKey a0) 
 5130         remove_attribute(LennardJones self, ObjectKey a0) 
 5131         remove_attribute(LennardJones self, SparseFloatKey a0) 
 5132         remove_attribute(LennardJones self, SparseIntKey a0) 
 5133         remove_attribute(LennardJones self, SparseStringKey a0) 
 5134         remove_attribute(LennardJones self, SparseParticleIndexKey a0) 
 5136         return _IMP_atom.LennardJones_remove_attribute(self, *args)
 
 5138     def has_attribute(self, *args):
 
 5140         has_attribute(LennardJones self, FloatKey a0) -> bool 
 5141         has_attribute(LennardJones self, IntKey a0) -> bool 
 5142         has_attribute(LennardJones self, FloatsKey a0) -> bool 
 5143         has_attribute(LennardJones self, IntsKey a0) -> bool 
 5144         has_attribute(LennardJones self, StringKey a0) -> bool 
 5145         has_attribute(LennardJones self, ParticleIndexKey a0) -> bool 
 5146         has_attribute(LennardJones self, ObjectKey a0) -> bool 
 5147         has_attribute(LennardJones self, SparseFloatKey a0) -> bool 
 5148         has_attribute(LennardJones self, SparseIntKey a0) -> bool 
 5149         has_attribute(LennardJones self, SparseStringKey a0) -> bool 
 5150         has_attribute(LennardJones self, SparseParticleIndexKey a0) -> bool 
 5152         return _IMP_atom.LennardJones_has_attribute(self, *args)
 
 5154     def get_derivative(self, a0):
 
 5155         r"""get_derivative(LennardJones self, FloatKey a0) -> double""" 
 5156         return _IMP_atom.LennardJones_get_derivative(self, a0)
 
 5159         r"""get_name(LennardJones self) -> std::string""" 
 5160         return _IMP_atom.LennardJones_get_name(self)
 
 5162     def clear_caches(self):
 
 5163         r"""clear_caches(LennardJones self)""" 
 5164         return _IMP_atom.LennardJones_clear_caches(self)
 
 5166     def set_name(self, a0):
 
 5167         r"""set_name(LennardJones self, std::string a0)""" 
 5168         return _IMP_atom.LennardJones_set_name(self, a0)
 
 5171         r"""set_check_level(LennardJones self, IMP::CheckLevel a0)""" 
 5172         return _IMP_atom.LennardJones_set_check_level(self, a0)
 
 5174     def add_to_derivative(self, a0, a1, a2):
 
 5175         r"""add_to_derivative(LennardJones self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 5176         return _IMP_atom.LennardJones_add_to_derivative(self, a0, a1, a2)
 
 5178     def set_is_optimized(self, a0, a1):
 
 5179         r"""set_is_optimized(LennardJones self, FloatKey a0, bool a1)""" 
 5180         return _IMP_atom.LennardJones_set_is_optimized(self, a0, a1)
 
 5182     def get_is_optimized(self, a0):
 
 5183         r"""get_is_optimized(LennardJones self, FloatKey a0) -> bool""" 
 5184         return _IMP_atom.LennardJones_get_is_optimized(self, a0)
 
 5187         r"""get_check_level(LennardJones self) -> IMP::CheckLevel""" 
 5188         return _IMP_atom.LennardJones_get_check_level(self)
 
 5190     def __eq__(self, *args):
 
 5192         __eq__(LennardJones self, LennardJones o) -> bool 
 5193         __eq__(LennardJones self, Particle d) -> bool 
 5195         return _IMP_atom.LennardJones___eq__(self, *args)
 
 5197     def __ne__(self, *args):
 
 5199         __ne__(LennardJones self, LennardJones o) -> bool 
 5200         __ne__(LennardJones self, Particle d) -> bool 
 5202         return _IMP_atom.LennardJones___ne__(self, *args)
 
 5204     def __le__(self, *args):
 
 5206         __le__(LennardJones self, LennardJones o) -> bool 
 5207         __le__(LennardJones self, Particle d) -> bool 
 5209         return _IMP_atom.LennardJones___le__(self, *args)
 
 5211     def __lt__(self, *args):
 
 5213         __lt__(LennardJones self, LennardJones o) -> bool 
 5214         __lt__(LennardJones self, Particle d) -> bool 
 5216         return _IMP_atom.LennardJones___lt__(self, *args)
 
 5218     def __ge__(self, *args):
 
 5220         __ge__(LennardJones self, LennardJones o) -> bool 
 5221         __ge__(LennardJones self, Particle d) -> bool 
 5223         return _IMP_atom.LennardJones___ge__(self, *args)
 
 5225     def __gt__(self, *args):
 
 5227         __gt__(LennardJones self, LennardJones o) -> bool 
 5228         __gt__(LennardJones self, Particle d) -> bool 
 5230         return _IMP_atom.LennardJones___gt__(self, *args)
 
 5233         r"""__hash__(LennardJones self) -> std::size_t""" 
 5234         return _IMP_atom.LennardJones___hash__(self)
 
 5237         r"""__str__(LennardJones self) -> std::string""" 
 5238         return _IMP_atom.LennardJones___str__(self)
 
 5241         r"""__repr__(LennardJones self) -> std::string""" 
 5242         return _IMP_atom.LennardJones___repr__(self)
 
 5244     def _get_as_binary(self):
 
 5245         r"""_get_as_binary(LennardJones self) -> PyObject *""" 
 5246         return _IMP_atom.LennardJones__get_as_binary(self)
 
 5248     def _set_from_binary(self, p):
 
 5249         r"""_set_from_binary(LennardJones self, PyObject * p)""" 
 5250         return _IMP_atom.LennardJones__set_from_binary(self, p)
 
 5252     def __getstate__(self):
 
 5253         p = self._get_as_binary()
 
 5254         if len(self.__dict__) > 1:
 
 5255             d = self.__dict__.copy()
 
 5260     def __setstate__(self, p):
 
 5261         if not hasattr(self, 
'this'):
 
 5263         if isinstance(p, tuple):
 
 5265             self.__dict__.update(d)
 
 5266         return self._set_from_binary(p)
 
 5268     __swig_destroy__ = _IMP_atom.delete_LennardJones
 
 5271 _IMP_atom.LennardJones_swigregister(LennardJones)
 
 5273     r"""Proxy of C++ IMP::atom::LennardJonesPairScore class.""" 
 5275     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 5277     def __init__(self, f):
 
 5278         r"""__init__(LennardJonesPairScore self, SmoothingFunction f) -> LennardJonesPairScore""" 
 5279         _IMP_atom.LennardJonesPairScore_swiginit(self, _IMP_atom.new_LennardJonesPairScore(f))
 
 5281     def set_repulsive_weight(self, repulsive_weight):
 
 5282         r"""set_repulsive_weight(LennardJonesPairScore self, double repulsive_weight)""" 
 5283         return _IMP_atom.LennardJonesPairScore_set_repulsive_weight(self, repulsive_weight)
 
 5285     def get_repulsive_weight(self):
 
 5286         r"""get_repulsive_weight(LennardJonesPairScore self) -> double""" 
 5287         return _IMP_atom.LennardJonesPairScore_get_repulsive_weight(self)
 
 5289     def set_attractive_weight(self, attractive_weight):
 
 5290         r"""set_attractive_weight(LennardJonesPairScore self, double attractive_weight)""" 
 5291         return _IMP_atom.LennardJonesPairScore_set_attractive_weight(self, attractive_weight)
 
 5293     def get_attractive_weight(self):
 
 5294         r"""get_attractive_weight(LennardJonesPairScore self) -> double""" 
 5295         return _IMP_atom.LennardJonesPairScore_get_attractive_weight(self)
 
 5297     def do_get_inputs(self, m, pis):
 
 5298         r"""do_get_inputs(LennardJonesPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 5299         return _IMP_atom.LennardJonesPairScore_do_get_inputs(self, m, pis)
 
 5301     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 5302         r"""evaluate_indexes(LennardJonesPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 5303         return _IMP_atom.LennardJonesPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 5305     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 5306         r"""evaluate_indexes_scores(LennardJonesPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 5307         return _IMP_atom.LennardJonesPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 5309     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 5310         r"""evaluate_indexes_delta(LennardJonesPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 5311         return _IMP_atom.LennardJonesPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 5313     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 5314         r"""evaluate_if_good_indexes(LennardJonesPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 5315         return _IMP_atom.LennardJonesPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 5317     def get_version_info(self):
 
 5318         r"""get_version_info(LennardJonesPairScore self) -> VersionInfo""" 
 5319         return _IMP_atom.LennardJonesPairScore_get_version_info(self)
 
 5320     __swig_destroy__ = _IMP_atom.delete_LennardJonesPairScore
 
 5323         r"""__str__(LennardJonesPairScore self) -> std::string""" 
 5324         return _IMP_atom.LennardJonesPairScore___str__(self)
 
 5327         r"""__repr__(LennardJonesPairScore self) -> std::string""" 
 5328         return _IMP_atom.LennardJonesPairScore___repr__(self)
 
 5332        return _object_cast_to_LennardJonesPairScore(o)
 
 5336 _IMP_atom.LennardJonesPairScore_swigregister(LennardJonesPairScore)
 
 5338     r"""Proxy of C++ IMP::atom::LennardJonesType class.""" 
 5340     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 5342     def __init__(self, *args):
 
 5343         r"""__init__(LennardJonesType self, double well_depth, double radius, std::string name="LennardJonesType%1%") -> LennardJonesType""" 
 5344         _IMP_atom.LennardJonesType_swiginit(self, _IMP_atom.new_LennardJonesType(*args))
 
 5346     def get_well_depth(self):
 
 5347         r"""get_well_depth(LennardJonesType self) -> double""" 
 5348         return _IMP_atom.LennardJonesType_get_well_depth(self)
 
 5350     def set_well_depth(self, d):
 
 5351         r"""set_well_depth(LennardJonesType self, double d)""" 
 5352         return _IMP_atom.LennardJonesType_set_well_depth(self, d)
 
 5354     def get_radius(self):
 
 5355         r"""get_radius(LennardJonesType self) -> double""" 
 5356         return _IMP_atom.LennardJonesType_get_radius(self)
 
 5358     def set_radius(self, r):
 
 5359         r"""set_radius(LennardJonesType self, double r)""" 
 5360         return _IMP_atom.LennardJonesType_set_radius(self, r)
 
 5363         r"""get_index(LennardJonesType self) -> int""" 
 5364         return _IMP_atom.LennardJonesType_get_index(self)
 
 5366     def get_version_info(self):
 
 5367         r"""get_version_info(LennardJonesType self) -> VersionInfo""" 
 5368         return _IMP_atom.LennardJonesType_get_version_info(self)
 
 5369     __swig_destroy__ = _IMP_atom.delete_LennardJonesType
 
 5372         r"""__str__(LennardJonesType self) -> std::string""" 
 5373         return _IMP_atom.LennardJonesType___str__(self)
 
 5376         r"""__repr__(LennardJonesType self) -> std::string""" 
 5377         return _IMP_atom.LennardJonesType___repr__(self)
 
 5381        return _object_cast_to_LennardJonesType(o)
 
 5385 _IMP_atom.LennardJonesType_swigregister(LennardJonesType)
 
 5387     r"""Proxy of C++ IMP::atom::LennardJonesTyped class.""" 
 5389     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 5391     def __init__(self, *args):
 
 5393         __init__(LennardJonesTyped self) -> LennardJonesTyped 
 5394         __init__(LennardJonesTyped self, Model m, ParticleIndex id) -> LennardJonesTyped 
 5395         __init__(LennardJonesTyped self, _ParticleAdaptor d) -> LennardJonesTyped 
 5397         _IMP_atom.LennardJonesTyped_swiginit(self, _IMP_atom.new_LennardJonesTyped(*args))
 
 5399     def show(self, *args):
 
 5400         r"""show(LennardJonesTyped self, _ostream out=std::cout)""" 
 5401         return _IMP_atom.LennardJonesTyped_show(self, *args)
 
 5404     def setup_particle(*args):
 
 5406         setup_particle(Model m, ParticleIndex pi, LennardJonesType type) -> LennardJonesTyped 
 5407         setup_particle(_ParticleAdaptor pa, LennardJonesType type) -> LennardJonesTyped 
 5409         return _IMP_atom.LennardJonesTyped_setup_particle(*args)
 
 5412     def get_is_setup(*args):
 
 5414         get_is_setup(_ParticleAdaptor p) -> bool 
 5415         get_is_setup(Model m, ParticleIndex pi) -> bool 
 5417         return _IMP_atom.LennardJonesTyped_get_is_setup(*args)
 
 5419     def set_type(self, type):
 
 5420         r"""set_type(LennardJonesTyped self, LennardJonesType type)""" 
 5421         return _IMP_atom.LennardJonesTyped_set_type(self, type)
 
 5424         r"""get_type(LennardJonesTyped self) -> LennardJonesType""" 
 5425         return _IMP_atom.LennardJonesTyped_get_type(self)
 
 5428         r"""get_index(LennardJonesTyped self) -> int""" 
 5429         return _IMP_atom.LennardJonesTyped_get_index(self)
 
 5431     def get_well_depth(self):
 
 5432         r"""get_well_depth(LennardJonesTyped self) -> double""" 
 5433         return _IMP_atom.LennardJonesTyped_get_well_depth(self)
 
 5435     def get_radius(self):
 
 5436         r"""get_radius(LennardJonesTyped self) -> double""" 
 5437         return _IMP_atom.LennardJonesTyped_get_radius(self)
 
 5441         r"""get_type_key() -> IntKey""" 
 5442         return _IMP_atom.LennardJonesTyped_get_type_key()
 
 5444     def add_attribute(self, *args):
 
 5446         add_attribute(LennardJonesTyped self, FloatKey k, IMP::Float v, bool opt) 
 5447         add_attribute(LennardJonesTyped self, FloatKey a0, IMP::Float a1) 
 5448         add_attribute(LennardJonesTyped self, IntKey a0, IMP::Int a1) 
 5449         add_attribute(LennardJonesTyped self, FloatsKey a0, IMP::Floats a1) 
 5450         add_attribute(LennardJonesTyped self, IntsKey a0, IMP::Ints a1) 
 5451         add_attribute(LennardJonesTyped self, StringKey a0, IMP::String a1) 
 5452         add_attribute(LennardJonesTyped self, ParticleIndexKey a0, Particle a1) 
 5453         add_attribute(LennardJonesTyped self, ObjectKey a0, Object a1) 
 5454         add_attribute(LennardJonesTyped self, SparseFloatKey a0, IMP::Float a1) 
 5455         add_attribute(LennardJonesTyped self, SparseIntKey a0, IMP::Int a1) 
 5456         add_attribute(LennardJonesTyped self, SparseStringKey a0, IMP::String a1) 
 5457         add_attribute(LennardJonesTyped self, SparseParticleIndexKey a0, ParticleIndex a1) 
 5459         return _IMP_atom.LennardJonesTyped_add_attribute(self, *args)
 
 5461     def get_value(self, *args):
 
 5463         get_value(LennardJonesTyped self, FloatKey a0) -> IMP::Float 
 5464         get_value(LennardJonesTyped self, IntKey a0) -> IMP::Int 
 5465         get_value(LennardJonesTyped self, FloatsKey a0) -> IMP::Floats 
 5466         get_value(LennardJonesTyped self, IntsKey a0) -> IMP::Ints 
 5467         get_value(LennardJonesTyped self, StringKey a0) -> IMP::String 
 5468         get_value(LennardJonesTyped self, ParticleIndexKey a0) -> Particle 
 5469         get_value(LennardJonesTyped self, ObjectKey a0) -> Object 
 5470         get_value(LennardJonesTyped self, SparseFloatKey a0) -> IMP::Float 
 5471         get_value(LennardJonesTyped self, SparseIntKey a0) -> IMP::Int 
 5472         get_value(LennardJonesTyped self, SparseStringKey a0) -> IMP::String 
 5473         get_value(LennardJonesTyped self, SparseParticleIndexKey a0) -> ParticleIndex 
 5475         return _IMP_atom.LennardJonesTyped_get_value(self, *args)
 
 5477     def set_value(self, *args):
 
 5479         set_value(LennardJonesTyped self, FloatKey a0, IMP::Float a1) 
 5480         set_value(LennardJonesTyped self, IntKey a0, IMP::Int a1) 
 5481         set_value(LennardJonesTyped self, FloatsKey a0, IMP::Floats a1) 
 5482         set_value(LennardJonesTyped self, IntsKey a0, IMP::Ints a1) 
 5483         set_value(LennardJonesTyped self, StringKey a0, IMP::String a1) 
 5484         set_value(LennardJonesTyped self, ParticleIndexKey a0, Particle a1) 
 5485         set_value(LennardJonesTyped self, ObjectKey a0, Object a1) 
 5486         set_value(LennardJonesTyped self, SparseFloatKey a0, IMP::Float a1) 
 5487         set_value(LennardJonesTyped self, SparseIntKey a0, IMP::Int a1) 
 5488         set_value(LennardJonesTyped self, SparseStringKey a0, IMP::String a1) 
 5489         set_value(LennardJonesTyped self, SparseParticleIndexKey a0, ParticleIndex a1) 
 5491         return _IMP_atom.LennardJonesTyped_set_value(self, *args)
 
 5493     def remove_attribute(self, *args):
 
 5495         remove_attribute(LennardJonesTyped self, FloatKey a0) 
 5496         remove_attribute(LennardJonesTyped self, IntKey a0) 
 5497         remove_attribute(LennardJonesTyped self, FloatsKey a0) 
 5498         remove_attribute(LennardJonesTyped self, IntsKey a0) 
 5499         remove_attribute(LennardJonesTyped self, StringKey a0) 
 5500         remove_attribute(LennardJonesTyped self, ParticleIndexKey a0) 
 5501         remove_attribute(LennardJonesTyped self, ObjectKey a0) 
 5502         remove_attribute(LennardJonesTyped self, SparseFloatKey a0) 
 5503         remove_attribute(LennardJonesTyped self, SparseIntKey a0) 
 5504         remove_attribute(LennardJonesTyped self, SparseStringKey a0) 
 5505         remove_attribute(LennardJonesTyped self, SparseParticleIndexKey a0) 
 5507         return _IMP_atom.LennardJonesTyped_remove_attribute(self, *args)
 
 5509     def has_attribute(self, *args):
 
 5511         has_attribute(LennardJonesTyped self, FloatKey a0) -> bool 
 5512         has_attribute(LennardJonesTyped self, IntKey a0) -> bool 
 5513         has_attribute(LennardJonesTyped self, FloatsKey a0) -> bool 
 5514         has_attribute(LennardJonesTyped self, IntsKey a0) -> bool 
 5515         has_attribute(LennardJonesTyped self, StringKey a0) -> bool 
 5516         has_attribute(LennardJonesTyped self, ParticleIndexKey a0) -> bool 
 5517         has_attribute(LennardJonesTyped self, ObjectKey a0) -> bool 
 5518         has_attribute(LennardJonesTyped self, SparseFloatKey a0) -> bool 
 5519         has_attribute(LennardJonesTyped self, SparseIntKey a0) -> bool 
 5520         has_attribute(LennardJonesTyped self, SparseStringKey a0) -> bool 
 5521         has_attribute(LennardJonesTyped self, SparseParticleIndexKey a0) -> bool 
 5523         return _IMP_atom.LennardJonesTyped_has_attribute(self, *args)
 
 5525     def get_derivative(self, a0):
 
 5526         r"""get_derivative(LennardJonesTyped self, FloatKey a0) -> double""" 
 5527         return _IMP_atom.LennardJonesTyped_get_derivative(self, a0)
 
 5530         r"""get_name(LennardJonesTyped self) -> std::string""" 
 5531         return _IMP_atom.LennardJonesTyped_get_name(self)
 
 5533     def clear_caches(self):
 
 5534         r"""clear_caches(LennardJonesTyped self)""" 
 5535         return _IMP_atom.LennardJonesTyped_clear_caches(self)
 
 5537     def set_name(self, a0):
 
 5538         r"""set_name(LennardJonesTyped self, std::string a0)""" 
 5539         return _IMP_atom.LennardJonesTyped_set_name(self, a0)
 
 5542         r"""set_check_level(LennardJonesTyped self, IMP::CheckLevel a0)""" 
 5543         return _IMP_atom.LennardJonesTyped_set_check_level(self, a0)
 
 5545     def add_to_derivative(self, a0, a1, a2):
 
 5546         r"""add_to_derivative(LennardJonesTyped self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 5547         return _IMP_atom.LennardJonesTyped_add_to_derivative(self, a0, a1, a2)
 
 5549     def set_is_optimized(self, a0, a1):
 
 5550         r"""set_is_optimized(LennardJonesTyped self, FloatKey a0, bool a1)""" 
 5551         return _IMP_atom.LennardJonesTyped_set_is_optimized(self, a0, a1)
 
 5553     def get_is_optimized(self, a0):
 
 5554         r"""get_is_optimized(LennardJonesTyped self, FloatKey a0) -> bool""" 
 5555         return _IMP_atom.LennardJonesTyped_get_is_optimized(self, a0)
 
 5558         r"""get_check_level(LennardJonesTyped self) -> IMP::CheckLevel""" 
 5559         return _IMP_atom.LennardJonesTyped_get_check_level(self)
 
 5561     def __eq__(self, *args):
 
 5563         __eq__(LennardJonesTyped self, LennardJonesTyped o) -> bool 
 5564         __eq__(LennardJonesTyped self, Particle d) -> bool 
 5566         return _IMP_atom.LennardJonesTyped___eq__(self, *args)
 
 5568     def __ne__(self, *args):
 
 5570         __ne__(LennardJonesTyped self, LennardJonesTyped o) -> bool 
 5571         __ne__(LennardJonesTyped self, Particle d) -> bool 
 5573         return _IMP_atom.LennardJonesTyped___ne__(self, *args)
 
 5575     def __le__(self, *args):
 
 5577         __le__(LennardJonesTyped self, LennardJonesTyped o) -> bool 
 5578         __le__(LennardJonesTyped self, Particle d) -> bool 
 5580         return _IMP_atom.LennardJonesTyped___le__(self, *args)
 
 5582     def __lt__(self, *args):
 
 5584         __lt__(LennardJonesTyped self, LennardJonesTyped o) -> bool 
 5585         __lt__(LennardJonesTyped self, Particle d) -> bool 
 5587         return _IMP_atom.LennardJonesTyped___lt__(self, *args)
 
 5589     def __ge__(self, *args):
 
 5591         __ge__(LennardJonesTyped self, LennardJonesTyped o) -> bool 
 5592         __ge__(LennardJonesTyped self, Particle d) -> bool 
 5594         return _IMP_atom.LennardJonesTyped___ge__(self, *args)
 
 5596     def __gt__(self, *args):
 
 5598         __gt__(LennardJonesTyped self, LennardJonesTyped o) -> bool 
 5599         __gt__(LennardJonesTyped self, Particle d) -> bool 
 5601         return _IMP_atom.LennardJonesTyped___gt__(self, *args)
 
 5604         r"""__hash__(LennardJonesTyped self) -> std::size_t""" 
 5605         return _IMP_atom.LennardJonesTyped___hash__(self)
 
 5608         r"""__str__(LennardJonesTyped self) -> std::string""" 
 5609         return _IMP_atom.LennardJonesTyped___str__(self)
 
 5612         r"""__repr__(LennardJonesTyped self) -> std::string""" 
 5613         return _IMP_atom.LennardJonesTyped___repr__(self)
 
 5615     def _get_as_binary(self):
 
 5616         r"""_get_as_binary(LennardJonesTyped self) -> PyObject *""" 
 5617         return _IMP_atom.LennardJonesTyped__get_as_binary(self)
 
 5619     def _set_from_binary(self, p):
 
 5620         r"""_set_from_binary(LennardJonesTyped self, PyObject * p)""" 
 5621         return _IMP_atom.LennardJonesTyped__set_from_binary(self, p)
 
 5623     def __getstate__(self):
 
 5624         p = self._get_as_binary()
 
 5625         if len(self.__dict__) > 1:
 
 5626             d = self.__dict__.copy()
 
 5631     def __setstate__(self, p):
 
 5632         if not hasattr(self, 
'this'):
 
 5634         if isinstance(p, tuple):
 
 5636             self.__dict__.update(d)
 
 5637         return self._set_from_binary(p)
 
 5639     __swig_destroy__ = _IMP_atom.delete_LennardJonesTyped
 
 5642 _IMP_atom.LennardJonesTyped_swigregister(LennardJonesTyped)
 
 5644     r"""Proxy of C++ IMP::atom::LinearVelocity class.""" 
 5646     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 5648     def __init__(self, *args):
 
 5650         __init__(LinearVelocity self) -> LinearVelocity 
 5651         __init__(LinearVelocity self, Model m, ParticleIndex id) -> LinearVelocity 
 5652         __init__(LinearVelocity self, _ParticleAdaptor d) -> LinearVelocity 
 5654         _IMP_atom.LinearVelocity_swiginit(self, _IMP_atom.new_LinearVelocity(*args))
 
 5657     def get_is_setup(*args):
 
 5659         get_is_setup(Model m, ParticleIndex pi) -> bool 
 5660         get_is_setup(_ParticleAdaptor p) -> bool 
 5662         return _IMP_atom.LinearVelocity_get_is_setup(*args)
 
 5664     def show(self, *args):
 
 5665         r"""show(LinearVelocity self, _ostream out=std::cout)""" 
 5666         return _IMP_atom.LinearVelocity_show(self, *args)
 
 5669     def setup_particle(*args):
 
 5671         setup_particle(Model m, ParticleIndex pi) -> LinearVelocity 
 5672         setup_particle(_ParticleAdaptor pa) -> LinearVelocity 
 5673         setup_particle(Model m, ParticleIndex pi, Vector3D v) -> LinearVelocity 
 5674         setup_particle(_ParticleAdaptor pa, Vector3D v) -> LinearVelocity 
 5676         return _IMP_atom.LinearVelocity_setup_particle(*args)
 
 5678     def set_velocity(self, v):
 
 5679         r"""set_velocity(LinearVelocity self, Vector3D v)""" 
 5680         return _IMP_atom.LinearVelocity_set_velocity(self, v)
 
 5682     def get_velocity(self):
 
 5683         r"""get_velocity(LinearVelocity self) -> Vector3D""" 
 5684         return _IMP_atom.LinearVelocity_get_velocity(self)
 
 5686     def add_attribute(self, *args):
 
 5688         add_attribute(LinearVelocity self, FloatKey k, IMP::Float v, bool opt) 
 5689         add_attribute(LinearVelocity self, FloatKey a0, IMP::Float a1) 
 5690         add_attribute(LinearVelocity self, IntKey a0, IMP::Int a1) 
 5691         add_attribute(LinearVelocity self, FloatsKey a0, IMP::Floats a1) 
 5692         add_attribute(LinearVelocity self, IntsKey a0, IMP::Ints a1) 
 5693         add_attribute(LinearVelocity self, StringKey a0, IMP::String a1) 
 5694         add_attribute(LinearVelocity self, ParticleIndexKey a0, Particle a1) 
 5695         add_attribute(LinearVelocity self, ObjectKey a0, Object a1) 
 5696         add_attribute(LinearVelocity self, SparseFloatKey a0, IMP::Float a1) 
 5697         add_attribute(LinearVelocity self, SparseIntKey a0, IMP::Int a1) 
 5698         add_attribute(LinearVelocity self, SparseStringKey a0, IMP::String a1) 
 5699         add_attribute(LinearVelocity self, SparseParticleIndexKey a0, ParticleIndex a1) 
 5701         return _IMP_atom.LinearVelocity_add_attribute(self, *args)
 
 5703     def get_value(self, *args):
 
 5705         get_value(LinearVelocity self, FloatKey a0) -> IMP::Float 
 5706         get_value(LinearVelocity self, IntKey a0) -> IMP::Int 
 5707         get_value(LinearVelocity self, FloatsKey a0) -> IMP::Floats 
 5708         get_value(LinearVelocity self, IntsKey a0) -> IMP::Ints 
 5709         get_value(LinearVelocity self, StringKey a0) -> IMP::String 
 5710         get_value(LinearVelocity self, ParticleIndexKey a0) -> Particle 
 5711         get_value(LinearVelocity self, ObjectKey a0) -> Object 
 5712         get_value(LinearVelocity self, SparseFloatKey a0) -> IMP::Float 
 5713         get_value(LinearVelocity self, SparseIntKey a0) -> IMP::Int 
 5714         get_value(LinearVelocity self, SparseStringKey a0) -> IMP::String 
 5715         get_value(LinearVelocity self, SparseParticleIndexKey a0) -> ParticleIndex 
 5717         return _IMP_atom.LinearVelocity_get_value(self, *args)
 
 5719     def set_value(self, *args):
 
 5721         set_value(LinearVelocity self, FloatKey a0, IMP::Float a1) 
 5722         set_value(LinearVelocity self, IntKey a0, IMP::Int a1) 
 5723         set_value(LinearVelocity self, FloatsKey a0, IMP::Floats a1) 
 5724         set_value(LinearVelocity self, IntsKey a0, IMP::Ints a1) 
 5725         set_value(LinearVelocity self, StringKey a0, IMP::String a1) 
 5726         set_value(LinearVelocity self, ParticleIndexKey a0, Particle a1) 
 5727         set_value(LinearVelocity self, ObjectKey a0, Object a1) 
 5728         set_value(LinearVelocity self, SparseFloatKey a0, IMP::Float a1) 
 5729         set_value(LinearVelocity self, SparseIntKey a0, IMP::Int a1) 
 5730         set_value(LinearVelocity self, SparseStringKey a0, IMP::String a1) 
 5731         set_value(LinearVelocity self, SparseParticleIndexKey a0, ParticleIndex a1) 
 5733         return _IMP_atom.LinearVelocity_set_value(self, *args)
 
 5735     def remove_attribute(self, *args):
 
 5737         remove_attribute(LinearVelocity self, FloatKey a0) 
 5738         remove_attribute(LinearVelocity self, IntKey a0) 
 5739         remove_attribute(LinearVelocity self, FloatsKey a0) 
 5740         remove_attribute(LinearVelocity self, IntsKey a0) 
 5741         remove_attribute(LinearVelocity self, StringKey a0) 
 5742         remove_attribute(LinearVelocity self, ParticleIndexKey a0) 
 5743         remove_attribute(LinearVelocity self, ObjectKey a0) 
 5744         remove_attribute(LinearVelocity self, SparseFloatKey a0) 
 5745         remove_attribute(LinearVelocity self, SparseIntKey a0) 
 5746         remove_attribute(LinearVelocity self, SparseStringKey a0) 
 5747         remove_attribute(LinearVelocity self, SparseParticleIndexKey a0) 
 5749         return _IMP_atom.LinearVelocity_remove_attribute(self, *args)
 
 5751     def has_attribute(self, *args):
 
 5753         has_attribute(LinearVelocity self, FloatKey a0) -> bool 
 5754         has_attribute(LinearVelocity self, IntKey a0) -> bool 
 5755         has_attribute(LinearVelocity self, FloatsKey a0) -> bool 
 5756         has_attribute(LinearVelocity self, IntsKey a0) -> bool 
 5757         has_attribute(LinearVelocity self, StringKey a0) -> bool 
 5758         has_attribute(LinearVelocity self, ParticleIndexKey a0) -> bool 
 5759         has_attribute(LinearVelocity self, ObjectKey a0) -> bool 
 5760         has_attribute(LinearVelocity self, SparseFloatKey a0) -> bool 
 5761         has_attribute(LinearVelocity self, SparseIntKey a0) -> bool 
 5762         has_attribute(LinearVelocity self, SparseStringKey a0) -> bool 
 5763         has_attribute(LinearVelocity self, SparseParticleIndexKey a0) -> bool 
 5765         return _IMP_atom.LinearVelocity_has_attribute(self, *args)
 
 5767     def get_derivative(self, a0):
 
 5768         r"""get_derivative(LinearVelocity self, FloatKey a0) -> double""" 
 5769         return _IMP_atom.LinearVelocity_get_derivative(self, a0)
 
 5772         r"""get_name(LinearVelocity self) -> std::string""" 
 5773         return _IMP_atom.LinearVelocity_get_name(self)
 
 5775     def clear_caches(self):
 
 5776         r"""clear_caches(LinearVelocity self)""" 
 5777         return _IMP_atom.LinearVelocity_clear_caches(self)
 
 5779     def set_name(self, a0):
 
 5780         r"""set_name(LinearVelocity self, std::string a0)""" 
 5781         return _IMP_atom.LinearVelocity_set_name(self, a0)
 
 5784         r"""set_check_level(LinearVelocity self, IMP::CheckLevel a0)""" 
 5785         return _IMP_atom.LinearVelocity_set_check_level(self, a0)
 
 5787     def add_to_derivative(self, a0, a1, a2):
 
 5788         r"""add_to_derivative(LinearVelocity self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 5789         return _IMP_atom.LinearVelocity_add_to_derivative(self, a0, a1, a2)
 
 5791     def set_is_optimized(self, a0, a1):
 
 5792         r"""set_is_optimized(LinearVelocity self, FloatKey a0, bool a1)""" 
 5793         return _IMP_atom.LinearVelocity_set_is_optimized(self, a0, a1)
 
 5795     def get_is_optimized(self, a0):
 
 5796         r"""get_is_optimized(LinearVelocity self, FloatKey a0) -> bool""" 
 5797         return _IMP_atom.LinearVelocity_get_is_optimized(self, a0)
 
 5800         r"""get_check_level(LinearVelocity self) -> IMP::CheckLevel""" 
 5801         return _IMP_atom.LinearVelocity_get_check_level(self)
 
 5803     def __eq__(self, *args):
 
 5805         __eq__(LinearVelocity self, LinearVelocity o) -> bool 
 5806         __eq__(LinearVelocity self, Particle d) -> bool 
 5808         return _IMP_atom.LinearVelocity___eq__(self, *args)
 
 5810     def __ne__(self, *args):
 
 5812         __ne__(LinearVelocity self, LinearVelocity o) -> bool 
 5813         __ne__(LinearVelocity self, Particle d) -> bool 
 5815         return _IMP_atom.LinearVelocity___ne__(self, *args)
 
 5817     def __le__(self, *args):
 
 5819         __le__(LinearVelocity self, LinearVelocity o) -> bool 
 5820         __le__(LinearVelocity self, Particle d) -> bool 
 5822         return _IMP_atom.LinearVelocity___le__(self, *args)
 
 5824     def __lt__(self, *args):
 
 5826         __lt__(LinearVelocity self, LinearVelocity o) -> bool 
 5827         __lt__(LinearVelocity self, Particle d) -> bool 
 5829         return _IMP_atom.LinearVelocity___lt__(self, *args)
 
 5831     def __ge__(self, *args):
 
 5833         __ge__(LinearVelocity self, LinearVelocity o) -> bool 
 5834         __ge__(LinearVelocity self, Particle d) -> bool 
 5836         return _IMP_atom.LinearVelocity___ge__(self, *args)
 
 5838     def __gt__(self, *args):
 
 5840         __gt__(LinearVelocity self, LinearVelocity o) -> bool 
 5841         __gt__(LinearVelocity self, Particle d) -> bool 
 5843         return _IMP_atom.LinearVelocity___gt__(self, *args)
 
 5846         r"""__hash__(LinearVelocity self) -> std::size_t""" 
 5847         return _IMP_atom.LinearVelocity___hash__(self)
 
 5850         r"""__str__(LinearVelocity self) -> std::string""" 
 5851         return _IMP_atom.LinearVelocity___str__(self)
 
 5854         r"""__repr__(LinearVelocity self) -> std::string""" 
 5855         return _IMP_atom.LinearVelocity___repr__(self)
 
 5857     def _get_as_binary(self):
 
 5858         r"""_get_as_binary(LinearVelocity self) -> PyObject *""" 
 5859         return _IMP_atom.LinearVelocity__get_as_binary(self)
 
 5861     def _set_from_binary(self, p):
 
 5862         r"""_set_from_binary(LinearVelocity self, PyObject * p)""" 
 5863         return _IMP_atom.LinearVelocity__set_from_binary(self, p)
 
 5865     def __getstate__(self):
 
 5866         p = self._get_as_binary()
 
 5867         if len(self.__dict__) > 1:
 
 5868             d = self.__dict__.copy()
 
 5873     def __setstate__(self, p):
 
 5874         if not hasattr(self, 
'this'):
 
 5876         if isinstance(p, tuple):
 
 5878             self.__dict__.update(d)
 
 5879         return self._set_from_binary(p)
 
 5881     __swig_destroy__ = _IMP_atom.delete_LinearVelocity
 
 5884 _IMP_atom.LinearVelocity_swigregister(LinearVelocity)
 
 5886     r"""Proxy of C++ IMP::atom::AngularVelocity class.""" 
 5888     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 5890     def __init__(self, *args):
 
 5892         __init__(AngularVelocity self) -> AngularVelocity 
 5893         __init__(AngularVelocity self, Model m, ParticleIndex id) -> AngularVelocity 
 5894         __init__(AngularVelocity self, _ParticleAdaptor d) -> AngularVelocity 
 5896         _IMP_atom.AngularVelocity_swiginit(self, _IMP_atom.new_AngularVelocity(*args))
 
 5899     def get_is_setup(*args):
 
 5901         get_is_setup(Model m, ParticleIndex pi) -> bool 
 5902         get_is_setup(_ParticleAdaptor p) -> bool 
 5904         return _IMP_atom.AngularVelocity_get_is_setup(*args)
 
 5906     def show(self, *args):
 
 5907         r"""show(AngularVelocity self, _ostream out=std::cout)""" 
 5908         return _IMP_atom.AngularVelocity_show(self, *args)
 
 5911     def setup_particle(*args):
 
 5913         setup_particle(Model m, ParticleIndex pi) -> AngularVelocity 
 5914         setup_particle(_ParticleAdaptor pa) -> AngularVelocity 
 5915         setup_particle(Model m, ParticleIndex pi, Vector4D v) -> AngularVelocity 
 5916         setup_particle(_ParticleAdaptor pa, Vector4D v) -> AngularVelocity 
 5918         return _IMP_atom.AngularVelocity_setup_particle(*args)
 
 5920     def set_velocity(self, v):
 
 5921         r"""set_velocity(AngularVelocity self, Vector4D v)""" 
 5922         return _IMP_atom.AngularVelocity_set_velocity(self, v)
 
 5924     def get_velocity(self):
 
 5925         r"""get_velocity(AngularVelocity self) -> Vector4D""" 
 5926         return _IMP_atom.AngularVelocity_get_velocity(self)
 
 5928     def add_attribute(self, *args):
 
 5930         add_attribute(AngularVelocity self, FloatKey k, IMP::Float v, bool opt) 
 5931         add_attribute(AngularVelocity self, FloatKey a0, IMP::Float a1) 
 5932         add_attribute(AngularVelocity self, IntKey a0, IMP::Int a1) 
 5933         add_attribute(AngularVelocity self, FloatsKey a0, IMP::Floats a1) 
 5934         add_attribute(AngularVelocity self, IntsKey a0, IMP::Ints a1) 
 5935         add_attribute(AngularVelocity self, StringKey a0, IMP::String a1) 
 5936         add_attribute(AngularVelocity self, ParticleIndexKey a0, Particle a1) 
 5937         add_attribute(AngularVelocity self, ObjectKey a0, Object a1) 
 5938         add_attribute(AngularVelocity self, SparseFloatKey a0, IMP::Float a1) 
 5939         add_attribute(AngularVelocity self, SparseIntKey a0, IMP::Int a1) 
 5940         add_attribute(AngularVelocity self, SparseStringKey a0, IMP::String a1) 
 5941         add_attribute(AngularVelocity self, SparseParticleIndexKey a0, ParticleIndex a1) 
 5943         return _IMP_atom.AngularVelocity_add_attribute(self, *args)
 
 5945     def get_value(self, *args):
 
 5947         get_value(AngularVelocity self, FloatKey a0) -> IMP::Float 
 5948         get_value(AngularVelocity self, IntKey a0) -> IMP::Int 
 5949         get_value(AngularVelocity self, FloatsKey a0) -> IMP::Floats 
 5950         get_value(AngularVelocity self, IntsKey a0) -> IMP::Ints 
 5951         get_value(AngularVelocity self, StringKey a0) -> IMP::String 
 5952         get_value(AngularVelocity self, ParticleIndexKey a0) -> Particle 
 5953         get_value(AngularVelocity self, ObjectKey a0) -> Object 
 5954         get_value(AngularVelocity self, SparseFloatKey a0) -> IMP::Float 
 5955         get_value(AngularVelocity self, SparseIntKey a0) -> IMP::Int 
 5956         get_value(AngularVelocity self, SparseStringKey a0) -> IMP::String 
 5957         get_value(AngularVelocity self, SparseParticleIndexKey a0) -> ParticleIndex 
 5959         return _IMP_atom.AngularVelocity_get_value(self, *args)
 
 5961     def set_value(self, *args):
 
 5963         set_value(AngularVelocity self, FloatKey a0, IMP::Float a1) 
 5964         set_value(AngularVelocity self, IntKey a0, IMP::Int a1) 
 5965         set_value(AngularVelocity self, FloatsKey a0, IMP::Floats a1) 
 5966         set_value(AngularVelocity self, IntsKey a0, IMP::Ints a1) 
 5967         set_value(AngularVelocity self, StringKey a0, IMP::String a1) 
 5968         set_value(AngularVelocity self, ParticleIndexKey a0, Particle a1) 
 5969         set_value(AngularVelocity self, ObjectKey a0, Object a1) 
 5970         set_value(AngularVelocity self, SparseFloatKey a0, IMP::Float a1) 
 5971         set_value(AngularVelocity self, SparseIntKey a0, IMP::Int a1) 
 5972         set_value(AngularVelocity self, SparseStringKey a0, IMP::String a1) 
 5973         set_value(AngularVelocity self, SparseParticleIndexKey a0, ParticleIndex a1) 
 5975         return _IMP_atom.AngularVelocity_set_value(self, *args)
 
 5977     def remove_attribute(self, *args):
 
 5979         remove_attribute(AngularVelocity self, FloatKey a0) 
 5980         remove_attribute(AngularVelocity self, IntKey a0) 
 5981         remove_attribute(AngularVelocity self, FloatsKey a0) 
 5982         remove_attribute(AngularVelocity self, IntsKey a0) 
 5983         remove_attribute(AngularVelocity self, StringKey a0) 
 5984         remove_attribute(AngularVelocity self, ParticleIndexKey a0) 
 5985         remove_attribute(AngularVelocity self, ObjectKey a0) 
 5986         remove_attribute(AngularVelocity self, SparseFloatKey a0) 
 5987         remove_attribute(AngularVelocity self, SparseIntKey a0) 
 5988         remove_attribute(AngularVelocity self, SparseStringKey a0) 
 5989         remove_attribute(AngularVelocity self, SparseParticleIndexKey a0) 
 5991         return _IMP_atom.AngularVelocity_remove_attribute(self, *args)
 
 5993     def has_attribute(self, *args):
 
 5995         has_attribute(AngularVelocity self, FloatKey a0) -> bool 
 5996         has_attribute(AngularVelocity self, IntKey a0) -> bool 
 5997         has_attribute(AngularVelocity self, FloatsKey a0) -> bool 
 5998         has_attribute(AngularVelocity self, IntsKey a0) -> bool 
 5999         has_attribute(AngularVelocity self, StringKey a0) -> bool 
 6000         has_attribute(AngularVelocity self, ParticleIndexKey a0) -> bool 
 6001         has_attribute(AngularVelocity self, ObjectKey a0) -> bool 
 6002         has_attribute(AngularVelocity self, SparseFloatKey a0) -> bool 
 6003         has_attribute(AngularVelocity self, SparseIntKey a0) -> bool 
 6004         has_attribute(AngularVelocity self, SparseStringKey a0) -> bool 
 6005         has_attribute(AngularVelocity self, SparseParticleIndexKey a0) -> bool 
 6007         return _IMP_atom.AngularVelocity_has_attribute(self, *args)
 
 6009     def get_derivative(self, a0):
 
 6010         r"""get_derivative(AngularVelocity self, FloatKey a0) -> double""" 
 6011         return _IMP_atom.AngularVelocity_get_derivative(self, a0)
 
 6014         r"""get_name(AngularVelocity self) -> std::string""" 
 6015         return _IMP_atom.AngularVelocity_get_name(self)
 
 6017     def clear_caches(self):
 
 6018         r"""clear_caches(AngularVelocity self)""" 
 6019         return _IMP_atom.AngularVelocity_clear_caches(self)
 
 6021     def set_name(self, a0):
 
 6022         r"""set_name(AngularVelocity self, std::string a0)""" 
 6023         return _IMP_atom.AngularVelocity_set_name(self, a0)
 
 6026         r"""set_check_level(AngularVelocity self, IMP::CheckLevel a0)""" 
 6027         return _IMP_atom.AngularVelocity_set_check_level(self, a0)
 
 6029     def add_to_derivative(self, a0, a1, a2):
 
 6030         r"""add_to_derivative(AngularVelocity self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 6031         return _IMP_atom.AngularVelocity_add_to_derivative(self, a0, a1, a2)
 
 6033     def set_is_optimized(self, a0, a1):
 
 6034         r"""set_is_optimized(AngularVelocity self, FloatKey a0, bool a1)""" 
 6035         return _IMP_atom.AngularVelocity_set_is_optimized(self, a0, a1)
 
 6037     def get_is_optimized(self, a0):
 
 6038         r"""get_is_optimized(AngularVelocity self, FloatKey a0) -> bool""" 
 6039         return _IMP_atom.AngularVelocity_get_is_optimized(self, a0)
 
 6042         r"""get_check_level(AngularVelocity self) -> IMP::CheckLevel""" 
 6043         return _IMP_atom.AngularVelocity_get_check_level(self)
 
 6045     def __eq__(self, *args):
 
 6047         __eq__(AngularVelocity self, AngularVelocity o) -> bool 
 6048         __eq__(AngularVelocity self, Particle d) -> bool 
 6050         return _IMP_atom.AngularVelocity___eq__(self, *args)
 
 6052     def __ne__(self, *args):
 
 6054         __ne__(AngularVelocity self, AngularVelocity o) -> bool 
 6055         __ne__(AngularVelocity self, Particle d) -> bool 
 6057         return _IMP_atom.AngularVelocity___ne__(self, *args)
 
 6059     def __le__(self, *args):
 
 6061         __le__(AngularVelocity self, AngularVelocity o) -> bool 
 6062         __le__(AngularVelocity self, Particle d) -> bool 
 6064         return _IMP_atom.AngularVelocity___le__(self, *args)
 
 6066     def __lt__(self, *args):
 
 6068         __lt__(AngularVelocity self, AngularVelocity o) -> bool 
 6069         __lt__(AngularVelocity self, Particle d) -> bool 
 6071         return _IMP_atom.AngularVelocity___lt__(self, *args)
 
 6073     def __ge__(self, *args):
 
 6075         __ge__(AngularVelocity self, AngularVelocity o) -> bool 
 6076         __ge__(AngularVelocity self, Particle d) -> bool 
 6078         return _IMP_atom.AngularVelocity___ge__(self, *args)
 
 6080     def __gt__(self, *args):
 
 6082         __gt__(AngularVelocity self, AngularVelocity o) -> bool 
 6083         __gt__(AngularVelocity self, Particle d) -> bool 
 6085         return _IMP_atom.AngularVelocity___gt__(self, *args)
 
 6088         r"""__hash__(AngularVelocity self) -> std::size_t""" 
 6089         return _IMP_atom.AngularVelocity___hash__(self)
 
 6092         r"""__str__(AngularVelocity self) -> std::string""" 
 6093         return _IMP_atom.AngularVelocity___str__(self)
 
 6096         r"""__repr__(AngularVelocity self) -> std::string""" 
 6097         return _IMP_atom.AngularVelocity___repr__(self)
 
 6099     def _get_as_binary(self):
 
 6100         r"""_get_as_binary(AngularVelocity self) -> PyObject *""" 
 6101         return _IMP_atom.AngularVelocity__get_as_binary(self)
 
 6103     def _set_from_binary(self, p):
 
 6104         r"""_set_from_binary(AngularVelocity self, PyObject * p)""" 
 6105         return _IMP_atom.AngularVelocity__set_from_binary(self, p)
 
 6107     def __getstate__(self):
 
 6108         p = self._get_as_binary()
 
 6109         if len(self.__dict__) > 1:
 
 6110             d = self.__dict__.copy()
 
 6115     def __setstate__(self, p):
 
 6116         if not hasattr(self, 
'this'):
 
 6118         if isinstance(p, tuple):
 
 6120             self.__dict__.update(d)
 
 6121         return self._set_from_binary(p)
 
 6123     __swig_destroy__ = _IMP_atom.delete_AngularVelocity
 
 6126 _IMP_atom.AngularVelocity_swigregister(AngularVelocity)
 
 6127 class MolecularDynamics(Simulator):
 
 6128     r"""Proxy of C++ IMP::atom::MolecularDynamics class.""" 
 6130     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6132     def __init__(self, m):
 
 6133         r"""__init__(MolecularDynamics self, Model m) -> MolecularDynamics""" 
 6134         _IMP_atom.MolecularDynamics_swiginit(self, _IMP_atom.new_MolecularDynamics(m))
 
 6136     def get_kinetic_energy(self):
 
 6137         r"""get_kinetic_energy(MolecularDynamics self) -> IMP::Float""" 
 6138         return _IMP_atom.MolecularDynamics_get_kinetic_energy(self)
 
 6140     def get_kinetic_temperature(self, ekinetic):
 
 6141         r"""get_kinetic_temperature(MolecularDynamics self, IMP::Float ekinetic) -> IMP::Float""" 
 6142         return _IMP_atom.MolecularDynamics_get_kinetic_temperature(self, ekinetic)
 
 6144     def set_velocity_cap(self, velocity_cap):
 
 6145         r"""set_velocity_cap(MolecularDynamics self, IMP::Float velocity_cap)""" 
 6146         return _IMP_atom.MolecularDynamics_set_velocity_cap(self, velocity_cap)
 
 6148     def assign_velocities(self, temperature):
 
 6149         r"""assign_velocities(MolecularDynamics self, IMP::Float temperature)""" 
 6150         return _IMP_atom.MolecularDynamics_assign_velocities(self, temperature)
 
 6152     def setup(self, ps):
 
 6153         r"""setup(MolecularDynamics self, IMP::ParticleIndexes const & ps)""" 
 6154         return _IMP_atom.MolecularDynamics_setup(self, ps)
 
 6156     def do_step(self, sc, dt):
 
 6157         r"""do_step(MolecularDynamics self, IMP::ParticleIndexes const & sc, double dt) -> double""" 
 6158         return _IMP_atom.MolecularDynamics_do_step(self, sc, dt)
 
 6160     def get_is_simulation_particle(self, p):
 
 6161         r"""get_is_simulation_particle(MolecularDynamics self, ParticleIndex p) -> bool""" 
 6162         return _IMP_atom.MolecularDynamics_get_is_simulation_particle(self, p)
 
 6164     def get_version_info(self):
 
 6165         r"""get_version_info(MolecularDynamics self) -> VersionInfo""" 
 6166         return _IMP_atom.MolecularDynamics_get_version_info(self)
 
 6167     __swig_destroy__ = _IMP_atom.delete_MolecularDynamics
 
 6170         r"""__str__(MolecularDynamics self) -> std::string""" 
 6171         return _IMP_atom.MolecularDynamics___str__(self)
 
 6174         r"""__repr__(MolecularDynamics self) -> std::string""" 
 6175         return _IMP_atom.MolecularDynamics___repr__(self)
 
 6179        return _object_cast_to_MolecularDynamics(o)
 
 6183 _IMP_atom.MolecularDynamics_swigregister(MolecularDynamics)
 
 6185     r"""Proxy of C++ IMP::atom::VelocityScalingOptimizerState class.""" 
 6187     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6189     def __init__(self, m, pis, temperature):
 
 6190         r"""__init__(VelocityScalingOptimizerState self, Model m, _ParticleIndexesAdaptor pis, double temperature) -> VelocityScalingOptimizerState""" 
 6191         _IMP_atom.VelocityScalingOptimizerState_swiginit(self, _IMP_atom.new_VelocityScalingOptimizerState(m, pis, temperature))
 
 6193     def set_particles(self, pis):
 
 6194         r"""set_particles(VelocityScalingOptimizerState self, IMP::Particles const & pis)""" 
 6195         return _IMP_atom.VelocityScalingOptimizerState_set_particles(self, pis)
 
 6197     def set_temperature(self, temperature):
 
 6198         r"""set_temperature(VelocityScalingOptimizerState self, IMP::Float temperature)""" 
 6199         return _IMP_atom.VelocityScalingOptimizerState_set_temperature(self, temperature)
 
 6201     def rescale_velocities(self):
 
 6202         r"""rescale_velocities(VelocityScalingOptimizerState self)""" 
 6203         return _IMP_atom.VelocityScalingOptimizerState_rescale_velocities(self)
 
 6205     def get_version_info(self):
 
 6206         r"""get_version_info(VelocityScalingOptimizerState self) -> VersionInfo""" 
 6207         return _IMP_atom.VelocityScalingOptimizerState_get_version_info(self)
 
 6208     __swig_destroy__ = _IMP_atom.delete_VelocityScalingOptimizerState
 
 6211         r"""__str__(VelocityScalingOptimizerState self) -> std::string""" 
 6212         return _IMP_atom.VelocityScalingOptimizerState___str__(self)
 
 6215         r"""__repr__(VelocityScalingOptimizerState self) -> std::string""" 
 6216         return _IMP_atom.VelocityScalingOptimizerState___repr__(self)
 
 6220        return _object_cast_to_VelocityScalingOptimizerState(o)
 
 6224 _IMP_atom.VelocityScalingOptimizerState_swigregister(VelocityScalingOptimizerState)
 
 6225 class Fragment(Hierarchy):
 
 6226     r"""Proxy of C++ IMP::atom::Fragment class.""" 
 6228     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6230     def set_residue_indexes(self, o):
 
 6231         r"""set_residue_indexes(Fragment self, IMP::Ints o)""" 
 6232         return _IMP_atom.Fragment_set_residue_indexes(self, o)
 
 6234     def get_residue_indexes(self):
 
 6235         r"""get_residue_indexes(Fragment self) -> IMP::Ints""" 
 6236         return _IMP_atom.Fragment_get_residue_indexes(self)
 
 6238     def get_contains_residue(self, rindex):
 
 6239         r"""get_contains_residue(Fragment self, int rindex) -> bool""" 
 6240         return _IMP_atom.Fragment_get_contains_residue(self, rindex)
 
 6242     def get_contains_any_sorted_residue(self, rinds):
 
 6243         r"""get_contains_any_sorted_residue(Fragment self, IMP::Ints const & rinds) -> bool""" 
 6244         return _IMP_atom.Fragment_get_contains_any_sorted_residue(self, rinds)
 
 6246     def __init__(self, *args):
 
 6248         __init__(Fragment self) -> Fragment 
 6249         __init__(Fragment self, Model m, ParticleIndex id) -> Fragment 
 6250         __init__(Fragment self, _ParticleAdaptor d) -> Fragment 
 6252         _IMP_atom.Fragment_swiginit(self, _IMP_atom.new_Fragment(*args))
 
 6255     def get_is_setup(*args):
 
 6257         get_is_setup(Model m, ParticleIndex pi) -> bool 
 6258         get_is_setup(_ParticleAdaptor p) -> bool 
 6260         return _IMP_atom.Fragment_get_is_setup(*args)
 
 6262     def show(self, *args):
 
 6263         r"""show(Fragment self, _ostream out=std::cout)""" 
 6264         return _IMP_atom.Fragment_show(self, *args)
 
 6267     def setup_particle(*args):
 
 6269         setup_particle(Model m, ParticleIndex pi) -> Fragment 
 6270         setup_particle(_ParticleAdaptor pa) -> Fragment 
 6271         setup_particle(Model m, ParticleIndex pi, Fragment other) -> Fragment 
 6272         setup_particle(_ParticleAdaptor pa, Fragment other) -> Fragment 
 6273         setup_particle(Model m, ParticleIndex pi, IMP::Ints residue_indexes) -> Fragment 
 6274         setup_particle(_ParticleAdaptor pa, IMP::Ints residue_indexes) -> Fragment 
 6276         return _IMP_atom.Fragment_setup_particle(*args)
 
 6278     def add_attribute(self, *args):
 
 6280         add_attribute(Fragment self, FloatKey k, IMP::Float v, bool opt) 
 6281         add_attribute(Fragment self, FloatKey a0, IMP::Float a1) 
 6282         add_attribute(Fragment self, IntKey a0, IMP::Int a1) 
 6283         add_attribute(Fragment self, FloatsKey a0, IMP::Floats a1) 
 6284         add_attribute(Fragment self, IntsKey a0, IMP::Ints a1) 
 6285         add_attribute(Fragment self, StringKey a0, IMP::String a1) 
 6286         add_attribute(Fragment self, ParticleIndexKey a0, Particle a1) 
 6287         add_attribute(Fragment self, ObjectKey a0, Object a1) 
 6288         add_attribute(Fragment self, SparseFloatKey a0, IMP::Float a1) 
 6289         add_attribute(Fragment self, SparseIntKey a0, IMP::Int a1) 
 6290         add_attribute(Fragment self, SparseStringKey a0, IMP::String a1) 
 6291         add_attribute(Fragment self, SparseParticleIndexKey a0, ParticleIndex a1) 
 6293         return _IMP_atom.Fragment_add_attribute(self, *args)
 
 6295     def get_value(self, *args):
 
 6297         get_value(Fragment self, FloatKey a0) -> IMP::Float 
 6298         get_value(Fragment self, IntKey a0) -> IMP::Int 
 6299         get_value(Fragment self, FloatsKey a0) -> IMP::Floats 
 6300         get_value(Fragment self, IntsKey a0) -> IMP::Ints 
 6301         get_value(Fragment self, StringKey a0) -> IMP::String 
 6302         get_value(Fragment self, ParticleIndexKey a0) -> Particle 
 6303         get_value(Fragment self, ObjectKey a0) -> Object 
 6304         get_value(Fragment self, SparseFloatKey a0) -> IMP::Float 
 6305         get_value(Fragment self, SparseIntKey a0) -> IMP::Int 
 6306         get_value(Fragment self, SparseStringKey a0) -> IMP::String 
 6307         get_value(Fragment self, SparseParticleIndexKey a0) -> ParticleIndex 
 6309         return _IMP_atom.Fragment_get_value(self, *args)
 
 6311     def set_value(self, *args):
 
 6313         set_value(Fragment self, FloatKey a0, IMP::Float a1) 
 6314         set_value(Fragment self, IntKey a0, IMP::Int a1) 
 6315         set_value(Fragment self, FloatsKey a0, IMP::Floats a1) 
 6316         set_value(Fragment self, IntsKey a0, IMP::Ints a1) 
 6317         set_value(Fragment self, StringKey a0, IMP::String a1) 
 6318         set_value(Fragment self, ParticleIndexKey a0, Particle a1) 
 6319         set_value(Fragment self, ObjectKey a0, Object a1) 
 6320         set_value(Fragment self, SparseFloatKey a0, IMP::Float a1) 
 6321         set_value(Fragment self, SparseIntKey a0, IMP::Int a1) 
 6322         set_value(Fragment self, SparseStringKey a0, IMP::String a1) 
 6323         set_value(Fragment self, SparseParticleIndexKey a0, ParticleIndex a1) 
 6325         return _IMP_atom.Fragment_set_value(self, *args)
 
 6327     def remove_attribute(self, *args):
 
 6329         remove_attribute(Fragment self, FloatKey a0) 
 6330         remove_attribute(Fragment self, IntKey a0) 
 6331         remove_attribute(Fragment self, FloatsKey a0) 
 6332         remove_attribute(Fragment self, IntsKey a0) 
 6333         remove_attribute(Fragment self, StringKey a0) 
 6334         remove_attribute(Fragment self, ParticleIndexKey a0) 
 6335         remove_attribute(Fragment self, ObjectKey a0) 
 6336         remove_attribute(Fragment self, SparseFloatKey a0) 
 6337         remove_attribute(Fragment self, SparseIntKey a0) 
 6338         remove_attribute(Fragment self, SparseStringKey a0) 
 6339         remove_attribute(Fragment self, SparseParticleIndexKey a0) 
 6341         return _IMP_atom.Fragment_remove_attribute(self, *args)
 
 6343     def has_attribute(self, *args):
 
 6345         has_attribute(Fragment self, FloatKey a0) -> bool 
 6346         has_attribute(Fragment self, IntKey a0) -> bool 
 6347         has_attribute(Fragment self, FloatsKey a0) -> bool 
 6348         has_attribute(Fragment self, IntsKey a0) -> bool 
 6349         has_attribute(Fragment self, StringKey a0) -> bool 
 6350         has_attribute(Fragment self, ParticleIndexKey a0) -> bool 
 6351         has_attribute(Fragment self, ObjectKey a0) -> bool 
 6352         has_attribute(Fragment self, SparseFloatKey a0) -> bool 
 6353         has_attribute(Fragment self, SparseIntKey a0) -> bool 
 6354         has_attribute(Fragment self, SparseStringKey a0) -> bool 
 6355         has_attribute(Fragment self, SparseParticleIndexKey a0) -> bool 
 6357         return _IMP_atom.Fragment_has_attribute(self, *args)
 
 6359     def get_derivative(self, a0):
 
 6360         r"""get_derivative(Fragment self, FloatKey a0) -> double""" 
 6361         return _IMP_atom.Fragment_get_derivative(self, a0)
 
 6364         r"""get_name(Fragment self) -> std::string""" 
 6365         return _IMP_atom.Fragment_get_name(self)
 
 6367     def clear_caches(self):
 
 6368         r"""clear_caches(Fragment self)""" 
 6369         return _IMP_atom.Fragment_clear_caches(self)
 
 6371     def set_name(self, a0):
 
 6372         r"""set_name(Fragment self, std::string a0)""" 
 6373         return _IMP_atom.Fragment_set_name(self, a0)
 
 6376         r"""set_check_level(Fragment self, IMP::CheckLevel a0)""" 
 6377         return _IMP_atom.Fragment_set_check_level(self, a0)
 
 6379     def add_to_derivative(self, a0, a1, a2):
 
 6380         r"""add_to_derivative(Fragment self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 6381         return _IMP_atom.Fragment_add_to_derivative(self, a0, a1, a2)
 
 6383     def set_is_optimized(self, a0, a1):
 
 6384         r"""set_is_optimized(Fragment self, FloatKey a0, bool a1)""" 
 6385         return _IMP_atom.Fragment_set_is_optimized(self, a0, a1)
 
 6387     def get_is_optimized(self, a0):
 
 6388         r"""get_is_optimized(Fragment self, FloatKey a0) -> bool""" 
 6389         return _IMP_atom.Fragment_get_is_optimized(self, a0)
 
 6392         r"""get_check_level(Fragment self) -> IMP::CheckLevel""" 
 6393         return _IMP_atom.Fragment_get_check_level(self)
 
 6395     def __eq__(self, *args):
 
 6397         __eq__(Fragment self, Fragment o) -> bool 
 6398         __eq__(Fragment self, Particle d) -> bool 
 6400         return _IMP_atom.Fragment___eq__(self, *args)
 
 6402     def __ne__(self, *args):
 
 6404         __ne__(Fragment self, Fragment o) -> bool 
 6405         __ne__(Fragment self, Particle d) -> bool 
 6407         return _IMP_atom.Fragment___ne__(self, *args)
 
 6409     def __le__(self, *args):
 
 6411         __le__(Fragment self, Fragment o) -> bool 
 6412         __le__(Fragment self, Particle d) -> bool 
 6414         return _IMP_atom.Fragment___le__(self, *args)
 
 6416     def __lt__(self, *args):
 
 6418         __lt__(Fragment self, Fragment o) -> bool 
 6419         __lt__(Fragment self, Particle d) -> bool 
 6421         return _IMP_atom.Fragment___lt__(self, *args)
 
 6423     def __ge__(self, *args):
 
 6425         __ge__(Fragment self, Fragment o) -> bool 
 6426         __ge__(Fragment self, Particle d) -> bool 
 6428         return _IMP_atom.Fragment___ge__(self, *args)
 
 6430     def __gt__(self, *args):
 
 6432         __gt__(Fragment self, Fragment o) -> bool 
 6433         __gt__(Fragment self, Particle d) -> bool 
 6435         return _IMP_atom.Fragment___gt__(self, *args)
 
 6438         r"""__hash__(Fragment self) -> std::size_t""" 
 6439         return _IMP_atom.Fragment___hash__(self)
 
 6442         r"""__str__(Fragment self) -> std::string""" 
 6443         return _IMP_atom.Fragment___str__(self)
 
 6446         r"""__repr__(Fragment self) -> std::string""" 
 6447         return _IMP_atom.Fragment___repr__(self)
 
 6449     def _get_as_binary(self):
 
 6450         r"""_get_as_binary(Fragment self) -> PyObject *""" 
 6451         return _IMP_atom.Fragment__get_as_binary(self)
 
 6453     def _set_from_binary(self, p):
 
 6454         r"""_set_from_binary(Fragment self, PyObject * p)""" 
 6455         return _IMP_atom.Fragment__set_from_binary(self, p)
 
 6457     def __getstate__(self):
 
 6458         p = self._get_as_binary()
 
 6459         if len(self.__dict__) > 1:
 
 6460             d = self.__dict__.copy()
 
 6465     def __setstate__(self, p):
 
 6466         if not hasattr(self, 
'this'):
 
 6468         if isinstance(p, tuple):
 
 6470             self.__dict__.update(d)
 
 6471         return self._set_from_binary(p)
 
 6473     __swig_destroy__ = _IMP_atom.delete_Fragment
 
 6476 _IMP_atom.Fragment_swigregister(Fragment)
 
 6478     r"""Proxy of C++ IMP::atom::StereochemistryPairFilter class.""" 
 6480     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6483         r"""__init__(StereochemistryPairFilter self) -> StereochemistryPairFilter""" 
 6484         _IMP_atom.StereochemistryPairFilter_swiginit(self, _IMP_atom.new_StereochemistryPairFilter())
 
 6486     def set_bonds(self, bonds):
 
 6487         r"""set_bonds(StereochemistryPairFilter self, IMP::Particles const & bonds)""" 
 6488         return _IMP_atom.StereochemistryPairFilter_set_bonds(self, bonds)
 
 6490     def set_angles(self, angles):
 
 6491         r"""set_angles(StereochemistryPairFilter self, IMP::Particles const & angles)""" 
 6492         return _IMP_atom.StereochemistryPairFilter_set_angles(self, angles)
 
 6494     def set_dihedrals(self, dihedrals):
 
 6495         r"""set_dihedrals(StereochemistryPairFilter self, IMP::Particles const & dihedrals)""" 
 6496         return _IMP_atom.StereochemistryPairFilter_set_dihedrals(self, dihedrals)
 
 6498     def do_get_inputs(self, m, pis):
 
 6499         r"""do_get_inputs(StereochemistryPairFilter self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 6500         return _IMP_atom.StereochemistryPairFilter_do_get_inputs(self, m, pis)
 
 6502     def get_value(self, *args):
 
 6504         get_value(StereochemistryPairFilter self, IMP::ParticlePair const & a) -> int 
 6505         get_value(StereochemistryPairFilter self, IMP::ParticlePairsTemp const & o) -> IMP::Ints 
 6507         return _IMP_atom.StereochemistryPairFilter_get_value(self, *args)
 
 6509     def get_value_index(self, *args):
 
 6511         get_value_index(StereochemistryPairFilter self, Model m, IMP::ParticleIndexPair const & p) -> int 
 6512         get_value_index(StereochemistryPairFilter self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints 
 6514         return _IMP_atom.StereochemistryPairFilter_get_value_index(self, *args)
 
 6516     def get_version_info(self):
 
 6517         r"""get_version_info(StereochemistryPairFilter self) -> VersionInfo""" 
 6518         return _IMP_atom.StereochemistryPairFilter_get_version_info(self)
 
 6519     __swig_destroy__ = _IMP_atom.delete_StereochemistryPairFilter
 
 6522         r"""__str__(StereochemistryPairFilter self) -> std::string""" 
 6523         return _IMP_atom.StereochemistryPairFilter___str__(self)
 
 6526         r"""__repr__(StereochemistryPairFilter self) -> std::string""" 
 6527         return _IMP_atom.StereochemistryPairFilter___repr__(self)
 
 6531        return _object_cast_to_StereochemistryPairFilter(o)
 
 6535 _IMP_atom.StereochemistryPairFilter_swigregister(StereochemistryPairFilter)
 
 6537     r"""Proxy of C++ IMP::atom::SoapPairFilter class.""" 
 6539     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6541     def __init__(self, library):
 
 6542         r"""__init__(SoapPairFilter self, std::string library) -> SoapPairFilter""" 
 6543         _IMP_atom.SoapPairFilter_swiginit(self, _IMP_atom.new_SoapPairFilter(library))
 
 6545     def do_get_inputs(self, m, pis):
 
 6546         r"""do_get_inputs(SoapPairFilter self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 6547         return _IMP_atom.SoapPairFilter_do_get_inputs(self, m, pis)
 
 6549     def get_value(self, *args):
 
 6551         get_value(SoapPairFilter self, IMP::ParticlePair const & a) -> int 
 6552         get_value(SoapPairFilter self, IMP::ParticlePairsTemp const & o) -> IMP::Ints 
 6554         return _IMP_atom.SoapPairFilter_get_value(self, *args)
 
 6556     def get_value_index(self, *args):
 
 6558         get_value_index(SoapPairFilter self, Model m, IMP::ParticleIndexPair const & p) -> int 
 6559         get_value_index(SoapPairFilter self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints 
 6561         return _IMP_atom.SoapPairFilter_get_value_index(self, *args)
 
 6563     def get_version_info(self):
 
 6564         r"""get_version_info(SoapPairFilter self) -> VersionInfo""" 
 6565         return _IMP_atom.SoapPairFilter_get_version_info(self)
 
 6566     __swig_destroy__ = _IMP_atom.delete_SoapPairFilter
 
 6569         r"""__str__(SoapPairFilter self) -> std::string""" 
 6570         return _IMP_atom.SoapPairFilter___str__(self)
 
 6573         r"""__repr__(SoapPairFilter self) -> std::string""" 
 6574         return _IMP_atom.SoapPairFilter___repr__(self)
 
 6578        return _object_cast_to_SoapPairFilter(o)
 
 6582 _IMP_atom.SoapPairFilter_swigregister(SoapPairFilter)
 
 6584     r"""Proxy of C++ IMP::atom::Mass class.""" 
 6586     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6589         r"""get_mass(Mass self) -> IMP::Float""" 
 6590         return _IMP_atom.Mass_get_mass(self)
 
 6592     def set_mass(self, d):
 
 6593         r"""set_mass(Mass self, IMP::Float d)""" 
 6594         return _IMP_atom.Mass_set_mass(self, d)
 
 6596     def __init__(self, *args):
 
 6598         __init__(Mass self) -> Mass 
 6599         __init__(Mass self, Model m, ParticleIndex id) -> Mass 
 6600         __init__(Mass self, _ParticleAdaptor d) -> Mass 
 6602         _IMP_atom.Mass_swiginit(self, _IMP_atom.new_Mass(*args))
 
 6605     def get_is_setup(*args):
 
 6607         get_is_setup(Model m, ParticleIndex pi) -> bool 
 6608         get_is_setup(_ParticleAdaptor p) -> bool 
 6610         return _IMP_atom.Mass_get_is_setup(*args)
 
 6612     def show(self, *args):
 
 6613         r"""show(Mass self, _ostream out=std::cout)""" 
 6614         return _IMP_atom.Mass_show(self, *args)
 
 6617     def setup_particle(*args):
 
 6619         setup_particle(Model m, ParticleIndex pi, IMP::Float mass) -> Mass 
 6620         setup_particle(_ParticleAdaptor pa, IMP::Float mass) -> Mass 
 6621         setup_particle(Model m, ParticleIndex pi, Mass other) -> Mass 
 6622         setup_particle(_ParticleAdaptor pa, Mass other) -> Mass 
 6624         return _IMP_atom.Mass_setup_particle(*args)
 
 6628         r"""get_mass_key() -> FloatKey""" 
 6629         return _IMP_atom.Mass_get_mass_key()
 
 6631     def add_attribute(self, *args):
 
 6633         add_attribute(Mass self, FloatKey k, IMP::Float v, bool opt) 
 6634         add_attribute(Mass self, FloatKey a0, IMP::Float a1) 
 6635         add_attribute(Mass self, IntKey a0, IMP::Int a1) 
 6636         add_attribute(Mass self, FloatsKey a0, IMP::Floats a1) 
 6637         add_attribute(Mass self, IntsKey a0, IMP::Ints a1) 
 6638         add_attribute(Mass self, StringKey a0, IMP::String a1) 
 6639         add_attribute(Mass self, ParticleIndexKey a0, Particle a1) 
 6640         add_attribute(Mass self, ObjectKey a0, Object a1) 
 6641         add_attribute(Mass self, SparseFloatKey a0, IMP::Float a1) 
 6642         add_attribute(Mass self, SparseIntKey a0, IMP::Int a1) 
 6643         add_attribute(Mass self, SparseStringKey a0, IMP::String a1) 
 6644         add_attribute(Mass self, SparseParticleIndexKey a0, ParticleIndex a1) 
 6646         return _IMP_atom.Mass_add_attribute(self, *args)
 
 6648     def get_value(self, *args):
 
 6650         get_value(Mass self, FloatKey a0) -> IMP::Float 
 6651         get_value(Mass self, IntKey a0) -> IMP::Int 
 6652         get_value(Mass self, FloatsKey a0) -> IMP::Floats 
 6653         get_value(Mass self, IntsKey a0) -> IMP::Ints 
 6654         get_value(Mass self, StringKey a0) -> IMP::String 
 6655         get_value(Mass self, ParticleIndexKey a0) -> Particle 
 6656         get_value(Mass self, ObjectKey a0) -> Object 
 6657         get_value(Mass self, SparseFloatKey a0) -> IMP::Float 
 6658         get_value(Mass self, SparseIntKey a0) -> IMP::Int 
 6659         get_value(Mass self, SparseStringKey a0) -> IMP::String 
 6660         get_value(Mass self, SparseParticleIndexKey a0) -> ParticleIndex 
 6662         return _IMP_atom.Mass_get_value(self, *args)
 
 6664     def set_value(self, *args):
 
 6666         set_value(Mass self, FloatKey a0, IMP::Float a1) 
 6667         set_value(Mass self, IntKey a0, IMP::Int a1) 
 6668         set_value(Mass self, FloatsKey a0, IMP::Floats a1) 
 6669         set_value(Mass self, IntsKey a0, IMP::Ints a1) 
 6670         set_value(Mass self, StringKey a0, IMP::String a1) 
 6671         set_value(Mass self, ParticleIndexKey a0, Particle a1) 
 6672         set_value(Mass self, ObjectKey a0, Object a1) 
 6673         set_value(Mass self, SparseFloatKey a0, IMP::Float a1) 
 6674         set_value(Mass self, SparseIntKey a0, IMP::Int a1) 
 6675         set_value(Mass self, SparseStringKey a0, IMP::String a1) 
 6676         set_value(Mass self, SparseParticleIndexKey a0, ParticleIndex a1) 
 6678         return _IMP_atom.Mass_set_value(self, *args)
 
 6680     def remove_attribute(self, *args):
 
 6682         remove_attribute(Mass self, FloatKey a0) 
 6683         remove_attribute(Mass self, IntKey a0) 
 6684         remove_attribute(Mass self, FloatsKey a0) 
 6685         remove_attribute(Mass self, IntsKey a0) 
 6686         remove_attribute(Mass self, StringKey a0) 
 6687         remove_attribute(Mass self, ParticleIndexKey a0) 
 6688         remove_attribute(Mass self, ObjectKey a0) 
 6689         remove_attribute(Mass self, SparseFloatKey a0) 
 6690         remove_attribute(Mass self, SparseIntKey a0) 
 6691         remove_attribute(Mass self, SparseStringKey a0) 
 6692         remove_attribute(Mass self, SparseParticleIndexKey a0) 
 6694         return _IMP_atom.Mass_remove_attribute(self, *args)
 
 6696     def has_attribute(self, *args):
 
 6698         has_attribute(Mass self, FloatKey a0) -> bool 
 6699         has_attribute(Mass self, IntKey a0) -> bool 
 6700         has_attribute(Mass self, FloatsKey a0) -> bool 
 6701         has_attribute(Mass self, IntsKey a0) -> bool 
 6702         has_attribute(Mass self, StringKey a0) -> bool 
 6703         has_attribute(Mass self, ParticleIndexKey a0) -> bool 
 6704         has_attribute(Mass self, ObjectKey a0) -> bool 
 6705         has_attribute(Mass self, SparseFloatKey a0) -> bool 
 6706         has_attribute(Mass self, SparseIntKey a0) -> bool 
 6707         has_attribute(Mass self, SparseStringKey a0) -> bool 
 6708         has_attribute(Mass self, SparseParticleIndexKey a0) -> bool 
 6710         return _IMP_atom.Mass_has_attribute(self, *args)
 
 6712     def get_derivative(self, a0):
 
 6713         r"""get_derivative(Mass self, FloatKey a0) -> double""" 
 6714         return _IMP_atom.Mass_get_derivative(self, a0)
 
 6717         r"""get_name(Mass self) -> std::string""" 
 6718         return _IMP_atom.Mass_get_name(self)
 
 6720     def clear_caches(self):
 
 6721         r"""clear_caches(Mass self)""" 
 6722         return _IMP_atom.Mass_clear_caches(self)
 
 6724     def set_name(self, a0):
 
 6725         r"""set_name(Mass self, std::string a0)""" 
 6726         return _IMP_atom.Mass_set_name(self, a0)
 
 6729         r"""set_check_level(Mass self, IMP::CheckLevel a0)""" 
 6730         return _IMP_atom.Mass_set_check_level(self, a0)
 
 6732     def add_to_derivative(self, a0, a1, a2):
 
 6733         r"""add_to_derivative(Mass self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 6734         return _IMP_atom.Mass_add_to_derivative(self, a0, a1, a2)
 
 6736     def set_is_optimized(self, a0, a1):
 
 6737         r"""set_is_optimized(Mass self, FloatKey a0, bool a1)""" 
 6738         return _IMP_atom.Mass_set_is_optimized(self, a0, a1)
 
 6740     def get_is_optimized(self, a0):
 
 6741         r"""get_is_optimized(Mass self, FloatKey a0) -> bool""" 
 6742         return _IMP_atom.Mass_get_is_optimized(self, a0)
 
 6745         r"""get_check_level(Mass self) -> IMP::CheckLevel""" 
 6746         return _IMP_atom.Mass_get_check_level(self)
 
 6748     def __eq__(self, *args):
 
 6750         __eq__(Mass self, Mass o) -> bool 
 6751         __eq__(Mass self, Particle d) -> bool 
 6753         return _IMP_atom.Mass___eq__(self, *args)
 
 6755     def __ne__(self, *args):
 
 6757         __ne__(Mass self, Mass o) -> bool 
 6758         __ne__(Mass self, Particle d) -> bool 
 6760         return _IMP_atom.Mass___ne__(self, *args)
 
 6762     def __le__(self, *args):
 
 6764         __le__(Mass self, Mass o) -> bool 
 6765         __le__(Mass self, Particle d) -> bool 
 6767         return _IMP_atom.Mass___le__(self, *args)
 
 6769     def __lt__(self, *args):
 
 6771         __lt__(Mass self, Mass o) -> bool 
 6772         __lt__(Mass self, Particle d) -> bool 
 6774         return _IMP_atom.Mass___lt__(self, *args)
 
 6776     def __ge__(self, *args):
 
 6778         __ge__(Mass self, Mass o) -> bool 
 6779         __ge__(Mass self, Particle d) -> bool 
 6781         return _IMP_atom.Mass___ge__(self, *args)
 
 6783     def __gt__(self, *args):
 
 6785         __gt__(Mass self, Mass o) -> bool 
 6786         __gt__(Mass self, Particle d) -> bool 
 6788         return _IMP_atom.Mass___gt__(self, *args)
 
 6791         r"""__hash__(Mass self) -> std::size_t""" 
 6792         return _IMP_atom.Mass___hash__(self)
 
 6795         r"""__str__(Mass self) -> std::string""" 
 6796         return _IMP_atom.Mass___str__(self)
 
 6799         r"""__repr__(Mass self) -> std::string""" 
 6800         return _IMP_atom.Mass___repr__(self)
 
 6802     def _get_as_binary(self):
 
 6803         r"""_get_as_binary(Mass self) -> PyObject *""" 
 6804         return _IMP_atom.Mass__get_as_binary(self)
 
 6806     def _set_from_binary(self, p):
 
 6807         r"""_set_from_binary(Mass self, PyObject * p)""" 
 6808         return _IMP_atom.Mass__set_from_binary(self, p)
 
 6810     def __getstate__(self):
 
 6811         p = self._get_as_binary()
 
 6812         if len(self.__dict__) > 1:
 
 6813             d = self.__dict__.copy()
 
 6818     def __setstate__(self, p):
 
 6819         if not hasattr(self, 
'this'):
 
 6821         if isinstance(p, tuple):
 
 6823             self.__dict__.update(d)
 
 6824         return self._set_from_binary(p)
 
 6826     __swig_destroy__ = _IMP_atom.delete_Mass
 
 6829 _IMP_atom.Mass_swigregister(Mass)
 
 6831     r"""Proxy of C++ IMP::atom::BondedPairFilter class.""" 
 6833     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6836         r"""__init__(BondedPairFilter self) -> BondedPairFilter""" 
 6837         _IMP_atom.BondedPairFilter_swiginit(self, _IMP_atom.new_BondedPairFilter())
 
 6839     def do_get_inputs(self, m, pis):
 
 6840         r"""do_get_inputs(BondedPairFilter self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 6841         return _IMP_atom.BondedPairFilter_do_get_inputs(self, m, pis)
 
 6843     def get_value(self, *args):
 
 6845         get_value(BondedPairFilter self, IMP::ParticlePair const & a) -> int 
 6846         get_value(BondedPairFilter self, IMP::ParticlePairsTemp const & o) -> IMP::Ints 
 6848         return _IMP_atom.BondedPairFilter_get_value(self, *args)
 
 6850     def get_value_index(self, *args):
 
 6852         get_value_index(BondedPairFilter self, Model m, IMP::ParticleIndexPair const & p) -> int 
 6853         get_value_index(BondedPairFilter self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints 
 6855         return _IMP_atom.BondedPairFilter_get_value_index(self, *args)
 
 6857     def get_version_info(self):
 
 6858         r"""get_version_info(BondedPairFilter self) -> VersionInfo""" 
 6859         return _IMP_atom.BondedPairFilter_get_version_info(self)
 
 6860     __swig_destroy__ = _IMP_atom.delete_BondedPairFilter
 
 6863         r"""__str__(BondedPairFilter self) -> std::string""" 
 6864         return _IMP_atom.BondedPairFilter___str__(self)
 
 6867         r"""__repr__(BondedPairFilter self) -> std::string""" 
 6868         return _IMP_atom.BondedPairFilter___repr__(self)
 
 6872        return _object_cast_to_BondedPairFilter(o)
 
 6876 _IMP_atom.BondedPairFilter_swigregister(BondedPairFilter)
 
 6878     r"""Proxy of C++ IMP::atom::Mol2Selector class.""" 
 6880     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6882     def __init__(self, *args, **kwargs):
 
 6883         raise AttributeError(
"No constructor defined - class is abstract")
 
 6885     def get_is_selected(self, atom_line):
 
 6886         r"""get_is_selected(Mol2Selector self, std::string const & atom_line) -> bool""" 
 6887         return _IMP_atom.Mol2Selector_get_is_selected(self, atom_line)
 
 6888     __swig_destroy__ = _IMP_atom.delete_Mol2Selector
 
 6891         r"""__str__(Mol2Selector self) -> std::string""" 
 6892         return _IMP_atom.Mol2Selector___str__(self)
 
 6895         r"""__repr__(Mol2Selector self) -> std::string""" 
 6896         return _IMP_atom.Mol2Selector___repr__(self)
 
 6900        return _object_cast_to_Mol2Selector(o)
 
 6904 _IMP_atom.Mol2Selector_swigregister(Mol2Selector)
 
 6905 class AllMol2Selector(Mol2Selector):
 
 6906     r"""Proxy of C++ IMP::atom::AllMol2Selector class.""" 
 6908     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6911         r"""__str__(AllMol2Selector self) -> std::string""" 
 6912         return _IMP_atom.AllMol2Selector___str__(self)
 
 6915         r"""__repr__(AllMol2Selector self) -> std::string""" 
 6916         return _IMP_atom.AllMol2Selector___repr__(self)
 
 6920        return _object_cast_to_AllMol2Selector(o)
 
 6924         r"""__init__(AllMol2Selector self) -> AllMol2Selector""" 
 6925         _IMP_atom.AllMol2Selector_swiginit(self, _IMP_atom.new_AllMol2Selector())
 
 6926     __swig_destroy__ = _IMP_atom.delete_AllMol2Selector
 
 6929 _IMP_atom.AllMol2Selector_swigregister(AllMol2Selector)
 
 6930 class NonHydrogenMol2Selector(Mol2Selector):
 
 6931     r"""Proxy of C++ IMP::atom::NonHydrogenMol2Selector class.""" 
 6933     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6936         r"""__str__(NonHydrogenMol2Selector self) -> std::string""" 
 6937         return _IMP_atom.NonHydrogenMol2Selector___str__(self)
 
 6940         r"""__repr__(NonHydrogenMol2Selector self) -> std::string""" 
 6941         return _IMP_atom.NonHydrogenMol2Selector___repr__(self)
 
 6945        return _object_cast_to_NonHydrogenMol2Selector(o)
 
 6949         r"""__init__(NonHydrogenMol2Selector self) -> NonHydrogenMol2Selector""" 
 6950         _IMP_atom.NonHydrogenMol2Selector_swiginit(self, _IMP_atom.new_NonHydrogenMol2Selector())
 
 6951     __swig_destroy__ = _IMP_atom.delete_NonHydrogenMol2Selector
 
 6954 _IMP_atom.NonHydrogenMol2Selector_swigregister(NonHydrogenMol2Selector)
 
 6956 def read_mol2(mol2_file, model, mol2sel=None):
 
 6957     r"""read_mol2(TextInput mol2_file, Model model, Mol2Selector mol2sel=None) -> Hierarchy""" 
 6958     return _IMP_atom.read_mol2(mol2_file, model, mol2sel)
 
 6961     r"""write_mol2(Hierarchy rhd, TextOutput file_name)""" 
 6962     return _IMP_atom.write_mol2(rhd, file_name)
 
 6964     r"""Proxy of C++ IMP::atom::SecondaryStructureResidue class.""" 
 6966     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 6968     def __init__(self, *args):
 
 6970         __init__(SecondaryStructureResidue self) -> SecondaryStructureResidue 
 6971         __init__(SecondaryStructureResidue self, Model m, ParticleIndex id) -> SecondaryStructureResidue 
 6972         __init__(SecondaryStructureResidue self, _ParticleAdaptor d) -> SecondaryStructureResidue 
 6974         _IMP_atom.SecondaryStructureResidue_swiginit(self, _IMP_atom.new_SecondaryStructureResidue(*args))
 
 6976     def show(self, *args):
 
 6977         r"""show(SecondaryStructureResidue self, _ostream out=std::cout)""" 
 6978         return _IMP_atom.SecondaryStructureResidue_show(self, *args)
 
 6981     def setup_particle(*args):
 
 6983         setup_particle(Model m, ParticleIndex pi, IMP::Float prob_helix, IMP::Float prob_strand, IMP::Float prob_coil) -> SecondaryStructureResidue 
 6984         setup_particle(_ParticleAdaptor pa, IMP::Float prob_helix, IMP::Float prob_strand, IMP::Float prob_coil) -> SecondaryStructureResidue 
 6985         setup_particle(Particle res_p) -> SecondaryStructureResidue 
 6987         return _IMP_atom.SecondaryStructureResidue_setup_particle(*args)
 
 6990     def get_is_setup(*args):
 
 6992         get_is_setup(_ParticleAdaptor p) -> bool 
 6993         get_is_setup(Model m, ParticleIndex pi) -> bool 
 6995         return _IMP_atom.SecondaryStructureResidue_get_is_setup(*args)
 
 6997     def get_particle(self):
 
 6998         r"""get_particle(SecondaryStructureResidue self) -> Particle""" 
 6999         return _IMP_atom.SecondaryStructureResidue_get_particle(self)
 
 7001     def get_all_probabilities(self):
 
 7002         r"""get_all_probabilities(SecondaryStructureResidue self) -> IMP::Floats""" 
 7003         return _IMP_atom.SecondaryStructureResidue_get_all_probabilities(self)
 
 7005     def get_prob_helix(self):
 
 7006         r"""get_prob_helix(SecondaryStructureResidue self) -> IMP::Float""" 
 7007         return _IMP_atom.SecondaryStructureResidue_get_prob_helix(self)
 
 7009     def set_prob_helix(self, t):
 
 7010         r"""set_prob_helix(SecondaryStructureResidue self, IMP::Float t)""" 
 7011         return _IMP_atom.SecondaryStructureResidue_set_prob_helix(self, t)
 
 7013     def get_prob_strand(self):
 
 7014         r"""get_prob_strand(SecondaryStructureResidue self) -> IMP::Float""" 
 7015         return _IMP_atom.SecondaryStructureResidue_get_prob_strand(self)
 
 7017     def set_prob_strand(self, t):
 
 7018         r"""set_prob_strand(SecondaryStructureResidue self, IMP::Float t)""" 
 7019         return _IMP_atom.SecondaryStructureResidue_set_prob_strand(self, t)
 
 7021     def get_prob_coil(self):
 
 7022         r"""get_prob_coil(SecondaryStructureResidue self) -> IMP::Float""" 
 7023         return _IMP_atom.SecondaryStructureResidue_get_prob_coil(self)
 
 7025     def set_prob_coil(self, t):
 
 7026         r"""set_prob_coil(SecondaryStructureResidue self, IMP::Float t)""" 
 7027         return _IMP_atom.SecondaryStructureResidue_set_prob_coil(self, t)
 
 7030     def get_prob_helix_key():
 
 7031         r"""get_prob_helix_key() -> FloatKey""" 
 7032         return _IMP_atom.SecondaryStructureResidue_get_prob_helix_key()
 
 7035     def get_prob_strand_key():
 
 7036         r"""get_prob_strand_key() -> FloatKey""" 
 7037         return _IMP_atom.SecondaryStructureResidue_get_prob_strand_key()
 
 7040     def get_prob_coil_key():
 
 7041         r"""get_prob_coil_key() -> FloatKey""" 
 7042         return _IMP_atom.SecondaryStructureResidue_get_prob_coil_key()
 
 7044     def add_attribute(self, *args):
 
 7046         add_attribute(SecondaryStructureResidue self, FloatKey k, IMP::Float v, bool opt) 
 7047         add_attribute(SecondaryStructureResidue self, FloatKey a0, IMP::Float a1) 
 7048         add_attribute(SecondaryStructureResidue self, IntKey a0, IMP::Int a1) 
 7049         add_attribute(SecondaryStructureResidue self, FloatsKey a0, IMP::Floats a1) 
 7050         add_attribute(SecondaryStructureResidue self, IntsKey a0, IMP::Ints a1) 
 7051         add_attribute(SecondaryStructureResidue self, StringKey a0, IMP::String a1) 
 7052         add_attribute(SecondaryStructureResidue self, ParticleIndexKey a0, Particle a1) 
 7053         add_attribute(SecondaryStructureResidue self, ObjectKey a0, Object a1) 
 7054         add_attribute(SecondaryStructureResidue self, SparseFloatKey a0, IMP::Float a1) 
 7055         add_attribute(SecondaryStructureResidue self, SparseIntKey a0, IMP::Int a1) 
 7056         add_attribute(SecondaryStructureResidue self, SparseStringKey a0, IMP::String a1) 
 7057         add_attribute(SecondaryStructureResidue self, SparseParticleIndexKey a0, ParticleIndex a1) 
 7059         return _IMP_atom.SecondaryStructureResidue_add_attribute(self, *args)
 
 7061     def get_value(self, *args):
 
 7063         get_value(SecondaryStructureResidue self, FloatKey a0) -> IMP::Float 
 7064         get_value(SecondaryStructureResidue self, IntKey a0) -> IMP::Int 
 7065         get_value(SecondaryStructureResidue self, FloatsKey a0) -> IMP::Floats 
 7066         get_value(SecondaryStructureResidue self, IntsKey a0) -> IMP::Ints 
 7067         get_value(SecondaryStructureResidue self, StringKey a0) -> IMP::String 
 7068         get_value(SecondaryStructureResidue self, ParticleIndexKey a0) -> Particle 
 7069         get_value(SecondaryStructureResidue self, ObjectKey a0) -> Object 
 7070         get_value(SecondaryStructureResidue self, SparseFloatKey a0) -> IMP::Float 
 7071         get_value(SecondaryStructureResidue self, SparseIntKey a0) -> IMP::Int 
 7072         get_value(SecondaryStructureResidue self, SparseStringKey a0) -> IMP::String 
 7073         get_value(SecondaryStructureResidue self, SparseParticleIndexKey a0) -> ParticleIndex 
 7075         return _IMP_atom.SecondaryStructureResidue_get_value(self, *args)
 
 7077     def set_value(self, *args):
 
 7079         set_value(SecondaryStructureResidue self, FloatKey a0, IMP::Float a1) 
 7080         set_value(SecondaryStructureResidue self, IntKey a0, IMP::Int a1) 
 7081         set_value(SecondaryStructureResidue self, FloatsKey a0, IMP::Floats a1) 
 7082         set_value(SecondaryStructureResidue self, IntsKey a0, IMP::Ints a1) 
 7083         set_value(SecondaryStructureResidue self, StringKey a0, IMP::String a1) 
 7084         set_value(SecondaryStructureResidue self, ParticleIndexKey a0, Particle a1) 
 7085         set_value(SecondaryStructureResidue self, ObjectKey a0, Object a1) 
 7086         set_value(SecondaryStructureResidue self, SparseFloatKey a0, IMP::Float a1) 
 7087         set_value(SecondaryStructureResidue self, SparseIntKey a0, IMP::Int a1) 
 7088         set_value(SecondaryStructureResidue self, SparseStringKey a0, IMP::String a1) 
 7089         set_value(SecondaryStructureResidue self, SparseParticleIndexKey a0, ParticleIndex a1) 
 7091         return _IMP_atom.SecondaryStructureResidue_set_value(self, *args)
 
 7093     def remove_attribute(self, *args):
 
 7095         remove_attribute(SecondaryStructureResidue self, FloatKey a0) 
 7096         remove_attribute(SecondaryStructureResidue self, IntKey a0) 
 7097         remove_attribute(SecondaryStructureResidue self, FloatsKey a0) 
 7098         remove_attribute(SecondaryStructureResidue self, IntsKey a0) 
 7099         remove_attribute(SecondaryStructureResidue self, StringKey a0) 
 7100         remove_attribute(SecondaryStructureResidue self, ParticleIndexKey a0) 
 7101         remove_attribute(SecondaryStructureResidue self, ObjectKey a0) 
 7102         remove_attribute(SecondaryStructureResidue self, SparseFloatKey a0) 
 7103         remove_attribute(SecondaryStructureResidue self, SparseIntKey a0) 
 7104         remove_attribute(SecondaryStructureResidue self, SparseStringKey a0) 
 7105         remove_attribute(SecondaryStructureResidue self, SparseParticleIndexKey a0) 
 7107         return _IMP_atom.SecondaryStructureResidue_remove_attribute(self, *args)
 
 7109     def has_attribute(self, *args):
 
 7111         has_attribute(SecondaryStructureResidue self, FloatKey a0) -> bool 
 7112         has_attribute(SecondaryStructureResidue self, IntKey a0) -> bool 
 7113         has_attribute(SecondaryStructureResidue self, FloatsKey a0) -> bool 
 7114         has_attribute(SecondaryStructureResidue self, IntsKey a0) -> bool 
 7115         has_attribute(SecondaryStructureResidue self, StringKey a0) -> bool 
 7116         has_attribute(SecondaryStructureResidue self, ParticleIndexKey a0) -> bool 
 7117         has_attribute(SecondaryStructureResidue self, ObjectKey a0) -> bool 
 7118         has_attribute(SecondaryStructureResidue self, SparseFloatKey a0) -> bool 
 7119         has_attribute(SecondaryStructureResidue self, SparseIntKey a0) -> bool 
 7120         has_attribute(SecondaryStructureResidue self, SparseStringKey a0) -> bool 
 7121         has_attribute(SecondaryStructureResidue self, SparseParticleIndexKey a0) -> bool 
 7123         return _IMP_atom.SecondaryStructureResidue_has_attribute(self, *args)
 
 7125     def get_derivative(self, a0):
 
 7126         r"""get_derivative(SecondaryStructureResidue self, FloatKey a0) -> double""" 
 7127         return _IMP_atom.SecondaryStructureResidue_get_derivative(self, a0)
 
 7130         r"""get_name(SecondaryStructureResidue self) -> std::string""" 
 7131         return _IMP_atom.SecondaryStructureResidue_get_name(self)
 
 7133     def clear_caches(self):
 
 7134         r"""clear_caches(SecondaryStructureResidue self)""" 
 7135         return _IMP_atom.SecondaryStructureResidue_clear_caches(self)
 
 7137     def set_name(self, a0):
 
 7138         r"""set_name(SecondaryStructureResidue self, std::string a0)""" 
 7139         return _IMP_atom.SecondaryStructureResidue_set_name(self, a0)
 
 7142         r"""set_check_level(SecondaryStructureResidue self, IMP::CheckLevel a0)""" 
 7143         return _IMP_atom.SecondaryStructureResidue_set_check_level(self, a0)
 
 7145     def add_to_derivative(self, a0, a1, a2):
 
 7146         r"""add_to_derivative(SecondaryStructureResidue self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 7147         return _IMP_atom.SecondaryStructureResidue_add_to_derivative(self, a0, a1, a2)
 
 7149     def set_is_optimized(self, a0, a1):
 
 7150         r"""set_is_optimized(SecondaryStructureResidue self, FloatKey a0, bool a1)""" 
 7151         return _IMP_atom.SecondaryStructureResidue_set_is_optimized(self, a0, a1)
 
 7153     def get_is_optimized(self, a0):
 
 7154         r"""get_is_optimized(SecondaryStructureResidue self, FloatKey a0) -> bool""" 
 7155         return _IMP_atom.SecondaryStructureResidue_get_is_optimized(self, a0)
 
 7158         r"""get_check_level(SecondaryStructureResidue self) -> IMP::CheckLevel""" 
 7159         return _IMP_atom.SecondaryStructureResidue_get_check_level(self)
 
 7161     def __eq__(self, *args):
 
 7163         __eq__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool 
 7164         __eq__(SecondaryStructureResidue self, Particle d) -> bool 
 7166         return _IMP_atom.SecondaryStructureResidue___eq__(self, *args)
 
 7168     def __ne__(self, *args):
 
 7170         __ne__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool 
 7171         __ne__(SecondaryStructureResidue self, Particle d) -> bool 
 7173         return _IMP_atom.SecondaryStructureResidue___ne__(self, *args)
 
 7175     def __le__(self, *args):
 
 7177         __le__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool 
 7178         __le__(SecondaryStructureResidue self, Particle d) -> bool 
 7180         return _IMP_atom.SecondaryStructureResidue___le__(self, *args)
 
 7182     def __lt__(self, *args):
 
 7184         __lt__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool 
 7185         __lt__(SecondaryStructureResidue self, Particle d) -> bool 
 7187         return _IMP_atom.SecondaryStructureResidue___lt__(self, *args)
 
 7189     def __ge__(self, *args):
 
 7191         __ge__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool 
 7192         __ge__(SecondaryStructureResidue self, Particle d) -> bool 
 7194         return _IMP_atom.SecondaryStructureResidue___ge__(self, *args)
 
 7196     def __gt__(self, *args):
 
 7198         __gt__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool 
 7199         __gt__(SecondaryStructureResidue self, Particle d) -> bool 
 7201         return _IMP_atom.SecondaryStructureResidue___gt__(self, *args)
 
 7204         r"""__hash__(SecondaryStructureResidue self) -> std::size_t""" 
 7205         return _IMP_atom.SecondaryStructureResidue___hash__(self)
 
 7208         r"""__str__(SecondaryStructureResidue self) -> std::string""" 
 7209         return _IMP_atom.SecondaryStructureResidue___str__(self)
 
 7212         r"""__repr__(SecondaryStructureResidue self) -> std::string""" 
 7213         return _IMP_atom.SecondaryStructureResidue___repr__(self)
 
 7215     def _get_as_binary(self):
 
 7216         r"""_get_as_binary(SecondaryStructureResidue self) -> PyObject *""" 
 7217         return _IMP_atom.SecondaryStructureResidue__get_as_binary(self)
 
 7219     def _set_from_binary(self, p):
 
 7220         r"""_set_from_binary(SecondaryStructureResidue self, PyObject * p)""" 
 7221         return _IMP_atom.SecondaryStructureResidue__set_from_binary(self, p)
 
 7223     def __getstate__(self):
 
 7224         p = self._get_as_binary()
 
 7225         if len(self.__dict__) > 1:
 
 7226             d = self.__dict__.copy()
 
 7231     def __setstate__(self, p):
 
 7232         if not hasattr(self, 
'this'):
 
 7234         if isinstance(p, tuple):
 
 7236             self.__dict__.update(d)
 
 7237         return self._set_from_binary(p)
 
 7239     __swig_destroy__ = _IMP_atom.delete_SecondaryStructureResidue
 
 7242 _IMP_atom.SecondaryStructureResidue_swigregister(SecondaryStructureResidue)
 
 7245     r"""setup_coarse_secondary_structure_residue(IMP::Particles const & ssr_ps, Model mdl, bool winner_takes_all_per_res=False) -> SecondaryStructureResidue""" 
 7246     return _IMP_atom.setup_coarse_secondary_structure_residue(ssr_ps, mdl, winner_takes_all_per_res)
 
 7249     r"""setup_coarse_secondary_structure_residues(IMP::Particles const & ssr_ps, Model mdl, int coarse_factor, int start_res_num, bool winner_takes_all_per_res=False) -> IMP::atom::SecondaryStructureResidues""" 
 7250     return _IMP_atom.setup_coarse_secondary_structure_residues(ssr_ps, mdl, coarse_factor, start_res_num, winner_takes_all_per_res)
 
 7253     r"""get_secondary_structure_match_score(SecondaryStructureResidue ssr1, SecondaryStructureResidue ssr2) -> IMP::Float""" 
 7254     return _IMP_atom.get_secondary_structure_match_score(ssr1, ssr2)
 
 7256 def read_psipred(*args):
 
 7258     read_psipred(TextInput inf, Model mdl) -> IMP::atom::SecondaryStructureResidues 
 7259     read_psipred(TextInput inf, IMP::Particles ps) -> IMP::atom::SecondaryStructureResidues 
 7261     return _IMP_atom.read_psipred(*args)
 
 7263     r"""Proxy of C++ IMP::score_functor::DistancePairScore< IMP::score_functor::Dope > class.""" 
 7265     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7266     __repr__ = _swig_repr
 
 7268     def __init__(self, *args):
 
 7270         __init__(_ADopeBase self, Dope t0, std::string name="FunctorDistancePairScore %1%") -> _ADopeBase 
 7271         __init__(_ADopeBase self) -> _ADopeBase 
 7273         _IMP_atom._ADopeBase_swiginit(self, _IMP_atom.new__ADopeBase(*args))
 
 7275     def do_get_inputs(self, m, pis):
 
 7276         r"""do_get_inputs(_ADopeBase self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 7277         return _IMP_atom._ADopeBase_do_get_inputs(self, m, pis)
 
 7279     def get_score_functor(self):
 
 7280         r"""get_score_functor(_ADopeBase self) -> Dope""" 
 7281         return _IMP_atom._ADopeBase_get_score_functor(self)
 
 7283     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 7284         r"""evaluate_indexes(_ADopeBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7285         return _IMP_atom._ADopeBase_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 7287     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 7288         r"""evaluate_indexes_scores(_ADopeBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7289         return _IMP_atom._ADopeBase_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 7291     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 7292         r"""evaluate_indexes_delta(_ADopeBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7293         return _IMP_atom._ADopeBase_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 7295     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 7296         r"""evaluate_if_good_indexes(_ADopeBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7297         return _IMP_atom._ADopeBase_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 7299     def get_version_info(self):
 
 7300         r"""get_version_info(_ADopeBase self) -> VersionInfo""" 
 7301         return _IMP_atom._ADopeBase_get_version_info(self)
 
 7302     __swig_destroy__ = _IMP_atom.delete__ADopeBase
 
 7305 _IMP_atom._ADopeBase_swigregister(_ADopeBase)
 
 7307     r"""Proxy of C++ IMP::score_functor::DistancePairScore< IMP::score_functor::Statistical< IMP::atom::DopeType,false,true,false > > class.""" 
 7309     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7310     __repr__ = _swig_repr
 
 7312     def __init__(self, *args):
 
 7314         __init__(_BDopeBase self, IMP::score_functor::DistancePairScore< IMP::score_functor::Statistical< IMP::atom::DopeType,false,true,false > >::DistanceScore const & t0, std::string name="FunctorDistancePairScore %1%") -> _BDopeBase 
 7315         __init__(_BDopeBase self) -> _BDopeBase 
 7317         _IMP_atom._BDopeBase_swiginit(self, _IMP_atom.new__BDopeBase(*args))
 
 7319     def do_get_inputs(self, m, pis):
 
 7320         r"""do_get_inputs(_BDopeBase self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 7321         return _IMP_atom._BDopeBase_do_get_inputs(self, m, pis)
 
 7323     def get_score_functor(self):
 
 7324         r"""get_score_functor(_BDopeBase self) -> _DopeBase""" 
 7325         return _IMP_atom._BDopeBase_get_score_functor(self)
 
 7327     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 7328         r"""evaluate_indexes(_BDopeBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7329         return _IMP_atom._BDopeBase_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 7331     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 7332         r"""evaluate_indexes_scores(_BDopeBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7333         return _IMP_atom._BDopeBase_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 7335     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 7336         r"""evaluate_indexes_delta(_BDopeBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7337         return _IMP_atom._BDopeBase_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 7339     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 7340         r"""evaluate_if_good_indexes(_BDopeBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7341         return _IMP_atom._BDopeBase_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 7343     def get_version_info(self):
 
 7344         r"""get_version_info(_BDopeBase self) -> VersionInfo""" 
 7345         return _IMP_atom._BDopeBase_get_version_info(self)
 
 7346     __swig_destroy__ = _IMP_atom.delete__BDopeBase
 
 7349 _IMP_atom._BDopeBase_swigregister(_BDopeBase)
 
 7351     r"""Proxy of C++ IMP::score_functor::DistancePairScore< IMP::score_functor::LoopStatistical > class.""" 
 7353     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7354     __repr__ = _swig_repr
 
 7356     def __init__(self, *args):
 
 7358         __init__(_ALoopStatisticalBase self, LoopStatistical t0, std::string name="FunctorDistancePairScore %1%") -> _ALoopStatisticalBase 
 7359         __init__(_ALoopStatisticalBase self) -> _ALoopStatisticalBase 
 7361         _IMP_atom._ALoopStatisticalBase_swiginit(self, _IMP_atom.new__ALoopStatisticalBase(*args))
 
 7363     def do_get_inputs(self, m, pis):
 
 7364         r"""do_get_inputs(_ALoopStatisticalBase self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 7365         return _IMP_atom._ALoopStatisticalBase_do_get_inputs(self, m, pis)
 
 7367     def get_score_functor(self):
 
 7368         r"""get_score_functor(_ALoopStatisticalBase self) -> LoopStatistical""" 
 7369         return _IMP_atom._ALoopStatisticalBase_get_score_functor(self)
 
 7371     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 7372         r"""evaluate_indexes(_ALoopStatisticalBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7373         return _IMP_atom._ALoopStatisticalBase_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 7375     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 7376         r"""evaluate_indexes_scores(_ALoopStatisticalBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7377         return _IMP_atom._ALoopStatisticalBase_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 7379     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 7380         r"""evaluate_indexes_delta(_ALoopStatisticalBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7381         return _IMP_atom._ALoopStatisticalBase_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 7383     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 7384         r"""evaluate_if_good_indexes(_ALoopStatisticalBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7385         return _IMP_atom._ALoopStatisticalBase_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 7387     def get_version_info(self):
 
 7388         r"""get_version_info(_ALoopStatisticalBase self) -> VersionInfo""" 
 7389         return _IMP_atom._ALoopStatisticalBase_get_version_info(self)
 
 7390     __swig_destroy__ = _IMP_atom.delete__ALoopStatisticalBase
 
 7393 _IMP_atom._ALoopStatisticalBase_swigregister(_ALoopStatisticalBase)
 
 7395     r"""Proxy of C++ IMP::score_functor::DistancePairScore< IMP::score_functor::Statistical< IMP::atom::LoopStatisticalType,false,true,false > > class.""" 
 7397     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7398     __repr__ = _swig_repr
 
 7400     def __init__(self, *args):
 
 7402         __init__(_BLoopStatisticalBase self, IMP::score_functor::DistancePairScore< IMP::score_functor::Statistical< IMP::atom::LoopStatisticalType,false,true,false > >::DistanceScore const & t0, std::string name="FunctorDistancePairScore %1%") -> _BLoopStatisticalBase 
 7403         __init__(_BLoopStatisticalBase self) -> _BLoopStatisticalBase 
 7405         _IMP_atom._BLoopStatisticalBase_swiginit(self, _IMP_atom.new__BLoopStatisticalBase(*args))
 
 7407     def do_get_inputs(self, m, pis):
 
 7408         r"""do_get_inputs(_BLoopStatisticalBase self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 7409         return _IMP_atom._BLoopStatisticalBase_do_get_inputs(self, m, pis)
 
 7411     def get_score_functor(self):
 
 7412         r"""get_score_functor(_BLoopStatisticalBase self) -> _LoopStatisticalBase""" 
 7413         return _IMP_atom._BLoopStatisticalBase_get_score_functor(self)
 
 7415     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 7416         r"""evaluate_indexes(_BLoopStatisticalBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7417         return _IMP_atom._BLoopStatisticalBase_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 7419     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 7420         r"""evaluate_indexes_scores(_BLoopStatisticalBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7421         return _IMP_atom._BLoopStatisticalBase_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 7423     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 7424         r"""evaluate_indexes_delta(_BLoopStatisticalBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7425         return _IMP_atom._BLoopStatisticalBase_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 7427     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 7428         r"""evaluate_if_good_indexes(_BLoopStatisticalBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7429         return _IMP_atom._BLoopStatisticalBase_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 7431     def get_version_info(self):
 
 7432         r"""get_version_info(_BLoopStatisticalBase self) -> VersionInfo""" 
 7433         return _IMP_atom._BLoopStatisticalBase_get_version_info(self)
 
 7434     __swig_destroy__ = _IMP_atom.delete__BLoopStatisticalBase
 
 7437 _IMP_atom._BLoopStatisticalBase_swigregister(_BLoopStatisticalBase)
 
 7439     r"""Proxy of C++ IMP::score_functor::DistancePairScoreWithCache< IMP::score_functor::OrientedSoap > class.""" 
 7441     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7442     __repr__ = _swig_repr
 
 7444     def __init__(self, *args):
 
 7445         r"""__init__(_OrientedSoapBase self, IMP::score_functor::DistancePairScoreWithCache< IMP::score_functor::OrientedSoap >::DistanceScore const & t0, std::string name="FunctorDistancePairScoreWithCache %1%") -> _OrientedSoapBase""" 
 7446         _IMP_atom._OrientedSoapBase_swiginit(self, _IMP_atom.new__OrientedSoapBase(*args))
 
 7448     def do_get_inputs(self, m, pis):
 
 7449         r"""do_get_inputs(_OrientedSoapBase self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 7450         return _IMP_atom._OrientedSoapBase_do_get_inputs(self, m, pis)
 
 7452     def get_score_functor(self):
 
 7453         r"""get_score_functor(_OrientedSoapBase self) -> IMP::score_functor::OrientedSoap &""" 
 7454         return _IMP_atom._OrientedSoapBase_get_score_functor(self)
 
 7456     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 7457         r"""evaluate_indexes(_OrientedSoapBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7458         return _IMP_atom._OrientedSoapBase_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 7460     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 7461         r"""evaluate_indexes_scores(_OrientedSoapBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7462         return _IMP_atom._OrientedSoapBase_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 7464     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 7465         r"""evaluate_indexes_delta(_OrientedSoapBase self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7466         return _IMP_atom._OrientedSoapBase_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 7468     def get_version_info(self):
 
 7469         r"""get_version_info(_OrientedSoapBase self) -> VersionInfo""" 
 7470         return _IMP_atom._OrientedSoapBase_get_version_info(self)
 
 7471     __swig_destroy__ = _IMP_atom.delete__OrientedSoapBase
 
 7474 _IMP_atom._OrientedSoapBase_swigregister(_OrientedSoapBase)
 
 7476     r"""Proxy of C++ IMP::score_functor::DistancePairScore< score_functor::Statistical< IMP::atom::ProteinLigandType,true,false > > class.""" 
 7478     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7479     __repr__ = _swig_repr
 
 7481     def __init__(self, *args):
 
 7483         __init__(_SPSFTB self, IMP::score_functor::DistancePairScore< IMP::score_functor::Statistical< IMP::atom::ProteinLigandType,true,false > >::DistanceScore const & t0, std::string name="FunctorDistancePairScore %1%") -> _SPSFTB 
 7484         __init__(_SPSFTB self) -> _SPSFTB 
 7486         _IMP_atom._SPSFTB_swiginit(self, _IMP_atom.new__SPSFTB(*args))
 
 7488     def do_get_inputs(self, m, pis):
 
 7489         r"""do_get_inputs(_SPSFTB self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
 7490         return _IMP_atom._SPSFTB_do_get_inputs(self, m, pis)
 
 7492     def get_score_functor(self):
 
 7493         r"""get_score_functor(_SPSFTB self) -> IMP::score_functor::Statistical< IMP::atom::ProteinLigandType,true,false,false > &""" 
 7494         return _IMP_atom._SPSFTB_get_score_functor(self)
 
 7496     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
 7497         r"""evaluate_indexes(_SPSFTB self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7498         return _IMP_atom._SPSFTB_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
 7500     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
 7501         r"""evaluate_indexes_scores(_SPSFTB self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7502         return _IMP_atom._SPSFTB_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
 7504     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
 7505         r"""evaluate_indexes_delta(_SPSFTB self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
 7506         return _IMP_atom._SPSFTB_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
 7508     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
 7509         r"""evaluate_if_good_indexes(_SPSFTB self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
 7510         return _IMP_atom._SPSFTB_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
 7512     def get_version_info(self):
 
 7513         r"""get_version_info(_SPSFTB self) -> VersionInfo""" 
 7514         return _IMP_atom._SPSFTB_get_version_info(self)
 
 7515     __swig_destroy__ = _IMP_atom.delete__SPSFTB
 
 7518 _IMP_atom._SPSFTB_swigregister(_SPSFTB)
 
 7519 class _SPSTF(_SPSFTB):
 
 7520     r"""Proxy of C++ IMP::core::StatisticalPairScore< IMP::atom::ProteinLigandType,true,false > class.""" 
 7522     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7523     __repr__ = _swig_repr
 
 7525     def __init__(self, *args):
 
 7527         __init__(_SPSTF self, IntKey k, double threshold, TextInput data_file) -> _SPSTF 
 7528         __init__(_SPSTF self, IntKey k, double threshold, TextInput data_file, unsigned int shift) -> _SPSTF 
 7530         _IMP_atom._SPSTF_swiginit(self, _IMP_atom.new__SPSTF(*args))
 
 7531     __swig_destroy__ = _IMP_atom.delete__SPSTF
 
 7534 _IMP_atom._SPSTF_swigregister(_SPSTF)
 
 7535 class _SPSFT(_BDopeBase):
 
 7536     r"""Proxy of C++ IMP::core::StatisticalPairScore< IMP::atom::DopeType,false,true > class.""" 
 7538     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7539     __repr__ = _swig_repr
 
 7541     def __init__(self, *args):
 
 7543         __init__(_SPSFT self, IntKey k, double threshold, TextInput data_file) -> _SPSFT 
 7544         __init__(_SPSFT self, IntKey k, double threshold, TextInput data_file, unsigned int shift) -> _SPSFT 
 7546         _IMP_atom._SPSFT_swiginit(self, _IMP_atom.new__SPSFT(*args))
 
 7547     __swig_destroy__ = _IMP_atom.delete__SPSFT
 
 7550 _IMP_atom._SPSFT_swigregister(_SPSFT)
 
 7551 class _SPSFTL(_BLoopStatisticalBase):
 
 7552     r"""Proxy of C++ IMP::core::StatisticalPairScore< IMP::atom::LoopStatisticalType,false,true > class.""" 
 7554     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7555     __repr__ = _swig_repr
 
 7557     def __init__(self, *args):
 
 7559         __init__(_SPSFTL self, IntKey k, double threshold, TextInput data_file) -> _SPSFTL 
 7560         __init__(_SPSFTL self, IntKey k, double threshold, TextInput data_file, unsigned int shift) -> _SPSFTL 
 7562         _IMP_atom._SPSFTL_swiginit(self, _IMP_atom.new__SPSFTL(*args))
 
 7563     __swig_destroy__ = _IMP_atom.delete__SPSFTL
 
 7566 _IMP_atom._SPSFTL_swigregister(_SPSFTL)
 
 7567 class ProteinLigandAtomPairScore(_SPSTF):
 
 7568     r"""Proxy of C++ IMP::atom::ProteinLigandAtomPairScore class.""" 
 7570     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7572     def __init__(self, *args):
 
 7574         __init__(ProteinLigandAtomPairScore self, double threshold=std::numeric_limits< double >::max()) -> ProteinLigandAtomPairScore 
 7575         __init__(ProteinLigandAtomPairScore self, double threshold, TextInput data_file) -> ProteinLigandAtomPairScore 
 7577         _IMP_atom.ProteinLigandAtomPairScore_swiginit(self, _IMP_atom.new_ProteinLigandAtomPairScore(*args))
 
 7579     def get_maximum_distance(self):
 
 7580         r"""get_maximum_distance(ProteinLigandAtomPairScore self) -> double""" 
 7581         return _IMP_atom.ProteinLigandAtomPairScore_get_maximum_distance(self)
 
 7584         r"""__str__(ProteinLigandAtomPairScore self) -> std::string""" 
 7585         return _IMP_atom.ProteinLigandAtomPairScore___str__(self)
 
 7588         r"""__repr__(ProteinLigandAtomPairScore self) -> std::string""" 
 7589         return _IMP_atom.ProteinLigandAtomPairScore___repr__(self)
 
 7593        return _object_cast_to_ProteinLigandAtomPairScore(o)
 
 7595     __swig_destroy__ = _IMP_atom.delete_ProteinLigandAtomPairScore
 
 7598 _IMP_atom.ProteinLigandAtomPairScore_swigregister(ProteinLigandAtomPairScore)
 
 7600     r"""Proxy of C++ IMP::atom::ProteinLigandRestraint class.""" 
 7602     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7604     def __init__(self, *args):
 
 7606         __init__(ProteinLigandRestraint self, Hierarchy protein, Hierarchy ligand, double threshold=std::numeric_limits< double >::max()) -> ProteinLigandRestraint 
 7607         __init__(ProteinLigandRestraint self, Hierarchy protein, Hierarchy ligand, double threshold, TextInput data_file) -> ProteinLigandRestraint 
 7609         _IMP_atom.ProteinLigandRestraint_swiginit(self, _IMP_atom.new_ProteinLigandRestraint(*args))
 
 7612         r"""__str__(ProteinLigandRestraint self) -> std::string""" 
 7613         return _IMP_atom.ProteinLigandRestraint___str__(self)
 
 7616         r"""__repr__(ProteinLigandRestraint self) -> std::string""" 
 7617         return _IMP_atom.ProteinLigandRestraint___repr__(self)
 
 7621        return _object_cast_to_ProteinLigandRestraint(o)
 
 7623     __swig_destroy__ = _IMP_atom.delete_ProteinLigandRestraint
 
 7626 _IMP_atom.ProteinLigandRestraint_swigregister(ProteinLigandRestraint)
 
 7629     r"""add_protein_ligand_score_data(Hierarchy h)""" 
 7630     return _IMP_atom.add_protein_ligand_score_data(h)
 
 7631 class AtomType(IMP._Value):
 
 7632     r"""Proxy of C++ IMP::Key< 8974343 > class.""" 
 7634     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7636     def __init__(self, *args):
 
 7638         __init__(AtomType self) -> AtomType 
 7639         __init__(AtomType self, std::string const & c, bool is_implicit_add_permitted=True) -> AtomType 
 7640         __init__(AtomType self, unsigned int i) -> AtomType 
 7642         _IMP_atom.AtomType_swiginit(self, _IMP_atom.new_AtomType(*args))
 
 7646         r"""add_key(std::string sc) -> unsigned int""" 
 7647         return _IMP_atom.AtomType_add_key(sc)
 
 7650     def get_key_exists(sc):
 
 7651         r"""get_key_exists(std::string sc) -> bool""" 
 7652         return _IMP_atom.AtomType_get_key_exists(sc)
 
 7654     def get_string(self):
 
 7655         r"""get_string(AtomType self) -> std::string const""" 
 7656         return _IMP_atom.AtomType_get_string(self)
 
 7658     def __cmp__(self, o):
 
 7659         r"""__cmp__(AtomType self, AtomType o) -> int""" 
 7660         return _IMP_atom.AtomType___cmp__(self, o)
 
 7662     def __eq__(self, o):
 
 7663         r"""__eq__(AtomType self, AtomType o) -> bool""" 
 7664         return _IMP_atom.AtomType___eq__(self, o)
 
 7666     def __ne__(self, o):
 
 7667         r"""__ne__(AtomType self, AtomType o) -> bool""" 
 7668         return _IMP_atom.AtomType___ne__(self, o)
 
 7670     def __lt__(self, o):
 
 7671         r"""__lt__(AtomType self, AtomType o) -> bool""" 
 7672         return _IMP_atom.AtomType___lt__(self, o)
 
 7674     def __gt__(self, o):
 
 7675         r"""__gt__(AtomType self, AtomType o) -> bool""" 
 7676         return _IMP_atom.AtomType___gt__(self, o)
 
 7678     def __ge__(self, o):
 
 7679         r"""__ge__(AtomType self, AtomType o) -> bool""" 
 7680         return _IMP_atom.AtomType___ge__(self, o)
 
 7682     def __le__(self, o):
 
 7683         r"""__le__(AtomType self, AtomType o) -> bool""" 
 7684         return _IMP_atom.AtomType___le__(self, o)
 
 7687         r"""__hash__(AtomType self) -> std::size_t""" 
 7688         return _IMP_atom.AtomType___hash__(self)
 
 7690     def show(self, *args):
 
 7691         r"""show(AtomType self, _ostream out=std::cout)""" 
 7692         return _IMP_atom.AtomType_show(self, *args)
 
 7695     def add_alias(old_key, new_name):
 
 7696         r"""add_alias(AtomType old_key, std::string new_name) -> AtomType""" 
 7697         return _IMP_atom.AtomType_add_alias(old_key, new_name)
 
 7700     def get_number_of_keys():
 
 7701         r"""get_number_of_keys() -> unsigned int""" 
 7702         return _IMP_atom.AtomType_get_number_of_keys()
 
 7705         r"""get_index(AtomType self) -> unsigned int""" 
 7706         return _IMP_atom.AtomType_get_index(self)
 
 7710         r"""show_all(_ostream out)""" 
 7711         return _IMP_atom.AtomType_show_all(out)
 
 7714     def get_all_strings():
 
 7715         r"""get_all_strings() -> IMP::Vector< std::string >""" 
 7716         return _IMP_atom.AtomType_get_all_strings()
 
 7719     def get_number_unique():
 
 7720         r"""get_number_unique() -> unsigned int""" 
 7721         return _IMP_atom.AtomType_get_number_unique()
 
 7724         r"""__str__(AtomType self) -> std::string""" 
 7725         return _IMP_atom.AtomType___str__(self)
 
 7728         r"""__repr__(AtomType self) -> std::string""" 
 7729         return _IMP_atom.AtomType___repr__(self)
 
 7730     __swig_destroy__ = _IMP_atom.delete_AtomType
 
 7733 _IMP_atom.AtomType_swigregister(AtomType)
 
 7734 class ResidueType(IMP._Value):
 
 7735     r"""Proxy of C++ IMP::Key< 90784334 > class.""" 
 7737     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7739     def __init__(self, *args):
 
 7741         __init__(ResidueType self) -> ResidueType 
 7742         __init__(ResidueType self, std::string const & c, bool is_implicit_add_permitted=True) -> ResidueType 
 7743         __init__(ResidueType self, unsigned int i) -> ResidueType 
 7745         _IMP_atom.ResidueType_swiginit(self, _IMP_atom.new_ResidueType(*args))
 
 7749         r"""add_key(std::string sc) -> unsigned int""" 
 7750         return _IMP_atom.ResidueType_add_key(sc)
 
 7753     def get_key_exists(sc):
 
 7754         r"""get_key_exists(std::string sc) -> bool""" 
 7755         return _IMP_atom.ResidueType_get_key_exists(sc)
 
 7757     def get_string(self):
 
 7758         r"""get_string(ResidueType self) -> std::string const""" 
 7759         return _IMP_atom.ResidueType_get_string(self)
 
 7761     def __cmp__(self, o):
 
 7762         r"""__cmp__(ResidueType self, ResidueType o) -> int""" 
 7763         return _IMP_atom.ResidueType___cmp__(self, o)
 
 7765     def __eq__(self, o):
 
 7766         r"""__eq__(ResidueType self, ResidueType o) -> bool""" 
 7767         return _IMP_atom.ResidueType___eq__(self, o)
 
 7769     def __ne__(self, o):
 
 7770         r"""__ne__(ResidueType self, ResidueType o) -> bool""" 
 7771         return _IMP_atom.ResidueType___ne__(self, o)
 
 7773     def __lt__(self, o):
 
 7774         r"""__lt__(ResidueType self, ResidueType o) -> bool""" 
 7775         return _IMP_atom.ResidueType___lt__(self, o)
 
 7777     def __gt__(self, o):
 
 7778         r"""__gt__(ResidueType self, ResidueType o) -> bool""" 
 7779         return _IMP_atom.ResidueType___gt__(self, o)
 
 7781     def __ge__(self, o):
 
 7782         r"""__ge__(ResidueType self, ResidueType o) -> bool""" 
 7783         return _IMP_atom.ResidueType___ge__(self, o)
 
 7785     def __le__(self, o):
 
 7786         r"""__le__(ResidueType self, ResidueType o) -> bool""" 
 7787         return _IMP_atom.ResidueType___le__(self, o)
 
 7790         r"""__hash__(ResidueType self) -> std::size_t""" 
 7791         return _IMP_atom.ResidueType___hash__(self)
 
 7793     def show(self, *args):
 
 7794         r"""show(ResidueType self, _ostream out=std::cout)""" 
 7795         return _IMP_atom.ResidueType_show(self, *args)
 
 7798     def add_alias(old_key, new_name):
 
 7799         r"""add_alias(ResidueType old_key, std::string new_name) -> ResidueType""" 
 7800         return _IMP_atom.ResidueType_add_alias(old_key, new_name)
 
 7803     def get_number_of_keys():
 
 7804         r"""get_number_of_keys() -> unsigned int""" 
 7805         return _IMP_atom.ResidueType_get_number_of_keys()
 
 7808         r"""get_index(ResidueType self) -> unsigned int""" 
 7809         return _IMP_atom.ResidueType_get_index(self)
 
 7813         r"""show_all(_ostream out)""" 
 7814         return _IMP_atom.ResidueType_show_all(out)
 
 7817     def get_all_strings():
 
 7818         r"""get_all_strings() -> IMP::Vector< std::string >""" 
 7819         return _IMP_atom.ResidueType_get_all_strings()
 
 7822     def get_number_unique():
 
 7823         r"""get_number_unique() -> unsigned int""" 
 7824         return _IMP_atom.ResidueType_get_number_unique()
 
 7827         r"""__str__(ResidueType self) -> std::string""" 
 7828         return _IMP_atom.ResidueType___str__(self)
 
 7831         r"""__repr__(ResidueType self) -> std::string""" 
 7832         return _IMP_atom.ResidueType___repr__(self)
 
 7833     __swig_destroy__ = _IMP_atom.delete_ResidueType
 
 7836 _IMP_atom.ResidueType_swigregister(ResidueType)
 
 7837 class ChainType(IMP._Value):
 
 7838     r"""Proxy of C++ IMP::Key< 90784336 > class.""" 
 7840     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 7842     def __init__(self, *args):
 
 7844         __init__(ChainType self) -> ChainType 
 7845         __init__(ChainType self, std::string const & c, bool is_implicit_add_permitted=True) -> ChainType 
 7846         __init__(ChainType self, unsigned int i) -> ChainType 
 7848         _IMP_atom.ChainType_swiginit(self, _IMP_atom.new_ChainType(*args))
 
 7852         r"""add_key(std::string sc) -> unsigned int""" 
 7853         return _IMP_atom.ChainType_add_key(sc)
 
 7856     def get_key_exists(sc):
 
 7857         r"""get_key_exists(std::string sc) -> bool""" 
 7858         return _IMP_atom.ChainType_get_key_exists(sc)
 
 7860     def get_string(self):
 
 7861         r"""get_string(ChainType self) -> std::string const""" 
 7862         return _IMP_atom.ChainType_get_string(self)
 
 7864     def __cmp__(self, o):
 
 7865         r"""__cmp__(ChainType self, ChainType o) -> int""" 
 7866         return _IMP_atom.ChainType___cmp__(self, o)
 
 7868     def __eq__(self, o):
 
 7869         r"""__eq__(ChainType self, ChainType o) -> bool""" 
 7870         return _IMP_atom.ChainType___eq__(self, o)
 
 7872     def __ne__(self, o):
 
 7873         r"""__ne__(ChainType self, ChainType o) -> bool""" 
 7874         return _IMP_atom.ChainType___ne__(self, o)
 
 7876     def __lt__(self, o):
 
 7877         r"""__lt__(ChainType self, ChainType o) -> bool""" 
 7878         return _IMP_atom.ChainType___lt__(self, o)
 
 7880     def __gt__(self, o):
 
 7881         r"""__gt__(ChainType self, ChainType o) -> bool""" 
 7882         return _IMP_atom.ChainType___gt__(self, o)
 
 7884     def __ge__(self, o):
 
 7885         r"""__ge__(ChainType self, ChainType o) -> bool""" 
 7886         return _IMP_atom.ChainType___ge__(self, o)
 
 7888     def __le__(self, o):
 
 7889         r"""__le__(ChainType self, ChainType o) -> bool""" 
 7890         return _IMP_atom.ChainType___le__(self, o)
 
 7893         r"""__hash__(ChainType self) -> std::size_t""" 
 7894         return _IMP_atom.ChainType___hash__(self)
 
 7896     def show(self, *args):
 
 7897         r"""show(ChainType self, _ostream out=std::cout)""" 
 7898         return _IMP_atom.ChainType_show(self, *args)
 
 7901     def add_alias(old_key, new_name):
 
 7902         r"""add_alias(ChainType old_key, std::string new_name) -> ChainType""" 
 7903         return _IMP_atom.ChainType_add_alias(old_key, new_name)
 
 7906     def get_number_of_keys():
 
 7907         r"""get_number_of_keys() -> unsigned int""" 
 7908         return _IMP_atom.ChainType_get_number_of_keys()
 
 7911         r"""get_index(ChainType self) -> unsigned int""" 
 7912         return _IMP_atom.ChainType_get_index(self)
 
 7916         r"""show_all(_ostream out)""" 
 7917         return _IMP_atom.ChainType_show_all(out)
 
 7920     def get_all_strings():
 
 7921         r"""get_all_strings() -> IMP::Vector< std::string >""" 
 7922         return _IMP_atom.ChainType_get_all_strings()
 
 7925     def get_number_unique():
 
 7926         r"""get_number_unique() -> unsigned int""" 
 7927         return _IMP_atom.ChainType_get_number_unique()
 
 7930         r"""__str__(ChainType self) -> std::string""" 
 7931         return _IMP_atom.ChainType___str__(self)
 
 7934         r"""__repr__(ChainType self) -> std::string""" 
 7935         return _IMP_atom.ChainType___repr__(self)
 
 7936     __swig_destroy__ = _IMP_atom.delete_ChainType
 
 7939 _IMP_atom.ChainType_swigregister(ChainType)
 
 7940 UNKNOWN_ELEMENT = _IMP_atom.UNKNOWN_ELEMENT
 
 8158 NUMBER_OF_ELEMENTS = _IMP_atom.NUMBER_OF_ELEMENTS
 
 8162     r"""hash_value(IMP::atom::Element e) -> size_t""" 
 8163     return _IMP_atom.hash_value(e)
 
 8164 class ElementTable(object):
 
 8165     r"""Proxy of C++ IMP::atom::ElementTable class.""" 
 8167     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 8168     __repr__ = _swig_repr
 
 8171         r"""__init__(ElementTable self) -> ElementTable""" 
 8172         _IMP_atom.ElementTable_swiginit(self, _IMP_atom.new_ElementTable())
 
 8174     def get_element(self, s):
 
 8175         r"""get_element(ElementTable self, std::string const & s) -> IMP::atom::Element""" 
 8176         return _IMP_atom.ElementTable_get_element(self, s)
 
 8178     def get_name(self, e):
 
 8179         r"""get_name(ElementTable self, IMP::atom::Element e) -> std::string""" 
 8180         return _IMP_atom.ElementTable_get_name(self, e)
 
 8183         r"""get_mass(ElementTable self, IMP::atom::Element e) -> IMP::Float""" 
 8184         return _IMP_atom.ElementTable_get_mass(self, e)
 
 8185     __swig_destroy__ = _IMP_atom.delete_ElementTable
 
 8188 _IMP_atom.ElementTable_swigregister(ElementTable)
 
 8190 def get_element_table():
 
 8191     r"""get_element_table() -> ElementTable""" 
 8192     return _IMP_atom.get_element_table()
 
 8193 class Atom(Hierarchy):
 
 8194     r"""Proxy of C++ IMP::atom::Atom class.""" 
 8196     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 8198     def __init__(self, *args):
 
 8200         __init__(Atom self) -> Atom 
 8201         __init__(Atom self, Model m, ParticleIndex id) -> Atom 
 8202         __init__(Atom self, _ParticleAdaptor d) -> Atom 
 8204         _IMP_atom.Atom_swiginit(self, _IMP_atom.new_Atom(*args))
 
 8206     def show(self, *args):
 
 8207         r"""show(Atom self, _ostream out=std::cout)""" 
 8208         return _IMP_atom.Atom_show(self, *args)
 
 8211     def setup_particle(*args):
 
 8213         setup_particle(Model m, ParticleIndex pi, Atom other) -> Atom 
 8214         setup_particle(_ParticleAdaptor pa, Atom other) -> Atom 
 8215         setup_particle(Model m, ParticleIndex pi, AtomType atom_type) -> Atom 
 8216         setup_particle(_ParticleAdaptor pa, AtomType atom_type) -> Atom 
 8218         return _IMP_atom.Atom_setup_particle(*args)
 
 8221     def get_is_setup(*args):
 
 8223         get_is_setup(_ParticleAdaptor p) -> bool 
 8224         get_is_setup(Model m, ParticleIndex pi) -> bool 
 8226         return _IMP_atom.Atom_get_is_setup(*args)
 
 8228     def get_atom_type(self):
 
 8229         r"""get_atom_type(Atom self) -> AtomType""" 
 8230         return _IMP_atom.Atom_get_atom_type(self)
 
 8232     def set_atom_type(self, t):
 
 8233         r"""set_atom_type(Atom self, AtomType t)""" 
 8234         return _IMP_atom.Atom_set_atom_type(self, t)
 
 8236     def get_element(self):
 
 8237         r"""get_element(Atom self) -> IMP::atom::Element""" 
 8238         return _IMP_atom.Atom_get_element(self)
 
 8240     def set_element(self, e):
 
 8241         r"""set_element(Atom self, IMP::atom::Element e)""" 
 8242         return _IMP_atom.Atom_set_element(self, e)
 
 8244     def get_occupancy(self):
 
 8245         r"""get_occupancy(Atom self) -> double""" 
 8246         return _IMP_atom.Atom_get_occupancy(self)
 
 8248     def set_occupancy(self, occupancy):
 
 8249         r"""set_occupancy(Atom self, double occupancy)""" 
 8250         return _IMP_atom.Atom_set_occupancy(self, occupancy)
 
 8252     def get_temperature_factor(self):
 
 8253         r"""get_temperature_factor(Atom self) -> double""" 
 8254         return _IMP_atom.Atom_get_temperature_factor(self)
 
 8256     def set_temperature_factor(self, tempFactor):
 
 8257         r"""set_temperature_factor(Atom self, double tempFactor)""" 
 8258         return _IMP_atom.Atom_set_temperature_factor(self, tempFactor)
 
 8260     def get_input_index(self):
 
 8261         r"""get_input_index(Atom self) -> IMP::Int""" 
 8262         return _IMP_atom.Atom_get_input_index(self)
 
 8264     def set_input_index(self, t):
 
 8265         r"""set_input_index(Atom self, IMP::Int t)""" 
 8266         return _IMP_atom.Atom_set_input_index(self, t)
 
 8269     def get_atom_type_key():
 
 8270         r"""get_atom_type_key() -> IntKey""" 
 8271         return _IMP_atom.Atom_get_atom_type_key()
 
 8274     def get_element_key():
 
 8275         r"""get_element_key() -> IntKey""" 
 8276         return _IMP_atom.Atom_get_element_key()
 
 8279     def get_input_index_key():
 
 8280         r"""get_input_index_key() -> IntKey""" 
 8281         return _IMP_atom.Atom_get_input_index_key()
 
 8284     def get_occupancy_key():
 
 8285         r"""get_occupancy_key() -> FloatKey""" 
 8286         return _IMP_atom.Atom_get_occupancy_key()
 
 8289     def get_temperature_factor_key():
 
 8290         r"""get_temperature_factor_key() -> FloatKey""" 
 8291         return _IMP_atom.Atom_get_temperature_factor_key()
 
 8293     def add_attribute(self, *args):
 
 8295         add_attribute(Atom self, FloatKey k, IMP::Float v, bool opt) 
 8296         add_attribute(Atom self, FloatKey a0, IMP::Float a1) 
 8297         add_attribute(Atom self, IntKey a0, IMP::Int a1) 
 8298         add_attribute(Atom self, FloatsKey a0, IMP::Floats a1) 
 8299         add_attribute(Atom self, IntsKey a0, IMP::Ints a1) 
 8300         add_attribute(Atom self, StringKey a0, IMP::String a1) 
 8301         add_attribute(Atom self, ParticleIndexKey a0, Particle a1) 
 8302         add_attribute(Atom self, ObjectKey a0, Object a1) 
 8303         add_attribute(Atom self, SparseFloatKey a0, IMP::Float a1) 
 8304         add_attribute(Atom self, SparseIntKey a0, IMP::Int a1) 
 8305         add_attribute(Atom self, SparseStringKey a0, IMP::String a1) 
 8306         add_attribute(Atom self, SparseParticleIndexKey a0, ParticleIndex a1) 
 8308         return _IMP_atom.Atom_add_attribute(self, *args)
 
 8310     def get_value(self, *args):
 
 8312         get_value(Atom self, FloatKey a0) -> IMP::Float 
 8313         get_value(Atom self, IntKey a0) -> IMP::Int 
 8314         get_value(Atom self, FloatsKey a0) -> IMP::Floats 
 8315         get_value(Atom self, IntsKey a0) -> IMP::Ints 
 8316         get_value(Atom self, StringKey a0) -> IMP::String 
 8317         get_value(Atom self, ParticleIndexKey a0) -> Particle 
 8318         get_value(Atom self, ObjectKey a0) -> Object 
 8319         get_value(Atom self, SparseFloatKey a0) -> IMP::Float 
 8320         get_value(Atom self, SparseIntKey a0) -> IMP::Int 
 8321         get_value(Atom self, SparseStringKey a0) -> IMP::String 
 8322         get_value(Atom self, SparseParticleIndexKey a0) -> ParticleIndex 
 8324         return _IMP_atom.Atom_get_value(self, *args)
 
 8326     def set_value(self, *args):
 
 8328         set_value(Atom self, FloatKey a0, IMP::Float a1) 
 8329         set_value(Atom self, IntKey a0, IMP::Int a1) 
 8330         set_value(Atom self, FloatsKey a0, IMP::Floats a1) 
 8331         set_value(Atom self, IntsKey a0, IMP::Ints a1) 
 8332         set_value(Atom self, StringKey a0, IMP::String a1) 
 8333         set_value(Atom self, ParticleIndexKey a0, Particle a1) 
 8334         set_value(Atom self, ObjectKey a0, Object a1) 
 8335         set_value(Atom self, SparseFloatKey a0, IMP::Float a1) 
 8336         set_value(Atom self, SparseIntKey a0, IMP::Int a1) 
 8337         set_value(Atom self, SparseStringKey a0, IMP::String a1) 
 8338         set_value(Atom self, SparseParticleIndexKey a0, ParticleIndex a1) 
 8340         return _IMP_atom.Atom_set_value(self, *args)
 
 8342     def remove_attribute(self, *args):
 
 8344         remove_attribute(Atom self, FloatKey a0) 
 8345         remove_attribute(Atom self, IntKey a0) 
 8346         remove_attribute(Atom self, FloatsKey a0) 
 8347         remove_attribute(Atom self, IntsKey a0) 
 8348         remove_attribute(Atom self, StringKey a0) 
 8349         remove_attribute(Atom self, ParticleIndexKey a0) 
 8350         remove_attribute(Atom self, ObjectKey a0) 
 8351         remove_attribute(Atom self, SparseFloatKey a0) 
 8352         remove_attribute(Atom self, SparseIntKey a0) 
 8353         remove_attribute(Atom self, SparseStringKey a0) 
 8354         remove_attribute(Atom self, SparseParticleIndexKey a0) 
 8356         return _IMP_atom.Atom_remove_attribute(self, *args)
 
 8358     def has_attribute(self, *args):
 
 8360         has_attribute(Atom self, FloatKey a0) -> bool 
 8361         has_attribute(Atom self, IntKey a0) -> bool 
 8362         has_attribute(Atom self, FloatsKey a0) -> bool 
 8363         has_attribute(Atom self, IntsKey a0) -> bool 
 8364         has_attribute(Atom self, StringKey a0) -> bool 
 8365         has_attribute(Atom self, ParticleIndexKey a0) -> bool 
 8366         has_attribute(Atom self, ObjectKey a0) -> bool 
 8367         has_attribute(Atom self, SparseFloatKey a0) -> bool 
 8368         has_attribute(Atom self, SparseIntKey a0) -> bool 
 8369         has_attribute(Atom self, SparseStringKey a0) -> bool 
 8370         has_attribute(Atom self, SparseParticleIndexKey a0) -> bool 
 8372         return _IMP_atom.Atom_has_attribute(self, *args)
 
 8374     def get_derivative(self, a0):
 
 8375         r"""get_derivative(Atom self, FloatKey a0) -> double""" 
 8376         return _IMP_atom.Atom_get_derivative(self, a0)
 
 8379         r"""get_name(Atom self) -> std::string""" 
 8380         return _IMP_atom.Atom_get_name(self)
 
 8382     def clear_caches(self):
 
 8383         r"""clear_caches(Atom self)""" 
 8384         return _IMP_atom.Atom_clear_caches(self)
 
 8386     def set_name(self, a0):
 
 8387         r"""set_name(Atom self, std::string a0)""" 
 8388         return _IMP_atom.Atom_set_name(self, a0)
 
 8391         r"""set_check_level(Atom self, IMP::CheckLevel a0)""" 
 8392         return _IMP_atom.Atom_set_check_level(self, a0)
 
 8394     def add_to_derivative(self, a0, a1, a2):
 
 8395         r"""add_to_derivative(Atom self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 8396         return _IMP_atom.Atom_add_to_derivative(self, a0, a1, a2)
 
 8398     def set_is_optimized(self, a0, a1):
 
 8399         r"""set_is_optimized(Atom self, FloatKey a0, bool a1)""" 
 8400         return _IMP_atom.Atom_set_is_optimized(self, a0, a1)
 
 8402     def get_is_optimized(self, a0):
 
 8403         r"""get_is_optimized(Atom self, FloatKey a0) -> bool""" 
 8404         return _IMP_atom.Atom_get_is_optimized(self, a0)
 
 8407         r"""get_check_level(Atom self) -> IMP::CheckLevel""" 
 8408         return _IMP_atom.Atom_get_check_level(self)
 
 8410     def __eq__(self, *args):
 
 8412         __eq__(Atom self, Atom o) -> bool 
 8413         __eq__(Atom self, Particle d) -> bool 
 8415         return _IMP_atom.Atom___eq__(self, *args)
 
 8417     def __ne__(self, *args):
 
 8419         __ne__(Atom self, Atom o) -> bool 
 8420         __ne__(Atom self, Particle d) -> bool 
 8422         return _IMP_atom.Atom___ne__(self, *args)
 
 8424     def __le__(self, *args):
 
 8426         __le__(Atom self, Atom o) -> bool 
 8427         __le__(Atom self, Particle d) -> bool 
 8429         return _IMP_atom.Atom___le__(self, *args)
 
 8431     def __lt__(self, *args):
 
 8433         __lt__(Atom self, Atom o) -> bool 
 8434         __lt__(Atom self, Particle d) -> bool 
 8436         return _IMP_atom.Atom___lt__(self, *args)
 
 8438     def __ge__(self, *args):
 
 8440         __ge__(Atom self, Atom o) -> bool 
 8441         __ge__(Atom self, Particle d) -> bool 
 8443         return _IMP_atom.Atom___ge__(self, *args)
 
 8445     def __gt__(self, *args):
 
 8447         __gt__(Atom self, Atom o) -> bool 
 8448         __gt__(Atom self, Particle d) -> bool 
 8450         return _IMP_atom.Atom___gt__(self, *args)
 
 8453         r"""__hash__(Atom self) -> std::size_t""" 
 8454         return _IMP_atom.Atom___hash__(self)
 
 8457         r"""__str__(Atom self) -> std::string""" 
 8458         return _IMP_atom.Atom___str__(self)
 
 8461         r"""__repr__(Atom self) -> std::string""" 
 8462         return _IMP_atom.Atom___repr__(self)
 
 8464     def _get_as_binary(self):
 
 8465         r"""_get_as_binary(Atom self) -> PyObject *""" 
 8466         return _IMP_atom.Atom__get_as_binary(self)
 
 8468     def _set_from_binary(self, p):
 
 8469         r"""_set_from_binary(Atom self, PyObject * p)""" 
 8470         return _IMP_atom.Atom__set_from_binary(self, p)
 
 8472     def __getstate__(self):
 
 8473         p = self._get_as_binary()
 
 8474         if len(self.__dict__) > 1:
 
 8475             d = self.__dict__.copy()
 
 8480     def __setstate__(self, p):
 
 8481         if not hasattr(self, 
'this'):
 
 8483         if isinstance(p, tuple):
 
 8485             self.__dict__.update(d)
 
 8486         return self._set_from_binary(p)
 
 8488     __swig_destroy__ = _IMP_atom.delete_Atom
 
 8491 _IMP_atom.Atom_swigregister(Atom)
 
 8492 cvar = _IMP_atom.cvar
 
 8493 AT_UNKNOWN = cvar.AT_UNKNOWN
 
 8503 AT_HA1 = cvar.AT_HA1
 
 8504 AT_HA2 = cvar.AT_HA2
 
 8505 AT_HA3 = cvar.AT_HA3
 
 8508 AT_HB1 = cvar.AT_HB1
 
 8509 AT_HB2 = cvar.AT_HB2
 
 8510 AT_HB3 = cvar.AT_HB3
 
 8511 AT_OXT = cvar.AT_OXT
 
 8512 AT_CH3 = cvar.AT_CH3
 
 8515 AT_CG1 = cvar.AT_CG1
 
 8516 AT_CG2 = cvar.AT_CG2
 
 8518 AT_HG1 = cvar.AT_HG1
 
 8519 AT_HG2 = cvar.AT_HG2
 
 8520 AT_HG3 = cvar.AT_HG3
 
 8521 AT_HG11 = cvar.AT_HG11
 
 8522 AT_HG21 = cvar.AT_HG21
 
 8523 AT_HG31 = cvar.AT_HG31
 
 8524 AT_HG12 = cvar.AT_HG12
 
 8525 AT_HG13 = cvar.AT_HG13
 
 8526 AT_HG22 = cvar.AT_HG22
 
 8527 AT_HG23 = cvar.AT_HG23
 
 8528 AT_HG32 = cvar.AT_HG32
 
 8530 AT_OG1 = cvar.AT_OG1
 
 8533 AT_CD1 = cvar.AT_CD1
 
 8534 AT_CD2 = cvar.AT_CD2
 
 8536 AT_HD1 = cvar.AT_HD1
 
 8537 AT_HD2 = cvar.AT_HD2
 
 8538 AT_HD3 = cvar.AT_HD3
 
 8539 AT_HD11 = cvar.AT_HD11
 
 8540 AT_HD21 = cvar.AT_HD21
 
 8541 AT_HD31 = cvar.AT_HD31
 
 8542 AT_HD12 = cvar.AT_HD12
 
 8543 AT_HD13 = cvar.AT_HD13
 
 8544 AT_HD22 = cvar.AT_HD22
 
 8545 AT_HD23 = cvar.AT_HD23
 
 8546 AT_HD32 = cvar.AT_HD32
 
 8548 AT_OD1 = cvar.AT_OD1
 
 8549 AT_OD2 = cvar.AT_OD2
 
 8550 AT_ND1 = cvar.AT_ND1
 
 8551 AT_ND2 = cvar.AT_ND2
 
 8553 AT_CE1 = cvar.AT_CE1
 
 8554 AT_CE2 = cvar.AT_CE2
 
 8555 AT_CE3 = cvar.AT_CE3
 
 8557 AT_HE1 = cvar.AT_HE1
 
 8558 AT_HE2 = cvar.AT_HE2
 
 8559 AT_HE3 = cvar.AT_HE3
 
 8560 AT_HE21 = cvar.AT_HE21
 
 8561 AT_HE22 = cvar.AT_HE22
 
 8562 AT_OE1 = cvar.AT_OE1
 
 8563 AT_OE2 = cvar.AT_OE2
 
 8565 AT_NE1 = cvar.AT_NE1
 
 8566 AT_NE2 = cvar.AT_NE2
 
 8568 AT_CZ2 = cvar.AT_CZ2
 
 8569 AT_CZ3 = cvar.AT_CZ3
 
 8572 AT_HZ1 = cvar.AT_HZ1
 
 8573 AT_HZ2 = cvar.AT_HZ2
 
 8574 AT_HZ3 = cvar.AT_HZ3
 
 8575 AT_CH2 = cvar.AT_CH2
 
 8576 AT_NH1 = cvar.AT_NH1
 
 8577 AT_NH2 = cvar.AT_NH2
 
 8580 AT_HH11 = cvar.AT_HH11
 
 8581 AT_HH21 = cvar.AT_HH21
 
 8582 AT_HH2 = cvar.AT_HH2
 
 8583 AT_HH12 = cvar.AT_HH12
 
 8584 AT_HH22 = cvar.AT_HH22
 
 8585 AT_HH13 = cvar.AT_HH13
 
 8586 AT_HH23 = cvar.AT_HH23
 
 8587 AT_HH33 = cvar.AT_HH33
 
 8589 AT_OP1 = cvar.AT_OP1
 
 8590 AT_OP2 = cvar.AT_OP2
 
 8591 AT_OP3 = cvar.AT_OP3
 
 8592 AT_O5p = cvar.AT_O5p
 
 8593 AT_C5p = cvar.AT_C5p
 
 8594 AT_H5p = cvar.AT_H5p
 
 8595 AT_H5pp = cvar.AT_H5pp
 
 8596 AT_C4p = cvar.AT_C4p
 
 8597 AT_H4p = cvar.AT_H4p
 
 8598 AT_O4p = cvar.AT_O4p
 
 8599 AT_C1p = cvar.AT_C1p
 
 8600 AT_H1p = cvar.AT_H1p
 
 8601 AT_C3p = cvar.AT_C3p
 
 8602 AT_H3p = cvar.AT_H3p
 
 8603 AT_O3p = cvar.AT_O3p
 
 8604 AT_C2p = cvar.AT_C2p
 
 8605 AT_H2p = cvar.AT_H2p
 
 8606 AT_H2pp = cvar.AT_H2pp
 
 8607 AT_O2p = cvar.AT_O2p
 
 8608 AT_HO2p = cvar.AT_HO2p
 
 8620 AT_H61 = cvar.AT_H61
 
 8621 AT_H62 = cvar.AT_H62
 
 8625 AT_H21 = cvar.AT_H21
 
 8626 AT_H22 = cvar.AT_H22
 
 8631 AT_H41 = cvar.AT_H41
 
 8632 AT_H42 = cvar.AT_H42
 
 8635 AT_H71 = cvar.AT_H71
 
 8636 AT_H72 = cvar.AT_H72
 
 8637 AT_H73 = cvar.AT_H73
 
 8638 AT_O1A = cvar.AT_O1A
 
 8639 AT_O2A = cvar.AT_O2A
 
 8640 AT_O3A = cvar.AT_O3A
 
 8641 AT_O1B = cvar.AT_O1B
 
 8642 AT_O2B = cvar.AT_O2B
 
 8643 AT_O3B = cvar.AT_O3B
 
 8644 AT_CAY = cvar.AT_CAY
 
 8647 AT_CAT = cvar.AT_CAT
 
 8652     get_residue(Hierarchy mhd, unsigned int index) -> Hierarchy 
 8653     get_residue(Atom d, bool nothrow=False) -> Residue 
 8655     return _IMP_atom.get_residue(*args)
 
 8658     r"""get_atom(Residue rd, AtomType at) -> Atom""" 
 8659     return _IMP_atom.get_atom(rd, at)
 
 8662     r"""add_atom_type(std::string name, IMP::atom::Element e) -> AtomType""" 
 8663     return _IMP_atom.add_atom_type(name, e)
 
 8665 def get_element_for_atom_type(at):
 
 8666     r"""get_element_for_atom_type(AtomType at) -> IMP::atom::Element""" 
 8667     return _IMP_atom.get_element_for_atom_type(at)
 
 8670     r"""get_atom_type_exists(std::string name) -> bool""" 
 8671     return _IMP_atom.get_atom_type_exists(name)
 
 8672 class Residue(Hierarchy):
 
 8673     r"""Proxy of C++ IMP::atom::Residue class.""" 
 8675     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 8677     def __init__(self, *args):
 
 8679         __init__(Residue self) -> Residue 
 8680         __init__(Residue self, Model m, ParticleIndex id) -> Residue 
 8681         __init__(Residue self, _ParticleAdaptor d) -> Residue 
 8683         _IMP_atom.Residue_swiginit(self, _IMP_atom.new_Residue(*args))
 
 8685     def show(self, *args):
 
 8686         r"""show(Residue self, _ostream out=std::cout)""" 
 8687         return _IMP_atom.Residue_show(self, *args)
 
 8690     def setup_particle(*args):
 
 8692         setup_particle(Model m, ParticleIndex pi, ResidueType t, int index, int insertion_code) -> Residue 
 8693         setup_particle(_ParticleAdaptor pa, ResidueType t, int index, int insertion_code) -> Residue 
 8694         setup_particle(Model m, ParticleIndex pi, ResidueType t, int index) -> Residue 
 8695         setup_particle(_ParticleAdaptor pa, ResidueType t, int index) -> Residue 
 8696         setup_particle(Model m, ParticleIndex pi, ResidueType t) -> Residue 
 8697         setup_particle(_ParticleAdaptor pa, ResidueType t) -> Residue 
 8698         setup_particle(Model m, ParticleIndex pi, Residue other) -> Residue 
 8699         setup_particle(_ParticleAdaptor pa, Residue other) -> Residue 
 8701         return _IMP_atom.Residue_setup_particle(*args)
 
 8704     def get_is_setup(*args):
 
 8706         get_is_setup(_ParticleAdaptor p) -> bool 
 8707         get_is_setup(Model m, ParticleIndex pi) -> bool 
 8709         return _IMP_atom.Residue_get_is_setup(*args)
 
 8711     def get_residue_type(self):
 
 8712         r"""get_residue_type(Residue self) -> ResidueType""" 
 8713         return _IMP_atom.Residue_get_residue_type(self)
 
 8715     def set_residue_type(self, t):
 
 8716         r"""set_residue_type(Residue self, ResidueType t)""" 
 8717         return _IMP_atom.Residue_set_residue_type(self, t)
 
 8719     def get_is_protein(self):
 
 8720         r"""get_is_protein(Residue self) -> bool""" 
 8721         return _IMP_atom.Residue_get_is_protein(self)
 
 8723     def get_is_dna(self):
 
 8724         r"""get_is_dna(Residue self) -> bool""" 
 8725         return _IMP_atom.Residue_get_is_dna(self)
 
 8727     def get_is_rna(self):
 
 8728         r"""get_is_rna(Residue self) -> bool""" 
 8729         return _IMP_atom.Residue_get_is_rna(self)
 
 8732         r"""get_index(Residue self) -> IMP::Int""" 
 8733         return _IMP_atom.Residue_get_index(self)
 
 8735     def set_index(self, t):
 
 8736         r"""set_index(Residue self, IMP::Int t)""" 
 8737         return _IMP_atom.Residue_set_index(self, t)
 
 8739     def get_insertion_code(self):
 
 8740         r"""get_insertion_code(Residue self) -> char""" 
 8741         return _IMP_atom.Residue_get_insertion_code(self)
 
 8743     def set_insertion_code(self, insertion_code):
 
 8744         r"""set_insertion_code(Residue self, char insertion_code)""" 
 8745         return _IMP_atom.Residue_set_insertion_code(self, insertion_code)
 
 8748     def get_index_key():
 
 8749         r"""get_index_key() -> IntKey""" 
 8750         return _IMP_atom.Residue_get_index_key()
 
 8753     def get_residue_type_key():
 
 8754         r"""get_residue_type_key() -> IntKey""" 
 8755         return _IMP_atom.Residue_get_residue_type_key()
 
 8758     def get_insertion_code_key():
 
 8759         r"""get_insertion_code_key() -> IntKey""" 
 8760         return _IMP_atom.Residue_get_insertion_code_key()
 
 8763     def get_type_changed_key():
 
 8764         r"""get_type_changed_key() -> TriggerKey""" 
 8765         return _IMP_atom.Residue_get_type_changed_key()
 
 8767     def add_attribute(self, *args):
 
 8769         add_attribute(Residue self, FloatKey k, IMP::Float v, bool opt) 
 8770         add_attribute(Residue self, FloatKey a0, IMP::Float a1) 
 8771         add_attribute(Residue self, IntKey a0, IMP::Int a1) 
 8772         add_attribute(Residue self, FloatsKey a0, IMP::Floats a1) 
 8773         add_attribute(Residue self, IntsKey a0, IMP::Ints a1) 
 8774         add_attribute(Residue self, StringKey a0, IMP::String a1) 
 8775         add_attribute(Residue self, ParticleIndexKey a0, Particle a1) 
 8776         add_attribute(Residue self, ObjectKey a0, Object a1) 
 8777         add_attribute(Residue self, SparseFloatKey a0, IMP::Float a1) 
 8778         add_attribute(Residue self, SparseIntKey a0, IMP::Int a1) 
 8779         add_attribute(Residue self, SparseStringKey a0, IMP::String a1) 
 8780         add_attribute(Residue self, SparseParticleIndexKey a0, ParticleIndex a1) 
 8782         return _IMP_atom.Residue_add_attribute(self, *args)
 
 8784     def get_value(self, *args):
 
 8786         get_value(Residue self, FloatKey a0) -> IMP::Float 
 8787         get_value(Residue self, IntKey a0) -> IMP::Int 
 8788         get_value(Residue self, FloatsKey a0) -> IMP::Floats 
 8789         get_value(Residue self, IntsKey a0) -> IMP::Ints 
 8790         get_value(Residue self, StringKey a0) -> IMP::String 
 8791         get_value(Residue self, ParticleIndexKey a0) -> Particle 
 8792         get_value(Residue self, ObjectKey a0) -> Object 
 8793         get_value(Residue self, SparseFloatKey a0) -> IMP::Float 
 8794         get_value(Residue self, SparseIntKey a0) -> IMP::Int 
 8795         get_value(Residue self, SparseStringKey a0) -> IMP::String 
 8796         get_value(Residue self, SparseParticleIndexKey a0) -> ParticleIndex 
 8798         return _IMP_atom.Residue_get_value(self, *args)
 
 8800     def set_value(self, *args):
 
 8802         set_value(Residue self, FloatKey a0, IMP::Float a1) 
 8803         set_value(Residue self, IntKey a0, IMP::Int a1) 
 8804         set_value(Residue self, FloatsKey a0, IMP::Floats a1) 
 8805         set_value(Residue self, IntsKey a0, IMP::Ints a1) 
 8806         set_value(Residue self, StringKey a0, IMP::String a1) 
 8807         set_value(Residue self, ParticleIndexKey a0, Particle a1) 
 8808         set_value(Residue self, ObjectKey a0, Object a1) 
 8809         set_value(Residue self, SparseFloatKey a0, IMP::Float a1) 
 8810         set_value(Residue self, SparseIntKey a0, IMP::Int a1) 
 8811         set_value(Residue self, SparseStringKey a0, IMP::String a1) 
 8812         set_value(Residue self, SparseParticleIndexKey a0, ParticleIndex a1) 
 8814         return _IMP_atom.Residue_set_value(self, *args)
 
 8816     def remove_attribute(self, *args):
 
 8818         remove_attribute(Residue self, FloatKey a0) 
 8819         remove_attribute(Residue self, IntKey a0) 
 8820         remove_attribute(Residue self, FloatsKey a0) 
 8821         remove_attribute(Residue self, IntsKey a0) 
 8822         remove_attribute(Residue self, StringKey a0) 
 8823         remove_attribute(Residue self, ParticleIndexKey a0) 
 8824         remove_attribute(Residue self, ObjectKey a0) 
 8825         remove_attribute(Residue self, SparseFloatKey a0) 
 8826         remove_attribute(Residue self, SparseIntKey a0) 
 8827         remove_attribute(Residue self, SparseStringKey a0) 
 8828         remove_attribute(Residue self, SparseParticleIndexKey a0) 
 8830         return _IMP_atom.Residue_remove_attribute(self, *args)
 
 8832     def has_attribute(self, *args):
 
 8834         has_attribute(Residue self, FloatKey a0) -> bool 
 8835         has_attribute(Residue self, IntKey a0) -> bool 
 8836         has_attribute(Residue self, FloatsKey a0) -> bool 
 8837         has_attribute(Residue self, IntsKey a0) -> bool 
 8838         has_attribute(Residue self, StringKey a0) -> bool 
 8839         has_attribute(Residue self, ParticleIndexKey a0) -> bool 
 8840         has_attribute(Residue self, ObjectKey a0) -> bool 
 8841         has_attribute(Residue self, SparseFloatKey a0) -> bool 
 8842         has_attribute(Residue self, SparseIntKey a0) -> bool 
 8843         has_attribute(Residue self, SparseStringKey a0) -> bool 
 8844         has_attribute(Residue self, SparseParticleIndexKey a0) -> bool 
 8846         return _IMP_atom.Residue_has_attribute(self, *args)
 
 8848     def get_derivative(self, a0):
 
 8849         r"""get_derivative(Residue self, FloatKey a0) -> double""" 
 8850         return _IMP_atom.Residue_get_derivative(self, a0)
 
 8853         r"""get_name(Residue self) -> std::string""" 
 8854         return _IMP_atom.Residue_get_name(self)
 
 8856     def clear_caches(self):
 
 8857         r"""clear_caches(Residue self)""" 
 8858         return _IMP_atom.Residue_clear_caches(self)
 
 8860     def set_name(self, a0):
 
 8861         r"""set_name(Residue self, std::string a0)""" 
 8862         return _IMP_atom.Residue_set_name(self, a0)
 
 8865         r"""set_check_level(Residue self, IMP::CheckLevel a0)""" 
 8866         return _IMP_atom.Residue_set_check_level(self, a0)
 
 8868     def add_to_derivative(self, a0, a1, a2):
 
 8869         r"""add_to_derivative(Residue self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 8870         return _IMP_atom.Residue_add_to_derivative(self, a0, a1, a2)
 
 8872     def set_is_optimized(self, a0, a1):
 
 8873         r"""set_is_optimized(Residue self, FloatKey a0, bool a1)""" 
 8874         return _IMP_atom.Residue_set_is_optimized(self, a0, a1)
 
 8876     def get_is_optimized(self, a0):
 
 8877         r"""get_is_optimized(Residue self, FloatKey a0) -> bool""" 
 8878         return _IMP_atom.Residue_get_is_optimized(self, a0)
 
 8881         r"""get_check_level(Residue self) -> IMP::CheckLevel""" 
 8882         return _IMP_atom.Residue_get_check_level(self)
 
 8884     def __eq__(self, *args):
 
 8886         __eq__(Residue self, Residue o) -> bool 
 8887         __eq__(Residue self, Particle d) -> bool 
 8889         return _IMP_atom.Residue___eq__(self, *args)
 
 8891     def __ne__(self, *args):
 
 8893         __ne__(Residue self, Residue o) -> bool 
 8894         __ne__(Residue self, Particle d) -> bool 
 8896         return _IMP_atom.Residue___ne__(self, *args)
 
 8898     def __le__(self, *args):
 
 8900         __le__(Residue self, Residue o) -> bool 
 8901         __le__(Residue self, Particle d) -> bool 
 8903         return _IMP_atom.Residue___le__(self, *args)
 
 8905     def __lt__(self, *args):
 
 8907         __lt__(Residue self, Residue o) -> bool 
 8908         __lt__(Residue self, Particle d) -> bool 
 8910         return _IMP_atom.Residue___lt__(self, *args)
 
 8912     def __ge__(self, *args):
 
 8914         __ge__(Residue self, Residue o) -> bool 
 8915         __ge__(Residue self, Particle d) -> bool 
 8917         return _IMP_atom.Residue___ge__(self, *args)
 
 8919     def __gt__(self, *args):
 
 8921         __gt__(Residue self, Residue o) -> bool 
 8922         __gt__(Residue self, Particle d) -> bool 
 8924         return _IMP_atom.Residue___gt__(self, *args)
 
 8927         r"""__hash__(Residue self) -> std::size_t""" 
 8928         return _IMP_atom.Residue___hash__(self)
 
 8931         r"""__str__(Residue self) -> std::string""" 
 8932         return _IMP_atom.Residue___str__(self)
 
 8935         r"""__repr__(Residue self) -> std::string""" 
 8936         return _IMP_atom.Residue___repr__(self)
 
 8938     def _get_as_binary(self):
 
 8939         r"""_get_as_binary(Residue self) -> PyObject *""" 
 8940         return _IMP_atom.Residue__get_as_binary(self)
 
 8942     def _set_from_binary(self, p):
 
 8943         r"""_set_from_binary(Residue self, PyObject * p)""" 
 8944         return _IMP_atom.Residue__set_from_binary(self, p)
 
 8946     def __getstate__(self):
 
 8947         p = self._get_as_binary()
 
 8948         if len(self.__dict__) > 1:
 
 8949             d = self.__dict__.copy()
 
 8954     def __setstate__(self, p):
 
 8955         if not hasattr(self, 
'this'):
 
 8957         if isinstance(p, tuple):
 
 8959             self.__dict__.update(d)
 
 8960         return self._set_from_binary(p)
 
 8962     __swig_destroy__ = _IMP_atom.delete_Residue
 
 8965 _IMP_atom.Residue_swigregister(Residue)
 
 9006     r"""get_next_residue(Residue rd) -> Hierarchy""" 
 9007     return _IMP_atom.get_next_residue(rd)
 
 9010     r"""get_previous_residue(Residue rd) -> Hierarchy""" 
 9011     return _IMP_atom.get_previous_residue(rd)
 
 9014     r"""get_one_letter_code(ResidueType c) -> char""" 
 9015     return _IMP_atom.get_one_letter_code(c)
 
 9016 BALLS = _IMP_atom.BALLS
 
 9018 DENSITIES = _IMP_atom.DENSITIES
 
 9020 class Representation(Hierarchy):
 
 9021     r"""Proxy of C++ IMP::atom::Representation class.""" 
 9023     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 9026     def setup_particle(*args):
 
 9028         setup_particle(Model m, ParticleIndex pi) -> Representation 
 9029         setup_particle(_ParticleAdaptor pa) -> Representation 
 9030         setup_particle(Model m, ParticleIndex pi, double resolution) -> Representation 
 9031         setup_particle(_ParticleAdaptor pa, double resolution) -> Representation 
 9032         setup_particle(Model m, ParticleIndex pi, Representation other) -> Representation 
 9033         setup_particle(_ParticleAdaptor pa, Representation other) -> Representation 
 9035         return _IMP_atom.Representation_setup_particle(*args)
 
 9037     def __init__(self, *args):
 
 9039         __init__(Representation self) -> Representation 
 9040         __init__(Representation self, Model m, ParticleIndex id) -> Representation 
 9041         __init__(Representation self, _ParticleAdaptor d) -> Representation 
 9043         _IMP_atom.Representation_swiginit(self, _IMP_atom.new_Representation(*args))
 
 9045     def show(self, *args):
 
 9046         r"""show(Representation self, _ostream out=std::cout)""" 
 9047         return _IMP_atom.Representation_show(self, *args)
 
 9050     def get_is_setup(*args):
 
 9052         get_is_setup(_ParticleAdaptor p) -> bool 
 9053         get_is_setup(Model m, ParticleIndex pi) -> bool 
 9055         return _IMP_atom.Representation_get_is_setup(*args)
 
 9058         r"""get_representation(Representation self, double resolution, IMP::atom::RepresentationType type=BALLS) -> Hierarchy""" 
 9059         return _IMP_atom.Representation_get_representation(self, *args)
 
 9061     def get_representations(self, *args):
 
 9062         r"""get_representations(Representation self, IMP::atom::RepresentationType type=BALLS) -> IMP::atom::Hierarchies""" 
 9063         return _IMP_atom.Representation_get_representations(self, *args)
 
 9065     def add_representation(self, *args):
 
 9066         r"""add_representation(Representation self, _ParticleIndexAdaptor rep, IMP::atom::RepresentationType type=BALLS, double resolution=-1)""" 
 9067         return _IMP_atom.Representation_add_representation(self, *args)
 
 9069     def get_resolutions(self, *args):
 
 9070         r"""get_resolutions(Representation self, IMP::atom::RepresentationType type=BALLS) -> IMP::Floats""" 
 9071         return _IMP_atom.Representation_get_resolutions(self, *args)
 
 9073     def remove_representation(self, rep):
 
 9074         r"""remove_representation(Representation self, _ParticleIndexAdaptor rep)""" 
 9075         return _IMP_atom.Representation_remove_representation(self, rep)
 
 9077     def update_parents(self):
 
 9078         r"""update_parents(Representation self)""" 
 9079         return _IMP_atom.Representation_update_parents(self)
 
 9081     def add_attribute(self, *args):
 
 9083         add_attribute(Representation self, FloatKey k, IMP::Float v, bool opt) 
 9084         add_attribute(Representation self, FloatKey a0, IMP::Float a1) 
 9085         add_attribute(Representation self, IntKey a0, IMP::Int a1) 
 9086         add_attribute(Representation self, FloatsKey a0, IMP::Floats a1) 
 9087         add_attribute(Representation self, IntsKey a0, IMP::Ints a1) 
 9088         add_attribute(Representation self, StringKey a0, IMP::String a1) 
 9089         add_attribute(Representation self, ParticleIndexKey a0, Particle a1) 
 9090         add_attribute(Representation self, ObjectKey a0, Object a1) 
 9091         add_attribute(Representation self, SparseFloatKey a0, IMP::Float a1) 
 9092         add_attribute(Representation self, SparseIntKey a0, IMP::Int a1) 
 9093         add_attribute(Representation self, SparseStringKey a0, IMP::String a1) 
 9094         add_attribute(Representation self, SparseParticleIndexKey a0, ParticleIndex a1) 
 9096         return _IMP_atom.Representation_add_attribute(self, *args)
 
 9098     def get_value(self, *args):
 
 9100         get_value(Representation self, FloatKey a0) -> IMP::Float 
 9101         get_value(Representation self, IntKey a0) -> IMP::Int 
 9102         get_value(Representation self, FloatsKey a0) -> IMP::Floats 
 9103         get_value(Representation self, IntsKey a0) -> IMP::Ints 
 9104         get_value(Representation self, StringKey a0) -> IMP::String 
 9105         get_value(Representation self, ParticleIndexKey a0) -> Particle 
 9106         get_value(Representation self, ObjectKey a0) -> Object 
 9107         get_value(Representation self, SparseFloatKey a0) -> IMP::Float 
 9108         get_value(Representation self, SparseIntKey a0) -> IMP::Int 
 9109         get_value(Representation self, SparseStringKey a0) -> IMP::String 
 9110         get_value(Representation self, SparseParticleIndexKey a0) -> ParticleIndex 
 9112         return _IMP_atom.Representation_get_value(self, *args)
 
 9114     def set_value(self, *args):
 
 9116         set_value(Representation self, FloatKey a0, IMP::Float a1) 
 9117         set_value(Representation self, IntKey a0, IMP::Int a1) 
 9118         set_value(Representation self, FloatsKey a0, IMP::Floats a1) 
 9119         set_value(Representation self, IntsKey a0, IMP::Ints a1) 
 9120         set_value(Representation self, StringKey a0, IMP::String a1) 
 9121         set_value(Representation self, ParticleIndexKey a0, Particle a1) 
 9122         set_value(Representation self, ObjectKey a0, Object a1) 
 9123         set_value(Representation self, SparseFloatKey a0, IMP::Float a1) 
 9124         set_value(Representation self, SparseIntKey a0, IMP::Int a1) 
 9125         set_value(Representation self, SparseStringKey a0, IMP::String a1) 
 9126         set_value(Representation self, SparseParticleIndexKey a0, ParticleIndex a1) 
 9128         return _IMP_atom.Representation_set_value(self, *args)
 
 9130     def remove_attribute(self, *args):
 
 9132         remove_attribute(Representation self, FloatKey a0) 
 9133         remove_attribute(Representation self, IntKey a0) 
 9134         remove_attribute(Representation self, FloatsKey a0) 
 9135         remove_attribute(Representation self, IntsKey a0) 
 9136         remove_attribute(Representation self, StringKey a0) 
 9137         remove_attribute(Representation self, ParticleIndexKey a0) 
 9138         remove_attribute(Representation self, ObjectKey a0) 
 9139         remove_attribute(Representation self, SparseFloatKey a0) 
 9140         remove_attribute(Representation self, SparseIntKey a0) 
 9141         remove_attribute(Representation self, SparseStringKey a0) 
 9142         remove_attribute(Representation self, SparseParticleIndexKey a0) 
 9144         return _IMP_atom.Representation_remove_attribute(self, *args)
 
 9146     def has_attribute(self, *args):
 
 9148         has_attribute(Representation self, FloatKey a0) -> bool 
 9149         has_attribute(Representation self, IntKey a0) -> bool 
 9150         has_attribute(Representation self, FloatsKey a0) -> bool 
 9151         has_attribute(Representation self, IntsKey a0) -> bool 
 9152         has_attribute(Representation self, StringKey a0) -> bool 
 9153         has_attribute(Representation self, ParticleIndexKey a0) -> bool 
 9154         has_attribute(Representation self, ObjectKey a0) -> bool 
 9155         has_attribute(Representation self, SparseFloatKey a0) -> bool 
 9156         has_attribute(Representation self, SparseIntKey a0) -> bool 
 9157         has_attribute(Representation self, SparseStringKey a0) -> bool 
 9158         has_attribute(Representation self, SparseParticleIndexKey a0) -> bool 
 9160         return _IMP_atom.Representation_has_attribute(self, *args)
 
 9162     def get_derivative(self, a0):
 
 9163         r"""get_derivative(Representation self, FloatKey a0) -> double""" 
 9164         return _IMP_atom.Representation_get_derivative(self, a0)
 
 9167         r"""get_name(Representation self) -> std::string""" 
 9168         return _IMP_atom.Representation_get_name(self)
 
 9170     def clear_caches(self):
 
 9171         r"""clear_caches(Representation self)""" 
 9172         return _IMP_atom.Representation_clear_caches(self)
 
 9174     def set_name(self, a0):
 
 9175         r"""set_name(Representation self, std::string a0)""" 
 9176         return _IMP_atom.Representation_set_name(self, a0)
 
 9179         r"""set_check_level(Representation self, IMP::CheckLevel a0)""" 
 9180         return _IMP_atom.Representation_set_check_level(self, a0)
 
 9182     def add_to_derivative(self, a0, a1, a2):
 
 9183         r"""add_to_derivative(Representation self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 9184         return _IMP_atom.Representation_add_to_derivative(self, a0, a1, a2)
 
 9186     def set_is_optimized(self, a0, a1):
 
 9187         r"""set_is_optimized(Representation self, FloatKey a0, bool a1)""" 
 9188         return _IMP_atom.Representation_set_is_optimized(self, a0, a1)
 
 9190     def get_is_optimized(self, a0):
 
 9191         r"""get_is_optimized(Representation self, FloatKey a0) -> bool""" 
 9192         return _IMP_atom.Representation_get_is_optimized(self, a0)
 
 9195         r"""get_check_level(Representation self) -> IMP::CheckLevel""" 
 9196         return _IMP_atom.Representation_get_check_level(self)
 
 9198     def __eq__(self, *args):
 
 9200         __eq__(Representation self, Representation o) -> bool 
 9201         __eq__(Representation self, Particle d) -> bool 
 9203         return _IMP_atom.Representation___eq__(self, *args)
 
 9205     def __ne__(self, *args):
 
 9207         __ne__(Representation self, Representation o) -> bool 
 9208         __ne__(Representation self, Particle d) -> bool 
 9210         return _IMP_atom.Representation___ne__(self, *args)
 
 9212     def __le__(self, *args):
 
 9214         __le__(Representation self, Representation o) -> bool 
 9215         __le__(Representation self, Particle d) -> bool 
 9217         return _IMP_atom.Representation___le__(self, *args)
 
 9219     def __lt__(self, *args):
 
 9221         __lt__(Representation self, Representation o) -> bool 
 9222         __lt__(Representation self, Particle d) -> bool 
 9224         return _IMP_atom.Representation___lt__(self, *args)
 
 9226     def __ge__(self, *args):
 
 9228         __ge__(Representation self, Representation o) -> bool 
 9229         __ge__(Representation self, Particle d) -> bool 
 9231         return _IMP_atom.Representation___ge__(self, *args)
 
 9233     def __gt__(self, *args):
 
 9235         __gt__(Representation self, Representation o) -> bool 
 9236         __gt__(Representation self, Particle d) -> bool 
 9238         return _IMP_atom.Representation___gt__(self, *args)
 
 9241         r"""__hash__(Representation self) -> std::size_t""" 
 9242         return _IMP_atom.Representation___hash__(self)
 
 9245         r"""__str__(Representation self) -> std::string""" 
 9246         return _IMP_atom.Representation___str__(self)
 
 9249         r"""__repr__(Representation self) -> std::string""" 
 9250         return _IMP_atom.Representation___repr__(self)
 
 9252     def _get_as_binary(self):
 
 9253         r"""_get_as_binary(Representation self) -> PyObject *""" 
 9254         return _IMP_atom.Representation__get_as_binary(self)
 
 9256     def _set_from_binary(self, p):
 
 9257         r"""_set_from_binary(Representation self, PyObject * p)""" 
 9258         return _IMP_atom.Representation__set_from_binary(self, p)
 
 9260     def __getstate__(self):
 
 9261         p = self._get_as_binary()
 
 9262         if len(self.__dict__) > 1:
 
 9263             d = self.__dict__.copy()
 
 9268     def __setstate__(self, p):
 
 9269         if not hasattr(self, 
'this'):
 
 9271         if isinstance(p, tuple):
 
 9273             self.__dict__.update(d)
 
 9274         return self._set_from_binary(p)
 
 9276     __swig_destroy__ = _IMP_atom.delete_Representation
 
 9279 _IMP_atom.Representation_swigregister(Representation)
 
 9280 ALL_RESOLUTIONS = cvar.ALL_RESOLUTIONS
 
 9285     get_resolution(Model m, ParticleIndex pi) -> double 
 9286     get_resolution(Hierarchy h) -> double 
 9288     return _IMP_atom.get_resolution(*args)
 
 9291     r"""get_representation(Hierarchy h, bool nothrow=False) -> Representation""" 
 9292     return _IMP_atom.get_representation(h, nothrow)
 
 9295     r"""show_with_representations(Hierarchy h, _ostream out=std::cout)""" 
 9296     return _IMP_atom.show_with_representations(*args)
 
 9297 class State(Hierarchy):
 
 9298     r"""Proxy of C++ IMP::atom::State class.""" 
 9300     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 9303     def setup_particle(*args):
 
 9305         setup_particle(Model m, ParticleIndex pi, unsigned int index) -> State 
 9306         setup_particle(_ParticleAdaptor pa, unsigned int index) -> State 
 9307         setup_particle(Model m, ParticleIndex pi, State other) -> State 
 9308         setup_particle(_ParticleAdaptor pa, State other) -> State 
 9310         return _IMP_atom.State_setup_particle(*args)
 
 9312     def __init__(self, *args):
 
 9314         __init__(State self) -> State 
 9315         __init__(State self, Model m, ParticleIndex id) -> State 
 9316         __init__(State self, _ParticleAdaptor d) -> State 
 9318         _IMP_atom.State_swiginit(self, _IMP_atom.new_State(*args))
 
 9320     def show(self, *args):
 
 9321         r"""show(State self, _ostream out=std::cout)""" 
 9322         return _IMP_atom.State_show(self, *args)
 
 9325     def get_is_setup(*args):
 
 9327         get_is_setup(_ParticleAdaptor p) -> bool 
 9328         get_is_setup(Model m, ParticleIndex pi) -> bool 
 9330         return _IMP_atom.State_get_is_setup(*args)
 
 9333         r"""get_state_index(State self) -> unsigned int""" 
 9334         return _IMP_atom.State_get_state_index(self)
 
 9336     def add_attribute(self, *args):
 
 9338         add_attribute(State self, FloatKey k, IMP::Float v, bool opt) 
 9339         add_attribute(State self, FloatKey a0, IMP::Float a1) 
 9340         add_attribute(State self, IntKey a0, IMP::Int a1) 
 9341         add_attribute(State self, FloatsKey a0, IMP::Floats a1) 
 9342         add_attribute(State self, IntsKey a0, IMP::Ints a1) 
 9343         add_attribute(State self, StringKey a0, IMP::String a1) 
 9344         add_attribute(State self, ParticleIndexKey a0, Particle a1) 
 9345         add_attribute(State self, ObjectKey a0, Object a1) 
 9346         add_attribute(State self, SparseFloatKey a0, IMP::Float a1) 
 9347         add_attribute(State self, SparseIntKey a0, IMP::Int a1) 
 9348         add_attribute(State self, SparseStringKey a0, IMP::String a1) 
 9349         add_attribute(State self, SparseParticleIndexKey a0, ParticleIndex a1) 
 9351         return _IMP_atom.State_add_attribute(self, *args)
 
 9353     def get_value(self, *args):
 
 9355         get_value(State self, FloatKey a0) -> IMP::Float 
 9356         get_value(State self, IntKey a0) -> IMP::Int 
 9357         get_value(State self, FloatsKey a0) -> IMP::Floats 
 9358         get_value(State self, IntsKey a0) -> IMP::Ints 
 9359         get_value(State self, StringKey a0) -> IMP::String 
 9360         get_value(State self, ParticleIndexKey a0) -> Particle 
 9361         get_value(State self, ObjectKey a0) -> Object 
 9362         get_value(State self, SparseFloatKey a0) -> IMP::Float 
 9363         get_value(State self, SparseIntKey a0) -> IMP::Int 
 9364         get_value(State self, SparseStringKey a0) -> IMP::String 
 9365         get_value(State self, SparseParticleIndexKey a0) -> ParticleIndex 
 9367         return _IMP_atom.State_get_value(self, *args)
 
 9369     def set_value(self, *args):
 
 9371         set_value(State self, FloatKey a0, IMP::Float a1) 
 9372         set_value(State self, IntKey a0, IMP::Int a1) 
 9373         set_value(State self, FloatsKey a0, IMP::Floats a1) 
 9374         set_value(State self, IntsKey a0, IMP::Ints a1) 
 9375         set_value(State self, StringKey a0, IMP::String a1) 
 9376         set_value(State self, ParticleIndexKey a0, Particle a1) 
 9377         set_value(State self, ObjectKey a0, Object a1) 
 9378         set_value(State self, SparseFloatKey a0, IMP::Float a1) 
 9379         set_value(State self, SparseIntKey a0, IMP::Int a1) 
 9380         set_value(State self, SparseStringKey a0, IMP::String a1) 
 9381         set_value(State self, SparseParticleIndexKey a0, ParticleIndex a1) 
 9383         return _IMP_atom.State_set_value(self, *args)
 
 9385     def remove_attribute(self, *args):
 
 9387         remove_attribute(State self, FloatKey a0) 
 9388         remove_attribute(State self, IntKey a0) 
 9389         remove_attribute(State self, FloatsKey a0) 
 9390         remove_attribute(State self, IntsKey a0) 
 9391         remove_attribute(State self, StringKey a0) 
 9392         remove_attribute(State self, ParticleIndexKey a0) 
 9393         remove_attribute(State self, ObjectKey a0) 
 9394         remove_attribute(State self, SparseFloatKey a0) 
 9395         remove_attribute(State self, SparseIntKey a0) 
 9396         remove_attribute(State self, SparseStringKey a0) 
 9397         remove_attribute(State self, SparseParticleIndexKey a0) 
 9399         return _IMP_atom.State_remove_attribute(self, *args)
 
 9401     def has_attribute(self, *args):
 
 9403         has_attribute(State self, FloatKey a0) -> bool 
 9404         has_attribute(State self, IntKey a0) -> bool 
 9405         has_attribute(State self, FloatsKey a0) -> bool 
 9406         has_attribute(State self, IntsKey a0) -> bool 
 9407         has_attribute(State self, StringKey a0) -> bool 
 9408         has_attribute(State self, ParticleIndexKey a0) -> bool 
 9409         has_attribute(State self, ObjectKey a0) -> bool 
 9410         has_attribute(State self, SparseFloatKey a0) -> bool 
 9411         has_attribute(State self, SparseIntKey a0) -> bool 
 9412         has_attribute(State self, SparseStringKey a0) -> bool 
 9413         has_attribute(State self, SparseParticleIndexKey a0) -> bool 
 9415         return _IMP_atom.State_has_attribute(self, *args)
 
 9417     def get_derivative(self, a0):
 
 9418         r"""get_derivative(State self, FloatKey a0) -> double""" 
 9419         return _IMP_atom.State_get_derivative(self, a0)
 
 9422         r"""get_name(State self) -> std::string""" 
 9423         return _IMP_atom.State_get_name(self)
 
 9425     def clear_caches(self):
 
 9426         r"""clear_caches(State self)""" 
 9427         return _IMP_atom.State_clear_caches(self)
 
 9429     def set_name(self, a0):
 
 9430         r"""set_name(State self, std::string a0)""" 
 9431         return _IMP_atom.State_set_name(self, a0)
 
 9434         r"""set_check_level(State self, IMP::CheckLevel a0)""" 
 9435         return _IMP_atom.State_set_check_level(self, a0)
 
 9437     def add_to_derivative(self, a0, a1, a2):
 
 9438         r"""add_to_derivative(State self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 9439         return _IMP_atom.State_add_to_derivative(self, a0, a1, a2)
 
 9441     def set_is_optimized(self, a0, a1):
 
 9442         r"""set_is_optimized(State self, FloatKey a0, bool a1)""" 
 9443         return _IMP_atom.State_set_is_optimized(self, a0, a1)
 
 9445     def get_is_optimized(self, a0):
 
 9446         r"""get_is_optimized(State self, FloatKey a0) -> bool""" 
 9447         return _IMP_atom.State_get_is_optimized(self, a0)
 
 9450         r"""get_check_level(State self) -> IMP::CheckLevel""" 
 9451         return _IMP_atom.State_get_check_level(self)
 
 9453     def __eq__(self, *args):
 
 9455         __eq__(State self, State o) -> bool 
 9456         __eq__(State self, Particle d) -> bool 
 9458         return _IMP_atom.State___eq__(self, *args)
 
 9460     def __ne__(self, *args):
 
 9462         __ne__(State self, State o) -> bool 
 9463         __ne__(State self, Particle d) -> bool 
 9465         return _IMP_atom.State___ne__(self, *args)
 
 9467     def __le__(self, *args):
 
 9469         __le__(State self, State o) -> bool 
 9470         __le__(State self, Particle d) -> bool 
 9472         return _IMP_atom.State___le__(self, *args)
 
 9474     def __lt__(self, *args):
 
 9476         __lt__(State self, State o) -> bool 
 9477         __lt__(State self, Particle d) -> bool 
 9479         return _IMP_atom.State___lt__(self, *args)
 
 9481     def __ge__(self, *args):
 
 9483         __ge__(State self, State o) -> bool 
 9484         __ge__(State self, Particle d) -> bool 
 9486         return _IMP_atom.State___ge__(self, *args)
 
 9488     def __gt__(self, *args):
 
 9490         __gt__(State self, State o) -> bool 
 9491         __gt__(State self, Particle d) -> bool 
 9493         return _IMP_atom.State___gt__(self, *args)
 
 9496         r"""__hash__(State self) -> std::size_t""" 
 9497         return _IMP_atom.State___hash__(self)
 
 9500         r"""__str__(State self) -> std::string""" 
 9501         return _IMP_atom.State___str__(self)
 
 9504         r"""__repr__(State self) -> std::string""" 
 9505         return _IMP_atom.State___repr__(self)
 
 9507     def _get_as_binary(self):
 
 9508         r"""_get_as_binary(State self) -> PyObject *""" 
 9509         return _IMP_atom.State__get_as_binary(self)
 
 9511     def _set_from_binary(self, p):
 
 9512         r"""_set_from_binary(State self, PyObject * p)""" 
 9513         return _IMP_atom.State__set_from_binary(self, p)
 
 9515     def __getstate__(self):
 
 9516         p = self._get_as_binary()
 
 9517         if len(self.__dict__) > 1:
 
 9518             d = self.__dict__.copy()
 
 9523     def __setstate__(self, p):
 
 9524         if not hasattr(self, 
'this'):
 
 9526         if isinstance(p, tuple):
 
 9528             self.__dict__.update(d)
 
 9529         return self._set_from_binary(p)
 
 9531     __swig_destroy__ = _IMP_atom.delete_State
 
 9534 _IMP_atom.State_swigregister(State)
 
 9537     r"""get_state_index(Hierarchy h) -> int""" 
 9538     return _IMP_atom.get_state_index(h)
 
 9541     r"""get_phi_dihedral_atoms(Residue rd) -> IMP::atom::Atoms""" 
 9542     return _IMP_atom.get_phi_dihedral_atoms(rd)
 
 9545     r"""get_psi_dihedral_atoms(Residue rd) -> IMP::atom::Atoms""" 
 9546     return _IMP_atom.get_psi_dihedral_atoms(rd)
 
 9549     r"""get_omega_dihedral_atoms(Residue rd) -> IMP::atom::Atoms""" 
 9550     return _IMP_atom.get_omega_dihedral_atoms(rd)
 
 9553     r"""get_chi_dihedral_atom_types(ResidueType rt) -> IMP::Vector< IMP::atom::AtomTypes >""" 
 9554     return _IMP_atom.get_chi_dihedral_atom_types(rt)
 
 9557     r"""get_chi_dihedral_atoms(Residue rd) -> IMP::Vector< IMP::atom::Atoms >""" 
 9558     return _IMP_atom.get_chi_dihedral_atoms(rd)
 
 9561     r"""get_chi_dihedral_particle_indexes(Residue rd) -> IMP::ParticleIndexQuads""" 
 9562     return _IMP_atom.get_chi_dihedral_particle_indexes(rd)
 
 9563 class Molecule(Hierarchy):
 
 9564     r"""Proxy of C++ IMP::atom::Molecule class.""" 
 9566     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 9568     def __init__(self, *args):
 
 9570         __init__(Molecule self) -> Molecule 
 9571         __init__(Molecule self, Model m, ParticleIndex id) -> Molecule 
 9572         __init__(Molecule self, _ParticleAdaptor d) -> Molecule 
 9574         _IMP_atom.Molecule_swiginit(self, _IMP_atom.new_Molecule(*args))
 
 9576     def show(self, *args):
 
 9577         r"""show(Molecule self, _ostream out=std::cout)""" 
 9578         return _IMP_atom.Molecule_show(self, *args)
 
 9581     def setup_particle(*args):
 
 9583         setup_particle(Model m, ParticleIndex pi) -> Molecule 
 9584         setup_particle(_ParticleAdaptor pa) -> Molecule 
 9585         setup_particle(Model m, ParticleIndex pi, Molecule other) -> Molecule 
 9586         setup_particle(_ParticleAdaptor pa, Molecule other) -> Molecule 
 9588         return _IMP_atom.Molecule_setup_particle(*args)
 
 9591     def get_is_setup(*args):
 
 9593         get_is_setup(_ParticleAdaptor p) -> bool 
 9594         get_is_setup(Model m, ParticleIndex pi) -> bool 
 9596         return _IMP_atom.Molecule_get_is_setup(*args)
 
 9598     def add_attribute(self, *args):
 
 9600         add_attribute(Molecule self, FloatKey k, IMP::Float v, bool opt) 
 9601         add_attribute(Molecule self, FloatKey a0, IMP::Float a1) 
 9602         add_attribute(Molecule self, IntKey a0, IMP::Int a1) 
 9603         add_attribute(Molecule self, FloatsKey a0, IMP::Floats a1) 
 9604         add_attribute(Molecule self, IntsKey a0, IMP::Ints a1) 
 9605         add_attribute(Molecule self, StringKey a0, IMP::String a1) 
 9606         add_attribute(Molecule self, ParticleIndexKey a0, Particle a1) 
 9607         add_attribute(Molecule self, ObjectKey a0, Object a1) 
 9608         add_attribute(Molecule self, SparseFloatKey a0, IMP::Float a1) 
 9609         add_attribute(Molecule self, SparseIntKey a0, IMP::Int a1) 
 9610         add_attribute(Molecule self, SparseStringKey a0, IMP::String a1) 
 9611         add_attribute(Molecule self, SparseParticleIndexKey a0, ParticleIndex a1) 
 9613         return _IMP_atom.Molecule_add_attribute(self, *args)
 
 9615     def get_value(self, *args):
 
 9617         get_value(Molecule self, FloatKey a0) -> IMP::Float 
 9618         get_value(Molecule self, IntKey a0) -> IMP::Int 
 9619         get_value(Molecule self, FloatsKey a0) -> IMP::Floats 
 9620         get_value(Molecule self, IntsKey a0) -> IMP::Ints 
 9621         get_value(Molecule self, StringKey a0) -> IMP::String 
 9622         get_value(Molecule self, ParticleIndexKey a0) -> Particle 
 9623         get_value(Molecule self, ObjectKey a0) -> Object 
 9624         get_value(Molecule self, SparseFloatKey a0) -> IMP::Float 
 9625         get_value(Molecule self, SparseIntKey a0) -> IMP::Int 
 9626         get_value(Molecule self, SparseStringKey a0) -> IMP::String 
 9627         get_value(Molecule self, SparseParticleIndexKey a0) -> ParticleIndex 
 9629         return _IMP_atom.Molecule_get_value(self, *args)
 
 9631     def set_value(self, *args):
 
 9633         set_value(Molecule self, FloatKey a0, IMP::Float a1) 
 9634         set_value(Molecule self, IntKey a0, IMP::Int a1) 
 9635         set_value(Molecule self, FloatsKey a0, IMP::Floats a1) 
 9636         set_value(Molecule self, IntsKey a0, IMP::Ints a1) 
 9637         set_value(Molecule self, StringKey a0, IMP::String a1) 
 9638         set_value(Molecule self, ParticleIndexKey a0, Particle a1) 
 9639         set_value(Molecule self, ObjectKey a0, Object a1) 
 9640         set_value(Molecule self, SparseFloatKey a0, IMP::Float a1) 
 9641         set_value(Molecule self, SparseIntKey a0, IMP::Int a1) 
 9642         set_value(Molecule self, SparseStringKey a0, IMP::String a1) 
 9643         set_value(Molecule self, SparseParticleIndexKey a0, ParticleIndex a1) 
 9645         return _IMP_atom.Molecule_set_value(self, *args)
 
 9647     def remove_attribute(self, *args):
 
 9649         remove_attribute(Molecule self, FloatKey a0) 
 9650         remove_attribute(Molecule self, IntKey a0) 
 9651         remove_attribute(Molecule self, FloatsKey a0) 
 9652         remove_attribute(Molecule self, IntsKey a0) 
 9653         remove_attribute(Molecule self, StringKey a0) 
 9654         remove_attribute(Molecule self, ParticleIndexKey a0) 
 9655         remove_attribute(Molecule self, ObjectKey a0) 
 9656         remove_attribute(Molecule self, SparseFloatKey a0) 
 9657         remove_attribute(Molecule self, SparseIntKey a0) 
 9658         remove_attribute(Molecule self, SparseStringKey a0) 
 9659         remove_attribute(Molecule self, SparseParticleIndexKey a0) 
 9661         return _IMP_atom.Molecule_remove_attribute(self, *args)
 
 9663     def has_attribute(self, *args):
 
 9665         has_attribute(Molecule self, FloatKey a0) -> bool 
 9666         has_attribute(Molecule self, IntKey a0) -> bool 
 9667         has_attribute(Molecule self, FloatsKey a0) -> bool 
 9668         has_attribute(Molecule self, IntsKey a0) -> bool 
 9669         has_attribute(Molecule self, StringKey a0) -> bool 
 9670         has_attribute(Molecule self, ParticleIndexKey a0) -> bool 
 9671         has_attribute(Molecule self, ObjectKey a0) -> bool 
 9672         has_attribute(Molecule self, SparseFloatKey a0) -> bool 
 9673         has_attribute(Molecule self, SparseIntKey a0) -> bool 
 9674         has_attribute(Molecule self, SparseStringKey a0) -> bool 
 9675         has_attribute(Molecule self, SparseParticleIndexKey a0) -> bool 
 9677         return _IMP_atom.Molecule_has_attribute(self, *args)
 
 9679     def get_derivative(self, a0):
 
 9680         r"""get_derivative(Molecule self, FloatKey a0) -> double""" 
 9681         return _IMP_atom.Molecule_get_derivative(self, a0)
 
 9684         r"""get_name(Molecule self) -> std::string""" 
 9685         return _IMP_atom.Molecule_get_name(self)
 
 9687     def clear_caches(self):
 
 9688         r"""clear_caches(Molecule self)""" 
 9689         return _IMP_atom.Molecule_clear_caches(self)
 
 9691     def set_name(self, a0):
 
 9692         r"""set_name(Molecule self, std::string a0)""" 
 9693         return _IMP_atom.Molecule_set_name(self, a0)
 
 9696         r"""set_check_level(Molecule self, IMP::CheckLevel a0)""" 
 9697         return _IMP_atom.Molecule_set_check_level(self, a0)
 
 9699     def add_to_derivative(self, a0, a1, a2):
 
 9700         r"""add_to_derivative(Molecule self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 9701         return _IMP_atom.Molecule_add_to_derivative(self, a0, a1, a2)
 
 9703     def set_is_optimized(self, a0, a1):
 
 9704         r"""set_is_optimized(Molecule self, FloatKey a0, bool a1)""" 
 9705         return _IMP_atom.Molecule_set_is_optimized(self, a0, a1)
 
 9707     def get_is_optimized(self, a0):
 
 9708         r"""get_is_optimized(Molecule self, FloatKey a0) -> bool""" 
 9709         return _IMP_atom.Molecule_get_is_optimized(self, a0)
 
 9712         r"""get_check_level(Molecule self) -> IMP::CheckLevel""" 
 9713         return _IMP_atom.Molecule_get_check_level(self)
 
 9715     def __eq__(self, *args):
 
 9717         __eq__(Molecule self, Molecule o) -> bool 
 9718         __eq__(Molecule self, Particle d) -> bool 
 9720         return _IMP_atom.Molecule___eq__(self, *args)
 
 9722     def __ne__(self, *args):
 
 9724         __ne__(Molecule self, Molecule o) -> bool 
 9725         __ne__(Molecule self, Particle d) -> bool 
 9727         return _IMP_atom.Molecule___ne__(self, *args)
 
 9729     def __le__(self, *args):
 
 9731         __le__(Molecule self, Molecule o) -> bool 
 9732         __le__(Molecule self, Particle d) -> bool 
 9734         return _IMP_atom.Molecule___le__(self, *args)
 
 9736     def __lt__(self, *args):
 
 9738         __lt__(Molecule self, Molecule o) -> bool 
 9739         __lt__(Molecule self, Particle d) -> bool 
 9741         return _IMP_atom.Molecule___lt__(self, *args)
 
 9743     def __ge__(self, *args):
 
 9745         __ge__(Molecule self, Molecule o) -> bool 
 9746         __ge__(Molecule self, Particle d) -> bool 
 9748         return _IMP_atom.Molecule___ge__(self, *args)
 
 9750     def __gt__(self, *args):
 
 9752         __gt__(Molecule self, Molecule o) -> bool 
 9753         __gt__(Molecule self, Particle d) -> bool 
 9755         return _IMP_atom.Molecule___gt__(self, *args)
 
 9758         r"""__hash__(Molecule self) -> std::size_t""" 
 9759         return _IMP_atom.Molecule___hash__(self)
 
 9762         r"""__str__(Molecule self) -> std::string""" 
 9763         return _IMP_atom.Molecule___str__(self)
 
 9766         r"""__repr__(Molecule self) -> std::string""" 
 9767         return _IMP_atom.Molecule___repr__(self)
 
 9769     def _get_as_binary(self):
 
 9770         r"""_get_as_binary(Molecule self) -> PyObject *""" 
 9771         return _IMP_atom.Molecule__get_as_binary(self)
 
 9773     def _set_from_binary(self, p):
 
 9774         r"""_set_from_binary(Molecule self, PyObject * p)""" 
 9775         return _IMP_atom.Molecule__set_from_binary(self, p)
 
 9777     def __getstate__(self):
 
 9778         p = self._get_as_binary()
 
 9779         if len(self.__dict__) > 1:
 
 9780             d = self.__dict__.copy()
 
 9785     def __setstate__(self, p):
 
 9786         if not hasattr(self, 
'this'):
 
 9788         if isinstance(p, tuple):
 
 9790             self.__dict__.update(d)
 
 9791         return self._set_from_binary(p)
 
 9793     __swig_destroy__ = _IMP_atom.delete_Molecule
 
 9796 _IMP_atom.Molecule_swigregister(Molecule)
 
 9799     r"""get_molecule_name(Hierarchy h) -> std::string""" 
 9800     return _IMP_atom.get_molecule_name(h)
 
 9801 class Copy(Molecule):
 
 9802     r"""Proxy of C++ IMP::atom::Copy class.""" 
 9804     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
 9807     def get_copy_index_key():
 
 9808         r"""get_copy_index_key() -> IntKey""" 
 9809         return _IMP_atom.Copy_get_copy_index_key()
 
 9811     def __init__(self, *args):
 
 9813         __init__(Copy self) -> Copy 
 9814         __init__(Copy self, Model m, ParticleIndex id) -> Copy 
 9815         __init__(Copy self, _ParticleAdaptor d) -> Copy 
 9817         _IMP_atom.Copy_swiginit(self, _IMP_atom.new_Copy(*args))
 
 9819     def show(self, *args):
 
 9820         r"""show(Copy self, _ostream out=std::cout)""" 
 9821         return _IMP_atom.Copy_show(self, *args)
 
 9824     def setup_particle(*args):
 
 9826         setup_particle(Model m, ParticleIndex pi, IMP::Int number) -> Copy 
 9827         setup_particle(_ParticleAdaptor pa, IMP::Int number) -> Copy 
 9829         return _IMP_atom.Copy_setup_particle(*args)
 
 9832     def get_is_setup(*args):
 
 9834         get_is_setup(_ParticleAdaptor p) -> bool 
 9835         get_is_setup(Model m, ParticleIndex pi) -> bool 
 9837         return _IMP_atom.Copy_get_is_setup(*args)
 
 9840         r"""get_copy_index(Copy self) -> int""" 
 9841         return _IMP_atom.Copy_get_copy_index(self)
 
 9843     def add_attribute(self, *args):
 
 9845         add_attribute(Copy self, FloatKey k, IMP::Float v, bool opt) 
 9846         add_attribute(Copy self, FloatKey a0, IMP::Float a1) 
 9847         add_attribute(Copy self, IntKey a0, IMP::Int a1) 
 9848         add_attribute(Copy self, FloatsKey a0, IMP::Floats a1) 
 9849         add_attribute(Copy self, IntsKey a0, IMP::Ints a1) 
 9850         add_attribute(Copy self, StringKey a0, IMP::String a1) 
 9851         add_attribute(Copy self, ParticleIndexKey a0, Particle a1) 
 9852         add_attribute(Copy self, ObjectKey a0, Object a1) 
 9853         add_attribute(Copy self, SparseFloatKey a0, IMP::Float a1) 
 9854         add_attribute(Copy self, SparseIntKey a0, IMP::Int a1) 
 9855         add_attribute(Copy self, SparseStringKey a0, IMP::String a1) 
 9856         add_attribute(Copy self, SparseParticleIndexKey a0, ParticleIndex a1) 
 9858         return _IMP_atom.Copy_add_attribute(self, *args)
 
 9860     def get_value(self, *args):
 
 9862         get_value(Copy self, FloatKey a0) -> IMP::Float 
 9863         get_value(Copy self, IntKey a0) -> IMP::Int 
 9864         get_value(Copy self, FloatsKey a0) -> IMP::Floats 
 9865         get_value(Copy self, IntsKey a0) -> IMP::Ints 
 9866         get_value(Copy self, StringKey a0) -> IMP::String 
 9867         get_value(Copy self, ParticleIndexKey a0) -> Particle 
 9868         get_value(Copy self, ObjectKey a0) -> Object 
 9869         get_value(Copy self, SparseFloatKey a0) -> IMP::Float 
 9870         get_value(Copy self, SparseIntKey a0) -> IMP::Int 
 9871         get_value(Copy self, SparseStringKey a0) -> IMP::String 
 9872         get_value(Copy self, SparseParticleIndexKey a0) -> ParticleIndex 
 9874         return _IMP_atom.Copy_get_value(self, *args)
 
 9876     def set_value(self, *args):
 
 9878         set_value(Copy self, FloatKey a0, IMP::Float a1) 
 9879         set_value(Copy self, IntKey a0, IMP::Int a1) 
 9880         set_value(Copy self, FloatsKey a0, IMP::Floats a1) 
 9881         set_value(Copy self, IntsKey a0, IMP::Ints a1) 
 9882         set_value(Copy self, StringKey a0, IMP::String a1) 
 9883         set_value(Copy self, ParticleIndexKey a0, Particle a1) 
 9884         set_value(Copy self, ObjectKey a0, Object a1) 
 9885         set_value(Copy self, SparseFloatKey a0, IMP::Float a1) 
 9886         set_value(Copy self, SparseIntKey a0, IMP::Int a1) 
 9887         set_value(Copy self, SparseStringKey a0, IMP::String a1) 
 9888         set_value(Copy self, SparseParticleIndexKey a0, ParticleIndex a1) 
 9890         return _IMP_atom.Copy_set_value(self, *args)
 
 9892     def remove_attribute(self, *args):
 
 9894         remove_attribute(Copy self, FloatKey a0) 
 9895         remove_attribute(Copy self, IntKey a0) 
 9896         remove_attribute(Copy self, FloatsKey a0) 
 9897         remove_attribute(Copy self, IntsKey a0) 
 9898         remove_attribute(Copy self, StringKey a0) 
 9899         remove_attribute(Copy self, ParticleIndexKey a0) 
 9900         remove_attribute(Copy self, ObjectKey a0) 
 9901         remove_attribute(Copy self, SparseFloatKey a0) 
 9902         remove_attribute(Copy self, SparseIntKey a0) 
 9903         remove_attribute(Copy self, SparseStringKey a0) 
 9904         remove_attribute(Copy self, SparseParticleIndexKey a0) 
 9906         return _IMP_atom.Copy_remove_attribute(self, *args)
 
 9908     def has_attribute(self, *args):
 
 9910         has_attribute(Copy self, FloatKey a0) -> bool 
 9911         has_attribute(Copy self, IntKey a0) -> bool 
 9912         has_attribute(Copy self, FloatsKey a0) -> bool 
 9913         has_attribute(Copy self, IntsKey a0) -> bool 
 9914         has_attribute(Copy self, StringKey a0) -> bool 
 9915         has_attribute(Copy self, ParticleIndexKey a0) -> bool 
 9916         has_attribute(Copy self, ObjectKey a0) -> bool 
 9917         has_attribute(Copy self, SparseFloatKey a0) -> bool 
 9918         has_attribute(Copy self, SparseIntKey a0) -> bool 
 9919         has_attribute(Copy self, SparseStringKey a0) -> bool 
 9920         has_attribute(Copy self, SparseParticleIndexKey a0) -> bool 
 9922         return _IMP_atom.Copy_has_attribute(self, *args)
 
 9924     def get_derivative(self, a0):
 
 9925         r"""get_derivative(Copy self, FloatKey a0) -> double""" 
 9926         return _IMP_atom.Copy_get_derivative(self, a0)
 
 9929         r"""get_name(Copy self) -> std::string""" 
 9930         return _IMP_atom.Copy_get_name(self)
 
 9932     def clear_caches(self):
 
 9933         r"""clear_caches(Copy self)""" 
 9934         return _IMP_atom.Copy_clear_caches(self)
 
 9936     def set_name(self, a0):
 
 9937         r"""set_name(Copy self, std::string a0)""" 
 9938         return _IMP_atom.Copy_set_name(self, a0)
 
 9941         r"""set_check_level(Copy self, IMP::CheckLevel a0)""" 
 9942         return _IMP_atom.Copy_set_check_level(self, a0)
 
 9944     def add_to_derivative(self, a0, a1, a2):
 
 9945         r"""add_to_derivative(Copy self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
 9946         return _IMP_atom.Copy_add_to_derivative(self, a0, a1, a2)
 
 9948     def set_is_optimized(self, a0, a1):
 
 9949         r"""set_is_optimized(Copy self, FloatKey a0, bool a1)""" 
 9950         return _IMP_atom.Copy_set_is_optimized(self, a0, a1)
 
 9952     def get_is_optimized(self, a0):
 
 9953         r"""get_is_optimized(Copy self, FloatKey a0) -> bool""" 
 9954         return _IMP_atom.Copy_get_is_optimized(self, a0)
 
 9957         r"""get_check_level(Copy self) -> IMP::CheckLevel""" 
 9958         return _IMP_atom.Copy_get_check_level(self)
 
 9960     def __eq__(self, *args):
 
 9962         __eq__(Copy self, Copy o) -> bool 
 9963         __eq__(Copy self, Particle d) -> bool 
 9965         return _IMP_atom.Copy___eq__(self, *args)
 
 9967     def __ne__(self, *args):
 
 9969         __ne__(Copy self, Copy o) -> bool 
 9970         __ne__(Copy self, Particle d) -> bool 
 9972         return _IMP_atom.Copy___ne__(self, *args)
 
 9974     def __le__(self, *args):
 
 9976         __le__(Copy self, Copy o) -> bool 
 9977         __le__(Copy self, Particle d) -> bool 
 9979         return _IMP_atom.Copy___le__(self, *args)
 
 9981     def __lt__(self, *args):
 
 9983         __lt__(Copy self, Copy o) -> bool 
 9984         __lt__(Copy self, Particle d) -> bool 
 9986         return _IMP_atom.Copy___lt__(self, *args)
 
 9988     def __ge__(self, *args):
 
 9990         __ge__(Copy self, Copy o) -> bool 
 9991         __ge__(Copy self, Particle d) -> bool 
 9993         return _IMP_atom.Copy___ge__(self, *args)
 
 9995     def __gt__(self, *args):
 
 9997         __gt__(Copy self, Copy o) -> bool 
 9998         __gt__(Copy self, Particle d) -> bool 
10000         return _IMP_atom.Copy___gt__(self, *args)
 
10002     def __hash__(self):
 
10003         r"""__hash__(Copy self) -> std::size_t""" 
10004         return _IMP_atom.Copy___hash__(self)
 
10007         r"""__str__(Copy self) -> std::string""" 
10008         return _IMP_atom.Copy___str__(self)
 
10010     def __repr__(self):
 
10011         r"""__repr__(Copy self) -> std::string""" 
10012         return _IMP_atom.Copy___repr__(self)
 
10014     def _get_as_binary(self):
 
10015         r"""_get_as_binary(Copy self) -> PyObject *""" 
10016         return _IMP_atom.Copy__get_as_binary(self)
 
10018     def _set_from_binary(self, p):
 
10019         r"""_set_from_binary(Copy self, PyObject * p)""" 
10020         return _IMP_atom.Copy__set_from_binary(self, p)
 
10022     def __getstate__(self):
 
10023         p = self._get_as_binary()
 
10024         if len(self.__dict__) > 1:
 
10025             d = self.__dict__.copy()
 
10030     def __setstate__(self, p):
 
10031         if not hasattr(self, 
'this'):
 
10033         if isinstance(p, tuple):
 
10035             self.__dict__.update(d)
 
10036         return self._set_from_binary(p)
 
10038     __swig_destroy__ = _IMP_atom.delete_Copy
 
10041 _IMP_atom.Copy_swigregister(Copy)
 
10044     r"""get_copy_index(Hierarchy h) -> int""" 
10045     return _IMP_atom.get_copy_index(h)
 
10046 class Chain(Hierarchy):
 
10047     r"""Proxy of C++ IMP::atom::Chain class.""" 
10049     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
10051     def __init__(self, *args):
 
10053         __init__(Chain self) -> Chain 
10054         __init__(Chain self, Model m, ParticleIndex id) -> Chain 
10055         __init__(Chain self, _ParticleAdaptor d) -> Chain 
10057         _IMP_atom.Chain_swiginit(self, _IMP_atom.new_Chain(*args))
 
10059     def show(self, *args):
 
10060         r"""show(Chain self, _ostream out=std::cout)""" 
10061         return _IMP_atom.Chain_show(self, *args)
 
10064     def setup_particle(*args):
 
10066         setup_particle(Model m, ParticleIndex pi, std::string id) -> Chain 
10067         setup_particle(_ParticleAdaptor pa, std::string id) -> Chain 
10068         setup_particle(Model m, ParticleIndex pi, char id) -> Chain 
10069         setup_particle(_ParticleAdaptor pa, char id) -> Chain 
10070         setup_particle(Model m, ParticleIndex pi, Chain other) -> Chain 
10071         setup_particle(_ParticleAdaptor pa, Chain other) -> Chain 
10073         return _IMP_atom.Chain_setup_particle(*args)
 
10076     def get_is_setup(*args):
 
10078         get_is_setup(_ParticleAdaptor p) -> bool 
10079         get_is_setup(Model m, ParticleIndex pi) -> bool 
10081         return _IMP_atom.Chain_get_is_setup(*args)
 
10084         r"""get_id(Chain self) -> std::string""" 
10085         return _IMP_atom.Chain_get_id(self)
 
10087     def set_id(self, c):
 
10088         r"""set_id(Chain self, std::string c)""" 
10089         return _IMP_atom.Chain_set_id(self, c)
 
10091     def get_label_asym_id(self):
 
10092         r"""get_label_asym_id(Chain self) -> std::string""" 
10093         return _IMP_atom.Chain_get_label_asym_id(self)
 
10095     def set_label_asym_id(self, c):
 
10096         r"""set_label_asym_id(Chain self, std::string c)""" 
10097         return _IMP_atom.Chain_set_label_asym_id(self, c)
 
10099     def get_sequence(self):
 
10100         r"""get_sequence(Chain self) -> std::string""" 
10101         return _IMP_atom.Chain_get_sequence(self)
 
10103     def set_sequence(self, sequence):
 
10104         r"""set_sequence(Chain self, std::string sequence)""" 
10105         return _IMP_atom.Chain_set_sequence(self, sequence)
 
10107     def get_sequence_offset(self):
 
10108         r"""get_sequence_offset(Chain self) -> int""" 
10109         return _IMP_atom.Chain_get_sequence_offset(self)
 
10111     def set_sequence_offset(self, offset):
 
10112         r"""set_sequence_offset(Chain self, int offset)""" 
10113         return _IMP_atom.Chain_set_sequence_offset(self, offset)
 
10115     def get_uniprot_accession(self):
 
10116         r"""get_uniprot_accession(Chain self) -> std::string""" 
10117         return _IMP_atom.Chain_get_uniprot_accession(self)
 
10119     def set_uniprot_accession(self, accession):
 
10120         r"""set_uniprot_accession(Chain self, std::string accession)""" 
10121         return _IMP_atom.Chain_set_uniprot_accession(self, accession)
 
10123     def get_chain_type(self):
 
10124         r"""get_chain_type(Chain self) -> ChainType""" 
10125         return _IMP_atom.Chain_get_chain_type(self)
 
10127     def set_chain_type(self, t):
 
10128         r"""set_chain_type(Chain self, ChainType t)""" 
10129         return _IMP_atom.Chain_set_chain_type(self, t)
 
10133         r"""get_id_key() -> SparseStringKey""" 
10134         return _IMP_atom.Chain_get_id_key()
 
10137     def get_label_asym_id_key():
 
10138         r"""get_label_asym_id_key() -> SparseStringKey""" 
10139         return _IMP_atom.Chain_get_label_asym_id_key()
 
10142     def get_sequence_key():
 
10143         r"""get_sequence_key() -> SparseStringKey""" 
10144         return _IMP_atom.Chain_get_sequence_key()
 
10147     def get_sequence_offset_key():
 
10148         r"""get_sequence_offset_key() -> SparseIntKey""" 
10149         return _IMP_atom.Chain_get_sequence_offset_key()
 
10152     def get_uniprot_accession_key():
 
10153         r"""get_uniprot_accession_key() -> SparseStringKey""" 
10154         return _IMP_atom.Chain_get_uniprot_accession_key()
 
10157     def get_chain_type_key():
 
10158         r"""get_chain_type_key() -> SparseIntKey""" 
10159         return _IMP_atom.Chain_get_chain_type_key()
 
10161     def add_attribute(self, *args):
 
10163         add_attribute(Chain self, FloatKey k, IMP::Float v, bool opt) 
10164         add_attribute(Chain self, FloatKey a0, IMP::Float a1) 
10165         add_attribute(Chain self, IntKey a0, IMP::Int a1) 
10166         add_attribute(Chain self, FloatsKey a0, IMP::Floats a1) 
10167         add_attribute(Chain self, IntsKey a0, IMP::Ints a1) 
10168         add_attribute(Chain self, StringKey a0, IMP::String a1) 
10169         add_attribute(Chain self, ParticleIndexKey a0, Particle a1) 
10170         add_attribute(Chain self, ObjectKey a0, Object a1) 
10171         add_attribute(Chain self, SparseFloatKey a0, IMP::Float a1) 
10172         add_attribute(Chain self, SparseIntKey a0, IMP::Int a1) 
10173         add_attribute(Chain self, SparseStringKey a0, IMP::String a1) 
10174         add_attribute(Chain self, SparseParticleIndexKey a0, ParticleIndex a1) 
10176         return _IMP_atom.Chain_add_attribute(self, *args)
 
10178     def get_value(self, *args):
 
10180         get_value(Chain self, FloatKey a0) -> IMP::Float 
10181         get_value(Chain self, IntKey a0) -> IMP::Int 
10182         get_value(Chain self, FloatsKey a0) -> IMP::Floats 
10183         get_value(Chain self, IntsKey a0) -> IMP::Ints 
10184         get_value(Chain self, StringKey a0) -> IMP::String 
10185         get_value(Chain self, ParticleIndexKey a0) -> Particle 
10186         get_value(Chain self, ObjectKey a0) -> Object 
10187         get_value(Chain self, SparseFloatKey a0) -> IMP::Float 
10188         get_value(Chain self, SparseIntKey a0) -> IMP::Int 
10189         get_value(Chain self, SparseStringKey a0) -> IMP::String 
10190         get_value(Chain self, SparseParticleIndexKey a0) -> ParticleIndex 
10192         return _IMP_atom.Chain_get_value(self, *args)
 
10194     def set_value(self, *args):
 
10196         set_value(Chain self, FloatKey a0, IMP::Float a1) 
10197         set_value(Chain self, IntKey a0, IMP::Int a1) 
10198         set_value(Chain self, FloatsKey a0, IMP::Floats a1) 
10199         set_value(Chain self, IntsKey a0, IMP::Ints a1) 
10200         set_value(Chain self, StringKey a0, IMP::String a1) 
10201         set_value(Chain self, ParticleIndexKey a0, Particle a1) 
10202         set_value(Chain self, ObjectKey a0, Object a1) 
10203         set_value(Chain self, SparseFloatKey a0, IMP::Float a1) 
10204         set_value(Chain self, SparseIntKey a0, IMP::Int a1) 
10205         set_value(Chain self, SparseStringKey a0, IMP::String a1) 
10206         set_value(Chain self, SparseParticleIndexKey a0, ParticleIndex a1) 
10208         return _IMP_atom.Chain_set_value(self, *args)
 
10210     def remove_attribute(self, *args):
 
10212         remove_attribute(Chain self, FloatKey a0) 
10213         remove_attribute(Chain self, IntKey a0) 
10214         remove_attribute(Chain self, FloatsKey a0) 
10215         remove_attribute(Chain self, IntsKey a0) 
10216         remove_attribute(Chain self, StringKey a0) 
10217         remove_attribute(Chain self, ParticleIndexKey a0) 
10218         remove_attribute(Chain self, ObjectKey a0) 
10219         remove_attribute(Chain self, SparseFloatKey a0) 
10220         remove_attribute(Chain self, SparseIntKey a0) 
10221         remove_attribute(Chain self, SparseStringKey a0) 
10222         remove_attribute(Chain self, SparseParticleIndexKey a0) 
10224         return _IMP_atom.Chain_remove_attribute(self, *args)
 
10226     def has_attribute(self, *args):
 
10228         has_attribute(Chain self, FloatKey a0) -> bool 
10229         has_attribute(Chain self, IntKey a0) -> bool 
10230         has_attribute(Chain self, FloatsKey a0) -> bool 
10231         has_attribute(Chain self, IntsKey a0) -> bool 
10232         has_attribute(Chain self, StringKey a0) -> bool 
10233         has_attribute(Chain self, ParticleIndexKey a0) -> bool 
10234         has_attribute(Chain self, ObjectKey a0) -> bool 
10235         has_attribute(Chain self, SparseFloatKey a0) -> bool 
10236         has_attribute(Chain self, SparseIntKey a0) -> bool 
10237         has_attribute(Chain self, SparseStringKey a0) -> bool 
10238         has_attribute(Chain self, SparseParticleIndexKey a0) -> bool 
10240         return _IMP_atom.Chain_has_attribute(self, *args)
 
10242     def get_derivative(self, a0):
 
10243         r"""get_derivative(Chain self, FloatKey a0) -> double""" 
10244         return _IMP_atom.Chain_get_derivative(self, a0)
 
10246     def get_name(self):
 
10247         r"""get_name(Chain self) -> std::string""" 
10248         return _IMP_atom.Chain_get_name(self)
 
10250     def clear_caches(self):
 
10251         r"""clear_caches(Chain self)""" 
10252         return _IMP_atom.Chain_clear_caches(self)
 
10254     def set_name(self, a0):
 
10255         r"""set_name(Chain self, std::string a0)""" 
10256         return _IMP_atom.Chain_set_name(self, a0)
 
10259         r"""set_check_level(Chain self, IMP::CheckLevel a0)""" 
10260         return _IMP_atom.Chain_set_check_level(self, a0)
 
10262     def add_to_derivative(self, a0, a1, a2):
 
10263         r"""add_to_derivative(Chain self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
10264         return _IMP_atom.Chain_add_to_derivative(self, a0, a1, a2)
 
10266     def set_is_optimized(self, a0, a1):
 
10267         r"""set_is_optimized(Chain self, FloatKey a0, bool a1)""" 
10268         return _IMP_atom.Chain_set_is_optimized(self, a0, a1)
 
10270     def get_is_optimized(self, a0):
 
10271         r"""get_is_optimized(Chain self, FloatKey a0) -> bool""" 
10272         return _IMP_atom.Chain_get_is_optimized(self, a0)
 
10275         r"""get_check_level(Chain self) -> IMP::CheckLevel""" 
10276         return _IMP_atom.Chain_get_check_level(self)
 
10278     def __eq__(self, *args):
 
10280         __eq__(Chain self, Chain o) -> bool 
10281         __eq__(Chain self, Particle d) -> bool 
10283         return _IMP_atom.Chain___eq__(self, *args)
 
10285     def __ne__(self, *args):
 
10287         __ne__(Chain self, Chain o) -> bool 
10288         __ne__(Chain self, Particle d) -> bool 
10290         return _IMP_atom.Chain___ne__(self, *args)
 
10292     def __le__(self, *args):
 
10294         __le__(Chain self, Chain o) -> bool 
10295         __le__(Chain self, Particle d) -> bool 
10297         return _IMP_atom.Chain___le__(self, *args)
 
10299     def __lt__(self, *args):
 
10301         __lt__(Chain self, Chain o) -> bool 
10302         __lt__(Chain self, Particle d) -> bool 
10304         return _IMP_atom.Chain___lt__(self, *args)
 
10306     def __ge__(self, *args):
 
10308         __ge__(Chain self, Chain o) -> bool 
10309         __ge__(Chain self, Particle d) -> bool 
10311         return _IMP_atom.Chain___ge__(self, *args)
 
10313     def __gt__(self, *args):
 
10315         __gt__(Chain self, Chain o) -> bool 
10316         __gt__(Chain self, Particle d) -> bool 
10318         return _IMP_atom.Chain___gt__(self, *args)
 
10320     def __hash__(self):
 
10321         r"""__hash__(Chain self) -> std::size_t""" 
10322         return _IMP_atom.Chain___hash__(self)
 
10325         r"""__str__(Chain self) -> std::string""" 
10326         return _IMP_atom.Chain___str__(self)
 
10328     def __repr__(self):
 
10329         r"""__repr__(Chain self) -> std::string""" 
10330         return _IMP_atom.Chain___repr__(self)
 
10332     def _get_as_binary(self):
 
10333         r"""_get_as_binary(Chain self) -> PyObject *""" 
10334         return _IMP_atom.Chain__get_as_binary(self)
 
10336     def _set_from_binary(self, p):
 
10337         r"""_set_from_binary(Chain self, PyObject * p)""" 
10338         return _IMP_atom.Chain__set_from_binary(self, p)
 
10340     def __getstate__(self):
 
10341         p = self._get_as_binary()
 
10342         if len(self.__dict__) > 1:
 
10343             d = self.__dict__.copy()
 
10348     def __setstate__(self, p):
 
10349         if not hasattr(self, 
'this'):
 
10351         if isinstance(p, tuple):
 
10353             self.__dict__.update(d)
 
10354         return self._set_from_binary(p)
 
10356     __swig_destroy__ = _IMP_atom.delete_Chain
 
10359 _IMP_atom.Chain_swigregister(Chain)
 
10360 UnknownChainType = cvar.UnknownChainType
 
10361 DPolypeptide = cvar.DPolypeptide
 
10362 LPolypeptide = cvar.LPolypeptide
 
10363 Polydeoxyribonucleotide = cvar.Polydeoxyribonucleotide
 
10364 Polyribonucleotide = cvar.Polyribonucleotide
 
10365 DPolysaccharide = cvar.DPolysaccharide
 
10366 LPolysaccharide = cvar.LPolysaccharide
 
10367 Protein = cvar.Protein
 
10373     r"""get_chain(Hierarchy h) -> Chain""" 
10374     return _IMP_atom.get_chain(h)
 
10377     r"""get_chain_id(Hierarchy h) -> std::string""" 
10378     return _IMP_atom.get_chain_id(h)
 
10379 class Selection(IMP._ParticleIndexesAdaptor):
 
10380     r"""Proxy of C++ IMP::atom::Selection class.""" 
10382     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
10383     NONE = _IMP_atom.Selection_NONE
 
10385     C = _IMP_atom.Selection_C
 
10387     N = _IMP_atom.Selection_N
 
10390     def __init__(self, *args):
 
10392         __init__(Selection self) -> Selection 
10393         __init__(Selection self, Hierarchy h) -> Selection 
10394         __init__(Selection self, Particle h) -> Selection 
10395         __init__(Selection self, Model m, IMP::ParticleIndexes const & pis) -> Selection 
10396         __init__(Selection self, IMP::ParticlesTemp const & h) -> Selection 
10398         _IMP_atom.Selection_swiginit(self, _IMP_atom.new_Selection(*args))
 
10401         r"""create_clone(Selection self) -> Selection""" 
10402         return _IMP_atom.Selection_create_clone(self)
 
10404     def get_hierarchies(self):
 
10405         r"""get_hierarchies(Selection self) -> IMP::atom::Hierarchies""" 
10406         return _IMP_atom.Selection_get_hierarchies(self)
 
10408     def set_molecules(self, mols):
 
10409         r"""set_molecules(Selection self, IMP::Strings mols)""" 
10410         return _IMP_atom.Selection_set_molecules(self, mols)
 
10412     def set_resolution(self, r):
 
10413         r"""set_resolution(Selection self, double r)""" 
10414         return _IMP_atom.Selection_set_resolution(self, r)
 
10416     def set_representation_type(self, t):
 
10417         r"""set_representation_type(Selection self, IMP::atom::RepresentationType t)""" 
10418         return _IMP_atom.Selection_set_representation_type(self, t)
 
10420     def set_state_index(self, state):
 
10421         r"""set_state_index(Selection self, int state)""" 
10422         return _IMP_atom.Selection_set_state_index(self, state)
 
10424     def set_state_indexes(self, states):
 
10425         r"""set_state_indexes(Selection self, IMP::Ints states)""" 
10426         return _IMP_atom.Selection_set_state_indexes(self, states)
 
10428     def set_terminus(self, t):
 
10429         r"""set_terminus(Selection self, IMP::atom::Selection::Terminus t)""" 
10430         return _IMP_atom.Selection_set_terminus(self, t)
 
10432     def set_element(self, e):
 
10433         r"""set_element(Selection self, IMP::atom::Element e)""" 
10434         return _IMP_atom.Selection_set_element(self, e)
 
10436     def set_chain_ids(self, chains):
 
10437         r"""set_chain_ids(Selection self, IMP::Strings chains)""" 
10438         return _IMP_atom.Selection_set_chain_ids(self, chains)
 
10440     def set_chains(self, chains):
 
10441         r"""set_chains(Selection self, IMP::Strings chains)""" 
10442         return _IMP_atom.Selection_set_chains(self, chains)
 
10444     def set_residue_indexes(self, indexes):
 
10445         r"""set_residue_indexes(Selection self, IMP::Ints indexes)""" 
10446         return _IMP_atom.Selection_set_residue_indexes(self, indexes)
 
10448     def set_atom_types(self, types):
 
10449         r"""set_atom_types(Selection self, IMP::atom::AtomTypes types)""" 
10450         return _IMP_atom.Selection_set_atom_types(self, types)
 
10452     def set_residue_types(self, types):
 
10453         r"""set_residue_types(Selection self, IMP::atom::ResidueTypes types)""" 
10454         return _IMP_atom.Selection_set_residue_types(self, types)
 
10456     def set_domains(self, names):
 
10457         r"""set_domains(Selection self, IMP::Strings names)""" 
10458         return _IMP_atom.Selection_set_domains(self, names)
 
10460     def set_molecule(self, mol):
 
10461         r"""set_molecule(Selection self, std::string mol)""" 
10462         return _IMP_atom.Selection_set_molecule(self, mol)
 
10464     def set_chain_id(self, c):
 
10465         r"""set_chain_id(Selection self, std::string c)""" 
10466         return _IMP_atom.Selection_set_chain_id(self, c)
 
10468     def set_chain(self, c):
 
10469         r"""set_chain(Selection self, std::string c)""" 
10470         return _IMP_atom.Selection_set_chain(self, c)
 
10472     def set_residue_index(self, i):
 
10473         r"""set_residue_index(Selection self, int i)""" 
10474         return _IMP_atom.Selection_set_residue_index(self, i)
 
10476     def set_atom_type(self, types):
 
10477         r"""set_atom_type(Selection self, AtomType types)""" 
10478         return _IMP_atom.Selection_set_atom_type(self, types)
 
10480     def set_residue_type(self, type):
 
10481         r"""set_residue_type(Selection self, ResidueType type)""" 
10482         return _IMP_atom.Selection_set_residue_type(self, type)
 
10484     def set_domain(self, name):
 
10485         r"""set_domain(Selection self, std::string name)""" 
10486         return _IMP_atom.Selection_set_domain(self, name)
 
10488     def set_copy_index(self, copy):
 
10489         r"""set_copy_index(Selection self, unsigned int copy)""" 
10490         return _IMP_atom.Selection_set_copy_index(self, copy)
 
10492     def set_copy_indexes(self, copies):
 
10493         r"""set_copy_indexes(Selection self, IMP::Ints copies)""" 
10494         return _IMP_atom.Selection_set_copy_indexes(self, copies)
 
10496     def set_particle_type(self, t):
 
10497         r"""set_particle_type(Selection self, ParticleType t)""" 
10498         return _IMP_atom.Selection_set_particle_type(self, t)
 
10500     def set_particle_types(self, t):
 
10501         r"""set_particle_types(Selection self, IMP::core::ParticleTypes t)""" 
10502         return _IMP_atom.Selection_set_particle_types(self, t)
 
10504     def set_hierarchy_types(self, types):
 
10505         r"""set_hierarchy_types(Selection self, IMP::Ints types)""" 
10506         return _IMP_atom.Selection_set_hierarchy_types(self, types)
 
10508     def set_intersection(self, s):
 
10509         r"""set_intersection(Selection self, Selection s)""" 
10510         return _IMP_atom.Selection_set_intersection(self, s)
 
10512     def set_union(self, s):
 
10513         r"""set_union(Selection self, Selection s)""" 
10514         return _IMP_atom.Selection_set_union(self, s)
 
10516     def set_symmetric_difference(self, s):
 
10517         r"""set_symmetric_difference(Selection self, Selection s)""" 
10518         return _IMP_atom.Selection_set_symmetric_difference(self, s)
 
10520     def set_difference(self, s):
 
10521         r"""set_difference(Selection self, Selection s)""" 
10522         return _IMP_atom.Selection_set_difference(self, s)
 
10524     def get_selected_particles(self, with_representation=True):
 
10525         r"""get_selected_particles(Selection self, bool with_representation=True) -> IMP::ParticlesTemp""" 
10526         return _IMP_atom.Selection_get_selected_particles(self, with_representation)
 
10528     def get_selected_particle_indexes(self, with_representation=True):
 
10529         r"""get_selected_particle_indexes(Selection self, bool with_representation=True) -> IMP::ParticleIndexes""" 
10530         return _IMP_atom.Selection_get_selected_particle_indexes(self, with_representation)
 
10532     def show(self, *args):
 
10533         r"""show(Selection self, _ostream out=std::cout)""" 
10534         return _IMP_atom.Selection_show(self, *args)
 
10537         r"""__str__(Selection self) -> std::string""" 
10538         return _IMP_atom.Selection___str__(self)
 
10540     def __repr__(self):
 
10541         r"""__repr__(Selection self) -> std::string""" 
10542         return _IMP_atom.Selection___repr__(self)
 
10544     def __init__(self, hierarchy=None,
 
10545                  hierarchies=
None, **params):
 
10546         if hierarchy 
and hierarchies:
 
10547           raise RuntimeError(
"You can't pass both hierarchy and hierarchies to Selection")
 
10549           this = _IMP_atom.new_Selection(hierarchy)
 
10550           try: self.this.append(this)
 
10551           except: self.this = this
 
10553           this = _IMP_atom.new_Selection(hierarchies)
 
10554           try: self.this.append(this)
 
10555           except: self.this = this
 
10557           raise ValueError(
"Either hierarchy or hierarchies must be provided.")
 
10558         for k 
in params.keys():
 
10559           eval(
"self.set_%s(params[k])"%k)
 
10561     def union(self, s):
 
10562         news = self.create_clone()
 
10563         news.union_update(s)
 
10565     def intersection(self, s):
 
10566         news = self.create_clone()
 
10567         news.intersection_update(s)
 
10569     def symmetric_difference(self, s):
 
10570         news = self.create_clone()
 
10571         news.symmetric_difference_update(s)
 
10573     def difference(self, s):
 
10574         news = self.create_clone()
 
10575         news.difference_update(s)
 
10577     def union_update(self, s):
 
10580     def intersection_update(self, s):
 
10581         self.set_intersection(s)
 
10583     def symmetric_difference_update(self, s):
 
10584         self.set_symmetric_difference(s)
 
10586     def difference_update(self, s):
 
10587         self.set_difference(s)
 
10590     __and__ = intersection
 
10591     __xor__ = symmetric_difference
 
10592     __sub__ = difference
 
10593     __ior__ = union_update
 
10594     __iand__ = intersection_update
 
10595     __ixor__ = symmetric_difference_update
 
10596     __isub__ = difference_update
 
10598     __swig_destroy__ = _IMP_atom.delete_Selection
 
10601 _IMP_atom.Selection_swigregister(Selection)
 
10604     r"""create_distance_restraint(Selection n0, Selection n1, double x0, double k, std::string name="Distance%1%") -> Restraint""" 
10605     return _IMP_atom.create_distance_restraint(*args)
 
10609     create_connectivity_restraint(IMP::atom::Selections const & s, double k, std::string name="Connectivity%1%") -> Restraint 
10610     create_connectivity_restraint(IMP::atom::Selections const & s, double x0, double k, std::string name="Connectivity%1%") -> Restraint 
10612     return _IMP_atom.create_connectivity_restraint(*args)
 
10616     create_internal_connectivity_restraint(Selection s, double k, std::string name="Connectivity%1%") -> Restraint 
10617     create_internal_connectivity_restraint(Selection s, double x0, double k, std::string name="Connectivity%1%") -> Restraint 
10619     return _IMP_atom.create_internal_connectivity_restraint(*args)
 
10622     r"""create_cover(Selection s, std::string name=std::string()) -> XYZR""" 
10623     return _IMP_atom.create_cover(*args)
 
10627     get_mass(ResidueType c) -> double 
10628     get_mass(Selection s) -> double 
10630     return _IMP_atom.get_mass(*args)
 
10633     r"""get_volume(Selection s) -> double""" 
10634     return _IMP_atom.get_volume(s)
 
10637     r"""get_surface_area(Selection s) -> double""" 
10638     return _IMP_atom.get_surface_area(s)
 
10642     get_leaves(Hierarchy h) -> IMP::atom::Hierarchies 
10643     get_leaves(IMP::atom::Hierarchies const & h) -> IMP::atom::Hierarchies 
10644     get_leaves(Selection h) -> IMP::atom::Hierarchies 
10646     return _IMP_atom.get_leaves(*args)
 
10648     r"""Proxy of C++ IMP::atom::SelectionGeometry class.""" 
10650     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
10652     def __init__(self, *args):
 
10653         r"""__init__(SelectionGeometry self, Selection d, std::string name="Selection") -> SelectionGeometry""" 
10654         _IMP_atom.SelectionGeometry_swiginit(self, _IMP_atom.new_SelectionGeometry(*args))
 
10656     def get_version_info(self):
 
10657         r"""get_version_info(SelectionGeometry self) -> VersionInfo""" 
10658         return _IMP_atom.SelectionGeometry_get_version_info(self)
 
10659     __swig_destroy__ = _IMP_atom.delete_SelectionGeometry
 
10662         r"""__str__(SelectionGeometry self) -> std::string""" 
10663         return _IMP_atom.SelectionGeometry___str__(self)
 
10665     def __repr__(self):
 
10666         r"""__repr__(SelectionGeometry self) -> std::string""" 
10667         return _IMP_atom.SelectionGeometry___repr__(self)
 
10671        return _object_cast_to_SelectionGeometry(o)
 
10675 _IMP_atom.SelectionGeometry_swigregister(SelectionGeometry)
 
10679     get_rmsd(IMP::core::XYZs const & s0, IMP::core::XYZs const & s1) -> double 
10680     get_rmsd(Selection s0, Selection s1) -> double 
10682     return _IMP_atom.get_rmsd(*args)
 
10686     get_rmsd_transforming_first(Transformation3D tr, IMP::core::XYZs const & s0, IMP::core::XYZs const & s1) -> double 
10687     get_rmsd_transforming_first(Transformation3D tr, Selection s0, Selection s1) -> double 
10689     return _IMP_atom.get_rmsd_transforming_first(*args)
 
10692     r"""get_placement_score(IMP::core::XYZs const & source, IMP::core::XYZs const & target) -> IMP::FloatPair""" 
10693     return _IMP_atom.get_placement_score(source, target)
 
10696     r"""get_component_placement_score(IMP::core::XYZs const & ref1, IMP::core::XYZs const & ref2, IMP::core::XYZs const & mdl1, IMP::core::XYZs const & mdl2) -> IMP::FloatPair""" 
10697     return _IMP_atom.get_component_placement_score(ref1, ref2, mdl1, mdl2)
 
10700     r"""get_pairwise_rmsd_score(IMP::core::XYZs const & ref1, IMP::core::XYZs const & ref2, IMP::core::XYZs const & mdl1, IMP::core::XYZs const & mdl2) -> double""" 
10701     return _IMP_atom.get_pairwise_rmsd_score(ref1, ref2, mdl1, mdl2)
 
10705     get_radius_of_gyration(Selection s) -> double 
10706     get_radius_of_gyration(IMP::ParticlesTemp const & ps, bool weighted=True) -> double 
10708     return _IMP_atom.get_radius_of_gyration(*args)
 
10710     r"""Proxy of C++ IMP::atom::ForceFieldParameters class.""" 
10712     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
10714     def __init__(self):
 
10715         r"""__init__(ForceFieldParameters self) -> ForceFieldParameters""" 
10716         _IMP_atom.ForceFieldParameters_swiginit(self, _IMP_atom.new_ForceFieldParameters())
 
10718     def get_radius(self, atom):
 
10719         r"""get_radius(ForceFieldParameters self, Atom atom) -> IMP::Float""" 
10720         return _IMP_atom.ForceFieldParameters_get_radius(self, atom)
 
10722     def get_epsilon(self, atom):
 
10723         r"""get_epsilon(ForceFieldParameters self, Atom atom) -> IMP::Float""" 
10724         return _IMP_atom.ForceFieldParameters_get_epsilon(self, atom)
 
10727         r"""add_radii(ForceFieldParameters self, Hierarchy mhd, double scale=1.0, FloatKey radius_key=IMP::FloatKey("radius"))""" 
10728         return _IMP_atom.ForceFieldParameters_add_radii(self, *args)
 
10730     def add_well_depths(self, mhd):
 
10731         r"""add_well_depths(ForceFieldParameters self, Hierarchy mhd)""" 
10732         return _IMP_atom.ForceFieldParameters_add_well_depths(self, mhd)
 
10734     def add_lennard_jones_types(self, mhd):
 
10735         r"""add_lennard_jones_types(ForceFieldParameters self, Hierarchy mhd)""" 
10736         return _IMP_atom.ForceFieldParameters_add_lennard_jones_types(self, mhd)
 
10739         r"""add_bonds(ForceFieldParameters self, Hierarchy mhd)""" 
10740         return _IMP_atom.ForceFieldParameters_add_bonds(self, mhd)
 
10741     __swig_destroy__ = _IMP_atom.delete_ForceFieldParameters
 
10744         r"""__str__(ForceFieldParameters self) -> std::string""" 
10745         return _IMP_atom.ForceFieldParameters___str__(self)
 
10747     def __repr__(self):
 
10748         r"""__repr__(ForceFieldParameters self) -> std::string""" 
10749         return _IMP_atom.ForceFieldParameters___repr__(self)
 
10753        return _object_cast_to_ForceFieldParameters(o)
 
10757 _IMP_atom.ForceFieldParameters_swigregister(ForceFieldParameters)
 
10758 class CHARMMAtomTopology(object):
 
10759     r"""Proxy of C++ IMP::atom::CHARMMAtomTopology class.""" 
10761     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
10763     def __init__(self, *args):
 
10765         __init__(CHARMMAtomTopology self) -> CHARMMAtomTopology 
10766         __init__(CHARMMAtomTopology self, std::string name) -> CHARMMAtomTopology 
10767         __init__(CHARMMAtomTopology self, std::string name, CHARMMAtomTopology other) -> CHARMMAtomTopology 
10769         _IMP_atom.CHARMMAtomTopology_swiginit(self, _IMP_atom.new_CHARMMAtomTopology(*args))
 
10771     def get_name(self):
 
10772         r"""get_name(CHARMMAtomTopology self) -> std::string""" 
10773         return _IMP_atom.CHARMMAtomTopology_get_name(self)
 
10775     def get_charmm_type(self):
 
10776         r"""get_charmm_type(CHARMMAtomTopology self) -> std::string""" 
10777         return _IMP_atom.CHARMMAtomTopology_get_charmm_type(self)
 
10779     def get_charge(self):
 
10780         r"""get_charge(CHARMMAtomTopology self) -> double""" 
10781         return _IMP_atom.CHARMMAtomTopology_get_charge(self)
 
10783     def set_charmm_type(self, charmm_type):
 
10784         r"""set_charmm_type(CHARMMAtomTopology self, std::string charmm_type)""" 
10785         return _IMP_atom.CHARMMAtomTopology_set_charmm_type(self, charmm_type)
 
10787     def set_charge(self, charge):
 
10788         r"""set_charge(CHARMMAtomTopology self, double charge)""" 
10789         return _IMP_atom.CHARMMAtomTopology_set_charge(self, charge)
 
10791     def show(self, *args):
 
10792         r"""show(CHARMMAtomTopology self, _ostream out=std::cout)""" 
10793         return _IMP_atom.CHARMMAtomTopology_show(self, *args)
 
10796         r"""__str__(CHARMMAtomTopology self) -> std::string""" 
10797         return _IMP_atom.CHARMMAtomTopology___str__(self)
 
10799     def __repr__(self):
 
10800         r"""__repr__(CHARMMAtomTopology self) -> std::string""" 
10801         return _IMP_atom.CHARMMAtomTopology___repr__(self)
 
10803     def _get_as_binary(self):
 
10804         r"""_get_as_binary(CHARMMAtomTopology self) -> PyObject *""" 
10805         return _IMP_atom.CHARMMAtomTopology__get_as_binary(self)
 
10807     def _set_from_binary(self, p):
 
10808         r"""_set_from_binary(CHARMMAtomTopology self, PyObject * p)""" 
10809         return _IMP_atom.CHARMMAtomTopology__set_from_binary(self, p)
 
10811     def __getstate__(self):
 
10812         p = self._get_as_binary()
 
10813         if len(self.__dict__) > 1:
 
10814             d = self.__dict__.copy()
 
10819     def __setstate__(self, p):
 
10820         if not hasattr(self, 
'this'):
 
10822         if isinstance(p, tuple):
 
10824             self.__dict__.update(d)
 
10825         return self._set_from_binary(p)
 
10827     __swig_destroy__ = _IMP_atom.delete_CHARMMAtomTopology
 
10830 _IMP_atom.CHARMMAtomTopology_swigregister(CHARMMAtomTopology)
 
10831 class CHARMMBondEndpoint(object):
 
10832     r"""Proxy of C++ IMP::atom::CHARMMBondEndpoint class.""" 
10834     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
10836     def __init__(self, atom_name, residue=None):
 
10837         r"""__init__(CHARMMBondEndpoint self, std::string atom_name, CHARMMResidueTopology residue=None) -> CHARMMBondEndpoint""" 
10838         _IMP_atom.CHARMMBondEndpoint_swiginit(self, _IMP_atom.new_CHARMMBondEndpoint(atom_name, residue))
 
10840     def get_atom_name(self):
 
10841         r"""get_atom_name(CHARMMBondEndpoint self) -> std::string""" 
10842         return _IMP_atom.CHARMMBondEndpoint_get_atom_name(self)
 
10844     def get_atom(self, current_residue, previous_residue, next_residue, resmap):
 
10845         r"""get_atom(CHARMMBondEndpoint self, CHARMMResidueTopology current_residue, CHARMMResidueTopology previous_residue, CHARMMResidueTopology next_residue, std::map< IMP::atom::CHARMMResidueTopology const *,IMP::atom::Hierarchy > const & resmap) -> Atom""" 
10846         return _IMP_atom.CHARMMBondEndpoint_get_atom(self, current_residue, previous_residue, next_residue, resmap)
 
10848     def show(self, *args):
 
10849         r"""show(CHARMMBondEndpoint self, _ostream out=std::cout)""" 
10850         return _IMP_atom.CHARMMBondEndpoint_show(self, *args)
 
10853         r"""__str__(CHARMMBondEndpoint self) -> std::string""" 
10854         return _IMP_atom.CHARMMBondEndpoint___str__(self)
 
10856     def __repr__(self):
 
10857         r"""__repr__(CHARMMBondEndpoint self) -> std::string""" 
10858         return _IMP_atom.CHARMMBondEndpoint___repr__(self)
 
10859     __swig_destroy__ = _IMP_atom.delete_CHARMMBondEndpoint
 
10862 _IMP_atom.CHARMMBondEndpoint_swigregister(CHARMMBondEndpoint)
 
10863 class CHARMMDihedral(object):
 
10864     r"""Proxy of C++ IMP::atom::CHARMMConnection< 4 > class.""" 
10866     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
10867     __repr__ = _swig_repr
 
10869     def __init__(self, atoms):
 
10870         r"""__init__(CHARMMDihedral self, IMP::Strings const & atoms) -> CHARMMDihedral""" 
10871         _IMP_atom.CHARMMDihedral_swiginit(self, _IMP_atom.new_CHARMMDihedral(atoms))
 
10873     def get_endpoint(self, i):
 
10874         r"""get_endpoint(CHARMMDihedral self, unsigned int i) -> CHARMMBondEndpoint""" 
10875         return _IMP_atom.CHARMMDihedral_get_endpoint(self, i)
 
10877     def get_contains_atom(self, name):
 
10878         r"""get_contains_atom(CHARMMDihedral self, std::string name) -> bool""" 
10879         return _IMP_atom.CHARMMDihedral_get_contains_atom(self, name)
 
10881     def show(self, *args):
 
10882         r"""show(CHARMMDihedral self, _ostream out=std::cout)""" 
10883         return _IMP_atom.CHARMMDihedral_show(self, *args)
 
10884     __swig_destroy__ = _IMP_atom.delete_CHARMMDihedral
 
10887 _IMP_atom.CHARMMDihedral_swigregister(CHARMMDihedral)
 
10888 class CHARMMInternalCoordinate(CHARMMDihedral):
 
10889     r"""Proxy of C++ IMP::atom::CHARMMInternalCoordinate class.""" 
10891     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
10893     def __init__(self, *args):
 
10895         __init__(CHARMMInternalCoordinate self, IMP::Strings const & atoms, float first_distance, float first_angle, float dihedral, float second_angle, float second_distance, bool improper) -> CHARMMInternalCoordinate 
10896         __init__(CHARMMInternalCoordinate self, IMP::Vector< IMP::atom::CHARMMBondEndpoint > const endpoints, float first_distance, float first_angle, float dihedral, float second_angle, float second_distance, bool improper) -> CHARMMInternalCoordinate 
10898         _IMP_atom.CHARMMInternalCoordinate_swiginit(self, _IMP_atom.new_CHARMMInternalCoordinate(*args))
 
10900     def get_first_distance(self):
 
10901         r"""get_first_distance(CHARMMInternalCoordinate self) -> float""" 
10902         return _IMP_atom.CHARMMInternalCoordinate_get_first_distance(self)
 
10904     def get_second_distance(self):
 
10905         r"""get_second_distance(CHARMMInternalCoordinate self) -> float""" 
10906         return _IMP_atom.CHARMMInternalCoordinate_get_second_distance(self)
 
10908     def get_first_angle(self):
 
10909         r"""get_first_angle(CHARMMInternalCoordinate self) -> float""" 
10910         return _IMP_atom.CHARMMInternalCoordinate_get_first_angle(self)
 
10912     def get_second_angle(self):
 
10913         r"""get_second_angle(CHARMMInternalCoordinate self) -> float""" 
10914         return _IMP_atom.CHARMMInternalCoordinate_get_second_angle(self)
 
10917         r"""get_dihedral(CHARMMInternalCoordinate self) -> float""" 
10918         return _IMP_atom.CHARMMInternalCoordinate_get_dihedral(self)
 
10920     def get_improper(self):
 
10921         r"""get_improper(CHARMMInternalCoordinate self) -> bool""" 
10922         return _IMP_atom.CHARMMInternalCoordinate_get_improper(self)
 
10924     def show(self, *args):
 
10925         r"""show(CHARMMInternalCoordinate self, _ostream out=std::cout)""" 
10926         return _IMP_atom.CHARMMInternalCoordinate_show(self, *args)
 
10929         r"""__str__(CHARMMInternalCoordinate self) -> std::string""" 
10930         return _IMP_atom.CHARMMInternalCoordinate___str__(self)
 
10932     def __repr__(self):
 
10933         r"""__repr__(CHARMMInternalCoordinate self) -> std::string""" 
10934         return _IMP_atom.CHARMMInternalCoordinate___repr__(self)
 
10935     __swig_destroy__ = _IMP_atom.delete_CHARMMInternalCoordinate
 
10938 _IMP_atom.CHARMMInternalCoordinate_swigregister(CHARMMInternalCoordinate)
 
10939 class CHARMMResidueTopologyBase(
IMP.Object):
 
10940     r"""Proxy of C++ IMP::atom::CHARMMResidueTopologyBase class.""" 
10942     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
10944     def __init__(self, *args, **kwargs):
 
10945         raise AttributeError(
"No constructor defined")
 
10947     def get_type(self):
 
10948         r"""get_type(CHARMMResidueTopologyBase self) -> std::string""" 
10949         return _IMP_atom.CHARMMResidueTopologyBase_get_type(self)
 
10951     def get_number_of_atoms(self):
 
10952         r"""get_number_of_atoms(CHARMMResidueTopologyBase self) -> unsigned int""" 
10953         return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_atoms(self)
 
10955     def add_atom(self, atom):
 
10956         r"""add_atom(CHARMMResidueTopologyBase self, CHARMMAtomTopology atom)""" 
10957         return _IMP_atom.CHARMMResidueTopologyBase_add_atom(self, atom)
 
10961         get_atom(CHARMMResidueTopologyBase self, unsigned int i) -> CHARMMAtomTopology 
10962         get_atom(CHARMMResidueTopologyBase self, AtomType type) -> CHARMMAtomTopology 
10963         get_atom(CHARMMResidueTopologyBase self, std::string name) -> CHARMMAtomTopology 
10965         return _IMP_atom.CHARMMResidueTopologyBase_get_atom(self, *args)
 
10967     def get_number_of_bonds(self):
 
10968         r"""get_number_of_bonds(CHARMMResidueTopologyBase self) -> unsigned int""" 
10969         return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_bonds(self)
 
10971     def add_bond(self, bond):
 
10972         r"""add_bond(CHARMMResidueTopologyBase self, CHARMMBond bond)""" 
10973         return _IMP_atom.CHARMMResidueTopologyBase_add_bond(self, bond)
 
10975     def get_number_of_angles(self):
 
10976         r"""get_number_of_angles(CHARMMResidueTopologyBase self) -> unsigned int""" 
10977         return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_angles(self)
 
10979     def add_angle(self, bond):
 
10980         r"""add_angle(CHARMMResidueTopologyBase self, CHARMMAngle bond)""" 
10981         return _IMP_atom.CHARMMResidueTopologyBase_add_angle(self, bond)
 
10983     def get_number_of_dihedrals(self):
 
10984         r"""get_number_of_dihedrals(CHARMMResidueTopologyBase self) -> unsigned int""" 
10985         return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_dihedrals(self)
 
10987     def add_dihedral(self, bond):
 
10988         r"""add_dihedral(CHARMMResidueTopologyBase self, CHARMMDihedral bond)""" 
10989         return _IMP_atom.CHARMMResidueTopologyBase_add_dihedral(self, bond)
 
10991     def get_number_of_impropers(self):
 
10992         r"""get_number_of_impropers(CHARMMResidueTopologyBase self) -> unsigned int""" 
10993         return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_impropers(self)
 
10995     def add_improper(self, bond):
 
10996         r"""add_improper(CHARMMResidueTopologyBase self, CHARMMDihedral bond)""" 
10997         return _IMP_atom.CHARMMResidueTopologyBase_add_improper(self, bond)
 
10999     def get_number_of_internal_coordinates(self):
 
11000         r"""get_number_of_internal_coordinates(CHARMMResidueTopologyBase self) -> unsigned int""" 
11001         return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_internal_coordinates(self)
 
11003     def add_internal_coordinate(self, ic):
 
11004         r"""add_internal_coordinate(CHARMMResidueTopologyBase self, CHARMMInternalCoordinate ic)""" 
11005         return _IMP_atom.CHARMMResidueTopologyBase_add_internal_coordinate(self, ic)
 
11007     def get_internal_coordinate(self, index):
 
11008         r"""get_internal_coordinate(CHARMMResidueTopologyBase self, unsigned int index) -> CHARMMInternalCoordinate""" 
11009         return _IMP_atom.CHARMMResidueTopologyBase_get_internal_coordinate(self, index)
 
11012         r"""get_bond(CHARMMResidueTopologyBase self, unsigned int index) -> CHARMMBond""" 
11013         return _IMP_atom.CHARMMResidueTopologyBase_get_bond(self, index)
 
11016         r"""get_angle(CHARMMResidueTopologyBase self, unsigned int index) -> CHARMMAngle""" 
11017         return _IMP_atom.CHARMMResidueTopologyBase_get_angle(self, index)
 
11020         r"""get_dihedral(CHARMMResidueTopologyBase self, unsigned int index) -> CHARMMDihedral""" 
11021         return _IMP_atom.CHARMMResidueTopologyBase_get_dihedral(self, index)
 
11023     def get_improper(self, index):
 
11024         r"""get_improper(CHARMMResidueTopologyBase self, unsigned int index) -> CHARMMDihedral""" 
11025         return _IMP_atom.CHARMMResidueTopologyBase_get_improper(self, index)
 
11027     def get_version_info(self):
 
11028         r"""get_version_info(CHARMMResidueTopologyBase self) -> VersionInfo""" 
11029         return _IMP_atom.CHARMMResidueTopologyBase_get_version_info(self)
 
11030     __swig_destroy__ = _IMP_atom.delete_CHARMMResidueTopologyBase
 
11033         r"""__str__(CHARMMResidueTopologyBase self) -> std::string""" 
11034         return _IMP_atom.CHARMMResidueTopologyBase___str__(self)
 
11036     def __repr__(self):
 
11037         r"""__repr__(CHARMMResidueTopologyBase self) -> std::string""" 
11038         return _IMP_atom.CHARMMResidueTopologyBase___repr__(self)
 
11042        return _object_cast_to_CHARMMResidueTopologyBase(o)
 
11046 _IMP_atom.CHARMMResidueTopologyBase_swigregister(CHARMMResidueTopologyBase)
 
11047 class CHARMMIdealResidueTopology(CHARMMResidueTopologyBase):
 
11048     r"""Proxy of C++ IMP::atom::CHARMMIdealResidueTopology class.""" 
11050     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11052     def __init__(self, *args):
 
11054         __init__(CHARMMIdealResidueTopology self, std::string type) -> CHARMMIdealResidueTopology 
11055         __init__(CHARMMIdealResidueTopology self, ResidueType type) -> CHARMMIdealResidueTopology 
11057         _IMP_atom.CHARMMIdealResidueTopology_swiginit(self, _IMP_atom.new_CHARMMIdealResidueTopology(*args))
 
11059     def remove_atom(self, name):
 
11060         r"""remove_atom(CHARMMIdealResidueTopology self, std::string name)""" 
11061         return _IMP_atom.CHARMMIdealResidueTopology_remove_atom(self, name)
 
11063     def set_default_first_patch(self, patch):
 
11064         r"""set_default_first_patch(CHARMMIdealResidueTopology self, std::string patch)""" 
11065         return _IMP_atom.CHARMMIdealResidueTopology_set_default_first_patch(self, patch)
 
11067     def set_default_last_patch(self, patch):
 
11068         r"""set_default_last_patch(CHARMMIdealResidueTopology self, std::string patch)""" 
11069         return _IMP_atom.CHARMMIdealResidueTopology_set_default_last_patch(self, patch)
 
11071     def get_default_first_patch(self):
 
11072         r"""get_default_first_patch(CHARMMIdealResidueTopology self) -> std::string""" 
11073         return _IMP_atom.CHARMMIdealResidueTopology_get_default_first_patch(self)
 
11075     def get_default_last_patch(self):
 
11076         r"""get_default_last_patch(CHARMMIdealResidueTopology self) -> std::string""" 
11077         return _IMP_atom.CHARMMIdealResidueTopology_get_default_last_patch(self)
 
11078     __swig_destroy__ = _IMP_atom.delete_CHARMMIdealResidueTopology
 
11081         r"""__str__(CHARMMIdealResidueTopology self) -> std::string""" 
11082         return _IMP_atom.CHARMMIdealResidueTopology___str__(self)
 
11084     def __repr__(self):
 
11085         r"""__repr__(CHARMMIdealResidueTopology self) -> std::string""" 
11086         return _IMP_atom.CHARMMIdealResidueTopology___repr__(self)
 
11090        return _object_cast_to_CHARMMIdealResidueTopology(o)
 
11094 _IMP_atom.CHARMMIdealResidueTopology_swigregister(CHARMMIdealResidueTopology)
 
11095 class CHARMMPatch(CHARMMResidueTopologyBase):
 
11096     r"""Proxy of C++ IMP::atom::CHARMMPatch class.""" 
11098     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11100     def __init__(self, type):
 
11101         r"""__init__(CHARMMPatch self, std::string type) -> CHARMMPatch""" 
11102         _IMP_atom.CHARMMPatch_swiginit(self, _IMP_atom.new_CHARMMPatch(type))
 
11104     def add_removed_atom(self, name):
 
11105         r"""add_removed_atom(CHARMMPatch self, std::string name)""" 
11106         return _IMP_atom.CHARMMPatch_add_removed_atom(self, name)
 
11108     def get_number_of_removed_atoms(self):
 
11109         r"""get_number_of_removed_atoms(CHARMMPatch self) -> unsigned int""" 
11110         return _IMP_atom.CHARMMPatch_get_number_of_removed_atoms(self)
 
11112     def get_removed_atom(self, i):
 
11113         r"""get_removed_atom(CHARMMPatch self, unsigned int i) -> std::string""" 
11114         return _IMP_atom.CHARMMPatch_get_removed_atom(self, i)
 
11116     def apply(self, *args):
 
11118         apply(CHARMMPatch self, CHARMMResidueTopology res) 
11119         apply(CHARMMPatch self, CHARMMResidueTopology res1, CHARMMResidueTopology res2) 
11121         return _IMP_atom.CHARMMPatch_apply(self, *args)
 
11122     __swig_destroy__ = _IMP_atom.delete_CHARMMPatch
 
11125         r"""__str__(CHARMMPatch self) -> std::string""" 
11126         return _IMP_atom.CHARMMPatch___str__(self)
 
11128     def __repr__(self):
 
11129         r"""__repr__(CHARMMPatch self) -> std::string""" 
11130         return _IMP_atom.CHARMMPatch___repr__(self)
 
11134        return _object_cast_to_CHARMMPatch(o)
 
11138 _IMP_atom.CHARMMPatch_swigregister(CHARMMPatch)
 
11139 class CHARMMResidueTopology(CHARMMIdealResidueTopology):
 
11140     r"""Proxy of C++ IMP::atom::CHARMMResidueTopology class.""" 
11142     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11144     def __init__(self, *args):
 
11146         __init__(CHARMMResidueTopology self, ResidueType type) -> CHARMMResidueTopology 
11147         __init__(CHARMMResidueTopology self, CHARMMIdealResidueTopology ideal) -> CHARMMResidueTopology 
11149         _IMP_atom.CHARMMResidueTopology_swiginit(self, _IMP_atom.new_CHARMMResidueTopology(*args))
 
11151     def get_patched(self):
 
11152         r"""get_patched(CHARMMResidueTopology self) -> bool""" 
11153         return _IMP_atom.CHARMMResidueTopology_get_patched(self)
 
11155     def set_patched(self, patched):
 
11156         r"""set_patched(CHARMMResidueTopology self, bool patched)""" 
11157         return _IMP_atom.CHARMMResidueTopology_set_patched(self, patched)
 
11158     __swig_destroy__ = _IMP_atom.delete_CHARMMResidueTopology
 
11161         r"""__str__(CHARMMResidueTopology self) -> std::string""" 
11162         return _IMP_atom.CHARMMResidueTopology___str__(self)
 
11164     def __repr__(self):
 
11165         r"""__repr__(CHARMMResidueTopology self) -> std::string""" 
11166         return _IMP_atom.CHARMMResidueTopology___repr__(self)
 
11170        return _object_cast_to_CHARMMResidueTopology(o)
 
11174 _IMP_atom.CHARMMResidueTopology_swigregister(CHARMMResidueTopology)
 
11175 class CHARMMAtom(Atom):
 
11176     r"""Proxy of C++ IMP::atom::CHARMMAtom class.""" 
11178     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11180     def __init__(self, *args):
 
11182         __init__(CHARMMAtom self) -> CHARMMAtom 
11183         __init__(CHARMMAtom self, Model m, ParticleIndex id) -> CHARMMAtom 
11184         __init__(CHARMMAtom self, _ParticleAdaptor d) -> CHARMMAtom 
11186         _IMP_atom.CHARMMAtom_swiginit(self, _IMP_atom.new_CHARMMAtom(*args))
 
11188     def show(self, *args):
 
11189         r"""show(CHARMMAtom self, _ostream out=std::cout)""" 
11190         return _IMP_atom.CHARMMAtom_show(self, *args)
 
11193     def setup_particle(*args):
 
11195         setup_particle(Model m, ParticleIndex pi, IMP::String charmm_type) -> CHARMMAtom 
11196         setup_particle(_ParticleAdaptor pa, IMP::String charmm_type) -> CHARMMAtom 
11198         return _IMP_atom.CHARMMAtom_setup_particle(*args)
 
11200     def get_charmm_type(self):
 
11201         r"""get_charmm_type(CHARMMAtom self) -> IMP::String""" 
11202         return _IMP_atom.CHARMMAtom_get_charmm_type(self)
 
11204     def set_charmm_type(self, t):
 
11205         r"""set_charmm_type(CHARMMAtom self, IMP::String t)""" 
11206         return _IMP_atom.CHARMMAtom_set_charmm_type(self, t)
 
11209     def get_is_setup(*args):
 
11211         get_is_setup(_ParticleAdaptor p) -> bool 
11212         get_is_setup(Model m, ParticleIndex pi) -> bool 
11214         return _IMP_atom.CHARMMAtom_get_is_setup(*args)
 
11217     def get_charmm_type_key():
 
11218         r"""get_charmm_type_key() -> StringKey""" 
11219         return _IMP_atom.CHARMMAtom_get_charmm_type_key()
 
11221     def add_attribute(self, *args):
 
11223         add_attribute(CHARMMAtom self, FloatKey k, IMP::Float v, bool opt) 
11224         add_attribute(CHARMMAtom self, FloatKey a0, IMP::Float a1) 
11225         add_attribute(CHARMMAtom self, IntKey a0, IMP::Int a1) 
11226         add_attribute(CHARMMAtom self, FloatsKey a0, IMP::Floats a1) 
11227         add_attribute(CHARMMAtom self, IntsKey a0, IMP::Ints a1) 
11228         add_attribute(CHARMMAtom self, StringKey a0, IMP::String a1) 
11229         add_attribute(CHARMMAtom self, ParticleIndexKey a0, Particle a1) 
11230         add_attribute(CHARMMAtom self, ObjectKey a0, Object a1) 
11231         add_attribute(CHARMMAtom self, SparseFloatKey a0, IMP::Float a1) 
11232         add_attribute(CHARMMAtom self, SparseIntKey a0, IMP::Int a1) 
11233         add_attribute(CHARMMAtom self, SparseStringKey a0, IMP::String a1) 
11234         add_attribute(CHARMMAtom self, SparseParticleIndexKey a0, ParticleIndex a1) 
11236         return _IMP_atom.CHARMMAtom_add_attribute(self, *args)
 
11238     def get_value(self, *args):
 
11240         get_value(CHARMMAtom self, FloatKey a0) -> IMP::Float 
11241         get_value(CHARMMAtom self, IntKey a0) -> IMP::Int 
11242         get_value(CHARMMAtom self, FloatsKey a0) -> IMP::Floats 
11243         get_value(CHARMMAtom self, IntsKey a0) -> IMP::Ints 
11244         get_value(CHARMMAtom self, StringKey a0) -> IMP::String 
11245         get_value(CHARMMAtom self, ParticleIndexKey a0) -> Particle 
11246         get_value(CHARMMAtom self, ObjectKey a0) -> Object 
11247         get_value(CHARMMAtom self, SparseFloatKey a0) -> IMP::Float 
11248         get_value(CHARMMAtom self, SparseIntKey a0) -> IMP::Int 
11249         get_value(CHARMMAtom self, SparseStringKey a0) -> IMP::String 
11250         get_value(CHARMMAtom self, SparseParticleIndexKey a0) -> ParticleIndex 
11252         return _IMP_atom.CHARMMAtom_get_value(self, *args)
 
11254     def set_value(self, *args):
 
11256         set_value(CHARMMAtom self, FloatKey a0, IMP::Float a1) 
11257         set_value(CHARMMAtom self, IntKey a0, IMP::Int a1) 
11258         set_value(CHARMMAtom self, FloatsKey a0, IMP::Floats a1) 
11259         set_value(CHARMMAtom self, IntsKey a0, IMP::Ints a1) 
11260         set_value(CHARMMAtom self, StringKey a0, IMP::String a1) 
11261         set_value(CHARMMAtom self, ParticleIndexKey a0, Particle a1) 
11262         set_value(CHARMMAtom self, ObjectKey a0, Object a1) 
11263         set_value(CHARMMAtom self, SparseFloatKey a0, IMP::Float a1) 
11264         set_value(CHARMMAtom self, SparseIntKey a0, IMP::Int a1) 
11265         set_value(CHARMMAtom self, SparseStringKey a0, IMP::String a1) 
11266         set_value(CHARMMAtom self, SparseParticleIndexKey a0, ParticleIndex a1) 
11268         return _IMP_atom.CHARMMAtom_set_value(self, *args)
 
11270     def remove_attribute(self, *args):
 
11272         remove_attribute(CHARMMAtom self, FloatKey a0) 
11273         remove_attribute(CHARMMAtom self, IntKey a0) 
11274         remove_attribute(CHARMMAtom self, FloatsKey a0) 
11275         remove_attribute(CHARMMAtom self, IntsKey a0) 
11276         remove_attribute(CHARMMAtom self, StringKey a0) 
11277         remove_attribute(CHARMMAtom self, ParticleIndexKey a0) 
11278         remove_attribute(CHARMMAtom self, ObjectKey a0) 
11279         remove_attribute(CHARMMAtom self, SparseFloatKey a0) 
11280         remove_attribute(CHARMMAtom self, SparseIntKey a0) 
11281         remove_attribute(CHARMMAtom self, SparseStringKey a0) 
11282         remove_attribute(CHARMMAtom self, SparseParticleIndexKey a0) 
11284         return _IMP_atom.CHARMMAtom_remove_attribute(self, *args)
 
11286     def has_attribute(self, *args):
 
11288         has_attribute(CHARMMAtom self, FloatKey a0) -> bool 
11289         has_attribute(CHARMMAtom self, IntKey a0) -> bool 
11290         has_attribute(CHARMMAtom self, FloatsKey a0) -> bool 
11291         has_attribute(CHARMMAtom self, IntsKey a0) -> bool 
11292         has_attribute(CHARMMAtom self, StringKey a0) -> bool 
11293         has_attribute(CHARMMAtom self, ParticleIndexKey a0) -> bool 
11294         has_attribute(CHARMMAtom self, ObjectKey a0) -> bool 
11295         has_attribute(CHARMMAtom self, SparseFloatKey a0) -> bool 
11296         has_attribute(CHARMMAtom self, SparseIntKey a0) -> bool 
11297         has_attribute(CHARMMAtom self, SparseStringKey a0) -> bool 
11298         has_attribute(CHARMMAtom self, SparseParticleIndexKey a0) -> bool 
11300         return _IMP_atom.CHARMMAtom_has_attribute(self, *args)
 
11302     def get_derivative(self, a0):
 
11303         r"""get_derivative(CHARMMAtom self, FloatKey a0) -> double""" 
11304         return _IMP_atom.CHARMMAtom_get_derivative(self, a0)
 
11306     def get_name(self):
 
11307         r"""get_name(CHARMMAtom self) -> std::string""" 
11308         return _IMP_atom.CHARMMAtom_get_name(self)
 
11310     def clear_caches(self):
 
11311         r"""clear_caches(CHARMMAtom self)""" 
11312         return _IMP_atom.CHARMMAtom_clear_caches(self)
 
11314     def set_name(self, a0):
 
11315         r"""set_name(CHARMMAtom self, std::string a0)""" 
11316         return _IMP_atom.CHARMMAtom_set_name(self, a0)
 
11319         r"""set_check_level(CHARMMAtom self, IMP::CheckLevel a0)""" 
11320         return _IMP_atom.CHARMMAtom_set_check_level(self, a0)
 
11322     def add_to_derivative(self, a0, a1, a2):
 
11323         r"""add_to_derivative(CHARMMAtom self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
11324         return _IMP_atom.CHARMMAtom_add_to_derivative(self, a0, a1, a2)
 
11326     def set_is_optimized(self, a0, a1):
 
11327         r"""set_is_optimized(CHARMMAtom self, FloatKey a0, bool a1)""" 
11328         return _IMP_atom.CHARMMAtom_set_is_optimized(self, a0, a1)
 
11330     def get_is_optimized(self, a0):
 
11331         r"""get_is_optimized(CHARMMAtom self, FloatKey a0) -> bool""" 
11332         return _IMP_atom.CHARMMAtom_get_is_optimized(self, a0)
 
11335         r"""get_check_level(CHARMMAtom self) -> IMP::CheckLevel""" 
11336         return _IMP_atom.CHARMMAtom_get_check_level(self)
 
11338     def __eq__(self, *args):
 
11340         __eq__(CHARMMAtom self, CHARMMAtom o) -> bool 
11341         __eq__(CHARMMAtom self, Particle d) -> bool 
11343         return _IMP_atom.CHARMMAtom___eq__(self, *args)
 
11345     def __ne__(self, *args):
 
11347         __ne__(CHARMMAtom self, CHARMMAtom o) -> bool 
11348         __ne__(CHARMMAtom self, Particle d) -> bool 
11350         return _IMP_atom.CHARMMAtom___ne__(self, *args)
 
11352     def __le__(self, *args):
 
11354         __le__(CHARMMAtom self, CHARMMAtom o) -> bool 
11355         __le__(CHARMMAtom self, Particle d) -> bool 
11357         return _IMP_atom.CHARMMAtom___le__(self, *args)
 
11359     def __lt__(self, *args):
 
11361         __lt__(CHARMMAtom self, CHARMMAtom o) -> bool 
11362         __lt__(CHARMMAtom self, Particle d) -> bool 
11364         return _IMP_atom.CHARMMAtom___lt__(self, *args)
 
11366     def __ge__(self, *args):
 
11368         __ge__(CHARMMAtom self, CHARMMAtom o) -> bool 
11369         __ge__(CHARMMAtom self, Particle d) -> bool 
11371         return _IMP_atom.CHARMMAtom___ge__(self, *args)
 
11373     def __gt__(self, *args):
 
11375         __gt__(CHARMMAtom self, CHARMMAtom o) -> bool 
11376         __gt__(CHARMMAtom self, Particle d) -> bool 
11378         return _IMP_atom.CHARMMAtom___gt__(self, *args)
 
11380     def __hash__(self):
 
11381         r"""__hash__(CHARMMAtom self) -> std::size_t""" 
11382         return _IMP_atom.CHARMMAtom___hash__(self)
 
11385         r"""__str__(CHARMMAtom self) -> std::string""" 
11386         return _IMP_atom.CHARMMAtom___str__(self)
 
11388     def __repr__(self):
 
11389         r"""__repr__(CHARMMAtom self) -> std::string""" 
11390         return _IMP_atom.CHARMMAtom___repr__(self)
 
11392     def _get_as_binary(self):
 
11393         r"""_get_as_binary(CHARMMAtom self) -> PyObject *""" 
11394         return _IMP_atom.CHARMMAtom__get_as_binary(self)
 
11396     def _set_from_binary(self, p):
 
11397         r"""_set_from_binary(CHARMMAtom self, PyObject * p)""" 
11398         return _IMP_atom.CHARMMAtom__set_from_binary(self, p)
 
11400     def __getstate__(self):
 
11401         p = self._get_as_binary()
 
11402         if len(self.__dict__) > 1:
 
11403             d = self.__dict__.copy()
 
11408     def __setstate__(self, p):
 
11409         if not hasattr(self, 
'this'):
 
11411         if isinstance(p, tuple):
 
11413             self.__dict__.update(d)
 
11414         return self._set_from_binary(p)
 
11416     __swig_destroy__ = _IMP_atom.delete_CHARMMAtom
 
11419 _IMP_atom.CHARMMAtom_swigregister(CHARMMAtom)
 
11422     r"""get_charmm_untyped_atoms(Hierarchy hierarchy) -> IMP::atom::Atoms""" 
11423     return _IMP_atom.get_charmm_untyped_atoms(hierarchy)
 
11426     r"""remove_charmm_untyped_atoms(Hierarchy hierarchy)""" 
11427     return _IMP_atom.remove_charmm_untyped_atoms(hierarchy)
 
11428 class CHARMMBondParameters(object):
 
11429     r"""Proxy of C++ IMP::atom::CHARMMBondParameters class.""" 
11431     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11432     force_constant = property(_IMP_atom.CHARMMBondParameters_force_constant_get, _IMP_atom.CHARMMBondParameters_force_constant_set, doc=
r"""force_constant : double""")
 
11433     ideal = property(_IMP_atom.CHARMMBondParameters_ideal_get, _IMP_atom.CHARMMBondParameters_ideal_set, doc=
r"""ideal : double""")
 
11435     def __init__(self):
 
11436         r"""__init__(CHARMMBondParameters self) -> CHARMMBondParameters""" 
11437         _IMP_atom.CHARMMBondParameters_swiginit(self, _IMP_atom.new_CHARMMBondParameters())
 
11439     def show(self, *args):
 
11440         r"""show(CHARMMBondParameters self, _ostream out=std::cout)""" 
11441         return _IMP_atom.CHARMMBondParameters_show(self, *args)
 
11444         r"""__str__(CHARMMBondParameters self) -> std::string""" 
11445         return _IMP_atom.CHARMMBondParameters___str__(self)
 
11447     def __repr__(self):
 
11448         r"""__repr__(CHARMMBondParameters self) -> std::string""" 
11449         return _IMP_atom.CHARMMBondParameters___repr__(self)
 
11451     def _get_as_binary(self):
 
11452         r"""_get_as_binary(CHARMMBondParameters self) -> PyObject *""" 
11453         return _IMP_atom.CHARMMBondParameters__get_as_binary(self)
 
11455     def _set_from_binary(self, p):
 
11456         r"""_set_from_binary(CHARMMBondParameters self, PyObject * p)""" 
11457         return _IMP_atom.CHARMMBondParameters__set_from_binary(self, p)
 
11459     def __getstate__(self):
 
11460         p = self._get_as_binary()
 
11461         if len(self.__dict__) > 1:
 
11462             d = self.__dict__.copy()
 
11467     def __setstate__(self, p):
 
11468         if not hasattr(self, 
'this'):
 
11470         if isinstance(p, tuple):
 
11472             self.__dict__.update(d)
 
11473         return self._set_from_binary(p)
 
11475     __swig_destroy__ = _IMP_atom.delete_CHARMMBondParameters
 
11478 _IMP_atom.CHARMMBondParameters_swigregister(CHARMMBondParameters)
 
11479 class CHARMMDihedralParameters(object):
 
11480     r"""Proxy of C++ IMP::atom::CHARMMDihedralParameters class.""" 
11482     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11483     force_constant = property(_IMP_atom.CHARMMDihedralParameters_force_constant_get, _IMP_atom.CHARMMDihedralParameters_force_constant_set, doc=
r"""force_constant : double""")
 
11484     multiplicity = property(_IMP_atom.CHARMMDihedralParameters_multiplicity_get, _IMP_atom.CHARMMDihedralParameters_multiplicity_set, doc=
r"""multiplicity : int""")
 
11485     ideal = property(_IMP_atom.CHARMMDihedralParameters_ideal_get, _IMP_atom.CHARMMDihedralParameters_ideal_set, doc=
r"""ideal : double""")
 
11487     def __init__(self):
 
11488         r"""__init__(CHARMMDihedralParameters self) -> CHARMMDihedralParameters""" 
11489         _IMP_atom.CHARMMDihedralParameters_swiginit(self, _IMP_atom.new_CHARMMDihedralParameters())
 
11491     def show(self, *args):
 
11492         r"""show(CHARMMDihedralParameters self, _ostream out=std::cout)""" 
11493         return _IMP_atom.CHARMMDihedralParameters_show(self, *args)
 
11496         r"""__str__(CHARMMDihedralParameters self) -> std::string""" 
11497         return _IMP_atom.CHARMMDihedralParameters___str__(self)
 
11499     def __repr__(self):
 
11500         r"""__repr__(CHARMMDihedralParameters self) -> std::string""" 
11501         return _IMP_atom.CHARMMDihedralParameters___repr__(self)
 
11503     def _get_as_binary(self):
 
11504         r"""_get_as_binary(CHARMMDihedralParameters self) -> PyObject *""" 
11505         return _IMP_atom.CHARMMDihedralParameters__get_as_binary(self)
 
11507     def _set_from_binary(self, p):
 
11508         r"""_set_from_binary(CHARMMDihedralParameters self, PyObject * p)""" 
11509         return _IMP_atom.CHARMMDihedralParameters__set_from_binary(self, p)
 
11511     def __getstate__(self):
 
11512         p = self._get_as_binary()
 
11513         if len(self.__dict__) > 1:
 
11514             d = self.__dict__.copy()
 
11519     def __setstate__(self, p):
 
11520         if not hasattr(self, 
'this'):
 
11522         if isinstance(p, tuple):
 
11524             self.__dict__.update(d)
 
11525         return self._set_from_binary(p)
 
11527     __swig_destroy__ = _IMP_atom.delete_CHARMMDihedralParameters
 
11530 _IMP_atom.CHARMMDihedralParameters_swigregister(CHARMMDihedralParameters)
 
11531 class CHARMMParameters(ForceFieldParameters):
 
11532     r"""Proxy of C++ IMP::atom::CHARMMParameters class.""" 
11534     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11536     def __init__(self, *args):
 
11537         r"""__init__(CHARMMParameters self, TextInput topology_file_name, TextInput par_file_name=IMP::TextInput(), bool translate_names_to_pdb=False) -> CHARMMParameters""" 
11538         _IMP_atom.CHARMMParameters_swiginit(self, _IMP_atom.new_CHARMMParameters(*args))
 
11540     def add_residue_topology(self, res):
 
11541         r"""add_residue_topology(CHARMMParameters self, CHARMMIdealResidueTopology res)""" 
11542         return _IMP_atom.CHARMMParameters_add_residue_topology(self, res)
 
11544     def get_residue_topology(self, type):
 
11545         r"""get_residue_topology(CHARMMParameters self, ResidueType type) -> CHARMMIdealResidueTopology""" 
11546         return _IMP_atom.CHARMMParameters_get_residue_topology(self, type)
 
11548     def add_patch(self, patch):
 
11549         r"""add_patch(CHARMMParameters self, CHARMMPatch patch)""" 
11550         return _IMP_atom.CHARMMParameters_add_patch(self, patch)
 
11552     def get_patch(self, name):
 
11553         r"""get_patch(CHARMMParameters self, std::string name) -> CHARMMPatch""" 
11554         return _IMP_atom.CHARMMParameters_get_patch(self, name)
 
11556     def create_topology(self, hierarchy):
 
11557         r"""create_topology(CHARMMParameters self, Hierarchy hierarchy) -> CHARMMTopology""" 
11558         return _IMP_atom.CHARMMParameters_create_topology(self, hierarchy)
 
11560     def get_bond_parameters(self, type1, type2):
 
11561         r"""get_bond_parameters(CHARMMParameters self, std::string type1, std::string type2) -> CHARMMBondParameters""" 
11562         return _IMP_atom.CHARMMParameters_get_bond_parameters(self, type1, type2)
 
11564     def get_angle_parameters(self, type1, type2, type3):
 
11565         r"""get_angle_parameters(CHARMMParameters self, std::string type1, std::string type2, std::string type3) -> CHARMMBondParameters""" 
11566         return _IMP_atom.CHARMMParameters_get_angle_parameters(self, type1, type2, type3)
 
11568     def get_dihedral_parameters(self, type1, type2, type3, type4):
 
11569         r"""get_dihedral_parameters(CHARMMParameters self, std::string type1, std::string type2, std::string type3, std::string type4) -> IMP::atom::CHARMMDihedralParametersList""" 
11570         return _IMP_atom.CHARMMParameters_get_dihedral_parameters(self, type1, type2, type3, type4)
 
11572     def get_improper_parameters(self, type1, type2, type3, type4):
 
11573         r"""get_improper_parameters(CHARMMParameters self, std::string type1, std::string type2, std::string type3, std::string type4) -> CHARMMDihedralParameters""" 
11574         return _IMP_atom.CHARMMParameters_get_improper_parameters(self, type1, type2, type3, type4)
 
11576     def create_angles(self, bonds):
 
11577         r"""create_angles(CHARMMParameters self, IMP::Particles bonds) -> IMP::Particles""" 
11578         return _IMP_atom.CHARMMParameters_create_angles(self, bonds)
 
11580     def create_dihedrals(self, bonds):
 
11581         r"""create_dihedrals(CHARMMParameters self, IMP::Particles bonds) -> IMP::Particles""" 
11582         return _IMP_atom.CHARMMParameters_create_dihedrals(self, bonds)
 
11584     def get_version_info(self):
 
11585         r"""get_version_info(CHARMMParameters self) -> VersionInfo""" 
11586         return _IMP_atom.CHARMMParameters_get_version_info(self)
 
11587     __swig_destroy__ = _IMP_atom.delete_CHARMMParameters
 
11590         r"""__str__(CHARMMParameters self) -> std::string""" 
11591         return _IMP_atom.CHARMMParameters___str__(self)
 
11593     def __repr__(self):
 
11594         r"""__repr__(CHARMMParameters self) -> std::string""" 
11595         return _IMP_atom.CHARMMParameters___repr__(self)
 
11599        return _object_cast_to_CHARMMParameters(o)
 
11603 _IMP_atom.CHARMMParameters_swigregister(CHARMMParameters)
 
11606     r"""get_heavy_atom_CHARMM_parameters() -> CHARMMParameters""" 
11607     return _IMP_atom.get_heavy_atom_CHARMM_parameters()
 
11610     r"""get_all_atom_CHARMM_parameters() -> CHARMMParameters""" 
11611     return _IMP_atom.get_all_atom_CHARMM_parameters()
 
11613     r"""Proxy of C++ IMP::atom::CHARMMSegmentTopology class.""" 
11615     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11616     def __get_residues(self):  
return IMP._list_util.VarList(getdimfunc=self.get_number_of_residues,  getfunc=self.get_residue, erasefunc=self.erase_residue,  appendfunc=self.add_residue, extendfunc=self.add_residues,  clearfunc=self.clear_residues, indexfunc=self._python_index_residue)  
 
11617     def __set_residues(self, obj): IMP._list_util.set_varlist(self.residues, obj)  
 
11618     def __del_residues(self): IMP._list_util.del_varlist(self.residues)       
 
11619     residues = property(__get_residues, __set_residues, __del_residues, doc=
"List of ##ucnames")  
 
11621     def remove_residue(self, d):
 
11622         r"""remove_residue(CHARMMSegmentTopology self, CHARMMResidueTopology d)""" 
11623         return _IMP_atom.CHARMMSegmentTopology_remove_residue(self, d)
 
11625     def _python_index_residue(self, d, start, stop):
 
11626         r"""_python_index_residue(CHARMMSegmentTopology self, CHARMMResidueTopology d, unsigned int start, unsigned int stop) -> unsigned int""" 
11627         return _IMP_atom.CHARMMSegmentTopology__python_index_residue(self, d, start, stop)
 
11629     def remove_residues(self, d):
 
11630         r"""remove_residues(CHARMMSegmentTopology self, IMP::atom::CHARMMResidueTopologies const & d)""" 
11631         return _IMP_atom.CHARMMSegmentTopology_remove_residues(self, d)
 
11633     def set_residues(self, ps):
 
11634         r"""set_residues(CHARMMSegmentTopology self, IMP::atom::CHARMMResidueTopologies const & ps)""" 
11635         return _IMP_atom.CHARMMSegmentTopology_set_residues(self, ps)
 
11637     def set_residues_order(self, objs):
 
11638         r"""set_residues_order(CHARMMSegmentTopology self, IMP::atom::CHARMMResidueTopologies const & objs)""" 
11639         return _IMP_atom.CHARMMSegmentTopology_set_residues_order(self, objs)
 
11641     def add_residue(self, obj):
 
11642         r"""add_residue(CHARMMSegmentTopology self, CHARMMResidueTopology obj) -> unsigned int""" 
11643         return _IMP_atom.CHARMMSegmentTopology_add_residue(self, obj)
 
11645     def add_residues(self, objs):
 
11646         r"""add_residues(CHARMMSegmentTopology self, IMP::atom::CHARMMResidueTopologies const & objs)""" 
11647         return _IMP_atom.CHARMMSegmentTopology_add_residues(self, objs)
 
11649     def clear_residues(self):
 
11650         r"""clear_residues(CHARMMSegmentTopology self)""" 
11651         return _IMP_atom.CHARMMSegmentTopology_clear_residues(self)
 
11653     def get_number_of_residues(self):
 
11654         r"""get_number_of_residues(CHARMMSegmentTopology self) -> unsigned int""" 
11655         return _IMP_atom.CHARMMSegmentTopology_get_number_of_residues(self)
 
11657     def get_has_residues(self):
 
11658         r"""get_has_residues(CHARMMSegmentTopology self) -> bool""" 
11659         return _IMP_atom.CHARMMSegmentTopology_get_has_residues(self)
 
11662         r"""get_residue(CHARMMSegmentTopology self, unsigned int i) -> CHARMMResidueTopology""" 
11663         return _IMP_atom.CHARMMSegmentTopology_get_residue(self, i)
 
11665     def get_residues(self):
 
11666         r"""get_residues(CHARMMSegmentTopology self) -> IMP::atom::CHARMMResidueTopologies""" 
11667         return _IMP_atom.CHARMMSegmentTopology_get_residues(self)
 
11669     def erase_residue(self, i):
 
11670         r"""erase_residue(CHARMMSegmentTopology self, unsigned int i)""" 
11671         return _IMP_atom.CHARMMSegmentTopology_erase_residue(self, i)
 
11673     def reserve_residues(self, sz):
 
11674         r"""reserve_residues(CHARMMSegmentTopology self, unsigned int sz)""" 
11675         return _IMP_atom.CHARMMSegmentTopology_reserve_residues(self, sz)
 
11677     def get_version_info(self):
 
11678         r"""get_version_info(CHARMMSegmentTopology self) -> VersionInfo""" 
11679         return _IMP_atom.CHARMMSegmentTopology_get_version_info(self)
 
11680     __swig_destroy__ = _IMP_atom.delete_CHARMMSegmentTopology
 
11682     def __init__(self, *args):
 
11683         r"""__init__(CHARMMSegmentTopology self, std::string name="CHARMM segment topology %1%") -> CHARMMSegmentTopology""" 
11684         _IMP_atom.CHARMMSegmentTopology_swiginit(self, _IMP_atom.new_CHARMMSegmentTopology(*args))
 
11686     def apply_default_patches(self, ff):
 
11687         r"""apply_default_patches(CHARMMSegmentTopology self, CHARMMParameters ff)""" 
11688         return _IMP_atom.CHARMMSegmentTopology_apply_default_patches(self, ff)
 
11691         r"""__str__(CHARMMSegmentTopology self) -> std::string""" 
11692         return _IMP_atom.CHARMMSegmentTopology___str__(self)
 
11694     def __repr__(self):
 
11695         r"""__repr__(CHARMMSegmentTopology self) -> std::string""" 
11696         return _IMP_atom.CHARMMSegmentTopology___repr__(self)
 
11700        return _object_cast_to_CHARMMSegmentTopology(o)
 
11704 _IMP_atom.CHARMMSegmentTopology_swigregister(CHARMMSegmentTopology)
 
11706     r"""Proxy of C++ IMP::atom::CHARMMTopology class.""" 
11708     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11710     def __init__(self, *args):
 
11711         r"""__init__(CHARMMTopology self, CHARMMParameters force_field, std::string name="CHARMM topology %1%") -> CHARMMTopology""" 
11712         _IMP_atom.CHARMMTopology_swiginit(self, _IMP_atom.new_CHARMMTopology(*args))
 
11714     def get_parameters(self):
 
11715         r"""get_parameters(CHARMMTopology self) -> CHARMMParameters""" 
11716         return _IMP_atom.CHARMMTopology_get_parameters(self)
 
11718     def add_sequence(self, sequence):
 
11719         r"""add_sequence(CHARMMTopology self, std::string sequence)""" 
11720         return _IMP_atom.CHARMMTopology_add_sequence(self, sequence)
 
11722     def apply_default_patches(self):
 
11723         r"""apply_default_patches(CHARMMTopology self)""" 
11724         return _IMP_atom.CHARMMTopology_apply_default_patches(self)
 
11726     def create_hierarchy(self, model):
 
11727         r"""create_hierarchy(CHARMMTopology self, Model model) -> Hierarchy""" 
11728         return _IMP_atom.CHARMMTopology_create_hierarchy(self, model)
 
11730     def add_atom_types(self, hierarchy):
 
11731         r"""add_atom_types(CHARMMTopology self, Hierarchy hierarchy)""" 
11732         return _IMP_atom.CHARMMTopology_add_atom_types(self, hierarchy)
 
11734     def add_coordinates(self, hierarchy):
 
11735         r"""add_coordinates(CHARMMTopology self, Hierarchy hierarchy)""" 
11736         return _IMP_atom.CHARMMTopology_add_coordinates(self, hierarchy)
 
11738     def add_missing_atoms(self, hierarchy):
 
11739         r"""add_missing_atoms(CHARMMTopology self, Hierarchy hierarchy)""" 
11740         return _IMP_atom.CHARMMTopology_add_missing_atoms(self, hierarchy)
 
11742     def setup_hierarchy(self, hierarchy):
 
11743         r"""setup_hierarchy(CHARMMTopology self, Hierarchy hierarchy)""" 
11744         return _IMP_atom.CHARMMTopology_setup_hierarchy(self, hierarchy)
 
11746     def add_charges(self, hierarchy):
 
11747         r"""add_charges(CHARMMTopology self, Hierarchy hierarchy)""" 
11748         return _IMP_atom.CHARMMTopology_add_charges(self, hierarchy)
 
11751         r"""add_bonds(CHARMMTopology self, Hierarchy hierarchy) -> IMP::Particles""" 
11752         return _IMP_atom.CHARMMTopology_add_bonds(self, hierarchy)
 
11754     def add_dihedrals(self, hierarchy):
 
11755         r"""add_dihedrals(CHARMMTopology self, Hierarchy hierarchy) -> IMP::Particles""" 
11756         return _IMP_atom.CHARMMTopology_add_dihedrals(self, hierarchy)
 
11758     def add_impropers(self, hierarchy):
 
11759         r"""add_impropers(CHARMMTopology self, Hierarchy hierarchy) -> IMP::Particles""" 
11760         return _IMP_atom.CHARMMTopology_add_impropers(self, hierarchy)
 
11761     def __get_segments(self):  
return IMP._list_util.VarList(getdimfunc=self.get_number_of_segments,  getfunc=self.get_segment, erasefunc=self.erase_segment,  appendfunc=self.add_segment, extendfunc=self.add_segments,  clearfunc=self.clear_segments, indexfunc=self._python_index_segment)  
 
11762     def __set_segments(self, obj): IMP._list_util.set_varlist(self.segments, obj)  
 
11763     def __del_segments(self): IMP._list_util.del_varlist(self.segments)       
 
11764     segments = property(__get_segments, __set_segments, __del_segments, doc=
"List of ##ucnames")  
 
11766     def remove_segment(self, d):
 
11767         r"""remove_segment(CHARMMTopology self, CHARMMSegmentTopology d)""" 
11768         return _IMP_atom.CHARMMTopology_remove_segment(self, d)
 
11770     def _python_index_segment(self, d, start, stop):
 
11771         r"""_python_index_segment(CHARMMTopology self, CHARMMSegmentTopology d, unsigned int start, unsigned int stop) -> unsigned int""" 
11772         return _IMP_atom.CHARMMTopology__python_index_segment(self, d, start, stop)
 
11774     def remove_segments(self, d):
 
11775         r"""remove_segments(CHARMMTopology self, IMP::atom::CHARMMSegmentTopologies const & d)""" 
11776         return _IMP_atom.CHARMMTopology_remove_segments(self, d)
 
11778     def set_segments(self, ps):
 
11779         r"""set_segments(CHARMMTopology self, IMP::atom::CHARMMSegmentTopologies const & ps)""" 
11780         return _IMP_atom.CHARMMTopology_set_segments(self, ps)
 
11782     def set_segments_order(self, objs):
 
11783         r"""set_segments_order(CHARMMTopology self, IMP::atom::CHARMMSegmentTopologies const & objs)""" 
11784         return _IMP_atom.CHARMMTopology_set_segments_order(self, objs)
 
11786     def add_segment(self, obj):
 
11787         r"""add_segment(CHARMMTopology self, CHARMMSegmentTopology obj) -> unsigned int""" 
11788         return _IMP_atom.CHARMMTopology_add_segment(self, obj)
 
11790     def add_segments(self, objs):
 
11791         r"""add_segments(CHARMMTopology self, IMP::atom::CHARMMSegmentTopologies const & objs)""" 
11792         return _IMP_atom.CHARMMTopology_add_segments(self, objs)
 
11794     def clear_segments(self):
 
11795         r"""clear_segments(CHARMMTopology self)""" 
11796         return _IMP_atom.CHARMMTopology_clear_segments(self)
 
11798     def get_number_of_segments(self):
 
11799         r"""get_number_of_segments(CHARMMTopology self) -> unsigned int""" 
11800         return _IMP_atom.CHARMMTopology_get_number_of_segments(self)
 
11802     def get_has_segments(self):
 
11803         r"""get_has_segments(CHARMMTopology self) -> bool""" 
11804         return _IMP_atom.CHARMMTopology_get_has_segments(self)
 
11807         r"""get_segment(CHARMMTopology self, unsigned int i) -> CHARMMSegmentTopology""" 
11808         return _IMP_atom.CHARMMTopology_get_segment(self, i)
 
11810     def get_segments(self):
 
11811         r"""get_segments(CHARMMTopology self) -> IMP::atom::CHARMMSegmentTopologies""" 
11812         return _IMP_atom.CHARMMTopology_get_segments(self)
 
11814     def erase_segment(self, i):
 
11815         r"""erase_segment(CHARMMTopology self, unsigned int i)""" 
11816         return _IMP_atom.CHARMMTopology_erase_segment(self, i)
 
11818     def reserve_segments(self, sz):
 
11819         r"""reserve_segments(CHARMMTopology self, unsigned int sz)""" 
11820         return _IMP_atom.CHARMMTopology_reserve_segments(self, sz)
 
11822     def get_version_info(self):
 
11823         r"""get_version_info(CHARMMTopology self) -> VersionInfo""" 
11824         return _IMP_atom.CHARMMTopology_get_version_info(self)
 
11825     __swig_destroy__ = _IMP_atom.delete_CHARMMTopology
 
11828         r"""__str__(CHARMMTopology self) -> std::string""" 
11829         return _IMP_atom.CHARMMTopology___str__(self)
 
11831     def __repr__(self):
 
11832         r"""__repr__(CHARMMTopology self) -> std::string""" 
11833         return _IMP_atom.CHARMMTopology___repr__(self)
 
11837        return _object_cast_to_CHARMMTopology(o)
 
11841 _IMP_atom.CHARMMTopology_swigregister(CHARMMTopology)
 
11843     r"""Proxy of C++ IMP::atom::CHARMMStereochemistryRestraint class.""" 
11845     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11847     def __init__(self, *args):
 
11849         __init__(CHARMMStereochemistryRestraint self, Hierarchy h, CHARMMTopology topology) -> CHARMMStereochemistryRestraint 
11850         __init__(CHARMMStereochemistryRestraint self, Hierarchy h, CHARMMTopology topology, IMP::ParticlesTemp limit_to_these_particles) -> CHARMMStereochemistryRestraint 
11852         _IMP_atom.CHARMMStereochemistryRestraint_swiginit(self, _IMP_atom.new_CHARMMStereochemistryRestraint(*args))
 
11854     def get_pair_filter(self):
 
11855         r"""get_pair_filter(CHARMMStereochemistryRestraint self) -> StereochemistryPairFilter""" 
11856         return _IMP_atom.CHARMMStereochemistryRestraint_get_pair_filter(self)
 
11858     def get_full_pair_filter(self):
 
11859         r"""get_full_pair_filter(CHARMMStereochemistryRestraint self) -> StereochemistryPairFilter""" 
11860         return _IMP_atom.CHARMMStereochemistryRestraint_get_full_pair_filter(self)
 
11862     def do_get_inputs(self):
 
11863         r"""do_get_inputs(CHARMMStereochemistryRestraint self) -> IMP::ModelObjectsTemp""" 
11864         return _IMP_atom.CHARMMStereochemistryRestraint_do_get_inputs(self)
 
11866     def get_version_info(self):
 
11867         r"""get_version_info(CHARMMStereochemistryRestraint self) -> VersionInfo""" 
11868         return _IMP_atom.CHARMMStereochemistryRestraint_get_version_info(self)
 
11869     __swig_destroy__ = _IMP_atom.delete_CHARMMStereochemistryRestraint
 
11872         r"""__str__(CHARMMStereochemistryRestraint self) -> std::string""" 
11873         return _IMP_atom.CHARMMStereochemistryRestraint___str__(self)
 
11875     def __repr__(self):
 
11876         r"""__repr__(CHARMMStereochemistryRestraint self) -> std::string""" 
11877         return _IMP_atom.CHARMMStereochemistryRestraint___repr__(self)
 
11881        return _object_cast_to_CHARMMStereochemistryRestraint(o)
 
11885 _IMP_atom.CHARMMStereochemistryRestraint_swigregister(CHARMMStereochemistryRestraint)
 
11888     r"""add_bonds(Hierarchy d, ForceFieldParameters ffp=IMP::atom::get_all_atom_CHARMM_parameters())""" 
11889     return _IMP_atom.add_bonds(*args)
 
11892     r"""add_radii(Hierarchy d, ForceFieldParameters ffp=IMP::atom::get_all_atom_CHARMM_parameters(), FloatKey radius_key=IMP::FloatKey("radius"))""" 
11893     return _IMP_atom.add_radii(*args)
 
11894 ALBER = _IMP_atom.ALBER
 
11896 HARPAZ = _IMP_atom.HARPAZ
 
11898 ANDERSSON = _IMP_atom.ANDERSSON
 
11900 TSAI = _IMP_atom.TSAI
 
11902 QUILLIN = _IMP_atom.QUILLIN
 
11904 SQUIRE = _IMP_atom.SQUIRE
 
11908     r"""get_protein_density_from_reference(IMP::atom::ProteinDensityReference densityReference) -> double""" 
11909     return _IMP_atom.get_protein_density_from_reference(densityReference)
 
11912     r"""get_volume_from_mass(double m, IMP::atom::ProteinDensityReference ref=ALBER) -> double""" 
11913     return _IMP_atom.get_volume_from_mass(*args)
 
11916     r"""get_mass_from_volume(double v, IMP::atom::ProteinDensityReference ref=ALBER) -> double""" 
11917     return _IMP_atom.get_mass_from_volume(*args)
 
11920     r"""get_mass_from_number_of_residues(unsigned int num_aa) -> double""" 
11921     return _IMP_atom.get_mass_from_number_of_residues(num_aa)
 
11924     r"""get_volume_from_residue_type(ResidueType rt) -> double""" 
11925     return _IMP_atom.get_volume_from_residue_type(rt)
 
11928     r"""get_molarity(double n, double volume) -> double""" 
11929     return _IMP_atom.get_molarity(n, volume)
 
11931 def get_kd(na, nb, nab, volume):
 
11932     r"""get_kd(double na, double nb, double nab, double volume) -> double""" 
11933     return _IMP_atom.get_kd(na, nb, nab, volume)
 
11936     r"""get_einstein_diffusion_coefficient(double r, double temp=-1) -> double""" 
11937     return _IMP_atom.get_einstein_diffusion_coefficient(r, temp)
 
11940     r"""get_einstein_rotational_diffusion_coefficient(double r, double temp=-1) -> double""" 
11941     return _IMP_atom.get_einstein_rotational_diffusion_coefficient(r, temp)
 
11945     get_diffusion_length(double D, double t) -> double 
11946     get_diffusion_length(double D, double force, double t, double temp=-1) -> double 
11948     return _IMP_atom.get_diffusion_length(*args)
 
11951     r"""get_diffusion_angle(double D, double dtfs) -> double""" 
11952     return _IMP_atom.get_diffusion_angle(D, dtfs)
 
11956     get_diffusion_coefficient(IMP::algebra::Vector3Ds const & displacements, double dt) -> double 
11957     get_diffusion_coefficient(IMP::algebra::Vector3Ds const & displacements, IMP::Floats const & dts) -> double 
11959     return _IMP_atom.get_diffusion_coefficient(*args)
 
11962     r"""get_rotational_diffusion_coefficient(IMP::algebra::Rotation3Ds const & orientations, double dt) -> double""" 
11963     return _IMP_atom.get_rotational_diffusion_coefficient(orientations, dt)
 
11965 def get_energy_in_femto_joules(energy_in_kcal_per_mol):
 
11966     r"""get_energy_in_femto_joules(double energy_in_kcal_per_mol) -> double""" 
11967     return _IMP_atom.get_energy_in_femto_joules(energy_in_kcal_per_mol)
 
11970     r"""get_force_in_femto_newtons(double force_in_kcal_per_mol_per_angstrom) -> double""" 
11971     return _IMP_atom.get_force_in_femto_newtons(force_in_kcal_per_mol_per_angstrom)
 
11974     r"""get_spring_constant_in_femto_newtons_per_angstrom(double k_in_kcal_per_mol_per_angstrom_square) -> double""" 
11975     return _IMP_atom.get_spring_constant_in_femto_newtons_per_angstrom(k_in_kcal_per_mol_per_angstrom_square)
 
11977     r"""Proxy of C++ IMP::atom::EzRestraint class.""" 
11979     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
11981     def __init__(self, m, ps):
 
11982         r"""__init__(EzRestraint self, Model m, _ParticleIndexesAdaptor ps) -> EzRestraint""" 
11983         _IMP_atom.EzRestraint_swiginit(self, _IMP_atom.new_EzRestraint(m, ps))
 
11985     def get_version_info(self):
 
11986         r"""get_version_info(EzRestraint self) -> VersionInfo""" 
11987         return _IMP_atom.EzRestraint_get_version_info(self)
 
11988     __swig_destroy__ = _IMP_atom.delete_EzRestraint
 
11991         r"""__str__(EzRestraint self) -> std::string""" 
11992         return _IMP_atom.EzRestraint___str__(self)
 
11994     def __repr__(self):
 
11995         r"""__repr__(EzRestraint self) -> std::string""" 
11996         return _IMP_atom.EzRestraint___repr__(self)
 
12000        return _object_cast_to_EzRestraint(o)
 
12004 _IMP_atom.EzRestraint_swigregister(EzRestraint)
 
12008     create_protein(Model m, std::string name, double target_radius, int number_of_residues, int first_residue_index=0, double volume=-1, bool ismol=True) -> Hierarchy 
12009     create_protein(Model m, std::string name, double target_radius, IMP::Ints const domain_boundaries) -> Hierarchy 
12011     return _IMP_atom.create_protein(*args)
 
12015     create_simplified_along_backbone(Hierarchy input, int num_res, bool keep_detailed=False) -> Hierarchy 
12016     create_simplified_along_backbone(Chain input, IMP::IntRanges const & residue_segments, bool keep_detailed=False) -> Hierarchy 
12018     return _IMP_atom.create_simplified_along_backbone(*args)
 
12021     r"""create_simplified_from_volume(Hierarchy h, double resolution) -> Hierarchy""" 
12022     return _IMP_atom.create_simplified_from_volume(h, resolution)
 
12025     r"""create_simplified_assembly_from_volume(Hierarchy h, double resolution) -> Hierarchy""" 
12026     return _IMP_atom.create_simplified_assembly_from_volume(h, resolution)
 
12028 def get_residue_indexes(h):
 
12029     r"""get_residue_indexes(Hierarchy h) -> IMP::Ints""" 
12030     return _IMP_atom.get_residue_indexes(h)
 
12032 def get_residue_type(*args):
 
12034     get_residue_type(char c) -> ResidueType 
12035     get_residue_type(Hierarchy h) -> ResidueType 
12037     return _IMP_atom.get_residue_type(*args)
 
12039 def get_atom_type(h):
 
12040     r"""get_atom_type(Hierarchy h) -> AtomType""" 
12041     return _IMP_atom.get_atom_type(h)
 
12043 def get_domain_name(h):
 
12044     r"""get_domain_name(Hierarchy h) -> std::string""" 
12045     return _IMP_atom.get_domain_name(h)
 
12049     create_excluded_volume_restraint(IMP::atom::Selections const & s) -> Restraint 
12050     create_excluded_volume_restraint(IMP::atom::Hierarchies const & hs, double resolution=-1) -> Restraint 
12052     return _IMP_atom.create_excluded_volume_restraint(*args)
 
12056     setup_as_approximation(Particle h, IMP::ParticlesTemp const & other, double resolution=-1) 
12057     setup_as_approximation(Hierarchy h, double resolution=-1) 
12059     return _IMP_atom.setup_as_approximation(*args)
 
12060 class _HierarchyTreeVertexIndex(object):
 
12061     r"""Proxy of C++ IMP::atom::HierarchyTreeVertexIndex class.""" 
12063     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12064     __repr__ = _swig_repr
 
12066     def __init__(self):
 
12067         r"""__init__(_HierarchyTreeVertexIndex self) -> _HierarchyTreeVertexIndex""" 
12068         _IMP_atom._HierarchyTreeVertexIndex_swiginit(self, _IMP_atom.new__HierarchyTreeVertexIndex())
 
12069     __swig_destroy__ = _IMP_atom.delete__HierarchyTreeVertexIndex
 
12072 _IMP_atom._HierarchyTreeVertexIndex_swigregister(_HierarchyTreeVertexIndex)
 
12074 def show_as_graphviz(name, out):
 
12075     r"""show_as_graphviz(IMP::atom::HierarchyTree const & name, TextOutput out)""" 
12076     return _IMP_atom.show_as_graphviz(name, out)
 
12078 def get_vertex_index(g):
 
12079     r"""get_vertex_index(IMP::atom::HierarchyTree const & g) -> _HierarchyTreeVertexIndex""" 
12080     return _IMP_atom.get_vertex_index(g)
 
12083     r"""get_hierarchy_tree(Hierarchy h) -> IMP::atom::HierarchyTree""" 
12084     return _IMP_atom.get_hierarchy_tree(h)
 
12086     r"""Proxy of C++ IMP::atom::HierarchyGeometry class.""" 
12088     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12090     def __init__(self, d, resolution=0):
 
12091         r"""__init__(HierarchyGeometry self, Hierarchy d, double resolution=0) -> HierarchyGeometry""" 
12092         _IMP_atom.HierarchyGeometry_swiginit(self, _IMP_atom.new_HierarchyGeometry(d, resolution))
 
12094     def get_version_info(self):
 
12095         r"""get_version_info(HierarchyGeometry self) -> VersionInfo""" 
12096         return _IMP_atom.HierarchyGeometry_get_version_info(self)
 
12097     __swig_destroy__ = _IMP_atom.delete_HierarchyGeometry
 
12100         r"""__str__(HierarchyGeometry self) -> std::string""" 
12101         return _IMP_atom.HierarchyGeometry___str__(self)
 
12103     def __repr__(self):
 
12104         r"""__repr__(HierarchyGeometry self) -> std::string""" 
12105         return _IMP_atom.HierarchyGeometry___repr__(self)
 
12109        return _object_cast_to_HierarchyGeometry(o)
 
12113 _IMP_atom.HierarchyGeometry_swigregister(HierarchyGeometry)
 
12115     r"""Proxy of C++ IMP::atom::HierarchiesGeometry class.""" 
12117     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12119     def __init__(self, sc, resolution=-1):
 
12120         r"""__init__(HierarchiesGeometry self, SingletonContainer sc, double resolution=-1) -> HierarchiesGeometry""" 
12121         _IMP_atom.HierarchiesGeometry_swiginit(self, _IMP_atom.new_HierarchiesGeometry(sc, resolution))
 
12123     def get_version_info(self):
 
12124         r"""get_version_info(HierarchiesGeometry self) -> VersionInfo""" 
12125         return _IMP_atom.HierarchiesGeometry_get_version_info(self)
 
12126     __swig_destroy__ = _IMP_atom.delete_HierarchiesGeometry
 
12129         r"""__str__(HierarchiesGeometry self) -> std::string""" 
12130         return _IMP_atom.HierarchiesGeometry___str__(self)
 
12132     def __repr__(self):
 
12133         r"""__repr__(HierarchiesGeometry self) -> std::string""" 
12134         return _IMP_atom.HierarchiesGeometry___repr__(self)
 
12138        return _object_cast_to_HierarchiesGeometry(o)
 
12142 _IMP_atom.HierarchiesGeometry_swigregister(HierarchiesGeometry)
 
12146     transform(Hierarchy h, Transformation3D tr) 
12147     transform(Hierarchy h, Transformation3D tr) 
12149     return _IMP_atom.transform(*args)
 
12150 class DopePairScore(_ADopeBase):
 
12151     r"""Proxy of C++ IMP::atom::DopePairScore class.""" 
12153     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12155     def __init__(self, *args):
 
12157         __init__(DopePairScore self, double threshold=std::numeric_limits< double >::max()) -> DopePairScore 
12158         __init__(DopePairScore self, double threshold, TextInput data_file) -> DopePairScore 
12160         _IMP_atom.DopePairScore_swiginit(self, _IMP_atom.new_DopePairScore(*args))
 
12163         r"""__str__(DopePairScore self) -> std::string""" 
12164         return _IMP_atom.DopePairScore___str__(self)
 
12166     def __repr__(self):
 
12167         r"""__repr__(DopePairScore self) -> std::string""" 
12168         return _IMP_atom.DopePairScore___repr__(self)
 
12172        return _object_cast_to_DopePairScore(o)
 
12174     __swig_destroy__ = _IMP_atom.delete_DopePairScore
 
12177 _IMP_atom.DopePairScore_swigregister(DopePairScore)
 
12180     r"""add_dope_score_data(Hierarchy h)""" 
12181     return _IMP_atom.add_dope_score_data(h)
 
12182 class LoopStatisticalPairScore(_ALoopStatisticalBase):
 
12183     r"""Proxy of C++ IMP::atom::LoopStatisticalPairScore class.""" 
12185     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12187     def __init__(self, *args):
 
12189         __init__(LoopStatisticalPairScore self, double threshold=std::numeric_limits< double >::max()) -> LoopStatisticalPairScore 
12190         __init__(LoopStatisticalPairScore self, double threshold, TextInput data_file) -> LoopStatisticalPairScore 
12192         _IMP_atom.LoopStatisticalPairScore_swiginit(self, _IMP_atom.new_LoopStatisticalPairScore(*args))
 
12195         r"""__str__(LoopStatisticalPairScore self) -> std::string""" 
12196         return _IMP_atom.LoopStatisticalPairScore___str__(self)
 
12198     def __repr__(self):
 
12199         r"""__repr__(LoopStatisticalPairScore self) -> std::string""" 
12200         return _IMP_atom.LoopStatisticalPairScore___repr__(self)
 
12204        return _object_cast_to_LoopStatisticalPairScore(o)
 
12206     __swig_destroy__ = _IMP_atom.delete_LoopStatisticalPairScore
 
12209 _IMP_atom.LoopStatisticalPairScore_swigregister(LoopStatisticalPairScore)
 
12212     r"""add_loop_statistical_score_data(Hierarchy h)""" 
12213     return _IMP_atom.add_loop_statistical_score_data(h)
 
12214 class OrientedSoapPairScore(_OrientedSoapBase):
 
12215     r"""Proxy of C++ IMP::atom::OrientedSoapPairScore class.""" 
12217     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12219     def __init__(self, library):
 
12220         r"""__init__(OrientedSoapPairScore self, std::string library) -> OrientedSoapPairScore""" 
12221         _IMP_atom.OrientedSoapPairScore_swiginit(self, _IMP_atom.new_OrientedSoapPairScore(library))
 
12223     def get_pair_filter(self):
 
12224         r"""get_pair_filter(OrientedSoapPairScore self) -> SoapPairFilter""" 
12225         return _IMP_atom.OrientedSoapPairScore_get_pair_filter(self)
 
12228         r"""__str__(OrientedSoapPairScore self) -> std::string""" 
12229         return _IMP_atom.OrientedSoapPairScore___str__(self)
 
12231     def __repr__(self):
 
12232         r"""__repr__(OrientedSoapPairScore self) -> std::string""" 
12233         return _IMP_atom.OrientedSoapPairScore___repr__(self)
 
12237        return _object_cast_to_OrientedSoapPairScore(o)
 
12239     __swig_destroy__ = _IMP_atom.delete_OrientedSoapPairScore
 
12242 _IMP_atom.OrientedSoapPairScore_swigregister(OrientedSoapPairScore)
 
12244     r"""Proxy of C++ IMP::atom::SameResiduePairFilter class.""" 
12246     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12248     def __init__(self):
 
12249         r"""__init__(SameResiduePairFilter self) -> SameResiduePairFilter""" 
12250         _IMP_atom.SameResiduePairFilter_swiginit(self, _IMP_atom.new_SameResiduePairFilter())
 
12252     def do_get_inputs(self, m, pis):
 
12253         r"""do_get_inputs(SameResiduePairFilter self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
12254         return _IMP_atom.SameResiduePairFilter_do_get_inputs(self, m, pis)
 
12256     def get_value(self, *args):
 
12258         get_value(SameResiduePairFilter self, IMP::ParticlePair const & a) -> int 
12259         get_value(SameResiduePairFilter self, IMP::ParticlePairsTemp const & o) -> IMP::Ints 
12261         return _IMP_atom.SameResiduePairFilter_get_value(self, *args)
 
12263     def get_value_index(self, *args):
 
12265         get_value_index(SameResiduePairFilter self, Model m, IMP::ParticleIndexPair const & p) -> int 
12266         get_value_index(SameResiduePairFilter self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints 
12268         return _IMP_atom.SameResiduePairFilter_get_value_index(self, *args)
 
12270     def get_version_info(self):
 
12271         r"""get_version_info(SameResiduePairFilter self) -> VersionInfo""" 
12272         return _IMP_atom.SameResiduePairFilter_get_version_info(self)
 
12273     __swig_destroy__ = _IMP_atom.delete_SameResiduePairFilter
 
12276         r"""__str__(SameResiduePairFilter self) -> std::string""" 
12277         return _IMP_atom.SameResiduePairFilter___str__(self)
 
12279     def __repr__(self):
 
12280         r"""__repr__(SameResiduePairFilter self) -> std::string""" 
12281         return _IMP_atom.SameResiduePairFilter___repr__(self)
 
12285        return _object_cast_to_SameResiduePairFilter(o)
 
12289 _IMP_atom.SameResiduePairFilter_swigregister(SameResiduePairFilter)
 
12291     r"""Proxy of C++ IMP::atom::RemoveRigidMotionOptimizerState class.""" 
12293     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12295     def __init__(self, m, pis):
 
12296         r"""__init__(RemoveRigidMotionOptimizerState self, Model m, _ParticleIndexesAdaptor pis) -> RemoveRigidMotionOptimizerState""" 
12297         _IMP_atom.RemoveRigidMotionOptimizerState_swiginit(self, _IMP_atom.new_RemoveRigidMotionOptimizerState(m, pis))
 
12299     def set_particles(self, pis):
 
12300         r"""set_particles(RemoveRigidMotionOptimizerState self, IMP::Particles const & pis)""" 
12301         return _IMP_atom.RemoveRigidMotionOptimizerState_set_particles(self, pis)
 
12303     def remove_rigid_motion(self):
 
12304         r"""remove_rigid_motion(RemoveRigidMotionOptimizerState self)""" 
12305         return _IMP_atom.RemoveRigidMotionOptimizerState_remove_rigid_motion(self)
 
12307     def get_version_info(self):
 
12308         r"""get_version_info(RemoveRigidMotionOptimizerState self) -> VersionInfo""" 
12309         return _IMP_atom.RemoveRigidMotionOptimizerState_get_version_info(self)
 
12310     __swig_destroy__ = _IMP_atom.delete_RemoveRigidMotionOptimizerState
 
12313         r"""__str__(RemoveRigidMotionOptimizerState self) -> std::string""" 
12314         return _IMP_atom.RemoveRigidMotionOptimizerState___str__(self)
 
12316     def __repr__(self):
 
12317         r"""__repr__(RemoveRigidMotionOptimizerState self) -> std::string""" 
12318         return _IMP_atom.RemoveRigidMotionOptimizerState___repr__(self)
 
12322        return _object_cast_to_RemoveRigidMotionOptimizerState(o)
 
12326 _IMP_atom.RemoveRigidMotionOptimizerState_swigregister(RemoveRigidMotionOptimizerState)
 
12328     r"""Proxy of C++ IMP::atom::BerendsenThermostatOptimizerState class.""" 
12330     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12332     def __init__(self, pis, temperature, tau):
 
12333         r"""__init__(BerendsenThermostatOptimizerState self, IMP::Particles const & pis, double temperature, double tau) -> BerendsenThermostatOptimizerState""" 
12334         _IMP_atom.BerendsenThermostatOptimizerState_swiginit(self, _IMP_atom.new_BerendsenThermostatOptimizerState(pis, temperature, tau))
 
12336     def set_particles(self, pis):
 
12337         r"""set_particles(BerendsenThermostatOptimizerState self, IMP::Particles const & pis)""" 
12338         return _IMP_atom.BerendsenThermostatOptimizerState_set_particles(self, pis)
 
12340     def get_temperature(self):
 
12341         r"""get_temperature(BerendsenThermostatOptimizerState self) -> double""" 
12342         return _IMP_atom.BerendsenThermostatOptimizerState_get_temperature(self)
 
12345         r"""get_tau(BerendsenThermostatOptimizerState self) -> double""" 
12346         return _IMP_atom.BerendsenThermostatOptimizerState_get_tau(self)
 
12348     def set_temperature(self, temperature):
 
12349         r"""set_temperature(BerendsenThermostatOptimizerState self, double temperature)""" 
12350         return _IMP_atom.BerendsenThermostatOptimizerState_set_temperature(self, temperature)
 
12352     def set_tau(self, tau):
 
12353         r"""set_tau(BerendsenThermostatOptimizerState self, double tau)""" 
12354         return _IMP_atom.BerendsenThermostatOptimizerState_set_tau(self, tau)
 
12356     def rescale_velocities(self):
 
12357         r"""rescale_velocities(BerendsenThermostatOptimizerState self)""" 
12358         return _IMP_atom.BerendsenThermostatOptimizerState_rescale_velocities(self)
 
12360     def get_version_info(self):
 
12361         r"""get_version_info(BerendsenThermostatOptimizerState self) -> VersionInfo""" 
12362         return _IMP_atom.BerendsenThermostatOptimizerState_get_version_info(self)
 
12363     __swig_destroy__ = _IMP_atom.delete_BerendsenThermostatOptimizerState
 
12366         r"""__str__(BerendsenThermostatOptimizerState self) -> std::string""" 
12367         return _IMP_atom.BerendsenThermostatOptimizerState___str__(self)
 
12369     def __repr__(self):
 
12370         r"""__repr__(BerendsenThermostatOptimizerState self) -> std::string""" 
12371         return _IMP_atom.BerendsenThermostatOptimizerState___repr__(self)
 
12375        return _object_cast_to_BerendsenThermostatOptimizerState(o)
 
12379 _IMP_atom.BerendsenThermostatOptimizerState_swigregister(BerendsenThermostatOptimizerState)
 
12381     r"""Proxy of C++ IMP::atom::LangevinThermostatOptimizerState class.""" 
12383     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12385     def __init__(self, m, pis, temperature, gamma):
 
12386         r"""__init__(LangevinThermostatOptimizerState self, Model m, _ParticleIndexesAdaptor pis, double temperature, double gamma) -> LangevinThermostatOptimizerState""" 
12387         _IMP_atom.LangevinThermostatOptimizerState_swiginit(self, _IMP_atom.new_LangevinThermostatOptimizerState(m, pis, temperature, gamma))
 
12389     def set_particles(self, pis):
 
12390         r"""set_particles(LangevinThermostatOptimizerState self, IMP::Particles const & pis)""" 
12391         return _IMP_atom.LangevinThermostatOptimizerState_set_particles(self, pis)
 
12393     def get_temperature(self):
 
12394         r"""get_temperature(LangevinThermostatOptimizerState self) -> double""" 
12395         return _IMP_atom.LangevinThermostatOptimizerState_get_temperature(self)
 
12397     def get_gamma(self):
 
12398         r"""get_gamma(LangevinThermostatOptimizerState self) -> double""" 
12399         return _IMP_atom.LangevinThermostatOptimizerState_get_gamma(self)
 
12401     def set_temperature(self, temperature):
 
12402         r"""set_temperature(LangevinThermostatOptimizerState self, double temperature)""" 
12403         return _IMP_atom.LangevinThermostatOptimizerState_set_temperature(self, temperature)
 
12405     def set_gamma(self, gamma):
 
12406         r"""set_gamma(LangevinThermostatOptimizerState self, double gamma)""" 
12407         return _IMP_atom.LangevinThermostatOptimizerState_set_gamma(self, gamma)
 
12409     def rescale_velocities(self):
 
12410         r"""rescale_velocities(LangevinThermostatOptimizerState self)""" 
12411         return _IMP_atom.LangevinThermostatOptimizerState_rescale_velocities(self)
 
12413     def get_version_info(self):
 
12414         r"""get_version_info(LangevinThermostatOptimizerState self) -> VersionInfo""" 
12415         return _IMP_atom.LangevinThermostatOptimizerState_get_version_info(self)
 
12416     __swig_destroy__ = _IMP_atom.delete_LangevinThermostatOptimizerState
 
12419         r"""__str__(LangevinThermostatOptimizerState self) -> std::string""" 
12420         return _IMP_atom.LangevinThermostatOptimizerState___str__(self)
 
12422     def __repr__(self):
 
12423         r"""__repr__(LangevinThermostatOptimizerState self) -> std::string""" 
12424         return _IMP_atom.LangevinThermostatOptimizerState___repr__(self)
 
12428        return _object_cast_to_LangevinThermostatOptimizerState(o)
 
12432 _IMP_atom.LangevinThermostatOptimizerState_swigregister(LangevinThermostatOptimizerState)
 
12433 class PDBRecord(IMP._Value):
 
12434     r"""Proxy of C++ IMP::atom::PDBRecord class.""" 
12436     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12438     def __init__(self):
 
12439         r"""__init__(PDBRecord self) -> PDBRecord""" 
12440         _IMP_atom.PDBRecord_swiginit(self, _IMP_atom.new_PDBRecord())
 
12442     def get_alt_loc_indicator(self):
 
12443         r"""get_alt_loc_indicator(PDBRecord self) -> std::string""" 
12444         return _IMP_atom.PDBRecord_get_alt_loc_indicator(self)
 
12446     def get_is_atom(self):
 
12447         r"""get_is_atom(PDBRecord self) -> bool""" 
12448         return _IMP_atom.PDBRecord_get_is_atom(self)
 
12450     def get_trimmed_atom_name(self):
 
12451         r"""get_trimmed_atom_name(PDBRecord self) -> std::string""" 
12452         return _IMP_atom.PDBRecord_get_trimmed_atom_name(self)
 
12454     def get_padded_atom_name(self):
 
12455         r"""get_padded_atom_name(PDBRecord self) -> std::string""" 
12456         return _IMP_atom.PDBRecord_get_padded_atom_name(self)
 
12458     def get_residue_name(self):
 
12459         r"""get_residue_name(PDBRecord self) -> std::string""" 
12460         return _IMP_atom.PDBRecord_get_residue_name(self)
 
12463         r"""get_chain_id(PDBRecord self) -> std::string""" 
12464         return _IMP_atom.PDBRecord_get_chain_id(self)
 
12466     def get_element(self):
 
12467         r"""get_element(PDBRecord self) -> std::string""" 
12468         return _IMP_atom.PDBRecord_get_element(self)
 
12470     def show(self, *args):
 
12471         r"""show(PDBRecord self, _ostream out=std::cout)""" 
12472         return _IMP_atom.PDBRecord_show(self, *args)
 
12475         r"""__str__(PDBRecord self) -> std::string""" 
12476         return _IMP_atom.PDBRecord___str__(self)
 
12478     def __repr__(self):
 
12479         r"""__repr__(PDBRecord self) -> std::string""" 
12480         return _IMP_atom.PDBRecord___repr__(self)
 
12481     __swig_destroy__ = _IMP_atom.delete_PDBRecord
 
12484 _IMP_atom.PDBRecord_swigregister(PDBRecord)
 
12486     r"""Proxy of C++ IMP::atom::PDBSelector class.""" 
12488     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12490     def __init__(self, name):
 
12491         r"""__init__(PDBSelector self, std::string name) -> PDBSelector""" 
12492         if self.__class__ == PDBSelector:
 
12496         _IMP_atom.PDBSelector_swiginit(self, _IMP_atom.new_PDBSelector(_self, name))
 
12498         if self.__class__ != PDBSelector:
 
12499             _director_objects.register(self)
 
12504     def get_is_selected(self, record):
 
12505         r"""get_is_selected(PDBSelector self, PDBRecord record) -> bool""" 
12506         return _IMP_atom.PDBSelector_get_is_selected(self, record)
 
12507     __swig_destroy__ = _IMP_atom.delete_PDBSelector
 
12510         r"""__str__(PDBSelector self) -> std::string""" 
12511         return _IMP_atom.PDBSelector___str__(self)
 
12513     def __repr__(self):
 
12514         r"""__repr__(PDBSelector self) -> std::string""" 
12515         return _IMP_atom.PDBSelector___repr__(self)
 
12519        return _object_cast_to_PDBSelector(o)
 
12522     def get_type_name(self):
 
12523         return self.__class__.__name__
 
12524     def do_show(self, out):
 
12526     def get_version_info(self):
 
12527         if"IMP::atom" == 
"IMP":
 
12528           return VersionInfo(self.__module__,
 
12535        return _object_cast_to_PDBSelector(o)
 
12538     def __and__(self, s):
 
12539         return AndPDBSelector(self, s)
 
12540     def __or__(self, s):
 
12541         return OrPDBSelector(self, s)
 
12542     def __xor__(self, s):
 
12543         return XorPDBSelector(self, s)
 
12544     def __invert__(self):
 
12545         return NotPDBSelector(self)
 
12546     def __sub__(self, s):
 
12547         return AndPDBSelector(self, NotPDBSelector(s))
 
12549     def __disown__(self):
 
12551         _IMP_atom.disown_PDBSelector(self)
 
12552         return weakref.proxy(self)
 
12554     def do_destroy(self):
 
12555         r"""do_destroy(PDBSelector self)""" 
12556         return _IMP_atom.PDBSelector_do_destroy(self)
 
12559 _IMP_atom.PDBSelector_swigregister(PDBSelector)
 
12560 class NonAlternativePDBSelector(PDBSelector):
 
12561     r"""Proxy of C++ IMP::atom::NonAlternativePDBSelector class.""" 
12563     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12565     def __init__(self, *args):
 
12566         r"""__init__(NonAlternativePDBSelector self, std::string name="NonAlternativePDBSelector%1%") -> NonAlternativePDBSelector""" 
12567         _IMP_atom.NonAlternativePDBSelector_swiginit(self, _IMP_atom.new_NonAlternativePDBSelector(*args))
 
12569     def get_version_info(self):
 
12570         r"""get_version_info(NonAlternativePDBSelector self) -> VersionInfo""" 
12571         return _IMP_atom.NonAlternativePDBSelector_get_version_info(self)
 
12572     __swig_destroy__ = _IMP_atom.delete_NonAlternativePDBSelector
 
12575         r"""__str__(NonAlternativePDBSelector self) -> std::string""" 
12576         return _IMP_atom.NonAlternativePDBSelector___str__(self)
 
12578     def __repr__(self):
 
12579         r"""__repr__(NonAlternativePDBSelector self) -> std::string""" 
12580         return _IMP_atom.NonAlternativePDBSelector___repr__(self)
 
12584        return _object_cast_to_NonAlternativePDBSelector(o)
 
12588 _IMP_atom.NonAlternativePDBSelector_swigregister(NonAlternativePDBSelector)
 
12589 class ATOMPDBSelector(NonAlternativePDBSelector):
 
12590     r"""Proxy of C++ IMP::atom::ATOMPDBSelector class.""" 
12592     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12594     def __init__(self, *args):
 
12595         r"""__init__(ATOMPDBSelector self, std::string name="ATOMPDBSelector%1%") -> ATOMPDBSelector""" 
12596         _IMP_atom.ATOMPDBSelector_swiginit(self, _IMP_atom.new_ATOMPDBSelector(*args))
 
12597     __swig_destroy__ = _IMP_atom.delete_ATOMPDBSelector
 
12600         r"""__str__(ATOMPDBSelector self) -> std::string""" 
12601         return _IMP_atom.ATOMPDBSelector___str__(self)
 
12603     def __repr__(self):
 
12604         r"""__repr__(ATOMPDBSelector self) -> std::string""" 
12605         return _IMP_atom.ATOMPDBSelector___repr__(self)
 
12609        return _object_cast_to_ATOMPDBSelector(o)
 
12613 _IMP_atom.ATOMPDBSelector_swigregister(ATOMPDBSelector)
 
12614 class CAlphaPDBSelector(NonAlternativePDBSelector):
 
12615     r"""Proxy of C++ IMP::atom::CAlphaPDBSelector class.""" 
12617     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12619     def __init__(self, *args):
 
12620         r"""__init__(CAlphaPDBSelector self, std::string name="CAlphaPDBSelector%1%") -> CAlphaPDBSelector""" 
12621         _IMP_atom.CAlphaPDBSelector_swiginit(self, _IMP_atom.new_CAlphaPDBSelector(*args))
 
12622     __swig_destroy__ = _IMP_atom.delete_CAlphaPDBSelector
 
12625         r"""__str__(CAlphaPDBSelector self) -> std::string""" 
12626         return _IMP_atom.CAlphaPDBSelector___str__(self)
 
12628     def __repr__(self):
 
12629         r"""__repr__(CAlphaPDBSelector self) -> std::string""" 
12630         return _IMP_atom.CAlphaPDBSelector___repr__(self)
 
12634        return _object_cast_to_CAlphaPDBSelector(o)
 
12638 _IMP_atom.CAlphaPDBSelector_swigregister(CAlphaPDBSelector)
 
12639 class CBetaPDBSelector(NonAlternativePDBSelector):
 
12640     r"""Proxy of C++ IMP::atom::CBetaPDBSelector class.""" 
12642     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12644     def __init__(self, *args):
 
12645         r"""__init__(CBetaPDBSelector self, std::string name="CBetaPDBSelector%1%") -> CBetaPDBSelector""" 
12646         _IMP_atom.CBetaPDBSelector_swiginit(self, _IMP_atom.new_CBetaPDBSelector(*args))
 
12647     __swig_destroy__ = _IMP_atom.delete_CBetaPDBSelector
 
12650         r"""__str__(CBetaPDBSelector self) -> std::string""" 
12651         return _IMP_atom.CBetaPDBSelector___str__(self)
 
12653     def __repr__(self):
 
12654         r"""__repr__(CBetaPDBSelector self) -> std::string""" 
12655         return _IMP_atom.CBetaPDBSelector___repr__(self)
 
12659        return _object_cast_to_CBetaPDBSelector(o)
 
12663 _IMP_atom.CBetaPDBSelector_swigregister(CBetaPDBSelector)
 
12664 class AtomTypePDBSelector(PDBSelector):
 
12665     r"""Proxy of C++ IMP::atom::AtomTypePDBSelector class.""" 
12667     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12669     def __init__(self, *args):
 
12670         r"""__init__(AtomTypePDBSelector self, IMP::Strings atom_types, std::string name="AtomTypePDBSelector%1%") -> AtomTypePDBSelector""" 
12671         _IMP_atom.AtomTypePDBSelector_swiginit(self, _IMP_atom.new_AtomTypePDBSelector(*args))
 
12673     def get_version_info(self):
 
12674         r"""get_version_info(AtomTypePDBSelector self) -> VersionInfo""" 
12675         return _IMP_atom.AtomTypePDBSelector_get_version_info(self)
 
12676     __swig_destroy__ = _IMP_atom.delete_AtomTypePDBSelector
 
12679         r"""__str__(AtomTypePDBSelector self) -> std::string""" 
12680         return _IMP_atom.AtomTypePDBSelector___str__(self)
 
12682     def __repr__(self):
 
12683         r"""__repr__(AtomTypePDBSelector self) -> std::string""" 
12684         return _IMP_atom.AtomTypePDBSelector___repr__(self)
 
12688        return _object_cast_to_AtomTypePDBSelector(o)
 
12692 _IMP_atom.AtomTypePDBSelector_swigregister(AtomTypePDBSelector)
 
12693 class ResidueTypePDBSelector(PDBSelector):
 
12694     r"""Proxy of C++ IMP::atom::ResidueTypePDBSelector class.""" 
12696     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12698     def __init__(self, *args):
 
12699         r"""__init__(ResidueTypePDBSelector self, IMP::Strings residue_types, std::string name="ResidueTypePDBSelector%1%") -> ResidueTypePDBSelector""" 
12700         _IMP_atom.ResidueTypePDBSelector_swiginit(self, _IMP_atom.new_ResidueTypePDBSelector(*args))
 
12702     def get_version_info(self):
 
12703         r"""get_version_info(ResidueTypePDBSelector self) -> VersionInfo""" 
12704         return _IMP_atom.ResidueTypePDBSelector_get_version_info(self)
 
12705     __swig_destroy__ = _IMP_atom.delete_ResidueTypePDBSelector
 
12708         r"""__str__(ResidueTypePDBSelector self) -> std::string""" 
12709         return _IMP_atom.ResidueTypePDBSelector___str__(self)
 
12711     def __repr__(self):
 
12712         r"""__repr__(ResidueTypePDBSelector self) -> std::string""" 
12713         return _IMP_atom.ResidueTypePDBSelector___repr__(self)
 
12717        return _object_cast_to_ResidueTypePDBSelector(o)
 
12721 _IMP_atom.ResidueTypePDBSelector_swigregister(ResidueTypePDBSelector)
 
12722 class CPDBSelector(NonAlternativePDBSelector):
 
12723     r"""Proxy of C++ IMP::atom::CPDBSelector class.""" 
12725     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12727     def __init__(self, *args):
 
12728         r"""__init__(CPDBSelector self, std::string name="CPDBSelector%1%") -> CPDBSelector""" 
12729         _IMP_atom.CPDBSelector_swiginit(self, _IMP_atom.new_CPDBSelector(*args))
 
12730     __swig_destroy__ = _IMP_atom.delete_CPDBSelector
 
12733         r"""__str__(CPDBSelector self) -> std::string""" 
12734         return _IMP_atom.CPDBSelector___str__(self)
 
12736     def __repr__(self):
 
12737         r"""__repr__(CPDBSelector self) -> std::string""" 
12738         return _IMP_atom.CPDBSelector___repr__(self)
 
12742        return _object_cast_to_CPDBSelector(o)
 
12746 _IMP_atom.CPDBSelector_swigregister(CPDBSelector)
 
12747 class NPDBSelector(NonAlternativePDBSelector):
 
12748     r"""Proxy of C++ IMP::atom::NPDBSelector class.""" 
12750     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12752     def __init__(self, *args):
 
12753         r"""__init__(NPDBSelector self, std::string name="NPDBSelector%1%") -> NPDBSelector""" 
12754         _IMP_atom.NPDBSelector_swiginit(self, _IMP_atom.new_NPDBSelector(*args))
 
12755     __swig_destroy__ = _IMP_atom.delete_NPDBSelector
 
12758         r"""__str__(NPDBSelector self) -> std::string""" 
12759         return _IMP_atom.NPDBSelector___str__(self)
 
12761     def __repr__(self):
 
12762         r"""__repr__(NPDBSelector self) -> std::string""" 
12763         return _IMP_atom.NPDBSelector___repr__(self)
 
12767        return _object_cast_to_NPDBSelector(o)
 
12771 _IMP_atom.NPDBSelector_swigregister(NPDBSelector)
 
12772 class AllPDBSelector(PDBSelector):
 
12773     r"""Proxy of C++ IMP::atom::AllPDBSelector class.""" 
12775     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12777     def __init__(self, *args):
 
12778         r"""__init__(AllPDBSelector self, std::string name="AllPDBSelector%1%") -> AllPDBSelector""" 
12779         _IMP_atom.AllPDBSelector_swiginit(self, _IMP_atom.new_AllPDBSelector(*args))
 
12781     def get_version_info(self):
 
12782         r"""get_version_info(AllPDBSelector self) -> VersionInfo""" 
12783         return _IMP_atom.AllPDBSelector_get_version_info(self)
 
12784     __swig_destroy__ = _IMP_atom.delete_AllPDBSelector
 
12787         r"""__str__(AllPDBSelector self) -> std::string""" 
12788         return _IMP_atom.AllPDBSelector___str__(self)
 
12790     def __repr__(self):
 
12791         r"""__repr__(AllPDBSelector self) -> std::string""" 
12792         return _IMP_atom.AllPDBSelector___repr__(self)
 
12796        return _object_cast_to_AllPDBSelector(o)
 
12800 _IMP_atom.AllPDBSelector_swigregister(AllPDBSelector)
 
12801 class ChainPDBSelector(NonAlternativePDBSelector):
 
12802     r"""Proxy of C++ IMP::atom::ChainPDBSelector class.""" 
12804     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12805     __swig_destroy__ = _IMP_atom.delete_ChainPDBSelector
 
12807     def __init__(self, *args):
 
12808         r"""__init__(ChainPDBSelector self, IMP::Strings chains, std::string name="ChainPDBSelector%1%") -> ChainPDBSelector""" 
12809         _IMP_atom.ChainPDBSelector_swiginit(self, _IMP_atom.new_ChainPDBSelector(*args))
 
12812         r"""__str__(ChainPDBSelector self) -> std::string""" 
12813         return _IMP_atom.ChainPDBSelector___str__(self)
 
12815     def __repr__(self):
 
12816         r"""__repr__(ChainPDBSelector self) -> std::string""" 
12817         return _IMP_atom.ChainPDBSelector___repr__(self)
 
12821        return _object_cast_to_ChainPDBSelector(o)
 
12825 _IMP_atom.ChainPDBSelector_swigregister(ChainPDBSelector)
 
12826 class WaterPDBSelector(NonAlternativePDBSelector):
 
12827     r"""Proxy of C++ IMP::atom::WaterPDBSelector class.""" 
12829     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12831     def __init__(self, *args):
 
12832         r"""__init__(WaterPDBSelector self, std::string name="WaterPDBSelector%1%") -> WaterPDBSelector""" 
12833         _IMP_atom.WaterPDBSelector_swiginit(self, _IMP_atom.new_WaterPDBSelector(*args))
 
12834     __swig_destroy__ = _IMP_atom.delete_WaterPDBSelector
 
12837         r"""__str__(WaterPDBSelector self) -> std::string""" 
12838         return _IMP_atom.WaterPDBSelector___str__(self)
 
12840     def __repr__(self):
 
12841         r"""__repr__(WaterPDBSelector self) -> std::string""" 
12842         return _IMP_atom.WaterPDBSelector___repr__(self)
 
12846        return _object_cast_to_WaterPDBSelector(o)
 
12850 _IMP_atom.WaterPDBSelector_swigregister(WaterPDBSelector)
 
12851 class HydrogenPDBSelector(NonAlternativePDBSelector):
 
12852     r"""Proxy of C++ IMP::atom::HydrogenPDBSelector class.""" 
12854     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12856     def __init__(self, *args):
 
12857         r"""__init__(HydrogenPDBSelector self, std::string name="HydrogenPDBSelector%1%") -> HydrogenPDBSelector""" 
12858         _IMP_atom.HydrogenPDBSelector_swiginit(self, _IMP_atom.new_HydrogenPDBSelector(*args))
 
12859     __swig_destroy__ = _IMP_atom.delete_HydrogenPDBSelector
 
12862         r"""__str__(HydrogenPDBSelector self) -> std::string""" 
12863         return _IMP_atom.HydrogenPDBSelector___str__(self)
 
12865     def __repr__(self):
 
12866         r"""__repr__(HydrogenPDBSelector self) -> std::string""" 
12867         return _IMP_atom.HydrogenPDBSelector___repr__(self)
 
12871        return _object_cast_to_HydrogenPDBSelector(o)
 
12875 _IMP_atom.HydrogenPDBSelector_swigregister(HydrogenPDBSelector)
 
12876 class NonWaterNonHydrogenPDBSelector(NonAlternativePDBSelector):
 
12877     r"""Proxy of C++ IMP::atom::NonWaterNonHydrogenPDBSelector class.""" 
12879     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12880     __swig_destroy__ = _IMP_atom.delete_NonWaterNonHydrogenPDBSelector
 
12882     def __init__(self, *args):
 
12884         __init__(NonWaterNonHydrogenPDBSelector self, std::string name) -> NonWaterNonHydrogenPDBSelector 
12885         __init__(NonWaterNonHydrogenPDBSelector self) -> NonWaterNonHydrogenPDBSelector 
12887         _IMP_atom.NonWaterNonHydrogenPDBSelector_swiginit(self, _IMP_atom.new_NonWaterNonHydrogenPDBSelector(*args))
 
12890         r"""__str__(NonWaterNonHydrogenPDBSelector self) -> std::string""" 
12891         return _IMP_atom.NonWaterNonHydrogenPDBSelector___str__(self)
 
12893     def __repr__(self):
 
12894         r"""__repr__(NonWaterNonHydrogenPDBSelector self) -> std::string""" 
12895         return _IMP_atom.NonWaterNonHydrogenPDBSelector___repr__(self)
 
12899        return _object_cast_to_NonWaterNonHydrogenPDBSelector(o)
 
12903 _IMP_atom.NonWaterNonHydrogenPDBSelector_swigregister(NonWaterNonHydrogenPDBSelector)
 
12904 class NonHydrogenPDBSelector(NonAlternativePDBSelector):
 
12905     r"""Proxy of C++ IMP::atom::NonHydrogenPDBSelector class.""" 
12907     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12908     __swig_destroy__ = _IMP_atom.delete_NonHydrogenPDBSelector
 
12910     def __init__(self, *args):
 
12912         __init__(NonHydrogenPDBSelector self, std::string name) -> NonHydrogenPDBSelector 
12913         __init__(NonHydrogenPDBSelector self) -> NonHydrogenPDBSelector 
12915         _IMP_atom.NonHydrogenPDBSelector_swiginit(self, _IMP_atom.new_NonHydrogenPDBSelector(*args))
 
12918         r"""__str__(NonHydrogenPDBSelector self) -> std::string""" 
12919         return _IMP_atom.NonHydrogenPDBSelector___str__(self)
 
12921     def __repr__(self):
 
12922         r"""__repr__(NonHydrogenPDBSelector self) -> std::string""" 
12923         return _IMP_atom.NonHydrogenPDBSelector___repr__(self)
 
12927        return _object_cast_to_NonHydrogenPDBSelector(o)
 
12931 _IMP_atom.NonHydrogenPDBSelector_swigregister(NonHydrogenPDBSelector)
 
12932 class NonWaterPDBSelector(NonAlternativePDBSelector):
 
12933     r"""Proxy of C++ IMP::atom::NonWaterPDBSelector class.""" 
12935     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12936     __swig_destroy__ = _IMP_atom.delete_NonWaterPDBSelector
 
12938     def __init__(self, *args):
 
12940         __init__(NonWaterPDBSelector self, std::string name) -> NonWaterPDBSelector 
12941         __init__(NonWaterPDBSelector self) -> NonWaterPDBSelector 
12943         _IMP_atom.NonWaterPDBSelector_swiginit(self, _IMP_atom.new_NonWaterPDBSelector(*args))
 
12946         r"""__str__(NonWaterPDBSelector self) -> std::string""" 
12947         return _IMP_atom.NonWaterPDBSelector___str__(self)
 
12949     def __repr__(self):
 
12950         r"""__repr__(NonWaterPDBSelector self) -> std::string""" 
12951         return _IMP_atom.NonWaterPDBSelector___repr__(self)
 
12955        return _object_cast_to_NonWaterPDBSelector(o)
 
12959 _IMP_atom.NonWaterPDBSelector_swigregister(NonWaterPDBSelector)
 
12960 class BackbonePDBSelector(NonWaterNonHydrogenPDBSelector):
 
12961     r"""Proxy of C++ IMP::atom::BackbonePDBSelector class.""" 
12963     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12965     def __init__(self, *args):
 
12966         r"""__init__(BackbonePDBSelector self, std::string name="BackbonePDBSelector%1%") -> BackbonePDBSelector""" 
12967         _IMP_atom.BackbonePDBSelector_swiginit(self, _IMP_atom.new_BackbonePDBSelector(*args))
 
12968     __swig_destroy__ = _IMP_atom.delete_BackbonePDBSelector
 
12971         r"""__str__(BackbonePDBSelector self) -> std::string""" 
12972         return _IMP_atom.BackbonePDBSelector___str__(self)
 
12974     def __repr__(self):
 
12975         r"""__repr__(BackbonePDBSelector self) -> std::string""" 
12976         return _IMP_atom.BackbonePDBSelector___repr__(self)
 
12980        return _object_cast_to_BackbonePDBSelector(o)
 
12984 _IMP_atom.BackbonePDBSelector_swigregister(BackbonePDBSelector)
 
12985 class PPDBSelector(NonAlternativePDBSelector):
 
12986     r"""Proxy of C++ IMP::atom::PPDBSelector class.""" 
12988     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
12990     def __init__(self, *args):
 
12991         r"""__init__(PPDBSelector self, std::string name="PPDBSelector%1%") -> PPDBSelector""" 
12992         _IMP_atom.PPDBSelector_swiginit(self, _IMP_atom.new_PPDBSelector(*args))
 
12993     __swig_destroy__ = _IMP_atom.delete_PPDBSelector
 
12996         r"""__str__(PPDBSelector self) -> std::string""" 
12997         return _IMP_atom.PPDBSelector___str__(self)
 
12999     def __repr__(self):
 
13000         r"""__repr__(PPDBSelector self) -> std::string""" 
13001         return _IMP_atom.PPDBSelector___repr__(self)
 
13005        return _object_cast_to_PPDBSelector(o)
 
13009 _IMP_atom.PPDBSelector_swigregister(PPDBSelector)
 
13010 class AndPDBSelector(PDBSelector):
 
13011     r"""Proxy of C++ IMP::atom::AndPDBSelector class.""" 
13013     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13015     def get_version_info(self):
 
13016         r"""get_version_info(AndPDBSelector self) -> VersionInfo""" 
13017         return _IMP_atom.AndPDBSelector_get_version_info(self)
 
13018     __swig_destroy__ = _IMP_atom.delete_AndPDBSelector
 
13020     def __init__(self, a, b):
 
13021         r"""__init__(AndPDBSelector self, PDBSelector a, PDBSelector b) -> AndPDBSelector""" 
13022         _IMP_atom.AndPDBSelector_swiginit(self, _IMP_atom.new_AndPDBSelector(a, b))
 
13025         r"""__str__(AndPDBSelector self) -> std::string""" 
13026         return _IMP_atom.AndPDBSelector___str__(self)
 
13028     def __repr__(self):
 
13029         r"""__repr__(AndPDBSelector self) -> std::string""" 
13030         return _IMP_atom.AndPDBSelector___repr__(self)
 
13034        return _object_cast_to_AndPDBSelector(o)
 
13038 _IMP_atom.AndPDBSelector_swigregister(AndPDBSelector)
 
13039 class OrPDBSelector(PDBSelector):
 
13040     r"""Proxy of C++ IMP::atom::OrPDBSelector class.""" 
13042     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13044     def get_version_info(self):
 
13045         r"""get_version_info(OrPDBSelector self) -> VersionInfo""" 
13046         return _IMP_atom.OrPDBSelector_get_version_info(self)
 
13047     __swig_destroy__ = _IMP_atom.delete_OrPDBSelector
 
13049     def __init__(self, a, b):
 
13050         r"""__init__(OrPDBSelector self, PDBSelector a, PDBSelector b) -> OrPDBSelector""" 
13051         _IMP_atom.OrPDBSelector_swiginit(self, _IMP_atom.new_OrPDBSelector(a, b))
 
13054         r"""__str__(OrPDBSelector self) -> std::string""" 
13055         return _IMP_atom.OrPDBSelector___str__(self)
 
13057     def __repr__(self):
 
13058         r"""__repr__(OrPDBSelector self) -> std::string""" 
13059         return _IMP_atom.OrPDBSelector___repr__(self)
 
13063        return _object_cast_to_OrPDBSelector(o)
 
13067 _IMP_atom.OrPDBSelector_swigregister(OrPDBSelector)
 
13068 class XorPDBSelector(PDBSelector):
 
13069     r"""Proxy of C++ IMP::atom::XorPDBSelector class.""" 
13071     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13073     def get_version_info(self):
 
13074         r"""get_version_info(XorPDBSelector self) -> VersionInfo""" 
13075         return _IMP_atom.XorPDBSelector_get_version_info(self)
 
13076     __swig_destroy__ = _IMP_atom.delete_XorPDBSelector
 
13078     def __init__(self, a, b):
 
13079         r"""__init__(XorPDBSelector self, PDBSelector a, PDBSelector b) -> XorPDBSelector""" 
13080         _IMP_atom.XorPDBSelector_swiginit(self, _IMP_atom.new_XorPDBSelector(a, b))
 
13083         r"""__str__(XorPDBSelector self) -> std::string""" 
13084         return _IMP_atom.XorPDBSelector___str__(self)
 
13086     def __repr__(self):
 
13087         r"""__repr__(XorPDBSelector self) -> std::string""" 
13088         return _IMP_atom.XorPDBSelector___repr__(self)
 
13092        return _object_cast_to_XorPDBSelector(o)
 
13096 _IMP_atom.XorPDBSelector_swigregister(XorPDBSelector)
 
13097 class NotPDBSelector(PDBSelector):
 
13098     r"""Proxy of C++ IMP::atom::NotPDBSelector class.""" 
13100     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13102     def get_version_info(self):
 
13103         r"""get_version_info(NotPDBSelector self) -> VersionInfo""" 
13104         return _IMP_atom.NotPDBSelector_get_version_info(self)
 
13105     __swig_destroy__ = _IMP_atom.delete_NotPDBSelector
 
13107     def __init__(self, a):
 
13108         r"""__init__(NotPDBSelector self, PDBSelector a) -> NotPDBSelector""" 
13109         _IMP_atom.NotPDBSelector_swiginit(self, _IMP_atom.new_NotPDBSelector(a))
 
13112         r"""__str__(NotPDBSelector self) -> std::string""" 
13113         return _IMP_atom.NotPDBSelector___str__(self)
 
13115     def __repr__(self):
 
13116         r"""__repr__(NotPDBSelector self) -> std::string""" 
13117         return _IMP_atom.NotPDBSelector___repr__(self)
 
13121        return _object_cast_to_NotPDBSelector(o)
 
13125 _IMP_atom.NotPDBSelector_swigregister(NotPDBSelector)
 
13127 def get_default_pdb_selector():
 
13128     r"""get_default_pdb_selector() -> PDBSelector""" 
13129     return _IMP_atom.get_default_pdb_selector()
 
13133     read_pdb(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool select_first_model=True, bool no_radii=False) -> Hierarchy 
13134     read_pdb(TextInput input, int model, Hierarchy h) 
13136     return _IMP_atom.read_pdb(*args)
 
13139     r"""read_multimodel_pdb(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool noradii=False) -> IMP::atom::Hierarchies""" 
13140     return _IMP_atom.read_multimodel_pdb(*args)
 
13143     r"""write_pdb(Selection mhd, TextOutput out, unsigned int model=1)""" 
13144     return _IMP_atom.write_pdb(mhd, out, model)
 
13147     r"""write_pdb_of_c_alphas(Selection mhd, TextOutput out, unsigned int model=1)""" 
13148     return _IMP_atom.write_pdb_of_c_alphas(mhd, out, model)
 
13151     r"""write_multimodel_pdb(IMP::atom::Hierarchies const & mhd, TextOutput out)""" 
13152     return _IMP_atom.write_multimodel_pdb(mhd, out)
 
13154 def get_pdb_string(*args):
 
13155     r"""get_pdb_string(Vector3D v, int index=-1, AtomType at=AT_CA, ResidueType rt=ALA, char chain=' ', int res_index=1, char res_icode=' ', double occupancy=1.00, double tempFactor=0.00, IMP::atom::Element e=C) -> std::string""" 
13156     return _IMP_atom.get_pdb_string(*args)
 
13158 def get_pdb_conect_record_string(arg1, arg2):
 
13159     r"""get_pdb_conect_record_string(int arg1, int arg2) -> std::string""" 
13160     return _IMP_atom.get_pdb_conect_record_string(arg1, arg2)
 
13162     r"""Proxy of C++ IMP::atom::WritePDBOptimizerState class.""" 
13164     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13166     def __init__(self, *args):
 
13168         __init__(WritePDBOptimizerState self, Model m, _ParticleIndexesAdaptor pis, std::string filename) -> WritePDBOptimizerState 
13169         __init__(WritePDBOptimizerState self, IMP::atom::Hierarchies const mh, std::string filename) -> WritePDBOptimizerState 
13170         __init__(WritePDBOptimizerState self) -> WritePDBOptimizerState 
13172         _IMP_atom.WritePDBOptimizerState_swiginit(self, _IMP_atom.new_WritePDBOptimizerState(*args))
 
13174     def get_version_info(self):
 
13175         r"""get_version_info(WritePDBOptimizerState self) -> VersionInfo""" 
13176         return _IMP_atom.WritePDBOptimizerState_get_version_info(self)
 
13177     __swig_destroy__ = _IMP_atom.delete_WritePDBOptimizerState
 
13180         r"""__str__(WritePDBOptimizerState self) -> std::string""" 
13181         return _IMP_atom.WritePDBOptimizerState___str__(self)
 
13183     def __repr__(self):
 
13184         r"""__repr__(WritePDBOptimizerState self) -> std::string""" 
13185         return _IMP_atom.WritePDBOptimizerState___repr__(self)
 
13189        return _object_cast_to_WritePDBOptimizerState(o)
 
13192     def _get_as_binary(self):
 
13193         r"""_get_as_binary(WritePDBOptimizerState self) -> PyObject *""" 
13194         return _IMP_atom.WritePDBOptimizerState__get_as_binary(self)
 
13196     def _set_from_binary(self, p):
 
13197         r"""_set_from_binary(WritePDBOptimizerState self, PyObject * p)""" 
13198         return _IMP_atom.WritePDBOptimizerState__set_from_binary(self, p)
 
13200     def __getstate__(self):
 
13201         p = self._get_as_binary()
 
13202         if len(self.__dict__) > 1:
 
13203             d = self.__dict__.copy()
 
13208     def __setstate__(self, p):
 
13209         if not hasattr(self, 
'this'):
 
13211         if isinstance(p, tuple):
 
13213             self.__dict__.update(d)
 
13214         return self._set_from_binary(p)
 
13218 _IMP_atom.WritePDBOptimizerState_swigregister(WritePDBOptimizerState)
 
13221     r"""read_multimodel_mmcif(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool noradii=False) -> IMP::atom::Hierarchies""" 
13222     return _IMP_atom.read_multimodel_mmcif(*args)
 
13225     r"""read_mmcif(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool select_first_model=True, bool noradii=False) -> Hierarchy""" 
13226     return _IMP_atom.read_mmcif(*args)
 
13229     r"""read_multimodel_bcif(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool noradii=False) -> IMP::atom::Hierarchies""" 
13230     return _IMP_atom.read_multimodel_bcif(*args)
 
13233     r"""read_bcif(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool select_first_model=True, bool noradii=False) -> Hierarchy""" 
13234     return _IMP_atom.read_bcif(*args)
 
13237     r"""read_pdb_any(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool select_first_model=True, bool noradii=False) -> Hierarchy""" 
13238     return _IMP_atom.read_pdb_any(*args)
 
13241     r"""read_multimodel_pdb_any(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool noradii=False) -> IMP::atom::Hierarchies""" 
13242     return _IMP_atom.read_multimodel_pdb_any(*args)
 
13244 def read_pdb_or_mmcif(*args):
 
13245     r"""read_pdb_or_mmcif(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool select_first_model=True, bool noradii=False) -> Hierarchy""" 
13246     return _IMP_atom.read_pdb_or_mmcif(*args)
 
13248 def read_multimodel_pdb_or_mmcif(*args):
 
13249     r"""read_multimodel_pdb_or_mmcif(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool noradii=False) -> IMP::atom::Hierarchies""" 
13250     return _IMP_atom.read_multimodel_pdb_or_mmcif(*args)
 
13253     r"""get_kt(double T) -> double""" 
13254     return _IMP_atom.get_kt(T)
 
13256     r"""Proxy of C++ IMP::atom::CAAngleRestraint class.""" 
13258     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13260     def __init__(self, m, p1, p2, p3, phi0, score):
 
13261         r"""__init__(CAAngleRestraint self, Model m, _ParticleIndexAdaptor p1, _ParticleIndexAdaptor p2, _ParticleIndexAdaptor p3, IMP::Floats phi0, IMP::Floats score) -> CAAngleRestraint""" 
13262         _IMP_atom.CAAngleRestraint_swiginit(self, _IMP_atom.new_CAAngleRestraint(m, p1, p2, p3, phi0, score))
 
13264     def do_get_inputs(self):
 
13265         r"""do_get_inputs(CAAngleRestraint self) -> IMP::ModelObjectsTemp""" 
13266         return _IMP_atom.CAAngleRestraint_do_get_inputs(self)
 
13268     def get_version_info(self):
 
13269         r"""get_version_info(CAAngleRestraint self) -> VersionInfo""" 
13270         return _IMP_atom.CAAngleRestraint_get_version_info(self)
 
13271     __swig_destroy__ = _IMP_atom.delete_CAAngleRestraint
 
13274         r"""__str__(CAAngleRestraint self) -> std::string""" 
13275         return _IMP_atom.CAAngleRestraint___str__(self)
 
13277     def __repr__(self):
 
13278         r"""__repr__(CAAngleRestraint self) -> std::string""" 
13279         return _IMP_atom.CAAngleRestraint___repr__(self)
 
13283        return _object_cast_to_CAAngleRestraint(o)
 
13287 _IMP_atom.CAAngleRestraint_swigregister(CAAngleRestraint)
 
13289     r"""Proxy of C++ IMP::atom::CADihedralRestraint class.""" 
13291     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13293     def __init__(self, m, p1, p2, p3, p4, p5, phi0, phi1, score):
 
13294         r"""__init__(CADihedralRestraint self, Model m, _ParticleIndexAdaptor p1, _ParticleIndexAdaptor p2, _ParticleIndexAdaptor p3, _ParticleIndexAdaptor p4, _ParticleIndexAdaptor p5, IMP::Floats phi0, IMP::Floats phi1, IMP::Floats score) -> CADihedralRestraint""" 
13295         _IMP_atom.CADihedralRestraint_swiginit(self, _IMP_atom.new_CADihedralRestraint(m, p1, p2, p3, p4, p5, phi0, phi1, score))
 
13297     def do_get_inputs(self):
 
13298         r"""do_get_inputs(CADihedralRestraint self) -> IMP::ModelObjectsTemp""" 
13299         return _IMP_atom.CADihedralRestraint_do_get_inputs(self)
 
13301     def get_version_info(self):
 
13302         r"""get_version_info(CADihedralRestraint self) -> VersionInfo""" 
13303         return _IMP_atom.CADihedralRestraint_get_version_info(self)
 
13304     __swig_destroy__ = _IMP_atom.delete_CADihedralRestraint
 
13307         r"""__str__(CADihedralRestraint self) -> std::string""" 
13308         return _IMP_atom.CADihedralRestraint___str__(self)
 
13310     def __repr__(self):
 
13311         r"""__repr__(CADihedralRestraint self) -> std::string""" 
13312         return _IMP_atom.CADihedralRestraint___repr__(self)
 
13316        return _object_cast_to_CADihedralRestraint(o)
 
13320 _IMP_atom.CADihedralRestraint_swigregister(CADihedralRestraint)
 
13322     r"""Proxy of C++ IMP::atom::StructureSource class.""" 
13324     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13326     def get_source_id(self):
 
13327         r"""get_source_id(StructureSource self) -> std::string""" 
13328         return _IMP_atom.StructureSource_get_source_id(self)
 
13330     def get_source_chain_id(self):
 
13331         r"""get_source_chain_id(StructureSource self) -> std::string""" 
13332         return _IMP_atom.StructureSource_get_source_chain_id(self)
 
13334     def set_source_id(self, source_id):
 
13335         r"""set_source_id(StructureSource self, std::string source_id)""" 
13336         return _IMP_atom.StructureSource_set_source_id(self, source_id)
 
13338     def set_source_chain_id(self, source_chain_id):
 
13339         r"""set_source_chain_id(StructureSource self, std::string source_chain_id)""" 
13340         return _IMP_atom.StructureSource_set_source_chain_id(self, source_chain_id)
 
13342     def __init__(self, *args):
 
13344         __init__(StructureSource self) -> StructureSource 
13345         __init__(StructureSource self, Model m, ParticleIndex id) -> StructureSource 
13346         __init__(StructureSource self, _ParticleAdaptor d) -> StructureSource 
13348         _IMP_atom.StructureSource_swiginit(self, _IMP_atom.new_StructureSource(*args))
 
13351     def get_is_setup(*args):
 
13353         get_is_setup(Model m, ParticleIndex pi) -> bool 
13354         get_is_setup(_ParticleAdaptor p) -> bool 
13356         return _IMP_atom.StructureSource_get_is_setup(*args)
 
13358     def show(self, *args):
 
13359         r"""show(StructureSource self, _ostream out=std::cout)""" 
13360         return _IMP_atom.StructureSource_show(self, *args)
 
13363     def setup_particle(*args):
 
13365         setup_particle(Model m, ParticleIndex pi, std::string source_id, std::string source_chain_id) -> StructureSource 
13366         setup_particle(_ParticleAdaptor pa, std::string source_id, std::string source_chain_id) -> StructureSource 
13368         return _IMP_atom.StructureSource_setup_particle(*args)
 
13370     def add_attribute(self, *args):
 
13372         add_attribute(StructureSource self, FloatKey k, IMP::Float v, bool opt) 
13373         add_attribute(StructureSource self, FloatKey a0, IMP::Float a1) 
13374         add_attribute(StructureSource self, IntKey a0, IMP::Int a1) 
13375         add_attribute(StructureSource self, FloatsKey a0, IMP::Floats a1) 
13376         add_attribute(StructureSource self, IntsKey a0, IMP::Ints a1) 
13377         add_attribute(StructureSource self, StringKey a0, IMP::String a1) 
13378         add_attribute(StructureSource self, ParticleIndexKey a0, Particle a1) 
13379         add_attribute(StructureSource self, ObjectKey a0, Object a1) 
13380         add_attribute(StructureSource self, SparseFloatKey a0, IMP::Float a1) 
13381         add_attribute(StructureSource self, SparseIntKey a0, IMP::Int a1) 
13382         add_attribute(StructureSource self, SparseStringKey a0, IMP::String a1) 
13383         add_attribute(StructureSource self, SparseParticleIndexKey a0, ParticleIndex a1) 
13385         return _IMP_atom.StructureSource_add_attribute(self, *args)
 
13387     def get_value(self, *args):
 
13389         get_value(StructureSource self, FloatKey a0) -> IMP::Float 
13390         get_value(StructureSource self, IntKey a0) -> IMP::Int 
13391         get_value(StructureSource self, FloatsKey a0) -> IMP::Floats 
13392         get_value(StructureSource self, IntsKey a0) -> IMP::Ints 
13393         get_value(StructureSource self, StringKey a0) -> IMP::String 
13394         get_value(StructureSource self, ParticleIndexKey a0) -> Particle 
13395         get_value(StructureSource self, ObjectKey a0) -> Object 
13396         get_value(StructureSource self, SparseFloatKey a0) -> IMP::Float 
13397         get_value(StructureSource self, SparseIntKey a0) -> IMP::Int 
13398         get_value(StructureSource self, SparseStringKey a0) -> IMP::String 
13399         get_value(StructureSource self, SparseParticleIndexKey a0) -> ParticleIndex 
13401         return _IMP_atom.StructureSource_get_value(self, *args)
 
13403     def set_value(self, *args):
 
13405         set_value(StructureSource self, FloatKey a0, IMP::Float a1) 
13406         set_value(StructureSource self, IntKey a0, IMP::Int a1) 
13407         set_value(StructureSource self, FloatsKey a0, IMP::Floats a1) 
13408         set_value(StructureSource self, IntsKey a0, IMP::Ints a1) 
13409         set_value(StructureSource self, StringKey a0, IMP::String a1) 
13410         set_value(StructureSource self, ParticleIndexKey a0, Particle a1) 
13411         set_value(StructureSource self, ObjectKey a0, Object a1) 
13412         set_value(StructureSource self, SparseFloatKey a0, IMP::Float a1) 
13413         set_value(StructureSource self, SparseIntKey a0, IMP::Int a1) 
13414         set_value(StructureSource self, SparseStringKey a0, IMP::String a1) 
13415         set_value(StructureSource self, SparseParticleIndexKey a0, ParticleIndex a1) 
13417         return _IMP_atom.StructureSource_set_value(self, *args)
 
13419     def remove_attribute(self, *args):
 
13421         remove_attribute(StructureSource self, FloatKey a0) 
13422         remove_attribute(StructureSource self, IntKey a0) 
13423         remove_attribute(StructureSource self, FloatsKey a0) 
13424         remove_attribute(StructureSource self, IntsKey a0) 
13425         remove_attribute(StructureSource self, StringKey a0) 
13426         remove_attribute(StructureSource self, ParticleIndexKey a0) 
13427         remove_attribute(StructureSource self, ObjectKey a0) 
13428         remove_attribute(StructureSource self, SparseFloatKey a0) 
13429         remove_attribute(StructureSource self, SparseIntKey a0) 
13430         remove_attribute(StructureSource self, SparseStringKey a0) 
13431         remove_attribute(StructureSource self, SparseParticleIndexKey a0) 
13433         return _IMP_atom.StructureSource_remove_attribute(self, *args)
 
13435     def has_attribute(self, *args):
 
13437         has_attribute(StructureSource self, FloatKey a0) -> bool 
13438         has_attribute(StructureSource self, IntKey a0) -> bool 
13439         has_attribute(StructureSource self, FloatsKey a0) -> bool 
13440         has_attribute(StructureSource self, IntsKey a0) -> bool 
13441         has_attribute(StructureSource self, StringKey a0) -> bool 
13442         has_attribute(StructureSource self, ParticleIndexKey a0) -> bool 
13443         has_attribute(StructureSource self, ObjectKey a0) -> bool 
13444         has_attribute(StructureSource self, SparseFloatKey a0) -> bool 
13445         has_attribute(StructureSource self, SparseIntKey a0) -> bool 
13446         has_attribute(StructureSource self, SparseStringKey a0) -> bool 
13447         has_attribute(StructureSource self, SparseParticleIndexKey a0) -> bool 
13449         return _IMP_atom.StructureSource_has_attribute(self, *args)
 
13451     def get_derivative(self, a0):
 
13452         r"""get_derivative(StructureSource self, FloatKey a0) -> double""" 
13453         return _IMP_atom.StructureSource_get_derivative(self, a0)
 
13455     def get_name(self):
 
13456         r"""get_name(StructureSource self) -> std::string""" 
13457         return _IMP_atom.StructureSource_get_name(self)
 
13459     def clear_caches(self):
 
13460         r"""clear_caches(StructureSource self)""" 
13461         return _IMP_atom.StructureSource_clear_caches(self)
 
13463     def set_name(self, a0):
 
13464         r"""set_name(StructureSource self, std::string a0)""" 
13465         return _IMP_atom.StructureSource_set_name(self, a0)
 
13468         r"""set_check_level(StructureSource self, IMP::CheckLevel a0)""" 
13469         return _IMP_atom.StructureSource_set_check_level(self, a0)
 
13471     def add_to_derivative(self, a0, a1, a2):
 
13472         r"""add_to_derivative(StructureSource self, FloatKey a0, double a1, DerivativeAccumulator a2)""" 
13473         return _IMP_atom.StructureSource_add_to_derivative(self, a0, a1, a2)
 
13475     def set_is_optimized(self, a0, a1):
 
13476         r"""set_is_optimized(StructureSource self, FloatKey a0, bool a1)""" 
13477         return _IMP_atom.StructureSource_set_is_optimized(self, a0, a1)
 
13479     def get_is_optimized(self, a0):
 
13480         r"""get_is_optimized(StructureSource self, FloatKey a0) -> bool""" 
13481         return _IMP_atom.StructureSource_get_is_optimized(self, a0)
 
13484         r"""get_check_level(StructureSource self) -> IMP::CheckLevel""" 
13485         return _IMP_atom.StructureSource_get_check_level(self)
 
13487     def __eq__(self, *args):
 
13489         __eq__(StructureSource self, StructureSource o) -> bool 
13490         __eq__(StructureSource self, Particle d) -> bool 
13492         return _IMP_atom.StructureSource___eq__(self, *args)
 
13494     def __ne__(self, *args):
 
13496         __ne__(StructureSource self, StructureSource o) -> bool 
13497         __ne__(StructureSource self, Particle d) -> bool 
13499         return _IMP_atom.StructureSource___ne__(self, *args)
 
13501     def __le__(self, *args):
 
13503         __le__(StructureSource self, StructureSource o) -> bool 
13504         __le__(StructureSource self, Particle d) -> bool 
13506         return _IMP_atom.StructureSource___le__(self, *args)
 
13508     def __lt__(self, *args):
 
13510         __lt__(StructureSource self, StructureSource o) -> bool 
13511         __lt__(StructureSource self, Particle d) -> bool 
13513         return _IMP_atom.StructureSource___lt__(self, *args)
 
13515     def __ge__(self, *args):
 
13517         __ge__(StructureSource self, StructureSource o) -> bool 
13518         __ge__(StructureSource self, Particle d) -> bool 
13520         return _IMP_atom.StructureSource___ge__(self, *args)
 
13522     def __gt__(self, *args):
 
13524         __gt__(StructureSource self, StructureSource o) -> bool 
13525         __gt__(StructureSource self, Particle d) -> bool 
13527         return _IMP_atom.StructureSource___gt__(self, *args)
 
13529     def __hash__(self):
 
13530         r"""__hash__(StructureSource self) -> std::size_t""" 
13531         return _IMP_atom.StructureSource___hash__(self)
 
13534         r"""__str__(StructureSource self) -> std::string""" 
13535         return _IMP_atom.StructureSource___str__(self)
 
13537     def __repr__(self):
 
13538         r"""__repr__(StructureSource self) -> std::string""" 
13539         return _IMP_atom.StructureSource___repr__(self)
 
13541     def _get_as_binary(self):
 
13542         r"""_get_as_binary(StructureSource self) -> PyObject *""" 
13543         return _IMP_atom.StructureSource__get_as_binary(self)
 
13545     def _set_from_binary(self, p):
 
13546         r"""_set_from_binary(StructureSource self, PyObject * p)""" 
13547         return _IMP_atom.StructureSource__set_from_binary(self, p)
 
13549     def __getstate__(self):
 
13550         p = self._get_as_binary()
 
13551         if len(self.__dict__) > 1:
 
13552             d = self.__dict__.copy()
 
13557     def __setstate__(self, p):
 
13558         if not hasattr(self, 
'this'):
 
13560         if isinstance(p, tuple):
 
13562             self.__dict__.update(d)
 
13563         return self._set_from_binary(p)
 
13565     __swig_destroy__ = _IMP_atom.delete_StructureSource
 
13568 _IMP_atom.StructureSource_swigregister(StructureSource)
 
13570 def __lshift__(*args):
 
13572     __lshift__(_ostream out, Bonded n) -> _ostream 
13573     __lshift__(_ostream out, Bond n) -> _ostream 
13574     __lshift__(_ostream out, Hierarchy n) -> _ostream 
13575     __lshift__(_ostream out, Angle n) -> _ostream 
13576     __lshift__(_ostream out, Dihedral n) -> _ostream 
13577     __lshift__(_ostream out, CenterOfMass n) -> _ostream 
13578     __lshift__(_ostream out, Diffusion n) -> _ostream 
13579     __lshift__(_ostream out, RigidBodyDiffusion n) -> _ostream 
13580     __lshift__(_ostream out, TAMDParticle n) -> _ostream 
13581     __lshift__(_ostream out, Charged n) -> _ostream 
13582     __lshift__(_ostream out, Domain n) -> _ostream 
13583     __lshift__(_ostream out, LennardJones n) -> _ostream 
13584     __lshift__(_ostream out, LennardJonesTyped n) -> _ostream 
13585     __lshift__(_ostream out, Fragment n) -> _ostream 
13586     __lshift__(_ostream out, SecondaryStructureResidue n) -> _ostream 
13587     __lshift__(_ostream out, Atom n) -> _ostream 
13588     __lshift__(_ostream out, Residue n) -> _ostream 
13589     __lshift__(_ostream out, Representation n) -> _ostream 
13590     __lshift__(_ostream out, State n) -> _ostream 
13591     __lshift__(_ostream out, Molecule n) -> _ostream 
13592     __lshift__(_ostream out, Copy n) -> _ostream 
13593     __lshift__(_ostream out, Chain n) -> _ostream 
13594     __lshift__(_ostream out, StructureSource n) -> _ostream 
13596     return _IMP_atom.__lshift__(*args)
 
13598     r"""Proxy of C++ IMP::atom::HelixRestraint class.""" 
13600     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13602     def __init__(self, rs, ideal=True):
 
13603         r"""__init__(HelixRestraint self, IMP::atom::Residues rs, bool ideal=True) -> HelixRestraint""" 
13604         _IMP_atom.HelixRestraint_swiginit(self, _IMP_atom.new_HelixRestraint(rs, ideal))
 
13606     def get_number_of_bonds(self):
 
13607         r"""get_number_of_bonds(HelixRestraint self) -> int""" 
13608         return _IMP_atom.HelixRestraint_get_number_of_bonds(self)
 
13610     def get_number_of_dihedrals(self):
 
13611         r"""get_number_of_dihedrals(HelixRestraint self) -> int""" 
13612         return _IMP_atom.HelixRestraint_get_number_of_dihedrals(self)
 
13614     def do_get_inputs(self):
 
13615         r"""do_get_inputs(HelixRestraint self) -> IMP::ModelObjectsTemp""" 
13616         return _IMP_atom.HelixRestraint_do_get_inputs(self)
 
13618     def get_version_info(self):
 
13619         r"""get_version_info(HelixRestraint self) -> VersionInfo""" 
13620         return _IMP_atom.HelixRestraint_get_version_info(self)
 
13621     __swig_destroy__ = _IMP_atom.delete_HelixRestraint
 
13624         r"""__str__(HelixRestraint self) -> std::string""" 
13625         return _IMP_atom.HelixRestraint___str__(self)
 
13627     def __repr__(self):
 
13628         r"""__repr__(HelixRestraint self) -> std::string""" 
13629         return _IMP_atom.HelixRestraint___repr__(self)
 
13633        return _object_cast_to_HelixRestraint(o)
 
13637 _IMP_atom.HelixRestraint_swigregister(HelixRestraint)
 
13640     r"""get_transformation_aligning_first_to_second(Selection s1, Selection s2) -> Transformation3D""" 
13641     return _IMP_atom.get_transformation_aligning_first_to_second(s1, s2)
 
13644     r"""show_molecular_hierarchy(Hierarchy h, _ostream out=std::cout) -> _ostream""" 
13645     return _IMP_atom.show_molecular_hierarchy(*args)
 
13646 class CHARMMBond(object):
 
13647     r"""Proxy of C++ IMP::atom::CHARMMConnection< 2 > class.""" 
13649     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13650     __repr__ = _swig_repr
 
13652     def __init__(self, atoms):
 
13653         r"""__init__(CHARMMBond self, IMP::Strings const & atoms) -> CHARMMBond""" 
13654         _IMP_atom.CHARMMBond_swiginit(self, _IMP_atom.new_CHARMMBond(atoms))
 
13656     def get_endpoint(self, i):
 
13657         r"""get_endpoint(CHARMMBond self, unsigned int i) -> CHARMMBondEndpoint""" 
13658         return _IMP_atom.CHARMMBond_get_endpoint(self, i)
 
13660     def get_contains_atom(self, name):
 
13661         r"""get_contains_atom(CHARMMBond self, std::string name) -> bool""" 
13662         return _IMP_atom.CHARMMBond_get_contains_atom(self, name)
 
13664     def show(self, *args):
 
13665         r"""show(CHARMMBond self, _ostream out=std::cout)""" 
13666         return _IMP_atom.CHARMMBond_show(self, *args)
 
13667     __swig_destroy__ = _IMP_atom.delete_CHARMMBond
 
13670 _IMP_atom.CHARMMBond_swigregister(CHARMMBond)
 
13671 class CHARMMAngle(object):
 
13672     r"""Proxy of C++ IMP::atom::CHARMMConnection< 3 > class.""" 
13674     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13675     __repr__ = _swig_repr
 
13677     def __init__(self, atoms):
 
13678         r"""__init__(CHARMMAngle self, IMP::Strings const & atoms) -> CHARMMAngle""" 
13679         _IMP_atom.CHARMMAngle_swiginit(self, _IMP_atom.new_CHARMMAngle(atoms))
 
13681     def get_endpoint(self, i):
 
13682         r"""get_endpoint(CHARMMAngle self, unsigned int i) -> CHARMMBondEndpoint""" 
13683         return _IMP_atom.CHARMMAngle_get_endpoint(self, i)
 
13685     def get_contains_atom(self, name):
 
13686         r"""get_contains_atom(CHARMMAngle self, std::string name) -> bool""" 
13687         return _IMP_atom.CHARMMAngle_get_contains_atom(self, name)
 
13689     def show(self, *args):
 
13690         r"""show(CHARMMAngle self, _ostream out=std::cout)""" 
13691         return _IMP_atom.CHARMMAngle_show(self, *args)
 
13692     __swig_destroy__ = _IMP_atom.delete_CHARMMAngle
 
13695 _IMP_atom.CHARMMAngle_swigregister(CHARMMAngle)
 
13697 def _get_native_overlap_cpp(m1, m2, threshold):
 
13698     r"""_get_native_overlap_cpp(IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & m1, IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & m2, double threshold) -> double""" 
13699     return _IMP_atom._get_native_overlap_cpp(m1, m2, threshold)
 
13701 def _get_drmsd_cpp(m0, m1):
 
13702     r"""_get_drmsd_cpp(IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & m0, IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & m1) -> double""" 
13703     return _IMP_atom._get_drmsd_cpp(m0, m1)
 
13705 def _get_drmsd_Q_cpp(m0, m1, threshold):
 
13706     r"""_get_drmsd_Q_cpp(IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & m0, IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & m1, double threshold) -> double""" 
13707     return _IMP_atom._get_drmsd_Q_cpp(m0, m1, threshold)
 
13709 def _get_drms_cpp(m1, m2):
 
13710     r"""_get_drms_cpp(IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & m1, IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & m2) -> double""" 
13711     return _IMP_atom._get_drms_cpp(m1, m2)
 
13713 def _get_rigid_bodies_drms_cpp(m1, m2, ranges):
 
13714     r"""_get_rigid_bodies_drms_cpp(IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & m1, IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & m2, IMP::IntRanges const & ranges) -> double""" 
13715     return _IMP_atom._get_rigid_bodies_drms_cpp(m1, m2, ranges)
 
13718    va= [IMP.algebra.get_vector(x) 
for x 
in a]
 
13719    vb= [IMP.algebra.get_vector(x) 
for x 
in b]
 
13720    return _get_native_overlap_cpp(va, vb, d)
 
13723    va= [IMP.algebra.get_vector(x) 
for x 
in a]
 
13724    vb= [IMP.algebra.get_vector(x) 
for x 
in b]
 
13725    return _get_drmsd_cpp(va, vb)
 
13728    va= [IMP.algebra.get_vector(x) 
for x 
in a]
 
13729    vb= [IMP.algebra.get_vector(x) 
for x 
in b]
 
13730    return _get_drms_cpp(va, vb)
 
13733    va= [IMP.algebra.get_vector(x) 
for x 
in a]
 
13734    vb= [IMP.algebra.get_vector(x) 
for x 
in b]
 
13735    return _get_drmsd_Q_cpp(va, vb, t)
 
13738     va= [IMP.algebra.get_vector(x) 
for x 
in a]
 
13739     vb= [IMP.algebra.get_vector(x) 
for x 
in b]
 
13741     return _get_rigid_bodies_drms_cpp(va, vb, ranges)
 
13745     r"""Proxy of C++ IMP::atom::LennardJonesTypedPairScore< IMP::atom::SmoothingFunction > class.""" 
13747     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13748     __repr__ = _swig_repr
 
13750     def __init__(self, f):
 
13751         r"""__init__(_LennardJonesTypedPairScore self, SmoothingFunction f) -> _LennardJonesTypedPairScore""" 
13752         _IMP_atom._LennardJonesTypedPairScore_swiginit(self, _IMP_atom.new__LennardJonesTypedPairScore(f))
 
13754     def set_repulsive_weight(self, repulsive_weight):
 
13755         r"""set_repulsive_weight(_LennardJonesTypedPairScore self, double repulsive_weight)""" 
13756         return _IMP_atom._LennardJonesTypedPairScore_set_repulsive_weight(self, repulsive_weight)
 
13758     def get_repulsive_weight(self):
 
13759         r"""get_repulsive_weight(_LennardJonesTypedPairScore self) -> double""" 
13760         return _IMP_atom._LennardJonesTypedPairScore_get_repulsive_weight(self)
 
13762     def set_attractive_weight(self, attractive_weight):
 
13763         r"""set_attractive_weight(_LennardJonesTypedPairScore self, double attractive_weight)""" 
13764         return _IMP_atom._LennardJonesTypedPairScore_set_attractive_weight(self, attractive_weight)
 
13766     def get_attractive_weight(self):
 
13767         r"""get_attractive_weight(_LennardJonesTypedPairScore self) -> double""" 
13768         return _IMP_atom._LennardJonesTypedPairScore_get_attractive_weight(self)
 
13770     def do_get_inputs(self, m, pis):
 
13771         r"""do_get_inputs(_LennardJonesTypedPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
13772         return _IMP_atom._LennardJonesTypedPairScore_do_get_inputs(self, m, pis)
 
13774     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
13775         r"""evaluate_indexes(_LennardJonesTypedPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
13776         return _IMP_atom._LennardJonesTypedPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
13778     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
13779         r"""evaluate_indexes_scores(_LennardJonesTypedPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
13780         return _IMP_atom._LennardJonesTypedPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
13782     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
13783         r"""evaluate_indexes_delta(_LennardJonesTypedPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
13784         return _IMP_atom._LennardJonesTypedPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
13786     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
13787         r"""evaluate_if_good_indexes(_LennardJonesTypedPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
13788         return _IMP_atom._LennardJonesTypedPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
13790     def get_version_info(self):
 
13791         r"""get_version_info(_LennardJonesTypedPairScore self) -> VersionInfo""" 
13792         return _IMP_atom._LennardJonesTypedPairScore_get_version_info(self)
 
13793     __swig_destroy__ = _IMP_atom.delete__LennardJonesTypedPairScore
 
13797        return _object_cast_to__LennardJonesTypedPairScore(o)
 
13801 _IMP_atom._LennardJonesTypedPairScore_swigregister(_LennardJonesTypedPairScore)
 
13803     r"""Proxy of C++ IMP::atom::LennardJonesTypedPairScore< IMP::atom::ForceSwitch > class.""" 
13805     thisown = property(
lambda x: x.this.own(), 
lambda x, v: x.this.own(v), doc=
"The membership flag")
 
13806     __repr__ = _swig_repr
 
13808     def __init__(self, f):
 
13809         r"""__init__(_SwitchedLennardJonesTypedPairScore self, ForceSwitch f) -> _SwitchedLennardJonesTypedPairScore""" 
13810         _IMP_atom._SwitchedLennardJonesTypedPairScore_swiginit(self, _IMP_atom.new__SwitchedLennardJonesTypedPairScore(f))
 
13812     def set_repulsive_weight(self, repulsive_weight):
 
13813         r"""set_repulsive_weight(_SwitchedLennardJonesTypedPairScore self, double repulsive_weight)""" 
13814         return _IMP_atom._SwitchedLennardJonesTypedPairScore_set_repulsive_weight(self, repulsive_weight)
 
13816     def get_repulsive_weight(self):
 
13817         r"""get_repulsive_weight(_SwitchedLennardJonesTypedPairScore self) -> double""" 
13818         return _IMP_atom._SwitchedLennardJonesTypedPairScore_get_repulsive_weight(self)
 
13820     def set_attractive_weight(self, attractive_weight):
 
13821         r"""set_attractive_weight(_SwitchedLennardJonesTypedPairScore self, double attractive_weight)""" 
13822         return _IMP_atom._SwitchedLennardJonesTypedPairScore_set_attractive_weight(self, attractive_weight)
 
13824     def get_attractive_weight(self):
 
13825         r"""get_attractive_weight(_SwitchedLennardJonesTypedPairScore self) -> double""" 
13826         return _IMP_atom._SwitchedLennardJonesTypedPairScore_get_attractive_weight(self)
 
13828     def do_get_inputs(self, m, pis):
 
13829         r"""do_get_inputs(_SwitchedLennardJonesTypedPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp""" 
13830         return _IMP_atom._SwitchedLennardJonesTypedPairScore_do_get_inputs(self, m, pis)
 
13832     def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
 
13833         r"""evaluate_indexes(_SwitchedLennardJonesTypedPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
13834         return _IMP_atom._SwitchedLennardJonesTypedPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
 
13836     def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
 
13837         r"""evaluate_indexes_scores(_SwitchedLennardJonesTypedPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
13838         return _IMP_atom._SwitchedLennardJonesTypedPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
 
13840     def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
 
13841         r"""evaluate_indexes_delta(_SwitchedLennardJonesTypedPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score, bool all_indexes_checked=False) -> double""" 
13842         return _IMP_atom._SwitchedLennardJonesTypedPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
 
13844     def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
 
13845         r"""evaluate_if_good_indexes(_SwitchedLennardJonesTypedPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double""" 
13846         return _IMP_atom._SwitchedLennardJonesTypedPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
 
13848     def get_version_info(self):
 
13849         r"""get_version_info(_SwitchedLennardJonesTypedPairScore self) -> VersionInfo""" 
13850         return _IMP_atom._SwitchedLennardJonesTypedPairScore_get_version_info(self)
 
13851     __swig_destroy__ = _IMP_atom.delete__SwitchedLennardJonesTypedPairScore
 
13855        return _object_cast_to__SwitchedLennardJonesTypedPairScore(o)
 
13859 _IMP_atom._SwitchedLennardJonesTypedPairScore_swigregister(_SwitchedLennardJonesTypedPairScore)
 
13861 class LennardJonesTypedPairScore(_SwitchedLennardJonesTypedPairScore.__bases__[0]):
 
13862     def __init__(self, f):
 
13863         if isinstance(f, ForceSwitch):
 
13864             p = _SwitchedLennardJonesTypedPairScore(f)
 
13866             p = _LennardJonesTypedPairScore(f)
 
13867         self.__dict__[
'_proxied'] = p
 
13868     def __getattr__(self, key):
 
13869         return getattr(self._proxied, key)
 
13870     def __setattr__(self, key, val):
 
13871         return setattr(self._proxied, key, val)
 
13876             p = _SwitchedLennardJonesTypedPairScore.get_from(o)
 
13878             p = _LennardJonesTypedPairScore.get_from(o)
 
13879         obj = object.__new__(LennardJonesTypedPairScore)
 
13880         obj.__dict__[
'_proxied'] = p
 
13885     r"""get_module_version() -> std::string const""" 
13886     return _IMP_atom.get_module_version()
 
13889     r"""get_example_path(std::string fname) -> std::string""" 
13890     return _IMP_atom.get_example_path(fname)
 
13893     r"""get_data_path(std::string fname) -> std::string""" 
13894     return _IMP_atom.get_data_path(fname)
 
13896 from . 
import _version_check
 
A base class for geometry contained in particles. 
 
A base class for modifiers of ParticlesTemp. 
 
AtomType add_atom_type(std::string name, Element e)
Create a new AtomType. 
 
double get_kt(double T)
Return kT for a given temperature in units of [kcal/mol]. 
 
double get_volume_from_residue_type(ResidueType rt)
Return an estimate for the volume of a given residue. 
 
Abstract class for scoring object(s) of type ParticleIndexPair. 
 
A shared container for Pairs. 
 
CHARMMParameters * get_heavy_atom_CHARMM_parameters()
 
double get_einstein_rotational_diffusion_coefficient(double r, double temp=-1)
 
Hierarchy read_mmcif(TextInput input, Model *model, PDBSelector *selector=get_default_pdb_selector(), bool select_first_model=true)
Read all the molecules in the first model of the mmCIF file. 
 
Float get_secondary_structure_match_score(SecondaryStructureResidue ssr1, SecondaryStructureResidue ssr2)
Compares the secondary structure probabilities of two residues. 
 
double get_rigid_bodies_drms(const Vector3DsOrXYZs0 &m1, const Vector3DsOrXYZs1 &m2, const IMP::IntRanges &ranges)
DRMS between two sets of rigid bodies. 
 
Chain get_chain(Hierarchy h)
Get the containing chain or Chain() if there is none. 
 
CheckLevel get_check_level()
Get the current audit mode. 
 
Vector< AtomTypes > get_chi_dihedral_atom_types(ResidueType rt)
 
Atoms get_phi_dihedral_atoms(Residue rd)
Return the atoms comprising the phi dihedral. 
 
void show_molecular_hierarchy(Hierarchy h)
Print out the molecular hierarchy. 
 
double get_drms(const Vector3DsOrXYZs0 &m1, const Vector3DsOrXYZs1 &m2)
 
Hierarchies read_multimodel_pdb_any(TextInput input, Model *model, PDBSelector *selector=get_default_pdb_selector())
Read all models from the PDB-like file. 
 
void remove_charmm_untyped_atoms(Hierarchy hierarchy)
Remove any atom from the Hierarchy that does not have a CHARMM type. 
 
Hierarchies read_multimodel_bcif(TextInput input, Model *model, PDBSelector *selector=get_default_pdb_selector())
Read all models from the BinaryCIF file. 
 
double get_protein_density_from_reference(ProteinDensityReference densityReference)
 
void show_with_representations(Hierarchy h, std::ostream &out=std::cout)
Traverse through the tree and show atom info, including representations. 
 
Hierarchy create_simplified_from_volume(Hierarchy h, double resolution)
 
void add_particles(RMF::FileHandle fh, const ParticlesTemp &hs)
 
double get_spring_constant_in_femto_newtons_per_angstrom(double k_in_kcal_per_mol_per_angstrom_square)
Convert spring constant from kcal/mol/A^2 to femtonewton/A. 
 
double get_native_overlap(const Vector3DsOrXYZs0 &m1, const Vector3DsOrXYZs1 &m2, double threshold)
Computes the native overlap between two sets of 3D points. 
 
Various classes to hold sets of particles. 
 
The base class for geometry. 
 
IMP::core::RigidBody create_compatible_rigid_body(Hierarchy h, Hierarchy reference)
Rigidify a molecule or collection of molecules. 
 
Hierarchy create_simplified_along_backbone(Hierarchy input, int num_res, bool keep_detailed=false)
 
double get_drmsd(const Vector3DsOrXYZs0 &m0, const Vector3DsOrXYZs1 &m1)
Calculate distance the root mean square deviation between two sets of 3D points. 
 
Vector< VectorD< D > > get_vertices(const BoundingBoxD< D > &bb)
Return a list of the 2^D bounding points for the bounding box. 
 
double get_mass(ResidueType c)
Get the mass from the residue type. 
 
void add_radii(Hierarchy d, const ForceFieldParameters *ffp=get_all_atom_CHARMM_parameters(), FloatKey radius_key=FloatKey("radius"))
Add vdW radius from given force field. 
 
A base class for geometry from a set of particles. 
 
double get_dihedral(XYZ a, XYZ b, XYZ c, XYZ d)
Compute the dihedral angle (in radians) between the four particles. 
 
double get_mass_from_number_of_residues(unsigned int num_aa)
Estimate the mass of a protein from the number of amino acids. 
 
Make CGAL functionality available to IMP. 
 
Provenance create_clone(Provenance p)
Clone provenance (including previous provenance) 
 
Atoms get_omega_dihedral_atoms(Residue rd)
Return the atoms comprising the omega dihedral. 
 
ParticleIndexQuads get_chi_dihedral_particle_indexes(Residue rd)
 
void write_pdb(const Selection &mhd, TextOutput out, unsigned int model=1)
 
void setup_as_approximation(Particle *h, const ParticlesTemp &other)
 
ParticlesTemp get_particles(Model *m, const ParticleIndexes &ps)
Get the particles from a list of indexes. 
 
double get_mass_from_volume(double v, ProteinDensityReference ref=ALBER)
Estimate the mass of a protein from its volume. 
 
void destroy_bond(Bond b)
Destroy the bond connecting two particles. 
 
HierarchyTree get_hierarchy_tree(Hierarchy h)
Get a graph for the passed Hierarchy. 
 
void add_particle(RMF::FileHandle fh, Particle *hs)
 
Atoms get_charmm_untyped_atoms(Hierarchy hierarchy)
Get all atoms in the Hierarchy that do not have CHARMM types. 
 
std::string get_data_path(std::string file_name)
Return the full path to one of this module's data files. 
 
char get_one_letter_code(ResidueType c)
Get the 1-letter amino acid code from the residue type. 
 
Atom get_atom(Residue rd, AtomType at)
Return a particle atom from the residue. 
 
Composable functors to implement scores via compile-time composition. 
 
double get_angle(const Line3D &a, const Line3D &b)
Get angle in radians between two lines around their closest points. 
 
Hierarchy read_bcif(TextInput input, Model *model, PDBSelector *selector=get_default_pdb_selector(), bool select_first_model=true)
Read all the molecules in the first model of the BinaryCIF file. 
 
Restraint * create_excluded_volume_restraint(const Hierarchies &hs, double resolution=-1)
 
Bond create_custom_bond(Bonded a, Bonded b, Float length, Float stiffness=-1)
Connect the two wrapped particles by a custom bond. 
 
void write_pdb_of_c_alphas(const Selection &mhd, TextOutput out, unsigned int model=1)
Write a hierarchy to a PDB as C_alpha atoms. 
 
Hierarchies read_multimodel_mmcif(TextInput input, Model *model, PDBSelector *selector=get_default_pdb_selector())
Read all models from the mmCIF file. 
 
double get_kd(double na, double nb, double nab, double volume)
 
double get_diffusion_angle(double D, double dtfs)
 
IMP::algebra::Transformation3D get_transformation_aligning_first_to_second(const Vector3DsOrXYZs0 &source, const Vector3DsOrXYZs1 &target)
Compute the rigid transform bringing the first point set to the second. 
 
bool get_atom_type_exists(std::string name)
Return true if that atom type already exists. 
 
Hierarchy read_pdb_any(TextInput input, Model *model, PDBSelector *selector=get_default_pdb_selector(), bool select_first_model=true)
Read all the molecules in the first model of the PDB-like file. 
 
double get_volume(const BoundingBoxD< D > &bb)
See BoundingBoxD. 
 
FloatPair get_component_placement_score(const core::XYZs &ref1, const core::XYZs &ref2, const core::XYZs &mdl1, const core::XYZs &mdl2)
Measure the difference between two placements of the same set of points. 
 
void transform(Hierarchy h, const algebra::Transformation3D &tr)
Transform a hierarchy. This is aware of rigid bodies. 
 
core::XYZR create_cover(const Selection &s, std::string name=std::string())
 
double get_volume_from_mass(double m, ProteinDensityReference ref=ALBER)
Estimate the volume of a protein from its mass. 
 
Ints get_index(const ParticlesTemp &particles, const Subset &subset, const Subsets &excluded)
 
Common base class for heavy weight IMP objects. 
 
Hierarchy create_protein(Model *m, std::string name, double target_radius, int number_of_residues, int first_residue_index=0, double volume=-1)
Create a coarse grained molecule. 
 
Atoms get_psi_dihedral_atoms(Residue rd)
Return the atoms comprising the psi dihedral. 
 
Abstract class for scoring object(s) of type ParticleIndex. 
 
ParticlesTemp get_order(const Subset &s, const SubsetFilterTables &sft)
 
Bond create_bond(Bonded a, Bonded b, Int t)
Connect the two wrapped particles by a bond. 
 
double get_rotational_diffusion_coefficient(const algebra::Rotation3Ds &orientations, double dt)
 
Base class for all optimizers. 
 
double get_rmsd(const Vector3DsOrXYZs0 &m1, const Vector3DsOrXYZs1 &m2)
 
Hierarchy get_previous_residue(Residue rd)
Return the residue from the same chain with one lower index. 
 
SecondaryStructureResidue setup_coarse_secondary_structure_residue(const Particles &ssr_ps, Model *mdl, bool winner_takes_all_per_res=false)
Coarsen some SecondaryStructureResidues. 
 
double get_molarity(double n, double volume)
 
boost::graph HierarchyTree
A graph for representing a Hierarchy so you can view it nicely. 
 
Hierarchy read_mol2(TextInput mol2_file, Model *model, Mol2Selector *mol2sel=nullptr)
Create a hierarchy from a Mol2 file. 
 
Version and module information for Objects. 
 
double get_radius_of_gyration(const Vector3Ds &ps)
Return the radius of gyration of a set of points. 
 
A decorator for a particle with x,y,z coordinates. 
 
void add_loop_statistical_score_data(atom::Hierarchy h)
 
Restraint * create_internal_connectivity_restraint(const Selection &s, double k, std::string name="Connectivity%1%")
Create a restraint connecting the selection. 
 
void write_mol2(Hierarchy rhd, TextOutput file_name)
Write a ligand hierarchy as a mol2 file. 
 
Hierarchy read_pdb(TextInput input, Model *model, PDBSelector *selector=get_default_pdb_selector(), bool select_first_model=true)
Read all the molecules in the first model of the PDB file. 
 
int get_state_index(Hierarchy h)
Walk up the hierarchy to find the current state. 
 
SecondaryStructureResidues setup_coarse_secondary_structure_residues(const Particles &ssr_ps, Model *mdl, int coarse_factor, int start_res_num, bool winner_takes_all_per_res=false)
 
void add_protein_ligand_score_data(Hierarchy h)
 
Interface to specialized Particle types (e.g. atoms) 
 
std::string get_molecule_name(Hierarchy h)
 
std::ostream & show(Hierarchy h, std::ostream &out=std::cout)
Print the hierarchy using a given decorator to display each node. 
 
Vector< Atoms > get_chi_dihedral_atoms(Residue rd)
 
double get_pairwise_rmsd_score(const core::XYZs &ref1, const core::XYZs &ref2, const core::XYZs &mdl1, const core::XYZs &mdl2)
Measure the RMSD between two placements of the same set of points. 
 
double get_force_in_femto_newtons(double force_in_kcal_per_mol_per_angstrom)
Convert force from kcal/mol/A to femtonewtons. 
 
Basic functionality that is expected to be used by a wide variety of IMP users. 
 
Abstract predicate function. 
 
General purpose algebraic and geometric methods that are expected to be used by a wide variety of IMP...
 
Hierarchies read_multimodel_pdb(TextInput input, Model *model, PDBSelector *selector=get_default_pdb_selector())
 
std::string get_example_path(std::string file_name)
Return the full path to one of this module's example files. 
 
Residue get_residue(Atom d, bool nothrow=false)
Return the Residue containing this atom. 
 
Shared optimizer state that is invoked upon commitment of new coordinates. 
 
Hierarchy get_root(Hierarchy h)
Return the root of the hierarchy. 
 
Abstract class to implement hierarchical methods. 
 
void add_dope_score_data(atom::Hierarchy h)
 
Bond get_bond(Bonded a, Bonded b)
Get the bond between two particles. 
 
std::string show_graphviz(Graph g)
 
Restraint * create_distance_restraint(const Selection &n0, const Selection &n1, double x0, double k, std::string name="Distance%1%")
 
Representation get_representation(Hierarchy h, bool nothrow=false)
Return the Representation object containing this hierarchy. 
 
FloatPair get_placement_score(const core::XYZs &source, const core::XYZs &target)
Measure the difference between two placements of the same set of points. 
 
void write_multimodel_pdb(const Hierarchies &mhd, TextOutput out)
 
int get_copy_index(Hierarchy h)
Walk up the hierarchy to find the current copy index. 
 
A decorator for helping deal with a generalized hierarchy. 
 
double get_maximum_time_step_estimate(BrownianDynamics *bd)
 
double get_diffusion_coefficient(const algebra::Vector3Ds &displacements, double dt)
 
double get_surface_area(const Geometry &)
Compute the surface area of any volumetric object. 
 
double get_resolution(Model *m, ParticleIndex pi)
Estimate the resolution of the hierarchy as used by Representation. 
 
double get_rmsd_transforming_first(const Transformation3D &tr, const Vector3DsOrXYZs0 &m1, const Vector3DsOrXYZs1 &m2)
Calculate the root mean square deviation between two sets of 3D points. 
 
Hierarchy create_simplified_assembly_from_volume(Hierarchy h, double resolution)
 
Output IMP model data in various file formats. 
 
std::string get_chain_id(Hierarchy h)
Walk up the hierarchy to determine the chain id. 
 
IMP::core::RigidBody create_rigid_body(const Hierarchies &h, std::string name=std::string("created rigid body"))
Rigidify a molecule or collection of molecules. 
 
CHARMMParameters * get_all_atom_CHARMM_parameters()
 
Hierarchies get_leaves(const Selection &h)
 
double get_einstein_diffusion_coefficient(double r, double temp=-1)
 
double get_drmsd_Q(const Vector3DsOrXYZs0 &m0, const Vector3DsOrXYZs1 &m1, double threshold)
 
DensityMap * get_segment(DensityMap *map_to_segment, int nx_start, int nx_end, int ny_start, int ny_end, int nz_start, int nz_end)
Get a segment of the map according to xyz indexes. 
 
Applies a PairScore to each Pair in a list. 
 
Hierarchy get_next_residue(Residue rd)
Return the residue from the same chain with one higher index. 
 
Restraint * create_connectivity_restraint(const Selections &s, double k, std::string name="Connectivity%1%")
Create a restraint connecting the selections. 
 
void add_bonds(Hierarchy d, const ForceFieldParameters *ffp=get_all_atom_CHARMM_parameters())
Add bonds using definitions from given force field parameters. 
 
void set_check_level(CheckLevel tf)
Control runtime checks in the code. 
 
double get_diffusion_length(double D, double t)
 
std::string get_module_version()
Return the version of this module, as a string. 
 
A restraint is a term in an IMP ScoringFunction. 
 
A decorator for a particle with x,y,z coordinates and a radius.