IMP logo
IMP Reference Guide  develop.0cdeb1214d,2025/11/22
The Integrative Modeling Platform
atom/__init__.py
1 # This file was automatically generated by SWIG (https://www.swig.org).
2 # Version 4.3.1
3 #
4 # Do not make changes to this file unless you know what you are doing - modify
5 # the SWIG interface file instead.
6 
7 
8 # This wrapper is part of IMP,
9 # Copyright 2007-2025 IMP Inventors. All rights reserved.
10 
11 
12 
13 
14 from sys import version_info as _swig_python_version_info
15 import _IMP_atom
16 
17 try:
18  import builtins as __builtin__
19 except ImportError:
20  import __builtin__
21 
22 def _swig_repr(self):
23  try:
24  strthis = "proxy of " + self.this.__repr__()
25  except __builtin__.Exception:
26  strthis = ""
27  return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
28 
29 
30 def _swig_setattr_nondynamic_instance_variable(set):
31  def set_instance_attr(self, name, value):
32  if name == "this":
33  set(self, name, value)
34  elif name == "thisown":
35  self.this.own(value)
36  elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
37  set(self, name, value)
38  else:
39  raise AttributeError("You cannot add instance attributes to %s" % self)
40  return set_instance_attr
41 
42 
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):
46  set(cls, name, value)
47  else:
48  raise AttributeError("You cannot add class attributes to %s" % cls)
49  return set_class_attr
50 
51 
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"""
54  def wrapper(cls):
55  return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
56  return wrapper
57 
58 
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__)
62 
63 
64 import weakref
65 
66 class IMP_ATOM_SwigPyIterator(object):
67  r"""Proxy of C++ swig::IMP_ATOM_SwigPyIterator class."""
68 
69  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
70 
71  def __init__(self, *args, **kwargs):
72  raise AttributeError("No constructor defined - class is abstract")
73  __repr__ = _swig_repr
74  __swig_destroy__ = _IMP_atom.delete_IMP_ATOM_SwigPyIterator
75 
76  def value(self):
77  r"""value(IMP_ATOM_SwigPyIterator self) -> PyObject *"""
78  return _IMP_atom.IMP_ATOM_SwigPyIterator_value(self)
79 
80  def incr(self, n=1):
81  r"""incr(IMP_ATOM_SwigPyIterator self, size_t n=1) -> IMP_ATOM_SwigPyIterator"""
82  return _IMP_atom.IMP_ATOM_SwigPyIterator_incr(self, n)
83 
84  def decr(self, n=1):
85  r"""decr(IMP_ATOM_SwigPyIterator self, size_t n=1) -> IMP_ATOM_SwigPyIterator"""
86  return _IMP_atom.IMP_ATOM_SwigPyIterator_decr(self, n)
87 
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)
91 
92  def equal(self, x):
93  r"""equal(IMP_ATOM_SwigPyIterator self, IMP_ATOM_SwigPyIterator x) -> bool"""
94  return _IMP_atom.IMP_ATOM_SwigPyIterator_equal(self, x)
95 
96  def copy(self):
97  r"""copy(IMP_ATOM_SwigPyIterator self) -> IMP_ATOM_SwigPyIterator"""
98  return _IMP_atom.IMP_ATOM_SwigPyIterator_copy(self)
99 
100  def next(self):
101  r"""next(IMP_ATOM_SwigPyIterator self) -> PyObject *"""
102  return _IMP_atom.IMP_ATOM_SwigPyIterator_next(self)
103 
104  def __next__(self):
105  r"""__next__(IMP_ATOM_SwigPyIterator self) -> PyObject *"""
106  return _IMP_atom.IMP_ATOM_SwigPyIterator___next__(self)
107 
108  def previous(self):
109  r"""previous(IMP_ATOM_SwigPyIterator self) -> PyObject *"""
110  return _IMP_atom.IMP_ATOM_SwigPyIterator_previous(self)
111 
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)
115 
116  def __eq__(self, x):
117  r"""__eq__(IMP_ATOM_SwigPyIterator self, IMP_ATOM_SwigPyIterator x) -> bool"""
118  return _IMP_atom.IMP_ATOM_SwigPyIterator___eq__(self, x)
119 
120  def __ne__(self, x):
121  r"""__ne__(IMP_ATOM_SwigPyIterator self, IMP_ATOM_SwigPyIterator x) -> bool"""
122  return _IMP_atom.IMP_ATOM_SwigPyIterator___ne__(self, x)
123 
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)
127 
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)
131 
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)
135 
136  def __sub__(self, *args):
137  r"""
138  __sub__(IMP_ATOM_SwigPyIterator self, ptrdiff_t n) -> IMP_ATOM_SwigPyIterator
139  __sub__(IMP_ATOM_SwigPyIterator self, IMP_ATOM_SwigPyIterator x) -> ptrdiff_t
140  """
141  return _IMP_atom.IMP_ATOM_SwigPyIterator___sub__(self, *args)
142  def __iter__(self):
143  return self
144 
145 # Register IMP_ATOM_SwigPyIterator in _IMP_atom:
146 _IMP_atom.IMP_ATOM_SwigPyIterator_swigregister(IMP_ATOM_SwigPyIterator)
147 
148 _value_types=[]
149 _object_types=[]
150 _raii_types=[]
151 _plural_types=[]
152 
153 IMP_DEBUG = _IMP_atom.IMP_DEBUG
154 
155 IMP_RELEASE = _IMP_atom.IMP_RELEASE
156 
157 IMP_SILENT = _IMP_atom.IMP_SILENT
158 
159 IMP_PROGRESS = _IMP_atom.IMP_PROGRESS
160 
161 IMP_TERSE = _IMP_atom.IMP_TERSE
162 
163 IMP_VERBOSE = _IMP_atom.IMP_VERBOSE
164 
165 IMP_MEMORY = _IMP_atom.IMP_MEMORY
166 
167 IMP_NONE = _IMP_atom.IMP_NONE
168 
169 IMP_USAGE = _IMP_atom.IMP_USAGE
170 
171 IMP_INTERNAL = _IMP_atom.IMP_INTERNAL
172 
173 IMP_KERNEL_HAS_LOG4CXX = _IMP_atom.IMP_KERNEL_HAS_LOG4CXX
174 
175 IMP_COMPILER_HAS_CEREAL_RAW_POINTER = _IMP_atom.IMP_COMPILER_HAS_CEREAL_RAW_POINTER
176 
177 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_atom.IMP_COMPILER_HAS_DEBUG_VECTOR
178 
179 IMP_COMPILER_HAS_RANDOM_SHUFFLE = _IMP_atom.IMP_COMPILER_HAS_RANDOM_SHUFFLE
180 
181 IMP_COMPILER_HAS_THREE_WAY = _IMP_atom.IMP_COMPILER_HAS_THREE_WAY
182 
183 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_atom.IMP_KERNEL_HAS_BOOST_RANDOM
184 
185 IMP_KERNEL_HAS_NUMPY = _IMP_atom.IMP_KERNEL_HAS_NUMPY
186 
187 IMP_KERNEL_HAS_BOOST_SYSTEM = _IMP_atom.IMP_KERNEL_HAS_BOOST_SYSTEM
188 
189 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_atom.IMP_KERNEL_HAS_GPERFTOOLS
190 
191 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_atom.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
192 
193 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_atom.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
194 
195 IMPKERNEL_SHOW_WARNINGS = _IMP_atom.IMPKERNEL_SHOW_WARNINGS
196 
197 
198 import sys
199 class _DirectorObjects:
200  """@internal Simple class to keep references to director objects
201  to prevent premature deletion."""
202  def __init__(self):
203  self._objects = []
204  def register(self, obj):
205  """Take a reference to a director object; will only work for
206  refcounted C++ classes"""
207  if hasattr(obj, 'get_ref_count'):
208  self._objects.append(obj)
209  def cleanup(self):
210  """Only drop our reference and allow cleanup by Python if no other
211  Python references exist (we hold 3 references: one in self._objects,
212  one in x, and one in the argument list for getrefcount) *and* no
213  other C++ references exist (the Python object always holds one)"""
214  objs = [x for x in self._objects if sys.getrefcount(x) > 3 \
215  or x.get_ref_count() > 1]
216 # Do in two steps so the references are kept until the end of the
217 # function (deleting references may trigger a fresh call to this method)
218  self._objects = objs
219  def get_object_count(self):
220  """Get number of director objects (useful for testing only)"""
221  return len(self._objects)
222 _director_objects = _DirectorObjects()
223 
224 class _ostream(object):
225  r"""Proxy of C++ std::ostream class."""
226 
227  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
228 
229  def __init__(self, *args, **kwargs):
230  raise AttributeError("No constructor defined")
231  __repr__ = _swig_repr
232 
233  def write(self, osa_buf):
234  r"""write(_ostream self, char const * osa_buf)"""
235  return _IMP_atom._ostream_write(self, osa_buf)
236 
237 # Register _ostream in _IMP_atom:
238 _IMP_atom._ostream_swigregister(_ostream)
239 IMP_C_OPEN_BINARY = _IMP_atom.IMP_C_OPEN_BINARY
240 
241 import IMP
242 IMP_CGAL_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_CGAL_HAS_BOOST_FILESYSTEM
243 
244 IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS
245 
246 IMP_CGAL_HAS_BOOST_RANDOM = _IMP_atom.IMP_CGAL_HAS_BOOST_RANDOM
247 
248 IMP_CGAL_HAS_NUMPY = _IMP_atom.IMP_CGAL_HAS_NUMPY
249 
250 IMPCGAL_SHOW_WARNINGS = _IMP_atom.IMPCGAL_SHOW_WARNINGS
251 
252 import IMP.cgal
253 IMP_ALGEBRA_HAS_IMP_CGAL = _IMP_atom.IMP_ALGEBRA_HAS_IMP_CGAL
254 
255 IMP_ALGEBRA_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_ALGEBRA_HAS_BOOST_FILESYSTEM
256 
257 IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS
258 
259 IMP_ALGEBRA_HAS_BOOST_RANDOM = _IMP_atom.IMP_ALGEBRA_HAS_BOOST_RANDOM
260 
261 IMP_ALGEBRA_HAS_CGAL = _IMP_atom.IMP_ALGEBRA_HAS_CGAL
262 
263 IMP_ALGEBRA_HAS_NUMPY = _IMP_atom.IMP_ALGEBRA_HAS_NUMPY
264 
265 IMP_ALGEBRA_HAS_ANN = _IMP_atom.IMP_ALGEBRA_HAS_ANN
266 
267 IMPALGEBRA_SHOW_WARNINGS = _IMP_atom.IMPALGEBRA_SHOW_WARNINGS
268 
269 import IMP.algebra
270 IMP_DISPLAY_HAS_IMP_CGAL = _IMP_atom.IMP_DISPLAY_HAS_IMP_CGAL
271 
272 IMP_DISPLAY_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_DISPLAY_HAS_BOOST_FILESYSTEM
273 
274 IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS
275 
276 IMP_DISPLAY_HAS_BOOST_RANDOM = _IMP_atom.IMP_DISPLAY_HAS_BOOST_RANDOM
277 
278 IMP_DISPLAY_HAS_CGAL = _IMP_atom.IMP_DISPLAY_HAS_CGAL
279 
280 IMP_DISPLAY_HAS_NUMPY = _IMP_atom.IMP_DISPLAY_HAS_NUMPY
281 
282 IMPDISPLAY_SHOW_WARNINGS = _IMP_atom.IMPDISPLAY_SHOW_WARNINGS
283 
284 import IMP.display
285 IMP_SCORE_FUNCTOR_HAS_IMP_CGAL = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_IMP_CGAL
286 
287 IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM
288 
289 IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS
290 
291 IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM
292 
293 IMP_SCORE_FUNCTOR_HAS_CGAL = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_CGAL
294 
295 IMP_SCORE_FUNCTOR_HAS_HDF5 = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_HDF5
296 
297 IMP_SCORE_FUNCTOR_HAS_NUMPY = _IMP_atom.IMP_SCORE_FUNCTOR_HAS_NUMPY
298 
299 IMPSCOREFUNCTOR_SHOW_WARNINGS = _IMP_atom.IMPSCOREFUNCTOR_SHOW_WARNINGS
300 
301 import IMP.score_functor
302 IMP_CORE_HAS_IMP_CGAL = _IMP_atom.IMP_CORE_HAS_IMP_CGAL
303 
304 IMP_CORE_HAS_IMP_KERNEL = _IMP_atom.IMP_CORE_HAS_IMP_KERNEL
305 
306 IMP_CORE_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_CORE_HAS_BOOST_FILESYSTEM
307 
308 IMP_CORE_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_CORE_HAS_BOOST_PROGRAMOPTIONS
309 
310 IMP_CORE_HAS_BOOST_RANDOM = _IMP_atom.IMP_CORE_HAS_BOOST_RANDOM
311 
312 IMP_CORE_HAS_CGAL = _IMP_atom.IMP_CORE_HAS_CGAL
313 
314 IMP_CORE_HAS_HDF5 = _IMP_atom.IMP_CORE_HAS_HDF5
315 
316 IMP_CORE_HAS_NUMPY = _IMP_atom.IMP_CORE_HAS_NUMPY
317 
318 IMPCORE_SHOW_WARNINGS = _IMP_atom.IMPCORE_SHOW_WARNINGS
319 
320 import IMP.core
321 IMP_CONTAINER_HAS_IMP_ALGEBRA = _IMP_atom.IMP_CONTAINER_HAS_IMP_ALGEBRA
322 
323 IMP_CONTAINER_HAS_IMP_CGAL = _IMP_atom.IMP_CONTAINER_HAS_IMP_CGAL
324 
325 IMP_CONTAINER_HAS_IMP_DISPLAY = _IMP_atom.IMP_CONTAINER_HAS_IMP_DISPLAY
326 
327 IMP_CONTAINER_HAS_IMP_KERNEL = _IMP_atom.IMP_CONTAINER_HAS_IMP_KERNEL
328 
329 IMP_CONTAINER_HAS_IMP_SCORE_FUNCTOR = _IMP_atom.IMP_CONTAINER_HAS_IMP_SCORE_FUNCTOR
330 
331 IMP_CONTAINER_HAS_BOOST_FILESYSTEM = _IMP_atom.IMP_CONTAINER_HAS_BOOST_FILESYSTEM
332 
333 IMP_CONTAINER_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_CONTAINER_HAS_BOOST_PROGRAMOPTIONS
334 
335 IMP_CONTAINER_HAS_BOOST_RANDOM = _IMP_atom.IMP_CONTAINER_HAS_BOOST_RANDOM
336 
337 IMP_CONTAINER_HAS_CGAL = _IMP_atom.IMP_CONTAINER_HAS_CGAL
338 
339 IMP_CONTAINER_HAS_HDF5 = _IMP_atom.IMP_CONTAINER_HAS_HDF5
340 
341 IMP_CONTAINER_HAS_NUMPY = _IMP_atom.IMP_CONTAINER_HAS_NUMPY
342 
343 IMP_CONTAINER_HAS_PYTHON_IHM = _IMP_atom.IMP_CONTAINER_HAS_PYTHON_IHM
344 
345 IMP_CONTAINER_HAS_GOOGLE_DENSE_HASH_MAP = _IMP_atom.IMP_CONTAINER_HAS_GOOGLE_DENSE_HASH_MAP
346 
347 IMP_CONTAINER_HAS_ROBIN_MAP = _IMP_atom.IMP_CONTAINER_HAS_ROBIN_MAP
348 
349 IMPCONTAINER_SHOW_WARNINGS = _IMP_atom.IMPCONTAINER_SHOW_WARNINGS
350 
351 import IMP.container
352 IMP_ATOM_HAS_IMP_CGAL = _IMP_atom.IMP_ATOM_HAS_IMP_CGAL
353 
354 IMP_ATOM_HAS_IMP_KERNEL = _IMP_atom.IMP_ATOM_HAS_IMP_KERNEL
355 
356 IMP_ATOM_HAS_IMP_SCORE_FUNCTOR = _IMP_atom.IMP_ATOM_HAS_IMP_SCORE_FUNCTOR
357 
358 IMP_ATOM_HAS_BOOST_PROGRAMOPTIONS = _IMP_atom.IMP_ATOM_HAS_BOOST_PROGRAMOPTIONS
359 
360 IMP_ATOM_HAS_BOOST_RANDOM = _IMP_atom.IMP_ATOM_HAS_BOOST_RANDOM
361 
362 IMP_ATOM_HAS_BOOST_REGEX = _IMP_atom.IMP_ATOM_HAS_BOOST_REGEX
363 
364 IMP_ATOM_HAS_CGAL = _IMP_atom.IMP_ATOM_HAS_CGAL
365 
366 IMP_ATOM_HAS_HDF5 = _IMP_atom.IMP_ATOM_HAS_HDF5
367 
368 IMP_ATOM_HAS_NUMPY = _IMP_atom.IMP_ATOM_HAS_NUMPY
369 
370 IMP_ATOM_HAS_PYTHON_IHM = _IMP_atom.IMP_ATOM_HAS_PYTHON_IHM
371 
372 IMPATOM_SHOW_WARNINGS = _IMP_atom.IMPATOM_SHOW_WARNINGS
373 
374 IMP_ATOM_TYPE_INDEX = _IMP_atom.IMP_ATOM_TYPE_INDEX
375 
376 IMP_RESIDUE_TYPE_INDEX = _IMP_atom.IMP_RESIDUE_TYPE_INDEX
377 
378 IMP_HIERARCHY_TYPE_INDEX = _IMP_atom.IMP_HIERARCHY_TYPE_INDEX
379 
380 IMP_CHAIN_TYPE_INDEX = _IMP_atom.IMP_CHAIN_TYPE_INDEX
381 
383  r"""Proxy of C++ IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex > class."""
384 
385  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
386  __repr__ = _swig_repr
387 
388  def __init__(self):
389  r"""__init__(HierarchyTree self) -> HierarchyTree"""
390  _IMP_atom.HierarchyTree_swiginit(self, _IMP_atom.new_HierarchyTree())
391 
392  def get_graph(self):
393  r"""get_graph(HierarchyTree self) -> IMP::atom::HierarchyTree const &"""
394  return _IMP_atom.HierarchyTree_get_graph(self)
395 
396  def get_vertices(self):
397  r"""get_vertices(HierarchyTree self) -> IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptors"""
398  return _IMP_atom.HierarchyTree_get_vertices(self)
399 
400  def get_vertex_name(self, i):
401  r"""get_vertex_name(HierarchyTree self, IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptor i) -> Hierarchy"""
402  return _IMP_atom.HierarchyTree_get_vertex_name(self, i)
403 
404  def get_in_neighbors(self, v):
405  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"""
406  return _IMP_atom.HierarchyTree_get_in_neighbors(self, v)
407 
408  def get_out_neighbors(self, v):
409  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"""
410  return _IMP_atom.HierarchyTree_get_out_neighbors(self, v)
411 
412  def show_graphviz(self, *args):
413  r"""show_graphviz(HierarchyTree self, _ostream out=std::cout)"""
414  return _IMP_atom.HierarchyTree_show_graphviz(self, *args)
415 
416  def get_graphviz_string(self):
417  r"""get_graphviz_string(HierarchyTree self) -> std::string"""
418  return _IMP_atom.HierarchyTree_get_graphviz_string(self)
419 
420  def add_edge(self, v0, v1):
421  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)"""
422  return _IMP_atom.HierarchyTree_add_edge(self, v0, v1)
423 
424  def add_vertex(self, l):
425  r"""add_vertex(HierarchyTree self, Hierarchy l) -> IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptor"""
426  return _IMP_atom.HierarchyTree_add_vertex(self, l)
427 
428  def remove_vertex(self, l):
429  r"""remove_vertex(HierarchyTree self, IMP::internal::BoostDigraph< IMP::atom::HierarchyTree,IMP::atom::Hierarchy,IMP::atom::ShowHierarchyTreeVertex >::VertexDescriptor l)"""
430  return _IMP_atom.HierarchyTree_remove_vertex(self, l)
431  __swig_destroy__ = _IMP_atom.delete_HierarchyTree
432 
433 # Register HierarchyTree in _IMP_atom:
434 _IMP_atom.HierarchyTree_swigregister(HierarchyTree)
435 
436 _value_types.append("HierarchyTree")
437 
438 
439 PDBRecords=list
440 _plural_types.append("PDBRecords")
441 _value_types.append("PDBRecord")
442 
443 
444 _object_types.append("LennardJonesType")
445 
446 
447 def _object_cast_to_LennardJonesType(o):
448  r"""_object_cast_to_LennardJonesType(Object o) -> LennardJonesType"""
449  return _IMP_atom._object_cast_to_LennardJonesType(o)
450 
451 _object_types.append("PDBSelector")
452 
453 
454 def _object_cast_to_PDBSelector(o):
455  r"""_object_cast_to_PDBSelector(Object o) -> PDBSelector"""
456  return _IMP_atom._object_cast_to_PDBSelector(o)
457 
458 def Angles(l=[]):
459  return [Angle(x) for x in l]
460 _plural_types.append("Angles")
461 
462 
463 _value_types.append("Angle")
464 
465 
466 def Atoms(l=[]):
467  return [Atom(x) for x in l]
468 _plural_types.append("Atoms")
469 
470 
471 _value_types.append("Atom")
472 
473 
474 def Bonds(l=[]):
475  return [Bond(x) for x in l]
476 _plural_types.append("Bonds")
477 
478 
479 _value_types.append("Bond")
480 
481 
482 def Bondeds(l=[]):
483  return [Bonded(x) for x in l]
484 _plural_types.append("Bondeds")
485 
486 
487 _value_types.append("Bonded")
488 
489 
490 def CHARMMAtomList(l=[]):
491  return [CHARMMAtom(x) for x in l]
492 _plural_types.append("CHARMMAtomList")
493 
494 
495 _value_types.append("CHARMMAtom")
496 
497 
498 def Chains(l=[]):
499  return [Chain(x) for x in l]
500 _plural_types.append("Chains")
501 
502 
503 _value_types.append("Chain")
504 
505 
506 def CenterOfMasses(l=[]):
507  return [CenterOfMass(x) for x in l]
508 _plural_types.append("CenterOfMasses")
509 
510 
511 _value_types.append("CenterOfMass")
512 
513 
514 def Chargeds(l=[]):
515  return [Charged(x) for x in l]
516 _plural_types.append("Chargeds")
517 
518 
519 _value_types.append("Charged")
520 
521 
522 def Diffusions(l=[]):
523  return [Diffusion(x) for x in l]
524 _plural_types.append("Diffusions")
525 
526 
527 _value_types.append("Diffusion")
528 
529 
530 def RigidBodyDiffusions(l=[]):
531  return [RigidBodyDiffusion(x) for x in l]
532 _plural_types.append("RigidBodyDiffusions")
533 
534 
535 _value_types.append("RigidBodyDiffusion")
536 
537 
538 def TAMDParticles(l=[]):
539  return [TAMDParticle(x) for x in l]
540 _plural_types.append("TAMDParticles")
541 
542 
543 _value_types.append("TAMDParticle")
544 
545 
546 def TAMDCentroids(l=[]):
547  return [TAMDCentroid(x) for x in l]
548 _plural_types.append("TAMDCentroids")
549 
550 
551 _value_types.append("TAMDCentroid")
552 
553 
554 def Dihedrals(l=[]):
555  return [Dihedral(x) for x in l]
556 _plural_types.append("Dihedrals")
557 
558 
559 _value_types.append("Dihedral")
560 
561 
562 def Domains(l=[]):
563  return [Domain(x) for x in l]
564 _plural_types.append("Domains")
565 
566 
567 _value_types.append("Domain")
568 
569 
570 def Fragments(l=[]):
571  return [Fragment(x) for x in l]
572 _plural_types.append("Fragments")
573 
574 
575 _value_types.append("Fragment")
576 
577 
578 def Hierarchies(l=[]):
579  return [Hierarchy(x) for x in l]
580 _plural_types.append("Hierarchies")
581 
582 
583 _value_types.append("Hierarchy")
584 
585 
586 def LennardJonesTypeds(l=[]):
587  return [LennardJonesTyped(x) for x in l]
588 _plural_types.append("LennardJonesTypeds")
589 
590 
591 _value_types.append("LennardJonesTyped")
592 
593 
594 def Masses(l=[]):
595  return [Mass(x) for x in l]
596 _plural_types.append("Masses")
597 
598 
599 _value_types.append("Mass")
600 
601 
602 def LinearVelocities(l=[]):
603  return [LinearVelocity(x) for x in l]
604 _plural_types.append("LinearVelocities")
605 
606 
607 _value_types.append("LinearVelocity")
608 
609 
610 def AngularVelocities(l=[]):
611  return [AngularVelocity(x) for x in l]
612 _plural_types.append("AngularVelocities")
613 
614 
615 _value_types.append("AngularVelocity")
616 
617 
618 def Molecules(l=[]):
619  return [Molecule(x) for x in l]
620 _plural_types.append("Molecules")
621 
622 
623 _value_types.append("Molecule")
624 
625 
626 def Residues(l=[]):
627  return [Residue(x) for x in l]
628 _plural_types.append("Residues")
629 
630 
631 _value_types.append("Residue")
632 
633 
634 def Representations(l=[]):
635  return [Representation(x) for x in l]
636 _plural_types.append("Representations")
637 
638 
639 _value_types.append("Representation")
640 
641 
642 def States(l=[]):
643  return [State(x) for x in l]
644 _plural_types.append("States")
645 
646 
647 _value_types.append("State")
648 
649 
650 def Copies(l=[]):
651  return [Copy(x) for x in l]
652 _plural_types.append("Copies")
653 
654 
655 _value_types.append("Copy")
656 
657 
658 def SecondaryStructureResidues(l=[]):
659  return [SecondaryStructureResidue(x) for x in l]
660 _plural_types.append("SecondaryStructureResidues")
661 
662 
663 _value_types.append("SecondaryStructureResidue")
664 
665 
666 def StructureSources(l=[]):
667  return [StructureSource(x) for x in l]
668 _plural_types.append("StructureSources")
669 
670 
671 _value_types.append("StructureSource")
672 
673 
674 _object_types.append("Simulator")
675 
676 
677 def _object_cast_to_Simulator(o):
678  r"""_object_cast_to_Simulator(Object o) -> Simulator"""
679  return _IMP_atom._object_cast_to_Simulator(o)
680 
681 _object_types.append("ATOMPDBSelector")
682 
683 
684 def _object_cast_to_ATOMPDBSelector(o):
685  r"""_object_cast_to_ATOMPDBSelector(Object o) -> ATOMPDBSelector"""
686  return _IMP_atom._object_cast_to_ATOMPDBSelector(o)
687 
688 _object_types.append("AllMol2Selector")
689 
690 
691 def _object_cast_to_AllMol2Selector(o):
692  r"""_object_cast_to_AllMol2Selector(Object o) -> AllMol2Selector"""
693  return _IMP_atom._object_cast_to_AllMol2Selector(o)
694 
695 _object_types.append("AllPDBSelector")
696 
697 
698 def _object_cast_to_AllPDBSelector(o):
699  r"""_object_cast_to_AllPDBSelector(Object o) -> AllPDBSelector"""
700  return _IMP_atom._object_cast_to_AllPDBSelector(o)
701 
702 _object_types.append("AndPDBSelector")
703 
704 
705 def _object_cast_to_AndPDBSelector(o):
706  r"""_object_cast_to_AndPDBSelector(Object o) -> AndPDBSelector"""
707  return _IMP_atom._object_cast_to_AndPDBSelector(o)
708 
709 _object_types.append("XorPDBSelector")
710 
711 
712 def _object_cast_to_XorPDBSelector(o):
713  r"""_object_cast_to_XorPDBSelector(Object o) -> XorPDBSelector"""
714  return _IMP_atom._object_cast_to_XorPDBSelector(o)
715 
716 _object_types.append("ResidueTypePDBSelector")
717 
718 
719 def _object_cast_to_ResidueTypePDBSelector(o):
720  r"""_object_cast_to_ResidueTypePDBSelector(Object o) -> ResidueTypePDBSelector"""
721  return _IMP_atom._object_cast_to_ResidueTypePDBSelector(o)
722 
723 _object_types.append("AtomTypePDBSelector")
724 
725 
726 def _object_cast_to_AtomTypePDBSelector(o):
727  r"""_object_cast_to_AtomTypePDBSelector(Object o) -> AtomTypePDBSelector"""
728  return _IMP_atom._object_cast_to_AtomTypePDBSelector(o)
729 
730 _object_types.append("AngleSingletonScore")
731 
732 
733 def _object_cast_to_AngleSingletonScore(o):
734  r"""_object_cast_to_AngleSingletonScore(Object o) -> AngleSingletonScore"""
735  return _IMP_atom._object_cast_to_AngleSingletonScore(o)
736 
737 _object_types.append("BondEndpointsRefiner")
738 
739 
740 def _object_cast_to_BondEndpointsRefiner(o):
741  r"""_object_cast_to_BondEndpointsRefiner(Object o) -> BondEndpointsRefiner"""
742  return _IMP_atom._object_cast_to_BondEndpointsRefiner(o)
743 
744 _object_types.append("BondPairContainer")
745 
746 
747 def _object_cast_to_BondPairContainer(o):
748  r"""_object_cast_to_BondPairContainer(Object o) -> BondPairContainer"""
749  return _IMP_atom._object_cast_to_BondPairContainer(o)
750 
751 _object_types.append("BondSingletonScore")
752 
753 
754 def _object_cast_to_BondSingletonScore(o):
755  r"""_object_cast_to_BondSingletonScore(Object o) -> BondSingletonScore"""
756  return _IMP_atom._object_cast_to_BondSingletonScore(o)
757 
758 _object_types.append("BondedPairFilter")
759 
760 
761 def _object_cast_to_BondedPairFilter(o):
762  r"""_object_cast_to_BondedPairFilter(Object o) -> BondedPairFilter"""
763  return _IMP_atom._object_cast_to_BondedPairFilter(o)
764 
765 _object_types.append("BrownianDynamics")
766 
767 
768 def _object_cast_to_BrownianDynamics(o):
769  r"""_object_cast_to_BrownianDynamics(Object o) -> BrownianDynamics"""
770  return _IMP_atom._object_cast_to_BrownianDynamics(o)
771 
772 _object_types.append("BrownianDynamicsTAMD")
773 
774 
775 def _object_cast_to_BrownianDynamicsTAMD(o):
776  r"""_object_cast_to_BrownianDynamicsTAMD(Object o) -> BrownianDynamicsTAMD"""
777  return _IMP_atom._object_cast_to_BrownianDynamicsTAMD(o)
778 
779 _object_types.append("CAlphaPDBSelector")
780 
781 
782 def _object_cast_to_CAlphaPDBSelector(o):
783  r"""_object_cast_to_CAlphaPDBSelector(Object o) -> CAlphaPDBSelector"""
784  return _IMP_atom._object_cast_to_CAlphaPDBSelector(o)
785 
786 _object_types.append("CBetaPDBSelector")
787 
788 
789 def _object_cast_to_CBetaPDBSelector(o):
790  r"""_object_cast_to_CBetaPDBSelector(Object o) -> CBetaPDBSelector"""
791  return _IMP_atom._object_cast_to_CBetaPDBSelector(o)
792 
793 _object_types.append("BackbonePDBSelector")
794 
795 
796 def _object_cast_to_BackbonePDBSelector(o):
797  r"""_object_cast_to_BackbonePDBSelector(Object o) -> BackbonePDBSelector"""
798  return _IMP_atom._object_cast_to_BackbonePDBSelector(o)
799 
800 _object_types.append("CHARMMParameters")
801 
802 
803 def _object_cast_to_CHARMMParameters(o):
804  r"""_object_cast_to_CHARMMParameters(Object o) -> CHARMMParameters"""
805  return _IMP_atom._object_cast_to_CHARMMParameters(o)
806 
807 _object_types.append("CHARMMResidueTopology")
808 
809 
810 def _object_cast_to_CHARMMResidueTopology(o):
811  r"""_object_cast_to_CHARMMResidueTopology(Object o) -> CHARMMResidueTopology"""
812  return _IMP_atom._object_cast_to_CHARMMResidueTopology(o)
813 
814 _object_types.append("CHARMMSegmentTopology")
815 
816 
817 def _object_cast_to_CHARMMSegmentTopology(o):
818  r"""_object_cast_to_CHARMMSegmentTopology(Object o) -> CHARMMSegmentTopology"""
819  return _IMP_atom._object_cast_to_CHARMMSegmentTopology(o)
820 
821 _object_types.append("CHARMMStereochemistryRestraint")
822 
823 
824 def _object_cast_to_CHARMMStereochemistryRestraint(o):
825  r"""_object_cast_to_CHARMMStereochemistryRestraint(Object o) -> CHARMMStereochemistryRestraint"""
826  return _IMP_atom._object_cast_to_CHARMMStereochemistryRestraint(o)
827 
828 _object_types.append("CHARMMTopology")
829 
830 
831 def _object_cast_to_CHARMMTopology(o):
832  r"""_object_cast_to_CHARMMTopology(Object o) -> CHARMMTopology"""
833  return _IMP_atom._object_cast_to_CHARMMTopology(o)
834 
835 _object_types.append("CPDBSelector")
836 
837 
838 def _object_cast_to_CPDBSelector(o):
839  r"""_object_cast_to_CPDBSelector(Object o) -> CPDBSelector"""
840  return _IMP_atom._object_cast_to_CPDBSelector(o)
841 
842 _object_types.append("ChainPDBSelector")
843 
844 
845 def _object_cast_to_ChainPDBSelector(o):
846  r"""_object_cast_to_ChainPDBSelector(Object o) -> ChainPDBSelector"""
847  return _IMP_atom._object_cast_to_ChainPDBSelector(o)
848 
849 _object_types.append("CoulombPairScore")
850 
851 
852 def _object_cast_to_CoulombPairScore(o):
853  r"""_object_cast_to_CoulombPairScore(Object o) -> CoulombPairScore"""
854  return _IMP_atom._object_cast_to_CoulombPairScore(o)
855 
856 _object_types.append("CoverBond")
857 
858 
859 def _object_cast_to_CoverBond(o):
860  r"""_object_cast_to_CoverBond(Object o) -> CoverBond"""
861  return _IMP_atom._object_cast_to_CoverBond(o)
862 
863 _object_types.append("DihedralSingletonScore")
864 
865 
866 def _object_cast_to_DihedralSingletonScore(o):
867  r"""_object_cast_to_DihedralSingletonScore(Object o) -> DihedralSingletonScore"""
868  return _IMP_atom._object_cast_to_DihedralSingletonScore(o)
869 
870 _object_types.append("DopePairScore")
871 
872 
873 def _object_cast_to_DopePairScore(o):
874  r"""_object_cast_to_DopePairScore(Object o) -> DopePairScore"""
875  return _IMP_atom._object_cast_to_DopePairScore(o)
876 
877 _object_types.append("LoopStatisticalPairScore")
878 
879 
880 def _object_cast_to_LoopStatisticalPairScore(o):
881  r"""_object_cast_to_LoopStatisticalPairScore(Object o) -> LoopStatisticalPairScore"""
882  return _IMP_atom._object_cast_to_LoopStatisticalPairScore(o)
883 
884 _object_types.append("OrientedSoapPairScore")
885 
886 
887 def _object_cast_to_OrientedSoapPairScore(o):
888  r"""_object_cast_to_OrientedSoapPairScore(Object o) -> OrientedSoapPairScore"""
889  return _IMP_atom._object_cast_to_OrientedSoapPairScore(o)
890 
891 _object_types.append("EzRestraint")
892 
893 
894 def _object_cast_to_EzRestraint(o):
895  r"""_object_cast_to_EzRestraint(Object o) -> EzRestraint"""
896  return _IMP_atom._object_cast_to_EzRestraint(o)
897 
898 _object_types.append("ForceFieldParameters")
899 
900 
901 def _object_cast_to_ForceFieldParameters(o):
902  r"""_object_cast_to_ForceFieldParameters(Object o) -> ForceFieldParameters"""
903  return _IMP_atom._object_cast_to_ForceFieldParameters(o)
904 
905 _object_types.append("ForceSwitch")
906 
907 
908 def _object_cast_to_ForceSwitch(o):
909  r"""_object_cast_to_ForceSwitch(Object o) -> ForceSwitch"""
910  return _IMP_atom._object_cast_to_ForceSwitch(o)
911 
912 _object_types.append("HydrogenPDBSelector")
913 
914 
915 def _object_cast_to_HydrogenPDBSelector(o):
916  r"""_object_cast_to_HydrogenPDBSelector(Object o) -> HydrogenPDBSelector"""
917  return _IMP_atom._object_cast_to_HydrogenPDBSelector(o)
918 
919 _object_types.append("ImproperSingletonScore")
920 
921 
922 def _object_cast_to_ImproperSingletonScore(o):
923  r"""_object_cast_to_ImproperSingletonScore(Object o) -> ImproperSingletonScore"""
924  return _IMP_atom._object_cast_to_ImproperSingletonScore(o)
925 
926 _object_types.append("_LennardJonesTypedPairScore")
927 
928 
929 def _object_cast_to__LennardJonesTypedPairScore(o):
930  r"""_object_cast_to__LennardJonesTypedPairScore(Object o) -> _LennardJonesTypedPairScore"""
931  return _IMP_atom._object_cast_to__LennardJonesTypedPairScore(o)
932 
933 _object_types.append("_SwitchedLennardJonesTypedPairScore")
934 
935 
936 def _object_cast_to__SwitchedLennardJonesTypedPairScore(o):
937  r"""_object_cast_to__SwitchedLennardJonesTypedPairScore(Object o) -> _SwitchedLennardJonesTypedPairScore"""
938  return _IMP_atom._object_cast_to__SwitchedLennardJonesTypedPairScore(o)
939 
940 _object_types.append("Mol2Selector")
941 
942 
943 def _object_cast_to_Mol2Selector(o):
944  r"""_object_cast_to_Mol2Selector(Object o) -> Mol2Selector"""
945  return _IMP_atom._object_cast_to_Mol2Selector(o)
946 
947 _object_types.append("MolecularDynamics")
948 
949 
950 def _object_cast_to_MolecularDynamics(o):
951  r"""_object_cast_to_MolecularDynamics(Object o) -> MolecularDynamics"""
952  return _IMP_atom._object_cast_to_MolecularDynamics(o)
953 
954 _object_types.append("NPDBSelector")
955 
956 
957 def _object_cast_to_NPDBSelector(o):
958  r"""_object_cast_to_NPDBSelector(Object o) -> NPDBSelector"""
959  return _IMP_atom._object_cast_to_NPDBSelector(o)
960 
961 _object_types.append("NonAlternativePDBSelector")
962 
963 
964 def _object_cast_to_NonAlternativePDBSelector(o):
965  r"""_object_cast_to_NonAlternativePDBSelector(Object o) -> NonAlternativePDBSelector"""
966  return _IMP_atom._object_cast_to_NonAlternativePDBSelector(o)
967 
968 _object_types.append("NonHydrogenMol2Selector")
969 
970 
971 def _object_cast_to_NonHydrogenMol2Selector(o):
972  r"""_object_cast_to_NonHydrogenMol2Selector(Object o) -> NonHydrogenMol2Selector"""
973  return _IMP_atom._object_cast_to_NonHydrogenMol2Selector(o)
974 
975 _object_types.append("NonHydrogenPDBSelector")
976 
977 
978 def _object_cast_to_NonHydrogenPDBSelector(o):
979  r"""_object_cast_to_NonHydrogenPDBSelector(Object o) -> NonHydrogenPDBSelector"""
980  return _IMP_atom._object_cast_to_NonHydrogenPDBSelector(o)
981 
982 _object_types.append("NonWaterNonHydrogenPDBSelector")
983 
984 
985 def _object_cast_to_NonWaterNonHydrogenPDBSelector(o):
986  r"""_object_cast_to_NonWaterNonHydrogenPDBSelector(Object o) -> NonWaterNonHydrogenPDBSelector"""
987  return _IMP_atom._object_cast_to_NonWaterNonHydrogenPDBSelector(o)
988 
989 _object_types.append("NonWaterPDBSelector")
990 
991 
992 def _object_cast_to_NonWaterPDBSelector(o):
993  r"""_object_cast_to_NonWaterPDBSelector(Object o) -> NonWaterPDBSelector"""
994  return _IMP_atom._object_cast_to_NonWaterPDBSelector(o)
995 
996 _object_types.append("NotPDBSelector")
997 
998 
999 def _object_cast_to_NotPDBSelector(o):
1000  r"""_object_cast_to_NotPDBSelector(Object o) -> NotPDBSelector"""
1001  return _IMP_atom._object_cast_to_NotPDBSelector(o)
1002 
1003 _object_types.append("OrPDBSelector")
1004 
1005 
1006 def _object_cast_to_OrPDBSelector(o):
1007  r"""_object_cast_to_OrPDBSelector(Object o) -> OrPDBSelector"""
1008  return _IMP_atom._object_cast_to_OrPDBSelector(o)
1009 
1010 _object_types.append("PPDBSelector")
1011 
1012 
1013 def _object_cast_to_PPDBSelector(o):
1014  r"""_object_cast_to_PPDBSelector(Object o) -> PPDBSelector"""
1015  return _IMP_atom._object_cast_to_PPDBSelector(o)
1016 
1017 _object_types.append("ProteinLigandAtomPairScore")
1018 
1019 
1020 def _object_cast_to_ProteinLigandAtomPairScore(o):
1021  r"""_object_cast_to_ProteinLigandAtomPairScore(Object o) -> ProteinLigandAtomPairScore"""
1022  return _IMP_atom._object_cast_to_ProteinLigandAtomPairScore(o)
1023 
1024 _object_types.append("ProteinLigandRestraint")
1025 
1026 
1027 def _object_cast_to_ProteinLigandRestraint(o):
1028  r"""_object_cast_to_ProteinLigandRestraint(Object o) -> ProteinLigandRestraint"""
1029  return _IMP_atom._object_cast_to_ProteinLigandRestraint(o)
1030 
1031 _object_types.append("SameResiduePairFilter")
1032 
1033 
1034 def _object_cast_to_SameResiduePairFilter(o):
1035  r"""_object_cast_to_SameResiduePairFilter(Object o) -> SameResiduePairFilter"""
1036  return _IMP_atom._object_cast_to_SameResiduePairFilter(o)
1037 
1038 _object_types.append("SoapPairFilter")
1039 
1040 
1041 def _object_cast_to_SoapPairFilter(o):
1042  r"""_object_cast_to_SoapPairFilter(Object o) -> SoapPairFilter"""
1043  return _IMP_atom._object_cast_to_SoapPairFilter(o)
1044 
1045 _object_types.append("SmoothingFunction")
1046 
1047 
1048 def _object_cast_to_SmoothingFunction(o):
1049  r"""_object_cast_to_SmoothingFunction(Object o) -> SmoothingFunction"""
1050  return _IMP_atom._object_cast_to_SmoothingFunction(o)
1051 
1052 _object_types.append("StereochemistryPairFilter")
1053 
1054 
1055 def _object_cast_to_StereochemistryPairFilter(o):
1056  r"""_object_cast_to_StereochemistryPairFilter(Object o) -> StereochemistryPairFilter"""
1057  return _IMP_atom._object_cast_to_StereochemistryPairFilter(o)
1058 
1059 _object_types.append("VelocityScalingOptimizerState")
1060 
1061 
1062 def _object_cast_to_VelocityScalingOptimizerState(o):
1063  r"""_object_cast_to_VelocityScalingOptimizerState(Object o) -> VelocityScalingOptimizerState"""
1064  return _IMP_atom._object_cast_to_VelocityScalingOptimizerState(o)
1065 
1066 _object_types.append("WaterPDBSelector")
1067 
1068 
1069 def _object_cast_to_WaterPDBSelector(o):
1070  r"""_object_cast_to_WaterPDBSelector(Object o) -> WaterPDBSelector"""
1071  return _IMP_atom._object_cast_to_WaterPDBSelector(o)
1072 
1073 _object_types.append("WritePDBOptimizerState")
1074 
1075 
1076 def _object_cast_to_WritePDBOptimizerState(o):
1077  r"""_object_cast_to_WritePDBOptimizerState(Object o) -> WritePDBOptimizerState"""
1078  return _IMP_atom._object_cast_to_WritePDBOptimizerState(o)
1079 
1080 AtomTypes=list
1081 _plural_types.append("AtomTypes")
1082 _value_types.append("AtomType")
1083 
1084 
1085 CHARMMAtomTopologies=list
1086 _plural_types.append("CHARMMAtomTopologies")
1087 _value_types.append("CHARMMAtomTopology")
1088 
1089 
1090 CHARMMBondEndpoints=list
1091 _plural_types.append("CHARMMBondEndpoints")
1092 _value_types.append("CHARMMBondEndpoint")
1093 
1094 
1095 CHARMMBondParametersList=list
1096 _plural_types.append("CHARMMBondParametersList")
1097 _value_types.append("CHARMMBondParameters")
1098 
1099 
1100 CHARMMDihedralParametersList=list
1101 _plural_types.append("CHARMMDihedralParametersList")
1102 _value_types.append("CHARMMDihedralParameters")
1103 
1104 
1105 _object_types.append("CHARMMIdealResidueTopology")
1106 
1107 
1108 def _object_cast_to_CHARMMIdealResidueTopology(o):
1109  r"""_object_cast_to_CHARMMIdealResidueTopology(Object o) -> CHARMMIdealResidueTopology"""
1110  return _IMP_atom._object_cast_to_CHARMMIdealResidueTopology(o)
1111 
1112 CHARMMInternalCoordinates=list
1113 _plural_types.append("CHARMMInternalCoordinates")
1114 _value_types.append("CHARMMInternalCoordinate")
1115 
1116 
1117 _object_types.append("CHARMMPatch")
1118 
1119 
1120 def _object_cast_to_CHARMMPatch(o):
1121  r"""_object_cast_to_CHARMMPatch(Object o) -> CHARMMPatch"""
1122  return _IMP_atom._object_cast_to_CHARMMPatch(o)
1123 
1124 _object_types.append("CHARMMResidueTopologyBase")
1125 
1126 
1127 def _object_cast_to_CHARMMResidueTopologyBase(o):
1128  r"""_object_cast_to_CHARMMResidueTopologyBase(Object o) -> CHARMMResidueTopologyBase"""
1129  return _IMP_atom._object_cast_to_CHARMMResidueTopologyBase(o)
1130 
1131 ResidueTypes=list
1132 _plural_types.append("ResidueTypes")
1133 _value_types.append("ResidueType")
1134 
1135 
1136 ChainTypes=list
1137 _plural_types.append("ChainTypes")
1138 _value_types.append("ChainType")
1139 
1140 
1141 Selections=list
1142 _plural_types.append("Selections")
1143 _value_types.append("Selection")
1144 
1145 
1146 _object_types.append("RemoveRigidMotionOptimizerState")
1147 
1148 
1149 def _object_cast_to_RemoveRigidMotionOptimizerState(o):
1150  r"""_object_cast_to_RemoveRigidMotionOptimizerState(Object o) -> RemoveRigidMotionOptimizerState"""
1151  return _IMP_atom._object_cast_to_RemoveRigidMotionOptimizerState(o)
1152 
1153 _object_types.append("BerendsenThermostatOptimizerState")
1154 
1155 
1156 def _object_cast_to_BerendsenThermostatOptimizerState(o):
1157  r"""_object_cast_to_BerendsenThermostatOptimizerState(Object o) -> BerendsenThermostatOptimizerState"""
1158  return _IMP_atom._object_cast_to_BerendsenThermostatOptimizerState(o)
1159 
1160 _object_types.append("LangevinThermostatOptimizerState")
1161 
1162 
1163 def _object_cast_to_LangevinThermostatOptimizerState(o):
1164  r"""_object_cast_to_LangevinThermostatOptimizerState(Object o) -> LangevinThermostatOptimizerState"""
1165  return _IMP_atom._object_cast_to_LangevinThermostatOptimizerState(o)
1166 
1167 _object_types.append("SelectionGeometry")
1168 
1169 
1170 def _object_cast_to_SelectionGeometry(o):
1171  r"""_object_cast_to_SelectionGeometry(Object o) -> SelectionGeometry"""
1172  return _IMP_atom._object_cast_to_SelectionGeometry(o)
1173 
1174 _object_types.append("HierarchyGeometry")
1175 
1176 
1177 def _object_cast_to_HierarchyGeometry(o):
1178  r"""_object_cast_to_HierarchyGeometry(Object o) -> HierarchyGeometry"""
1179  return _IMP_atom._object_cast_to_HierarchyGeometry(o)
1180 
1181 _object_types.append("HierarchiesGeometry")
1182 
1183 
1184 def _object_cast_to_HierarchiesGeometry(o):
1185  r"""_object_cast_to_HierarchiesGeometry(Object o) -> HierarchiesGeometry"""
1186  return _IMP_atom._object_cast_to_HierarchiesGeometry(o)
1187 
1188 _object_types.append("BondGeometry")
1189 
1190 
1191 def _object_cast_to_BondGeometry(o):
1192  r"""_object_cast_to_BondGeometry(Object o) -> BondGeometry"""
1193  return _IMP_atom._object_cast_to_BondGeometry(o)
1194 
1195 _object_types.append("BondsGeometry")
1196 
1197 
1198 def _object_cast_to_BondsGeometry(o):
1199  r"""_object_cast_to_BondsGeometry(Object o) -> BondsGeometry"""
1200  return _IMP_atom._object_cast_to_BondsGeometry(o)
1201 
1202 _object_types.append("CAAngleRestraint")
1203 
1204 
1205 def _object_cast_to_CAAngleRestraint(o):
1206  r"""_object_cast_to_CAAngleRestraint(Object o) -> CAAngleRestraint"""
1207  return _IMP_atom._object_cast_to_CAAngleRestraint(o)
1208 
1209 _object_types.append("CADihedralRestraint")
1210 
1211 
1212 def _object_cast_to_CADihedralRestraint(o):
1213  r"""_object_cast_to_CADihedralRestraint(Object o) -> CADihedralRestraint"""
1214  return _IMP_atom._object_cast_to_CADihedralRestraint(o)
1215 
1216 _object_types.append("HelixRestraint")
1217 
1218 
1219 def _object_cast_to_HelixRestraint(o):
1220  r"""_object_cast_to_HelixRestraint(Object o) -> HelixRestraint"""
1221  return _IMP_atom._object_cast_to_HelixRestraint(o)
1222 
1223 CHARMMDihedrals=list
1224 _plural_types.append("CHARMMDihedrals")
1225 _value_types.append("CHARMMDihedral")
1226 
1227 
1228 CHARMMBonds=list
1229 _plural_types.append("CHARMMBonds")
1230 _value_types.append("CHARMMBond")
1231 
1232 
1233 CHARMMAngles=list
1234 _plural_types.append("CHARMMAngles")
1235 _value_types.append("CHARMMAngle")
1236 
1237 class Bond(IMP.Decorator):
1238  r"""Proxy of C++ IMP::atom::Bond class."""
1239 
1240  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1241 
1242  def __init__(self, *args):
1243  r"""
1244  __init__(Bond self) -> Bond
1245  __init__(Bond self, Model m, ParticleIndex id) -> Bond
1246  __init__(Bond self, _ParticleAdaptor d) -> Bond
1247  """
1248  _IMP_atom.Bond_swiginit(self, _IMP_atom.new_Bond(*args))
1249 
1250  def show(self, *args):
1251  r"""show(Bond self, _ostream out=std::cout)"""
1252  return _IMP_atom.Bond_show(self, *args)
1253 
1254  @staticmethod
1255  def get_is_setup(*args):
1256  r"""
1257  get_is_setup(_ParticleAdaptor p) -> bool
1258  get_is_setup(Model m, ParticleIndex pi) -> bool
1259  """
1260  return _IMP_atom.Bond_get_is_setup(*args)
1261  UNKNOWN = _IMP_atom.Bond_UNKNOWN
1262 
1263  NONBIOLOGICAL = _IMP_atom.Bond_NONBIOLOGICAL
1264 
1265  SINGLE = _IMP_atom.Bond_SINGLE
1266 
1267  DOUBLE = _IMP_atom.Bond_DOUBLE
1268 
1269  TRIPLE = _IMP_atom.Bond_TRIPLE
1270 
1271  HYDROGEN = _IMP_atom.Bond_HYDROGEN
1272 
1273  SALT = _IMP_atom.Bond_SALT
1274 
1275  PEPTIDE = _IMP_atom.Bond_PEPTIDE
1276 
1277  AMIDE = _IMP_atom.Bond_AMIDE
1278 
1279  AROMATIC = _IMP_atom.Bond_AROMATIC
1280 
1281 
1282  def get_bonded(self, i):
1283  r"""get_bonded(Bond self, unsigned int i) -> Bonded"""
1284  return _IMP_atom.Bond_get_bonded(self, i)
1285 
1286  def get_type(self):
1287  r"""get_type(Bond self) -> IMP::Int"""
1288  return _IMP_atom.Bond_get_type(self)
1289 
1290  def set_type(self, t):
1291  r"""set_type(Bond self, IMP::Int t)"""
1292  return _IMP_atom.Bond_set_type(self, t)
1293 
1294  def get_order(self):
1295  r"""get_order(Bond self) -> IMP::Int"""
1296  return _IMP_atom.Bond_get_order(self)
1297 
1298  def set_order(self, t):
1299  r"""set_order(Bond self, IMP::Int t)"""
1300  return _IMP_atom.Bond_set_order(self, t)
1301 
1302  def get_length(self):
1303  r"""get_length(Bond self) -> IMP::Float"""
1304  return _IMP_atom.Bond_get_length(self)
1305 
1306  def set_length(self, t):
1307  r"""set_length(Bond self, IMP::Float t)"""
1308  return _IMP_atom.Bond_set_length(self, t)
1309 
1310  def get_stiffness(self):
1311  r"""get_stiffness(Bond self) -> IMP::Float"""
1312  return _IMP_atom.Bond_get_stiffness(self)
1313 
1314  def set_stiffness(self, t):
1315  r"""set_stiffness(Bond self, IMP::Float t)"""
1316  return _IMP_atom.Bond_set_stiffness(self, t)
1317 
1318  @staticmethod
1319  def get_length_key():
1320  r"""get_length_key() -> FloatKey"""
1321  return _IMP_atom.Bond_get_length_key()
1322 
1323  def add_attribute(self, *args):
1324  r"""
1325  add_attribute(Bond self, FloatKey k, IMP::Float v, bool opt)
1326  add_attribute(Bond self, FloatKey a0, IMP::Float a1)
1327  add_attribute(Bond self, IntKey a0, IMP::Int a1)
1328  add_attribute(Bond self, FloatsKey a0, IMP::Floats a1)
1329  add_attribute(Bond self, IntsKey a0, IMP::Ints a1)
1330  add_attribute(Bond self, StringKey a0, IMP::String a1)
1331  add_attribute(Bond self, ParticleIndexKey a0, Particle a1)
1332  add_attribute(Bond self, ObjectKey a0, Object a1)
1333  add_attribute(Bond self, SparseFloatKey a0, IMP::Float a1)
1334  add_attribute(Bond self, SparseIntKey a0, IMP::Int a1)
1335  add_attribute(Bond self, SparseStringKey a0, IMP::String a1)
1336  add_attribute(Bond self, SparseParticleIndexKey a0, ParticleIndex a1)
1337  """
1338  return _IMP_atom.Bond_add_attribute(self, *args)
1339 
1340  def get_value(self, *args):
1341  r"""
1342  get_value(Bond self, FloatKey a0) -> IMP::Float
1343  get_value(Bond self, IntKey a0) -> IMP::Int
1344  get_value(Bond self, FloatsKey a0) -> IMP::Floats
1345  get_value(Bond self, IntsKey a0) -> IMP::Ints
1346  get_value(Bond self, StringKey a0) -> IMP::String
1347  get_value(Bond self, ParticleIndexKey a0) -> Particle
1348  get_value(Bond self, ObjectKey a0) -> Object
1349  get_value(Bond self, SparseFloatKey a0) -> IMP::Float
1350  get_value(Bond self, SparseIntKey a0) -> IMP::Int
1351  get_value(Bond self, SparseStringKey a0) -> IMP::String
1352  get_value(Bond self, SparseParticleIndexKey a0) -> ParticleIndex
1353  """
1354  return _IMP_atom.Bond_get_value(self, *args)
1355 
1356  def set_value(self, *args):
1357  r"""
1358  set_value(Bond self, FloatKey a0, IMP::Float a1)
1359  set_value(Bond self, IntKey a0, IMP::Int a1)
1360  set_value(Bond self, FloatsKey a0, IMP::Floats a1)
1361  set_value(Bond self, IntsKey a0, IMP::Ints a1)
1362  set_value(Bond self, StringKey a0, IMP::String a1)
1363  set_value(Bond self, ParticleIndexKey a0, Particle a1)
1364  set_value(Bond self, ObjectKey a0, Object a1)
1365  set_value(Bond self, SparseFloatKey a0, IMP::Float a1)
1366  set_value(Bond self, SparseIntKey a0, IMP::Int a1)
1367  set_value(Bond self, SparseStringKey a0, IMP::String a1)
1368  set_value(Bond self, SparseParticleIndexKey a0, ParticleIndex a1)
1369  """
1370  return _IMP_atom.Bond_set_value(self, *args)
1371 
1372  def remove_attribute(self, *args):
1373  r"""
1374  remove_attribute(Bond self, FloatKey a0)
1375  remove_attribute(Bond self, IntKey a0)
1376  remove_attribute(Bond self, FloatsKey a0)
1377  remove_attribute(Bond self, IntsKey a0)
1378  remove_attribute(Bond self, StringKey a0)
1379  remove_attribute(Bond self, ParticleIndexKey a0)
1380  remove_attribute(Bond self, ObjectKey a0)
1381  remove_attribute(Bond self, SparseFloatKey a0)
1382  remove_attribute(Bond self, SparseIntKey a0)
1383  remove_attribute(Bond self, SparseStringKey a0)
1384  remove_attribute(Bond self, SparseParticleIndexKey a0)
1385  """
1386  return _IMP_atom.Bond_remove_attribute(self, *args)
1387 
1388  def has_attribute(self, *args):
1389  r"""
1390  has_attribute(Bond self, FloatKey a0) -> bool
1391  has_attribute(Bond self, IntKey a0) -> bool
1392  has_attribute(Bond self, FloatsKey a0) -> bool
1393  has_attribute(Bond self, IntsKey a0) -> bool
1394  has_attribute(Bond self, StringKey a0) -> bool
1395  has_attribute(Bond self, ParticleIndexKey a0) -> bool
1396  has_attribute(Bond self, ObjectKey a0) -> bool
1397  has_attribute(Bond self, SparseFloatKey a0) -> bool
1398  has_attribute(Bond self, SparseIntKey a0) -> bool
1399  has_attribute(Bond self, SparseStringKey a0) -> bool
1400  has_attribute(Bond self, SparseParticleIndexKey a0) -> bool
1401  """
1402  return _IMP_atom.Bond_has_attribute(self, *args)
1403 
1404  def get_derivative(self, a0):
1405  r"""get_derivative(Bond self, FloatKey a0) -> double"""
1406  return _IMP_atom.Bond_get_derivative(self, a0)
1407 
1408  def get_name(self):
1409  r"""get_name(Bond self) -> std::string"""
1410  return _IMP_atom.Bond_get_name(self)
1411 
1412  def clear_caches(self):
1413  r"""clear_caches(Bond self)"""
1414  return _IMP_atom.Bond_clear_caches(self)
1415 
1416  def set_name(self, a0):
1417  r"""set_name(Bond self, std::string a0)"""
1418  return _IMP_atom.Bond_set_name(self, a0)
1419 
1420  def set_check_level(self, a0):
1421  r"""set_check_level(Bond self, IMP::CheckLevel a0)"""
1422  return _IMP_atom.Bond_set_check_level(self, a0)
1423 
1424  def add_to_derivative(self, a0, a1, a2):
1425  r"""add_to_derivative(Bond self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
1426  return _IMP_atom.Bond_add_to_derivative(self, a0, a1, a2)
1427 
1428  def set_is_optimized(self, a0, a1):
1429  r"""set_is_optimized(Bond self, FloatKey a0, bool a1)"""
1430  return _IMP_atom.Bond_set_is_optimized(self, a0, a1)
1431 
1432  def get_is_optimized(self, a0):
1433  r"""get_is_optimized(Bond self, FloatKey a0) -> bool"""
1434  return _IMP_atom.Bond_get_is_optimized(self, a0)
1435 
1436  def get_check_level(self):
1437  r"""get_check_level(Bond self) -> IMP::CheckLevel"""
1438  return _IMP_atom.Bond_get_check_level(self)
1439 
1440  def __eq__(self, *args):
1441  r"""
1442  __eq__(Bond self, Bond o) -> bool
1443  __eq__(Bond self, Particle d) -> bool
1444  """
1445  return _IMP_atom.Bond___eq__(self, *args)
1446 
1447  def __ne__(self, *args):
1448  r"""
1449  __ne__(Bond self, Bond o) -> bool
1450  __ne__(Bond self, Particle d) -> bool
1451  """
1452  return _IMP_atom.Bond___ne__(self, *args)
1453 
1454  def __le__(self, *args):
1455  r"""
1456  __le__(Bond self, Bond o) -> bool
1457  __le__(Bond self, Particle d) -> bool
1458  """
1459  return _IMP_atom.Bond___le__(self, *args)
1460 
1461  def __lt__(self, *args):
1462  r"""
1463  __lt__(Bond self, Bond o) -> bool
1464  __lt__(Bond self, Particle d) -> bool
1465  """
1466  return _IMP_atom.Bond___lt__(self, *args)
1467 
1468  def __ge__(self, *args):
1469  r"""
1470  __ge__(Bond self, Bond o) -> bool
1471  __ge__(Bond self, Particle d) -> bool
1472  """
1473  return _IMP_atom.Bond___ge__(self, *args)
1474 
1475  def __gt__(self, *args):
1476  r"""
1477  __gt__(Bond self, Bond o) -> bool
1478  __gt__(Bond self, Particle d) -> bool
1479  """
1480  return _IMP_atom.Bond___gt__(self, *args)
1481 
1482  def __hash__(self):
1483  r"""__hash__(Bond self) -> std::size_t"""
1484  return _IMP_atom.Bond___hash__(self)
1485 
1486  def __str__(self):
1487  r"""__str__(Bond self) -> std::string"""
1488  return _IMP_atom.Bond___str__(self)
1489 
1490  def __repr__(self):
1491  r"""__repr__(Bond self) -> std::string"""
1492  return _IMP_atom.Bond___repr__(self)
1493 
1494  def _get_as_binary(self):
1495  r"""_get_as_binary(Bond self) -> PyObject *"""
1496  return _IMP_atom.Bond__get_as_binary(self)
1497 
1498  def _set_from_binary(self, p):
1499  r"""_set_from_binary(Bond self, PyObject * p)"""
1500  return _IMP_atom.Bond__set_from_binary(self, p)
1501 
1502  def __getstate__(self):
1503  p = self._get_as_binary()
1504  if len(self.__dict__) > 1:
1505  d = self.__dict__.copy()
1506  del d['this']
1507  p = (d, p)
1508  return p
1509 
1510  def __setstate__(self, p):
1511  if not hasattr(self, 'this'):
1512  self.__init__()
1513  if isinstance(p, tuple):
1514  d, p = p
1515  self.__dict__.update(d)
1516  return self._set_from_binary(p)
1517 
1518  __swig_destroy__ = _IMP_atom.delete_Bond
1519 
1520 # Register Bond in _IMP_atom:
1521 _IMP_atom.Bond_swigregister(Bond)
1522 class Bonded(IMP.Decorator):
1523  r"""Proxy of C++ IMP::atom::Bonded class."""
1524 
1525  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1526 
1527  def __init__(self, *args):
1528  r"""
1529  __init__(Bonded self) -> Bonded
1530  __init__(Bonded self, Model m, ParticleIndex id) -> Bonded
1531  __init__(Bonded self, _ParticleAdaptor d) -> Bonded
1532  """
1533  _IMP_atom.Bonded_swiginit(self, _IMP_atom.new_Bonded(*args))
1534 
1535  def show(self, *args):
1536  r"""show(Bonded self, _ostream out=std::cout)"""
1537  return _IMP_atom.Bonded_show(self, *args)
1538 
1539  @staticmethod
1540  def setup_particle(*args):
1541  r"""
1542  setup_particle(Model m, ParticleIndex pi) -> Bonded
1543  setup_particle(_ParticleAdaptor pa) -> Bonded
1544  """
1545  return _IMP_atom.Bonded_setup_particle(*args)
1546 
1547  @staticmethod
1548  def get_is_setup(*args):
1549  r"""
1550  get_is_setup(_ParticleAdaptor p) -> bool
1551  get_is_setup(Model m, ParticleIndex pi) -> bool
1552  """
1553  return _IMP_atom.Bonded_get_is_setup(*args)
1554 
1555  def get_number_of_bonds(self):
1556  r"""get_number_of_bonds(Bonded self) -> unsigned int"""
1557  return _IMP_atom.Bonded_get_number_of_bonds(self)
1558 
1559  def get_bond_indexes(self):
1560  r"""get_bond_indexes(Bonded self) -> IMP::ParticleIndexes"""
1561  return _IMP_atom.Bonded_get_bond_indexes(self)
1562 
1563  def get_bond(self, i):
1564  r"""get_bond(Bonded self, unsigned int i) -> Bond"""
1565  return _IMP_atom.Bonded_get_bond(self, i)
1566 
1567  def get_bonded(self, i):
1568  r"""get_bonded(Bonded self, unsigned int i) -> Bonded"""
1569  return _IMP_atom.Bonded_get_bonded(self, i)
1570 
1571  def add_attribute(self, *args):
1572  r"""
1573  add_attribute(Bonded self, FloatKey k, IMP::Float v, bool opt)
1574  add_attribute(Bonded self, FloatKey a0, IMP::Float a1)
1575  add_attribute(Bonded self, IntKey a0, IMP::Int a1)
1576  add_attribute(Bonded self, FloatsKey a0, IMP::Floats a1)
1577  add_attribute(Bonded self, IntsKey a0, IMP::Ints a1)
1578  add_attribute(Bonded self, StringKey a0, IMP::String a1)
1579  add_attribute(Bonded self, ParticleIndexKey a0, Particle a1)
1580  add_attribute(Bonded self, ObjectKey a0, Object a1)
1581  add_attribute(Bonded self, SparseFloatKey a0, IMP::Float a1)
1582  add_attribute(Bonded self, SparseIntKey a0, IMP::Int a1)
1583  add_attribute(Bonded self, SparseStringKey a0, IMP::String a1)
1584  add_attribute(Bonded self, SparseParticleIndexKey a0, ParticleIndex a1)
1585  """
1586  return _IMP_atom.Bonded_add_attribute(self, *args)
1587 
1588  def get_value(self, *args):
1589  r"""
1590  get_value(Bonded self, FloatKey a0) -> IMP::Float
1591  get_value(Bonded self, IntKey a0) -> IMP::Int
1592  get_value(Bonded self, FloatsKey a0) -> IMP::Floats
1593  get_value(Bonded self, IntsKey a0) -> IMP::Ints
1594  get_value(Bonded self, StringKey a0) -> IMP::String
1595  get_value(Bonded self, ParticleIndexKey a0) -> Particle
1596  get_value(Bonded self, ObjectKey a0) -> Object
1597  get_value(Bonded self, SparseFloatKey a0) -> IMP::Float
1598  get_value(Bonded self, SparseIntKey a0) -> IMP::Int
1599  get_value(Bonded self, SparseStringKey a0) -> IMP::String
1600  get_value(Bonded self, SparseParticleIndexKey a0) -> ParticleIndex
1601  """
1602  return _IMP_atom.Bonded_get_value(self, *args)
1603 
1604  def set_value(self, *args):
1605  r"""
1606  set_value(Bonded self, FloatKey a0, IMP::Float a1)
1607  set_value(Bonded self, IntKey a0, IMP::Int a1)
1608  set_value(Bonded self, FloatsKey a0, IMP::Floats a1)
1609  set_value(Bonded self, IntsKey a0, IMP::Ints a1)
1610  set_value(Bonded self, StringKey a0, IMP::String a1)
1611  set_value(Bonded self, ParticleIndexKey a0, Particle a1)
1612  set_value(Bonded self, ObjectKey a0, Object a1)
1613  set_value(Bonded self, SparseFloatKey a0, IMP::Float a1)
1614  set_value(Bonded self, SparseIntKey a0, IMP::Int a1)
1615  set_value(Bonded self, SparseStringKey a0, IMP::String a1)
1616  set_value(Bonded self, SparseParticleIndexKey a0, ParticleIndex a1)
1617  """
1618  return _IMP_atom.Bonded_set_value(self, *args)
1619 
1620  def remove_attribute(self, *args):
1621  r"""
1622  remove_attribute(Bonded self, FloatKey a0)
1623  remove_attribute(Bonded self, IntKey a0)
1624  remove_attribute(Bonded self, FloatsKey a0)
1625  remove_attribute(Bonded self, IntsKey a0)
1626  remove_attribute(Bonded self, StringKey a0)
1627  remove_attribute(Bonded self, ParticleIndexKey a0)
1628  remove_attribute(Bonded self, ObjectKey a0)
1629  remove_attribute(Bonded self, SparseFloatKey a0)
1630  remove_attribute(Bonded self, SparseIntKey a0)
1631  remove_attribute(Bonded self, SparseStringKey a0)
1632  remove_attribute(Bonded self, SparseParticleIndexKey a0)
1633  """
1634  return _IMP_atom.Bonded_remove_attribute(self, *args)
1635 
1636  def has_attribute(self, *args):
1637  r"""
1638  has_attribute(Bonded self, FloatKey a0) -> bool
1639  has_attribute(Bonded self, IntKey a0) -> bool
1640  has_attribute(Bonded self, FloatsKey a0) -> bool
1641  has_attribute(Bonded self, IntsKey a0) -> bool
1642  has_attribute(Bonded self, StringKey a0) -> bool
1643  has_attribute(Bonded self, ParticleIndexKey a0) -> bool
1644  has_attribute(Bonded self, ObjectKey a0) -> bool
1645  has_attribute(Bonded self, SparseFloatKey a0) -> bool
1646  has_attribute(Bonded self, SparseIntKey a0) -> bool
1647  has_attribute(Bonded self, SparseStringKey a0) -> bool
1648  has_attribute(Bonded self, SparseParticleIndexKey a0) -> bool
1649  """
1650  return _IMP_atom.Bonded_has_attribute(self, *args)
1651 
1652  def get_derivative(self, a0):
1653  r"""get_derivative(Bonded self, FloatKey a0) -> double"""
1654  return _IMP_atom.Bonded_get_derivative(self, a0)
1655 
1656  def get_name(self):
1657  r"""get_name(Bonded self) -> std::string"""
1658  return _IMP_atom.Bonded_get_name(self)
1659 
1660  def clear_caches(self):
1661  r"""clear_caches(Bonded self)"""
1662  return _IMP_atom.Bonded_clear_caches(self)
1663 
1664  def set_name(self, a0):
1665  r"""set_name(Bonded self, std::string a0)"""
1666  return _IMP_atom.Bonded_set_name(self, a0)
1667 
1668  def set_check_level(self, a0):
1669  r"""set_check_level(Bonded self, IMP::CheckLevel a0)"""
1670  return _IMP_atom.Bonded_set_check_level(self, a0)
1671 
1672  def add_to_derivative(self, a0, a1, a2):
1673  r"""add_to_derivative(Bonded self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
1674  return _IMP_atom.Bonded_add_to_derivative(self, a0, a1, a2)
1675 
1676  def set_is_optimized(self, a0, a1):
1677  r"""set_is_optimized(Bonded self, FloatKey a0, bool a1)"""
1678  return _IMP_atom.Bonded_set_is_optimized(self, a0, a1)
1679 
1680  def get_is_optimized(self, a0):
1681  r"""get_is_optimized(Bonded self, FloatKey a0) -> bool"""
1682  return _IMP_atom.Bonded_get_is_optimized(self, a0)
1683 
1684  def get_check_level(self):
1685  r"""get_check_level(Bonded self) -> IMP::CheckLevel"""
1686  return _IMP_atom.Bonded_get_check_level(self)
1687 
1688  def __eq__(self, *args):
1689  r"""
1690  __eq__(Bonded self, Bonded o) -> bool
1691  __eq__(Bonded self, Particle d) -> bool
1692  """
1693  return _IMP_atom.Bonded___eq__(self, *args)
1694 
1695  def __ne__(self, *args):
1696  r"""
1697  __ne__(Bonded self, Bonded o) -> bool
1698  __ne__(Bonded self, Particle d) -> bool
1699  """
1700  return _IMP_atom.Bonded___ne__(self, *args)
1701 
1702  def __le__(self, *args):
1703  r"""
1704  __le__(Bonded self, Bonded o) -> bool
1705  __le__(Bonded self, Particle d) -> bool
1706  """
1707  return _IMP_atom.Bonded___le__(self, *args)
1708 
1709  def __lt__(self, *args):
1710  r"""
1711  __lt__(Bonded self, Bonded o) -> bool
1712  __lt__(Bonded self, Particle d) -> bool
1713  """
1714  return _IMP_atom.Bonded___lt__(self, *args)
1715 
1716  def __ge__(self, *args):
1717  r"""
1718  __ge__(Bonded self, Bonded o) -> bool
1719  __ge__(Bonded self, Particle d) -> bool
1720  """
1721  return _IMP_atom.Bonded___ge__(self, *args)
1722 
1723  def __gt__(self, *args):
1724  r"""
1725  __gt__(Bonded self, Bonded o) -> bool
1726  __gt__(Bonded self, Particle d) -> bool
1727  """
1728  return _IMP_atom.Bonded___gt__(self, *args)
1729 
1730  def __hash__(self):
1731  r"""__hash__(Bonded self) -> std::size_t"""
1732  return _IMP_atom.Bonded___hash__(self)
1733 
1734  def __str__(self):
1735  r"""__str__(Bonded self) -> std::string"""
1736  return _IMP_atom.Bonded___str__(self)
1737 
1738  def __repr__(self):
1739  r"""__repr__(Bonded self) -> std::string"""
1740  return _IMP_atom.Bonded___repr__(self)
1741 
1742  def _get_as_binary(self):
1743  r"""_get_as_binary(Bonded self) -> PyObject *"""
1744  return _IMP_atom.Bonded__get_as_binary(self)
1745 
1746  def _set_from_binary(self, p):
1747  r"""_set_from_binary(Bonded self, PyObject * p)"""
1748  return _IMP_atom.Bonded__set_from_binary(self, p)
1749 
1750  def __getstate__(self):
1751  p = self._get_as_binary()
1752  if len(self.__dict__) > 1:
1753  d = self.__dict__.copy()
1754  del d['this']
1755  p = (d, p)
1756  return p
1757 
1758  def __setstate__(self, p):
1759  if not hasattr(self, 'this'):
1760  self.__init__()
1761  if isinstance(p, tuple):
1762  d, p = p
1763  self.__dict__.update(d)
1764  return self._set_from_binary(p)
1765 
1766  __swig_destroy__ = _IMP_atom.delete_Bonded
1767 
1768 # Register Bonded in _IMP_atom:
1769 _IMP_atom.Bonded_swigregister(Bonded)
1770 
1771 def create_custom_bond(a, b, length, stiffness=-1):
1772  r"""create_custom_bond(Bonded a, Bonded b, IMP::Float length, IMP::Float stiffness=-1) -> Bond"""
1773  return _IMP_atom.create_custom_bond(a, b, length, stiffness)
1774 
1775 def create_bond(*args):
1776  r"""
1777  create_bond(Bonded a, Bonded b, IMP::Int t) -> Bond
1778  create_bond(Bonded a, Bonded b, Bond o) -> Bond
1779  """
1780  return _IMP_atom.create_bond(*args)
1781 
1782 def destroy_bond(b):
1783  r"""destroy_bond(Bond b)"""
1784  return _IMP_atom.destroy_bond(b)
1785 
1786 def get_bond(a, b):
1787  r"""get_bond(Bonded a, Bonded b) -> Bond"""
1788  return _IMP_atom.get_bond(a, b)
1789 class BondGeometry(IMP.display.SingletonGeometry):
1790  r"""Proxy of C++ IMP::atom::BondGeometry class."""
1791 
1792  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1793 
1794  def __init__(self, *args):
1795  r"""
1796  __init__(BondGeometry self, Particle p) -> BondGeometry
1797  __init__(BondGeometry self, Bond d) -> BondGeometry
1798  """
1799  _IMP_atom.BondGeometry_swiginit(self, _IMP_atom.new_BondGeometry(*args))
1800 
1801  def get_version_info(self):
1802  r"""get_version_info(BondGeometry self) -> VersionInfo"""
1803  return _IMP_atom.BondGeometry_get_version_info(self)
1804  __swig_destroy__ = _IMP_atom.delete_BondGeometry
1805 
1806  def __str__(self):
1807  r"""__str__(BondGeometry self) -> std::string"""
1808  return _IMP_atom.BondGeometry___str__(self)
1809 
1810  def __repr__(self):
1811  r"""__repr__(BondGeometry self) -> std::string"""
1812  return _IMP_atom.BondGeometry___repr__(self)
1813 
1814  @staticmethod
1815  def get_from(o):
1816  return _object_cast_to_BondGeometry(o)
1817 
1818 
1819 # Register BondGeometry in _IMP_atom:
1820 _IMP_atom.BondGeometry_swigregister(BondGeometry)
1821 class BondsGeometry(IMP.display.SingletonsGeometry):
1822  r"""Proxy of C++ IMP::atom::BondsGeometry class."""
1823 
1824  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1825 
1826  def __init__(self, sc):
1827  r"""__init__(BondsGeometry self, SingletonContainer sc) -> BondsGeometry"""
1828  _IMP_atom.BondsGeometry_swiginit(self, _IMP_atom.new_BondsGeometry(sc))
1829 
1830  def get_version_info(self):
1831  r"""get_version_info(BondsGeometry self) -> VersionInfo"""
1832  return _IMP_atom.BondsGeometry_get_version_info(self)
1833  __swig_destroy__ = _IMP_atom.delete_BondsGeometry
1834 
1835  def __str__(self):
1836  r"""__str__(BondsGeometry self) -> std::string"""
1837  return _IMP_atom.BondsGeometry___str__(self)
1838 
1839  def __repr__(self):
1840  r"""__repr__(BondsGeometry self) -> std::string"""
1841  return _IMP_atom.BondsGeometry___repr__(self)
1842 
1843  @staticmethod
1844  def get_from(o):
1845  return _object_cast_to_BondsGeometry(o)
1846 
1847 
1848 # Register BondsGeometry in _IMP_atom:
1849 _IMP_atom.BondsGeometry_swigregister(BondsGeometry)
1850 class Hierarchy(IMP.core.Hierarchy):
1851  r"""Proxy of C++ IMP::atom::Hierarchy class."""
1852 
1853  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1854 
1855  def __init__(self, *args):
1856  r"""
1857  __init__(Hierarchy self, Model m, ParticleIndex pi) -> Hierarchy
1858  __init__(Hierarchy self, _ParticleAdaptor pi) -> Hierarchy
1859  __init__(Hierarchy self) -> Hierarchy
1860  __init__(Hierarchy self, Hierarchy h) -> Hierarchy
1861  """
1862  _IMP_atom.Hierarchy_swiginit(self, _IMP_atom.new_Hierarchy(*args))
1863 
1864  @staticmethod
1865  def setup_particle(*args):
1866  r"""
1867  setup_particle(Particle p, _ParticleIndexesAdaptor children) -> Hierarchy
1868  setup_particle(Particle p) -> Hierarchy
1869  setup_particle(Model m, ParticleIndex pi, _ParticleIndexesAdaptor children=IMP::ParticleIndexesAdaptor()) -> Hierarchy
1870  """
1871  return _IMP_atom.Hierarchy_setup_particle(*args)
1872 
1873  @staticmethod
1874  def get_is_setup(*args):
1875  r"""
1876  get_is_setup(Particle p) -> bool
1877  get_is_setup(Model m, ParticleIndex p) -> bool
1878  """
1879  return _IMP_atom.Hierarchy_get_is_setup(*args)
1880 
1881  def get_is_valid(self, print_info=False):
1882  r"""get_is_valid(Hierarchy self, bool print_info=False) -> bool"""
1883  return _IMP_atom.Hierarchy_get_is_valid(self, print_info)
1884 
1885  def add_child(self, o):
1886  r"""add_child(Hierarchy self, Hierarchy o)"""
1887  return _IMP_atom.Hierarchy_add_child(self, o)
1888 
1889  def get_child(self, i):
1890  r"""get_child(Hierarchy self, unsigned int i) -> Hierarchy"""
1891  return _IMP_atom.Hierarchy_get_child(self, i)
1892 
1893  def get_children(self):
1894  r"""get_children(Hierarchy self) -> IMP::atom::Hierarchies"""
1895  return _IMP_atom.Hierarchy_get_children(self)
1896 
1897  def get_parent(self):
1898  r"""get_parent(Hierarchy self) -> Hierarchy"""
1899  return _IMP_atom.Hierarchy_get_parent(self)
1900 
1901  @staticmethod
1902  def get_traits():
1903  r"""get_traits() -> HierarchyTraits"""
1904  return _IMP_atom.Hierarchy_get_traits()
1905 
1906  def show(self, *args):
1907  r"""
1908  show(Hierarchy self, _ostream out, std::string delimiter)
1909  show(Hierarchy self, _ostream out=std::cout)
1910  """
1911  return _IMP_atom.Hierarchy_show(self, *args)
1912 
1913  def add_attribute(self, *args):
1914  r"""
1915  add_attribute(Hierarchy self, FloatKey k, IMP::Float v, bool opt)
1916  add_attribute(Hierarchy self, FloatKey a0, IMP::Float a1)
1917  add_attribute(Hierarchy self, IntKey a0, IMP::Int a1)
1918  add_attribute(Hierarchy self, FloatsKey a0, IMP::Floats a1)
1919  add_attribute(Hierarchy self, IntsKey a0, IMP::Ints a1)
1920  add_attribute(Hierarchy self, StringKey a0, IMP::String a1)
1921  add_attribute(Hierarchy self, ParticleIndexKey a0, Particle a1)
1922  add_attribute(Hierarchy self, ObjectKey a0, Object a1)
1923  add_attribute(Hierarchy self, SparseFloatKey a0, IMP::Float a1)
1924  add_attribute(Hierarchy self, SparseIntKey a0, IMP::Int a1)
1925  add_attribute(Hierarchy self, SparseStringKey a0, IMP::String a1)
1926  add_attribute(Hierarchy self, SparseParticleIndexKey a0, ParticleIndex a1)
1927  """
1928  return _IMP_atom.Hierarchy_add_attribute(self, *args)
1929 
1930  def get_value(self, *args):
1931  r"""
1932  get_value(Hierarchy self, FloatKey a0) -> IMP::Float
1933  get_value(Hierarchy self, IntKey a0) -> IMP::Int
1934  get_value(Hierarchy self, FloatsKey a0) -> IMP::Floats
1935  get_value(Hierarchy self, IntsKey a0) -> IMP::Ints
1936  get_value(Hierarchy self, StringKey a0) -> IMP::String
1937  get_value(Hierarchy self, ParticleIndexKey a0) -> Particle
1938  get_value(Hierarchy self, ObjectKey a0) -> Object
1939  get_value(Hierarchy self, SparseFloatKey a0) -> IMP::Float
1940  get_value(Hierarchy self, SparseIntKey a0) -> IMP::Int
1941  get_value(Hierarchy self, SparseStringKey a0) -> IMP::String
1942  get_value(Hierarchy self, SparseParticleIndexKey a0) -> ParticleIndex
1943  """
1944  return _IMP_atom.Hierarchy_get_value(self, *args)
1945 
1946  def set_value(self, *args):
1947  r"""
1948  set_value(Hierarchy self, FloatKey a0, IMP::Float a1)
1949  set_value(Hierarchy self, IntKey a0, IMP::Int a1)
1950  set_value(Hierarchy self, FloatsKey a0, IMP::Floats a1)
1951  set_value(Hierarchy self, IntsKey a0, IMP::Ints a1)
1952  set_value(Hierarchy self, StringKey a0, IMP::String a1)
1953  set_value(Hierarchy self, ParticleIndexKey a0, Particle a1)
1954  set_value(Hierarchy self, ObjectKey a0, Object a1)
1955  set_value(Hierarchy self, SparseFloatKey a0, IMP::Float a1)
1956  set_value(Hierarchy self, SparseIntKey a0, IMP::Int a1)
1957  set_value(Hierarchy self, SparseStringKey a0, IMP::String a1)
1958  set_value(Hierarchy self, SparseParticleIndexKey a0, ParticleIndex a1)
1959  """
1960  return _IMP_atom.Hierarchy_set_value(self, *args)
1961 
1962  def remove_attribute(self, *args):
1963  r"""
1964  remove_attribute(Hierarchy self, FloatKey a0)
1965  remove_attribute(Hierarchy self, IntKey a0)
1966  remove_attribute(Hierarchy self, FloatsKey a0)
1967  remove_attribute(Hierarchy self, IntsKey a0)
1968  remove_attribute(Hierarchy self, StringKey a0)
1969  remove_attribute(Hierarchy self, ParticleIndexKey a0)
1970  remove_attribute(Hierarchy self, ObjectKey a0)
1971  remove_attribute(Hierarchy self, SparseFloatKey a0)
1972  remove_attribute(Hierarchy self, SparseIntKey a0)
1973  remove_attribute(Hierarchy self, SparseStringKey a0)
1974  remove_attribute(Hierarchy self, SparseParticleIndexKey a0)
1975  """
1976  return _IMP_atom.Hierarchy_remove_attribute(self, *args)
1977 
1978  def has_attribute(self, *args):
1979  r"""
1980  has_attribute(Hierarchy self, FloatKey a0) -> bool
1981  has_attribute(Hierarchy self, IntKey a0) -> bool
1982  has_attribute(Hierarchy self, FloatsKey a0) -> bool
1983  has_attribute(Hierarchy self, IntsKey a0) -> bool
1984  has_attribute(Hierarchy self, StringKey a0) -> bool
1985  has_attribute(Hierarchy self, ParticleIndexKey a0) -> bool
1986  has_attribute(Hierarchy self, ObjectKey a0) -> bool
1987  has_attribute(Hierarchy self, SparseFloatKey a0) -> bool
1988  has_attribute(Hierarchy self, SparseIntKey a0) -> bool
1989  has_attribute(Hierarchy self, SparseStringKey a0) -> bool
1990  has_attribute(Hierarchy self, SparseParticleIndexKey a0) -> bool
1991  """
1992  return _IMP_atom.Hierarchy_has_attribute(self, *args)
1993 
1994  def get_derivative(self, a0):
1995  r"""get_derivative(Hierarchy self, FloatKey a0) -> double"""
1996  return _IMP_atom.Hierarchy_get_derivative(self, a0)
1997 
1998  def get_name(self):
1999  r"""get_name(Hierarchy self) -> std::string"""
2000  return _IMP_atom.Hierarchy_get_name(self)
2001 
2002  def clear_caches(self):
2003  r"""clear_caches(Hierarchy self)"""
2004  return _IMP_atom.Hierarchy_clear_caches(self)
2005 
2006  def set_name(self, a0):
2007  r"""set_name(Hierarchy self, std::string a0)"""
2008  return _IMP_atom.Hierarchy_set_name(self, a0)
2009 
2010  def set_check_level(self, a0):
2011  r"""set_check_level(Hierarchy self, IMP::CheckLevel a0)"""
2012  return _IMP_atom.Hierarchy_set_check_level(self, a0)
2013 
2014  def add_to_derivative(self, a0, a1, a2):
2015  r"""add_to_derivative(Hierarchy self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
2016  return _IMP_atom.Hierarchy_add_to_derivative(self, a0, a1, a2)
2017 
2018  def set_is_optimized(self, a0, a1):
2019  r"""set_is_optimized(Hierarchy self, FloatKey a0, bool a1)"""
2020  return _IMP_atom.Hierarchy_set_is_optimized(self, a0, a1)
2021 
2022  def get_is_optimized(self, a0):
2023  r"""get_is_optimized(Hierarchy self, FloatKey a0) -> bool"""
2024  return _IMP_atom.Hierarchy_get_is_optimized(self, a0)
2025 
2026  def get_check_level(self):
2027  r"""get_check_level(Hierarchy self) -> IMP::CheckLevel"""
2028  return _IMP_atom.Hierarchy_get_check_level(self)
2029 
2030  def __eq__(self, *args):
2031  r"""
2032  __eq__(Hierarchy self, Hierarchy o) -> bool
2033  __eq__(Hierarchy self, Particle d) -> bool
2034  """
2035  return _IMP_atom.Hierarchy___eq__(self, *args)
2036 
2037  def __ne__(self, *args):
2038  r"""
2039  __ne__(Hierarchy self, Hierarchy o) -> bool
2040  __ne__(Hierarchy self, Particle d) -> bool
2041  """
2042  return _IMP_atom.Hierarchy___ne__(self, *args)
2043 
2044  def __le__(self, *args):
2045  r"""
2046  __le__(Hierarchy self, Hierarchy o) -> bool
2047  __le__(Hierarchy self, Particle d) -> bool
2048  """
2049  return _IMP_atom.Hierarchy___le__(self, *args)
2050 
2051  def __lt__(self, *args):
2052  r"""
2053  __lt__(Hierarchy self, Hierarchy o) -> bool
2054  __lt__(Hierarchy self, Particle d) -> bool
2055  """
2056  return _IMP_atom.Hierarchy___lt__(self, *args)
2057 
2058  def __ge__(self, *args):
2059  r"""
2060  __ge__(Hierarchy self, Hierarchy o) -> bool
2061  __ge__(Hierarchy self, Particle d) -> bool
2062  """
2063  return _IMP_atom.Hierarchy___ge__(self, *args)
2064 
2065  def __gt__(self, *args):
2066  r"""
2067  __gt__(Hierarchy self, Hierarchy o) -> bool
2068  __gt__(Hierarchy self, Particle d) -> bool
2069  """
2070  return _IMP_atom.Hierarchy___gt__(self, *args)
2071 
2072  def __hash__(self):
2073  r"""__hash__(Hierarchy self) -> std::size_t"""
2074  return _IMP_atom.Hierarchy___hash__(self)
2075 
2076  def __str__(self):
2077  r"""__str__(Hierarchy self) -> std::string"""
2078  return _IMP_atom.Hierarchy___str__(self)
2079 
2080  def __repr__(self):
2081  r"""__repr__(Hierarchy self) -> std::string"""
2082  return _IMP_atom.Hierarchy___repr__(self)
2083 
2084  def _get_as_binary(self):
2085  r"""_get_as_binary(Hierarchy self) -> PyObject *"""
2086  return _IMP_atom.Hierarchy__get_as_binary(self)
2087 
2088  def _set_from_binary(self, p):
2089  r"""_set_from_binary(Hierarchy self, PyObject * p)"""
2090  return _IMP_atom.Hierarchy__set_from_binary(self, p)
2091 
2092  def __getstate__(self):
2093  p = self._get_as_binary()
2094  if len(self.__dict__) > 1:
2095  d = self.__dict__.copy()
2096  del d['this']
2097  p = (d, p)
2098  return p
2099 
2100  def __setstate__(self, p):
2101  if not hasattr(self, 'this'):
2102  self.__init__()
2103  if isinstance(p, tuple):
2104  d, p = p
2105  self.__dict__.update(d)
2106  return self._set_from_binary(p)
2107 
2108  __swig_destroy__ = _IMP_atom.delete_Hierarchy
2109 
2110 # Register Hierarchy in _IMP_atom:
2111 _IMP_atom.Hierarchy_swigregister(Hierarchy)
2112 ATOM_TYPE = _IMP_atom.ATOM_TYPE
2113 
2114 RESIDUE_TYPE = _IMP_atom.RESIDUE_TYPE
2115 
2116 CHAIN_TYPE = _IMP_atom.CHAIN_TYPE
2117 
2118 MOLECULE_TYPE = _IMP_atom.MOLECULE_TYPE
2119 
2120 DOMAIN_TYPE = _IMP_atom.DOMAIN_TYPE
2121 
2122 FRAGMENT_TYPE = _IMP_atom.FRAGMENT_TYPE
2123 
2124 XYZ_TYPE = _IMP_atom.XYZ_TYPE
2125 
2126 XYZR_TYPE = _IMP_atom.XYZR_TYPE
2127 
2128 MASS_TYPE = _IMP_atom.MASS_TYPE
2129 
2130 STATE_TYPE = _IMP_atom.STATE_TYPE
2131 
2132 
2133 def get_by_type(mhd, t):
2134  r"""get_by_type(Hierarchy mhd, IMP::atom::GetByType t) -> IMP::atom::Hierarchies"""
2135  return _IMP_atom.get_by_type(mhd, t)
2136 
2137 def create_fragment(ps):
2138  r"""create_fragment(IMP::atom::Hierarchies const & ps) -> Hierarchy"""
2139  return _IMP_atom.create_fragment(ps)
2140 
2141 def get_internal_bonds(mhd, with_representations=False):
2142  r"""get_internal_bonds(Hierarchy mhd, bool with_representations=False) -> IMP::atom::Bonds"""
2143  return _IMP_atom.get_internal_bonds(mhd, with_representations)
2144 
2145 def get_root(h):
2146  r"""get_root(Hierarchy h) -> Hierarchy"""
2147  return _IMP_atom.get_root(h)
2148 
2149 def show(*args):
2150  r"""show(Hierarchy h, _ostream out=std::cout)"""
2151  return _IMP_atom.show(*args)
2152 
2153 def create_rigid_body(*args):
2154  r"""
2155  create_rigid_body(IMP::atom::Hierarchies const & h, std::string name=std::string("created rigid body")) -> RigidBody
2156  create_rigid_body(Hierarchy h) -> RigidBody
2157  """
2158  return _IMP_atom.create_rigid_body(*args)
2159 
2160 def create_compatible_rigid_body(h, reference):
2161  r"""create_compatible_rigid_body(Hierarchy h, Hierarchy reference) -> RigidBody"""
2162  return _IMP_atom.create_compatible_rigid_body(h, reference)
2163 
2164 def get_is_heterogen(h):
2165  r"""get_is_heterogen(Hierarchy h) -> bool"""
2166  return _IMP_atom.get_is_heterogen(h)
2167 
2168 def create_clone(d):
2169  r"""create_clone(Hierarchy d) -> Hierarchy"""
2170  return _IMP_atom.create_clone(d)
2171 
2172 def create_clone_one(d):
2173  r"""create_clone_one(Hierarchy d) -> Hierarchy"""
2174  return _IMP_atom.create_clone_one(d)
2175 
2176 def destroy(d):
2177  r"""destroy(Hierarchy d)"""
2178  return _IMP_atom.destroy(d)
2179 
2180 def get_bounding_box(h):
2181  r"""get_bounding_box(Hierarchy h) -> BoundingBox3D"""
2182  return _IMP_atom.get_bounding_box(h)
2183 
2184 def get_bounding_sphere(h):
2185  r"""get_bounding_sphere(Hierarchy h) -> Sphere3D"""
2186  return _IMP_atom.get_bounding_sphere(h)
2187 class Angle(IMP.Decorator):
2188  r"""Proxy of C++ IMP::atom::Angle class."""
2189 
2190  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2191 
2192  def __init__(self, *args):
2193  r"""
2194  __init__(Angle self) -> Angle
2195  __init__(Angle self, Model m, ParticleIndex id) -> Angle
2196  __init__(Angle self, _ParticleAdaptor d) -> Angle
2197  """
2198  _IMP_atom.Angle_swiginit(self, _IMP_atom.new_Angle(*args))
2199 
2200  def show(self, *args):
2201  r"""show(Angle self, _ostream out=std::cout)"""
2202  return _IMP_atom.Angle_show(self, *args)
2203 
2204  @staticmethod
2205  def setup_particle(*args):
2206  r"""
2207  setup_particle(Model m, ParticleIndex pi, XYZ a, XYZ b, XYZ c) -> Angle
2208  setup_particle(_ParticleAdaptor pa, XYZ a, XYZ b, XYZ c) -> Angle
2209  """
2210  return _IMP_atom.Angle_setup_particle(*args)
2211 
2212  @staticmethod
2213  def get_is_setup(*args):
2214  r"""
2215  get_is_setup(_ParticleAdaptor p) -> bool
2216  get_is_setup(Model m, ParticleIndex pi) -> bool
2217  """
2218  return _IMP_atom.Angle_get_is_setup(*args)
2219 
2220  def get_particle(self, *args):
2221  r"""
2222  get_particle(Angle self) -> Particle
2223  get_particle(Angle self, unsigned int i) -> Particle
2224  """
2225  return _IMP_atom.Angle_get_particle(self, *args)
2226 
2227  def get_ideal(self):
2228  r"""get_ideal(Angle self) -> IMP::Float"""
2229  return _IMP_atom.Angle_get_ideal(self)
2230 
2231  def set_ideal(self, t):
2232  r"""set_ideal(Angle self, IMP::Float t)"""
2233  return _IMP_atom.Angle_set_ideal(self, t)
2234 
2235  def get_stiffness(self):
2236  r"""get_stiffness(Angle self) -> IMP::Float"""
2237  return _IMP_atom.Angle_get_stiffness(self)
2238 
2239  def set_stiffness(self, t):
2240  r"""set_stiffness(Angle self, IMP::Float t)"""
2241  return _IMP_atom.Angle_set_stiffness(self, t)
2242 
2243  @staticmethod
2244  def get_particle_key(i):
2245  r"""get_particle_key(unsigned int i) -> ParticleIndexKey"""
2246  return _IMP_atom.Angle_get_particle_key(i)
2247 
2248  @staticmethod
2249  def get_ideal_key():
2250  r"""get_ideal_key() -> FloatKey"""
2251  return _IMP_atom.Angle_get_ideal_key()
2252 
2253  @staticmethod
2254  def get_stiffness_key():
2255  r"""get_stiffness_key() -> FloatKey"""
2256  return _IMP_atom.Angle_get_stiffness_key()
2257 
2258  def add_attribute(self, *args):
2259  r"""
2260  add_attribute(Angle self, FloatKey k, IMP::Float v, bool opt)
2261  add_attribute(Angle self, FloatKey a0, IMP::Float a1)
2262  add_attribute(Angle self, IntKey a0, IMP::Int a1)
2263  add_attribute(Angle self, FloatsKey a0, IMP::Floats a1)
2264  add_attribute(Angle self, IntsKey a0, IMP::Ints a1)
2265  add_attribute(Angle self, StringKey a0, IMP::String a1)
2266  add_attribute(Angle self, ParticleIndexKey a0, Particle a1)
2267  add_attribute(Angle self, ObjectKey a0, Object a1)
2268  add_attribute(Angle self, SparseFloatKey a0, IMP::Float a1)
2269  add_attribute(Angle self, SparseIntKey a0, IMP::Int a1)
2270  add_attribute(Angle self, SparseStringKey a0, IMP::String a1)
2271  add_attribute(Angle self, SparseParticleIndexKey a0, ParticleIndex a1)
2272  """
2273  return _IMP_atom.Angle_add_attribute(self, *args)
2274 
2275  def get_value(self, *args):
2276  r"""
2277  get_value(Angle self, FloatKey a0) -> IMP::Float
2278  get_value(Angle self, IntKey a0) -> IMP::Int
2279  get_value(Angle self, FloatsKey a0) -> IMP::Floats
2280  get_value(Angle self, IntsKey a0) -> IMP::Ints
2281  get_value(Angle self, StringKey a0) -> IMP::String
2282  get_value(Angle self, ParticleIndexKey a0) -> Particle
2283  get_value(Angle self, ObjectKey a0) -> Object
2284  get_value(Angle self, SparseFloatKey a0) -> IMP::Float
2285  get_value(Angle self, SparseIntKey a0) -> IMP::Int
2286  get_value(Angle self, SparseStringKey a0) -> IMP::String
2287  get_value(Angle self, SparseParticleIndexKey a0) -> ParticleIndex
2288  """
2289  return _IMP_atom.Angle_get_value(self, *args)
2290 
2291  def set_value(self, *args):
2292  r"""
2293  set_value(Angle self, FloatKey a0, IMP::Float a1)
2294  set_value(Angle self, IntKey a0, IMP::Int a1)
2295  set_value(Angle self, FloatsKey a0, IMP::Floats a1)
2296  set_value(Angle self, IntsKey a0, IMP::Ints a1)
2297  set_value(Angle self, StringKey a0, IMP::String a1)
2298  set_value(Angle self, ParticleIndexKey a0, Particle a1)
2299  set_value(Angle self, ObjectKey a0, Object a1)
2300  set_value(Angle self, SparseFloatKey a0, IMP::Float a1)
2301  set_value(Angle self, SparseIntKey a0, IMP::Int a1)
2302  set_value(Angle self, SparseStringKey a0, IMP::String a1)
2303  set_value(Angle self, SparseParticleIndexKey a0, ParticleIndex a1)
2304  """
2305  return _IMP_atom.Angle_set_value(self, *args)
2306 
2307  def remove_attribute(self, *args):
2308  r"""
2309  remove_attribute(Angle self, FloatKey a0)
2310  remove_attribute(Angle self, IntKey a0)
2311  remove_attribute(Angle self, FloatsKey a0)
2312  remove_attribute(Angle self, IntsKey a0)
2313  remove_attribute(Angle self, StringKey a0)
2314  remove_attribute(Angle self, ParticleIndexKey a0)
2315  remove_attribute(Angle self, ObjectKey a0)
2316  remove_attribute(Angle self, SparseFloatKey a0)
2317  remove_attribute(Angle self, SparseIntKey a0)
2318  remove_attribute(Angle self, SparseStringKey a0)
2319  remove_attribute(Angle self, SparseParticleIndexKey a0)
2320  """
2321  return _IMP_atom.Angle_remove_attribute(self, *args)
2322 
2323  def has_attribute(self, *args):
2324  r"""
2325  has_attribute(Angle self, FloatKey a0) -> bool
2326  has_attribute(Angle self, IntKey a0) -> bool
2327  has_attribute(Angle self, FloatsKey a0) -> bool
2328  has_attribute(Angle self, IntsKey a0) -> bool
2329  has_attribute(Angle self, StringKey a0) -> bool
2330  has_attribute(Angle self, ParticleIndexKey a0) -> bool
2331  has_attribute(Angle self, ObjectKey a0) -> bool
2332  has_attribute(Angle self, SparseFloatKey a0) -> bool
2333  has_attribute(Angle self, SparseIntKey a0) -> bool
2334  has_attribute(Angle self, SparseStringKey a0) -> bool
2335  has_attribute(Angle self, SparseParticleIndexKey a0) -> bool
2336  """
2337  return _IMP_atom.Angle_has_attribute(self, *args)
2338 
2339  def get_derivative(self, a0):
2340  r"""get_derivative(Angle self, FloatKey a0) -> double"""
2341  return _IMP_atom.Angle_get_derivative(self, a0)
2342 
2343  def get_name(self):
2344  r"""get_name(Angle self) -> std::string"""
2345  return _IMP_atom.Angle_get_name(self)
2346 
2347  def clear_caches(self):
2348  r"""clear_caches(Angle self)"""
2349  return _IMP_atom.Angle_clear_caches(self)
2350 
2351  def set_name(self, a0):
2352  r"""set_name(Angle self, std::string a0)"""
2353  return _IMP_atom.Angle_set_name(self, a0)
2354 
2355  def set_check_level(self, a0):
2356  r"""set_check_level(Angle self, IMP::CheckLevel a0)"""
2357  return _IMP_atom.Angle_set_check_level(self, a0)
2358 
2359  def add_to_derivative(self, a0, a1, a2):
2360  r"""add_to_derivative(Angle self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
2361  return _IMP_atom.Angle_add_to_derivative(self, a0, a1, a2)
2362 
2363  def set_is_optimized(self, a0, a1):
2364  r"""set_is_optimized(Angle self, FloatKey a0, bool a1)"""
2365  return _IMP_atom.Angle_set_is_optimized(self, a0, a1)
2366 
2367  def get_is_optimized(self, a0):
2368  r"""get_is_optimized(Angle self, FloatKey a0) -> bool"""
2369  return _IMP_atom.Angle_get_is_optimized(self, a0)
2370 
2371  def get_check_level(self):
2372  r"""get_check_level(Angle self) -> IMP::CheckLevel"""
2373  return _IMP_atom.Angle_get_check_level(self)
2374 
2375  def __eq__(self, *args):
2376  r"""
2377  __eq__(Angle self, Angle o) -> bool
2378  __eq__(Angle self, Particle d) -> bool
2379  """
2380  return _IMP_atom.Angle___eq__(self, *args)
2381 
2382  def __ne__(self, *args):
2383  r"""
2384  __ne__(Angle self, Angle o) -> bool
2385  __ne__(Angle self, Particle d) -> bool
2386  """
2387  return _IMP_atom.Angle___ne__(self, *args)
2388 
2389  def __le__(self, *args):
2390  r"""
2391  __le__(Angle self, Angle o) -> bool
2392  __le__(Angle self, Particle d) -> bool
2393  """
2394  return _IMP_atom.Angle___le__(self, *args)
2395 
2396  def __lt__(self, *args):
2397  r"""
2398  __lt__(Angle self, Angle o) -> bool
2399  __lt__(Angle self, Particle d) -> bool
2400  """
2401  return _IMP_atom.Angle___lt__(self, *args)
2402 
2403  def __ge__(self, *args):
2404  r"""
2405  __ge__(Angle self, Angle o) -> bool
2406  __ge__(Angle self, Particle d) -> bool
2407  """
2408  return _IMP_atom.Angle___ge__(self, *args)
2409 
2410  def __gt__(self, *args):
2411  r"""
2412  __gt__(Angle self, Angle o) -> bool
2413  __gt__(Angle self, Particle d) -> bool
2414  """
2415  return _IMP_atom.Angle___gt__(self, *args)
2416 
2417  def __hash__(self):
2418  r"""__hash__(Angle self) -> std::size_t"""
2419  return _IMP_atom.Angle___hash__(self)
2420 
2421  def __str__(self):
2422  r"""__str__(Angle self) -> std::string"""
2423  return _IMP_atom.Angle___str__(self)
2424 
2425  def __repr__(self):
2426  r"""__repr__(Angle self) -> std::string"""
2427  return _IMP_atom.Angle___repr__(self)
2428 
2429  def _get_as_binary(self):
2430  r"""_get_as_binary(Angle self) -> PyObject *"""
2431  return _IMP_atom.Angle__get_as_binary(self)
2432 
2433  def _set_from_binary(self, p):
2434  r"""_set_from_binary(Angle self, PyObject * p)"""
2435  return _IMP_atom.Angle__set_from_binary(self, p)
2436 
2437  def __getstate__(self):
2438  p = self._get_as_binary()
2439  if len(self.__dict__) > 1:
2440  d = self.__dict__.copy()
2441  del d['this']
2442  p = (d, p)
2443  return p
2444 
2445  def __setstate__(self, p):
2446  if not hasattr(self, 'this'):
2447  self.__init__()
2448  if isinstance(p, tuple):
2449  d, p = p
2450  self.__dict__.update(d)
2451  return self._set_from_binary(p)
2452 
2453  __swig_destroy__ = _IMP_atom.delete_Angle
2454 
2455 # Register Angle in _IMP_atom:
2456 _IMP_atom.Angle_swigregister(Angle)
2457 class Dihedral(IMP.Decorator):
2458  r"""Proxy of C++ IMP::atom::Dihedral class."""
2459 
2460  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2461 
2462  def __init__(self, *args):
2463  r"""
2464  __init__(Dihedral self) -> Dihedral
2465  __init__(Dihedral self, Model m, ParticleIndex id) -> Dihedral
2466  __init__(Dihedral self, _ParticleAdaptor d) -> Dihedral
2467  """
2468  _IMP_atom.Dihedral_swiginit(self, _IMP_atom.new_Dihedral(*args))
2469 
2470  def show(self, *args):
2471  r"""show(Dihedral self, _ostream out=std::cout)"""
2472  return _IMP_atom.Dihedral_show(self, *args)
2473 
2474  @staticmethod
2475  def setup_particle(*args):
2476  r"""
2477  setup_particle(Model m, ParticleIndex pi, XYZ a, XYZ b, XYZ c, XYZ d) -> Dihedral
2478  setup_particle(_ParticleAdaptor pa, XYZ a, XYZ b, XYZ c, XYZ d) -> Dihedral
2479  """
2480  return _IMP_atom.Dihedral_setup_particle(*args)
2481 
2482  @staticmethod
2483  def get_is_setup(*args):
2484  r"""
2485  get_is_setup(_ParticleAdaptor p) -> bool
2486  get_is_setup(Model m, ParticleIndex pi) -> bool
2487  """
2488  return _IMP_atom.Dihedral_get_is_setup(*args)
2489 
2490  def get_particle(self, *args):
2491  r"""
2492  get_particle(Dihedral self) -> Particle
2493  get_particle(Dihedral self, unsigned int i) -> Particle
2494  """
2495  return _IMP_atom.Dihedral_get_particle(self, *args)
2496 
2497  def get_ideal(self):
2498  r"""get_ideal(Dihedral self) -> IMP::Float"""
2499  return _IMP_atom.Dihedral_get_ideal(self)
2500 
2501  def set_ideal(self, t):
2502  r"""set_ideal(Dihedral self, IMP::Float t)"""
2503  return _IMP_atom.Dihedral_set_ideal(self, t)
2504 
2505  def get_multiplicity(self):
2506  r"""get_multiplicity(Dihedral self) -> IMP::Int"""
2507  return _IMP_atom.Dihedral_get_multiplicity(self)
2508 
2509  def set_multiplicity(self, t):
2510  r"""set_multiplicity(Dihedral self, IMP::Int t)"""
2511  return _IMP_atom.Dihedral_set_multiplicity(self, t)
2512 
2513  def get_stiffness(self):
2514  r"""get_stiffness(Dihedral self) -> IMP::Float"""
2515  return _IMP_atom.Dihedral_get_stiffness(self)
2516 
2517  def set_stiffness(self, t):
2518  r"""set_stiffness(Dihedral self, IMP::Float t)"""
2519  return _IMP_atom.Dihedral_set_stiffness(self, t)
2520 
2521  @staticmethod
2522  def get_particle_key(i):
2523  r"""get_particle_key(unsigned int i) -> ParticleIndexKey"""
2524  return _IMP_atom.Dihedral_get_particle_key(i)
2525 
2526  @staticmethod
2527  def get_ideal_key():
2528  r"""get_ideal_key() -> FloatKey"""
2529  return _IMP_atom.Dihedral_get_ideal_key()
2530 
2531  @staticmethod
2532  def get_multiplicity_key():
2533  r"""get_multiplicity_key() -> IntKey"""
2534  return _IMP_atom.Dihedral_get_multiplicity_key()
2535 
2536  @staticmethod
2537  def get_stiffness_key():
2538  r"""get_stiffness_key() -> FloatKey"""
2539  return _IMP_atom.Dihedral_get_stiffness_key()
2540 
2541  def add_attribute(self, *args):
2542  r"""
2543  add_attribute(Dihedral self, FloatKey k, IMP::Float v, bool opt)
2544  add_attribute(Dihedral self, FloatKey a0, IMP::Float a1)
2545  add_attribute(Dihedral self, IntKey a0, IMP::Int a1)
2546  add_attribute(Dihedral self, FloatsKey a0, IMP::Floats a1)
2547  add_attribute(Dihedral self, IntsKey a0, IMP::Ints a1)
2548  add_attribute(Dihedral self, StringKey a0, IMP::String a1)
2549  add_attribute(Dihedral self, ParticleIndexKey a0, Particle a1)
2550  add_attribute(Dihedral self, ObjectKey a0, Object a1)
2551  add_attribute(Dihedral self, SparseFloatKey a0, IMP::Float a1)
2552  add_attribute(Dihedral self, SparseIntKey a0, IMP::Int a1)
2553  add_attribute(Dihedral self, SparseStringKey a0, IMP::String a1)
2554  add_attribute(Dihedral self, SparseParticleIndexKey a0, ParticleIndex a1)
2555  """
2556  return _IMP_atom.Dihedral_add_attribute(self, *args)
2557 
2558  def get_value(self, *args):
2559  r"""
2560  get_value(Dihedral self, FloatKey a0) -> IMP::Float
2561  get_value(Dihedral self, IntKey a0) -> IMP::Int
2562  get_value(Dihedral self, FloatsKey a0) -> IMP::Floats
2563  get_value(Dihedral self, IntsKey a0) -> IMP::Ints
2564  get_value(Dihedral self, StringKey a0) -> IMP::String
2565  get_value(Dihedral self, ParticleIndexKey a0) -> Particle
2566  get_value(Dihedral self, ObjectKey a0) -> Object
2567  get_value(Dihedral self, SparseFloatKey a0) -> IMP::Float
2568  get_value(Dihedral self, SparseIntKey a0) -> IMP::Int
2569  get_value(Dihedral self, SparseStringKey a0) -> IMP::String
2570  get_value(Dihedral self, SparseParticleIndexKey a0) -> ParticleIndex
2571  """
2572  return _IMP_atom.Dihedral_get_value(self, *args)
2573 
2574  def set_value(self, *args):
2575  r"""
2576  set_value(Dihedral self, FloatKey a0, IMP::Float a1)
2577  set_value(Dihedral self, IntKey a0, IMP::Int a1)
2578  set_value(Dihedral self, FloatsKey a0, IMP::Floats a1)
2579  set_value(Dihedral self, IntsKey a0, IMP::Ints a1)
2580  set_value(Dihedral self, StringKey a0, IMP::String a1)
2581  set_value(Dihedral self, ParticleIndexKey a0, Particle a1)
2582  set_value(Dihedral self, ObjectKey a0, Object a1)
2583  set_value(Dihedral self, SparseFloatKey a0, IMP::Float a1)
2584  set_value(Dihedral self, SparseIntKey a0, IMP::Int a1)
2585  set_value(Dihedral self, SparseStringKey a0, IMP::String a1)
2586  set_value(Dihedral self, SparseParticleIndexKey a0, ParticleIndex a1)
2587  """
2588  return _IMP_atom.Dihedral_set_value(self, *args)
2589 
2590  def remove_attribute(self, *args):
2591  r"""
2592  remove_attribute(Dihedral self, FloatKey a0)
2593  remove_attribute(Dihedral self, IntKey a0)
2594  remove_attribute(Dihedral self, FloatsKey a0)
2595  remove_attribute(Dihedral self, IntsKey a0)
2596  remove_attribute(Dihedral self, StringKey a0)
2597  remove_attribute(Dihedral self, ParticleIndexKey a0)
2598  remove_attribute(Dihedral self, ObjectKey a0)
2599  remove_attribute(Dihedral self, SparseFloatKey a0)
2600  remove_attribute(Dihedral self, SparseIntKey a0)
2601  remove_attribute(Dihedral self, SparseStringKey a0)
2602  remove_attribute(Dihedral self, SparseParticleIndexKey a0)
2603  """
2604  return _IMP_atom.Dihedral_remove_attribute(self, *args)
2605 
2606  def has_attribute(self, *args):
2607  r"""
2608  has_attribute(Dihedral self, FloatKey a0) -> bool
2609  has_attribute(Dihedral self, IntKey a0) -> bool
2610  has_attribute(Dihedral self, FloatsKey a0) -> bool
2611  has_attribute(Dihedral self, IntsKey a0) -> bool
2612  has_attribute(Dihedral self, StringKey a0) -> bool
2613  has_attribute(Dihedral self, ParticleIndexKey a0) -> bool
2614  has_attribute(Dihedral self, ObjectKey a0) -> bool
2615  has_attribute(Dihedral self, SparseFloatKey a0) -> bool
2616  has_attribute(Dihedral self, SparseIntKey a0) -> bool
2617  has_attribute(Dihedral self, SparseStringKey a0) -> bool
2618  has_attribute(Dihedral self, SparseParticleIndexKey a0) -> bool
2619  """
2620  return _IMP_atom.Dihedral_has_attribute(self, *args)
2621 
2622  def get_derivative(self, a0):
2623  r"""get_derivative(Dihedral self, FloatKey a0) -> double"""
2624  return _IMP_atom.Dihedral_get_derivative(self, a0)
2625 
2626  def get_name(self):
2627  r"""get_name(Dihedral self) -> std::string"""
2628  return _IMP_atom.Dihedral_get_name(self)
2629 
2630  def clear_caches(self):
2631  r"""clear_caches(Dihedral self)"""
2632  return _IMP_atom.Dihedral_clear_caches(self)
2633 
2634  def set_name(self, a0):
2635  r"""set_name(Dihedral self, std::string a0)"""
2636  return _IMP_atom.Dihedral_set_name(self, a0)
2637 
2638  def set_check_level(self, a0):
2639  r"""set_check_level(Dihedral self, IMP::CheckLevel a0)"""
2640  return _IMP_atom.Dihedral_set_check_level(self, a0)
2641 
2642  def add_to_derivative(self, a0, a1, a2):
2643  r"""add_to_derivative(Dihedral self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
2644  return _IMP_atom.Dihedral_add_to_derivative(self, a0, a1, a2)
2645 
2646  def set_is_optimized(self, a0, a1):
2647  r"""set_is_optimized(Dihedral self, FloatKey a0, bool a1)"""
2648  return _IMP_atom.Dihedral_set_is_optimized(self, a0, a1)
2649 
2650  def get_is_optimized(self, a0):
2651  r"""get_is_optimized(Dihedral self, FloatKey a0) -> bool"""
2652  return _IMP_atom.Dihedral_get_is_optimized(self, a0)
2653 
2654  def get_check_level(self):
2655  r"""get_check_level(Dihedral self) -> IMP::CheckLevel"""
2656  return _IMP_atom.Dihedral_get_check_level(self)
2657 
2658  def __eq__(self, *args):
2659  r"""
2660  __eq__(Dihedral self, Dihedral o) -> bool
2661  __eq__(Dihedral self, Particle d) -> bool
2662  """
2663  return _IMP_atom.Dihedral___eq__(self, *args)
2664 
2665  def __ne__(self, *args):
2666  r"""
2667  __ne__(Dihedral self, Dihedral o) -> bool
2668  __ne__(Dihedral self, Particle d) -> bool
2669  """
2670  return _IMP_atom.Dihedral___ne__(self, *args)
2671 
2672  def __le__(self, *args):
2673  r"""
2674  __le__(Dihedral self, Dihedral o) -> bool
2675  __le__(Dihedral self, Particle d) -> bool
2676  """
2677  return _IMP_atom.Dihedral___le__(self, *args)
2678 
2679  def __lt__(self, *args):
2680  r"""
2681  __lt__(Dihedral self, Dihedral o) -> bool
2682  __lt__(Dihedral self, Particle d) -> bool
2683  """
2684  return _IMP_atom.Dihedral___lt__(self, *args)
2685 
2686  def __ge__(self, *args):
2687  r"""
2688  __ge__(Dihedral self, Dihedral o) -> bool
2689  __ge__(Dihedral self, Particle d) -> bool
2690  """
2691  return _IMP_atom.Dihedral___ge__(self, *args)
2692 
2693  def __gt__(self, *args):
2694  r"""
2695  __gt__(Dihedral self, Dihedral o) -> bool
2696  __gt__(Dihedral self, Particle d) -> bool
2697  """
2698  return _IMP_atom.Dihedral___gt__(self, *args)
2699 
2700  def __hash__(self):
2701  r"""__hash__(Dihedral self) -> std::size_t"""
2702  return _IMP_atom.Dihedral___hash__(self)
2703 
2704  def __str__(self):
2705  r"""__str__(Dihedral self) -> std::string"""
2706  return _IMP_atom.Dihedral___str__(self)
2707 
2708  def __repr__(self):
2709  r"""__repr__(Dihedral self) -> std::string"""
2710  return _IMP_atom.Dihedral___repr__(self)
2711 
2712  def _get_as_binary(self):
2713  r"""_get_as_binary(Dihedral self) -> PyObject *"""
2714  return _IMP_atom.Dihedral__get_as_binary(self)
2715 
2716  def _set_from_binary(self, p):
2717  r"""_set_from_binary(Dihedral self, PyObject * p)"""
2718  return _IMP_atom.Dihedral__set_from_binary(self, p)
2719 
2720  def __getstate__(self):
2721  p = self._get_as_binary()
2722  if len(self.__dict__) > 1:
2723  d = self.__dict__.copy()
2724  del d['this']
2725  p = (d, p)
2726  return p
2727 
2728  def __setstate__(self, p):
2729  if not hasattr(self, 'this'):
2730  self.__init__()
2731  if isinstance(p, tuple):
2732  d, p = p
2733  self.__dict__.update(d)
2734  return self._set_from_binary(p)
2735 
2736  __swig_destroy__ = _IMP_atom.delete_Dihedral
2737 
2738 # Register Dihedral in _IMP_atom:
2739 _IMP_atom.Dihedral_swigregister(Dihedral)
2740 class SmoothingFunction(IMP.Object):
2741  r"""Proxy of C++ IMP::atom::SmoothingFunction class."""
2742 
2743  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2744 
2745  def __init__(self, *args, **kwargs):
2746  raise AttributeError("No constructor defined - class is abstract")
2747 
2748  def __call__(self, *args):
2749  r"""
2750  __call__(SmoothingFunction self, double score, double distance) -> double
2751  __call__(SmoothingFunction self, double score, double deriv, double distance) -> IMP::DerivativePair
2752  """
2753  return _IMP_atom.SmoothingFunction___call__(self, *args)
2754  __swig_destroy__ = _IMP_atom.delete_SmoothingFunction
2755 
2756  def __str__(self):
2757  r"""__str__(SmoothingFunction self) -> std::string"""
2758  return _IMP_atom.SmoothingFunction___str__(self)
2759 
2760  def __repr__(self):
2761  r"""__repr__(SmoothingFunction self) -> std::string"""
2762  return _IMP_atom.SmoothingFunction___repr__(self)
2763 
2764  @staticmethod
2765  def get_from(o):
2766  return _object_cast_to_SmoothingFunction(o)
2767 
2768 
2769 # Register SmoothingFunction in _IMP_atom:
2770 _IMP_atom.SmoothingFunction_swigregister(SmoothingFunction)
2771 class ForceSwitch(SmoothingFunction):
2772  r"""Proxy of C++ IMP::atom::ForceSwitch class."""
2773 
2774  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2775 
2776  def __init__(self, min_distance, max_distance):
2777  r"""__init__(ForceSwitch self, double min_distance, double max_distance) -> ForceSwitch"""
2778  _IMP_atom.ForceSwitch_swiginit(self, _IMP_atom.new_ForceSwitch(min_distance, max_distance))
2779 
2780  def __call__(self, *args):
2781  r"""
2782  __call__(ForceSwitch self, double score, double distance) -> double
2783  __call__(ForceSwitch self, double score, double deriv, double distance) -> IMP::DerivativePair
2784  """
2785  return _IMP_atom.ForceSwitch___call__(self, *args)
2786 
2787  def get_version_info(self):
2788  r"""get_version_info(ForceSwitch self) -> VersionInfo"""
2789  return _IMP_atom.ForceSwitch_get_version_info(self)
2790  __swig_destroy__ = _IMP_atom.delete_ForceSwitch
2791 
2792  def __str__(self):
2793  r"""__str__(ForceSwitch self) -> std::string"""
2794  return _IMP_atom.ForceSwitch___str__(self)
2795 
2796  def __repr__(self):
2797  r"""__repr__(ForceSwitch self) -> std::string"""
2798  return _IMP_atom.ForceSwitch___repr__(self)
2799 
2800  @staticmethod
2801  def get_from(o):
2802  return _object_cast_to_ForceSwitch(o)
2803 
2804 
2805 # Register ForceSwitch in _IMP_atom:
2806 _IMP_atom.ForceSwitch_swigregister(ForceSwitch)
2807 class AngleSingletonScore(IMP.SingletonScore):
2808  r"""Proxy of C++ IMP::atom::AngleSingletonScore class."""
2809 
2810  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2811 
2812  def __init__(self, f):
2813  r"""__init__(AngleSingletonScore self, UnaryFunction f) -> AngleSingletonScore"""
2814  _IMP_atom.AngleSingletonScore_swiginit(self, _IMP_atom.new_AngleSingletonScore(f))
2815 
2816  def do_get_inputs(self, m, pis):
2817  r"""do_get_inputs(AngleSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
2818  return _IMP_atom.AngleSingletonScore_do_get_inputs(self, m, pis)
2819 
2820  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
2821  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"""
2822  return _IMP_atom.AngleSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
2823 
2824  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
2825  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"""
2826  return _IMP_atom.AngleSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
2827 
2828  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
2829  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"""
2830  return _IMP_atom.AngleSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
2831 
2832  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
2833  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"""
2834  return _IMP_atom.AngleSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
2835 
2836  def get_version_info(self):
2837  r"""get_version_info(AngleSingletonScore self) -> VersionInfo"""
2838  return _IMP_atom.AngleSingletonScore_get_version_info(self)
2839  __swig_destroy__ = _IMP_atom.delete_AngleSingletonScore
2840 
2841  def __str__(self):
2842  r"""__str__(AngleSingletonScore self) -> std::string"""
2843  return _IMP_atom.AngleSingletonScore___str__(self)
2844 
2845  def __repr__(self):
2846  r"""__repr__(AngleSingletonScore self) -> std::string"""
2847  return _IMP_atom.AngleSingletonScore___repr__(self)
2848 
2849  @staticmethod
2850  def get_from(o):
2851  return _object_cast_to_AngleSingletonScore(o)
2852 
2853 
2854 # Register AngleSingletonScore in _IMP_atom:
2855 _IMP_atom.AngleSingletonScore_swigregister(AngleSingletonScore)
2856 class BondEndpointsRefiner(IMP.Refiner):
2857  r"""Proxy of C++ IMP::atom::BondEndpointsRefiner class."""
2858 
2859  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2860 
2861  def __init__(self):
2862  r"""__init__(BondEndpointsRefiner self) -> BondEndpointsRefiner"""
2863  _IMP_atom.BondEndpointsRefiner_swiginit(self, _IMP_atom.new_BondEndpointsRefiner())
2864 
2865  def do_get_inputs(self, m, pis):
2866  r"""do_get_inputs(BondEndpointsRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
2867  return _IMP_atom.BondEndpointsRefiner_do_get_inputs(self, m, pis)
2868 
2869  def get_version_info(self):
2870  r"""get_version_info(BondEndpointsRefiner self) -> VersionInfo"""
2871  return _IMP_atom.BondEndpointsRefiner_get_version_info(self)
2872  __swig_destroy__ = _IMP_atom.delete_BondEndpointsRefiner
2873 
2874  def __str__(self):
2875  r"""__str__(BondEndpointsRefiner self) -> std::string"""
2876  return _IMP_atom.BondEndpointsRefiner___str__(self)
2877 
2878  def __repr__(self):
2879  r"""__repr__(BondEndpointsRefiner self) -> std::string"""
2880  return _IMP_atom.BondEndpointsRefiner___repr__(self)
2881 
2882  @staticmethod
2883  def get_from(o):
2884  return _object_cast_to_BondEndpointsRefiner(o)
2885 
2886 
2887 # Register BondEndpointsRefiner in _IMP_atom:
2888 _IMP_atom.BondEndpointsRefiner_swigregister(BondEndpointsRefiner)
2889 class BondPairContainer(IMP.PairContainer):
2890  r"""Proxy of C++ IMP::atom::BondPairContainer class."""
2891 
2892  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2893 
2894  def __init__(self, sc):
2895  r"""__init__(BondPairContainer self, SingletonContainer sc) -> BondPairContainer"""
2896  _IMP_atom.BondPairContainer_swiginit(self, _IMP_atom.new_BondPairContainer(sc))
2897 
2898  def do_get_inputs(self):
2899  r"""do_get_inputs(BondPairContainer self) -> IMP::ModelObjectsTemp"""
2900  return _IMP_atom.BondPairContainer_do_get_inputs(self)
2901 
2902  def do_apply(self, sm):
2903  r"""do_apply(BondPairContainer self, PairModifier sm)"""
2904  return _IMP_atom.BondPairContainer_do_apply(self, sm)
2905 
2906  def do_apply_moved(self, sm, moved_pis, reset_pis):
2907  r"""do_apply_moved(BondPairContainer self, PairModifier sm, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
2908  return _IMP_atom.BondPairContainer_do_apply_moved(self, sm, moved_pis, reset_pis)
2909 
2910  def get_version_info(self):
2911  r"""get_version_info(BondPairContainer self) -> VersionInfo"""
2912  return _IMP_atom.BondPairContainer_get_version_info(self)
2913  __swig_destroy__ = _IMP_atom.delete_BondPairContainer
2914 
2915  def __str__(self):
2916  r"""__str__(BondPairContainer self) -> std::string"""
2917  return _IMP_atom.BondPairContainer___str__(self)
2918 
2919  def __repr__(self):
2920  r"""__repr__(BondPairContainer self) -> std::string"""
2921  return _IMP_atom.BondPairContainer___repr__(self)
2922 
2923  @staticmethod
2924  def get_from(o):
2925  return _object_cast_to_BondPairContainer(o)
2926 
2927 
2928 # Register BondPairContainer in _IMP_atom:
2929 _IMP_atom.BondPairContainer_swigregister(BondPairContainer)
2930 class BondSingletonScore(IMP.SingletonScore):
2931  r"""Proxy of C++ IMP::atom::BondSingletonScore class."""
2932 
2933  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2934 
2935  def __init__(self, f):
2936  r"""__init__(BondSingletonScore self, UnaryFunction f) -> BondSingletonScore"""
2937  _IMP_atom.BondSingletonScore_swiginit(self, _IMP_atom.new_BondSingletonScore(f))
2938 
2939  def get_unary_function(self):
2940  r"""get_unary_function(BondSingletonScore self) -> UnaryFunction"""
2941  return _IMP_atom.BondSingletonScore_get_unary_function(self)
2942 
2943  def do_get_inputs(self, m, pis):
2944  r"""do_get_inputs(BondSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
2945  return _IMP_atom.BondSingletonScore_do_get_inputs(self, m, pis)
2946 
2947  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
2948  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"""
2949  return _IMP_atom.BondSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
2950 
2951  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
2952  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"""
2953  return _IMP_atom.BondSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
2954 
2955  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
2956  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"""
2957  return _IMP_atom.BondSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
2958 
2959  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
2960  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"""
2961  return _IMP_atom.BondSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
2962 
2963  def get_version_info(self):
2964  r"""get_version_info(BondSingletonScore self) -> VersionInfo"""
2965  return _IMP_atom.BondSingletonScore_get_version_info(self)
2966  __swig_destroy__ = _IMP_atom.delete_BondSingletonScore
2967 
2968  def __str__(self):
2969  r"""__str__(BondSingletonScore self) -> std::string"""
2970  return _IMP_atom.BondSingletonScore___str__(self)
2971 
2972  def __repr__(self):
2973  r"""__repr__(BondSingletonScore self) -> std::string"""
2974  return _IMP_atom.BondSingletonScore___repr__(self)
2975 
2976  @staticmethod
2977  def get_from(o):
2978  return _object_cast_to_BondSingletonScore(o)
2979 
2980 
2981 # Register BondSingletonScore in _IMP_atom:
2982 _IMP_atom.BondSingletonScore_swigregister(BondSingletonScore)
2983 class DihedralSingletonScore(IMP.SingletonScore):
2984  r"""Proxy of C++ IMP::atom::DihedralSingletonScore class."""
2985 
2986  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2987 
2988  def __init__(self):
2989  r"""__init__(DihedralSingletonScore self) -> DihedralSingletonScore"""
2990  _IMP_atom.DihedralSingletonScore_swiginit(self, _IMP_atom.new_DihedralSingletonScore())
2991 
2992  def do_get_inputs(self, m, pis):
2993  r"""do_get_inputs(DihedralSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
2994  return _IMP_atom.DihedralSingletonScore_do_get_inputs(self, m, pis)
2995 
2996  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
2997  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"""
2998  return _IMP_atom.DihedralSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
2999 
3000  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
3001  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"""
3002  return _IMP_atom.DihedralSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
3003 
3004  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
3005  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"""
3006  return _IMP_atom.DihedralSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
3007 
3008  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
3009  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"""
3010  return _IMP_atom.DihedralSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
3011 
3012  def get_version_info(self):
3013  r"""get_version_info(DihedralSingletonScore self) -> VersionInfo"""
3014  return _IMP_atom.DihedralSingletonScore_get_version_info(self)
3015  __swig_destroy__ = _IMP_atom.delete_DihedralSingletonScore
3016 
3017  def __str__(self):
3018  r"""__str__(DihedralSingletonScore self) -> std::string"""
3019  return _IMP_atom.DihedralSingletonScore___str__(self)
3020 
3021  def __repr__(self):
3022  r"""__repr__(DihedralSingletonScore self) -> std::string"""
3023  return _IMP_atom.DihedralSingletonScore___repr__(self)
3024 
3025  @staticmethod
3026  def get_from(o):
3027  return _object_cast_to_DihedralSingletonScore(o)
3028 
3029 
3030  def _get_as_binary(self):
3031  r"""_get_as_binary(DihedralSingletonScore self) -> PyObject *"""
3032  return _IMP_atom.DihedralSingletonScore__get_as_binary(self)
3033 
3034  def _set_from_binary(self, p):
3035  r"""_set_from_binary(DihedralSingletonScore self, PyObject * p)"""
3036  return _IMP_atom.DihedralSingletonScore__set_from_binary(self, p)
3037 
3038  def __getstate__(self):
3039  p = self._get_as_binary()
3040  if len(self.__dict__) > 1:
3041  d = self.__dict__.copy()
3042  del d['this']
3043  p = (d, p)
3044  return p
3045 
3046  def __setstate__(self, p):
3047  if not hasattr(self, 'this'):
3048  self.__init__()
3049  if isinstance(p, tuple):
3050  d, p = p
3051  self.__dict__.update(d)
3052  return self._set_from_binary(p)
3053 
3054 
3055 # Register DihedralSingletonScore in _IMP_atom:
3056 _IMP_atom.DihedralSingletonScore_swigregister(DihedralSingletonScore)
3057 class ImproperSingletonScore(IMP.SingletonScore):
3058  r"""Proxy of C++ IMP::atom::ImproperSingletonScore class."""
3059 
3060  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3061 
3062  def __init__(self, f):
3063  r"""__init__(ImproperSingletonScore self, UnaryFunction f) -> ImproperSingletonScore"""
3064  _IMP_atom.ImproperSingletonScore_swiginit(self, _IMP_atom.new_ImproperSingletonScore(f))
3065 
3066  def do_get_inputs(self, m, pis):
3067  r"""do_get_inputs(ImproperSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
3068  return _IMP_atom.ImproperSingletonScore_do_get_inputs(self, m, pis)
3069 
3070  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
3071  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"""
3072  return _IMP_atom.ImproperSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
3073 
3074  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
3075  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"""
3076  return _IMP_atom.ImproperSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
3077 
3078  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
3079  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"""
3080  return _IMP_atom.ImproperSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
3081 
3082  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
3083  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"""
3084  return _IMP_atom.ImproperSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
3085 
3086  def get_version_info(self):
3087  r"""get_version_info(ImproperSingletonScore self) -> VersionInfo"""
3088  return _IMP_atom.ImproperSingletonScore_get_version_info(self)
3089  __swig_destroy__ = _IMP_atom.delete_ImproperSingletonScore
3090 
3091  def __str__(self):
3092  r"""__str__(ImproperSingletonScore self) -> std::string"""
3093  return _IMP_atom.ImproperSingletonScore___str__(self)
3094 
3095  def __repr__(self):
3096  r"""__repr__(ImproperSingletonScore self) -> std::string"""
3097  return _IMP_atom.ImproperSingletonScore___repr__(self)
3098 
3099  @staticmethod
3100  def get_from(o):
3101  return _object_cast_to_ImproperSingletonScore(o)
3102 
3103 
3104 # Register ImproperSingletonScore in _IMP_atom:
3105 _IMP_atom.ImproperSingletonScore_swigregister(ImproperSingletonScore)
3106 class CenterOfMass(IMP.Decorator):
3107  r"""Proxy of C++ IMP::atom::CenterOfMass class."""
3108 
3109  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3110 
3111  def get_constraint(self):
3112  r"""get_constraint(CenterOfMass self) -> Constraint"""
3113  return _IMP_atom.CenterOfMass_get_constraint(self)
3114 
3115  def get_mass(self):
3116  r"""get_mass(CenterOfMass self) -> IMP::Float"""
3117  return _IMP_atom.CenterOfMass_get_mass(self)
3118 
3119  def get_coordinate(self, i):
3120  r"""get_coordinate(CenterOfMass self, int i) -> IMP::Float"""
3121  return _IMP_atom.CenterOfMass_get_coordinate(self, i)
3122 
3123  def get_coordinates(self):
3124  r"""get_coordinates(CenterOfMass self) -> Vector3D"""
3125  return _IMP_atom.CenterOfMass_get_coordinates(self)
3126 
3127  def __init__(self, *args):
3128  r"""
3129  __init__(CenterOfMass self) -> CenterOfMass
3130  __init__(CenterOfMass self, Model m, ParticleIndex id) -> CenterOfMass
3131  __init__(CenterOfMass self, _ParticleAdaptor d) -> CenterOfMass
3132  """
3133  _IMP_atom.CenterOfMass_swiginit(self, _IMP_atom.new_CenterOfMass(*args))
3134 
3135  def show(self, *args):
3136  r"""show(CenterOfMass self, _ostream out=std::cout)"""
3137  return _IMP_atom.CenterOfMass_show(self, *args)
3138 
3139  @staticmethod
3140  def setup_particle(*args):
3141  r"""
3142  setup_particle(Model m, ParticleIndex pi, _ParticleIndexesAdaptor members) -> CenterOfMass
3143  setup_particle(_ParticleAdaptor pa, _ParticleIndexesAdaptor members) -> CenterOfMass
3144  setup_particle(Model m, ParticleIndex pi, Refiner refiner) -> CenterOfMass
3145  setup_particle(_ParticleAdaptor pa, Refiner refiner) -> CenterOfMass
3146  """
3147  return _IMP_atom.CenterOfMass_setup_particle(*args)
3148 
3149  @staticmethod
3150  def teardown_particle(com):
3151  r"""teardown_particle(CenterOfMass com)"""
3152  return _IMP_atom.CenterOfMass_teardown_particle(com)
3153 
3154  @staticmethod
3155  def get_is_setup(*args):
3156  r"""
3157  get_is_setup(_ParticleAdaptor p) -> bool
3158  get_is_setup(Model m, ParticleIndex pi) -> bool
3159  """
3160  return _IMP_atom.CenterOfMass_get_is_setup(*args)
3161 
3162  def add_attribute(self, *args):
3163  r"""
3164  add_attribute(CenterOfMass self, FloatKey k, IMP::Float v, bool opt)
3165  add_attribute(CenterOfMass self, FloatKey a0, IMP::Float a1)
3166  add_attribute(CenterOfMass self, IntKey a0, IMP::Int a1)
3167  add_attribute(CenterOfMass self, FloatsKey a0, IMP::Floats a1)
3168  add_attribute(CenterOfMass self, IntsKey a0, IMP::Ints a1)
3169  add_attribute(CenterOfMass self, StringKey a0, IMP::String a1)
3170  add_attribute(CenterOfMass self, ParticleIndexKey a0, Particle a1)
3171  add_attribute(CenterOfMass self, ObjectKey a0, Object a1)
3172  add_attribute(CenterOfMass self, SparseFloatKey a0, IMP::Float a1)
3173  add_attribute(CenterOfMass self, SparseIntKey a0, IMP::Int a1)
3174  add_attribute(CenterOfMass self, SparseStringKey a0, IMP::String a1)
3175  add_attribute(CenterOfMass self, SparseParticleIndexKey a0, ParticleIndex a1)
3176  """
3177  return _IMP_atom.CenterOfMass_add_attribute(self, *args)
3178 
3179  def get_value(self, *args):
3180  r"""
3181  get_value(CenterOfMass self, FloatKey a0) -> IMP::Float
3182  get_value(CenterOfMass self, IntKey a0) -> IMP::Int
3183  get_value(CenterOfMass self, FloatsKey a0) -> IMP::Floats
3184  get_value(CenterOfMass self, IntsKey a0) -> IMP::Ints
3185  get_value(CenterOfMass self, StringKey a0) -> IMP::String
3186  get_value(CenterOfMass self, ParticleIndexKey a0) -> Particle
3187  get_value(CenterOfMass self, ObjectKey a0) -> Object
3188  get_value(CenterOfMass self, SparseFloatKey a0) -> IMP::Float
3189  get_value(CenterOfMass self, SparseIntKey a0) -> IMP::Int
3190  get_value(CenterOfMass self, SparseStringKey a0) -> IMP::String
3191  get_value(CenterOfMass self, SparseParticleIndexKey a0) -> ParticleIndex
3192  """
3193  return _IMP_atom.CenterOfMass_get_value(self, *args)
3194 
3195  def set_value(self, *args):
3196  r"""
3197  set_value(CenterOfMass self, FloatKey a0, IMP::Float a1)
3198  set_value(CenterOfMass self, IntKey a0, IMP::Int a1)
3199  set_value(CenterOfMass self, FloatsKey a0, IMP::Floats a1)
3200  set_value(CenterOfMass self, IntsKey a0, IMP::Ints a1)
3201  set_value(CenterOfMass self, StringKey a0, IMP::String a1)
3202  set_value(CenterOfMass self, ParticleIndexKey a0, Particle a1)
3203  set_value(CenterOfMass self, ObjectKey a0, Object a1)
3204  set_value(CenterOfMass self, SparseFloatKey a0, IMP::Float a1)
3205  set_value(CenterOfMass self, SparseIntKey a0, IMP::Int a1)
3206  set_value(CenterOfMass self, SparseStringKey a0, IMP::String a1)
3207  set_value(CenterOfMass self, SparseParticleIndexKey a0, ParticleIndex a1)
3208  """
3209  return _IMP_atom.CenterOfMass_set_value(self, *args)
3210 
3211  def remove_attribute(self, *args):
3212  r"""
3213  remove_attribute(CenterOfMass self, FloatKey a0)
3214  remove_attribute(CenterOfMass self, IntKey a0)
3215  remove_attribute(CenterOfMass self, FloatsKey a0)
3216  remove_attribute(CenterOfMass self, IntsKey a0)
3217  remove_attribute(CenterOfMass self, StringKey a0)
3218  remove_attribute(CenterOfMass self, ParticleIndexKey a0)
3219  remove_attribute(CenterOfMass self, ObjectKey a0)
3220  remove_attribute(CenterOfMass self, SparseFloatKey a0)
3221  remove_attribute(CenterOfMass self, SparseIntKey a0)
3222  remove_attribute(CenterOfMass self, SparseStringKey a0)
3223  remove_attribute(CenterOfMass self, SparseParticleIndexKey a0)
3224  """
3225  return _IMP_atom.CenterOfMass_remove_attribute(self, *args)
3226 
3227  def has_attribute(self, *args):
3228  r"""
3229  has_attribute(CenterOfMass self, FloatKey a0) -> bool
3230  has_attribute(CenterOfMass self, IntKey a0) -> bool
3231  has_attribute(CenterOfMass self, FloatsKey a0) -> bool
3232  has_attribute(CenterOfMass self, IntsKey a0) -> bool
3233  has_attribute(CenterOfMass self, StringKey a0) -> bool
3234  has_attribute(CenterOfMass self, ParticleIndexKey a0) -> bool
3235  has_attribute(CenterOfMass self, ObjectKey a0) -> bool
3236  has_attribute(CenterOfMass self, SparseFloatKey a0) -> bool
3237  has_attribute(CenterOfMass self, SparseIntKey a0) -> bool
3238  has_attribute(CenterOfMass self, SparseStringKey a0) -> bool
3239  has_attribute(CenterOfMass self, SparseParticleIndexKey a0) -> bool
3240  """
3241  return _IMP_atom.CenterOfMass_has_attribute(self, *args)
3242 
3243  def get_derivative(self, a0):
3244  r"""get_derivative(CenterOfMass self, FloatKey a0) -> double"""
3245  return _IMP_atom.CenterOfMass_get_derivative(self, a0)
3246 
3247  def get_name(self):
3248  r"""get_name(CenterOfMass self) -> std::string"""
3249  return _IMP_atom.CenterOfMass_get_name(self)
3250 
3251  def clear_caches(self):
3252  r"""clear_caches(CenterOfMass self)"""
3253  return _IMP_atom.CenterOfMass_clear_caches(self)
3254 
3255  def set_name(self, a0):
3256  r"""set_name(CenterOfMass self, std::string a0)"""
3257  return _IMP_atom.CenterOfMass_set_name(self, a0)
3258 
3259  def set_check_level(self, a0):
3260  r"""set_check_level(CenterOfMass self, IMP::CheckLevel a0)"""
3261  return _IMP_atom.CenterOfMass_set_check_level(self, a0)
3262 
3263  def add_to_derivative(self, a0, a1, a2):
3264  r"""add_to_derivative(CenterOfMass self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
3265  return _IMP_atom.CenterOfMass_add_to_derivative(self, a0, a1, a2)
3266 
3267  def set_is_optimized(self, a0, a1):
3268  r"""set_is_optimized(CenterOfMass self, FloatKey a0, bool a1)"""
3269  return _IMP_atom.CenterOfMass_set_is_optimized(self, a0, a1)
3270 
3271  def get_is_optimized(self, a0):
3272  r"""get_is_optimized(CenterOfMass self, FloatKey a0) -> bool"""
3273  return _IMP_atom.CenterOfMass_get_is_optimized(self, a0)
3274 
3275  def get_check_level(self):
3276  r"""get_check_level(CenterOfMass self) -> IMP::CheckLevel"""
3277  return _IMP_atom.CenterOfMass_get_check_level(self)
3278 
3279  def __eq__(self, *args):
3280  r"""
3281  __eq__(CenterOfMass self, CenterOfMass o) -> bool
3282  __eq__(CenterOfMass self, Particle d) -> bool
3283  """
3284  return _IMP_atom.CenterOfMass___eq__(self, *args)
3285 
3286  def __ne__(self, *args):
3287  r"""
3288  __ne__(CenterOfMass self, CenterOfMass o) -> bool
3289  __ne__(CenterOfMass self, Particle d) -> bool
3290  """
3291  return _IMP_atom.CenterOfMass___ne__(self, *args)
3292 
3293  def __le__(self, *args):
3294  r"""
3295  __le__(CenterOfMass self, CenterOfMass o) -> bool
3296  __le__(CenterOfMass self, Particle d) -> bool
3297  """
3298  return _IMP_atom.CenterOfMass___le__(self, *args)
3299 
3300  def __lt__(self, *args):
3301  r"""
3302  __lt__(CenterOfMass self, CenterOfMass o) -> bool
3303  __lt__(CenterOfMass self, Particle d) -> bool
3304  """
3305  return _IMP_atom.CenterOfMass___lt__(self, *args)
3306 
3307  def __ge__(self, *args):
3308  r"""
3309  __ge__(CenterOfMass self, CenterOfMass o) -> bool
3310  __ge__(CenterOfMass self, Particle d) -> bool
3311  """
3312  return _IMP_atom.CenterOfMass___ge__(self, *args)
3313 
3314  def __gt__(self, *args):
3315  r"""
3316  __gt__(CenterOfMass self, CenterOfMass o) -> bool
3317  __gt__(CenterOfMass self, Particle d) -> bool
3318  """
3319  return _IMP_atom.CenterOfMass___gt__(self, *args)
3320 
3321  def __hash__(self):
3322  r"""__hash__(CenterOfMass self) -> std::size_t"""
3323  return _IMP_atom.CenterOfMass___hash__(self)
3324 
3325  def __str__(self):
3326  r"""__str__(CenterOfMass self) -> std::string"""
3327  return _IMP_atom.CenterOfMass___str__(self)
3328 
3329  def __repr__(self):
3330  r"""__repr__(CenterOfMass self) -> std::string"""
3331  return _IMP_atom.CenterOfMass___repr__(self)
3332 
3333  def _get_as_binary(self):
3334  r"""_get_as_binary(CenterOfMass self) -> PyObject *"""
3335  return _IMP_atom.CenterOfMass__get_as_binary(self)
3336 
3337  def _set_from_binary(self, p):
3338  r"""_set_from_binary(CenterOfMass self, PyObject * p)"""
3339  return _IMP_atom.CenterOfMass__set_from_binary(self, p)
3340 
3341  def __getstate__(self):
3342  p = self._get_as_binary()
3343  if len(self.__dict__) > 1:
3344  d = self.__dict__.copy()
3345  del d['this']
3346  p = (d, p)
3347  return p
3348 
3349  def __setstate__(self, p):
3350  if not hasattr(self, 'this'):
3351  self.__init__()
3352  if isinstance(p, tuple):
3353  d, p = p
3354  self.__dict__.update(d)
3355  return self._set_from_binary(p)
3356 
3357  __swig_destroy__ = _IMP_atom.delete_CenterOfMass
3358 
3359 # Register CenterOfMass in _IMP_atom:
3360 _IMP_atom.CenterOfMass_swigregister(CenterOfMass)
3361 class CoverBond(IMP.SingletonModifier):
3362  r"""Proxy of C++ IMP::atom::CoverBond class."""
3363 
3364  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3365 
3366  def __init__(self):
3367  r"""__init__(CoverBond self) -> CoverBond"""
3368  _IMP_atom.CoverBond_swiginit(self, _IMP_atom.new_CoverBond())
3369 
3370  def do_get_inputs(self, m, pis):
3371  r"""do_get_inputs(CoverBond self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
3372  return _IMP_atom.CoverBond_do_get_inputs(self, m, pis)
3373 
3374  def do_get_outputs(self, m, pis):
3375  r"""do_get_outputs(CoverBond self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
3376  return _IMP_atom.CoverBond_do_get_outputs(self, m, pis)
3377 
3378  def get_version_info(self):
3379  r"""get_version_info(CoverBond self) -> VersionInfo"""
3380  return _IMP_atom.CoverBond_get_version_info(self)
3381  __swig_destroy__ = _IMP_atom.delete_CoverBond
3382 
3383  def __str__(self):
3384  r"""__str__(CoverBond self) -> std::string"""
3385  return _IMP_atom.CoverBond___str__(self)
3386 
3387  def __repr__(self):
3388  r"""__repr__(CoverBond self) -> std::string"""
3389  return _IMP_atom.CoverBond___repr__(self)
3390 
3391  @staticmethod
3392  def get_from(o):
3393  return _object_cast_to_CoverBond(o)
3394 
3395 
3396 # Register CoverBond in _IMP_atom:
3397 _IMP_atom.CoverBond_swigregister(CoverBond)
3398 class Simulator(IMP.Optimizer):
3399  r"""Proxy of C++ IMP::atom::Simulator class."""
3400 
3401  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3402 
3403  def __init__(self, *args):
3404  r"""__init__(Simulator self, Model m, std::string name="Simulator %1%", double wave_factor=1.0) -> Simulator"""
3405  if self.__class__ == Simulator:
3406  _self = None
3407  else:
3408  _self = self
3409  _IMP_atom.Simulator_swiginit(self, _IMP_atom.new_Simulator(_self, *args))
3410 
3411  if self.__class__ != Simulator:
3412  _director_objects.register(self)
3413 
3414 
3415 
3416 
3417  def simulate(self, time_in_fs):
3418  r"""simulate(Simulator self, double time_in_fs) -> double"""
3419  return _IMP_atom.Simulator_simulate(self, time_in_fs)
3420 
3421  def simulate_wave(self, time_in_fs, max_time_step_factor=10.0, base=1.5):
3422  r"""simulate_wave(Simulator self, double time_in_fs, double max_time_step_factor=10.0, double base=1.5) -> double"""
3423  return _IMP_atom.Simulator_simulate_wave(self, time_in_fs, max_time_step_factor, base)
3424 
3425  def get_temperature(self):
3426  r"""get_temperature(Simulator self) -> double"""
3427  return _IMP_atom.Simulator_get_temperature(self)
3428 
3429  def set_temperature(self, d):
3430  r"""set_temperature(Simulator self, double d)"""
3431  return _IMP_atom.Simulator_set_temperature(self, d)
3432 
3433  def set_maximum_time_step(self, ts):
3434  r"""set_maximum_time_step(Simulator self, double ts)"""
3435  return _IMP_atom.Simulator_set_maximum_time_step(self, ts)
3436 
3437  def get_maximum_time_step(self):
3438  r"""get_maximum_time_step(Simulator self) -> double"""
3439  return _IMP_atom.Simulator_get_maximum_time_step(self)
3440 
3441  def get_last_time_step(self):
3442  r"""get_last_time_step(Simulator self) -> double"""
3443  return _IMP_atom.Simulator_get_last_time_step(self)
3444 
3445  def set_time_step(self, ts):
3446  r"""set_time_step(Simulator self, double ts)"""
3447  return _IMP_atom.Simulator_set_time_step(self, ts)
3448 
3449  def get_kt(self):
3450  r"""get_kt(Simulator self) -> double"""
3451  return _IMP_atom.Simulator_get_kt(self)
3452 
3453  def get_current_time(self):
3454  r"""get_current_time(Simulator self) -> double"""
3455  return _IMP_atom.Simulator_get_current_time(self)
3456 
3457  def set_current_time(self, ct):
3458  r"""set_current_time(Simulator self, double ct)"""
3459  return _IMP_atom.Simulator_set_current_time(self, ct)
3460 
3461  def get_simulation_particles(self):
3462  r"""get_simulation_particles(Simulator self) -> IMP::ParticlesTemp"""
3463  return _IMP_atom.Simulator_get_simulation_particles(self)
3464 
3465  def get_simulation_particle_indexes(self):
3466  r"""get_simulation_particle_indexes(Simulator self) -> IMP::ParticleIndexes"""
3467  return _IMP_atom.Simulator_get_simulation_particle_indexes(self)
3468  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)
3469  def __set_particles(self, obj): IMP._list_util.set_varlist(self.particles, obj)
3470  def __del_particles(self): IMP._list_util.del_varlist(self.particles)
3471  particles = property(__get_particles, __set_particles, __del_particles, doc="List of ##ucnames")
3472 
3473  def remove_particle(self, d):
3474  r"""remove_particle(Simulator self, Particle d)"""
3475  return _IMP_atom.Simulator_remove_particle(self, d)
3476 
3477  def _python_index_particle(self, d, start, stop):
3478  r"""_python_index_particle(Simulator self, Particle d, unsigned int start, unsigned int stop) -> unsigned int"""
3479  return _IMP_atom.Simulator__python_index_particle(self, d, start, stop)
3480 
3481  def remove_particles(self, d):
3482  r"""remove_particles(Simulator self, IMP::Particles const & d)"""
3483  return _IMP_atom.Simulator_remove_particles(self, d)
3484 
3485  def set_particles(self, ps):
3486  r"""set_particles(Simulator self, IMP::Particles const & ps)"""
3487  return _IMP_atom.Simulator_set_particles(self, ps)
3488 
3489  def set_particles_order(self, objs):
3490  r"""set_particles_order(Simulator self, IMP::Particles const & objs)"""
3491  return _IMP_atom.Simulator_set_particles_order(self, objs)
3492 
3493  def add_particle(self, obj):
3494  r"""add_particle(Simulator self, Particle obj) -> unsigned int"""
3495  return _IMP_atom.Simulator_add_particle(self, obj)
3496 
3497  def add_particles(self, objs):
3498  r"""add_particles(Simulator self, IMP::Particles const & objs)"""
3499  return _IMP_atom.Simulator_add_particles(self, objs)
3500 
3501  def clear_particles(self):
3502  r"""clear_particles(Simulator self)"""
3503  return _IMP_atom.Simulator_clear_particles(self)
3504 
3505  def get_number_of_particles(self):
3506  r"""get_number_of_particles(Simulator self) -> unsigned int"""
3507  return _IMP_atom.Simulator_get_number_of_particles(self)
3508 
3509  def get_has_particles(self):
3510  r"""get_has_particles(Simulator self) -> bool"""
3511  return _IMP_atom.Simulator_get_has_particles(self)
3512 
3513  def get_particle(self, i):
3514  r"""get_particle(Simulator self, unsigned int i) -> Particle"""
3515  return _IMP_atom.Simulator_get_particle(self, i)
3516 
3517  def get_particles(self):
3518  r"""get_particles(Simulator self) -> IMP::Particles"""
3519  return _IMP_atom.Simulator_get_particles(self)
3520 
3521  def erase_particle(self, i):
3522  r"""erase_particle(Simulator self, unsigned int i)"""
3523  return _IMP_atom.Simulator_erase_particle(self, i)
3524 
3525  def reserve_particles(self, sz):
3526  r"""reserve_particles(Simulator self, unsigned int sz)"""
3527  return _IMP_atom.Simulator_reserve_particles(self, sz)
3528 
3529  def do_optimize(self, max_steps):
3530  r"""do_optimize(Simulator self, unsigned int max_steps) -> IMP::Float"""
3531  return _IMP_atom.Simulator_do_optimize(self, max_steps)
3532 
3533  def setup(self, arg0):
3534  r"""setup(Simulator self, IMP::ParticleIndexes const & arg0)"""
3535  return _IMP_atom.Simulator_setup(self, arg0)
3536 
3537  def do_step(self, sc, dt):
3538  r"""do_step(Simulator self, IMP::ParticleIndexes const & sc, double dt) -> double"""
3539  return _IMP_atom.Simulator_do_step(self, sc, dt)
3540 
3541  def get_is_simulation_particle(self, p):
3542  r"""get_is_simulation_particle(Simulator self, ParticleIndex p) -> bool"""
3543  return _IMP_atom.Simulator_get_is_simulation_particle(self, p)
3544 
3545  def do_simulate(self, time):
3546  r"""do_simulate(Simulator self, double time) -> double"""
3547  return _IMP_atom.Simulator_do_simulate(self, time)
3548 
3549  def do_simulate_wave(self, time_in_fs, max_time_step_factor=10.0, base=1.5):
3550  r"""do_simulate_wave(Simulator self, double time_in_fs, double max_time_step_factor=10.0, double base=1.5) -> double"""
3551  return _IMP_atom.Simulator_do_simulate_wave(self, time_in_fs, max_time_step_factor, base)
3552 
3553  def __str__(self):
3554  r"""__str__(Simulator self) -> std::string"""
3555  return _IMP_atom.Simulator___str__(self)
3556 
3557  def __repr__(self):
3558  r"""__repr__(Simulator self) -> std::string"""
3559  return _IMP_atom.Simulator___repr__(self)
3560 
3561  @staticmethod
3562  def get_from(o):
3563  return _object_cast_to_Simulator(o)
3564 
3565 
3566  def do_show(self, out):
3567  pass
3568 
3569  @staticmethod
3570  def get_from(o):
3571  return _object_cast_to_Simulator(o)
3572 
3573  __swig_destroy__ = _IMP_atom.delete_Simulator
3574  def __disown__(self):
3575  self.this.disown()
3576  _IMP_atom.disown_Simulator(self)
3577  return weakref.proxy(self)
3578 
3579  def do_destroy(self):
3580  r"""do_destroy(Simulator self)"""
3581  return _IMP_atom.Simulator_do_destroy(self)
3582 
3583  def handle_set_has_required_score_states(self, arg0):
3584  r"""handle_set_has_required_score_states(Simulator self, bool arg0)"""
3585  return _IMP_atom.Simulator_handle_set_has_required_score_states(self, arg0)
3586 
3587  def do_get_inputs(self):
3588  r"""do_get_inputs(Simulator self) -> IMP::ModelObjectsTemp"""
3589  return _IMP_atom.Simulator_do_get_inputs(self)
3590 
3591  def do_get_outputs(self):
3592  r"""do_get_outputs(Simulator self) -> IMP::ModelObjectsTemp"""
3593  return _IMP_atom.Simulator_do_get_outputs(self)
3594 
3595  def do_get_interactions(self):
3596  r"""do_get_interactions(Simulator self) -> IMP::ModelObjectsTemps"""
3597  return _IMP_atom.Simulator_do_get_interactions(self)
3598 
3599 # Register Simulator in _IMP_atom:
3600 _IMP_atom.Simulator_swigregister(Simulator)
3601 IMP_ATOM_DEFAULT_BD_RANDOM_POOL_SIZE = _IMP_atom.IMP_ATOM_DEFAULT_BD_RANDOM_POOL_SIZE
3602 
3603 class BrownianDynamics(Simulator):
3604  r"""Proxy of C++ IMP::atom::BrownianDynamics class."""
3605 
3606  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3607 
3608  def __init__(self, *args):
3609  r"""__init__(BrownianDynamics self, Model m, std::string name="BrownianDynamics%1%", double wave_factor=1.0, unsigned int random_pool_size=10000) -> BrownianDynamics"""
3610  _IMP_atom.BrownianDynamics_swiginit(self, _IMP_atom.new_BrownianDynamics(*args))
3611 
3612  def set_maximum_move(self, ms_in_A):
3613  r"""set_maximum_move(BrownianDynamics self, double ms_in_A)"""
3614  return _IMP_atom.BrownianDynamics_set_maximum_move(self, ms_in_A)
3615 
3616  def set_use_stochastic_runge_kutta(self, tf):
3617  r"""set_use_stochastic_runge_kutta(BrownianDynamics self, bool tf)"""
3618  return _IMP_atom.BrownianDynamics_set_use_stochastic_runge_kutta(self, tf)
3619 
3620  def get_version_info(self):
3621  r"""get_version_info(BrownianDynamics self) -> VersionInfo"""
3622  return _IMP_atom.BrownianDynamics_get_version_info(self)
3623  __swig_destroy__ = _IMP_atom.delete_BrownianDynamics
3624 
3625  def __str__(self):
3626  r"""__str__(BrownianDynamics self) -> std::string"""
3627  return _IMP_atom.BrownianDynamics___str__(self)
3628 
3629  def __repr__(self):
3630  r"""__repr__(BrownianDynamics self) -> std::string"""
3631  return _IMP_atom.BrownianDynamics___repr__(self)
3632 
3633  @staticmethod
3634  def get_from(o):
3635  return _object_cast_to_BrownianDynamics(o)
3636 
3637 
3638 # Register BrownianDynamics in _IMP_atom:
3639 _IMP_atom.BrownianDynamics_swigregister(BrownianDynamics)
3640 
3642  r"""get_maximum_time_step_estimate(BrownianDynamics bd) -> double"""
3643  return _IMP_atom.get_maximum_time_step_estimate(bd)
3644 
3645 def get_harmonic_sigma(D, f):
3646  r"""get_harmonic_sigma(double D, double f) -> double"""
3647  return _IMP_atom.get_harmonic_sigma(D, f)
3648 class BrownianDynamicsTAMD(BrownianDynamics):
3649  r"""Proxy of C++ IMP::atom::BrownianDynamicsTAMD class."""
3650 
3651  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3652 
3653  def __init__(self, *args):
3654  r"""__init__(BrownianDynamicsTAMD self, Model m, std::string name="BrownianDynamicsTAMD%1%", double wave_factor=1.0) -> BrownianDynamicsTAMD"""
3655  _IMP_atom.BrownianDynamicsTAMD_swiginit(self, _IMP_atom.new_BrownianDynamicsTAMD(*args))
3656 
3657  def __str__(self):
3658  r"""__str__(BrownianDynamicsTAMD self) -> std::string"""
3659  return _IMP_atom.BrownianDynamicsTAMD___str__(self)
3660 
3661  def __repr__(self):
3662  r"""__repr__(BrownianDynamicsTAMD self) -> std::string"""
3663  return _IMP_atom.BrownianDynamicsTAMD___repr__(self)
3664 
3665  @staticmethod
3666  def get_from(o):
3667  return _object_cast_to_BrownianDynamicsTAMD(o)
3668 
3669  __swig_destroy__ = _IMP_atom.delete_BrownianDynamicsTAMD
3670 
3671 # Register BrownianDynamicsTAMD in _IMP_atom:
3672 _IMP_atom.BrownianDynamicsTAMD_swigregister(BrownianDynamicsTAMD)
3673 class Diffusion(IMP.core.XYZ):
3674  r"""Proxy of C++ IMP::atom::Diffusion class."""
3675 
3676  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3677 
3678  def __init__(self, *args):
3679  r"""
3680  __init__(Diffusion self) -> Diffusion
3681  __init__(Diffusion self, Model m, ParticleIndex id) -> Diffusion
3682  __init__(Diffusion self, _ParticleAdaptor d) -> Diffusion
3683  """
3684  _IMP_atom.Diffusion_swiginit(self, _IMP_atom.new_Diffusion(*args))
3685 
3686  def show(self, *args):
3687  r"""show(Diffusion self, _ostream out=std::cout)"""
3688  return _IMP_atom.Diffusion_show(self, *args)
3689 
3690  @staticmethod
3691  def setup_particle(*args):
3692  r"""
3693  setup_particle(Model m, ParticleIndex pi, IMP::Float D) -> Diffusion
3694  setup_particle(_ParticleAdaptor pa, IMP::Float D) -> Diffusion
3695  setup_particle(Model m, ParticleIndex pi, Vector3D v, IMP::Float D) -> Diffusion
3696  setup_particle(_ParticleAdaptor pa, Vector3D v, IMP::Float D) -> Diffusion
3697  setup_particle(Model m, ParticleIndex pi) -> Diffusion
3698  setup_particle(_ParticleAdaptor pa) -> Diffusion
3699  """
3700  return _IMP_atom.Diffusion_setup_particle(*args)
3701 
3702  @staticmethod
3703  def get_is_setup(*args):
3704  r"""
3705  get_is_setup(_ParticleAdaptor p) -> bool
3706  get_is_setup(Model m, ParticleIndex p) -> bool
3707  """
3708  return _IMP_atom.Diffusion_get_is_setup(*args)
3709 
3710  def set_diffusion_coefficient(self, d):
3711  r"""set_diffusion_coefficient(Diffusion self, double d)"""
3712  return _IMP_atom.Diffusion_set_diffusion_coefficient(self, d)
3713 
3714  def get_diffusion_coefficient(self):
3715  r"""get_diffusion_coefficient(Diffusion self) -> double"""
3716  return _IMP_atom.Diffusion_get_diffusion_coefficient(self)
3717 
3718  @staticmethod
3719  def get_diffusion_coefficient_key():
3720  r"""get_diffusion_coefficient_key() -> FloatKey"""
3721  return _IMP_atom.Diffusion_get_diffusion_coefficient_key()
3722 
3723  def add_attribute(self, *args):
3724  r"""
3725  add_attribute(Diffusion self, FloatKey k, IMP::Float v, bool opt)
3726  add_attribute(Diffusion self, FloatKey a0, IMP::Float a1)
3727  add_attribute(Diffusion self, IntKey a0, IMP::Int a1)
3728  add_attribute(Diffusion self, FloatsKey a0, IMP::Floats a1)
3729  add_attribute(Diffusion self, IntsKey a0, IMP::Ints a1)
3730  add_attribute(Diffusion self, StringKey a0, IMP::String a1)
3731  add_attribute(Diffusion self, ParticleIndexKey a0, Particle a1)
3732  add_attribute(Diffusion self, ObjectKey a0, Object a1)
3733  add_attribute(Diffusion self, SparseFloatKey a0, IMP::Float a1)
3734  add_attribute(Diffusion self, SparseIntKey a0, IMP::Int a1)
3735  add_attribute(Diffusion self, SparseStringKey a0, IMP::String a1)
3736  add_attribute(Diffusion self, SparseParticleIndexKey a0, ParticleIndex a1)
3737  """
3738  return _IMP_atom.Diffusion_add_attribute(self, *args)
3739 
3740  def get_value(self, *args):
3741  r"""
3742  get_value(Diffusion self, FloatKey a0) -> IMP::Float
3743  get_value(Diffusion self, IntKey a0) -> IMP::Int
3744  get_value(Diffusion self, FloatsKey a0) -> IMP::Floats
3745  get_value(Diffusion self, IntsKey a0) -> IMP::Ints
3746  get_value(Diffusion self, StringKey a0) -> IMP::String
3747  get_value(Diffusion self, ParticleIndexKey a0) -> Particle
3748  get_value(Diffusion self, ObjectKey a0) -> Object
3749  get_value(Diffusion self, SparseFloatKey a0) -> IMP::Float
3750  get_value(Diffusion self, SparseIntKey a0) -> IMP::Int
3751  get_value(Diffusion self, SparseStringKey a0) -> IMP::String
3752  get_value(Diffusion self, SparseParticleIndexKey a0) -> ParticleIndex
3753  """
3754  return _IMP_atom.Diffusion_get_value(self, *args)
3755 
3756  def set_value(self, *args):
3757  r"""
3758  set_value(Diffusion self, FloatKey a0, IMP::Float a1)
3759  set_value(Diffusion self, IntKey a0, IMP::Int a1)
3760  set_value(Diffusion self, FloatsKey a0, IMP::Floats a1)
3761  set_value(Diffusion self, IntsKey a0, IMP::Ints a1)
3762  set_value(Diffusion self, StringKey a0, IMP::String a1)
3763  set_value(Diffusion self, ParticleIndexKey a0, Particle a1)
3764  set_value(Diffusion self, ObjectKey a0, Object a1)
3765  set_value(Diffusion self, SparseFloatKey a0, IMP::Float a1)
3766  set_value(Diffusion self, SparseIntKey a0, IMP::Int a1)
3767  set_value(Diffusion self, SparseStringKey a0, IMP::String a1)
3768  set_value(Diffusion self, SparseParticleIndexKey a0, ParticleIndex a1)
3769  """
3770  return _IMP_atom.Diffusion_set_value(self, *args)
3771 
3772  def remove_attribute(self, *args):
3773  r"""
3774  remove_attribute(Diffusion self, FloatKey a0)
3775  remove_attribute(Diffusion self, IntKey a0)
3776  remove_attribute(Diffusion self, FloatsKey a0)
3777  remove_attribute(Diffusion self, IntsKey a0)
3778  remove_attribute(Diffusion self, StringKey a0)
3779  remove_attribute(Diffusion self, ParticleIndexKey a0)
3780  remove_attribute(Diffusion self, ObjectKey a0)
3781  remove_attribute(Diffusion self, SparseFloatKey a0)
3782  remove_attribute(Diffusion self, SparseIntKey a0)
3783  remove_attribute(Diffusion self, SparseStringKey a0)
3784  remove_attribute(Diffusion self, SparseParticleIndexKey a0)
3785  """
3786  return _IMP_atom.Diffusion_remove_attribute(self, *args)
3787 
3788  def has_attribute(self, *args):
3789  r"""
3790  has_attribute(Diffusion self, FloatKey a0) -> bool
3791  has_attribute(Diffusion self, IntKey a0) -> bool
3792  has_attribute(Diffusion self, FloatsKey a0) -> bool
3793  has_attribute(Diffusion self, IntsKey a0) -> bool
3794  has_attribute(Diffusion self, StringKey a0) -> bool
3795  has_attribute(Diffusion self, ParticleIndexKey a0) -> bool
3796  has_attribute(Diffusion self, ObjectKey a0) -> bool
3797  has_attribute(Diffusion self, SparseFloatKey a0) -> bool
3798  has_attribute(Diffusion self, SparseIntKey a0) -> bool
3799  has_attribute(Diffusion self, SparseStringKey a0) -> bool
3800  has_attribute(Diffusion self, SparseParticleIndexKey a0) -> bool
3801  """
3802  return _IMP_atom.Diffusion_has_attribute(self, *args)
3803 
3804  def get_derivative(self, a0):
3805  r"""get_derivative(Diffusion self, FloatKey a0) -> double"""
3806  return _IMP_atom.Diffusion_get_derivative(self, a0)
3807 
3808  def get_name(self):
3809  r"""get_name(Diffusion self) -> std::string"""
3810  return _IMP_atom.Diffusion_get_name(self)
3811 
3812  def clear_caches(self):
3813  r"""clear_caches(Diffusion self)"""
3814  return _IMP_atom.Diffusion_clear_caches(self)
3815 
3816  def set_name(self, a0):
3817  r"""set_name(Diffusion self, std::string a0)"""
3818  return _IMP_atom.Diffusion_set_name(self, a0)
3819 
3820  def set_check_level(self, a0):
3821  r"""set_check_level(Diffusion self, IMP::CheckLevel a0)"""
3822  return _IMP_atom.Diffusion_set_check_level(self, a0)
3823 
3824  def add_to_derivative(self, a0, a1, a2):
3825  r"""add_to_derivative(Diffusion self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
3826  return _IMP_atom.Diffusion_add_to_derivative(self, a0, a1, a2)
3827 
3828  def set_is_optimized(self, a0, a1):
3829  r"""set_is_optimized(Diffusion self, FloatKey a0, bool a1)"""
3830  return _IMP_atom.Diffusion_set_is_optimized(self, a0, a1)
3831 
3832  def get_is_optimized(self, a0):
3833  r"""get_is_optimized(Diffusion self, FloatKey a0) -> bool"""
3834  return _IMP_atom.Diffusion_get_is_optimized(self, a0)
3835 
3836  def get_check_level(self):
3837  r"""get_check_level(Diffusion self) -> IMP::CheckLevel"""
3838  return _IMP_atom.Diffusion_get_check_level(self)
3839 
3840  def __eq__(self, *args):
3841  r"""
3842  __eq__(Diffusion self, Diffusion o) -> bool
3843  __eq__(Diffusion self, Particle d) -> bool
3844  """
3845  return _IMP_atom.Diffusion___eq__(self, *args)
3846 
3847  def __ne__(self, *args):
3848  r"""
3849  __ne__(Diffusion self, Diffusion o) -> bool
3850  __ne__(Diffusion self, Particle d) -> bool
3851  """
3852  return _IMP_atom.Diffusion___ne__(self, *args)
3853 
3854  def __le__(self, *args):
3855  r"""
3856  __le__(Diffusion self, Diffusion o) -> bool
3857  __le__(Diffusion self, Particle d) -> bool
3858  """
3859  return _IMP_atom.Diffusion___le__(self, *args)
3860 
3861  def __lt__(self, *args):
3862  r"""
3863  __lt__(Diffusion self, Diffusion o) -> bool
3864  __lt__(Diffusion self, Particle d) -> bool
3865  """
3866  return _IMP_atom.Diffusion___lt__(self, *args)
3867 
3868  def __ge__(self, *args):
3869  r"""
3870  __ge__(Diffusion self, Diffusion o) -> bool
3871  __ge__(Diffusion self, Particle d) -> bool
3872  """
3873  return _IMP_atom.Diffusion___ge__(self, *args)
3874 
3875  def __gt__(self, *args):
3876  r"""
3877  __gt__(Diffusion self, Diffusion o) -> bool
3878  __gt__(Diffusion self, Particle d) -> bool
3879  """
3880  return _IMP_atom.Diffusion___gt__(self, *args)
3881 
3882  def __hash__(self):
3883  r"""__hash__(Diffusion self) -> std::size_t"""
3884  return _IMP_atom.Diffusion___hash__(self)
3885 
3886  def __str__(self):
3887  r"""__str__(Diffusion self) -> std::string"""
3888  return _IMP_atom.Diffusion___str__(self)
3889 
3890  def __repr__(self):
3891  r"""__repr__(Diffusion self) -> std::string"""
3892  return _IMP_atom.Diffusion___repr__(self)
3893 
3894  def _get_as_binary(self):
3895  r"""_get_as_binary(Diffusion self) -> PyObject *"""
3896  return _IMP_atom.Diffusion__get_as_binary(self)
3897 
3898  def _set_from_binary(self, p):
3899  r"""_set_from_binary(Diffusion self, PyObject * p)"""
3900  return _IMP_atom.Diffusion__set_from_binary(self, p)
3901 
3902  def __getstate__(self):
3903  p = self._get_as_binary()
3904  if len(self.__dict__) > 1:
3905  d = self.__dict__.copy()
3906  del d['this']
3907  p = (d, p)
3908  return p
3909 
3910  def __setstate__(self, p):
3911  if not hasattr(self, 'this'):
3912  self.__init__()
3913  if isinstance(p, tuple):
3914  d, p = p
3915  self.__dict__.update(d)
3916  return self._set_from_binary(p)
3917 
3918  __swig_destroy__ = _IMP_atom.delete_Diffusion
3919 
3920 # Register Diffusion in _IMP_atom:
3921 _IMP_atom.Diffusion_swigregister(Diffusion)
3922 
3923 def get_diffusion_coefficient_from_cm2_per_second(din):
3924  r"""get_diffusion_coefficient_from_cm2_per_second(double din) -> double"""
3925  return _IMP_atom.get_diffusion_coefficient_from_cm2_per_second(din)
3926 class RigidBodyDiffusion(Diffusion):
3927  r"""Proxy of C++ IMP::atom::RigidBodyDiffusion class."""
3928 
3929  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3930 
3931  def __init__(self, *args):
3932  r"""
3933  __init__(RigidBodyDiffusion self) -> RigidBodyDiffusion
3934  __init__(RigidBodyDiffusion self, Model m, ParticleIndex id) -> RigidBodyDiffusion
3935  __init__(RigidBodyDiffusion self, _ParticleAdaptor d) -> RigidBodyDiffusion
3936  """
3937  _IMP_atom.RigidBodyDiffusion_swiginit(self, _IMP_atom.new_RigidBodyDiffusion(*args))
3938 
3939  def show(self, *args):
3940  r"""show(RigidBodyDiffusion self, _ostream out=std::cout)"""
3941  return _IMP_atom.RigidBodyDiffusion_show(self, *args)
3942 
3943  @staticmethod
3944  def setup_particle(*args):
3945  r"""
3946  setup_particle(Model m, ParticleIndex pi) -> RigidBodyDiffusion
3947  setup_particle(_ParticleAdaptor pa) -> RigidBodyDiffusion
3948  """
3949  return _IMP_atom.RigidBodyDiffusion_setup_particle(*args)
3950 
3952  r"""get_rotational_diffusion_coefficient(RigidBodyDiffusion self) -> double"""
3953  return _IMP_atom.RigidBodyDiffusion_get_rotational_diffusion_coefficient(self)
3954 
3955  def set_rotational_diffusion_coefficient(self, d):
3956  r"""set_rotational_diffusion_coefficient(RigidBodyDiffusion self, double d)"""
3957  return _IMP_atom.RigidBodyDiffusion_set_rotational_diffusion_coefficient(self, d)
3958 
3959  @staticmethod
3960  def get_is_setup(*args):
3961  r"""
3962  get_is_setup(_ParticleAdaptor p) -> bool
3963  get_is_setup(Model m, ParticleIndex p) -> bool
3964  """
3965  return _IMP_atom.RigidBodyDiffusion_get_is_setup(*args)
3966 
3967  @staticmethod
3968  def get_rotational_diffusion_coefficient_key():
3969  r"""get_rotational_diffusion_coefficient_key() -> FloatKey"""
3970  return _IMP_atom.RigidBodyDiffusion_get_rotational_diffusion_coefficient_key()
3971 
3972  def add_attribute(self, *args):
3973  r"""
3974  add_attribute(RigidBodyDiffusion self, FloatKey k, IMP::Float v, bool opt)
3975  add_attribute(RigidBodyDiffusion self, FloatKey a0, IMP::Float a1)
3976  add_attribute(RigidBodyDiffusion self, IntKey a0, IMP::Int a1)
3977  add_attribute(RigidBodyDiffusion self, FloatsKey a0, IMP::Floats a1)
3978  add_attribute(RigidBodyDiffusion self, IntsKey a0, IMP::Ints a1)
3979  add_attribute(RigidBodyDiffusion self, StringKey a0, IMP::String a1)
3980  add_attribute(RigidBodyDiffusion self, ParticleIndexKey a0, Particle a1)
3981  add_attribute(RigidBodyDiffusion self, ObjectKey a0, Object a1)
3982  add_attribute(RigidBodyDiffusion self, SparseFloatKey a0, IMP::Float a1)
3983  add_attribute(RigidBodyDiffusion self, SparseIntKey a0, IMP::Int a1)
3984  add_attribute(RigidBodyDiffusion self, SparseStringKey a0, IMP::String a1)
3985  add_attribute(RigidBodyDiffusion self, SparseParticleIndexKey a0, ParticleIndex a1)
3986  """
3987  return _IMP_atom.RigidBodyDiffusion_add_attribute(self, *args)
3988 
3989  def get_value(self, *args):
3990  r"""
3991  get_value(RigidBodyDiffusion self, FloatKey a0) -> IMP::Float
3992  get_value(RigidBodyDiffusion self, IntKey a0) -> IMP::Int
3993  get_value(RigidBodyDiffusion self, FloatsKey a0) -> IMP::Floats
3994  get_value(RigidBodyDiffusion self, IntsKey a0) -> IMP::Ints
3995  get_value(RigidBodyDiffusion self, StringKey a0) -> IMP::String
3996  get_value(RigidBodyDiffusion self, ParticleIndexKey a0) -> Particle
3997  get_value(RigidBodyDiffusion self, ObjectKey a0) -> Object
3998  get_value(RigidBodyDiffusion self, SparseFloatKey a0) -> IMP::Float
3999  get_value(RigidBodyDiffusion self, SparseIntKey a0) -> IMP::Int
4000  get_value(RigidBodyDiffusion self, SparseStringKey a0) -> IMP::String
4001  get_value(RigidBodyDiffusion self, SparseParticleIndexKey a0) -> ParticleIndex
4002  """
4003  return _IMP_atom.RigidBodyDiffusion_get_value(self, *args)
4004 
4005  def set_value(self, *args):
4006  r"""
4007  set_value(RigidBodyDiffusion self, FloatKey a0, IMP::Float a1)
4008  set_value(RigidBodyDiffusion self, IntKey a0, IMP::Int a1)
4009  set_value(RigidBodyDiffusion self, FloatsKey a0, IMP::Floats a1)
4010  set_value(RigidBodyDiffusion self, IntsKey a0, IMP::Ints a1)
4011  set_value(RigidBodyDiffusion self, StringKey a0, IMP::String a1)
4012  set_value(RigidBodyDiffusion self, ParticleIndexKey a0, Particle a1)
4013  set_value(RigidBodyDiffusion self, ObjectKey a0, Object a1)
4014  set_value(RigidBodyDiffusion self, SparseFloatKey a0, IMP::Float a1)
4015  set_value(RigidBodyDiffusion self, SparseIntKey a0, IMP::Int a1)
4016  set_value(RigidBodyDiffusion self, SparseStringKey a0, IMP::String a1)
4017  set_value(RigidBodyDiffusion self, SparseParticleIndexKey a0, ParticleIndex a1)
4018  """
4019  return _IMP_atom.RigidBodyDiffusion_set_value(self, *args)
4020 
4021  def remove_attribute(self, *args):
4022  r"""
4023  remove_attribute(RigidBodyDiffusion self, FloatKey a0)
4024  remove_attribute(RigidBodyDiffusion self, IntKey a0)
4025  remove_attribute(RigidBodyDiffusion self, FloatsKey a0)
4026  remove_attribute(RigidBodyDiffusion self, IntsKey a0)
4027  remove_attribute(RigidBodyDiffusion self, StringKey a0)
4028  remove_attribute(RigidBodyDiffusion self, ParticleIndexKey a0)
4029  remove_attribute(RigidBodyDiffusion self, ObjectKey a0)
4030  remove_attribute(RigidBodyDiffusion self, SparseFloatKey a0)
4031  remove_attribute(RigidBodyDiffusion self, SparseIntKey a0)
4032  remove_attribute(RigidBodyDiffusion self, SparseStringKey a0)
4033  remove_attribute(RigidBodyDiffusion self, SparseParticleIndexKey a0)
4034  """
4035  return _IMP_atom.RigidBodyDiffusion_remove_attribute(self, *args)
4036 
4037  def has_attribute(self, *args):
4038  r"""
4039  has_attribute(RigidBodyDiffusion self, FloatKey a0) -> bool
4040  has_attribute(RigidBodyDiffusion self, IntKey a0) -> bool
4041  has_attribute(RigidBodyDiffusion self, FloatsKey a0) -> bool
4042  has_attribute(RigidBodyDiffusion self, IntsKey a0) -> bool
4043  has_attribute(RigidBodyDiffusion self, StringKey a0) -> bool
4044  has_attribute(RigidBodyDiffusion self, ParticleIndexKey a0) -> bool
4045  has_attribute(RigidBodyDiffusion self, ObjectKey a0) -> bool
4046  has_attribute(RigidBodyDiffusion self, SparseFloatKey a0) -> bool
4047  has_attribute(RigidBodyDiffusion self, SparseIntKey a0) -> bool
4048  has_attribute(RigidBodyDiffusion self, SparseStringKey a0) -> bool
4049  has_attribute(RigidBodyDiffusion self, SparseParticleIndexKey a0) -> bool
4050  """
4051  return _IMP_atom.RigidBodyDiffusion_has_attribute(self, *args)
4052 
4053  def get_derivative(self, a0):
4054  r"""get_derivative(RigidBodyDiffusion self, FloatKey a0) -> double"""
4055  return _IMP_atom.RigidBodyDiffusion_get_derivative(self, a0)
4056 
4057  def get_name(self):
4058  r"""get_name(RigidBodyDiffusion self) -> std::string"""
4059  return _IMP_atom.RigidBodyDiffusion_get_name(self)
4060 
4061  def clear_caches(self):
4062  r"""clear_caches(RigidBodyDiffusion self)"""
4063  return _IMP_atom.RigidBodyDiffusion_clear_caches(self)
4064 
4065  def set_name(self, a0):
4066  r"""set_name(RigidBodyDiffusion self, std::string a0)"""
4067  return _IMP_atom.RigidBodyDiffusion_set_name(self, a0)
4068 
4069  def set_check_level(self, a0):
4070  r"""set_check_level(RigidBodyDiffusion self, IMP::CheckLevel a0)"""
4071  return _IMP_atom.RigidBodyDiffusion_set_check_level(self, a0)
4072 
4073  def add_to_derivative(self, a0, a1, a2):
4074  r"""add_to_derivative(RigidBodyDiffusion self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
4075  return _IMP_atom.RigidBodyDiffusion_add_to_derivative(self, a0, a1, a2)
4076 
4077  def set_is_optimized(self, a0, a1):
4078  r"""set_is_optimized(RigidBodyDiffusion self, FloatKey a0, bool a1)"""
4079  return _IMP_atom.RigidBodyDiffusion_set_is_optimized(self, a0, a1)
4080 
4081  def get_is_optimized(self, a0):
4082  r"""get_is_optimized(RigidBodyDiffusion self, FloatKey a0) -> bool"""
4083  return _IMP_atom.RigidBodyDiffusion_get_is_optimized(self, a0)
4084 
4085  def get_check_level(self):
4086  r"""get_check_level(RigidBodyDiffusion self) -> IMP::CheckLevel"""
4087  return _IMP_atom.RigidBodyDiffusion_get_check_level(self)
4088 
4089  def __eq__(self, *args):
4090  r"""
4091  __eq__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool
4092  __eq__(RigidBodyDiffusion self, Particle d) -> bool
4093  """
4094  return _IMP_atom.RigidBodyDiffusion___eq__(self, *args)
4095 
4096  def __ne__(self, *args):
4097  r"""
4098  __ne__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool
4099  __ne__(RigidBodyDiffusion self, Particle d) -> bool
4100  """
4101  return _IMP_atom.RigidBodyDiffusion___ne__(self, *args)
4102 
4103  def __le__(self, *args):
4104  r"""
4105  __le__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool
4106  __le__(RigidBodyDiffusion self, Particle d) -> bool
4107  """
4108  return _IMP_atom.RigidBodyDiffusion___le__(self, *args)
4109 
4110  def __lt__(self, *args):
4111  r"""
4112  __lt__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool
4113  __lt__(RigidBodyDiffusion self, Particle d) -> bool
4114  """
4115  return _IMP_atom.RigidBodyDiffusion___lt__(self, *args)
4116 
4117  def __ge__(self, *args):
4118  r"""
4119  __ge__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool
4120  __ge__(RigidBodyDiffusion self, Particle d) -> bool
4121  """
4122  return _IMP_atom.RigidBodyDiffusion___ge__(self, *args)
4123 
4124  def __gt__(self, *args):
4125  r"""
4126  __gt__(RigidBodyDiffusion self, RigidBodyDiffusion o) -> bool
4127  __gt__(RigidBodyDiffusion self, Particle d) -> bool
4128  """
4129  return _IMP_atom.RigidBodyDiffusion___gt__(self, *args)
4130 
4131  def __hash__(self):
4132  r"""__hash__(RigidBodyDiffusion self) -> std::size_t"""
4133  return _IMP_atom.RigidBodyDiffusion___hash__(self)
4134 
4135  def __str__(self):
4136  r"""__str__(RigidBodyDiffusion self) -> std::string"""
4137  return _IMP_atom.RigidBodyDiffusion___str__(self)
4138 
4139  def __repr__(self):
4140  r"""__repr__(RigidBodyDiffusion self) -> std::string"""
4141  return _IMP_atom.RigidBodyDiffusion___repr__(self)
4142 
4143  def _get_as_binary(self):
4144  r"""_get_as_binary(RigidBodyDiffusion self) -> PyObject *"""
4145  return _IMP_atom.RigidBodyDiffusion__get_as_binary(self)
4146 
4147  def _set_from_binary(self, p):
4148  r"""_set_from_binary(RigidBodyDiffusion self, PyObject * p)"""
4149  return _IMP_atom.RigidBodyDiffusion__set_from_binary(self, p)
4150 
4151  def __getstate__(self):
4152  p = self._get_as_binary()
4153  if len(self.__dict__) > 1:
4154  d = self.__dict__.copy()
4155  del d['this']
4156  p = (d, p)
4157  return p
4158 
4159  def __setstate__(self, p):
4160  if not hasattr(self, 'this'):
4161  self.__init__()
4162  if isinstance(p, tuple):
4163  d, p = p
4164  self.__dict__.update(d)
4165  return self._set_from_binary(p)
4166 
4167  __swig_destroy__ = _IMP_atom.delete_RigidBodyDiffusion
4168 
4169 # Register RigidBodyDiffusion in _IMP_atom:
4170 _IMP_atom.RigidBodyDiffusion_swigregister(RigidBodyDiffusion)
4171 class TAMDParticle(IMP.Decorator):
4172  r"""Proxy of C++ IMP::atom::TAMDParticle class."""
4173 
4174  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4175 
4176  def __init__(self, *args):
4177  r"""
4178  __init__(TAMDParticle self) -> TAMDParticle
4179  __init__(TAMDParticle self, Model m, ParticleIndex id) -> TAMDParticle
4180  __init__(TAMDParticle self, _ParticleAdaptor d) -> TAMDParticle
4181  """
4182  _IMP_atom.TAMDParticle_swiginit(self, _IMP_atom.new_TAMDParticle(*args))
4183 
4184  def show(self, *args):
4185  r"""show(TAMDParticle self, _ostream out=std::cout)"""
4186  return _IMP_atom.TAMDParticle_show(self, *args)
4187 
4188  @staticmethod
4189  def setup_particle(*args):
4190  r"""
4191  setup_particle(Model m, ParticleIndex pi, ParticleIndex pi_ref, IMP::Float tsf, IMP::Float fsf) -> TAMDParticle
4192  setup_particle(_ParticleAdaptor pa, ParticleIndex pi_ref, IMP::Float tsf, IMP::Float fsf) -> TAMDParticle
4193  setup_particle(Model m, ParticleIndex pi, Particle p_ref, IMP::Float tsf, IMP::Float fsf) -> TAMDParticle
4194  setup_particle(_ParticleAdaptor pa, Particle p_ref, IMP::Float tsf, IMP::Float fsf) -> TAMDParticle
4195  """
4196  return _IMP_atom.TAMDParticle_setup_particle(*args)
4197 
4198  @staticmethod
4199  def get_is_setup(*args):
4200  r"""
4201  get_is_setup(_ParticleAdaptor p) -> bool
4202  get_is_setup(Model m, ParticleIndex p) -> bool
4203  """
4204  return _IMP_atom.TAMDParticle_get_is_setup(*args)
4205 
4206  def get_reference_particle_index(self):
4207  r"""get_reference_particle_index(TAMDParticle self) -> ParticleIndex"""
4208  return _IMP_atom.TAMDParticle_get_reference_particle_index(self)
4209 
4210  def set_temperature_scale_factor(self, tsf):
4211  r"""set_temperature_scale_factor(TAMDParticle self, float tsf)"""
4212  return _IMP_atom.TAMDParticle_set_temperature_scale_factor(self, tsf)
4213 
4214  def get_temperature_scale_factor(self):
4215  r"""get_temperature_scale_factor(TAMDParticle self) -> double"""
4216  return _IMP_atom.TAMDParticle_get_temperature_scale_factor(self)
4217 
4218  def set_friction_scale_factor(self, tsf):
4219  r"""set_friction_scale_factor(TAMDParticle self, float tsf)"""
4220  return _IMP_atom.TAMDParticle_set_friction_scale_factor(self, tsf)
4221 
4222  def get_friction_scale_factor(self):
4223  r"""get_friction_scale_factor(TAMDParticle self) -> double"""
4224  return _IMP_atom.TAMDParticle_get_friction_scale_factor(self)
4225 
4226  def update_coordinates_from_ref(self):
4227  r"""update_coordinates_from_ref(TAMDParticle self)"""
4228  return _IMP_atom.TAMDParticle_update_coordinates_from_ref(self)
4229 
4230  @staticmethod
4231  def get_temperature_scale_factor_key():
4232  r"""get_temperature_scale_factor_key() -> FloatKey"""
4233  return _IMP_atom.TAMDParticle_get_temperature_scale_factor_key()
4234 
4235  @staticmethod
4236  def get_friction_scale_factor_key():
4237  r"""get_friction_scale_factor_key() -> FloatKey"""
4238  return _IMP_atom.TAMDParticle_get_friction_scale_factor_key()
4239 
4240  @staticmethod
4241  def get_reference_particle_index_key():
4242  r"""get_reference_particle_index_key() -> ParticleIndexKey"""
4243  return _IMP_atom.TAMDParticle_get_reference_particle_index_key()
4244 
4245  def add_attribute(self, *args):
4246  r"""
4247  add_attribute(TAMDParticle self, FloatKey k, IMP::Float v, bool opt)
4248  add_attribute(TAMDParticle self, FloatKey a0, IMP::Float a1)
4249  add_attribute(TAMDParticle self, IntKey a0, IMP::Int a1)
4250  add_attribute(TAMDParticle self, FloatsKey a0, IMP::Floats a1)
4251  add_attribute(TAMDParticle self, IntsKey a0, IMP::Ints a1)
4252  add_attribute(TAMDParticle self, StringKey a0, IMP::String a1)
4253  add_attribute(TAMDParticle self, ParticleIndexKey a0, Particle a1)
4254  add_attribute(TAMDParticle self, ObjectKey a0, Object a1)
4255  add_attribute(TAMDParticle self, SparseFloatKey a0, IMP::Float a1)
4256  add_attribute(TAMDParticle self, SparseIntKey a0, IMP::Int a1)
4257  add_attribute(TAMDParticle self, SparseStringKey a0, IMP::String a1)
4258  add_attribute(TAMDParticle self, SparseParticleIndexKey a0, ParticleIndex a1)
4259  """
4260  return _IMP_atom.TAMDParticle_add_attribute(self, *args)
4261 
4262  def get_value(self, *args):
4263  r"""
4264  get_value(TAMDParticle self, FloatKey a0) -> IMP::Float
4265  get_value(TAMDParticle self, IntKey a0) -> IMP::Int
4266  get_value(TAMDParticle self, FloatsKey a0) -> IMP::Floats
4267  get_value(TAMDParticle self, IntsKey a0) -> IMP::Ints
4268  get_value(TAMDParticle self, StringKey a0) -> IMP::String
4269  get_value(TAMDParticle self, ParticleIndexKey a0) -> Particle
4270  get_value(TAMDParticle self, ObjectKey a0) -> Object
4271  get_value(TAMDParticle self, SparseFloatKey a0) -> IMP::Float
4272  get_value(TAMDParticle self, SparseIntKey a0) -> IMP::Int
4273  get_value(TAMDParticle self, SparseStringKey a0) -> IMP::String
4274  get_value(TAMDParticle self, SparseParticleIndexKey a0) -> ParticleIndex
4275  """
4276  return _IMP_atom.TAMDParticle_get_value(self, *args)
4277 
4278  def set_value(self, *args):
4279  r"""
4280  set_value(TAMDParticle self, FloatKey a0, IMP::Float a1)
4281  set_value(TAMDParticle self, IntKey a0, IMP::Int a1)
4282  set_value(TAMDParticle self, FloatsKey a0, IMP::Floats a1)
4283  set_value(TAMDParticle self, IntsKey a0, IMP::Ints a1)
4284  set_value(TAMDParticle self, StringKey a0, IMP::String a1)
4285  set_value(TAMDParticle self, ParticleIndexKey a0, Particle a1)
4286  set_value(TAMDParticle self, ObjectKey a0, Object a1)
4287  set_value(TAMDParticle self, SparseFloatKey a0, IMP::Float a1)
4288  set_value(TAMDParticle self, SparseIntKey a0, IMP::Int a1)
4289  set_value(TAMDParticle self, SparseStringKey a0, IMP::String a1)
4290  set_value(TAMDParticle self, SparseParticleIndexKey a0, ParticleIndex a1)
4291  """
4292  return _IMP_atom.TAMDParticle_set_value(self, *args)
4293 
4294  def remove_attribute(self, *args):
4295  r"""
4296  remove_attribute(TAMDParticle self, FloatKey a0)
4297  remove_attribute(TAMDParticle self, IntKey a0)
4298  remove_attribute(TAMDParticle self, FloatsKey a0)
4299  remove_attribute(TAMDParticle self, IntsKey a0)
4300  remove_attribute(TAMDParticle self, StringKey a0)
4301  remove_attribute(TAMDParticle self, ParticleIndexKey a0)
4302  remove_attribute(TAMDParticle self, ObjectKey a0)
4303  remove_attribute(TAMDParticle self, SparseFloatKey a0)
4304  remove_attribute(TAMDParticle self, SparseIntKey a0)
4305  remove_attribute(TAMDParticle self, SparseStringKey a0)
4306  remove_attribute(TAMDParticle self, SparseParticleIndexKey a0)
4307  """
4308  return _IMP_atom.TAMDParticle_remove_attribute(self, *args)
4309 
4310  def has_attribute(self, *args):
4311  r"""
4312  has_attribute(TAMDParticle self, FloatKey a0) -> bool
4313  has_attribute(TAMDParticle self, IntKey a0) -> bool
4314  has_attribute(TAMDParticle self, FloatsKey a0) -> bool
4315  has_attribute(TAMDParticle self, IntsKey a0) -> bool
4316  has_attribute(TAMDParticle self, StringKey a0) -> bool
4317  has_attribute(TAMDParticle self, ParticleIndexKey a0) -> bool
4318  has_attribute(TAMDParticle self, ObjectKey a0) -> bool
4319  has_attribute(TAMDParticle self, SparseFloatKey a0) -> bool
4320  has_attribute(TAMDParticle self, SparseIntKey a0) -> bool
4321  has_attribute(TAMDParticle self, SparseStringKey a0) -> bool
4322  has_attribute(TAMDParticle self, SparseParticleIndexKey a0) -> bool
4323  """
4324  return _IMP_atom.TAMDParticle_has_attribute(self, *args)
4325 
4326  def get_derivative(self, a0):
4327  r"""get_derivative(TAMDParticle self, FloatKey a0) -> double"""
4328  return _IMP_atom.TAMDParticle_get_derivative(self, a0)
4329 
4330  def get_name(self):
4331  r"""get_name(TAMDParticle self) -> std::string"""
4332  return _IMP_atom.TAMDParticle_get_name(self)
4333 
4334  def clear_caches(self):
4335  r"""clear_caches(TAMDParticle self)"""
4336  return _IMP_atom.TAMDParticle_clear_caches(self)
4337 
4338  def set_name(self, a0):
4339  r"""set_name(TAMDParticle self, std::string a0)"""
4340  return _IMP_atom.TAMDParticle_set_name(self, a0)
4341 
4342  def set_check_level(self, a0):
4343  r"""set_check_level(TAMDParticle self, IMP::CheckLevel a0)"""
4344  return _IMP_atom.TAMDParticle_set_check_level(self, a0)
4345 
4346  def add_to_derivative(self, a0, a1, a2):
4347  r"""add_to_derivative(TAMDParticle self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
4348  return _IMP_atom.TAMDParticle_add_to_derivative(self, a0, a1, a2)
4349 
4350  def set_is_optimized(self, a0, a1):
4351  r"""set_is_optimized(TAMDParticle self, FloatKey a0, bool a1)"""
4352  return _IMP_atom.TAMDParticle_set_is_optimized(self, a0, a1)
4353 
4354  def get_is_optimized(self, a0):
4355  r"""get_is_optimized(TAMDParticle self, FloatKey a0) -> bool"""
4356  return _IMP_atom.TAMDParticle_get_is_optimized(self, a0)
4357 
4358  def get_check_level(self):
4359  r"""get_check_level(TAMDParticle self) -> IMP::CheckLevel"""
4360  return _IMP_atom.TAMDParticle_get_check_level(self)
4361 
4362  def __eq__(self, *args):
4363  r"""
4364  __eq__(TAMDParticle self, TAMDParticle o) -> bool
4365  __eq__(TAMDParticle self, Particle d) -> bool
4366  """
4367  return _IMP_atom.TAMDParticle___eq__(self, *args)
4368 
4369  def __ne__(self, *args):
4370  r"""
4371  __ne__(TAMDParticle self, TAMDParticle o) -> bool
4372  __ne__(TAMDParticle self, Particle d) -> bool
4373  """
4374  return _IMP_atom.TAMDParticle___ne__(self, *args)
4375 
4376  def __le__(self, *args):
4377  r"""
4378  __le__(TAMDParticle self, TAMDParticle o) -> bool
4379  __le__(TAMDParticle self, Particle d) -> bool
4380  """
4381  return _IMP_atom.TAMDParticle___le__(self, *args)
4382 
4383  def __lt__(self, *args):
4384  r"""
4385  __lt__(TAMDParticle self, TAMDParticle o) -> bool
4386  __lt__(TAMDParticle self, Particle d) -> bool
4387  """
4388  return _IMP_atom.TAMDParticle___lt__(self, *args)
4389 
4390  def __ge__(self, *args):
4391  r"""
4392  __ge__(TAMDParticle self, TAMDParticle o) -> bool
4393  __ge__(TAMDParticle self, Particle d) -> bool
4394  """
4395  return _IMP_atom.TAMDParticle___ge__(self, *args)
4396 
4397  def __gt__(self, *args):
4398  r"""
4399  __gt__(TAMDParticle self, TAMDParticle o) -> bool
4400  __gt__(TAMDParticle self, Particle d) -> bool
4401  """
4402  return _IMP_atom.TAMDParticle___gt__(self, *args)
4403 
4404  def __hash__(self):
4405  r"""__hash__(TAMDParticle self) -> std::size_t"""
4406  return _IMP_atom.TAMDParticle___hash__(self)
4407 
4408  def __str__(self):
4409  r"""__str__(TAMDParticle self) -> std::string"""
4410  return _IMP_atom.TAMDParticle___str__(self)
4411 
4412  def __repr__(self):
4413  r"""__repr__(TAMDParticle self) -> std::string"""
4414  return _IMP_atom.TAMDParticle___repr__(self)
4415 
4416  def _get_as_binary(self):
4417  r"""_get_as_binary(TAMDParticle self) -> PyObject *"""
4418  return _IMP_atom.TAMDParticle__get_as_binary(self)
4419 
4420  def _set_from_binary(self, p):
4421  r"""_set_from_binary(TAMDParticle self, PyObject * p)"""
4422  return _IMP_atom.TAMDParticle__set_from_binary(self, p)
4423 
4424  def __getstate__(self):
4425  p = self._get_as_binary()
4426  if len(self.__dict__) > 1:
4427  d = self.__dict__.copy()
4428  del d['this']
4429  p = (d, p)
4430  return p
4431 
4432  def __setstate__(self, p):
4433  if not hasattr(self, 'this'):
4434  self.__init__()
4435  if isinstance(p, tuple):
4436  d, p = p
4437  self.__dict__.update(d)
4438  return self._set_from_binary(p)
4439 
4440  __swig_destroy__ = _IMP_atom.delete_TAMDParticle
4441 
4442 # Register TAMDParticle in _IMP_atom:
4443 _IMP_atom.TAMDParticle_swigregister(TAMDParticle)
4444 class Charged(IMP.core.XYZ):
4445  r"""Proxy of C++ IMP::atom::Charged class."""
4446 
4447  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4448 
4449  def __init__(self, *args):
4450  r"""
4451  __init__(Charged self) -> Charged
4452  __init__(Charged self, Model m, ParticleIndex id) -> Charged
4453  __init__(Charged self, _ParticleAdaptor d) -> Charged
4454  """
4455  _IMP_atom.Charged_swiginit(self, _IMP_atom.new_Charged(*args))
4456 
4457  def show(self, *args):
4458  r"""show(Charged self, _ostream out=std::cout)"""
4459  return _IMP_atom.Charged_show(self, *args)
4460 
4461  @staticmethod
4462  def setup_particle(*args):
4463  r"""
4464  setup_particle(Model m, ParticleIndex pi, IMP::Float charge) -> Charged
4465  setup_particle(_ParticleAdaptor pa, IMP::Float charge) -> Charged
4466  setup_particle(Model m, ParticleIndex pi, Vector3D v, IMP::Float charge) -> Charged
4467  setup_particle(_ParticleAdaptor pa, Vector3D v, IMP::Float charge) -> Charged
4468  """
4469  return _IMP_atom.Charged_setup_particle(*args)
4470 
4471  def get_charge(self):
4472  r"""get_charge(Charged self) -> IMP::Float"""
4473  return _IMP_atom.Charged_get_charge(self)
4474 
4475  def set_charge(self, t):
4476  r"""set_charge(Charged self, IMP::Float t)"""
4477  return _IMP_atom.Charged_set_charge(self, t)
4478 
4479  @staticmethod
4480  def get_is_setup(*args):
4481  r"""
4482  get_is_setup(_ParticleAdaptor p) -> bool
4483  get_is_setup(Model m, ParticleIndex pi) -> bool
4484  """
4485  return _IMP_atom.Charged_get_is_setup(*args)
4486 
4487  @staticmethod
4488  def get_charge_key():
4489  r"""get_charge_key() -> FloatKey"""
4490  return _IMP_atom.Charged_get_charge_key()
4491 
4492  def add_attribute(self, *args):
4493  r"""
4494  add_attribute(Charged self, FloatKey k, IMP::Float v, bool opt)
4495  add_attribute(Charged self, FloatKey a0, IMP::Float a1)
4496  add_attribute(Charged self, IntKey a0, IMP::Int a1)
4497  add_attribute(Charged self, FloatsKey a0, IMP::Floats a1)
4498  add_attribute(Charged self, IntsKey a0, IMP::Ints a1)
4499  add_attribute(Charged self, StringKey a0, IMP::String a1)
4500  add_attribute(Charged self, ParticleIndexKey a0, Particle a1)
4501  add_attribute(Charged self, ObjectKey a0, Object a1)
4502  add_attribute(Charged self, SparseFloatKey a0, IMP::Float a1)
4503  add_attribute(Charged self, SparseIntKey a0, IMP::Int a1)
4504  add_attribute(Charged self, SparseStringKey a0, IMP::String a1)
4505  add_attribute(Charged self, SparseParticleIndexKey a0, ParticleIndex a1)
4506  """
4507  return _IMP_atom.Charged_add_attribute(self, *args)
4508 
4509  def get_value(self, *args):
4510  r"""
4511  get_value(Charged self, FloatKey a0) -> IMP::Float
4512  get_value(Charged self, IntKey a0) -> IMP::Int
4513  get_value(Charged self, FloatsKey a0) -> IMP::Floats
4514  get_value(Charged self, IntsKey a0) -> IMP::Ints
4515  get_value(Charged self, StringKey a0) -> IMP::String
4516  get_value(Charged self, ParticleIndexKey a0) -> Particle
4517  get_value(Charged self, ObjectKey a0) -> Object
4518  get_value(Charged self, SparseFloatKey a0) -> IMP::Float
4519  get_value(Charged self, SparseIntKey a0) -> IMP::Int
4520  get_value(Charged self, SparseStringKey a0) -> IMP::String
4521  get_value(Charged self, SparseParticleIndexKey a0) -> ParticleIndex
4522  """
4523  return _IMP_atom.Charged_get_value(self, *args)
4524 
4525  def set_value(self, *args):
4526  r"""
4527  set_value(Charged self, FloatKey a0, IMP::Float a1)
4528  set_value(Charged self, IntKey a0, IMP::Int a1)
4529  set_value(Charged self, FloatsKey a0, IMP::Floats a1)
4530  set_value(Charged self, IntsKey a0, IMP::Ints a1)
4531  set_value(Charged self, StringKey a0, IMP::String a1)
4532  set_value(Charged self, ParticleIndexKey a0, Particle a1)
4533  set_value(Charged self, ObjectKey a0, Object a1)
4534  set_value(Charged self, SparseFloatKey a0, IMP::Float a1)
4535  set_value(Charged self, SparseIntKey a0, IMP::Int a1)
4536  set_value(Charged self, SparseStringKey a0, IMP::String a1)
4537  set_value(Charged self, SparseParticleIndexKey a0, ParticleIndex a1)
4538  """
4539  return _IMP_atom.Charged_set_value(self, *args)
4540 
4541  def remove_attribute(self, *args):
4542  r"""
4543  remove_attribute(Charged self, FloatKey a0)
4544  remove_attribute(Charged self, IntKey a0)
4545  remove_attribute(Charged self, FloatsKey a0)
4546  remove_attribute(Charged self, IntsKey a0)
4547  remove_attribute(Charged self, StringKey a0)
4548  remove_attribute(Charged self, ParticleIndexKey a0)
4549  remove_attribute(Charged self, ObjectKey a0)
4550  remove_attribute(Charged self, SparseFloatKey a0)
4551  remove_attribute(Charged self, SparseIntKey a0)
4552  remove_attribute(Charged self, SparseStringKey a0)
4553  remove_attribute(Charged self, SparseParticleIndexKey a0)
4554  """
4555  return _IMP_atom.Charged_remove_attribute(self, *args)
4556 
4557  def has_attribute(self, *args):
4558  r"""
4559  has_attribute(Charged self, FloatKey a0) -> bool
4560  has_attribute(Charged self, IntKey a0) -> bool
4561  has_attribute(Charged self, FloatsKey a0) -> bool
4562  has_attribute(Charged self, IntsKey a0) -> bool
4563  has_attribute(Charged self, StringKey a0) -> bool
4564  has_attribute(Charged self, ParticleIndexKey a0) -> bool
4565  has_attribute(Charged self, ObjectKey a0) -> bool
4566  has_attribute(Charged self, SparseFloatKey a0) -> bool
4567  has_attribute(Charged self, SparseIntKey a0) -> bool
4568  has_attribute(Charged self, SparseStringKey a0) -> bool
4569  has_attribute(Charged self, SparseParticleIndexKey a0) -> bool
4570  """
4571  return _IMP_atom.Charged_has_attribute(self, *args)
4572 
4573  def get_derivative(self, a0):
4574  r"""get_derivative(Charged self, FloatKey a0) -> double"""
4575  return _IMP_atom.Charged_get_derivative(self, a0)
4576 
4577  def get_name(self):
4578  r"""get_name(Charged self) -> std::string"""
4579  return _IMP_atom.Charged_get_name(self)
4580 
4581  def clear_caches(self):
4582  r"""clear_caches(Charged self)"""
4583  return _IMP_atom.Charged_clear_caches(self)
4584 
4585  def set_name(self, a0):
4586  r"""set_name(Charged self, std::string a0)"""
4587  return _IMP_atom.Charged_set_name(self, a0)
4588 
4589  def set_check_level(self, a0):
4590  r"""set_check_level(Charged self, IMP::CheckLevel a0)"""
4591  return _IMP_atom.Charged_set_check_level(self, a0)
4592 
4593  def add_to_derivative(self, a0, a1, a2):
4594  r"""add_to_derivative(Charged self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
4595  return _IMP_atom.Charged_add_to_derivative(self, a0, a1, a2)
4596 
4597  def set_is_optimized(self, a0, a1):
4598  r"""set_is_optimized(Charged self, FloatKey a0, bool a1)"""
4599  return _IMP_atom.Charged_set_is_optimized(self, a0, a1)
4600 
4601  def get_is_optimized(self, a0):
4602  r"""get_is_optimized(Charged self, FloatKey a0) -> bool"""
4603  return _IMP_atom.Charged_get_is_optimized(self, a0)
4604 
4605  def get_check_level(self):
4606  r"""get_check_level(Charged self) -> IMP::CheckLevel"""
4607  return _IMP_atom.Charged_get_check_level(self)
4608 
4609  def __eq__(self, *args):
4610  r"""
4611  __eq__(Charged self, Charged o) -> bool
4612  __eq__(Charged self, Particle d) -> bool
4613  """
4614  return _IMP_atom.Charged___eq__(self, *args)
4615 
4616  def __ne__(self, *args):
4617  r"""
4618  __ne__(Charged self, Charged o) -> bool
4619  __ne__(Charged self, Particle d) -> bool
4620  """
4621  return _IMP_atom.Charged___ne__(self, *args)
4622 
4623  def __le__(self, *args):
4624  r"""
4625  __le__(Charged self, Charged o) -> bool
4626  __le__(Charged self, Particle d) -> bool
4627  """
4628  return _IMP_atom.Charged___le__(self, *args)
4629 
4630  def __lt__(self, *args):
4631  r"""
4632  __lt__(Charged self, Charged o) -> bool
4633  __lt__(Charged self, Particle d) -> bool
4634  """
4635  return _IMP_atom.Charged___lt__(self, *args)
4636 
4637  def __ge__(self, *args):
4638  r"""
4639  __ge__(Charged self, Charged o) -> bool
4640  __ge__(Charged self, Particle d) -> bool
4641  """
4642  return _IMP_atom.Charged___ge__(self, *args)
4643 
4644  def __gt__(self, *args):
4645  r"""
4646  __gt__(Charged self, Charged o) -> bool
4647  __gt__(Charged self, Particle d) -> bool
4648  """
4649  return _IMP_atom.Charged___gt__(self, *args)
4650 
4651  def __hash__(self):
4652  r"""__hash__(Charged self) -> std::size_t"""
4653  return _IMP_atom.Charged___hash__(self)
4654 
4655  def __str__(self):
4656  r"""__str__(Charged self) -> std::string"""
4657  return _IMP_atom.Charged___str__(self)
4658 
4659  def __repr__(self):
4660  r"""__repr__(Charged self) -> std::string"""
4661  return _IMP_atom.Charged___repr__(self)
4662 
4663  def _get_as_binary(self):
4664  r"""_get_as_binary(Charged self) -> PyObject *"""
4665  return _IMP_atom.Charged__get_as_binary(self)
4666 
4667  def _set_from_binary(self, p):
4668  r"""_set_from_binary(Charged self, PyObject * p)"""
4669  return _IMP_atom.Charged__set_from_binary(self, p)
4670 
4671  def __getstate__(self):
4672  p = self._get_as_binary()
4673  if len(self.__dict__) > 1:
4674  d = self.__dict__.copy()
4675  del d['this']
4676  p = (d, p)
4677  return p
4678 
4679  def __setstate__(self, p):
4680  if not hasattr(self, 'this'):
4681  self.__init__()
4682  if isinstance(p, tuple):
4683  d, p = p
4684  self.__dict__.update(d)
4685  return self._set_from_binary(p)
4686 
4687  __swig_destroy__ = _IMP_atom.delete_Charged
4688 
4689 # Register Charged in _IMP_atom:
4690 _IMP_atom.Charged_swigregister(Charged)
4691 class CoulombPairScore(IMP.PairScore):
4692  r"""Proxy of C++ IMP::atom::CoulombPairScore class."""
4693 
4694  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4695 
4696  def __init__(self, f):
4697  r"""__init__(CoulombPairScore self, SmoothingFunction f) -> CoulombPairScore"""
4698  _IMP_atom.CoulombPairScore_swiginit(self, _IMP_atom.new_CoulombPairScore(f))
4699 
4700  def set_relative_dielectric(self, relative_dielectric):
4701  r"""set_relative_dielectric(CoulombPairScore self, double relative_dielectric)"""
4702  return _IMP_atom.CoulombPairScore_set_relative_dielectric(self, relative_dielectric)
4703 
4704  def get_relative_dielectric(self):
4705  r"""get_relative_dielectric(CoulombPairScore self) -> double"""
4706  return _IMP_atom.CoulombPairScore_get_relative_dielectric(self)
4707 
4708  def do_get_inputs(self, m, pis):
4709  r"""do_get_inputs(CoulombPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
4710  return _IMP_atom.CoulombPairScore_do_get_inputs(self, m, pis)
4711 
4712  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
4713  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"""
4714  return _IMP_atom.CoulombPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
4715 
4716  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
4717  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"""
4718  return _IMP_atom.CoulombPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
4719 
4720  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
4721  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"""
4722  return _IMP_atom.CoulombPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
4723 
4724  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
4725  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"""
4726  return _IMP_atom.CoulombPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
4727 
4728  def get_version_info(self):
4729  r"""get_version_info(CoulombPairScore self) -> VersionInfo"""
4730  return _IMP_atom.CoulombPairScore_get_version_info(self)
4731  __swig_destroy__ = _IMP_atom.delete_CoulombPairScore
4732 
4733  def __str__(self):
4734  r"""__str__(CoulombPairScore self) -> std::string"""
4735  return _IMP_atom.CoulombPairScore___str__(self)
4736 
4737  def __repr__(self):
4738  r"""__repr__(CoulombPairScore self) -> std::string"""
4739  return _IMP_atom.CoulombPairScore___repr__(self)
4740 
4741  @staticmethod
4742  def get_from(o):
4743  return _object_cast_to_CoulombPairScore(o)
4744 
4745 
4746 # Register CoulombPairScore in _IMP_atom:
4747 _IMP_atom.CoulombPairScore_swigregister(CoulombPairScore)
4748 class Domain(Hierarchy):
4749  r"""Proxy of C++ IMP::atom::Domain class."""
4750 
4751  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4752 
4753  def set_index_range(self, ir):
4754  r"""set_index_range(Domain self, IMP::IntRange ir)"""
4755  return _IMP_atom.Domain_set_index_range(self, ir)
4756 
4757  def get_index_range(self):
4758  r"""get_index_range(Domain self) -> IMP::IntRange"""
4759  return _IMP_atom.Domain_get_index_range(self)
4760 
4761  def __init__(self, *args):
4762  r"""
4763  __init__(Domain self) -> Domain
4764  __init__(Domain self, Model m, ParticleIndex id) -> Domain
4765  __init__(Domain self, _ParticleAdaptor d) -> Domain
4766  """
4767  _IMP_atom.Domain_swiginit(self, _IMP_atom.new_Domain(*args))
4768 
4769  @staticmethod
4770  def get_is_setup(*args):
4771  r"""
4772  get_is_setup(Model m, ParticleIndex pi) -> bool
4773  get_is_setup(_ParticleAdaptor p) -> bool
4774  """
4775  return _IMP_atom.Domain_get_is_setup(*args)
4776 
4777  def show(self, *args):
4778  r"""show(Domain self, _ostream out=std::cout)"""
4779  return _IMP_atom.Domain_show(self, *args)
4780 
4781  @staticmethod
4782  def setup_particle(*args):
4783  r"""
4784  setup_particle(Model m, ParticleIndex pi, Domain other) -> Domain
4785  setup_particle(_ParticleAdaptor pa, Domain other) -> Domain
4786  setup_particle(Model m, ParticleIndex pi, IMP::IntRange residues) -> Domain
4787  setup_particle(_ParticleAdaptor pa, IMP::IntRange residues) -> Domain
4788  """
4789  return _IMP_atom.Domain_setup_particle(*args)
4790 
4791  def add_attribute(self, *args):
4792  r"""
4793  add_attribute(Domain self, FloatKey k, IMP::Float v, bool opt)
4794  add_attribute(Domain self, FloatKey a0, IMP::Float a1)
4795  add_attribute(Domain self, IntKey a0, IMP::Int a1)
4796  add_attribute(Domain self, FloatsKey a0, IMP::Floats a1)
4797  add_attribute(Domain self, IntsKey a0, IMP::Ints a1)
4798  add_attribute(Domain self, StringKey a0, IMP::String a1)
4799  add_attribute(Domain self, ParticleIndexKey a0, Particle a1)
4800  add_attribute(Domain self, ObjectKey a0, Object a1)
4801  add_attribute(Domain self, SparseFloatKey a0, IMP::Float a1)
4802  add_attribute(Domain self, SparseIntKey a0, IMP::Int a1)
4803  add_attribute(Domain self, SparseStringKey a0, IMP::String a1)
4804  add_attribute(Domain self, SparseParticleIndexKey a0, ParticleIndex a1)
4805  """
4806  return _IMP_atom.Domain_add_attribute(self, *args)
4807 
4808  def get_value(self, *args):
4809  r"""
4810  get_value(Domain self, FloatKey a0) -> IMP::Float
4811  get_value(Domain self, IntKey a0) -> IMP::Int
4812  get_value(Domain self, FloatsKey a0) -> IMP::Floats
4813  get_value(Domain self, IntsKey a0) -> IMP::Ints
4814  get_value(Domain self, StringKey a0) -> IMP::String
4815  get_value(Domain self, ParticleIndexKey a0) -> Particle
4816  get_value(Domain self, ObjectKey a0) -> Object
4817  get_value(Domain self, SparseFloatKey a0) -> IMP::Float
4818  get_value(Domain self, SparseIntKey a0) -> IMP::Int
4819  get_value(Domain self, SparseStringKey a0) -> IMP::String
4820  get_value(Domain self, SparseParticleIndexKey a0) -> ParticleIndex
4821  """
4822  return _IMP_atom.Domain_get_value(self, *args)
4823 
4824  def set_value(self, *args):
4825  r"""
4826  set_value(Domain self, FloatKey a0, IMP::Float a1)
4827  set_value(Domain self, IntKey a0, IMP::Int a1)
4828  set_value(Domain self, FloatsKey a0, IMP::Floats a1)
4829  set_value(Domain self, IntsKey a0, IMP::Ints a1)
4830  set_value(Domain self, StringKey a0, IMP::String a1)
4831  set_value(Domain self, ParticleIndexKey a0, Particle a1)
4832  set_value(Domain self, ObjectKey a0, Object a1)
4833  set_value(Domain self, SparseFloatKey a0, IMP::Float a1)
4834  set_value(Domain self, SparseIntKey a0, IMP::Int a1)
4835  set_value(Domain self, SparseStringKey a0, IMP::String a1)
4836  set_value(Domain self, SparseParticleIndexKey a0, ParticleIndex a1)
4837  """
4838  return _IMP_atom.Domain_set_value(self, *args)
4839 
4840  def remove_attribute(self, *args):
4841  r"""
4842  remove_attribute(Domain self, FloatKey a0)
4843  remove_attribute(Domain self, IntKey a0)
4844  remove_attribute(Domain self, FloatsKey a0)
4845  remove_attribute(Domain self, IntsKey a0)
4846  remove_attribute(Domain self, StringKey a0)
4847  remove_attribute(Domain self, ParticleIndexKey a0)
4848  remove_attribute(Domain self, ObjectKey a0)
4849  remove_attribute(Domain self, SparseFloatKey a0)
4850  remove_attribute(Domain self, SparseIntKey a0)
4851  remove_attribute(Domain self, SparseStringKey a0)
4852  remove_attribute(Domain self, SparseParticleIndexKey a0)
4853  """
4854  return _IMP_atom.Domain_remove_attribute(self, *args)
4855 
4856  def has_attribute(self, *args):
4857  r"""
4858  has_attribute(Domain self, FloatKey a0) -> bool
4859  has_attribute(Domain self, IntKey a0) -> bool
4860  has_attribute(Domain self, FloatsKey a0) -> bool
4861  has_attribute(Domain self, IntsKey a0) -> bool
4862  has_attribute(Domain self, StringKey a0) -> bool
4863  has_attribute(Domain self, ParticleIndexKey a0) -> bool
4864  has_attribute(Domain self, ObjectKey a0) -> bool
4865  has_attribute(Domain self, SparseFloatKey a0) -> bool
4866  has_attribute(Domain self, SparseIntKey a0) -> bool
4867  has_attribute(Domain self, SparseStringKey a0) -> bool
4868  has_attribute(Domain self, SparseParticleIndexKey a0) -> bool
4869  """
4870  return _IMP_atom.Domain_has_attribute(self, *args)
4871 
4872  def get_derivative(self, a0):
4873  r"""get_derivative(Domain self, FloatKey a0) -> double"""
4874  return _IMP_atom.Domain_get_derivative(self, a0)
4875 
4876  def get_name(self):
4877  r"""get_name(Domain self) -> std::string"""
4878  return _IMP_atom.Domain_get_name(self)
4879 
4880  def clear_caches(self):
4881  r"""clear_caches(Domain self)"""
4882  return _IMP_atom.Domain_clear_caches(self)
4883 
4884  def set_name(self, a0):
4885  r"""set_name(Domain self, std::string a0)"""
4886  return _IMP_atom.Domain_set_name(self, a0)
4887 
4888  def set_check_level(self, a0):
4889  r"""set_check_level(Domain self, IMP::CheckLevel a0)"""
4890  return _IMP_atom.Domain_set_check_level(self, a0)
4891 
4892  def add_to_derivative(self, a0, a1, a2):
4893  r"""add_to_derivative(Domain self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
4894  return _IMP_atom.Domain_add_to_derivative(self, a0, a1, a2)
4895 
4896  def set_is_optimized(self, a0, a1):
4897  r"""set_is_optimized(Domain self, FloatKey a0, bool a1)"""
4898  return _IMP_atom.Domain_set_is_optimized(self, a0, a1)
4899 
4900  def get_is_optimized(self, a0):
4901  r"""get_is_optimized(Domain self, FloatKey a0) -> bool"""
4902  return _IMP_atom.Domain_get_is_optimized(self, a0)
4903 
4904  def get_check_level(self):
4905  r"""get_check_level(Domain self) -> IMP::CheckLevel"""
4906  return _IMP_atom.Domain_get_check_level(self)
4907 
4908  def __eq__(self, *args):
4909  r"""
4910  __eq__(Domain self, Domain o) -> bool
4911  __eq__(Domain self, Particle d) -> bool
4912  """
4913  return _IMP_atom.Domain___eq__(self, *args)
4914 
4915  def __ne__(self, *args):
4916  r"""
4917  __ne__(Domain self, Domain o) -> bool
4918  __ne__(Domain self, Particle d) -> bool
4919  """
4920  return _IMP_atom.Domain___ne__(self, *args)
4921 
4922  def __le__(self, *args):
4923  r"""
4924  __le__(Domain self, Domain o) -> bool
4925  __le__(Domain self, Particle d) -> bool
4926  """
4927  return _IMP_atom.Domain___le__(self, *args)
4928 
4929  def __lt__(self, *args):
4930  r"""
4931  __lt__(Domain self, Domain o) -> bool
4932  __lt__(Domain self, Particle d) -> bool
4933  """
4934  return _IMP_atom.Domain___lt__(self, *args)
4935 
4936  def __ge__(self, *args):
4937  r"""
4938  __ge__(Domain self, Domain o) -> bool
4939  __ge__(Domain self, Particle d) -> bool
4940  """
4941  return _IMP_atom.Domain___ge__(self, *args)
4942 
4943  def __gt__(self, *args):
4944  r"""
4945  __gt__(Domain self, Domain o) -> bool
4946  __gt__(Domain self, Particle d) -> bool
4947  """
4948  return _IMP_atom.Domain___gt__(self, *args)
4949 
4950  def __hash__(self):
4951  r"""__hash__(Domain self) -> std::size_t"""
4952  return _IMP_atom.Domain___hash__(self)
4953 
4954  def __str__(self):
4955  r"""__str__(Domain self) -> std::string"""
4956  return _IMP_atom.Domain___str__(self)
4957 
4958  def __repr__(self):
4959  r"""__repr__(Domain self) -> std::string"""
4960  return _IMP_atom.Domain___repr__(self)
4961 
4962  def _get_as_binary(self):
4963  r"""_get_as_binary(Domain self) -> PyObject *"""
4964  return _IMP_atom.Domain__get_as_binary(self)
4965 
4966  def _set_from_binary(self, p):
4967  r"""_set_from_binary(Domain self, PyObject * p)"""
4968  return _IMP_atom.Domain__set_from_binary(self, p)
4969 
4970  def __getstate__(self):
4971  p = self._get_as_binary()
4972  if len(self.__dict__) > 1:
4973  d = self.__dict__.copy()
4974  del d['this']
4975  p = (d, p)
4976  return p
4977 
4978  def __setstate__(self, p):
4979  if not hasattr(self, 'this'):
4980  self.__init__()
4981  if isinstance(p, tuple):
4982  d, p = p
4983  self.__dict__.update(d)
4984  return self._set_from_binary(p)
4985 
4986  __swig_destroy__ = _IMP_atom.delete_Domain
4987 
4988 # Register Domain in _IMP_atom:
4989 _IMP_atom.Domain_swigregister(Domain)
4990 class LennardJonesType(IMP.Object):
4991  r"""Proxy of C++ IMP::atom::LennardJonesType class."""
4992 
4993  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4994 
4995  def __init__(self, *args):
4996  r"""__init__(LennardJonesType self, double well_depth, double radius, std::string name="LennardJonesType%1%") -> LennardJonesType"""
4997  _IMP_atom.LennardJonesType_swiginit(self, _IMP_atom.new_LennardJonesType(*args))
4998 
4999  def get_well_depth(self):
5000  r"""get_well_depth(LennardJonesType self) -> double"""
5001  return _IMP_atom.LennardJonesType_get_well_depth(self)
5002 
5003  def set_well_depth(self, d):
5004  r"""set_well_depth(LennardJonesType self, double d)"""
5005  return _IMP_atom.LennardJonesType_set_well_depth(self, d)
5006 
5007  def get_radius(self):
5008  r"""get_radius(LennardJonesType self) -> double"""
5009  return _IMP_atom.LennardJonesType_get_radius(self)
5010 
5011  def set_radius(self, r):
5012  r"""set_radius(LennardJonesType self, double r)"""
5013  return _IMP_atom.LennardJonesType_set_radius(self, r)
5014 
5015  def get_index(self):
5016  r"""get_index(LennardJonesType self) -> int"""
5017  return _IMP_atom.LennardJonesType_get_index(self)
5018 
5019  def get_version_info(self):
5020  r"""get_version_info(LennardJonesType self) -> VersionInfo"""
5021  return _IMP_atom.LennardJonesType_get_version_info(self)
5022  __swig_destroy__ = _IMP_atom.delete_LennardJonesType
5023 
5024  def __str__(self):
5025  r"""__str__(LennardJonesType self) -> std::string"""
5026  return _IMP_atom.LennardJonesType___str__(self)
5027 
5028  def __repr__(self):
5029  r"""__repr__(LennardJonesType self) -> std::string"""
5030  return _IMP_atom.LennardJonesType___repr__(self)
5031 
5032  @staticmethod
5033  def get_from(o):
5034  return _object_cast_to_LennardJonesType(o)
5035 
5036 
5037 # Register LennardJonesType in _IMP_atom:
5038 _IMP_atom.LennardJonesType_swigregister(LennardJonesType)
5039 class LennardJonesTyped(IMP.core.XYZ):
5040  r"""Proxy of C++ IMP::atom::LennardJonesTyped class."""
5041 
5042  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5043 
5044  def __init__(self, *args):
5045  r"""
5046  __init__(LennardJonesTyped self) -> LennardJonesTyped
5047  __init__(LennardJonesTyped self, Model m, ParticleIndex id) -> LennardJonesTyped
5048  __init__(LennardJonesTyped self, _ParticleAdaptor d) -> LennardJonesTyped
5049  """
5050  _IMP_atom.LennardJonesTyped_swiginit(self, _IMP_atom.new_LennardJonesTyped(*args))
5051 
5052  def show(self, *args):
5053  r"""show(LennardJonesTyped self, _ostream out=std::cout)"""
5054  return _IMP_atom.LennardJonesTyped_show(self, *args)
5055 
5056  @staticmethod
5057  def setup_particle(*args):
5058  r"""
5059  setup_particle(Model m, ParticleIndex pi, LennardJonesType type) -> LennardJonesTyped
5060  setup_particle(_ParticleAdaptor pa, LennardJonesType type) -> LennardJonesTyped
5061  """
5062  return _IMP_atom.LennardJonesTyped_setup_particle(*args)
5063 
5064  @staticmethod
5065  def get_is_setup(*args):
5066  r"""
5067  get_is_setup(_ParticleAdaptor p) -> bool
5068  get_is_setup(Model m, ParticleIndex pi) -> bool
5069  """
5070  return _IMP_atom.LennardJonesTyped_get_is_setup(*args)
5071 
5072  def set_type(self, type):
5073  r"""set_type(LennardJonesTyped self, LennardJonesType type)"""
5074  return _IMP_atom.LennardJonesTyped_set_type(self, type)
5075 
5076  def get_type(self):
5077  r"""get_type(LennardJonesTyped self) -> LennardJonesType"""
5078  return _IMP_atom.LennardJonesTyped_get_type(self)
5079 
5080  def get_index(self):
5081  r"""get_index(LennardJonesTyped self) -> int"""
5082  return _IMP_atom.LennardJonesTyped_get_index(self)
5083 
5084  def get_well_depth(self):
5085  r"""get_well_depth(LennardJonesTyped self) -> double"""
5086  return _IMP_atom.LennardJonesTyped_get_well_depth(self)
5087 
5088  def get_radius(self):
5089  r"""get_radius(LennardJonesTyped self) -> double"""
5090  return _IMP_atom.LennardJonesTyped_get_radius(self)
5091 
5092  @staticmethod
5093  def get_type_key():
5094  r"""get_type_key() -> IntKey"""
5095  return _IMP_atom.LennardJonesTyped_get_type_key()
5096 
5097  def add_attribute(self, *args):
5098  r"""
5099  add_attribute(LennardJonesTyped self, FloatKey k, IMP::Float v, bool opt)
5100  add_attribute(LennardJonesTyped self, FloatKey a0, IMP::Float a1)
5101  add_attribute(LennardJonesTyped self, IntKey a0, IMP::Int a1)
5102  add_attribute(LennardJonesTyped self, FloatsKey a0, IMP::Floats a1)
5103  add_attribute(LennardJonesTyped self, IntsKey a0, IMP::Ints a1)
5104  add_attribute(LennardJonesTyped self, StringKey a0, IMP::String a1)
5105  add_attribute(LennardJonesTyped self, ParticleIndexKey a0, Particle a1)
5106  add_attribute(LennardJonesTyped self, ObjectKey a0, Object a1)
5107  add_attribute(LennardJonesTyped self, SparseFloatKey a0, IMP::Float a1)
5108  add_attribute(LennardJonesTyped self, SparseIntKey a0, IMP::Int a1)
5109  add_attribute(LennardJonesTyped self, SparseStringKey a0, IMP::String a1)
5110  add_attribute(LennardJonesTyped self, SparseParticleIndexKey a0, ParticleIndex a1)
5111  """
5112  return _IMP_atom.LennardJonesTyped_add_attribute(self, *args)
5113 
5114  def get_value(self, *args):
5115  r"""
5116  get_value(LennardJonesTyped self, FloatKey a0) -> IMP::Float
5117  get_value(LennardJonesTyped self, IntKey a0) -> IMP::Int
5118  get_value(LennardJonesTyped self, FloatsKey a0) -> IMP::Floats
5119  get_value(LennardJonesTyped self, IntsKey a0) -> IMP::Ints
5120  get_value(LennardJonesTyped self, StringKey a0) -> IMP::String
5121  get_value(LennardJonesTyped self, ParticleIndexKey a0) -> Particle
5122  get_value(LennardJonesTyped self, ObjectKey a0) -> Object
5123  get_value(LennardJonesTyped self, SparseFloatKey a0) -> IMP::Float
5124  get_value(LennardJonesTyped self, SparseIntKey a0) -> IMP::Int
5125  get_value(LennardJonesTyped self, SparseStringKey a0) -> IMP::String
5126  get_value(LennardJonesTyped self, SparseParticleIndexKey a0) -> ParticleIndex
5127  """
5128  return _IMP_atom.LennardJonesTyped_get_value(self, *args)
5129 
5130  def set_value(self, *args):
5131  r"""
5132  set_value(LennardJonesTyped self, FloatKey a0, IMP::Float a1)
5133  set_value(LennardJonesTyped self, IntKey a0, IMP::Int a1)
5134  set_value(LennardJonesTyped self, FloatsKey a0, IMP::Floats a1)
5135  set_value(LennardJonesTyped self, IntsKey a0, IMP::Ints a1)
5136  set_value(LennardJonesTyped self, StringKey a0, IMP::String a1)
5137  set_value(LennardJonesTyped self, ParticleIndexKey a0, Particle a1)
5138  set_value(LennardJonesTyped self, ObjectKey a0, Object a1)
5139  set_value(LennardJonesTyped self, SparseFloatKey a0, IMP::Float a1)
5140  set_value(LennardJonesTyped self, SparseIntKey a0, IMP::Int a1)
5141  set_value(LennardJonesTyped self, SparseStringKey a0, IMP::String a1)
5142  set_value(LennardJonesTyped self, SparseParticleIndexKey a0, ParticleIndex a1)
5143  """
5144  return _IMP_atom.LennardJonesTyped_set_value(self, *args)
5145 
5146  def remove_attribute(self, *args):
5147  r"""
5148  remove_attribute(LennardJonesTyped self, FloatKey a0)
5149  remove_attribute(LennardJonesTyped self, IntKey a0)
5150  remove_attribute(LennardJonesTyped self, FloatsKey a0)
5151  remove_attribute(LennardJonesTyped self, IntsKey a0)
5152  remove_attribute(LennardJonesTyped self, StringKey a0)
5153  remove_attribute(LennardJonesTyped self, ParticleIndexKey a0)
5154  remove_attribute(LennardJonesTyped self, ObjectKey a0)
5155  remove_attribute(LennardJonesTyped self, SparseFloatKey a0)
5156  remove_attribute(LennardJonesTyped self, SparseIntKey a0)
5157  remove_attribute(LennardJonesTyped self, SparseStringKey a0)
5158  remove_attribute(LennardJonesTyped self, SparseParticleIndexKey a0)
5159  """
5160  return _IMP_atom.LennardJonesTyped_remove_attribute(self, *args)
5161 
5162  def has_attribute(self, *args):
5163  r"""
5164  has_attribute(LennardJonesTyped self, FloatKey a0) -> bool
5165  has_attribute(LennardJonesTyped self, IntKey a0) -> bool
5166  has_attribute(LennardJonesTyped self, FloatsKey a0) -> bool
5167  has_attribute(LennardJonesTyped self, IntsKey a0) -> bool
5168  has_attribute(LennardJonesTyped self, StringKey a0) -> bool
5169  has_attribute(LennardJonesTyped self, ParticleIndexKey a0) -> bool
5170  has_attribute(LennardJonesTyped self, ObjectKey a0) -> bool
5171  has_attribute(LennardJonesTyped self, SparseFloatKey a0) -> bool
5172  has_attribute(LennardJonesTyped self, SparseIntKey a0) -> bool
5173  has_attribute(LennardJonesTyped self, SparseStringKey a0) -> bool
5174  has_attribute(LennardJonesTyped self, SparseParticleIndexKey a0) -> bool
5175  """
5176  return _IMP_atom.LennardJonesTyped_has_attribute(self, *args)
5177 
5178  def get_derivative(self, a0):
5179  r"""get_derivative(LennardJonesTyped self, FloatKey a0) -> double"""
5180  return _IMP_atom.LennardJonesTyped_get_derivative(self, a0)
5181 
5182  def get_name(self):
5183  r"""get_name(LennardJonesTyped self) -> std::string"""
5184  return _IMP_atom.LennardJonesTyped_get_name(self)
5185 
5186  def clear_caches(self):
5187  r"""clear_caches(LennardJonesTyped self)"""
5188  return _IMP_atom.LennardJonesTyped_clear_caches(self)
5189 
5190  def set_name(self, a0):
5191  r"""set_name(LennardJonesTyped self, std::string a0)"""
5192  return _IMP_atom.LennardJonesTyped_set_name(self, a0)
5193 
5194  def set_check_level(self, a0):
5195  r"""set_check_level(LennardJonesTyped self, IMP::CheckLevel a0)"""
5196  return _IMP_atom.LennardJonesTyped_set_check_level(self, a0)
5197 
5198  def add_to_derivative(self, a0, a1, a2):
5199  r"""add_to_derivative(LennardJonesTyped self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
5200  return _IMP_atom.LennardJonesTyped_add_to_derivative(self, a0, a1, a2)
5201 
5202  def set_is_optimized(self, a0, a1):
5203  r"""set_is_optimized(LennardJonesTyped self, FloatKey a0, bool a1)"""
5204  return _IMP_atom.LennardJonesTyped_set_is_optimized(self, a0, a1)
5205 
5206  def get_is_optimized(self, a0):
5207  r"""get_is_optimized(LennardJonesTyped self, FloatKey a0) -> bool"""
5208  return _IMP_atom.LennardJonesTyped_get_is_optimized(self, a0)
5209 
5210  def get_check_level(self):
5211  r"""get_check_level(LennardJonesTyped self) -> IMP::CheckLevel"""
5212  return _IMP_atom.LennardJonesTyped_get_check_level(self)
5213 
5214  def __eq__(self, *args):
5215  r"""
5216  __eq__(LennardJonesTyped self, LennardJonesTyped o) -> bool
5217  __eq__(LennardJonesTyped self, Particle d) -> bool
5218  """
5219  return _IMP_atom.LennardJonesTyped___eq__(self, *args)
5220 
5221  def __ne__(self, *args):
5222  r"""
5223  __ne__(LennardJonesTyped self, LennardJonesTyped o) -> bool
5224  __ne__(LennardJonesTyped self, Particle d) -> bool
5225  """
5226  return _IMP_atom.LennardJonesTyped___ne__(self, *args)
5227 
5228  def __le__(self, *args):
5229  r"""
5230  __le__(LennardJonesTyped self, LennardJonesTyped o) -> bool
5231  __le__(LennardJonesTyped self, Particle d) -> bool
5232  """
5233  return _IMP_atom.LennardJonesTyped___le__(self, *args)
5234 
5235  def __lt__(self, *args):
5236  r"""
5237  __lt__(LennardJonesTyped self, LennardJonesTyped o) -> bool
5238  __lt__(LennardJonesTyped self, Particle d) -> bool
5239  """
5240  return _IMP_atom.LennardJonesTyped___lt__(self, *args)
5241 
5242  def __ge__(self, *args):
5243  r"""
5244  __ge__(LennardJonesTyped self, LennardJonesTyped o) -> bool
5245  __ge__(LennardJonesTyped self, Particle d) -> bool
5246  """
5247  return _IMP_atom.LennardJonesTyped___ge__(self, *args)
5248 
5249  def __gt__(self, *args):
5250  r"""
5251  __gt__(LennardJonesTyped self, LennardJonesTyped o) -> bool
5252  __gt__(LennardJonesTyped self, Particle d) -> bool
5253  """
5254  return _IMP_atom.LennardJonesTyped___gt__(self, *args)
5255 
5256  def __hash__(self):
5257  r"""__hash__(LennardJonesTyped self) -> std::size_t"""
5258  return _IMP_atom.LennardJonesTyped___hash__(self)
5259 
5260  def __str__(self):
5261  r"""__str__(LennardJonesTyped self) -> std::string"""
5262  return _IMP_atom.LennardJonesTyped___str__(self)
5263 
5264  def __repr__(self):
5265  r"""__repr__(LennardJonesTyped self) -> std::string"""
5266  return _IMP_atom.LennardJonesTyped___repr__(self)
5267 
5268  def _get_as_binary(self):
5269  r"""_get_as_binary(LennardJonesTyped self) -> PyObject *"""
5270  return _IMP_atom.LennardJonesTyped__get_as_binary(self)
5271 
5272  def _set_from_binary(self, p):
5273  r"""_set_from_binary(LennardJonesTyped self, PyObject * p)"""
5274  return _IMP_atom.LennardJonesTyped__set_from_binary(self, p)
5275 
5276  def __getstate__(self):
5277  p = self._get_as_binary()
5278  if len(self.__dict__) > 1:
5279  d = self.__dict__.copy()
5280  del d['this']
5281  p = (d, p)
5282  return p
5283 
5284  def __setstate__(self, p):
5285  if not hasattr(self, 'this'):
5286  self.__init__()
5287  if isinstance(p, tuple):
5288  d, p = p
5289  self.__dict__.update(d)
5290  return self._set_from_binary(p)
5291 
5292  __swig_destroy__ = _IMP_atom.delete_LennardJonesTyped
5293 
5294 # Register LennardJonesTyped in _IMP_atom:
5295 _IMP_atom.LennardJonesTyped_swigregister(LennardJonesTyped)
5296 class LinearVelocity(IMP.Decorator):
5297  r"""Proxy of C++ IMP::atom::LinearVelocity class."""
5298 
5299  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5300 
5301  def __init__(self, *args):
5302  r"""
5303  __init__(LinearVelocity self) -> LinearVelocity
5304  __init__(LinearVelocity self, Model m, ParticleIndex id) -> LinearVelocity
5305  __init__(LinearVelocity self, _ParticleAdaptor d) -> LinearVelocity
5306  """
5307  _IMP_atom.LinearVelocity_swiginit(self, _IMP_atom.new_LinearVelocity(*args))
5308 
5309  @staticmethod
5310  def get_is_setup(*args):
5311  r"""
5312  get_is_setup(Model m, ParticleIndex pi) -> bool
5313  get_is_setup(_ParticleAdaptor p) -> bool
5314  """
5315  return _IMP_atom.LinearVelocity_get_is_setup(*args)
5316 
5317  def show(self, *args):
5318  r"""show(LinearVelocity self, _ostream out=std::cout)"""
5319  return _IMP_atom.LinearVelocity_show(self, *args)
5320 
5321  @staticmethod
5322  def setup_particle(*args):
5323  r"""
5324  setup_particle(Model m, ParticleIndex pi) -> LinearVelocity
5325  setup_particle(_ParticleAdaptor pa) -> LinearVelocity
5326  setup_particle(Model m, ParticleIndex pi, Vector3D v) -> LinearVelocity
5327  setup_particle(_ParticleAdaptor pa, Vector3D v) -> LinearVelocity
5328  """
5329  return _IMP_atom.LinearVelocity_setup_particle(*args)
5330 
5331  def set_velocity(self, v):
5332  r"""set_velocity(LinearVelocity self, Vector3D v)"""
5333  return _IMP_atom.LinearVelocity_set_velocity(self, v)
5334 
5335  def get_velocity(self):
5336  r"""get_velocity(LinearVelocity self) -> Vector3D"""
5337  return _IMP_atom.LinearVelocity_get_velocity(self)
5338 
5339  def add_attribute(self, *args):
5340  r"""
5341  add_attribute(LinearVelocity self, FloatKey k, IMP::Float v, bool opt)
5342  add_attribute(LinearVelocity self, FloatKey a0, IMP::Float a1)
5343  add_attribute(LinearVelocity self, IntKey a0, IMP::Int a1)
5344  add_attribute(LinearVelocity self, FloatsKey a0, IMP::Floats a1)
5345  add_attribute(LinearVelocity self, IntsKey a0, IMP::Ints a1)
5346  add_attribute(LinearVelocity self, StringKey a0, IMP::String a1)
5347  add_attribute(LinearVelocity self, ParticleIndexKey a0, Particle a1)
5348  add_attribute(LinearVelocity self, ObjectKey a0, Object a1)
5349  add_attribute(LinearVelocity self, SparseFloatKey a0, IMP::Float a1)
5350  add_attribute(LinearVelocity self, SparseIntKey a0, IMP::Int a1)
5351  add_attribute(LinearVelocity self, SparseStringKey a0, IMP::String a1)
5352  add_attribute(LinearVelocity self, SparseParticleIndexKey a0, ParticleIndex a1)
5353  """
5354  return _IMP_atom.LinearVelocity_add_attribute(self, *args)
5355 
5356  def get_value(self, *args):
5357  r"""
5358  get_value(LinearVelocity self, FloatKey a0) -> IMP::Float
5359  get_value(LinearVelocity self, IntKey a0) -> IMP::Int
5360  get_value(LinearVelocity self, FloatsKey a0) -> IMP::Floats
5361  get_value(LinearVelocity self, IntsKey a0) -> IMP::Ints
5362  get_value(LinearVelocity self, StringKey a0) -> IMP::String
5363  get_value(LinearVelocity self, ParticleIndexKey a0) -> Particle
5364  get_value(LinearVelocity self, ObjectKey a0) -> Object
5365  get_value(LinearVelocity self, SparseFloatKey a0) -> IMP::Float
5366  get_value(LinearVelocity self, SparseIntKey a0) -> IMP::Int
5367  get_value(LinearVelocity self, SparseStringKey a0) -> IMP::String
5368  get_value(LinearVelocity self, SparseParticleIndexKey a0) -> ParticleIndex
5369  """
5370  return _IMP_atom.LinearVelocity_get_value(self, *args)
5371 
5372  def set_value(self, *args):
5373  r"""
5374  set_value(LinearVelocity self, FloatKey a0, IMP::Float a1)
5375  set_value(LinearVelocity self, IntKey a0, IMP::Int a1)
5376  set_value(LinearVelocity self, FloatsKey a0, IMP::Floats a1)
5377  set_value(LinearVelocity self, IntsKey a0, IMP::Ints a1)
5378  set_value(LinearVelocity self, StringKey a0, IMP::String a1)
5379  set_value(LinearVelocity self, ParticleIndexKey a0, Particle a1)
5380  set_value(LinearVelocity self, ObjectKey a0, Object a1)
5381  set_value(LinearVelocity self, SparseFloatKey a0, IMP::Float a1)
5382  set_value(LinearVelocity self, SparseIntKey a0, IMP::Int a1)
5383  set_value(LinearVelocity self, SparseStringKey a0, IMP::String a1)
5384  set_value(LinearVelocity self, SparseParticleIndexKey a0, ParticleIndex a1)
5385  """
5386  return _IMP_atom.LinearVelocity_set_value(self, *args)
5387 
5388  def remove_attribute(self, *args):
5389  r"""
5390  remove_attribute(LinearVelocity self, FloatKey a0)
5391  remove_attribute(LinearVelocity self, IntKey a0)
5392  remove_attribute(LinearVelocity self, FloatsKey a0)
5393  remove_attribute(LinearVelocity self, IntsKey a0)
5394  remove_attribute(LinearVelocity self, StringKey a0)
5395  remove_attribute(LinearVelocity self, ParticleIndexKey a0)
5396  remove_attribute(LinearVelocity self, ObjectKey a0)
5397  remove_attribute(LinearVelocity self, SparseFloatKey a0)
5398  remove_attribute(LinearVelocity self, SparseIntKey a0)
5399  remove_attribute(LinearVelocity self, SparseStringKey a0)
5400  remove_attribute(LinearVelocity self, SparseParticleIndexKey a0)
5401  """
5402  return _IMP_atom.LinearVelocity_remove_attribute(self, *args)
5403 
5404  def has_attribute(self, *args):
5405  r"""
5406  has_attribute(LinearVelocity self, FloatKey a0) -> bool
5407  has_attribute(LinearVelocity self, IntKey a0) -> bool
5408  has_attribute(LinearVelocity self, FloatsKey a0) -> bool
5409  has_attribute(LinearVelocity self, IntsKey a0) -> bool
5410  has_attribute(LinearVelocity self, StringKey a0) -> bool
5411  has_attribute(LinearVelocity self, ParticleIndexKey a0) -> bool
5412  has_attribute(LinearVelocity self, ObjectKey a0) -> bool
5413  has_attribute(LinearVelocity self, SparseFloatKey a0) -> bool
5414  has_attribute(LinearVelocity self, SparseIntKey a0) -> bool
5415  has_attribute(LinearVelocity self, SparseStringKey a0) -> bool
5416  has_attribute(LinearVelocity self, SparseParticleIndexKey a0) -> bool
5417  """
5418  return _IMP_atom.LinearVelocity_has_attribute(self, *args)
5419 
5420  def get_derivative(self, a0):
5421  r"""get_derivative(LinearVelocity self, FloatKey a0) -> double"""
5422  return _IMP_atom.LinearVelocity_get_derivative(self, a0)
5423 
5424  def get_name(self):
5425  r"""get_name(LinearVelocity self) -> std::string"""
5426  return _IMP_atom.LinearVelocity_get_name(self)
5427 
5428  def clear_caches(self):
5429  r"""clear_caches(LinearVelocity self)"""
5430  return _IMP_atom.LinearVelocity_clear_caches(self)
5431 
5432  def set_name(self, a0):
5433  r"""set_name(LinearVelocity self, std::string a0)"""
5434  return _IMP_atom.LinearVelocity_set_name(self, a0)
5435 
5436  def set_check_level(self, a0):
5437  r"""set_check_level(LinearVelocity self, IMP::CheckLevel a0)"""
5438  return _IMP_atom.LinearVelocity_set_check_level(self, a0)
5439 
5440  def add_to_derivative(self, a0, a1, a2):
5441  r"""add_to_derivative(LinearVelocity self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
5442  return _IMP_atom.LinearVelocity_add_to_derivative(self, a0, a1, a2)
5443 
5444  def set_is_optimized(self, a0, a1):
5445  r"""set_is_optimized(LinearVelocity self, FloatKey a0, bool a1)"""
5446  return _IMP_atom.LinearVelocity_set_is_optimized(self, a0, a1)
5447 
5448  def get_is_optimized(self, a0):
5449  r"""get_is_optimized(LinearVelocity self, FloatKey a0) -> bool"""
5450  return _IMP_atom.LinearVelocity_get_is_optimized(self, a0)
5451 
5452  def get_check_level(self):
5453  r"""get_check_level(LinearVelocity self) -> IMP::CheckLevel"""
5454  return _IMP_atom.LinearVelocity_get_check_level(self)
5455 
5456  def __eq__(self, *args):
5457  r"""
5458  __eq__(LinearVelocity self, LinearVelocity o) -> bool
5459  __eq__(LinearVelocity self, Particle d) -> bool
5460  """
5461  return _IMP_atom.LinearVelocity___eq__(self, *args)
5462 
5463  def __ne__(self, *args):
5464  r"""
5465  __ne__(LinearVelocity self, LinearVelocity o) -> bool
5466  __ne__(LinearVelocity self, Particle d) -> bool
5467  """
5468  return _IMP_atom.LinearVelocity___ne__(self, *args)
5469 
5470  def __le__(self, *args):
5471  r"""
5472  __le__(LinearVelocity self, LinearVelocity o) -> bool
5473  __le__(LinearVelocity self, Particle d) -> bool
5474  """
5475  return _IMP_atom.LinearVelocity___le__(self, *args)
5476 
5477  def __lt__(self, *args):
5478  r"""
5479  __lt__(LinearVelocity self, LinearVelocity o) -> bool
5480  __lt__(LinearVelocity self, Particle d) -> bool
5481  """
5482  return _IMP_atom.LinearVelocity___lt__(self, *args)
5483 
5484  def __ge__(self, *args):
5485  r"""
5486  __ge__(LinearVelocity self, LinearVelocity o) -> bool
5487  __ge__(LinearVelocity self, Particle d) -> bool
5488  """
5489  return _IMP_atom.LinearVelocity___ge__(self, *args)
5490 
5491  def __gt__(self, *args):
5492  r"""
5493  __gt__(LinearVelocity self, LinearVelocity o) -> bool
5494  __gt__(LinearVelocity self, Particle d) -> bool
5495  """
5496  return _IMP_atom.LinearVelocity___gt__(self, *args)
5497 
5498  def __hash__(self):
5499  r"""__hash__(LinearVelocity self) -> std::size_t"""
5500  return _IMP_atom.LinearVelocity___hash__(self)
5501 
5502  def __str__(self):
5503  r"""__str__(LinearVelocity self) -> std::string"""
5504  return _IMP_atom.LinearVelocity___str__(self)
5505 
5506  def __repr__(self):
5507  r"""__repr__(LinearVelocity self) -> std::string"""
5508  return _IMP_atom.LinearVelocity___repr__(self)
5509 
5510  def _get_as_binary(self):
5511  r"""_get_as_binary(LinearVelocity self) -> PyObject *"""
5512  return _IMP_atom.LinearVelocity__get_as_binary(self)
5513 
5514  def _set_from_binary(self, p):
5515  r"""_set_from_binary(LinearVelocity self, PyObject * p)"""
5516  return _IMP_atom.LinearVelocity__set_from_binary(self, p)
5517 
5518  def __getstate__(self):
5519  p = self._get_as_binary()
5520  if len(self.__dict__) > 1:
5521  d = self.__dict__.copy()
5522  del d['this']
5523  p = (d, p)
5524  return p
5525 
5526  def __setstate__(self, p):
5527  if not hasattr(self, 'this'):
5528  self.__init__()
5529  if isinstance(p, tuple):
5530  d, p = p
5531  self.__dict__.update(d)
5532  return self._set_from_binary(p)
5533 
5534  __swig_destroy__ = _IMP_atom.delete_LinearVelocity
5535 
5536 # Register LinearVelocity in _IMP_atom:
5537 _IMP_atom.LinearVelocity_swigregister(LinearVelocity)
5538 class AngularVelocity(IMP.Decorator):
5539  r"""Proxy of C++ IMP::atom::AngularVelocity class."""
5540 
5541  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5542 
5543  def __init__(self, *args):
5544  r"""
5545  __init__(AngularVelocity self) -> AngularVelocity
5546  __init__(AngularVelocity self, Model m, ParticleIndex id) -> AngularVelocity
5547  __init__(AngularVelocity self, _ParticleAdaptor d) -> AngularVelocity
5548  """
5549  _IMP_atom.AngularVelocity_swiginit(self, _IMP_atom.new_AngularVelocity(*args))
5550 
5551  @staticmethod
5552  def get_is_setup(*args):
5553  r"""
5554  get_is_setup(Model m, ParticleIndex pi) -> bool
5555  get_is_setup(_ParticleAdaptor p) -> bool
5556  """
5557  return _IMP_atom.AngularVelocity_get_is_setup(*args)
5558 
5559  def show(self, *args):
5560  r"""show(AngularVelocity self, _ostream out=std::cout)"""
5561  return _IMP_atom.AngularVelocity_show(self, *args)
5562 
5563  @staticmethod
5564  def setup_particle(*args):
5565  r"""
5566  setup_particle(Model m, ParticleIndex pi) -> AngularVelocity
5567  setup_particle(_ParticleAdaptor pa) -> AngularVelocity
5568  setup_particle(Model m, ParticleIndex pi, Vector4D v) -> AngularVelocity
5569  setup_particle(_ParticleAdaptor pa, Vector4D v) -> AngularVelocity
5570  """
5571  return _IMP_atom.AngularVelocity_setup_particle(*args)
5572 
5573  def set_velocity(self, v):
5574  r"""set_velocity(AngularVelocity self, Vector4D v)"""
5575  return _IMP_atom.AngularVelocity_set_velocity(self, v)
5576 
5577  def get_velocity(self):
5578  r"""get_velocity(AngularVelocity self) -> Vector4D"""
5579  return _IMP_atom.AngularVelocity_get_velocity(self)
5580 
5581  def add_attribute(self, *args):
5582  r"""
5583  add_attribute(AngularVelocity self, FloatKey k, IMP::Float v, bool opt)
5584  add_attribute(AngularVelocity self, FloatKey a0, IMP::Float a1)
5585  add_attribute(AngularVelocity self, IntKey a0, IMP::Int a1)
5586  add_attribute(AngularVelocity self, FloatsKey a0, IMP::Floats a1)
5587  add_attribute(AngularVelocity self, IntsKey a0, IMP::Ints a1)
5588  add_attribute(AngularVelocity self, StringKey a0, IMP::String a1)
5589  add_attribute(AngularVelocity self, ParticleIndexKey a0, Particle a1)
5590  add_attribute(AngularVelocity self, ObjectKey a0, Object a1)
5591  add_attribute(AngularVelocity self, SparseFloatKey a0, IMP::Float a1)
5592  add_attribute(AngularVelocity self, SparseIntKey a0, IMP::Int a1)
5593  add_attribute(AngularVelocity self, SparseStringKey a0, IMP::String a1)
5594  add_attribute(AngularVelocity self, SparseParticleIndexKey a0, ParticleIndex a1)
5595  """
5596  return _IMP_atom.AngularVelocity_add_attribute(self, *args)
5597 
5598  def get_value(self, *args):
5599  r"""
5600  get_value(AngularVelocity self, FloatKey a0) -> IMP::Float
5601  get_value(AngularVelocity self, IntKey a0) -> IMP::Int
5602  get_value(AngularVelocity self, FloatsKey a0) -> IMP::Floats
5603  get_value(AngularVelocity self, IntsKey a0) -> IMP::Ints
5604  get_value(AngularVelocity self, StringKey a0) -> IMP::String
5605  get_value(AngularVelocity self, ParticleIndexKey a0) -> Particle
5606  get_value(AngularVelocity self, ObjectKey a0) -> Object
5607  get_value(AngularVelocity self, SparseFloatKey a0) -> IMP::Float
5608  get_value(AngularVelocity self, SparseIntKey a0) -> IMP::Int
5609  get_value(AngularVelocity self, SparseStringKey a0) -> IMP::String
5610  get_value(AngularVelocity self, SparseParticleIndexKey a0) -> ParticleIndex
5611  """
5612  return _IMP_atom.AngularVelocity_get_value(self, *args)
5613 
5614  def set_value(self, *args):
5615  r"""
5616  set_value(AngularVelocity self, FloatKey a0, IMP::Float a1)
5617  set_value(AngularVelocity self, IntKey a0, IMP::Int a1)
5618  set_value(AngularVelocity self, FloatsKey a0, IMP::Floats a1)
5619  set_value(AngularVelocity self, IntsKey a0, IMP::Ints a1)
5620  set_value(AngularVelocity self, StringKey a0, IMP::String a1)
5621  set_value(AngularVelocity self, ParticleIndexKey a0, Particle a1)
5622  set_value(AngularVelocity self, ObjectKey a0, Object a1)
5623  set_value(AngularVelocity self, SparseFloatKey a0, IMP::Float a1)
5624  set_value(AngularVelocity self, SparseIntKey a0, IMP::Int a1)
5625  set_value(AngularVelocity self, SparseStringKey a0, IMP::String a1)
5626  set_value(AngularVelocity self, SparseParticleIndexKey a0, ParticleIndex a1)
5627  """
5628  return _IMP_atom.AngularVelocity_set_value(self, *args)
5629 
5630  def remove_attribute(self, *args):
5631  r"""
5632  remove_attribute(AngularVelocity self, FloatKey a0)
5633  remove_attribute(AngularVelocity self, IntKey a0)
5634  remove_attribute(AngularVelocity self, FloatsKey a0)
5635  remove_attribute(AngularVelocity self, IntsKey a0)
5636  remove_attribute(AngularVelocity self, StringKey a0)
5637  remove_attribute(AngularVelocity self, ParticleIndexKey a0)
5638  remove_attribute(AngularVelocity self, ObjectKey a0)
5639  remove_attribute(AngularVelocity self, SparseFloatKey a0)
5640  remove_attribute(AngularVelocity self, SparseIntKey a0)
5641  remove_attribute(AngularVelocity self, SparseStringKey a0)
5642  remove_attribute(AngularVelocity self, SparseParticleIndexKey a0)
5643  """
5644  return _IMP_atom.AngularVelocity_remove_attribute(self, *args)
5645 
5646  def has_attribute(self, *args):
5647  r"""
5648  has_attribute(AngularVelocity self, FloatKey a0) -> bool
5649  has_attribute(AngularVelocity self, IntKey a0) -> bool
5650  has_attribute(AngularVelocity self, FloatsKey a0) -> bool
5651  has_attribute(AngularVelocity self, IntsKey a0) -> bool
5652  has_attribute(AngularVelocity self, StringKey a0) -> bool
5653  has_attribute(AngularVelocity self, ParticleIndexKey a0) -> bool
5654  has_attribute(AngularVelocity self, ObjectKey a0) -> bool
5655  has_attribute(AngularVelocity self, SparseFloatKey a0) -> bool
5656  has_attribute(AngularVelocity self, SparseIntKey a0) -> bool
5657  has_attribute(AngularVelocity self, SparseStringKey a0) -> bool
5658  has_attribute(AngularVelocity self, SparseParticleIndexKey a0) -> bool
5659  """
5660  return _IMP_atom.AngularVelocity_has_attribute(self, *args)
5661 
5662  def get_derivative(self, a0):
5663  r"""get_derivative(AngularVelocity self, FloatKey a0) -> double"""
5664  return _IMP_atom.AngularVelocity_get_derivative(self, a0)
5665 
5666  def get_name(self):
5667  r"""get_name(AngularVelocity self) -> std::string"""
5668  return _IMP_atom.AngularVelocity_get_name(self)
5669 
5670  def clear_caches(self):
5671  r"""clear_caches(AngularVelocity self)"""
5672  return _IMP_atom.AngularVelocity_clear_caches(self)
5673 
5674  def set_name(self, a0):
5675  r"""set_name(AngularVelocity self, std::string a0)"""
5676  return _IMP_atom.AngularVelocity_set_name(self, a0)
5677 
5678  def set_check_level(self, a0):
5679  r"""set_check_level(AngularVelocity self, IMP::CheckLevel a0)"""
5680  return _IMP_atom.AngularVelocity_set_check_level(self, a0)
5681 
5682  def add_to_derivative(self, a0, a1, a2):
5683  r"""add_to_derivative(AngularVelocity self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
5684  return _IMP_atom.AngularVelocity_add_to_derivative(self, a0, a1, a2)
5685 
5686  def set_is_optimized(self, a0, a1):
5687  r"""set_is_optimized(AngularVelocity self, FloatKey a0, bool a1)"""
5688  return _IMP_atom.AngularVelocity_set_is_optimized(self, a0, a1)
5689 
5690  def get_is_optimized(self, a0):
5691  r"""get_is_optimized(AngularVelocity self, FloatKey a0) -> bool"""
5692  return _IMP_atom.AngularVelocity_get_is_optimized(self, a0)
5693 
5694  def get_check_level(self):
5695  r"""get_check_level(AngularVelocity self) -> IMP::CheckLevel"""
5696  return _IMP_atom.AngularVelocity_get_check_level(self)
5697 
5698  def __eq__(self, *args):
5699  r"""
5700  __eq__(AngularVelocity self, AngularVelocity o) -> bool
5701  __eq__(AngularVelocity self, Particle d) -> bool
5702  """
5703  return _IMP_atom.AngularVelocity___eq__(self, *args)
5704 
5705  def __ne__(self, *args):
5706  r"""
5707  __ne__(AngularVelocity self, AngularVelocity o) -> bool
5708  __ne__(AngularVelocity self, Particle d) -> bool
5709  """
5710  return _IMP_atom.AngularVelocity___ne__(self, *args)
5711 
5712  def __le__(self, *args):
5713  r"""
5714  __le__(AngularVelocity self, AngularVelocity o) -> bool
5715  __le__(AngularVelocity self, Particle d) -> bool
5716  """
5717  return _IMP_atom.AngularVelocity___le__(self, *args)
5718 
5719  def __lt__(self, *args):
5720  r"""
5721  __lt__(AngularVelocity self, AngularVelocity o) -> bool
5722  __lt__(AngularVelocity self, Particle d) -> bool
5723  """
5724  return _IMP_atom.AngularVelocity___lt__(self, *args)
5725 
5726  def __ge__(self, *args):
5727  r"""
5728  __ge__(AngularVelocity self, AngularVelocity o) -> bool
5729  __ge__(AngularVelocity self, Particle d) -> bool
5730  """
5731  return _IMP_atom.AngularVelocity___ge__(self, *args)
5732 
5733  def __gt__(self, *args):
5734  r"""
5735  __gt__(AngularVelocity self, AngularVelocity o) -> bool
5736  __gt__(AngularVelocity self, Particle d) -> bool
5737  """
5738  return _IMP_atom.AngularVelocity___gt__(self, *args)
5739 
5740  def __hash__(self):
5741  r"""__hash__(AngularVelocity self) -> std::size_t"""
5742  return _IMP_atom.AngularVelocity___hash__(self)
5743 
5744  def __str__(self):
5745  r"""__str__(AngularVelocity self) -> std::string"""
5746  return _IMP_atom.AngularVelocity___str__(self)
5747 
5748  def __repr__(self):
5749  r"""__repr__(AngularVelocity self) -> std::string"""
5750  return _IMP_atom.AngularVelocity___repr__(self)
5751 
5752  def _get_as_binary(self):
5753  r"""_get_as_binary(AngularVelocity self) -> PyObject *"""
5754  return _IMP_atom.AngularVelocity__get_as_binary(self)
5755 
5756  def _set_from_binary(self, p):
5757  r"""_set_from_binary(AngularVelocity self, PyObject * p)"""
5758  return _IMP_atom.AngularVelocity__set_from_binary(self, p)
5759 
5760  def __getstate__(self):
5761  p = self._get_as_binary()
5762  if len(self.__dict__) > 1:
5763  d = self.__dict__.copy()
5764  del d['this']
5765  p = (d, p)
5766  return p
5767 
5768  def __setstate__(self, p):
5769  if not hasattr(self, 'this'):
5770  self.__init__()
5771  if isinstance(p, tuple):
5772  d, p = p
5773  self.__dict__.update(d)
5774  return self._set_from_binary(p)
5775 
5776  __swig_destroy__ = _IMP_atom.delete_AngularVelocity
5777 
5778 # Register AngularVelocity in _IMP_atom:
5779 _IMP_atom.AngularVelocity_swigregister(AngularVelocity)
5780 class MolecularDynamics(Simulator):
5781  r"""Proxy of C++ IMP::atom::MolecularDynamics class."""
5782 
5783  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5784 
5785  def __init__(self, m):
5786  r"""__init__(MolecularDynamics self, Model m) -> MolecularDynamics"""
5787  _IMP_atom.MolecularDynamics_swiginit(self, _IMP_atom.new_MolecularDynamics(m))
5788 
5789  def get_kinetic_energy(self):
5790  r"""get_kinetic_energy(MolecularDynamics self) -> IMP::Float"""
5791  return _IMP_atom.MolecularDynamics_get_kinetic_energy(self)
5792 
5793  def get_kinetic_temperature(self, ekinetic):
5794  r"""get_kinetic_temperature(MolecularDynamics self, IMP::Float ekinetic) -> IMP::Float"""
5795  return _IMP_atom.MolecularDynamics_get_kinetic_temperature(self, ekinetic)
5796 
5797  def set_velocity_cap(self, velocity_cap):
5798  r"""set_velocity_cap(MolecularDynamics self, IMP::Float velocity_cap)"""
5799  return _IMP_atom.MolecularDynamics_set_velocity_cap(self, velocity_cap)
5800 
5801  def assign_velocities(self, temperature):
5802  r"""assign_velocities(MolecularDynamics self, IMP::Float temperature)"""
5803  return _IMP_atom.MolecularDynamics_assign_velocities(self, temperature)
5804 
5805  def setup(self, ps):
5806  r"""setup(MolecularDynamics self, IMP::ParticleIndexes const & ps)"""
5807  return _IMP_atom.MolecularDynamics_setup(self, ps)
5808 
5809  def do_step(self, sc, dt):
5810  r"""do_step(MolecularDynamics self, IMP::ParticleIndexes const & sc, double dt) -> double"""
5811  return _IMP_atom.MolecularDynamics_do_step(self, sc, dt)
5812 
5813  def get_is_simulation_particle(self, p):
5814  r"""get_is_simulation_particle(MolecularDynamics self, ParticleIndex p) -> bool"""
5815  return _IMP_atom.MolecularDynamics_get_is_simulation_particle(self, p)
5816 
5817  def get_version_info(self):
5818  r"""get_version_info(MolecularDynamics self) -> VersionInfo"""
5819  return _IMP_atom.MolecularDynamics_get_version_info(self)
5820  __swig_destroy__ = _IMP_atom.delete_MolecularDynamics
5821 
5822  def __str__(self):
5823  r"""__str__(MolecularDynamics self) -> std::string"""
5824  return _IMP_atom.MolecularDynamics___str__(self)
5825 
5826  def __repr__(self):
5827  r"""__repr__(MolecularDynamics self) -> std::string"""
5828  return _IMP_atom.MolecularDynamics___repr__(self)
5829 
5830  @staticmethod
5831  def get_from(o):
5832  return _object_cast_to_MolecularDynamics(o)
5833 
5834 
5835 # Register MolecularDynamics in _IMP_atom:
5836 _IMP_atom.MolecularDynamics_swigregister(MolecularDynamics)
5837 class VelocityScalingOptimizerState(IMP.OptimizerState):
5838  r"""Proxy of C++ IMP::atom::VelocityScalingOptimizerState class."""
5839 
5840  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5841 
5842  def __init__(self, m, pis, temperature):
5843  r"""__init__(VelocityScalingOptimizerState self, Model m, _ParticleIndexesAdaptor pis, double temperature) -> VelocityScalingOptimizerState"""
5844  _IMP_atom.VelocityScalingOptimizerState_swiginit(self, _IMP_atom.new_VelocityScalingOptimizerState(m, pis, temperature))
5845 
5846  def set_particles(self, pis):
5847  r"""set_particles(VelocityScalingOptimizerState self, IMP::Particles const & pis)"""
5848  return _IMP_atom.VelocityScalingOptimizerState_set_particles(self, pis)
5849 
5850  def set_temperature(self, temperature):
5851  r"""set_temperature(VelocityScalingOptimizerState self, IMP::Float temperature)"""
5852  return _IMP_atom.VelocityScalingOptimizerState_set_temperature(self, temperature)
5853 
5854  def rescale_velocities(self):
5855  r"""rescale_velocities(VelocityScalingOptimizerState self)"""
5856  return _IMP_atom.VelocityScalingOptimizerState_rescale_velocities(self)
5857 
5858  def get_version_info(self):
5859  r"""get_version_info(VelocityScalingOptimizerState self) -> VersionInfo"""
5860  return _IMP_atom.VelocityScalingOptimizerState_get_version_info(self)
5861  __swig_destroy__ = _IMP_atom.delete_VelocityScalingOptimizerState
5862 
5863  def __str__(self):
5864  r"""__str__(VelocityScalingOptimizerState self) -> std::string"""
5865  return _IMP_atom.VelocityScalingOptimizerState___str__(self)
5866 
5867  def __repr__(self):
5868  r"""__repr__(VelocityScalingOptimizerState self) -> std::string"""
5869  return _IMP_atom.VelocityScalingOptimizerState___repr__(self)
5870 
5871  @staticmethod
5872  def get_from(o):
5873  return _object_cast_to_VelocityScalingOptimizerState(o)
5874 
5875 
5876 # Register VelocityScalingOptimizerState in _IMP_atom:
5877 _IMP_atom.VelocityScalingOptimizerState_swigregister(VelocityScalingOptimizerState)
5878 class Fragment(Hierarchy):
5879  r"""Proxy of C++ IMP::atom::Fragment class."""
5880 
5881  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5882 
5883  def set_residue_indexes(self, o):
5884  r"""set_residue_indexes(Fragment self, IMP::Ints o)"""
5885  return _IMP_atom.Fragment_set_residue_indexes(self, o)
5886 
5887  def get_residue_indexes(self):
5888  r"""get_residue_indexes(Fragment self) -> IMP::Ints"""
5889  return _IMP_atom.Fragment_get_residue_indexes(self)
5890 
5891  def get_contains_residue(self, rindex):
5892  r"""get_contains_residue(Fragment self, int rindex) -> bool"""
5893  return _IMP_atom.Fragment_get_contains_residue(self, rindex)
5894 
5895  def get_contains_any_sorted_residue(self, rinds):
5896  r"""get_contains_any_sorted_residue(Fragment self, IMP::Ints const & rinds) -> bool"""
5897  return _IMP_atom.Fragment_get_contains_any_sorted_residue(self, rinds)
5898 
5899  def __init__(self, *args):
5900  r"""
5901  __init__(Fragment self) -> Fragment
5902  __init__(Fragment self, Model m, ParticleIndex id) -> Fragment
5903  __init__(Fragment self, _ParticleAdaptor d) -> Fragment
5904  """
5905  _IMP_atom.Fragment_swiginit(self, _IMP_atom.new_Fragment(*args))
5906 
5907  @staticmethod
5908  def get_is_setup(*args):
5909  r"""
5910  get_is_setup(Model m, ParticleIndex pi) -> bool
5911  get_is_setup(_ParticleAdaptor p) -> bool
5912  """
5913  return _IMP_atom.Fragment_get_is_setup(*args)
5914 
5915  def show(self, *args):
5916  r"""show(Fragment self, _ostream out=std::cout)"""
5917  return _IMP_atom.Fragment_show(self, *args)
5918 
5919  @staticmethod
5920  def setup_particle(*args):
5921  r"""
5922  setup_particle(Model m, ParticleIndex pi) -> Fragment
5923  setup_particle(_ParticleAdaptor pa) -> Fragment
5924  setup_particle(Model m, ParticleIndex pi, Fragment other) -> Fragment
5925  setup_particle(_ParticleAdaptor pa, Fragment other) -> Fragment
5926  setup_particle(Model m, ParticleIndex pi, IMP::Ints residue_indexes) -> Fragment
5927  setup_particle(_ParticleAdaptor pa, IMP::Ints residue_indexes) -> Fragment
5928  """
5929  return _IMP_atom.Fragment_setup_particle(*args)
5930 
5931  def add_attribute(self, *args):
5932  r"""
5933  add_attribute(Fragment self, FloatKey k, IMP::Float v, bool opt)
5934  add_attribute(Fragment self, FloatKey a0, IMP::Float a1)
5935  add_attribute(Fragment self, IntKey a0, IMP::Int a1)
5936  add_attribute(Fragment self, FloatsKey a0, IMP::Floats a1)
5937  add_attribute(Fragment self, IntsKey a0, IMP::Ints a1)
5938  add_attribute(Fragment self, StringKey a0, IMP::String a1)
5939  add_attribute(Fragment self, ParticleIndexKey a0, Particle a1)
5940  add_attribute(Fragment self, ObjectKey a0, Object a1)
5941  add_attribute(Fragment self, SparseFloatKey a0, IMP::Float a1)
5942  add_attribute(Fragment self, SparseIntKey a0, IMP::Int a1)
5943  add_attribute(Fragment self, SparseStringKey a0, IMP::String a1)
5944  add_attribute(Fragment self, SparseParticleIndexKey a0, ParticleIndex a1)
5945  """
5946  return _IMP_atom.Fragment_add_attribute(self, *args)
5947 
5948  def get_value(self, *args):
5949  r"""
5950  get_value(Fragment self, FloatKey a0) -> IMP::Float
5951  get_value(Fragment self, IntKey a0) -> IMP::Int
5952  get_value(Fragment self, FloatsKey a0) -> IMP::Floats
5953  get_value(Fragment self, IntsKey a0) -> IMP::Ints
5954  get_value(Fragment self, StringKey a0) -> IMP::String
5955  get_value(Fragment self, ParticleIndexKey a0) -> Particle
5956  get_value(Fragment self, ObjectKey a0) -> Object
5957  get_value(Fragment self, SparseFloatKey a0) -> IMP::Float
5958  get_value(Fragment self, SparseIntKey a0) -> IMP::Int
5959  get_value(Fragment self, SparseStringKey a0) -> IMP::String
5960  get_value(Fragment self, SparseParticleIndexKey a0) -> ParticleIndex
5961  """
5962  return _IMP_atom.Fragment_get_value(self, *args)
5963 
5964  def set_value(self, *args):
5965  r"""
5966  set_value(Fragment self, FloatKey a0, IMP::Float a1)
5967  set_value(Fragment self, IntKey a0, IMP::Int a1)
5968  set_value(Fragment self, FloatsKey a0, IMP::Floats a1)
5969  set_value(Fragment self, IntsKey a0, IMP::Ints a1)
5970  set_value(Fragment self, StringKey a0, IMP::String a1)
5971  set_value(Fragment self, ParticleIndexKey a0, Particle a1)
5972  set_value(Fragment self, ObjectKey a0, Object a1)
5973  set_value(Fragment self, SparseFloatKey a0, IMP::Float a1)
5974  set_value(Fragment self, SparseIntKey a0, IMP::Int a1)
5975  set_value(Fragment self, SparseStringKey a0, IMP::String a1)
5976  set_value(Fragment self, SparseParticleIndexKey a0, ParticleIndex a1)
5977  """
5978  return _IMP_atom.Fragment_set_value(self, *args)
5979 
5980  def remove_attribute(self, *args):
5981  r"""
5982  remove_attribute(Fragment self, FloatKey a0)
5983  remove_attribute(Fragment self, IntKey a0)
5984  remove_attribute(Fragment self, FloatsKey a0)
5985  remove_attribute(Fragment self, IntsKey a0)
5986  remove_attribute(Fragment self, StringKey a0)
5987  remove_attribute(Fragment self, ParticleIndexKey a0)
5988  remove_attribute(Fragment self, ObjectKey a0)
5989  remove_attribute(Fragment self, SparseFloatKey a0)
5990  remove_attribute(Fragment self, SparseIntKey a0)
5991  remove_attribute(Fragment self, SparseStringKey a0)
5992  remove_attribute(Fragment self, SparseParticleIndexKey a0)
5993  """
5994  return _IMP_atom.Fragment_remove_attribute(self, *args)
5995 
5996  def has_attribute(self, *args):
5997  r"""
5998  has_attribute(Fragment self, FloatKey a0) -> bool
5999  has_attribute(Fragment self, IntKey a0) -> bool
6000  has_attribute(Fragment self, FloatsKey a0) -> bool
6001  has_attribute(Fragment self, IntsKey a0) -> bool
6002  has_attribute(Fragment self, StringKey a0) -> bool
6003  has_attribute(Fragment self, ParticleIndexKey a0) -> bool
6004  has_attribute(Fragment self, ObjectKey a0) -> bool
6005  has_attribute(Fragment self, SparseFloatKey a0) -> bool
6006  has_attribute(Fragment self, SparseIntKey a0) -> bool
6007  has_attribute(Fragment self, SparseStringKey a0) -> bool
6008  has_attribute(Fragment self, SparseParticleIndexKey a0) -> bool
6009  """
6010  return _IMP_atom.Fragment_has_attribute(self, *args)
6011 
6012  def get_derivative(self, a0):
6013  r"""get_derivative(Fragment self, FloatKey a0) -> double"""
6014  return _IMP_atom.Fragment_get_derivative(self, a0)
6015 
6016  def get_name(self):
6017  r"""get_name(Fragment self) -> std::string"""
6018  return _IMP_atom.Fragment_get_name(self)
6019 
6020  def clear_caches(self):
6021  r"""clear_caches(Fragment self)"""
6022  return _IMP_atom.Fragment_clear_caches(self)
6023 
6024  def set_name(self, a0):
6025  r"""set_name(Fragment self, std::string a0)"""
6026  return _IMP_atom.Fragment_set_name(self, a0)
6027 
6028  def set_check_level(self, a0):
6029  r"""set_check_level(Fragment self, IMP::CheckLevel a0)"""
6030  return _IMP_atom.Fragment_set_check_level(self, a0)
6031 
6032  def add_to_derivative(self, a0, a1, a2):
6033  r"""add_to_derivative(Fragment self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
6034  return _IMP_atom.Fragment_add_to_derivative(self, a0, a1, a2)
6035 
6036  def set_is_optimized(self, a0, a1):
6037  r"""set_is_optimized(Fragment self, FloatKey a0, bool a1)"""
6038  return _IMP_atom.Fragment_set_is_optimized(self, a0, a1)
6039 
6040  def get_is_optimized(self, a0):
6041  r"""get_is_optimized(Fragment self, FloatKey a0) -> bool"""
6042  return _IMP_atom.Fragment_get_is_optimized(self, a0)
6043 
6044  def get_check_level(self):
6045  r"""get_check_level(Fragment self) -> IMP::CheckLevel"""
6046  return _IMP_atom.Fragment_get_check_level(self)
6047 
6048  def __eq__(self, *args):
6049  r"""
6050  __eq__(Fragment self, Fragment o) -> bool
6051  __eq__(Fragment self, Particle d) -> bool
6052  """
6053  return _IMP_atom.Fragment___eq__(self, *args)
6054 
6055  def __ne__(self, *args):
6056  r"""
6057  __ne__(Fragment self, Fragment o) -> bool
6058  __ne__(Fragment self, Particle d) -> bool
6059  """
6060  return _IMP_atom.Fragment___ne__(self, *args)
6061 
6062  def __le__(self, *args):
6063  r"""
6064  __le__(Fragment self, Fragment o) -> bool
6065  __le__(Fragment self, Particle d) -> bool
6066  """
6067  return _IMP_atom.Fragment___le__(self, *args)
6068 
6069  def __lt__(self, *args):
6070  r"""
6071  __lt__(Fragment self, Fragment o) -> bool
6072  __lt__(Fragment self, Particle d) -> bool
6073  """
6074  return _IMP_atom.Fragment___lt__(self, *args)
6075 
6076  def __ge__(self, *args):
6077  r"""
6078  __ge__(Fragment self, Fragment o) -> bool
6079  __ge__(Fragment self, Particle d) -> bool
6080  """
6081  return _IMP_atom.Fragment___ge__(self, *args)
6082 
6083  def __gt__(self, *args):
6084  r"""
6085  __gt__(Fragment self, Fragment o) -> bool
6086  __gt__(Fragment self, Particle d) -> bool
6087  """
6088  return _IMP_atom.Fragment___gt__(self, *args)
6089 
6090  def __hash__(self):
6091  r"""__hash__(Fragment self) -> std::size_t"""
6092  return _IMP_atom.Fragment___hash__(self)
6093 
6094  def __str__(self):
6095  r"""__str__(Fragment self) -> std::string"""
6096  return _IMP_atom.Fragment___str__(self)
6097 
6098  def __repr__(self):
6099  r"""__repr__(Fragment self) -> std::string"""
6100  return _IMP_atom.Fragment___repr__(self)
6101 
6102  def _get_as_binary(self):
6103  r"""_get_as_binary(Fragment self) -> PyObject *"""
6104  return _IMP_atom.Fragment__get_as_binary(self)
6105 
6106  def _set_from_binary(self, p):
6107  r"""_set_from_binary(Fragment self, PyObject * p)"""
6108  return _IMP_atom.Fragment__set_from_binary(self, p)
6109 
6110  def __getstate__(self):
6111  p = self._get_as_binary()
6112  if len(self.__dict__) > 1:
6113  d = self.__dict__.copy()
6114  del d['this']
6115  p = (d, p)
6116  return p
6117 
6118  def __setstate__(self, p):
6119  if not hasattr(self, 'this'):
6120  self.__init__()
6121  if isinstance(p, tuple):
6122  d, p = p
6123  self.__dict__.update(d)
6124  return self._set_from_binary(p)
6125 
6126  __swig_destroy__ = _IMP_atom.delete_Fragment
6127 
6128 # Register Fragment in _IMP_atom:
6129 _IMP_atom.Fragment_swigregister(Fragment)
6130 class StereochemistryPairFilter(IMP.PairPredicate):
6131  r"""Proxy of C++ IMP::atom::StereochemistryPairFilter class."""
6132 
6133  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6134 
6135  def __init__(self):
6136  r"""__init__(StereochemistryPairFilter self) -> StereochemistryPairFilter"""
6137  _IMP_atom.StereochemistryPairFilter_swiginit(self, _IMP_atom.new_StereochemistryPairFilter())
6138 
6139  def set_bonds(self, bonds):
6140  r"""set_bonds(StereochemistryPairFilter self, IMP::Particles const & bonds)"""
6141  return _IMP_atom.StereochemistryPairFilter_set_bonds(self, bonds)
6142 
6143  def set_angles(self, angles):
6144  r"""set_angles(StereochemistryPairFilter self, IMP::Particles const & angles)"""
6145  return _IMP_atom.StereochemistryPairFilter_set_angles(self, angles)
6146 
6147  def set_dihedrals(self, dihedrals):
6148  r"""set_dihedrals(StereochemistryPairFilter self, IMP::Particles const & dihedrals)"""
6149  return _IMP_atom.StereochemistryPairFilter_set_dihedrals(self, dihedrals)
6150 
6151  def do_get_inputs(self, m, pis):
6152  r"""do_get_inputs(StereochemistryPairFilter self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6153  return _IMP_atom.StereochemistryPairFilter_do_get_inputs(self, m, pis)
6154 
6155  def get_value(self, *args):
6156  r"""
6157  get_value(StereochemistryPairFilter self, IMP::ParticlePair const & a) -> int
6158  get_value(StereochemistryPairFilter self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
6159  """
6160  return _IMP_atom.StereochemistryPairFilter_get_value(self, *args)
6161 
6162  def get_value_index(self, *args):
6163  r"""
6164  get_value_index(StereochemistryPairFilter self, Model m, IMP::ParticleIndexPair const & p) -> int
6165  get_value_index(StereochemistryPairFilter self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
6166  """
6167  return _IMP_atom.StereochemistryPairFilter_get_value_index(self, *args)
6168 
6169  def get_version_info(self):
6170  r"""get_version_info(StereochemistryPairFilter self) -> VersionInfo"""
6171  return _IMP_atom.StereochemistryPairFilter_get_version_info(self)
6172  __swig_destroy__ = _IMP_atom.delete_StereochemistryPairFilter
6173 
6174  def __str__(self):
6175  r"""__str__(StereochemistryPairFilter self) -> std::string"""
6176  return _IMP_atom.StereochemistryPairFilter___str__(self)
6177 
6178  def __repr__(self):
6179  r"""__repr__(StereochemistryPairFilter self) -> std::string"""
6180  return _IMP_atom.StereochemistryPairFilter___repr__(self)
6181 
6182  @staticmethod
6183  def get_from(o):
6184  return _object_cast_to_StereochemistryPairFilter(o)
6185 
6186 
6187 # Register StereochemistryPairFilter in _IMP_atom:
6188 _IMP_atom.StereochemistryPairFilter_swigregister(StereochemistryPairFilter)
6189 class SoapPairFilter(IMP.PairPredicate):
6190  r"""Proxy of C++ IMP::atom::SoapPairFilter class."""
6191 
6192  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6193 
6194  def __init__(self, library):
6195  r"""__init__(SoapPairFilter self, std::string library) -> SoapPairFilter"""
6196  _IMP_atom.SoapPairFilter_swiginit(self, _IMP_atom.new_SoapPairFilter(library))
6197 
6198  def do_get_inputs(self, m, pis):
6199  r"""do_get_inputs(SoapPairFilter self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6200  return _IMP_atom.SoapPairFilter_do_get_inputs(self, m, pis)
6201 
6202  def get_value(self, *args):
6203  r"""
6204  get_value(SoapPairFilter self, IMP::ParticlePair const & a) -> int
6205  get_value(SoapPairFilter self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
6206  """
6207  return _IMP_atom.SoapPairFilter_get_value(self, *args)
6208 
6209  def get_value_index(self, *args):
6210  r"""
6211  get_value_index(SoapPairFilter self, Model m, IMP::ParticleIndexPair const & p) -> int
6212  get_value_index(SoapPairFilter self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
6213  """
6214  return _IMP_atom.SoapPairFilter_get_value_index(self, *args)
6215 
6216  def get_version_info(self):
6217  r"""get_version_info(SoapPairFilter self) -> VersionInfo"""
6218  return _IMP_atom.SoapPairFilter_get_version_info(self)
6219  __swig_destroy__ = _IMP_atom.delete_SoapPairFilter
6220 
6221  def __str__(self):
6222  r"""__str__(SoapPairFilter self) -> std::string"""
6223  return _IMP_atom.SoapPairFilter___str__(self)
6224 
6225  def __repr__(self):
6226  r"""__repr__(SoapPairFilter self) -> std::string"""
6227  return _IMP_atom.SoapPairFilter___repr__(self)
6228 
6229  @staticmethod
6230  def get_from(o):
6231  return _object_cast_to_SoapPairFilter(o)
6232 
6233 
6234 # Register SoapPairFilter in _IMP_atom:
6235 _IMP_atom.SoapPairFilter_swigregister(SoapPairFilter)
6236 class Mass(IMP.Decorator):
6237  r"""Proxy of C++ IMP::atom::Mass class."""
6238 
6239  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6240 
6241  def get_mass(self):
6242  r"""get_mass(Mass self) -> IMP::Float"""
6243  return _IMP_atom.Mass_get_mass(self)
6244 
6245  def set_mass(self, d):
6246  r"""set_mass(Mass self, IMP::Float d)"""
6247  return _IMP_atom.Mass_set_mass(self, d)
6248 
6249  def __init__(self, *args):
6250  r"""
6251  __init__(Mass self) -> Mass
6252  __init__(Mass self, Model m, ParticleIndex id) -> Mass
6253  __init__(Mass self, _ParticleAdaptor d) -> Mass
6254  """
6255  _IMP_atom.Mass_swiginit(self, _IMP_atom.new_Mass(*args))
6256 
6257  @staticmethod
6258  def get_is_setup(*args):
6259  r"""
6260  get_is_setup(Model m, ParticleIndex pi) -> bool
6261  get_is_setup(_ParticleAdaptor p) -> bool
6262  """
6263  return _IMP_atom.Mass_get_is_setup(*args)
6264 
6265  def show(self, *args):
6266  r"""show(Mass self, _ostream out=std::cout)"""
6267  return _IMP_atom.Mass_show(self, *args)
6268 
6269  @staticmethod
6270  def setup_particle(*args):
6271  r"""
6272  setup_particle(Model m, ParticleIndex pi, IMP::Float mass) -> Mass
6273  setup_particle(_ParticleAdaptor pa, IMP::Float mass) -> Mass
6274  setup_particle(Model m, ParticleIndex pi, Mass other) -> Mass
6275  setup_particle(_ParticleAdaptor pa, Mass other) -> Mass
6276  """
6277  return _IMP_atom.Mass_setup_particle(*args)
6278 
6279  @staticmethod
6280  def get_mass_key():
6281  r"""get_mass_key() -> FloatKey"""
6282  return _IMP_atom.Mass_get_mass_key()
6283 
6284  def add_attribute(self, *args):
6285  r"""
6286  add_attribute(Mass self, FloatKey k, IMP::Float v, bool opt)
6287  add_attribute(Mass self, FloatKey a0, IMP::Float a1)
6288  add_attribute(Mass self, IntKey a0, IMP::Int a1)
6289  add_attribute(Mass self, FloatsKey a0, IMP::Floats a1)
6290  add_attribute(Mass self, IntsKey a0, IMP::Ints a1)
6291  add_attribute(Mass self, StringKey a0, IMP::String a1)
6292  add_attribute(Mass self, ParticleIndexKey a0, Particle a1)
6293  add_attribute(Mass self, ObjectKey a0, Object a1)
6294  add_attribute(Mass self, SparseFloatKey a0, IMP::Float a1)
6295  add_attribute(Mass self, SparseIntKey a0, IMP::Int a1)
6296  add_attribute(Mass self, SparseStringKey a0, IMP::String a1)
6297  add_attribute(Mass self, SparseParticleIndexKey a0, ParticleIndex a1)
6298  """
6299  return _IMP_atom.Mass_add_attribute(self, *args)
6300 
6301  def get_value(self, *args):
6302  r"""
6303  get_value(Mass self, FloatKey a0) -> IMP::Float
6304  get_value(Mass self, IntKey a0) -> IMP::Int
6305  get_value(Mass self, FloatsKey a0) -> IMP::Floats
6306  get_value(Mass self, IntsKey a0) -> IMP::Ints
6307  get_value(Mass self, StringKey a0) -> IMP::String
6308  get_value(Mass self, ParticleIndexKey a0) -> Particle
6309  get_value(Mass self, ObjectKey a0) -> Object
6310  get_value(Mass self, SparseFloatKey a0) -> IMP::Float
6311  get_value(Mass self, SparseIntKey a0) -> IMP::Int
6312  get_value(Mass self, SparseStringKey a0) -> IMP::String
6313  get_value(Mass self, SparseParticleIndexKey a0) -> ParticleIndex
6314  """
6315  return _IMP_atom.Mass_get_value(self, *args)
6316 
6317  def set_value(self, *args):
6318  r"""
6319  set_value(Mass self, FloatKey a0, IMP::Float a1)
6320  set_value(Mass self, IntKey a0, IMP::Int a1)
6321  set_value(Mass self, FloatsKey a0, IMP::Floats a1)
6322  set_value(Mass self, IntsKey a0, IMP::Ints a1)
6323  set_value(Mass self, StringKey a0, IMP::String a1)
6324  set_value(Mass self, ParticleIndexKey a0, Particle a1)
6325  set_value(Mass self, ObjectKey a0, Object a1)
6326  set_value(Mass self, SparseFloatKey a0, IMP::Float a1)
6327  set_value(Mass self, SparseIntKey a0, IMP::Int a1)
6328  set_value(Mass self, SparseStringKey a0, IMP::String a1)
6329  set_value(Mass self, SparseParticleIndexKey a0, ParticleIndex a1)
6330  """
6331  return _IMP_atom.Mass_set_value(self, *args)
6332 
6333  def remove_attribute(self, *args):
6334  r"""
6335  remove_attribute(Mass self, FloatKey a0)
6336  remove_attribute(Mass self, IntKey a0)
6337  remove_attribute(Mass self, FloatsKey a0)
6338  remove_attribute(Mass self, IntsKey a0)
6339  remove_attribute(Mass self, StringKey a0)
6340  remove_attribute(Mass self, ParticleIndexKey a0)
6341  remove_attribute(Mass self, ObjectKey a0)
6342  remove_attribute(Mass self, SparseFloatKey a0)
6343  remove_attribute(Mass self, SparseIntKey a0)
6344  remove_attribute(Mass self, SparseStringKey a0)
6345  remove_attribute(Mass self, SparseParticleIndexKey a0)
6346  """
6347  return _IMP_atom.Mass_remove_attribute(self, *args)
6348 
6349  def has_attribute(self, *args):
6350  r"""
6351  has_attribute(Mass self, FloatKey a0) -> bool
6352  has_attribute(Mass self, IntKey a0) -> bool
6353  has_attribute(Mass self, FloatsKey a0) -> bool
6354  has_attribute(Mass self, IntsKey a0) -> bool
6355  has_attribute(Mass self, StringKey a0) -> bool
6356  has_attribute(Mass self, ParticleIndexKey a0) -> bool
6357  has_attribute(Mass self, ObjectKey a0) -> bool
6358  has_attribute(Mass self, SparseFloatKey a0) -> bool
6359  has_attribute(Mass self, SparseIntKey a0) -> bool
6360  has_attribute(Mass self, SparseStringKey a0) -> bool
6361  has_attribute(Mass self, SparseParticleIndexKey a0) -> bool
6362  """
6363  return _IMP_atom.Mass_has_attribute(self, *args)
6364 
6365  def get_derivative(self, a0):
6366  r"""get_derivative(Mass self, FloatKey a0) -> double"""
6367  return _IMP_atom.Mass_get_derivative(self, a0)
6368 
6369  def get_name(self):
6370  r"""get_name(Mass self) -> std::string"""
6371  return _IMP_atom.Mass_get_name(self)
6372 
6373  def clear_caches(self):
6374  r"""clear_caches(Mass self)"""
6375  return _IMP_atom.Mass_clear_caches(self)
6376 
6377  def set_name(self, a0):
6378  r"""set_name(Mass self, std::string a0)"""
6379  return _IMP_atom.Mass_set_name(self, a0)
6380 
6381  def set_check_level(self, a0):
6382  r"""set_check_level(Mass self, IMP::CheckLevel a0)"""
6383  return _IMP_atom.Mass_set_check_level(self, a0)
6384 
6385  def add_to_derivative(self, a0, a1, a2):
6386  r"""add_to_derivative(Mass self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
6387  return _IMP_atom.Mass_add_to_derivative(self, a0, a1, a2)
6388 
6389  def set_is_optimized(self, a0, a1):
6390  r"""set_is_optimized(Mass self, FloatKey a0, bool a1)"""
6391  return _IMP_atom.Mass_set_is_optimized(self, a0, a1)
6392 
6393  def get_is_optimized(self, a0):
6394  r"""get_is_optimized(Mass self, FloatKey a0) -> bool"""
6395  return _IMP_atom.Mass_get_is_optimized(self, a0)
6396 
6397  def get_check_level(self):
6398  r"""get_check_level(Mass self) -> IMP::CheckLevel"""
6399  return _IMP_atom.Mass_get_check_level(self)
6400 
6401  def __eq__(self, *args):
6402  r"""
6403  __eq__(Mass self, Mass o) -> bool
6404  __eq__(Mass self, Particle d) -> bool
6405  """
6406  return _IMP_atom.Mass___eq__(self, *args)
6407 
6408  def __ne__(self, *args):
6409  r"""
6410  __ne__(Mass self, Mass o) -> bool
6411  __ne__(Mass self, Particle d) -> bool
6412  """
6413  return _IMP_atom.Mass___ne__(self, *args)
6414 
6415  def __le__(self, *args):
6416  r"""
6417  __le__(Mass self, Mass o) -> bool
6418  __le__(Mass self, Particle d) -> bool
6419  """
6420  return _IMP_atom.Mass___le__(self, *args)
6421 
6422  def __lt__(self, *args):
6423  r"""
6424  __lt__(Mass self, Mass o) -> bool
6425  __lt__(Mass self, Particle d) -> bool
6426  """
6427  return _IMP_atom.Mass___lt__(self, *args)
6428 
6429  def __ge__(self, *args):
6430  r"""
6431  __ge__(Mass self, Mass o) -> bool
6432  __ge__(Mass self, Particle d) -> bool
6433  """
6434  return _IMP_atom.Mass___ge__(self, *args)
6435 
6436  def __gt__(self, *args):
6437  r"""
6438  __gt__(Mass self, Mass o) -> bool
6439  __gt__(Mass self, Particle d) -> bool
6440  """
6441  return _IMP_atom.Mass___gt__(self, *args)
6442 
6443  def __hash__(self):
6444  r"""__hash__(Mass self) -> std::size_t"""
6445  return _IMP_atom.Mass___hash__(self)
6446 
6447  def __str__(self):
6448  r"""__str__(Mass self) -> std::string"""
6449  return _IMP_atom.Mass___str__(self)
6450 
6451  def __repr__(self):
6452  r"""__repr__(Mass self) -> std::string"""
6453  return _IMP_atom.Mass___repr__(self)
6454 
6455  def _get_as_binary(self):
6456  r"""_get_as_binary(Mass self) -> PyObject *"""
6457  return _IMP_atom.Mass__get_as_binary(self)
6458 
6459  def _set_from_binary(self, p):
6460  r"""_set_from_binary(Mass self, PyObject * p)"""
6461  return _IMP_atom.Mass__set_from_binary(self, p)
6462 
6463  def __getstate__(self):
6464  p = self._get_as_binary()
6465  if len(self.__dict__) > 1:
6466  d = self.__dict__.copy()
6467  del d['this']
6468  p = (d, p)
6469  return p
6470 
6471  def __setstate__(self, p):
6472  if not hasattr(self, 'this'):
6473  self.__init__()
6474  if isinstance(p, tuple):
6475  d, p = p
6476  self.__dict__.update(d)
6477  return self._set_from_binary(p)
6478 
6479  __swig_destroy__ = _IMP_atom.delete_Mass
6480 
6481 # Register Mass in _IMP_atom:
6482 _IMP_atom.Mass_swigregister(Mass)
6483 class BondedPairFilter(IMP.PairPredicate):
6484  r"""Proxy of C++ IMP::atom::BondedPairFilter class."""
6485 
6486  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6487 
6488  def __init__(self):
6489  r"""__init__(BondedPairFilter self) -> BondedPairFilter"""
6490  _IMP_atom.BondedPairFilter_swiginit(self, _IMP_atom.new_BondedPairFilter())
6491 
6492  def do_get_inputs(self, m, pis):
6493  r"""do_get_inputs(BondedPairFilter self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6494  return _IMP_atom.BondedPairFilter_do_get_inputs(self, m, pis)
6495 
6496  def get_value(self, *args):
6497  r"""
6498  get_value(BondedPairFilter self, IMP::ParticlePair const & a) -> int
6499  get_value(BondedPairFilter self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
6500  """
6501  return _IMP_atom.BondedPairFilter_get_value(self, *args)
6502 
6503  def get_value_index(self, *args):
6504  r"""
6505  get_value_index(BondedPairFilter self, Model m, IMP::ParticleIndexPair const & p) -> int
6506  get_value_index(BondedPairFilter self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
6507  """
6508  return _IMP_atom.BondedPairFilter_get_value_index(self, *args)
6509 
6510  def get_version_info(self):
6511  r"""get_version_info(BondedPairFilter self) -> VersionInfo"""
6512  return _IMP_atom.BondedPairFilter_get_version_info(self)
6513  __swig_destroy__ = _IMP_atom.delete_BondedPairFilter
6514 
6515  def __str__(self):
6516  r"""__str__(BondedPairFilter self) -> std::string"""
6517  return _IMP_atom.BondedPairFilter___str__(self)
6518 
6519  def __repr__(self):
6520  r"""__repr__(BondedPairFilter self) -> std::string"""
6521  return _IMP_atom.BondedPairFilter___repr__(self)
6522 
6523  @staticmethod
6524  def get_from(o):
6525  return _object_cast_to_BondedPairFilter(o)
6526 
6527 
6528 # Register BondedPairFilter in _IMP_atom:
6529 _IMP_atom.BondedPairFilter_swigregister(BondedPairFilter)
6530 class Mol2Selector(IMP.Object):
6531  r"""Proxy of C++ IMP::atom::Mol2Selector class."""
6532 
6533  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6534 
6535  def __init__(self, *args, **kwargs):
6536  raise AttributeError("No constructor defined - class is abstract")
6537 
6538  def get_is_selected(self, atom_line):
6539  r"""get_is_selected(Mol2Selector self, std::string const & atom_line) -> bool"""
6540  return _IMP_atom.Mol2Selector_get_is_selected(self, atom_line)
6541  __swig_destroy__ = _IMP_atom.delete_Mol2Selector
6542 
6543  def __str__(self):
6544  r"""__str__(Mol2Selector self) -> std::string"""
6545  return _IMP_atom.Mol2Selector___str__(self)
6546 
6547  def __repr__(self):
6548  r"""__repr__(Mol2Selector self) -> std::string"""
6549  return _IMP_atom.Mol2Selector___repr__(self)
6550 
6551  @staticmethod
6552  def get_from(o):
6553  return _object_cast_to_Mol2Selector(o)
6554 
6555 
6556 # Register Mol2Selector in _IMP_atom:
6557 _IMP_atom.Mol2Selector_swigregister(Mol2Selector)
6558 class AllMol2Selector(Mol2Selector):
6559  r"""Proxy of C++ IMP::atom::AllMol2Selector class."""
6560 
6561  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6562 
6563  def __str__(self):
6564  r"""__str__(AllMol2Selector self) -> std::string"""
6565  return _IMP_atom.AllMol2Selector___str__(self)
6566 
6567  def __repr__(self):
6568  r"""__repr__(AllMol2Selector self) -> std::string"""
6569  return _IMP_atom.AllMol2Selector___repr__(self)
6570 
6571  @staticmethod
6572  def get_from(o):
6573  return _object_cast_to_AllMol2Selector(o)
6574 
6575 
6576  def __init__(self):
6577  r"""__init__(AllMol2Selector self) -> AllMol2Selector"""
6578  _IMP_atom.AllMol2Selector_swiginit(self, _IMP_atom.new_AllMol2Selector())
6579  __swig_destroy__ = _IMP_atom.delete_AllMol2Selector
6580 
6581 # Register AllMol2Selector in _IMP_atom:
6582 _IMP_atom.AllMol2Selector_swigregister(AllMol2Selector)
6583 class NonHydrogenMol2Selector(Mol2Selector):
6584  r"""Proxy of C++ IMP::atom::NonHydrogenMol2Selector class."""
6585 
6586  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6587 
6588  def __str__(self):
6589  r"""__str__(NonHydrogenMol2Selector self) -> std::string"""
6590  return _IMP_atom.NonHydrogenMol2Selector___str__(self)
6591 
6592  def __repr__(self):
6593  r"""__repr__(NonHydrogenMol2Selector self) -> std::string"""
6594  return _IMP_atom.NonHydrogenMol2Selector___repr__(self)
6595 
6596  @staticmethod
6597  def get_from(o):
6598  return _object_cast_to_NonHydrogenMol2Selector(o)
6599 
6600 
6601  def __init__(self):
6602  r"""__init__(NonHydrogenMol2Selector self) -> NonHydrogenMol2Selector"""
6603  _IMP_atom.NonHydrogenMol2Selector_swiginit(self, _IMP_atom.new_NonHydrogenMol2Selector())
6604  __swig_destroy__ = _IMP_atom.delete_NonHydrogenMol2Selector
6605 
6606 # Register NonHydrogenMol2Selector in _IMP_atom:
6607 _IMP_atom.NonHydrogenMol2Selector_swigregister(NonHydrogenMol2Selector)
6608 
6609 def read_mol2(mol2_file, model, mol2sel=None):
6610  r"""read_mol2(TextInput mol2_file, Model model, Mol2Selector mol2sel=None) -> Hierarchy"""
6611  return _IMP_atom.read_mol2(mol2_file, model, mol2sel)
6612 
6613 def write_mol2(rhd, file_name):
6614  r"""write_mol2(Hierarchy rhd, TextOutput file_name)"""
6615  return _IMP_atom.write_mol2(rhd, file_name)
6616 class SecondaryStructureResidue(IMP.Decorator):
6617  r"""Proxy of C++ IMP::atom::SecondaryStructureResidue class."""
6618 
6619  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6620 
6621  def __init__(self, *args):
6622  r"""
6623  __init__(SecondaryStructureResidue self) -> SecondaryStructureResidue
6624  __init__(SecondaryStructureResidue self, Model m, ParticleIndex id) -> SecondaryStructureResidue
6625  __init__(SecondaryStructureResidue self, _ParticleAdaptor d) -> SecondaryStructureResidue
6626  """
6627  _IMP_atom.SecondaryStructureResidue_swiginit(self, _IMP_atom.new_SecondaryStructureResidue(*args))
6628 
6629  def show(self, *args):
6630  r"""show(SecondaryStructureResidue self, _ostream out=std::cout)"""
6631  return _IMP_atom.SecondaryStructureResidue_show(self, *args)
6632 
6633  @staticmethod
6634  def setup_particle(*args):
6635  r"""
6636  setup_particle(Model m, ParticleIndex pi, IMP::Float prob_helix, IMP::Float prob_strand, IMP::Float prob_coil) -> SecondaryStructureResidue
6637  setup_particle(_ParticleAdaptor pa, IMP::Float prob_helix, IMP::Float prob_strand, IMP::Float prob_coil) -> SecondaryStructureResidue
6638  setup_particle(Particle res_p) -> SecondaryStructureResidue
6639  """
6640  return _IMP_atom.SecondaryStructureResidue_setup_particle(*args)
6641 
6642  @staticmethod
6643  def get_is_setup(*args):
6644  r"""
6645  get_is_setup(_ParticleAdaptor p) -> bool
6646  get_is_setup(Model m, ParticleIndex pi) -> bool
6647  """
6648  return _IMP_atom.SecondaryStructureResidue_get_is_setup(*args)
6649 
6650  def get_particle(self):
6651  r"""get_particle(SecondaryStructureResidue self) -> Particle"""
6652  return _IMP_atom.SecondaryStructureResidue_get_particle(self)
6653 
6654  def get_all_probabilities(self):
6655  r"""get_all_probabilities(SecondaryStructureResidue self) -> IMP::Floats"""
6656  return _IMP_atom.SecondaryStructureResidue_get_all_probabilities(self)
6657 
6658  def get_prob_helix(self):
6659  r"""get_prob_helix(SecondaryStructureResidue self) -> IMP::Float"""
6660  return _IMP_atom.SecondaryStructureResidue_get_prob_helix(self)
6661 
6662  def set_prob_helix(self, t):
6663  r"""set_prob_helix(SecondaryStructureResidue self, IMP::Float t)"""
6664  return _IMP_atom.SecondaryStructureResidue_set_prob_helix(self, t)
6665 
6666  def get_prob_strand(self):
6667  r"""get_prob_strand(SecondaryStructureResidue self) -> IMP::Float"""
6668  return _IMP_atom.SecondaryStructureResidue_get_prob_strand(self)
6669 
6670  def set_prob_strand(self, t):
6671  r"""set_prob_strand(SecondaryStructureResidue self, IMP::Float t)"""
6672  return _IMP_atom.SecondaryStructureResidue_set_prob_strand(self, t)
6673 
6674  def get_prob_coil(self):
6675  r"""get_prob_coil(SecondaryStructureResidue self) -> IMP::Float"""
6676  return _IMP_atom.SecondaryStructureResidue_get_prob_coil(self)
6677 
6678  def set_prob_coil(self, t):
6679  r"""set_prob_coil(SecondaryStructureResidue self, IMP::Float t)"""
6680  return _IMP_atom.SecondaryStructureResidue_set_prob_coil(self, t)
6681 
6682  @staticmethod
6683  def get_prob_helix_key():
6684  r"""get_prob_helix_key() -> FloatKey"""
6685  return _IMP_atom.SecondaryStructureResidue_get_prob_helix_key()
6686 
6687  @staticmethod
6688  def get_prob_strand_key():
6689  r"""get_prob_strand_key() -> FloatKey"""
6690  return _IMP_atom.SecondaryStructureResidue_get_prob_strand_key()
6691 
6692  @staticmethod
6693  def get_prob_coil_key():
6694  r"""get_prob_coil_key() -> FloatKey"""
6695  return _IMP_atom.SecondaryStructureResidue_get_prob_coil_key()
6696 
6697  def add_attribute(self, *args):
6698  r"""
6699  add_attribute(SecondaryStructureResidue self, FloatKey k, IMP::Float v, bool opt)
6700  add_attribute(SecondaryStructureResidue self, FloatKey a0, IMP::Float a1)
6701  add_attribute(SecondaryStructureResidue self, IntKey a0, IMP::Int a1)
6702  add_attribute(SecondaryStructureResidue self, FloatsKey a0, IMP::Floats a1)
6703  add_attribute(SecondaryStructureResidue self, IntsKey a0, IMP::Ints a1)
6704  add_attribute(SecondaryStructureResidue self, StringKey a0, IMP::String a1)
6705  add_attribute(SecondaryStructureResidue self, ParticleIndexKey a0, Particle a1)
6706  add_attribute(SecondaryStructureResidue self, ObjectKey a0, Object a1)
6707  add_attribute(SecondaryStructureResidue self, SparseFloatKey a0, IMP::Float a1)
6708  add_attribute(SecondaryStructureResidue self, SparseIntKey a0, IMP::Int a1)
6709  add_attribute(SecondaryStructureResidue self, SparseStringKey a0, IMP::String a1)
6710  add_attribute(SecondaryStructureResidue self, SparseParticleIndexKey a0, ParticleIndex a1)
6711  """
6712  return _IMP_atom.SecondaryStructureResidue_add_attribute(self, *args)
6713 
6714  def get_value(self, *args):
6715  r"""
6716  get_value(SecondaryStructureResidue self, FloatKey a0) -> IMP::Float
6717  get_value(SecondaryStructureResidue self, IntKey a0) -> IMP::Int
6718  get_value(SecondaryStructureResidue self, FloatsKey a0) -> IMP::Floats
6719  get_value(SecondaryStructureResidue self, IntsKey a0) -> IMP::Ints
6720  get_value(SecondaryStructureResidue self, StringKey a0) -> IMP::String
6721  get_value(SecondaryStructureResidue self, ParticleIndexKey a0) -> Particle
6722  get_value(SecondaryStructureResidue self, ObjectKey a0) -> Object
6723  get_value(SecondaryStructureResidue self, SparseFloatKey a0) -> IMP::Float
6724  get_value(SecondaryStructureResidue self, SparseIntKey a0) -> IMP::Int
6725  get_value(SecondaryStructureResidue self, SparseStringKey a0) -> IMP::String
6726  get_value(SecondaryStructureResidue self, SparseParticleIndexKey a0) -> ParticleIndex
6727  """
6728  return _IMP_atom.SecondaryStructureResidue_get_value(self, *args)
6729 
6730  def set_value(self, *args):
6731  r"""
6732  set_value(SecondaryStructureResidue self, FloatKey a0, IMP::Float a1)
6733  set_value(SecondaryStructureResidue self, IntKey a0, IMP::Int a1)
6734  set_value(SecondaryStructureResidue self, FloatsKey a0, IMP::Floats a1)
6735  set_value(SecondaryStructureResidue self, IntsKey a0, IMP::Ints a1)
6736  set_value(SecondaryStructureResidue self, StringKey a0, IMP::String a1)
6737  set_value(SecondaryStructureResidue self, ParticleIndexKey a0, Particle a1)
6738  set_value(SecondaryStructureResidue self, ObjectKey a0, Object a1)
6739  set_value(SecondaryStructureResidue self, SparseFloatKey a0, IMP::Float a1)
6740  set_value(SecondaryStructureResidue self, SparseIntKey a0, IMP::Int a1)
6741  set_value(SecondaryStructureResidue self, SparseStringKey a0, IMP::String a1)
6742  set_value(SecondaryStructureResidue self, SparseParticleIndexKey a0, ParticleIndex a1)
6743  """
6744  return _IMP_atom.SecondaryStructureResidue_set_value(self, *args)
6745 
6746  def remove_attribute(self, *args):
6747  r"""
6748  remove_attribute(SecondaryStructureResidue self, FloatKey a0)
6749  remove_attribute(SecondaryStructureResidue self, IntKey a0)
6750  remove_attribute(SecondaryStructureResidue self, FloatsKey a0)
6751  remove_attribute(SecondaryStructureResidue self, IntsKey a0)
6752  remove_attribute(SecondaryStructureResidue self, StringKey a0)
6753  remove_attribute(SecondaryStructureResidue self, ParticleIndexKey a0)
6754  remove_attribute(SecondaryStructureResidue self, ObjectKey a0)
6755  remove_attribute(SecondaryStructureResidue self, SparseFloatKey a0)
6756  remove_attribute(SecondaryStructureResidue self, SparseIntKey a0)
6757  remove_attribute(SecondaryStructureResidue self, SparseStringKey a0)
6758  remove_attribute(SecondaryStructureResidue self, SparseParticleIndexKey a0)
6759  """
6760  return _IMP_atom.SecondaryStructureResidue_remove_attribute(self, *args)
6761 
6762  def has_attribute(self, *args):
6763  r"""
6764  has_attribute(SecondaryStructureResidue self, FloatKey a0) -> bool
6765  has_attribute(SecondaryStructureResidue self, IntKey a0) -> bool
6766  has_attribute(SecondaryStructureResidue self, FloatsKey a0) -> bool
6767  has_attribute(SecondaryStructureResidue self, IntsKey a0) -> bool
6768  has_attribute(SecondaryStructureResidue self, StringKey a0) -> bool
6769  has_attribute(SecondaryStructureResidue self, ParticleIndexKey a0) -> bool
6770  has_attribute(SecondaryStructureResidue self, ObjectKey a0) -> bool
6771  has_attribute(SecondaryStructureResidue self, SparseFloatKey a0) -> bool
6772  has_attribute(SecondaryStructureResidue self, SparseIntKey a0) -> bool
6773  has_attribute(SecondaryStructureResidue self, SparseStringKey a0) -> bool
6774  has_attribute(SecondaryStructureResidue self, SparseParticleIndexKey a0) -> bool
6775  """
6776  return _IMP_atom.SecondaryStructureResidue_has_attribute(self, *args)
6777 
6778  def get_derivative(self, a0):
6779  r"""get_derivative(SecondaryStructureResidue self, FloatKey a0) -> double"""
6780  return _IMP_atom.SecondaryStructureResidue_get_derivative(self, a0)
6781 
6782  def get_name(self):
6783  r"""get_name(SecondaryStructureResidue self) -> std::string"""
6784  return _IMP_atom.SecondaryStructureResidue_get_name(self)
6785 
6786  def clear_caches(self):
6787  r"""clear_caches(SecondaryStructureResidue self)"""
6788  return _IMP_atom.SecondaryStructureResidue_clear_caches(self)
6789 
6790  def set_name(self, a0):
6791  r"""set_name(SecondaryStructureResidue self, std::string a0)"""
6792  return _IMP_atom.SecondaryStructureResidue_set_name(self, a0)
6793 
6794  def set_check_level(self, a0):
6795  r"""set_check_level(SecondaryStructureResidue self, IMP::CheckLevel a0)"""
6796  return _IMP_atom.SecondaryStructureResidue_set_check_level(self, a0)
6797 
6798  def add_to_derivative(self, a0, a1, a2):
6799  r"""add_to_derivative(SecondaryStructureResidue self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
6800  return _IMP_atom.SecondaryStructureResidue_add_to_derivative(self, a0, a1, a2)
6801 
6802  def set_is_optimized(self, a0, a1):
6803  r"""set_is_optimized(SecondaryStructureResidue self, FloatKey a0, bool a1)"""
6804  return _IMP_atom.SecondaryStructureResidue_set_is_optimized(self, a0, a1)
6805 
6806  def get_is_optimized(self, a0):
6807  r"""get_is_optimized(SecondaryStructureResidue self, FloatKey a0) -> bool"""
6808  return _IMP_atom.SecondaryStructureResidue_get_is_optimized(self, a0)
6809 
6810  def get_check_level(self):
6811  r"""get_check_level(SecondaryStructureResidue self) -> IMP::CheckLevel"""
6812  return _IMP_atom.SecondaryStructureResidue_get_check_level(self)
6813 
6814  def __eq__(self, *args):
6815  r"""
6816  __eq__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool
6817  __eq__(SecondaryStructureResidue self, Particle d) -> bool
6818  """
6819  return _IMP_atom.SecondaryStructureResidue___eq__(self, *args)
6820 
6821  def __ne__(self, *args):
6822  r"""
6823  __ne__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool
6824  __ne__(SecondaryStructureResidue self, Particle d) -> bool
6825  """
6826  return _IMP_atom.SecondaryStructureResidue___ne__(self, *args)
6827 
6828  def __le__(self, *args):
6829  r"""
6830  __le__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool
6831  __le__(SecondaryStructureResidue self, Particle d) -> bool
6832  """
6833  return _IMP_atom.SecondaryStructureResidue___le__(self, *args)
6834 
6835  def __lt__(self, *args):
6836  r"""
6837  __lt__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool
6838  __lt__(SecondaryStructureResidue self, Particle d) -> bool
6839  """
6840  return _IMP_atom.SecondaryStructureResidue___lt__(self, *args)
6841 
6842  def __ge__(self, *args):
6843  r"""
6844  __ge__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool
6845  __ge__(SecondaryStructureResidue self, Particle d) -> bool
6846  """
6847  return _IMP_atom.SecondaryStructureResidue___ge__(self, *args)
6848 
6849  def __gt__(self, *args):
6850  r"""
6851  __gt__(SecondaryStructureResidue self, SecondaryStructureResidue o) -> bool
6852  __gt__(SecondaryStructureResidue self, Particle d) -> bool
6853  """
6854  return _IMP_atom.SecondaryStructureResidue___gt__(self, *args)
6855 
6856  def __hash__(self):
6857  r"""__hash__(SecondaryStructureResidue self) -> std::size_t"""
6858  return _IMP_atom.SecondaryStructureResidue___hash__(self)
6859 
6860  def __str__(self):
6861  r"""__str__(SecondaryStructureResidue self) -> std::string"""
6862  return _IMP_atom.SecondaryStructureResidue___str__(self)
6863 
6864  def __repr__(self):
6865  r"""__repr__(SecondaryStructureResidue self) -> std::string"""
6866  return _IMP_atom.SecondaryStructureResidue___repr__(self)
6867 
6868  def _get_as_binary(self):
6869  r"""_get_as_binary(SecondaryStructureResidue self) -> PyObject *"""
6870  return _IMP_atom.SecondaryStructureResidue__get_as_binary(self)
6871 
6872  def _set_from_binary(self, p):
6873  r"""_set_from_binary(SecondaryStructureResidue self, PyObject * p)"""
6874  return _IMP_atom.SecondaryStructureResidue__set_from_binary(self, p)
6875 
6876  def __getstate__(self):
6877  p = self._get_as_binary()
6878  if len(self.__dict__) > 1:
6879  d = self.__dict__.copy()
6880  del d['this']
6881  p = (d, p)
6882  return p
6883 
6884  def __setstate__(self, p):
6885  if not hasattr(self, 'this'):
6886  self.__init__()
6887  if isinstance(p, tuple):
6888  d, p = p
6889  self.__dict__.update(d)
6890  return self._set_from_binary(p)
6891 
6892  __swig_destroy__ = _IMP_atom.delete_SecondaryStructureResidue
6893 
6894 # Register SecondaryStructureResidue in _IMP_atom:
6895 _IMP_atom.SecondaryStructureResidue_swigregister(SecondaryStructureResidue)
6896 
6897 def setup_coarse_secondary_structure_residue(ssr_ps, mdl, winner_takes_all_per_res=False):
6898  r"""setup_coarse_secondary_structure_residue(IMP::Particles const & ssr_ps, Model mdl, bool winner_takes_all_per_res=False) -> SecondaryStructureResidue"""
6899  return _IMP_atom.setup_coarse_secondary_structure_residue(ssr_ps, mdl, winner_takes_all_per_res)
6900 
6901 def setup_coarse_secondary_structure_residues(ssr_ps, mdl, coarse_factor, start_res_num, winner_takes_all_per_res=False):
6902  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"""
6903  return _IMP_atom.setup_coarse_secondary_structure_residues(ssr_ps, mdl, coarse_factor, start_res_num, winner_takes_all_per_res)
6904 
6905 def get_secondary_structure_match_score(ssr1, ssr2):
6906  r"""get_secondary_structure_match_score(SecondaryStructureResidue ssr1, SecondaryStructureResidue ssr2) -> IMP::Float"""
6907  return _IMP_atom.get_secondary_structure_match_score(ssr1, ssr2)
6908 
6909 def read_psipred(*args):
6910  r"""
6911  read_psipred(TextInput inf, Model mdl) -> IMP::atom::SecondaryStructureResidues
6912  read_psipred(TextInput inf, IMP::Particles ps) -> IMP::atom::SecondaryStructureResidues
6913  """
6914  return _IMP_atom.read_psipred(*args)
6915 class _ADopeBase(IMP.PairScore):
6916  r"""Proxy of C++ IMP::score_functor::DistancePairScore< IMP::score_functor::Dope > class."""
6917 
6918  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6919  __repr__ = _swig_repr
6920 
6921  def __init__(self, *args):
6922  r"""
6923  __init__(_ADopeBase self, Dope t0, std::string name="FunctorDistancePairScore %1%") -> _ADopeBase
6924  __init__(_ADopeBase self) -> _ADopeBase
6925  """
6926  _IMP_atom._ADopeBase_swiginit(self, _IMP_atom.new__ADopeBase(*args))
6927 
6928  def do_get_inputs(self, m, pis):
6929  r"""do_get_inputs(_ADopeBase self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6930  return _IMP_atom._ADopeBase_do_get_inputs(self, m, pis)
6931 
6932  def get_score_functor(self, *args):
6933  r"""
6934  get_score_functor(_ADopeBase self) -> Dope
6935  get_score_functor(_ADopeBase self) -> Dope
6936  """
6937  return _IMP_atom._ADopeBase_get_score_functor(self, *args)
6938 
6939  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
6940  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"""
6941  return _IMP_atom._ADopeBase_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
6942 
6943  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
6944  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"""
6945  return _IMP_atom._ADopeBase_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
6946 
6947  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
6948  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"""
6949  return _IMP_atom._ADopeBase_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
6950 
6951  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
6952  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"""
6953  return _IMP_atom._ADopeBase_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
6954 
6955  def get_version_info(self):
6956  r"""get_version_info(_ADopeBase self) -> VersionInfo"""
6957  return _IMP_atom._ADopeBase_get_version_info(self)
6958  __swig_destroy__ = _IMP_atom.delete__ADopeBase
6959 
6960 # Register _ADopeBase in _IMP_atom:
6961 _IMP_atom._ADopeBase_swigregister(_ADopeBase)
6962 class _BDopeBase(IMP.PairScore):
6963  r"""Proxy of C++ IMP::score_functor::DistancePairScore< IMP::score_functor::Statistical< IMP::atom::DopeType,false,true,false > > class."""
6964 
6965  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6966  __repr__ = _swig_repr
6967 
6968  def __init__(self, *args):
6969  r"""
6970  __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
6971  __init__(_BDopeBase self) -> _BDopeBase
6972  """
6973  _IMP_atom._BDopeBase_swiginit(self, _IMP_atom.new__BDopeBase(*args))
6974 
6975  def do_get_inputs(self, m, pis):
6976  r"""do_get_inputs(_BDopeBase self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6977  return _IMP_atom._BDopeBase_do_get_inputs(self, m, pis)
6978 
6979  def get_score_functor(self, *args):
6980  r"""
6981  get_score_functor(_BDopeBase self) -> _DopeBase
6982  get_score_functor(_BDopeBase self) -> _DopeBase
6983  """
6984  return _IMP_atom._BDopeBase_get_score_functor(self, *args)
6985 
6986  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
6987  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"""
6988  return _IMP_atom._BDopeBase_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
6989 
6990  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
6991  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"""
6992  return _IMP_atom._BDopeBase_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
6993 
6994  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
6995  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"""
6996  return _IMP_atom._BDopeBase_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
6997 
6998  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
6999  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"""
7000  return _IMP_atom._BDopeBase_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
7001 
7002  def get_version_info(self):
7003  r"""get_version_info(_BDopeBase self) -> VersionInfo"""
7004  return _IMP_atom._BDopeBase_get_version_info(self)
7005  __swig_destroy__ = _IMP_atom.delete__BDopeBase
7006 
7007 # Register _BDopeBase in _IMP_atom:
7008 _IMP_atom._BDopeBase_swigregister(_BDopeBase)
7009 class _ALoopStatisticalBase(IMP.PairScore):
7010  r"""Proxy of C++ IMP::score_functor::DistancePairScore< IMP::score_functor::LoopStatistical > class."""
7011 
7012  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7013  __repr__ = _swig_repr
7014 
7015  def __init__(self, *args):
7016  r"""
7017  __init__(_ALoopStatisticalBase self, LoopStatistical t0, std::string name="FunctorDistancePairScore %1%") -> _ALoopStatisticalBase
7018  __init__(_ALoopStatisticalBase self) -> _ALoopStatisticalBase
7019  """
7020  _IMP_atom._ALoopStatisticalBase_swiginit(self, _IMP_atom.new__ALoopStatisticalBase(*args))
7021 
7022  def do_get_inputs(self, m, pis):
7023  r"""do_get_inputs(_ALoopStatisticalBase self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7024  return _IMP_atom._ALoopStatisticalBase_do_get_inputs(self, m, pis)
7025 
7026  def get_score_functor(self, *args):
7027  r"""
7028  get_score_functor(_ALoopStatisticalBase self) -> LoopStatistical
7029  get_score_functor(_ALoopStatisticalBase self) -> LoopStatistical
7030  """
7031  return _IMP_atom._ALoopStatisticalBase_get_score_functor(self, *args)
7032 
7033  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
7034  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"""
7035  return _IMP_atom._ALoopStatisticalBase_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
7036 
7037  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
7038  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"""
7039  return _IMP_atom._ALoopStatisticalBase_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
7040 
7041  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
7042  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"""
7043  return _IMP_atom._ALoopStatisticalBase_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
7044 
7045  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
7046  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"""
7047  return _IMP_atom._ALoopStatisticalBase_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
7048 
7049  def get_version_info(self):
7050  r"""get_version_info(_ALoopStatisticalBase self) -> VersionInfo"""
7051  return _IMP_atom._ALoopStatisticalBase_get_version_info(self)
7052  __swig_destroy__ = _IMP_atom.delete__ALoopStatisticalBase
7053 
7054 # Register _ALoopStatisticalBase in _IMP_atom:
7055 _IMP_atom._ALoopStatisticalBase_swigregister(_ALoopStatisticalBase)
7056 class _BLoopStatisticalBase(IMP.PairScore):
7057  r"""Proxy of C++ IMP::score_functor::DistancePairScore< IMP::score_functor::Statistical< IMP::atom::LoopStatisticalType,false,true,false > > class."""
7058 
7059  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7060  __repr__ = _swig_repr
7061 
7062  def __init__(self, *args):
7063  r"""
7064  __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
7065  __init__(_BLoopStatisticalBase self) -> _BLoopStatisticalBase
7066  """
7067  _IMP_atom._BLoopStatisticalBase_swiginit(self, _IMP_atom.new__BLoopStatisticalBase(*args))
7068 
7069  def do_get_inputs(self, m, pis):
7070  r"""do_get_inputs(_BLoopStatisticalBase self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7071  return _IMP_atom._BLoopStatisticalBase_do_get_inputs(self, m, pis)
7072 
7073  def get_score_functor(self, *args):
7074  r"""
7075  get_score_functor(_BLoopStatisticalBase self) -> _LoopStatisticalBase
7076  get_score_functor(_BLoopStatisticalBase self) -> _LoopStatisticalBase
7077  """
7078  return _IMP_atom._BLoopStatisticalBase_get_score_functor(self, *args)
7079 
7080  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
7081  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"""
7082  return _IMP_atom._BLoopStatisticalBase_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
7083 
7084  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
7085  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"""
7086  return _IMP_atom._BLoopStatisticalBase_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
7087 
7088  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
7089  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"""
7090  return _IMP_atom._BLoopStatisticalBase_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
7091 
7092  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
7093  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"""
7094  return _IMP_atom._BLoopStatisticalBase_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
7095 
7096  def get_version_info(self):
7097  r"""get_version_info(_BLoopStatisticalBase self) -> VersionInfo"""
7098  return _IMP_atom._BLoopStatisticalBase_get_version_info(self)
7099  __swig_destroy__ = _IMP_atom.delete__BLoopStatisticalBase
7100 
7101 # Register _BLoopStatisticalBase in _IMP_atom:
7102 _IMP_atom._BLoopStatisticalBase_swigregister(_BLoopStatisticalBase)
7103 class _OrientedSoapBase(IMP.PairScore):
7104  r"""Proxy of C++ IMP::score_functor::DistancePairScoreWithCache< IMP::score_functor::OrientedSoap > class."""
7105 
7106  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7107  __repr__ = _swig_repr
7108 
7109  def __init__(self, *args):
7110  r"""__init__(_OrientedSoapBase self, IMP::score_functor::DistancePairScoreWithCache< IMP::score_functor::OrientedSoap >::DistanceScore const & t0, std::string name="FunctorDistancePairScoreWithCache %1%") -> _OrientedSoapBase"""
7111  _IMP_atom._OrientedSoapBase_swiginit(self, _IMP_atom.new__OrientedSoapBase(*args))
7112 
7113  def do_get_inputs(self, m, pis):
7114  r"""do_get_inputs(_OrientedSoapBase self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7115  return _IMP_atom._OrientedSoapBase_do_get_inputs(self, m, pis)
7116 
7117  def get_score_functor(self):
7118  r"""get_score_functor(_OrientedSoapBase self) -> IMP::score_functor::OrientedSoap &"""
7119  return _IMP_atom._OrientedSoapBase_get_score_functor(self)
7120 
7121  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
7122  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"""
7123  return _IMP_atom._OrientedSoapBase_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
7124 
7125  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
7126  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"""
7127  return _IMP_atom._OrientedSoapBase_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
7128 
7129  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
7130  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"""
7131  return _IMP_atom._OrientedSoapBase_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
7132 
7133  def get_version_info(self):
7134  r"""get_version_info(_OrientedSoapBase self) -> VersionInfo"""
7135  return _IMP_atom._OrientedSoapBase_get_version_info(self)
7136  __swig_destroy__ = _IMP_atom.delete__OrientedSoapBase
7137 
7138 # Register _OrientedSoapBase in _IMP_atom:
7139 _IMP_atom._OrientedSoapBase_swigregister(_OrientedSoapBase)
7140 class _SPSFTB(IMP.PairScore):
7141  r"""Proxy of C++ IMP::score_functor::DistancePairScore< score_functor::Statistical< IMP::atom::ProteinLigandType,true,false > > class."""
7142 
7143  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7144  __repr__ = _swig_repr
7145 
7146  def __init__(self, *args):
7147  r"""
7148  __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
7149  __init__(_SPSFTB self) -> _SPSFTB
7150  """
7151  _IMP_atom._SPSFTB_swiginit(self, _IMP_atom.new__SPSFTB(*args))
7152 
7153  def do_get_inputs(self, m, pis):
7154  r"""do_get_inputs(_SPSFTB self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7155  return _IMP_atom._SPSFTB_do_get_inputs(self, m, pis)
7156 
7157  def get_score_functor(self, *args):
7158  r"""
7159  get_score_functor(_SPSFTB self) -> IMP::score_functor::Statistical< IMP::atom::ProteinLigandType,true,false,false >
7160  get_score_functor(_SPSFTB self) -> IMP::score_functor::Statistical< IMP::atom::ProteinLigandType,true,false,false > const &
7161  """
7162  return _IMP_atom._SPSFTB_get_score_functor(self, *args)
7163 
7164  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
7165  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"""
7166  return _IMP_atom._SPSFTB_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
7167 
7168  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
7169  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"""
7170  return _IMP_atom._SPSFTB_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
7171 
7172  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
7173  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"""
7174  return _IMP_atom._SPSFTB_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
7175 
7176  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
7177  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"""
7178  return _IMP_atom._SPSFTB_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
7179 
7180  def get_version_info(self):
7181  r"""get_version_info(_SPSFTB self) -> VersionInfo"""
7182  return _IMP_atom._SPSFTB_get_version_info(self)
7183  __swig_destroy__ = _IMP_atom.delete__SPSFTB
7184 
7185 # Register _SPSFTB in _IMP_atom:
7186 _IMP_atom._SPSFTB_swigregister(_SPSFTB)
7187 class _SPSTF(_SPSFTB):
7188  r"""Proxy of C++ IMP::core::StatisticalPairScore< IMP::atom::ProteinLigandType,true,false > class."""
7189 
7190  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7191  __repr__ = _swig_repr
7192 
7193  def __init__(self, *args):
7194  r"""
7195  __init__(_SPSTF self, IntKey k, double threshold, TextInput data_file) -> _SPSTF
7196  __init__(_SPSTF self, IntKey k, double threshold, TextInput data_file, unsigned int shift) -> _SPSTF
7197  """
7198  _IMP_atom._SPSTF_swiginit(self, _IMP_atom.new__SPSTF(*args))
7199  __swig_destroy__ = _IMP_atom.delete__SPSTF
7200 
7201 # Register _SPSTF in _IMP_atom:
7202 _IMP_atom._SPSTF_swigregister(_SPSTF)
7203 class _SPSFT(_BDopeBase):
7204  r"""Proxy of C++ IMP::core::StatisticalPairScore< IMP::atom::DopeType,false,true > class."""
7205 
7206  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7207  __repr__ = _swig_repr
7208 
7209  def __init__(self, *args):
7210  r"""
7211  __init__(_SPSFT self, IntKey k, double threshold, TextInput data_file) -> _SPSFT
7212  __init__(_SPSFT self, IntKey k, double threshold, TextInput data_file, unsigned int shift) -> _SPSFT
7213  """
7214  _IMP_atom._SPSFT_swiginit(self, _IMP_atom.new__SPSFT(*args))
7215  __swig_destroy__ = _IMP_atom.delete__SPSFT
7216 
7217 # Register _SPSFT in _IMP_atom:
7218 _IMP_atom._SPSFT_swigregister(_SPSFT)
7219 class _SPSFTL(_BLoopStatisticalBase):
7220  r"""Proxy of C++ IMP::core::StatisticalPairScore< IMP::atom::LoopStatisticalType,false,true > class."""
7221 
7222  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7223  __repr__ = _swig_repr
7224 
7225  def __init__(self, *args):
7226  r"""
7227  __init__(_SPSFTL self, IntKey k, double threshold, TextInput data_file) -> _SPSFTL
7228  __init__(_SPSFTL self, IntKey k, double threshold, TextInput data_file, unsigned int shift) -> _SPSFTL
7229  """
7230  _IMP_atom._SPSFTL_swiginit(self, _IMP_atom.new__SPSFTL(*args))
7231  __swig_destroy__ = _IMP_atom.delete__SPSFTL
7232 
7233 # Register _SPSFTL in _IMP_atom:
7234 _IMP_atom._SPSFTL_swigregister(_SPSFTL)
7235 class ProteinLigandAtomPairScore(_SPSTF):
7236  r"""Proxy of C++ IMP::atom::ProteinLigandAtomPairScore class."""
7237 
7238  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7239 
7240  def __init__(self, *args):
7241  r"""
7242  __init__(ProteinLigandAtomPairScore self, double threshold=std::numeric_limits< double >::max()) -> ProteinLigandAtomPairScore
7243  __init__(ProteinLigandAtomPairScore self, double threshold, TextInput data_file) -> ProteinLigandAtomPairScore
7244  """
7245  _IMP_atom.ProteinLigandAtomPairScore_swiginit(self, _IMP_atom.new_ProteinLigandAtomPairScore(*args))
7246 
7247  def get_maximum_distance(self):
7248  r"""get_maximum_distance(ProteinLigandAtomPairScore self) -> double"""
7249  return _IMP_atom.ProteinLigandAtomPairScore_get_maximum_distance(self)
7250 
7251  def __str__(self):
7252  r"""__str__(ProteinLigandAtomPairScore self) -> std::string"""
7253  return _IMP_atom.ProteinLigandAtomPairScore___str__(self)
7254 
7255  def __repr__(self):
7256  r"""__repr__(ProteinLigandAtomPairScore self) -> std::string"""
7257  return _IMP_atom.ProteinLigandAtomPairScore___repr__(self)
7258 
7259  @staticmethod
7260  def get_from(o):
7261  return _object_cast_to_ProteinLigandAtomPairScore(o)
7262 
7263  __swig_destroy__ = _IMP_atom.delete_ProteinLigandAtomPairScore
7264 
7265 # Register ProteinLigandAtomPairScore in _IMP_atom:
7266 _IMP_atom.ProteinLigandAtomPairScore_swigregister(ProteinLigandAtomPairScore)
7267 class ProteinLigandRestraint(IMP.container.PairsRestraint):
7268  r"""Proxy of C++ IMP::atom::ProteinLigandRestraint class."""
7269 
7270  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7271 
7272  def __init__(self, *args):
7273  r"""
7274  __init__(ProteinLigandRestraint self, Hierarchy protein, Hierarchy ligand, double threshold=std::numeric_limits< double >::max()) -> ProteinLigandRestraint
7275  __init__(ProteinLigandRestraint self, Hierarchy protein, Hierarchy ligand, double threshold, TextInput data_file) -> ProteinLigandRestraint
7276  """
7277  _IMP_atom.ProteinLigandRestraint_swiginit(self, _IMP_atom.new_ProteinLigandRestraint(*args))
7278 
7279  def __str__(self):
7280  r"""__str__(ProteinLigandRestraint self) -> std::string"""
7281  return _IMP_atom.ProteinLigandRestraint___str__(self)
7282 
7283  def __repr__(self):
7284  r"""__repr__(ProteinLigandRestraint self) -> std::string"""
7285  return _IMP_atom.ProteinLigandRestraint___repr__(self)
7286 
7287  @staticmethod
7288  def get_from(o):
7289  return _object_cast_to_ProteinLigandRestraint(o)
7290 
7291  __swig_destroy__ = _IMP_atom.delete_ProteinLigandRestraint
7292 
7293 # Register ProteinLigandRestraint in _IMP_atom:
7294 _IMP_atom.ProteinLigandRestraint_swigregister(ProteinLigandRestraint)
7295 
7297  r"""add_protein_ligand_score_data(Hierarchy h)"""
7298  return _IMP_atom.add_protein_ligand_score_data(h)
7299 class AtomType(IMP._Value):
7300  r"""Proxy of C++ IMP::Key< 8974343 > class."""
7301 
7302  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7303 
7304  def __init__(self, *args):
7305  r"""
7306  __init__(AtomType self) -> AtomType
7307  __init__(AtomType self, std::string const & c, bool is_implicit_add_permitted=True) -> AtomType
7308  __init__(AtomType self, unsigned int i) -> AtomType
7309  """
7310  _IMP_atom.AtomType_swiginit(self, _IMP_atom.new_AtomType(*args))
7311 
7312  @staticmethod
7313  def add_key(sc):
7314  r"""add_key(std::string sc) -> unsigned int"""
7315  return _IMP_atom.AtomType_add_key(sc)
7316 
7317  @staticmethod
7318  def get_key_exists(sc):
7319  r"""get_key_exists(std::string sc) -> bool"""
7320  return _IMP_atom.AtomType_get_key_exists(sc)
7321 
7322  def get_string(self):
7323  r"""get_string(AtomType self) -> std::string const"""
7324  return _IMP_atom.AtomType_get_string(self)
7325 
7326  def __cmp__(self, o):
7327  r"""__cmp__(AtomType self, AtomType o) -> int"""
7328  return _IMP_atom.AtomType___cmp__(self, o)
7329 
7330  def __eq__(self, o):
7331  r"""__eq__(AtomType self, AtomType o) -> bool"""
7332  return _IMP_atom.AtomType___eq__(self, o)
7333 
7334  def __ne__(self, o):
7335  r"""__ne__(AtomType self, AtomType o) -> bool"""
7336  return _IMP_atom.AtomType___ne__(self, o)
7337 
7338  def __lt__(self, o):
7339  r"""__lt__(AtomType self, AtomType o) -> bool"""
7340  return _IMP_atom.AtomType___lt__(self, o)
7341 
7342  def __gt__(self, o):
7343  r"""__gt__(AtomType self, AtomType o) -> bool"""
7344  return _IMP_atom.AtomType___gt__(self, o)
7345 
7346  def __ge__(self, o):
7347  r"""__ge__(AtomType self, AtomType o) -> bool"""
7348  return _IMP_atom.AtomType___ge__(self, o)
7349 
7350  def __le__(self, o):
7351  r"""__le__(AtomType self, AtomType o) -> bool"""
7352  return _IMP_atom.AtomType___le__(self, o)
7353 
7354  def __hash__(self):
7355  r"""__hash__(AtomType self) -> std::size_t"""
7356  return _IMP_atom.AtomType___hash__(self)
7357 
7358  def show(self, *args):
7359  r"""show(AtomType self, _ostream out=std::cout)"""
7360  return _IMP_atom.AtomType_show(self, *args)
7361 
7362  @staticmethod
7363  def add_alias(old_key, new_name):
7364  r"""add_alias(AtomType old_key, std::string new_name) -> AtomType"""
7365  return _IMP_atom.AtomType_add_alias(old_key, new_name)
7366 
7367  @staticmethod
7368  def get_number_of_keys():
7369  r"""get_number_of_keys() -> unsigned int"""
7370  return _IMP_atom.AtomType_get_number_of_keys()
7371 
7372  def get_index(self):
7373  r"""get_index(AtomType self) -> unsigned int"""
7374  return _IMP_atom.AtomType_get_index(self)
7375 
7376  @staticmethod
7377  def show_all(out):
7378  r"""show_all(_ostream out)"""
7379  return _IMP_atom.AtomType_show_all(out)
7380 
7381  @staticmethod
7382  def get_all_strings():
7383  r"""get_all_strings() -> IMP::Vector< std::string >"""
7384  return _IMP_atom.AtomType_get_all_strings()
7385 
7386  @staticmethod
7387  def get_number_unique():
7388  r"""get_number_unique() -> unsigned int"""
7389  return _IMP_atom.AtomType_get_number_unique()
7390 
7391  def __str__(self):
7392  r"""__str__(AtomType self) -> std::string"""
7393  return _IMP_atom.AtomType___str__(self)
7394 
7395  def __repr__(self):
7396  r"""__repr__(AtomType self) -> std::string"""
7397  return _IMP_atom.AtomType___repr__(self)
7398  __swig_destroy__ = _IMP_atom.delete_AtomType
7399 
7400 # Register AtomType in _IMP_atom:
7401 _IMP_atom.AtomType_swigregister(AtomType)
7402 class ResidueType(IMP._Value):
7403  r"""Proxy of C++ IMP::Key< 90784334 > class."""
7404 
7405  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7406 
7407  def __init__(self, *args):
7408  r"""
7409  __init__(ResidueType self) -> ResidueType
7410  __init__(ResidueType self, std::string const & c, bool is_implicit_add_permitted=True) -> ResidueType
7411  __init__(ResidueType self, unsigned int i) -> ResidueType
7412  """
7413  _IMP_atom.ResidueType_swiginit(self, _IMP_atom.new_ResidueType(*args))
7414 
7415  @staticmethod
7416  def add_key(sc):
7417  r"""add_key(std::string sc) -> unsigned int"""
7418  return _IMP_atom.ResidueType_add_key(sc)
7419 
7420  @staticmethod
7421  def get_key_exists(sc):
7422  r"""get_key_exists(std::string sc) -> bool"""
7423  return _IMP_atom.ResidueType_get_key_exists(sc)
7424 
7425  def get_string(self):
7426  r"""get_string(ResidueType self) -> std::string const"""
7427  return _IMP_atom.ResidueType_get_string(self)
7428 
7429  def __cmp__(self, o):
7430  r"""__cmp__(ResidueType self, ResidueType o) -> int"""
7431  return _IMP_atom.ResidueType___cmp__(self, o)
7432 
7433  def __eq__(self, o):
7434  r"""__eq__(ResidueType self, ResidueType o) -> bool"""
7435  return _IMP_atom.ResidueType___eq__(self, o)
7436 
7437  def __ne__(self, o):
7438  r"""__ne__(ResidueType self, ResidueType o) -> bool"""
7439  return _IMP_atom.ResidueType___ne__(self, o)
7440 
7441  def __lt__(self, o):
7442  r"""__lt__(ResidueType self, ResidueType o) -> bool"""
7443  return _IMP_atom.ResidueType___lt__(self, o)
7444 
7445  def __gt__(self, o):
7446  r"""__gt__(ResidueType self, ResidueType o) -> bool"""
7447  return _IMP_atom.ResidueType___gt__(self, o)
7448 
7449  def __ge__(self, o):
7450  r"""__ge__(ResidueType self, ResidueType o) -> bool"""
7451  return _IMP_atom.ResidueType___ge__(self, o)
7452 
7453  def __le__(self, o):
7454  r"""__le__(ResidueType self, ResidueType o) -> bool"""
7455  return _IMP_atom.ResidueType___le__(self, o)
7456 
7457  def __hash__(self):
7458  r"""__hash__(ResidueType self) -> std::size_t"""
7459  return _IMP_atom.ResidueType___hash__(self)
7460 
7461  def show(self, *args):
7462  r"""show(ResidueType self, _ostream out=std::cout)"""
7463  return _IMP_atom.ResidueType_show(self, *args)
7464 
7465  @staticmethod
7466  def add_alias(old_key, new_name):
7467  r"""add_alias(ResidueType old_key, std::string new_name) -> ResidueType"""
7468  return _IMP_atom.ResidueType_add_alias(old_key, new_name)
7469 
7470  @staticmethod
7471  def get_number_of_keys():
7472  r"""get_number_of_keys() -> unsigned int"""
7473  return _IMP_atom.ResidueType_get_number_of_keys()
7474 
7475  def get_index(self):
7476  r"""get_index(ResidueType self) -> unsigned int"""
7477  return _IMP_atom.ResidueType_get_index(self)
7478 
7479  @staticmethod
7480  def show_all(out):
7481  r"""show_all(_ostream out)"""
7482  return _IMP_atom.ResidueType_show_all(out)
7483 
7484  @staticmethod
7485  def get_all_strings():
7486  r"""get_all_strings() -> IMP::Vector< std::string >"""
7487  return _IMP_atom.ResidueType_get_all_strings()
7488 
7489  @staticmethod
7490  def get_number_unique():
7491  r"""get_number_unique() -> unsigned int"""
7492  return _IMP_atom.ResidueType_get_number_unique()
7493 
7494  def __str__(self):
7495  r"""__str__(ResidueType self) -> std::string"""
7496  return _IMP_atom.ResidueType___str__(self)
7497 
7498  def __repr__(self):
7499  r"""__repr__(ResidueType self) -> std::string"""
7500  return _IMP_atom.ResidueType___repr__(self)
7501  __swig_destroy__ = _IMP_atom.delete_ResidueType
7502 
7503 # Register ResidueType in _IMP_atom:
7504 _IMP_atom.ResidueType_swigregister(ResidueType)
7505 class ChainType(IMP._Value):
7506  r"""Proxy of C++ IMP::Key< 90784336 > class."""
7507 
7508  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7509 
7510  def __init__(self, *args):
7511  r"""
7512  __init__(ChainType self) -> ChainType
7513  __init__(ChainType self, std::string const & c, bool is_implicit_add_permitted=True) -> ChainType
7514  __init__(ChainType self, unsigned int i) -> ChainType
7515  """
7516  _IMP_atom.ChainType_swiginit(self, _IMP_atom.new_ChainType(*args))
7517 
7518  @staticmethod
7519  def add_key(sc):
7520  r"""add_key(std::string sc) -> unsigned int"""
7521  return _IMP_atom.ChainType_add_key(sc)
7522 
7523  @staticmethod
7524  def get_key_exists(sc):
7525  r"""get_key_exists(std::string sc) -> bool"""
7526  return _IMP_atom.ChainType_get_key_exists(sc)
7527 
7528  def get_string(self):
7529  r"""get_string(ChainType self) -> std::string const"""
7530  return _IMP_atom.ChainType_get_string(self)
7531 
7532  def __cmp__(self, o):
7533  r"""__cmp__(ChainType self, ChainType o) -> int"""
7534  return _IMP_atom.ChainType___cmp__(self, o)
7535 
7536  def __eq__(self, o):
7537  r"""__eq__(ChainType self, ChainType o) -> bool"""
7538  return _IMP_atom.ChainType___eq__(self, o)
7539 
7540  def __ne__(self, o):
7541  r"""__ne__(ChainType self, ChainType o) -> bool"""
7542  return _IMP_atom.ChainType___ne__(self, o)
7543 
7544  def __lt__(self, o):
7545  r"""__lt__(ChainType self, ChainType o) -> bool"""
7546  return _IMP_atom.ChainType___lt__(self, o)
7547 
7548  def __gt__(self, o):
7549  r"""__gt__(ChainType self, ChainType o) -> bool"""
7550  return _IMP_atom.ChainType___gt__(self, o)
7551 
7552  def __ge__(self, o):
7553  r"""__ge__(ChainType self, ChainType o) -> bool"""
7554  return _IMP_atom.ChainType___ge__(self, o)
7555 
7556  def __le__(self, o):
7557  r"""__le__(ChainType self, ChainType o) -> bool"""
7558  return _IMP_atom.ChainType___le__(self, o)
7559 
7560  def __hash__(self):
7561  r"""__hash__(ChainType self) -> std::size_t"""
7562  return _IMP_atom.ChainType___hash__(self)
7563 
7564  def show(self, *args):
7565  r"""show(ChainType self, _ostream out=std::cout)"""
7566  return _IMP_atom.ChainType_show(self, *args)
7567 
7568  @staticmethod
7569  def add_alias(old_key, new_name):
7570  r"""add_alias(ChainType old_key, std::string new_name) -> ChainType"""
7571  return _IMP_atom.ChainType_add_alias(old_key, new_name)
7572 
7573  @staticmethod
7574  def get_number_of_keys():
7575  r"""get_number_of_keys() -> unsigned int"""
7576  return _IMP_atom.ChainType_get_number_of_keys()
7577 
7578  def get_index(self):
7579  r"""get_index(ChainType self) -> unsigned int"""
7580  return _IMP_atom.ChainType_get_index(self)
7581 
7582  @staticmethod
7583  def show_all(out):
7584  r"""show_all(_ostream out)"""
7585  return _IMP_atom.ChainType_show_all(out)
7586 
7587  @staticmethod
7588  def get_all_strings():
7589  r"""get_all_strings() -> IMP::Vector< std::string >"""
7590  return _IMP_atom.ChainType_get_all_strings()
7591 
7592  @staticmethod
7593  def get_number_unique():
7594  r"""get_number_unique() -> unsigned int"""
7595  return _IMP_atom.ChainType_get_number_unique()
7596 
7597  def __str__(self):
7598  r"""__str__(ChainType self) -> std::string"""
7599  return _IMP_atom.ChainType___str__(self)
7600 
7601  def __repr__(self):
7602  r"""__repr__(ChainType self) -> std::string"""
7603  return _IMP_atom.ChainType___repr__(self)
7604  __swig_destroy__ = _IMP_atom.delete_ChainType
7605 
7606 # Register ChainType in _IMP_atom:
7607 _IMP_atom.ChainType_swigregister(ChainType)
7608 UNKNOWN_ELEMENT = _IMP_atom.UNKNOWN_ELEMENT
7609 
7610 OH = _IMP_atom.OH
7611 
7612 H2O = _IMP_atom.H2O
7613 
7614 H = _IMP_atom.H
7615 
7616 He = _IMP_atom.He
7617 
7618 Li = _IMP_atom.Li
7619 
7620 Be = _IMP_atom.Be
7621 
7622 B = _IMP_atom.B
7623 
7624 C = _IMP_atom.C
7625 
7626 N = _IMP_atom.N
7627 
7628 O = _IMP_atom.O
7629 
7630 F = _IMP_atom.F
7631 
7632 Ne = _IMP_atom.Ne
7633 
7634 Na = _IMP_atom.Na
7635 
7636 Mg = _IMP_atom.Mg
7637 
7638 Al = _IMP_atom.Al
7639 
7640 Si = _IMP_atom.Si
7641 
7642 P = _IMP_atom.P
7643 
7644 S = _IMP_atom.S
7645 
7646 Cl = _IMP_atom.Cl
7647 
7648 Ar = _IMP_atom.Ar
7649 
7650 K = _IMP_atom.K
7651 
7652 Ca = _IMP_atom.Ca
7653 
7654 Sc = _IMP_atom.Sc
7655 
7656 Ti = _IMP_atom.Ti
7657 
7658 V = _IMP_atom.V
7659 
7660 Cr = _IMP_atom.Cr
7661 
7662 Mn = _IMP_atom.Mn
7663 
7664 Fe = _IMP_atom.Fe
7665 
7666 Co = _IMP_atom.Co
7667 
7668 Ni = _IMP_atom.Ni
7669 
7670 Cu = _IMP_atom.Cu
7671 
7672 Zn = _IMP_atom.Zn
7673 
7674 Ga = _IMP_atom.Ga
7675 
7676 Ge = _IMP_atom.Ge
7677 
7678 As = _IMP_atom.As
7679 
7680 Se = _IMP_atom.Se
7681 
7682 Br = _IMP_atom.Br
7683 
7684 Kr = _IMP_atom.Kr
7685 
7686 Rb = _IMP_atom.Rb
7687 
7688 Sr = _IMP_atom.Sr
7689 
7690 Y = _IMP_atom.Y
7691 
7692 Zr = _IMP_atom.Zr
7693 
7694 Nb = _IMP_atom.Nb
7695 
7696 Mo = _IMP_atom.Mo
7697 
7698 Tc = _IMP_atom.Tc
7699 
7700 Ru = _IMP_atom.Ru
7701 
7702 Rh = _IMP_atom.Rh
7703 
7704 Pd = _IMP_atom.Pd
7705 
7706 Ag = _IMP_atom.Ag
7707 
7708 Cd = _IMP_atom.Cd
7709 
7710 In = _IMP_atom.In
7711 
7712 Sn = _IMP_atom.Sn
7713 
7714 Sb = _IMP_atom.Sb
7715 
7716 Te = _IMP_atom.Te
7717 
7718 I = _IMP_atom.I
7719 
7720 Xe = _IMP_atom.Xe
7721 
7722 Cs = _IMP_atom.Cs
7723 
7724 Ba = _IMP_atom.Ba
7725 
7726 La = _IMP_atom.La
7727 
7728 Ce = _IMP_atom.Ce
7729 
7730 Pr = _IMP_atom.Pr
7731 
7732 Nd = _IMP_atom.Nd
7733 
7734 Pm = _IMP_atom.Pm
7735 
7736 Sm = _IMP_atom.Sm
7737 
7738 Eu = _IMP_atom.Eu
7739 
7740 Gd = _IMP_atom.Gd
7741 
7742 Tb = _IMP_atom.Tb
7743 
7744 Dy = _IMP_atom.Dy
7745 
7746 Ho = _IMP_atom.Ho
7747 
7748 Er = _IMP_atom.Er
7749 
7750 Tm = _IMP_atom.Tm
7751 
7752 Yb = _IMP_atom.Yb
7753 
7754 Lu = _IMP_atom.Lu
7755 
7756 Hf = _IMP_atom.Hf
7757 
7758 Ta = _IMP_atom.Ta
7759 
7760 W = _IMP_atom.W
7761 
7762 Re = _IMP_atom.Re
7763 
7764 Os = _IMP_atom.Os
7765 
7766 Ir = _IMP_atom.Ir
7767 
7768 Pt = _IMP_atom.Pt
7769 
7770 Au = _IMP_atom.Au
7771 
7772 Hg = _IMP_atom.Hg
7773 
7774 Tl = _IMP_atom.Tl
7775 
7776 Pb = _IMP_atom.Pb
7777 
7778 Bi = _IMP_atom.Bi
7779 
7780 Po = _IMP_atom.Po
7781 
7782 At = _IMP_atom.At
7783 
7784 Rn = _IMP_atom.Rn
7785 
7786 Fr = _IMP_atom.Fr
7787 
7788 Ra = _IMP_atom.Ra
7789 
7790 Ac = _IMP_atom.Ac
7791 
7792 Th = _IMP_atom.Th
7793 
7794 Pa = _IMP_atom.Pa
7795 
7796 U = _IMP_atom.U
7797 
7798 Np = _IMP_atom.Np
7799 
7800 Pu = _IMP_atom.Pu
7801 
7802 Am = _IMP_atom.Am
7803 
7804 Cm = _IMP_atom.Cm
7805 
7806 Bk = _IMP_atom.Bk
7807 
7808 Cf = _IMP_atom.Cf
7809 
7810 Es = _IMP_atom.Es
7811 
7812 Fm = _IMP_atom.Fm
7813 
7814 Md = _IMP_atom.Md
7815 
7816 No = _IMP_atom.No
7817 
7818 Lr = _IMP_atom.Lr
7819 
7820 Db = _IMP_atom.Db
7821 
7822 Jl = _IMP_atom.Jl
7823 
7824 Rf = _IMP_atom.Rf
7825 
7826 NUMBER_OF_ELEMENTS = _IMP_atom.NUMBER_OF_ELEMENTS
7827 
7828 
7829 def hash_value(e):
7830  r"""hash_value(IMP::atom::Element e) -> size_t"""
7831  return _IMP_atom.hash_value(e)
7832 class ElementTable(object):
7833  r"""Proxy of C++ IMP::atom::ElementTable class."""
7834 
7835  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7836  __repr__ = _swig_repr
7837 
7838  def __init__(self):
7839  r"""__init__(ElementTable self) -> ElementTable"""
7840  _IMP_atom.ElementTable_swiginit(self, _IMP_atom.new_ElementTable())
7841 
7842  def get_element(self, s):
7843  r"""get_element(ElementTable self, std::string const & s) -> IMP::atom::Element"""
7844  return _IMP_atom.ElementTable_get_element(self, s)
7845 
7846  def get_name(self, e):
7847  r"""get_name(ElementTable self, IMP::atom::Element e) -> std::string"""
7848  return _IMP_atom.ElementTable_get_name(self, e)
7849 
7850  def get_mass(self, e):
7851  r"""get_mass(ElementTable self, IMP::atom::Element e) -> IMP::Float"""
7852  return _IMP_atom.ElementTable_get_mass(self, e)
7853  __swig_destroy__ = _IMP_atom.delete_ElementTable
7854 
7855 # Register ElementTable in _IMP_atom:
7856 _IMP_atom.ElementTable_swigregister(ElementTable)
7857 
7858 def get_element_table():
7859  r"""get_element_table() -> ElementTable"""
7860  return _IMP_atom.get_element_table()
7861 class Atom(Hierarchy):
7862  r"""Proxy of C++ IMP::atom::Atom class."""
7863 
7864  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7865 
7866  def __init__(self, *args):
7867  r"""
7868  __init__(Atom self) -> Atom
7869  __init__(Atom self, Model m, ParticleIndex id) -> Atom
7870  __init__(Atom self, _ParticleAdaptor d) -> Atom
7871  """
7872  _IMP_atom.Atom_swiginit(self, _IMP_atom.new_Atom(*args))
7873 
7874  def show(self, *args):
7875  r"""show(Atom self, _ostream out=std::cout)"""
7876  return _IMP_atom.Atom_show(self, *args)
7877 
7878  @staticmethod
7879  def setup_particle(*args):
7880  r"""
7881  setup_particle(Model m, ParticleIndex pi, Atom other) -> Atom
7882  setup_particle(_ParticleAdaptor pa, Atom other) -> Atom
7883  setup_particle(Model m, ParticleIndex pi, AtomType atom_type) -> Atom
7884  setup_particle(_ParticleAdaptor pa, AtomType atom_type) -> Atom
7885  """
7886  return _IMP_atom.Atom_setup_particle(*args)
7887 
7888  @staticmethod
7889  def get_is_setup(*args):
7890  r"""
7891  get_is_setup(_ParticleAdaptor p) -> bool
7892  get_is_setup(Model m, ParticleIndex pi) -> bool
7893  """
7894  return _IMP_atom.Atom_get_is_setup(*args)
7895 
7896  def get_atom_type(self):
7897  r"""get_atom_type(Atom self) -> AtomType"""
7898  return _IMP_atom.Atom_get_atom_type(self)
7899 
7900  def set_atom_type(self, t):
7901  r"""set_atom_type(Atom self, AtomType t)"""
7902  return _IMP_atom.Atom_set_atom_type(self, t)
7903 
7904  def get_element(self):
7905  r"""get_element(Atom self) -> IMP::atom::Element"""
7906  return _IMP_atom.Atom_get_element(self)
7907 
7908  def set_element(self, e):
7909  r"""set_element(Atom self, IMP::atom::Element e)"""
7910  return _IMP_atom.Atom_set_element(self, e)
7911 
7912  def get_occupancy(self):
7913  r"""get_occupancy(Atom self) -> double"""
7914  return _IMP_atom.Atom_get_occupancy(self)
7915 
7916  def set_occupancy(self, occupancy):
7917  r"""set_occupancy(Atom self, double occupancy)"""
7918  return _IMP_atom.Atom_set_occupancy(self, occupancy)
7919 
7920  def get_temperature_factor(self):
7921  r"""get_temperature_factor(Atom self) -> double"""
7922  return _IMP_atom.Atom_get_temperature_factor(self)
7923 
7924  def set_temperature_factor(self, tempFactor):
7925  r"""set_temperature_factor(Atom self, double tempFactor)"""
7926  return _IMP_atom.Atom_set_temperature_factor(self, tempFactor)
7927 
7928  def get_input_index(self):
7929  r"""get_input_index(Atom self) -> IMP::Int"""
7930  return _IMP_atom.Atom_get_input_index(self)
7931 
7932  def set_input_index(self, t):
7933  r"""set_input_index(Atom self, IMP::Int t)"""
7934  return _IMP_atom.Atom_set_input_index(self, t)
7935 
7936  @staticmethod
7937  def get_atom_type_key():
7938  r"""get_atom_type_key() -> IntKey"""
7939  return _IMP_atom.Atom_get_atom_type_key()
7940 
7941  @staticmethod
7942  def get_element_key():
7943  r"""get_element_key() -> IntKey"""
7944  return _IMP_atom.Atom_get_element_key()
7945 
7946  @staticmethod
7947  def get_input_index_key():
7948  r"""get_input_index_key() -> IntKey"""
7949  return _IMP_atom.Atom_get_input_index_key()
7950 
7951  @staticmethod
7952  def get_occupancy_key():
7953  r"""get_occupancy_key() -> FloatKey"""
7954  return _IMP_atom.Atom_get_occupancy_key()
7955 
7956  @staticmethod
7957  def get_temperature_factor_key():
7958  r"""get_temperature_factor_key() -> FloatKey"""
7959  return _IMP_atom.Atom_get_temperature_factor_key()
7960 
7961  def add_attribute(self, *args):
7962  r"""
7963  add_attribute(Atom self, FloatKey k, IMP::Float v, bool opt)
7964  add_attribute(Atom self, FloatKey a0, IMP::Float a1)
7965  add_attribute(Atom self, IntKey a0, IMP::Int a1)
7966  add_attribute(Atom self, FloatsKey a0, IMP::Floats a1)
7967  add_attribute(Atom self, IntsKey a0, IMP::Ints a1)
7968  add_attribute(Atom self, StringKey a0, IMP::String a1)
7969  add_attribute(Atom self, ParticleIndexKey a0, Particle a1)
7970  add_attribute(Atom self, ObjectKey a0, Object a1)
7971  add_attribute(Atom self, SparseFloatKey a0, IMP::Float a1)
7972  add_attribute(Atom self, SparseIntKey a0, IMP::Int a1)
7973  add_attribute(Atom self, SparseStringKey a0, IMP::String a1)
7974  add_attribute(Atom self, SparseParticleIndexKey a0, ParticleIndex a1)
7975  """
7976  return _IMP_atom.Atom_add_attribute(self, *args)
7977 
7978  def get_value(self, *args):
7979  r"""
7980  get_value(Atom self, FloatKey a0) -> IMP::Float
7981  get_value(Atom self, IntKey a0) -> IMP::Int
7982  get_value(Atom self, FloatsKey a0) -> IMP::Floats
7983  get_value(Atom self, IntsKey a0) -> IMP::Ints
7984  get_value(Atom self, StringKey a0) -> IMP::String
7985  get_value(Atom self, ParticleIndexKey a0) -> Particle
7986  get_value(Atom self, ObjectKey a0) -> Object
7987  get_value(Atom self, SparseFloatKey a0) -> IMP::Float
7988  get_value(Atom self, SparseIntKey a0) -> IMP::Int
7989  get_value(Atom self, SparseStringKey a0) -> IMP::String
7990  get_value(Atom self, SparseParticleIndexKey a0) -> ParticleIndex
7991  """
7992  return _IMP_atom.Atom_get_value(self, *args)
7993 
7994  def set_value(self, *args):
7995  r"""
7996  set_value(Atom self, FloatKey a0, IMP::Float a1)
7997  set_value(Atom self, IntKey a0, IMP::Int a1)
7998  set_value(Atom self, FloatsKey a0, IMP::Floats a1)
7999  set_value(Atom self, IntsKey a0, IMP::Ints a1)
8000  set_value(Atom self, StringKey a0, IMP::String a1)
8001  set_value(Atom self, ParticleIndexKey a0, Particle a1)
8002  set_value(Atom self, ObjectKey a0, Object a1)
8003  set_value(Atom self, SparseFloatKey a0, IMP::Float a1)
8004  set_value(Atom self, SparseIntKey a0, IMP::Int a1)
8005  set_value(Atom self, SparseStringKey a0, IMP::String a1)
8006  set_value(Atom self, SparseParticleIndexKey a0, ParticleIndex a1)
8007  """
8008  return _IMP_atom.Atom_set_value(self, *args)
8009 
8010  def remove_attribute(self, *args):
8011  r"""
8012  remove_attribute(Atom self, FloatKey a0)
8013  remove_attribute(Atom self, IntKey a0)
8014  remove_attribute(Atom self, FloatsKey a0)
8015  remove_attribute(Atom self, IntsKey a0)
8016  remove_attribute(Atom self, StringKey a0)
8017  remove_attribute(Atom self, ParticleIndexKey a0)
8018  remove_attribute(Atom self, ObjectKey a0)
8019  remove_attribute(Atom self, SparseFloatKey a0)
8020  remove_attribute(Atom self, SparseIntKey a0)
8021  remove_attribute(Atom self, SparseStringKey a0)
8022  remove_attribute(Atom self, SparseParticleIndexKey a0)
8023  """
8024  return _IMP_atom.Atom_remove_attribute(self, *args)
8025 
8026  def has_attribute(self, *args):
8027  r"""
8028  has_attribute(Atom self, FloatKey a0) -> bool
8029  has_attribute(Atom self, IntKey a0) -> bool
8030  has_attribute(Atom self, FloatsKey a0) -> bool
8031  has_attribute(Atom self, IntsKey a0) -> bool
8032  has_attribute(Atom self, StringKey a0) -> bool
8033  has_attribute(Atom self, ParticleIndexKey a0) -> bool
8034  has_attribute(Atom self, ObjectKey a0) -> bool
8035  has_attribute(Atom self, SparseFloatKey a0) -> bool
8036  has_attribute(Atom self, SparseIntKey a0) -> bool
8037  has_attribute(Atom self, SparseStringKey a0) -> bool
8038  has_attribute(Atom self, SparseParticleIndexKey a0) -> bool
8039  """
8040  return _IMP_atom.Atom_has_attribute(self, *args)
8041 
8042  def get_derivative(self, a0):
8043  r"""get_derivative(Atom self, FloatKey a0) -> double"""
8044  return _IMP_atom.Atom_get_derivative(self, a0)
8045 
8046  def get_name(self):
8047  r"""get_name(Atom self) -> std::string"""
8048  return _IMP_atom.Atom_get_name(self)
8049 
8050  def clear_caches(self):
8051  r"""clear_caches(Atom self)"""
8052  return _IMP_atom.Atom_clear_caches(self)
8053 
8054  def set_name(self, a0):
8055  r"""set_name(Atom self, std::string a0)"""
8056  return _IMP_atom.Atom_set_name(self, a0)
8057 
8058  def set_check_level(self, a0):
8059  r"""set_check_level(Atom self, IMP::CheckLevel a0)"""
8060  return _IMP_atom.Atom_set_check_level(self, a0)
8061 
8062  def add_to_derivative(self, a0, a1, a2):
8063  r"""add_to_derivative(Atom self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8064  return _IMP_atom.Atom_add_to_derivative(self, a0, a1, a2)
8065 
8066  def set_is_optimized(self, a0, a1):
8067  r"""set_is_optimized(Atom self, FloatKey a0, bool a1)"""
8068  return _IMP_atom.Atom_set_is_optimized(self, a0, a1)
8069 
8070  def get_is_optimized(self, a0):
8071  r"""get_is_optimized(Atom self, FloatKey a0) -> bool"""
8072  return _IMP_atom.Atom_get_is_optimized(self, a0)
8073 
8074  def get_check_level(self):
8075  r"""get_check_level(Atom self) -> IMP::CheckLevel"""
8076  return _IMP_atom.Atom_get_check_level(self)
8077 
8078  def __eq__(self, *args):
8079  r"""
8080  __eq__(Atom self, Atom o) -> bool
8081  __eq__(Atom self, Particle d) -> bool
8082  """
8083  return _IMP_atom.Atom___eq__(self, *args)
8084 
8085  def __ne__(self, *args):
8086  r"""
8087  __ne__(Atom self, Atom o) -> bool
8088  __ne__(Atom self, Particle d) -> bool
8089  """
8090  return _IMP_atom.Atom___ne__(self, *args)
8091 
8092  def __le__(self, *args):
8093  r"""
8094  __le__(Atom self, Atom o) -> bool
8095  __le__(Atom self, Particle d) -> bool
8096  """
8097  return _IMP_atom.Atom___le__(self, *args)
8098 
8099  def __lt__(self, *args):
8100  r"""
8101  __lt__(Atom self, Atom o) -> bool
8102  __lt__(Atom self, Particle d) -> bool
8103  """
8104  return _IMP_atom.Atom___lt__(self, *args)
8105 
8106  def __ge__(self, *args):
8107  r"""
8108  __ge__(Atom self, Atom o) -> bool
8109  __ge__(Atom self, Particle d) -> bool
8110  """
8111  return _IMP_atom.Atom___ge__(self, *args)
8112 
8113  def __gt__(self, *args):
8114  r"""
8115  __gt__(Atom self, Atom o) -> bool
8116  __gt__(Atom self, Particle d) -> bool
8117  """
8118  return _IMP_atom.Atom___gt__(self, *args)
8119 
8120  def __hash__(self):
8121  r"""__hash__(Atom self) -> std::size_t"""
8122  return _IMP_atom.Atom___hash__(self)
8123 
8124  def __str__(self):
8125  r"""__str__(Atom self) -> std::string"""
8126  return _IMP_atom.Atom___str__(self)
8127 
8128  def __repr__(self):
8129  r"""__repr__(Atom self) -> std::string"""
8130  return _IMP_atom.Atom___repr__(self)
8131 
8132  def _get_as_binary(self):
8133  r"""_get_as_binary(Atom self) -> PyObject *"""
8134  return _IMP_atom.Atom__get_as_binary(self)
8135 
8136  def _set_from_binary(self, p):
8137  r"""_set_from_binary(Atom self, PyObject * p)"""
8138  return _IMP_atom.Atom__set_from_binary(self, p)
8139 
8140  def __getstate__(self):
8141  p = self._get_as_binary()
8142  if len(self.__dict__) > 1:
8143  d = self.__dict__.copy()
8144  del d['this']
8145  p = (d, p)
8146  return p
8147 
8148  def __setstate__(self, p):
8149  if not hasattr(self, 'this'):
8150  self.__init__()
8151  if isinstance(p, tuple):
8152  d, p = p
8153  self.__dict__.update(d)
8154  return self._set_from_binary(p)
8155 
8156  __swig_destroy__ = _IMP_atom.delete_Atom
8157 
8158 # Register Atom in _IMP_atom:
8159 _IMP_atom.Atom_swigregister(Atom)
8160 cvar = _IMP_atom.cvar
8161 AT_UNKNOWN = cvar.AT_UNKNOWN
8162 AT_N = cvar.AT_N
8163 AT_CA = cvar.AT_CA
8164 AT_C = cvar.AT_C
8165 AT_O = cvar.AT_O
8166 AT_H = cvar.AT_H
8167 AT_H1 = cvar.AT_H1
8168 AT_H2 = cvar.AT_H2
8169 AT_H3 = cvar.AT_H3
8170 AT_HA = cvar.AT_HA
8171 AT_HA1 = cvar.AT_HA1
8172 AT_HA2 = cvar.AT_HA2
8173 AT_HA3 = cvar.AT_HA3
8174 AT_CB = cvar.AT_CB
8175 AT_HB = cvar.AT_HB
8176 AT_HB1 = cvar.AT_HB1
8177 AT_HB2 = cvar.AT_HB2
8178 AT_HB3 = cvar.AT_HB3
8179 AT_OXT = cvar.AT_OXT
8180 AT_CH3 = cvar.AT_CH3
8181 AT_CH = cvar.AT_CH
8182 AT_CG = cvar.AT_CG
8183 AT_CG1 = cvar.AT_CG1
8184 AT_CG2 = cvar.AT_CG2
8185 AT_HG = cvar.AT_HG
8186 AT_HG1 = cvar.AT_HG1
8187 AT_HG2 = cvar.AT_HG2
8188 AT_HG3 = cvar.AT_HG3
8189 AT_HG11 = cvar.AT_HG11
8190 AT_HG21 = cvar.AT_HG21
8191 AT_HG31 = cvar.AT_HG31
8192 AT_HG12 = cvar.AT_HG12
8193 AT_HG13 = cvar.AT_HG13
8194 AT_HG22 = cvar.AT_HG22
8195 AT_HG23 = cvar.AT_HG23
8196 AT_HG32 = cvar.AT_HG32
8197 AT_OG = cvar.AT_OG
8198 AT_OG1 = cvar.AT_OG1
8199 AT_SG = cvar.AT_SG
8200 AT_CD = cvar.AT_CD
8201 AT_CD1 = cvar.AT_CD1
8202 AT_CD2 = cvar.AT_CD2
8203 AT_HD = cvar.AT_HD
8204 AT_HD1 = cvar.AT_HD1
8205 AT_HD2 = cvar.AT_HD2
8206 AT_HD3 = cvar.AT_HD3
8207 AT_HD11 = cvar.AT_HD11
8208 AT_HD21 = cvar.AT_HD21
8209 AT_HD31 = cvar.AT_HD31
8210 AT_HD12 = cvar.AT_HD12
8211 AT_HD13 = cvar.AT_HD13
8212 AT_HD22 = cvar.AT_HD22
8213 AT_HD23 = cvar.AT_HD23
8214 AT_HD32 = cvar.AT_HD32
8215 AT_SD = cvar.AT_SD
8216 AT_OD1 = cvar.AT_OD1
8217 AT_OD2 = cvar.AT_OD2
8218 AT_ND1 = cvar.AT_ND1
8219 AT_ND2 = cvar.AT_ND2
8220 AT_CE = cvar.AT_CE
8221 AT_CE1 = cvar.AT_CE1
8222 AT_CE2 = cvar.AT_CE2
8223 AT_CE3 = cvar.AT_CE3
8224 AT_HE = cvar.AT_HE
8225 AT_HE1 = cvar.AT_HE1
8226 AT_HE2 = cvar.AT_HE2
8227 AT_HE3 = cvar.AT_HE3
8228 AT_HE21 = cvar.AT_HE21
8229 AT_HE22 = cvar.AT_HE22
8230 AT_OE1 = cvar.AT_OE1
8231 AT_OE2 = cvar.AT_OE2
8232 AT_NE = cvar.AT_NE
8233 AT_NE1 = cvar.AT_NE1
8234 AT_NE2 = cvar.AT_NE2
8235 AT_CZ = cvar.AT_CZ
8236 AT_CZ2 = cvar.AT_CZ2
8237 AT_CZ3 = cvar.AT_CZ3
8238 AT_NZ = cvar.AT_NZ
8239 AT_HZ = cvar.AT_HZ
8240 AT_HZ1 = cvar.AT_HZ1
8241 AT_HZ2 = cvar.AT_HZ2
8242 AT_HZ3 = cvar.AT_HZ3
8243 AT_CH2 = cvar.AT_CH2
8244 AT_NH1 = cvar.AT_NH1
8245 AT_NH2 = cvar.AT_NH2
8246 AT_OH = cvar.AT_OH
8247 AT_HH = cvar.AT_HH
8248 AT_HH11 = cvar.AT_HH11
8249 AT_HH21 = cvar.AT_HH21
8250 AT_HH2 = cvar.AT_HH2
8251 AT_HH12 = cvar.AT_HH12
8252 AT_HH22 = cvar.AT_HH22
8253 AT_HH13 = cvar.AT_HH13
8254 AT_HH23 = cvar.AT_HH23
8255 AT_HH33 = cvar.AT_HH33
8256 AT_P = cvar.AT_P
8257 AT_OP1 = cvar.AT_OP1
8258 AT_OP2 = cvar.AT_OP2
8259 AT_OP3 = cvar.AT_OP3
8260 AT_O5p = cvar.AT_O5p
8261 AT_C5p = cvar.AT_C5p
8262 AT_H5p = cvar.AT_H5p
8263 AT_H5pp = cvar.AT_H5pp
8264 AT_C4p = cvar.AT_C4p
8265 AT_H4p = cvar.AT_H4p
8266 AT_O4p = cvar.AT_O4p
8267 AT_C1p = cvar.AT_C1p
8268 AT_H1p = cvar.AT_H1p
8269 AT_C3p = cvar.AT_C3p
8270 AT_H3p = cvar.AT_H3p
8271 AT_O3p = cvar.AT_O3p
8272 AT_C2p = cvar.AT_C2p
8273 AT_H2p = cvar.AT_H2p
8274 AT_H2pp = cvar.AT_H2pp
8275 AT_O2p = cvar.AT_O2p
8276 AT_HO2p = cvar.AT_HO2p
8277 AT_N9 = cvar.AT_N9
8278 AT_C8 = cvar.AT_C8
8279 AT_H8 = cvar.AT_H8
8280 AT_N7 = cvar.AT_N7
8281 AT_C5 = cvar.AT_C5
8282 AT_C4 = cvar.AT_C4
8283 AT_N3 = cvar.AT_N3
8284 AT_C2 = cvar.AT_C2
8285 AT_N1 = cvar.AT_N1
8286 AT_C6 = cvar.AT_C6
8287 AT_N6 = cvar.AT_N6
8288 AT_H61 = cvar.AT_H61
8289 AT_H62 = cvar.AT_H62
8290 AT_O6 = cvar.AT_O6
8291 AT_N2 = cvar.AT_N2
8292 AT_NT = cvar.AT_NT
8293 AT_H21 = cvar.AT_H21
8294 AT_H22 = cvar.AT_H22
8295 AT_H6 = cvar.AT_H6
8296 AT_H5 = cvar.AT_H5
8297 AT_O2 = cvar.AT_O2
8298 AT_N4 = cvar.AT_N4
8299 AT_H41 = cvar.AT_H41
8300 AT_H42 = cvar.AT_H42
8301 AT_O4 = cvar.AT_O4
8302 AT_C7 = cvar.AT_C7
8303 AT_H71 = cvar.AT_H71
8304 AT_H72 = cvar.AT_H72
8305 AT_H73 = cvar.AT_H73
8306 AT_O1A = cvar.AT_O1A
8307 AT_O2A = cvar.AT_O2A
8308 AT_O3A = cvar.AT_O3A
8309 AT_O1B = cvar.AT_O1B
8310 AT_O2B = cvar.AT_O2B
8311 AT_O3B = cvar.AT_O3B
8312 AT_CAY = cvar.AT_CAY
8313 AT_CY = cvar.AT_CY
8314 AT_OY = cvar.AT_OY
8315 AT_CAT = cvar.AT_CAT
8316 
8317 
8318 def get_residue(*args):
8319  r"""
8320  get_residue(Hierarchy mhd, unsigned int index) -> Hierarchy
8321  get_residue(Atom d, bool nothrow=False) -> Residue
8322  """
8323  return _IMP_atom.get_residue(*args)
8324 
8325 def get_atom(rd, at):
8326  r"""get_atom(Residue rd, AtomType at) -> Atom"""
8327  return _IMP_atom.get_atom(rd, at)
8328 
8329 def add_atom_type(name, e):
8330  r"""add_atom_type(std::string name, IMP::atom::Element e) -> AtomType"""
8331  return _IMP_atom.add_atom_type(name, e)
8332 
8333 def get_element_for_atom_type(at):
8334  r"""get_element_for_atom_type(AtomType at) -> IMP::atom::Element"""
8335  return _IMP_atom.get_element_for_atom_type(at)
8336 
8337 def get_atom_type_exists(name):
8338  r"""get_atom_type_exists(std::string name) -> bool"""
8339  return _IMP_atom.get_atom_type_exists(name)
8340 class Residue(Hierarchy):
8341  r"""Proxy of C++ IMP::atom::Residue class."""
8342 
8343  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8344 
8345  def __init__(self, *args):
8346  r"""
8347  __init__(Residue self) -> Residue
8348  __init__(Residue self, Model m, ParticleIndex id) -> Residue
8349  __init__(Residue self, _ParticleAdaptor d) -> Residue
8350  """
8351  _IMP_atom.Residue_swiginit(self, _IMP_atom.new_Residue(*args))
8352 
8353  def show(self, *args):
8354  r"""show(Residue self, _ostream out=std::cout)"""
8355  return _IMP_atom.Residue_show(self, *args)
8356 
8357  @staticmethod
8358  def setup_particle(*args):
8359  r"""
8360  setup_particle(Model m, ParticleIndex pi, ResidueType t, int index, int insertion_code) -> Residue
8361  setup_particle(_ParticleAdaptor pa, ResidueType t, int index, int insertion_code) -> Residue
8362  setup_particle(Model m, ParticleIndex pi, ResidueType t, int index) -> Residue
8363  setup_particle(_ParticleAdaptor pa, ResidueType t, int index) -> Residue
8364  setup_particle(Model m, ParticleIndex pi, ResidueType t) -> Residue
8365  setup_particle(_ParticleAdaptor pa, ResidueType t) -> Residue
8366  setup_particle(Model m, ParticleIndex pi, Residue other) -> Residue
8367  setup_particle(_ParticleAdaptor pa, Residue other) -> Residue
8368  """
8369  return _IMP_atom.Residue_setup_particle(*args)
8370 
8371  @staticmethod
8372  def get_is_setup(*args):
8373  r"""
8374  get_is_setup(_ParticleAdaptor p) -> bool
8375  get_is_setup(Model m, ParticleIndex pi) -> bool
8376  """
8377  return _IMP_atom.Residue_get_is_setup(*args)
8378 
8379  def get_residue_type(self):
8380  r"""get_residue_type(Residue self) -> ResidueType"""
8381  return _IMP_atom.Residue_get_residue_type(self)
8382 
8383  def set_residue_type(self, t):
8384  r"""set_residue_type(Residue self, ResidueType t)"""
8385  return _IMP_atom.Residue_set_residue_type(self, t)
8386 
8387  def get_is_protein(self):
8388  r"""get_is_protein(Residue self) -> bool"""
8389  return _IMP_atom.Residue_get_is_protein(self)
8390 
8391  def get_is_dna(self):
8392  r"""get_is_dna(Residue self) -> bool"""
8393  return _IMP_atom.Residue_get_is_dna(self)
8394 
8395  def get_is_rna(self):
8396  r"""get_is_rna(Residue self) -> bool"""
8397  return _IMP_atom.Residue_get_is_rna(self)
8398 
8399  def get_index(self):
8400  r"""get_index(Residue self) -> IMP::Int"""
8401  return _IMP_atom.Residue_get_index(self)
8402 
8403  def set_index(self, t):
8404  r"""set_index(Residue self, IMP::Int t)"""
8405  return _IMP_atom.Residue_set_index(self, t)
8406 
8407  def get_insertion_code(self):
8408  r"""get_insertion_code(Residue self) -> char"""
8409  return _IMP_atom.Residue_get_insertion_code(self)
8410 
8411  def set_insertion_code(self, insertion_code):
8412  r"""set_insertion_code(Residue self, char insertion_code)"""
8413  return _IMP_atom.Residue_set_insertion_code(self, insertion_code)
8414 
8415  @staticmethod
8416  def get_index_key():
8417  r"""get_index_key() -> IntKey"""
8418  return _IMP_atom.Residue_get_index_key()
8419 
8420  @staticmethod
8421  def get_residue_type_key():
8422  r"""get_residue_type_key() -> IntKey"""
8423  return _IMP_atom.Residue_get_residue_type_key()
8424 
8425  @staticmethod
8426  def get_insertion_code_key():
8427  r"""get_insertion_code_key() -> IntKey"""
8428  return _IMP_atom.Residue_get_insertion_code_key()
8429 
8430  @staticmethod
8431  def get_type_changed_key():
8432  r"""get_type_changed_key() -> TriggerKey"""
8433  return _IMP_atom.Residue_get_type_changed_key()
8434 
8435  def add_attribute(self, *args):
8436  r"""
8437  add_attribute(Residue self, FloatKey k, IMP::Float v, bool opt)
8438  add_attribute(Residue self, FloatKey a0, IMP::Float a1)
8439  add_attribute(Residue self, IntKey a0, IMP::Int a1)
8440  add_attribute(Residue self, FloatsKey a0, IMP::Floats a1)
8441  add_attribute(Residue self, IntsKey a0, IMP::Ints a1)
8442  add_attribute(Residue self, StringKey a0, IMP::String a1)
8443  add_attribute(Residue self, ParticleIndexKey a0, Particle a1)
8444  add_attribute(Residue self, ObjectKey a0, Object a1)
8445  add_attribute(Residue self, SparseFloatKey a0, IMP::Float a1)
8446  add_attribute(Residue self, SparseIntKey a0, IMP::Int a1)
8447  add_attribute(Residue self, SparseStringKey a0, IMP::String a1)
8448  add_attribute(Residue self, SparseParticleIndexKey a0, ParticleIndex a1)
8449  """
8450  return _IMP_atom.Residue_add_attribute(self, *args)
8451 
8452  def get_value(self, *args):
8453  r"""
8454  get_value(Residue self, FloatKey a0) -> IMP::Float
8455  get_value(Residue self, IntKey a0) -> IMP::Int
8456  get_value(Residue self, FloatsKey a0) -> IMP::Floats
8457  get_value(Residue self, IntsKey a0) -> IMP::Ints
8458  get_value(Residue self, StringKey a0) -> IMP::String
8459  get_value(Residue self, ParticleIndexKey a0) -> Particle
8460  get_value(Residue self, ObjectKey a0) -> Object
8461  get_value(Residue self, SparseFloatKey a0) -> IMP::Float
8462  get_value(Residue self, SparseIntKey a0) -> IMP::Int
8463  get_value(Residue self, SparseStringKey a0) -> IMP::String
8464  get_value(Residue self, SparseParticleIndexKey a0) -> ParticleIndex
8465  """
8466  return _IMP_atom.Residue_get_value(self, *args)
8467 
8468  def set_value(self, *args):
8469  r"""
8470  set_value(Residue self, FloatKey a0, IMP::Float a1)
8471  set_value(Residue self, IntKey a0, IMP::Int a1)
8472  set_value(Residue self, FloatsKey a0, IMP::Floats a1)
8473  set_value(Residue self, IntsKey a0, IMP::Ints a1)
8474  set_value(Residue self, StringKey a0, IMP::String a1)
8475  set_value(Residue self, ParticleIndexKey a0, Particle a1)
8476  set_value(Residue self, ObjectKey a0, Object a1)
8477  set_value(Residue self, SparseFloatKey a0, IMP::Float a1)
8478  set_value(Residue self, SparseIntKey a0, IMP::Int a1)
8479  set_value(Residue self, SparseStringKey a0, IMP::String a1)
8480  set_value(Residue self, SparseParticleIndexKey a0, ParticleIndex a1)
8481  """
8482  return _IMP_atom.Residue_set_value(self, *args)
8483 
8484  def remove_attribute(self, *args):
8485  r"""
8486  remove_attribute(Residue self, FloatKey a0)
8487  remove_attribute(Residue self, IntKey a0)
8488  remove_attribute(Residue self, FloatsKey a0)
8489  remove_attribute(Residue self, IntsKey a0)
8490  remove_attribute(Residue self, StringKey a0)
8491  remove_attribute(Residue self, ParticleIndexKey a0)
8492  remove_attribute(Residue self, ObjectKey a0)
8493  remove_attribute(Residue self, SparseFloatKey a0)
8494  remove_attribute(Residue self, SparseIntKey a0)
8495  remove_attribute(Residue self, SparseStringKey a0)
8496  remove_attribute(Residue self, SparseParticleIndexKey a0)
8497  """
8498  return _IMP_atom.Residue_remove_attribute(self, *args)
8499 
8500  def has_attribute(self, *args):
8501  r"""
8502  has_attribute(Residue self, FloatKey a0) -> bool
8503  has_attribute(Residue self, IntKey a0) -> bool
8504  has_attribute(Residue self, FloatsKey a0) -> bool
8505  has_attribute(Residue self, IntsKey a0) -> bool
8506  has_attribute(Residue self, StringKey a0) -> bool
8507  has_attribute(Residue self, ParticleIndexKey a0) -> bool
8508  has_attribute(Residue self, ObjectKey a0) -> bool
8509  has_attribute(Residue self, SparseFloatKey a0) -> bool
8510  has_attribute(Residue self, SparseIntKey a0) -> bool
8511  has_attribute(Residue self, SparseStringKey a0) -> bool
8512  has_attribute(Residue self, SparseParticleIndexKey a0) -> bool
8513  """
8514  return _IMP_atom.Residue_has_attribute(self, *args)
8515 
8516  def get_derivative(self, a0):
8517  r"""get_derivative(Residue self, FloatKey a0) -> double"""
8518  return _IMP_atom.Residue_get_derivative(self, a0)
8519 
8520  def get_name(self):
8521  r"""get_name(Residue self) -> std::string"""
8522  return _IMP_atom.Residue_get_name(self)
8523 
8524  def clear_caches(self):
8525  r"""clear_caches(Residue self)"""
8526  return _IMP_atom.Residue_clear_caches(self)
8527 
8528  def set_name(self, a0):
8529  r"""set_name(Residue self, std::string a0)"""
8530  return _IMP_atom.Residue_set_name(self, a0)
8531 
8532  def set_check_level(self, a0):
8533  r"""set_check_level(Residue self, IMP::CheckLevel a0)"""
8534  return _IMP_atom.Residue_set_check_level(self, a0)
8535 
8536  def add_to_derivative(self, a0, a1, a2):
8537  r"""add_to_derivative(Residue self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8538  return _IMP_atom.Residue_add_to_derivative(self, a0, a1, a2)
8539 
8540  def set_is_optimized(self, a0, a1):
8541  r"""set_is_optimized(Residue self, FloatKey a0, bool a1)"""
8542  return _IMP_atom.Residue_set_is_optimized(self, a0, a1)
8543 
8544  def get_is_optimized(self, a0):
8545  r"""get_is_optimized(Residue self, FloatKey a0) -> bool"""
8546  return _IMP_atom.Residue_get_is_optimized(self, a0)
8547 
8548  def get_check_level(self):
8549  r"""get_check_level(Residue self) -> IMP::CheckLevel"""
8550  return _IMP_atom.Residue_get_check_level(self)
8551 
8552  def __eq__(self, *args):
8553  r"""
8554  __eq__(Residue self, Residue o) -> bool
8555  __eq__(Residue self, Particle d) -> bool
8556  """
8557  return _IMP_atom.Residue___eq__(self, *args)
8558 
8559  def __ne__(self, *args):
8560  r"""
8561  __ne__(Residue self, Residue o) -> bool
8562  __ne__(Residue self, Particle d) -> bool
8563  """
8564  return _IMP_atom.Residue___ne__(self, *args)
8565 
8566  def __le__(self, *args):
8567  r"""
8568  __le__(Residue self, Residue o) -> bool
8569  __le__(Residue self, Particle d) -> bool
8570  """
8571  return _IMP_atom.Residue___le__(self, *args)
8572 
8573  def __lt__(self, *args):
8574  r"""
8575  __lt__(Residue self, Residue o) -> bool
8576  __lt__(Residue self, Particle d) -> bool
8577  """
8578  return _IMP_atom.Residue___lt__(self, *args)
8579 
8580  def __ge__(self, *args):
8581  r"""
8582  __ge__(Residue self, Residue o) -> bool
8583  __ge__(Residue self, Particle d) -> bool
8584  """
8585  return _IMP_atom.Residue___ge__(self, *args)
8586 
8587  def __gt__(self, *args):
8588  r"""
8589  __gt__(Residue self, Residue o) -> bool
8590  __gt__(Residue self, Particle d) -> bool
8591  """
8592  return _IMP_atom.Residue___gt__(self, *args)
8593 
8594  def __hash__(self):
8595  r"""__hash__(Residue self) -> std::size_t"""
8596  return _IMP_atom.Residue___hash__(self)
8597 
8598  def __str__(self):
8599  r"""__str__(Residue self) -> std::string"""
8600  return _IMP_atom.Residue___str__(self)
8601 
8602  def __repr__(self):
8603  r"""__repr__(Residue self) -> std::string"""
8604  return _IMP_atom.Residue___repr__(self)
8605 
8606  def _get_as_binary(self):
8607  r"""_get_as_binary(Residue self) -> PyObject *"""
8608  return _IMP_atom.Residue__get_as_binary(self)
8609 
8610  def _set_from_binary(self, p):
8611  r"""_set_from_binary(Residue self, PyObject * p)"""
8612  return _IMP_atom.Residue__set_from_binary(self, p)
8613 
8614  def __getstate__(self):
8615  p = self._get_as_binary()
8616  if len(self.__dict__) > 1:
8617  d = self.__dict__.copy()
8618  del d['this']
8619  p = (d, p)
8620  return p
8621 
8622  def __setstate__(self, p):
8623  if not hasattr(self, 'this'):
8624  self.__init__()
8625  if isinstance(p, tuple):
8626  d, p = p
8627  self.__dict__.update(d)
8628  return self._set_from_binary(p)
8629 
8630  __swig_destroy__ = _IMP_atom.delete_Residue
8631 
8632 # Register Residue in _IMP_atom:
8633 _IMP_atom.Residue_swigregister(Residue)
8634 UNK = cvar.UNK
8635 GLY = cvar.GLY
8636 ALA = cvar.ALA
8637 VAL = cvar.VAL
8638 LEU = cvar.LEU
8639 ILE = cvar.ILE
8640 SER = cvar.SER
8641 THR = cvar.THR
8642 CYS = cvar.CYS
8643 MET = cvar.MET
8644 PRO = cvar.PRO
8645 ASP = cvar.ASP
8646 ASN = cvar.ASN
8647 GLU = cvar.GLU
8648 GLN = cvar.GLN
8649 LYS = cvar.LYS
8650 ARG = cvar.ARG
8651 HIS = cvar.HIS
8652 PHE = cvar.PHE
8653 TYR = cvar.TYR
8654 TRP = cvar.TRP
8655 ACE = cvar.ACE
8656 NH2 = cvar.NH2
8657 MSE = cvar.MSE
8658 ADE = cvar.ADE
8659 URA = cvar.URA
8660 CYT = cvar.CYT
8661 GUA = cvar.GUA
8662 THY = cvar.THY
8663 DADE = cvar.DADE
8664 DURA = cvar.DURA
8665 DCYT = cvar.DCYT
8666 DGUA = cvar.DGUA
8667 DTHY = cvar.DTHY
8668 HOH = cvar.HOH
8669 HEME = cvar.HEME
8670 POP = cvar.POP
8671 
8672 
8673 def get_next_residue(rd):
8674  r"""get_next_residue(Residue rd) -> Hierarchy"""
8675  return _IMP_atom.get_next_residue(rd)
8676 
8677 def get_previous_residue(rd):
8678  r"""get_previous_residue(Residue rd) -> Hierarchy"""
8679  return _IMP_atom.get_previous_residue(rd)
8680 
8681 def get_one_letter_code(c):
8682  r"""get_one_letter_code(ResidueType c) -> char"""
8683  return _IMP_atom.get_one_letter_code(c)
8684 BALLS = _IMP_atom.BALLS
8685 
8686 DENSITIES = _IMP_atom.DENSITIES
8687 
8688 class Representation(Hierarchy):
8689  r"""Proxy of C++ IMP::atom::Representation class."""
8690 
8691  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8692 
8693  @staticmethod
8694  def setup_particle(*args):
8695  r"""
8696  setup_particle(Model m, ParticleIndex pi) -> Representation
8697  setup_particle(_ParticleAdaptor pa) -> Representation
8698  setup_particle(Model m, ParticleIndex pi, double resolution) -> Representation
8699  setup_particle(_ParticleAdaptor pa, double resolution) -> Representation
8700  setup_particle(Model m, ParticleIndex pi, Representation other) -> Representation
8701  setup_particle(_ParticleAdaptor pa, Representation other) -> Representation
8702  """
8703  return _IMP_atom.Representation_setup_particle(*args)
8704 
8705  def __init__(self, *args):
8706  r"""
8707  __init__(Representation self) -> Representation
8708  __init__(Representation self, Model m, ParticleIndex id) -> Representation
8709  __init__(Representation self, _ParticleAdaptor d) -> Representation
8710  """
8711  _IMP_atom.Representation_swiginit(self, _IMP_atom.new_Representation(*args))
8712 
8713  def show(self, *args):
8714  r"""show(Representation self, _ostream out=std::cout)"""
8715  return _IMP_atom.Representation_show(self, *args)
8716 
8717  @staticmethod
8718  def get_is_setup(*args):
8719  r"""
8720  get_is_setup(_ParticleAdaptor p) -> bool
8721  get_is_setup(Model m, ParticleIndex pi) -> bool
8722  """
8723  return _IMP_atom.Representation_get_is_setup(*args)
8724 
8725  def get_representation(self, *args):
8726  r"""get_representation(Representation self, double resolution, IMP::atom::RepresentationType type=BALLS) -> Hierarchy"""
8727  return _IMP_atom.Representation_get_representation(self, *args)
8728 
8729  def get_representations(self, *args):
8730  r"""get_representations(Representation self, IMP::atom::RepresentationType type=BALLS) -> IMP::atom::Hierarchies"""
8731  return _IMP_atom.Representation_get_representations(self, *args)
8732 
8733  def add_representation(self, *args):
8734  r"""add_representation(Representation self, _ParticleIndexAdaptor rep, IMP::atom::RepresentationType type=BALLS, double resolution=-1)"""
8735  return _IMP_atom.Representation_add_representation(self, *args)
8736 
8737  def get_resolutions(self, *args):
8738  r"""get_resolutions(Representation self, IMP::atom::RepresentationType type=BALLS) -> IMP::Floats"""
8739  return _IMP_atom.Representation_get_resolutions(self, *args)
8740 
8741  def remove_representation(self, rep):
8742  r"""remove_representation(Representation self, _ParticleIndexAdaptor rep)"""
8743  return _IMP_atom.Representation_remove_representation(self, rep)
8744 
8745  def update_parents(self):
8746  r"""update_parents(Representation self)"""
8747  return _IMP_atom.Representation_update_parents(self)
8748 
8749  def add_attribute(self, *args):
8750  r"""
8751  add_attribute(Representation self, FloatKey k, IMP::Float v, bool opt)
8752  add_attribute(Representation self, FloatKey a0, IMP::Float a1)
8753  add_attribute(Representation self, IntKey a0, IMP::Int a1)
8754  add_attribute(Representation self, FloatsKey a0, IMP::Floats a1)
8755  add_attribute(Representation self, IntsKey a0, IMP::Ints a1)
8756  add_attribute(Representation self, StringKey a0, IMP::String a1)
8757  add_attribute(Representation self, ParticleIndexKey a0, Particle a1)
8758  add_attribute(Representation self, ObjectKey a0, Object a1)
8759  add_attribute(Representation self, SparseFloatKey a0, IMP::Float a1)
8760  add_attribute(Representation self, SparseIntKey a0, IMP::Int a1)
8761  add_attribute(Representation self, SparseStringKey a0, IMP::String a1)
8762  add_attribute(Representation self, SparseParticleIndexKey a0, ParticleIndex a1)
8763  """
8764  return _IMP_atom.Representation_add_attribute(self, *args)
8765 
8766  def get_value(self, *args):
8767  r"""
8768  get_value(Representation self, FloatKey a0) -> IMP::Float
8769  get_value(Representation self, IntKey a0) -> IMP::Int
8770  get_value(Representation self, FloatsKey a0) -> IMP::Floats
8771  get_value(Representation self, IntsKey a0) -> IMP::Ints
8772  get_value(Representation self, StringKey a0) -> IMP::String
8773  get_value(Representation self, ParticleIndexKey a0) -> Particle
8774  get_value(Representation self, ObjectKey a0) -> Object
8775  get_value(Representation self, SparseFloatKey a0) -> IMP::Float
8776  get_value(Representation self, SparseIntKey a0) -> IMP::Int
8777  get_value(Representation self, SparseStringKey a0) -> IMP::String
8778  get_value(Representation self, SparseParticleIndexKey a0) -> ParticleIndex
8779  """
8780  return _IMP_atom.Representation_get_value(self, *args)
8781 
8782  def set_value(self, *args):
8783  r"""
8784  set_value(Representation self, FloatKey a0, IMP::Float a1)
8785  set_value(Representation self, IntKey a0, IMP::Int a1)
8786  set_value(Representation self, FloatsKey a0, IMP::Floats a1)
8787  set_value(Representation self, IntsKey a0, IMP::Ints a1)
8788  set_value(Representation self, StringKey a0, IMP::String a1)
8789  set_value(Representation self, ParticleIndexKey a0, Particle a1)
8790  set_value(Representation self, ObjectKey a0, Object a1)
8791  set_value(Representation self, SparseFloatKey a0, IMP::Float a1)
8792  set_value(Representation self, SparseIntKey a0, IMP::Int a1)
8793  set_value(Representation self, SparseStringKey a0, IMP::String a1)
8794  set_value(Representation self, SparseParticleIndexKey a0, ParticleIndex a1)
8795  """
8796  return _IMP_atom.Representation_set_value(self, *args)
8797 
8798  def remove_attribute(self, *args):
8799  r"""
8800  remove_attribute(Representation self, FloatKey a0)
8801  remove_attribute(Representation self, IntKey a0)
8802  remove_attribute(Representation self, FloatsKey a0)
8803  remove_attribute(Representation self, IntsKey a0)
8804  remove_attribute(Representation self, StringKey a0)
8805  remove_attribute(Representation self, ParticleIndexKey a0)
8806  remove_attribute(Representation self, ObjectKey a0)
8807  remove_attribute(Representation self, SparseFloatKey a0)
8808  remove_attribute(Representation self, SparseIntKey a0)
8809  remove_attribute(Representation self, SparseStringKey a0)
8810  remove_attribute(Representation self, SparseParticleIndexKey a0)
8811  """
8812  return _IMP_atom.Representation_remove_attribute(self, *args)
8813 
8814  def has_attribute(self, *args):
8815  r"""
8816  has_attribute(Representation self, FloatKey a0) -> bool
8817  has_attribute(Representation self, IntKey a0) -> bool
8818  has_attribute(Representation self, FloatsKey a0) -> bool
8819  has_attribute(Representation self, IntsKey a0) -> bool
8820  has_attribute(Representation self, StringKey a0) -> bool
8821  has_attribute(Representation self, ParticleIndexKey a0) -> bool
8822  has_attribute(Representation self, ObjectKey a0) -> bool
8823  has_attribute(Representation self, SparseFloatKey a0) -> bool
8824  has_attribute(Representation self, SparseIntKey a0) -> bool
8825  has_attribute(Representation self, SparseStringKey a0) -> bool
8826  has_attribute(Representation self, SparseParticleIndexKey a0) -> bool
8827  """
8828  return _IMP_atom.Representation_has_attribute(self, *args)
8829 
8830  def get_derivative(self, a0):
8831  r"""get_derivative(Representation self, FloatKey a0) -> double"""
8832  return _IMP_atom.Representation_get_derivative(self, a0)
8833 
8834  def get_name(self):
8835  r"""get_name(Representation self) -> std::string"""
8836  return _IMP_atom.Representation_get_name(self)
8837 
8838  def clear_caches(self):
8839  r"""clear_caches(Representation self)"""
8840  return _IMP_atom.Representation_clear_caches(self)
8841 
8842  def set_name(self, a0):
8843  r"""set_name(Representation self, std::string a0)"""
8844  return _IMP_atom.Representation_set_name(self, a0)
8845 
8846  def set_check_level(self, a0):
8847  r"""set_check_level(Representation self, IMP::CheckLevel a0)"""
8848  return _IMP_atom.Representation_set_check_level(self, a0)
8849 
8850  def add_to_derivative(self, a0, a1, a2):
8851  r"""add_to_derivative(Representation self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8852  return _IMP_atom.Representation_add_to_derivative(self, a0, a1, a2)
8853 
8854  def set_is_optimized(self, a0, a1):
8855  r"""set_is_optimized(Representation self, FloatKey a0, bool a1)"""
8856  return _IMP_atom.Representation_set_is_optimized(self, a0, a1)
8857 
8858  def get_is_optimized(self, a0):
8859  r"""get_is_optimized(Representation self, FloatKey a0) -> bool"""
8860  return _IMP_atom.Representation_get_is_optimized(self, a0)
8861 
8862  def get_check_level(self):
8863  r"""get_check_level(Representation self) -> IMP::CheckLevel"""
8864  return _IMP_atom.Representation_get_check_level(self)
8865 
8866  def __eq__(self, *args):
8867  r"""
8868  __eq__(Representation self, Representation o) -> bool
8869  __eq__(Representation self, Particle d) -> bool
8870  """
8871  return _IMP_atom.Representation___eq__(self, *args)
8872 
8873  def __ne__(self, *args):
8874  r"""
8875  __ne__(Representation self, Representation o) -> bool
8876  __ne__(Representation self, Particle d) -> bool
8877  """
8878  return _IMP_atom.Representation___ne__(self, *args)
8879 
8880  def __le__(self, *args):
8881  r"""
8882  __le__(Representation self, Representation o) -> bool
8883  __le__(Representation self, Particle d) -> bool
8884  """
8885  return _IMP_atom.Representation___le__(self, *args)
8886 
8887  def __lt__(self, *args):
8888  r"""
8889  __lt__(Representation self, Representation o) -> bool
8890  __lt__(Representation self, Particle d) -> bool
8891  """
8892  return _IMP_atom.Representation___lt__(self, *args)
8893 
8894  def __ge__(self, *args):
8895  r"""
8896  __ge__(Representation self, Representation o) -> bool
8897  __ge__(Representation self, Particle d) -> bool
8898  """
8899  return _IMP_atom.Representation___ge__(self, *args)
8900 
8901  def __gt__(self, *args):
8902  r"""
8903  __gt__(Representation self, Representation o) -> bool
8904  __gt__(Representation self, Particle d) -> bool
8905  """
8906  return _IMP_atom.Representation___gt__(self, *args)
8907 
8908  def __hash__(self):
8909  r"""__hash__(Representation self) -> std::size_t"""
8910  return _IMP_atom.Representation___hash__(self)
8911 
8912  def __str__(self):
8913  r"""__str__(Representation self) -> std::string"""
8914  return _IMP_atom.Representation___str__(self)
8915 
8916  def __repr__(self):
8917  r"""__repr__(Representation self) -> std::string"""
8918  return _IMP_atom.Representation___repr__(self)
8919 
8920  def _get_as_binary(self):
8921  r"""_get_as_binary(Representation self) -> PyObject *"""
8922  return _IMP_atom.Representation__get_as_binary(self)
8923 
8924  def _set_from_binary(self, p):
8925  r"""_set_from_binary(Representation self, PyObject * p)"""
8926  return _IMP_atom.Representation__set_from_binary(self, p)
8927 
8928  def __getstate__(self):
8929  p = self._get_as_binary()
8930  if len(self.__dict__) > 1:
8931  d = self.__dict__.copy()
8932  del d['this']
8933  p = (d, p)
8934  return p
8935 
8936  def __setstate__(self, p):
8937  if not hasattr(self, 'this'):
8938  self.__init__()
8939  if isinstance(p, tuple):
8940  d, p = p
8941  self.__dict__.update(d)
8942  return self._set_from_binary(p)
8943 
8944  __swig_destroy__ = _IMP_atom.delete_Representation
8945 
8946 # Register Representation in _IMP_atom:
8947 _IMP_atom.Representation_swigregister(Representation)
8948 ALL_RESOLUTIONS = cvar.ALL_RESOLUTIONS
8949 
8950 
8951 def get_resolution(*args):
8952  r"""
8953  get_resolution(Model m, ParticleIndex pi) -> double
8954  get_resolution(Hierarchy h) -> double
8955  """
8956  return _IMP_atom.get_resolution(*args)
8957 
8958 def get_representation(h, nothrow=False):
8959  r"""get_representation(Hierarchy h, bool nothrow=False) -> Representation"""
8960  return _IMP_atom.get_representation(h, nothrow)
8961 
8962 def show_with_representations(*args):
8963  r"""show_with_representations(Hierarchy h, _ostream out=std::cout)"""
8964  return _IMP_atom.show_with_representations(*args)
8965 class State(Hierarchy):
8966  r"""Proxy of C++ IMP::atom::State class."""
8967 
8968  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8969 
8970  @staticmethod
8971  def setup_particle(*args):
8972  r"""
8973  setup_particle(Model m, ParticleIndex pi, unsigned int index) -> State
8974  setup_particle(_ParticleAdaptor pa, unsigned int index) -> State
8975  setup_particle(Model m, ParticleIndex pi, State other) -> State
8976  setup_particle(_ParticleAdaptor pa, State other) -> State
8977  """
8978  return _IMP_atom.State_setup_particle(*args)
8979 
8980  def __init__(self, *args):
8981  r"""
8982  __init__(State self) -> State
8983  __init__(State self, Model m, ParticleIndex id) -> State
8984  __init__(State self, _ParticleAdaptor d) -> State
8985  """
8986  _IMP_atom.State_swiginit(self, _IMP_atom.new_State(*args))
8987 
8988  def show(self, *args):
8989  r"""show(State self, _ostream out=std::cout)"""
8990  return _IMP_atom.State_show(self, *args)
8991 
8992  @staticmethod
8993  def get_is_setup(*args):
8994  r"""
8995  get_is_setup(_ParticleAdaptor p) -> bool
8996  get_is_setup(Model m, ParticleIndex pi) -> bool
8997  """
8998  return _IMP_atom.State_get_is_setup(*args)
8999 
9000  def get_state_index(self):
9001  r"""get_state_index(State self) -> unsigned int"""
9002  return _IMP_atom.State_get_state_index(self)
9003 
9004  def add_attribute(self, *args):
9005  r"""
9006  add_attribute(State self, FloatKey k, IMP::Float v, bool opt)
9007  add_attribute(State self, FloatKey a0, IMP::Float a1)
9008  add_attribute(State self, IntKey a0, IMP::Int a1)
9009  add_attribute(State self, FloatsKey a0, IMP::Floats a1)
9010  add_attribute(State self, IntsKey a0, IMP::Ints a1)
9011  add_attribute(State self, StringKey a0, IMP::String a1)
9012  add_attribute(State self, ParticleIndexKey a0, Particle a1)
9013  add_attribute(State self, ObjectKey a0, Object a1)
9014  add_attribute(State self, SparseFloatKey a0, IMP::Float a1)
9015  add_attribute(State self, SparseIntKey a0, IMP::Int a1)
9016  add_attribute(State self, SparseStringKey a0, IMP::String a1)
9017  add_attribute(State self, SparseParticleIndexKey a0, ParticleIndex a1)
9018  """
9019  return _IMP_atom.State_add_attribute(self, *args)
9020 
9021  def get_value(self, *args):
9022  r"""
9023  get_value(State self, FloatKey a0) -> IMP::Float
9024  get_value(State self, IntKey a0) -> IMP::Int
9025  get_value(State self, FloatsKey a0) -> IMP::Floats
9026  get_value(State self, IntsKey a0) -> IMP::Ints
9027  get_value(State self, StringKey a0) -> IMP::String
9028  get_value(State self, ParticleIndexKey a0) -> Particle
9029  get_value(State self, ObjectKey a0) -> Object
9030  get_value(State self, SparseFloatKey a0) -> IMP::Float
9031  get_value(State self, SparseIntKey a0) -> IMP::Int
9032  get_value(State self, SparseStringKey a0) -> IMP::String
9033  get_value(State self, SparseParticleIndexKey a0) -> ParticleIndex
9034  """
9035  return _IMP_atom.State_get_value(self, *args)
9036 
9037  def set_value(self, *args):
9038  r"""
9039  set_value(State self, FloatKey a0, IMP::Float a1)
9040  set_value(State self, IntKey a0, IMP::Int a1)
9041  set_value(State self, FloatsKey a0, IMP::Floats a1)
9042  set_value(State self, IntsKey a0, IMP::Ints a1)
9043  set_value(State self, StringKey a0, IMP::String a1)
9044  set_value(State self, ParticleIndexKey a0, Particle a1)
9045  set_value(State self, ObjectKey a0, Object a1)
9046  set_value(State self, SparseFloatKey a0, IMP::Float a1)
9047  set_value(State self, SparseIntKey a0, IMP::Int a1)
9048  set_value(State self, SparseStringKey a0, IMP::String a1)
9049  set_value(State self, SparseParticleIndexKey a0, ParticleIndex a1)
9050  """
9051  return _IMP_atom.State_set_value(self, *args)
9052 
9053  def remove_attribute(self, *args):
9054  r"""
9055  remove_attribute(State self, FloatKey a0)
9056  remove_attribute(State self, IntKey a0)
9057  remove_attribute(State self, FloatsKey a0)
9058  remove_attribute(State self, IntsKey a0)
9059  remove_attribute(State self, StringKey a0)
9060  remove_attribute(State self, ParticleIndexKey a0)
9061  remove_attribute(State self, ObjectKey a0)
9062  remove_attribute(State self, SparseFloatKey a0)
9063  remove_attribute(State self, SparseIntKey a0)
9064  remove_attribute(State self, SparseStringKey a0)
9065  remove_attribute(State self, SparseParticleIndexKey a0)
9066  """
9067  return _IMP_atom.State_remove_attribute(self, *args)
9068 
9069  def has_attribute(self, *args):
9070  r"""
9071  has_attribute(State self, FloatKey a0) -> bool
9072  has_attribute(State self, IntKey a0) -> bool
9073  has_attribute(State self, FloatsKey a0) -> bool
9074  has_attribute(State self, IntsKey a0) -> bool
9075  has_attribute(State self, StringKey a0) -> bool
9076  has_attribute(State self, ParticleIndexKey a0) -> bool
9077  has_attribute(State self, ObjectKey a0) -> bool
9078  has_attribute(State self, SparseFloatKey a0) -> bool
9079  has_attribute(State self, SparseIntKey a0) -> bool
9080  has_attribute(State self, SparseStringKey a0) -> bool
9081  has_attribute(State self, SparseParticleIndexKey a0) -> bool
9082  """
9083  return _IMP_atom.State_has_attribute(self, *args)
9084 
9085  def get_derivative(self, a0):
9086  r"""get_derivative(State self, FloatKey a0) -> double"""
9087  return _IMP_atom.State_get_derivative(self, a0)
9088 
9089  def get_name(self):
9090  r"""get_name(State self) -> std::string"""
9091  return _IMP_atom.State_get_name(self)
9092 
9093  def clear_caches(self):
9094  r"""clear_caches(State self)"""
9095  return _IMP_atom.State_clear_caches(self)
9096 
9097  def set_name(self, a0):
9098  r"""set_name(State self, std::string a0)"""
9099  return _IMP_atom.State_set_name(self, a0)
9100 
9101  def set_check_level(self, a0):
9102  r"""set_check_level(State self, IMP::CheckLevel a0)"""
9103  return _IMP_atom.State_set_check_level(self, a0)
9104 
9105  def add_to_derivative(self, a0, a1, a2):
9106  r"""add_to_derivative(State self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
9107  return _IMP_atom.State_add_to_derivative(self, a0, a1, a2)
9108 
9109  def set_is_optimized(self, a0, a1):
9110  r"""set_is_optimized(State self, FloatKey a0, bool a1)"""
9111  return _IMP_atom.State_set_is_optimized(self, a0, a1)
9112 
9113  def get_is_optimized(self, a0):
9114  r"""get_is_optimized(State self, FloatKey a0) -> bool"""
9115  return _IMP_atom.State_get_is_optimized(self, a0)
9116 
9117  def get_check_level(self):
9118  r"""get_check_level(State self) -> IMP::CheckLevel"""
9119  return _IMP_atom.State_get_check_level(self)
9120 
9121  def __eq__(self, *args):
9122  r"""
9123  __eq__(State self, State o) -> bool
9124  __eq__(State self, Particle d) -> bool
9125  """
9126  return _IMP_atom.State___eq__(self, *args)
9127 
9128  def __ne__(self, *args):
9129  r"""
9130  __ne__(State self, State o) -> bool
9131  __ne__(State self, Particle d) -> bool
9132  """
9133  return _IMP_atom.State___ne__(self, *args)
9134 
9135  def __le__(self, *args):
9136  r"""
9137  __le__(State self, State o) -> bool
9138  __le__(State self, Particle d) -> bool
9139  """
9140  return _IMP_atom.State___le__(self, *args)
9141 
9142  def __lt__(self, *args):
9143  r"""
9144  __lt__(State self, State o) -> bool
9145  __lt__(State self, Particle d) -> bool
9146  """
9147  return _IMP_atom.State___lt__(self, *args)
9148 
9149  def __ge__(self, *args):
9150  r"""
9151  __ge__(State self, State o) -> bool
9152  __ge__(State self, Particle d) -> bool
9153  """
9154  return _IMP_atom.State___ge__(self, *args)
9155 
9156  def __gt__(self, *args):
9157  r"""
9158  __gt__(State self, State o) -> bool
9159  __gt__(State self, Particle d) -> bool
9160  """
9161  return _IMP_atom.State___gt__(self, *args)
9162 
9163  def __hash__(self):
9164  r"""__hash__(State self) -> std::size_t"""
9165  return _IMP_atom.State___hash__(self)
9166 
9167  def __str__(self):
9168  r"""__str__(State self) -> std::string"""
9169  return _IMP_atom.State___str__(self)
9170 
9171  def __repr__(self):
9172  r"""__repr__(State self) -> std::string"""
9173  return _IMP_atom.State___repr__(self)
9174 
9175  def _get_as_binary(self):
9176  r"""_get_as_binary(State self) -> PyObject *"""
9177  return _IMP_atom.State__get_as_binary(self)
9178 
9179  def _set_from_binary(self, p):
9180  r"""_set_from_binary(State self, PyObject * p)"""
9181  return _IMP_atom.State__set_from_binary(self, p)
9182 
9183  def __getstate__(self):
9184  p = self._get_as_binary()
9185  if len(self.__dict__) > 1:
9186  d = self.__dict__.copy()
9187  del d['this']
9188  p = (d, p)
9189  return p
9190 
9191  def __setstate__(self, p):
9192  if not hasattr(self, 'this'):
9193  self.__init__()
9194  if isinstance(p, tuple):
9195  d, p = p
9196  self.__dict__.update(d)
9197  return self._set_from_binary(p)
9198 
9199  __swig_destroy__ = _IMP_atom.delete_State
9200 
9201 # Register State in _IMP_atom:
9202 _IMP_atom.State_swigregister(State)
9203 
9204 def get_state_index(h):
9205  r"""get_state_index(Hierarchy h) -> int"""
9206  return _IMP_atom.get_state_index(h)
9207 
9208 def get_phi_dihedral_atoms(rd):
9209  r"""get_phi_dihedral_atoms(Residue rd) -> IMP::atom::Atoms"""
9210  return _IMP_atom.get_phi_dihedral_atoms(rd)
9211 
9212 def get_psi_dihedral_atoms(rd):
9213  r"""get_psi_dihedral_atoms(Residue rd) -> IMP::atom::Atoms"""
9214  return _IMP_atom.get_psi_dihedral_atoms(rd)
9215 
9216 def get_omega_dihedral_atoms(rd):
9217  r"""get_omega_dihedral_atoms(Residue rd) -> IMP::atom::Atoms"""
9218  return _IMP_atom.get_omega_dihedral_atoms(rd)
9219 
9221  r"""get_chi_dihedral_atom_types(ResidueType rt) -> IMP::Vector< IMP::atom::AtomTypes >"""
9222  return _IMP_atom.get_chi_dihedral_atom_types(rt)
9223 
9224 def get_chi_dihedral_atoms(rd):
9225  r"""get_chi_dihedral_atoms(Residue rd) -> IMP::Vector< IMP::atom::Atoms >"""
9226  return _IMP_atom.get_chi_dihedral_atoms(rd)
9227 
9229  r"""get_chi_dihedral_particle_indexes(Residue rd) -> IMP::ParticleIndexQuads"""
9230  return _IMP_atom.get_chi_dihedral_particle_indexes(rd)
9231 class Molecule(Hierarchy):
9232  r"""Proxy of C++ IMP::atom::Molecule class."""
9233 
9234  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9235 
9236  def __init__(self, *args):
9237  r"""
9238  __init__(Molecule self) -> Molecule
9239  __init__(Molecule self, Model m, ParticleIndex id) -> Molecule
9240  __init__(Molecule self, _ParticleAdaptor d) -> Molecule
9241  """
9242  _IMP_atom.Molecule_swiginit(self, _IMP_atom.new_Molecule(*args))
9243 
9244  def show(self, *args):
9245  r"""show(Molecule self, _ostream out=std::cout)"""
9246  return _IMP_atom.Molecule_show(self, *args)
9247 
9248  @staticmethod
9249  def setup_particle(*args):
9250  r"""
9251  setup_particle(Model m, ParticleIndex pi) -> Molecule
9252  setup_particle(_ParticleAdaptor pa) -> Molecule
9253  setup_particle(Model m, ParticleIndex pi, Molecule other) -> Molecule
9254  setup_particle(_ParticleAdaptor pa, Molecule other) -> Molecule
9255  """
9256  return _IMP_atom.Molecule_setup_particle(*args)
9257 
9258  @staticmethod
9259  def get_is_setup(*args):
9260  r"""
9261  get_is_setup(_ParticleAdaptor p) -> bool
9262  get_is_setup(Model m, ParticleIndex pi) -> bool
9263  """
9264  return _IMP_atom.Molecule_get_is_setup(*args)
9265 
9266  def add_attribute(self, *args):
9267  r"""
9268  add_attribute(Molecule self, FloatKey k, IMP::Float v, bool opt)
9269  add_attribute(Molecule self, FloatKey a0, IMP::Float a1)
9270  add_attribute(Molecule self, IntKey a0, IMP::Int a1)
9271  add_attribute(Molecule self, FloatsKey a0, IMP::Floats a1)
9272  add_attribute(Molecule self, IntsKey a0, IMP::Ints a1)
9273  add_attribute(Molecule self, StringKey a0, IMP::String a1)
9274  add_attribute(Molecule self, ParticleIndexKey a0, Particle a1)
9275  add_attribute(Molecule self, ObjectKey a0, Object a1)
9276  add_attribute(Molecule self, SparseFloatKey a0, IMP::Float a1)
9277  add_attribute(Molecule self, SparseIntKey a0, IMP::Int a1)
9278  add_attribute(Molecule self, SparseStringKey a0, IMP::String a1)
9279  add_attribute(Molecule self, SparseParticleIndexKey a0, ParticleIndex a1)
9280  """
9281  return _IMP_atom.Molecule_add_attribute(self, *args)
9282 
9283  def get_value(self, *args):
9284  r"""
9285  get_value(Molecule self, FloatKey a0) -> IMP::Float
9286  get_value(Molecule self, IntKey a0) -> IMP::Int
9287  get_value(Molecule self, FloatsKey a0) -> IMP::Floats
9288  get_value(Molecule self, IntsKey a0) -> IMP::Ints
9289  get_value(Molecule self, StringKey a0) -> IMP::String
9290  get_value(Molecule self, ParticleIndexKey a0) -> Particle
9291  get_value(Molecule self, ObjectKey a0) -> Object
9292  get_value(Molecule self, SparseFloatKey a0) -> IMP::Float
9293  get_value(Molecule self, SparseIntKey a0) -> IMP::Int
9294  get_value(Molecule self, SparseStringKey a0) -> IMP::String
9295  get_value(Molecule self, SparseParticleIndexKey a0) -> ParticleIndex
9296  """
9297  return _IMP_atom.Molecule_get_value(self, *args)
9298 
9299  def set_value(self, *args):
9300  r"""
9301  set_value(Molecule self, FloatKey a0, IMP::Float a1)
9302  set_value(Molecule self, IntKey a0, IMP::Int a1)
9303  set_value(Molecule self, FloatsKey a0, IMP::Floats a1)
9304  set_value(Molecule self, IntsKey a0, IMP::Ints a1)
9305  set_value(Molecule self, StringKey a0, IMP::String a1)
9306  set_value(Molecule self, ParticleIndexKey a0, Particle a1)
9307  set_value(Molecule self, ObjectKey a0, Object a1)
9308  set_value(Molecule self, SparseFloatKey a0, IMP::Float a1)
9309  set_value(Molecule self, SparseIntKey a0, IMP::Int a1)
9310  set_value(Molecule self, SparseStringKey a0, IMP::String a1)
9311  set_value(Molecule self, SparseParticleIndexKey a0, ParticleIndex a1)
9312  """
9313  return _IMP_atom.Molecule_set_value(self, *args)
9314 
9315  def remove_attribute(self, *args):
9316  r"""
9317  remove_attribute(Molecule self, FloatKey a0)
9318  remove_attribute(Molecule self, IntKey a0)
9319  remove_attribute(Molecule self, FloatsKey a0)
9320  remove_attribute(Molecule self, IntsKey a0)
9321  remove_attribute(Molecule self, StringKey a0)
9322  remove_attribute(Molecule self, ParticleIndexKey a0)
9323  remove_attribute(Molecule self, ObjectKey a0)
9324  remove_attribute(Molecule self, SparseFloatKey a0)
9325  remove_attribute(Molecule self, SparseIntKey a0)
9326  remove_attribute(Molecule self, SparseStringKey a0)
9327  remove_attribute(Molecule self, SparseParticleIndexKey a0)
9328  """
9329  return _IMP_atom.Molecule_remove_attribute(self, *args)
9330 
9331  def has_attribute(self, *args):
9332  r"""
9333  has_attribute(Molecule self, FloatKey a0) -> bool
9334  has_attribute(Molecule self, IntKey a0) -> bool
9335  has_attribute(Molecule self, FloatsKey a0) -> bool
9336  has_attribute(Molecule self, IntsKey a0) -> bool
9337  has_attribute(Molecule self, StringKey a0) -> bool
9338  has_attribute(Molecule self, ParticleIndexKey a0) -> bool
9339  has_attribute(Molecule self, ObjectKey a0) -> bool
9340  has_attribute(Molecule self, SparseFloatKey a0) -> bool
9341  has_attribute(Molecule self, SparseIntKey a0) -> bool
9342  has_attribute(Molecule self, SparseStringKey a0) -> bool
9343  has_attribute(Molecule self, SparseParticleIndexKey a0) -> bool
9344  """
9345  return _IMP_atom.Molecule_has_attribute(self, *args)
9346 
9347  def get_derivative(self, a0):
9348  r"""get_derivative(Molecule self, FloatKey a0) -> double"""
9349  return _IMP_atom.Molecule_get_derivative(self, a0)
9350 
9351  def get_name(self):
9352  r"""get_name(Molecule self) -> std::string"""
9353  return _IMP_atom.Molecule_get_name(self)
9354 
9355  def clear_caches(self):
9356  r"""clear_caches(Molecule self)"""
9357  return _IMP_atom.Molecule_clear_caches(self)
9358 
9359  def set_name(self, a0):
9360  r"""set_name(Molecule self, std::string a0)"""
9361  return _IMP_atom.Molecule_set_name(self, a0)
9362 
9363  def set_check_level(self, a0):
9364  r"""set_check_level(Molecule self, IMP::CheckLevel a0)"""
9365  return _IMP_atom.Molecule_set_check_level(self, a0)
9366 
9367  def add_to_derivative(self, a0, a1, a2):
9368  r"""add_to_derivative(Molecule self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
9369  return _IMP_atom.Molecule_add_to_derivative(self, a0, a1, a2)
9370 
9371  def set_is_optimized(self, a0, a1):
9372  r"""set_is_optimized(Molecule self, FloatKey a0, bool a1)"""
9373  return _IMP_atom.Molecule_set_is_optimized(self, a0, a1)
9374 
9375  def get_is_optimized(self, a0):
9376  r"""get_is_optimized(Molecule self, FloatKey a0) -> bool"""
9377  return _IMP_atom.Molecule_get_is_optimized(self, a0)
9378 
9379  def get_check_level(self):
9380  r"""get_check_level(Molecule self) -> IMP::CheckLevel"""
9381  return _IMP_atom.Molecule_get_check_level(self)
9382 
9383  def __eq__(self, *args):
9384  r"""
9385  __eq__(Molecule self, Molecule o) -> bool
9386  __eq__(Molecule self, Particle d) -> bool
9387  """
9388  return _IMP_atom.Molecule___eq__(self, *args)
9389 
9390  def __ne__(self, *args):
9391  r"""
9392  __ne__(Molecule self, Molecule o) -> bool
9393  __ne__(Molecule self, Particle d) -> bool
9394  """
9395  return _IMP_atom.Molecule___ne__(self, *args)
9396 
9397  def __le__(self, *args):
9398  r"""
9399  __le__(Molecule self, Molecule o) -> bool
9400  __le__(Molecule self, Particle d) -> bool
9401  """
9402  return _IMP_atom.Molecule___le__(self, *args)
9403 
9404  def __lt__(self, *args):
9405  r"""
9406  __lt__(Molecule self, Molecule o) -> bool
9407  __lt__(Molecule self, Particle d) -> bool
9408  """
9409  return _IMP_atom.Molecule___lt__(self, *args)
9410 
9411  def __ge__(self, *args):
9412  r"""
9413  __ge__(Molecule self, Molecule o) -> bool
9414  __ge__(Molecule self, Particle d) -> bool
9415  """
9416  return _IMP_atom.Molecule___ge__(self, *args)
9417 
9418  def __gt__(self, *args):
9419  r"""
9420  __gt__(Molecule self, Molecule o) -> bool
9421  __gt__(Molecule self, Particle d) -> bool
9422  """
9423  return _IMP_atom.Molecule___gt__(self, *args)
9424 
9425  def __hash__(self):
9426  r"""__hash__(Molecule self) -> std::size_t"""
9427  return _IMP_atom.Molecule___hash__(self)
9428 
9429  def __str__(self):
9430  r"""__str__(Molecule self) -> std::string"""
9431  return _IMP_atom.Molecule___str__(self)
9432 
9433  def __repr__(self):
9434  r"""__repr__(Molecule self) -> std::string"""
9435  return _IMP_atom.Molecule___repr__(self)
9436 
9437  def _get_as_binary(self):
9438  r"""_get_as_binary(Molecule self) -> PyObject *"""
9439  return _IMP_atom.Molecule__get_as_binary(self)
9440 
9441  def _set_from_binary(self, p):
9442  r"""_set_from_binary(Molecule self, PyObject * p)"""
9443  return _IMP_atom.Molecule__set_from_binary(self, p)
9444 
9445  def __getstate__(self):
9446  p = self._get_as_binary()
9447  if len(self.__dict__) > 1:
9448  d = self.__dict__.copy()
9449  del d['this']
9450  p = (d, p)
9451  return p
9452 
9453  def __setstate__(self, p):
9454  if not hasattr(self, 'this'):
9455  self.__init__()
9456  if isinstance(p, tuple):
9457  d, p = p
9458  self.__dict__.update(d)
9459  return self._set_from_binary(p)
9460 
9461  __swig_destroy__ = _IMP_atom.delete_Molecule
9462 
9463 # Register Molecule in _IMP_atom:
9464 _IMP_atom.Molecule_swigregister(Molecule)
9465 
9466 def get_molecule_name(h):
9467  r"""get_molecule_name(Hierarchy h) -> std::string"""
9468  return _IMP_atom.get_molecule_name(h)
9469 class Copy(Molecule):
9470  r"""Proxy of C++ IMP::atom::Copy class."""
9471 
9472  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9473 
9474  @staticmethod
9475  def get_copy_index_key():
9476  r"""get_copy_index_key() -> IntKey"""
9477  return _IMP_atom.Copy_get_copy_index_key()
9478 
9479  def __init__(self, *args):
9480  r"""
9481  __init__(Copy self) -> Copy
9482  __init__(Copy self, Model m, ParticleIndex id) -> Copy
9483  __init__(Copy self, _ParticleAdaptor d) -> Copy
9484  """
9485  _IMP_atom.Copy_swiginit(self, _IMP_atom.new_Copy(*args))
9486 
9487  def show(self, *args):
9488  r"""show(Copy self, _ostream out=std::cout)"""
9489  return _IMP_atom.Copy_show(self, *args)
9490 
9491  @staticmethod
9492  def setup_particle(*args):
9493  r"""
9494  setup_particle(Model m, ParticleIndex pi, IMP::Int number) -> Copy
9495  setup_particle(_ParticleAdaptor pa, IMP::Int number) -> Copy
9496  """
9497  return _IMP_atom.Copy_setup_particle(*args)
9498 
9499  @staticmethod
9500  def get_is_setup(*args):
9501  r"""
9502  get_is_setup(_ParticleAdaptor p) -> bool
9503  get_is_setup(Model m, ParticleIndex pi) -> bool
9504  """
9505  return _IMP_atom.Copy_get_is_setup(*args)
9506 
9507  def get_copy_index(self):
9508  r"""get_copy_index(Copy self) -> int"""
9509  return _IMP_atom.Copy_get_copy_index(self)
9510 
9511  def add_attribute(self, *args):
9512  r"""
9513  add_attribute(Copy self, FloatKey k, IMP::Float v, bool opt)
9514  add_attribute(Copy self, FloatKey a0, IMP::Float a1)
9515  add_attribute(Copy self, IntKey a0, IMP::Int a1)
9516  add_attribute(Copy self, FloatsKey a0, IMP::Floats a1)
9517  add_attribute(Copy self, IntsKey a0, IMP::Ints a1)
9518  add_attribute(Copy self, StringKey a0, IMP::String a1)
9519  add_attribute(Copy self, ParticleIndexKey a0, Particle a1)
9520  add_attribute(Copy self, ObjectKey a0, Object a1)
9521  add_attribute(Copy self, SparseFloatKey a0, IMP::Float a1)
9522  add_attribute(Copy self, SparseIntKey a0, IMP::Int a1)
9523  add_attribute(Copy self, SparseStringKey a0, IMP::String a1)
9524  add_attribute(Copy self, SparseParticleIndexKey a0, ParticleIndex a1)
9525  """
9526  return _IMP_atom.Copy_add_attribute(self, *args)
9527 
9528  def get_value(self, *args):
9529  r"""
9530  get_value(Copy self, FloatKey a0) -> IMP::Float
9531  get_value(Copy self, IntKey a0) -> IMP::Int
9532  get_value(Copy self, FloatsKey a0) -> IMP::Floats
9533  get_value(Copy self, IntsKey a0) -> IMP::Ints
9534  get_value(Copy self, StringKey a0) -> IMP::String
9535  get_value(Copy self, ParticleIndexKey a0) -> Particle
9536  get_value(Copy self, ObjectKey a0) -> Object
9537  get_value(Copy self, SparseFloatKey a0) -> IMP::Float
9538  get_value(Copy self, SparseIntKey a0) -> IMP::Int
9539  get_value(Copy self, SparseStringKey a0) -> IMP::String
9540  get_value(Copy self, SparseParticleIndexKey a0) -> ParticleIndex
9541  """
9542  return _IMP_atom.Copy_get_value(self, *args)
9543 
9544  def set_value(self, *args):
9545  r"""
9546  set_value(Copy self, FloatKey a0, IMP::Float a1)
9547  set_value(Copy self, IntKey a0, IMP::Int a1)
9548  set_value(Copy self, FloatsKey a0, IMP::Floats a1)
9549  set_value(Copy self, IntsKey a0, IMP::Ints a1)
9550  set_value(Copy self, StringKey a0, IMP::String a1)
9551  set_value(Copy self, ParticleIndexKey a0, Particle a1)
9552  set_value(Copy self, ObjectKey a0, Object a1)
9553  set_value(Copy self, SparseFloatKey a0, IMP::Float a1)
9554  set_value(Copy self, SparseIntKey a0, IMP::Int a1)
9555  set_value(Copy self, SparseStringKey a0, IMP::String a1)
9556  set_value(Copy self, SparseParticleIndexKey a0, ParticleIndex a1)
9557  """
9558  return _IMP_atom.Copy_set_value(self, *args)
9559 
9560  def remove_attribute(self, *args):
9561  r"""
9562  remove_attribute(Copy self, FloatKey a0)
9563  remove_attribute(Copy self, IntKey a0)
9564  remove_attribute(Copy self, FloatsKey a0)
9565  remove_attribute(Copy self, IntsKey a0)
9566  remove_attribute(Copy self, StringKey a0)
9567  remove_attribute(Copy self, ParticleIndexKey a0)
9568  remove_attribute(Copy self, ObjectKey a0)
9569  remove_attribute(Copy self, SparseFloatKey a0)
9570  remove_attribute(Copy self, SparseIntKey a0)
9571  remove_attribute(Copy self, SparseStringKey a0)
9572  remove_attribute(Copy self, SparseParticleIndexKey a0)
9573  """
9574  return _IMP_atom.Copy_remove_attribute(self, *args)
9575 
9576  def has_attribute(self, *args):
9577  r"""
9578  has_attribute(Copy self, FloatKey a0) -> bool
9579  has_attribute(Copy self, IntKey a0) -> bool
9580  has_attribute(Copy self, FloatsKey a0) -> bool
9581  has_attribute(Copy self, IntsKey a0) -> bool
9582  has_attribute(Copy self, StringKey a0) -> bool
9583  has_attribute(Copy self, ParticleIndexKey a0) -> bool
9584  has_attribute(Copy self, ObjectKey a0) -> bool
9585  has_attribute(Copy self, SparseFloatKey a0) -> bool
9586  has_attribute(Copy self, SparseIntKey a0) -> bool
9587  has_attribute(Copy self, SparseStringKey a0) -> bool
9588  has_attribute(Copy self, SparseParticleIndexKey a0) -> bool
9589  """
9590  return _IMP_atom.Copy_has_attribute(self, *args)
9591 
9592  def get_derivative(self, a0):
9593  r"""get_derivative(Copy self, FloatKey a0) -> double"""
9594  return _IMP_atom.Copy_get_derivative(self, a0)
9595 
9596  def get_name(self):
9597  r"""get_name(Copy self) -> std::string"""
9598  return _IMP_atom.Copy_get_name(self)
9599 
9600  def clear_caches(self):
9601  r"""clear_caches(Copy self)"""
9602  return _IMP_atom.Copy_clear_caches(self)
9603 
9604  def set_name(self, a0):
9605  r"""set_name(Copy self, std::string a0)"""
9606  return _IMP_atom.Copy_set_name(self, a0)
9607 
9608  def set_check_level(self, a0):
9609  r"""set_check_level(Copy self, IMP::CheckLevel a0)"""
9610  return _IMP_atom.Copy_set_check_level(self, a0)
9611 
9612  def add_to_derivative(self, a0, a1, a2):
9613  r"""add_to_derivative(Copy self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
9614  return _IMP_atom.Copy_add_to_derivative(self, a0, a1, a2)
9615 
9616  def set_is_optimized(self, a0, a1):
9617  r"""set_is_optimized(Copy self, FloatKey a0, bool a1)"""
9618  return _IMP_atom.Copy_set_is_optimized(self, a0, a1)
9619 
9620  def get_is_optimized(self, a0):
9621  r"""get_is_optimized(Copy self, FloatKey a0) -> bool"""
9622  return _IMP_atom.Copy_get_is_optimized(self, a0)
9623 
9624  def get_check_level(self):
9625  r"""get_check_level(Copy self) -> IMP::CheckLevel"""
9626  return _IMP_atom.Copy_get_check_level(self)
9627 
9628  def __eq__(self, *args):
9629  r"""
9630  __eq__(Copy self, Copy o) -> bool
9631  __eq__(Copy self, Particle d) -> bool
9632  """
9633  return _IMP_atom.Copy___eq__(self, *args)
9634 
9635  def __ne__(self, *args):
9636  r"""
9637  __ne__(Copy self, Copy o) -> bool
9638  __ne__(Copy self, Particle d) -> bool
9639  """
9640  return _IMP_atom.Copy___ne__(self, *args)
9641 
9642  def __le__(self, *args):
9643  r"""
9644  __le__(Copy self, Copy o) -> bool
9645  __le__(Copy self, Particle d) -> bool
9646  """
9647  return _IMP_atom.Copy___le__(self, *args)
9648 
9649  def __lt__(self, *args):
9650  r"""
9651  __lt__(Copy self, Copy o) -> bool
9652  __lt__(Copy self, Particle d) -> bool
9653  """
9654  return _IMP_atom.Copy___lt__(self, *args)
9655 
9656  def __ge__(self, *args):
9657  r"""
9658  __ge__(Copy self, Copy o) -> bool
9659  __ge__(Copy self, Particle d) -> bool
9660  """
9661  return _IMP_atom.Copy___ge__(self, *args)
9662 
9663  def __gt__(self, *args):
9664  r"""
9665  __gt__(Copy self, Copy o) -> bool
9666  __gt__(Copy self, Particle d) -> bool
9667  """
9668  return _IMP_atom.Copy___gt__(self, *args)
9669 
9670  def __hash__(self):
9671  r"""__hash__(Copy self) -> std::size_t"""
9672  return _IMP_atom.Copy___hash__(self)
9673 
9674  def __str__(self):
9675  r"""__str__(Copy self) -> std::string"""
9676  return _IMP_atom.Copy___str__(self)
9677 
9678  def __repr__(self):
9679  r"""__repr__(Copy self) -> std::string"""
9680  return _IMP_atom.Copy___repr__(self)
9681 
9682  def _get_as_binary(self):
9683  r"""_get_as_binary(Copy self) -> PyObject *"""
9684  return _IMP_atom.Copy__get_as_binary(self)
9685 
9686  def _set_from_binary(self, p):
9687  r"""_set_from_binary(Copy self, PyObject * p)"""
9688  return _IMP_atom.Copy__set_from_binary(self, p)
9689 
9690  def __getstate__(self):
9691  p = self._get_as_binary()
9692  if len(self.__dict__) > 1:
9693  d = self.__dict__.copy()
9694  del d['this']
9695  p = (d, p)
9696  return p
9697 
9698  def __setstate__(self, p):
9699  if not hasattr(self, 'this'):
9700  self.__init__()
9701  if isinstance(p, tuple):
9702  d, p = p
9703  self.__dict__.update(d)
9704  return self._set_from_binary(p)
9705 
9706  __swig_destroy__ = _IMP_atom.delete_Copy
9707 
9708 # Register Copy in _IMP_atom:
9709 _IMP_atom.Copy_swigregister(Copy)
9710 
9711 def get_copy_index(h):
9712  r"""get_copy_index(Hierarchy h) -> int"""
9713  return _IMP_atom.get_copy_index(h)
9714 class Chain(Hierarchy):
9715  r"""Proxy of C++ IMP::atom::Chain class."""
9716 
9717  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9718 
9719  def __init__(self, *args):
9720  r"""
9721  __init__(Chain self) -> Chain
9722  __init__(Chain self, Model m, ParticleIndex id) -> Chain
9723  __init__(Chain self, _ParticleAdaptor d) -> Chain
9724  """
9725  _IMP_atom.Chain_swiginit(self, _IMP_atom.new_Chain(*args))
9726 
9727  def show(self, *args):
9728  r"""show(Chain self, _ostream out=std::cout)"""
9729  return _IMP_atom.Chain_show(self, *args)
9730 
9731  @staticmethod
9732  def setup_particle(*args):
9733  r"""
9734  setup_particle(Model m, ParticleIndex pi, std::string id) -> Chain
9735  setup_particle(_ParticleAdaptor pa, std::string id) -> Chain
9736  setup_particle(Model m, ParticleIndex pi, char id) -> Chain
9737  setup_particle(_ParticleAdaptor pa, char id) -> Chain
9738  setup_particle(Model m, ParticleIndex pi, Chain other) -> Chain
9739  setup_particle(_ParticleAdaptor pa, Chain other) -> Chain
9740  """
9741  return _IMP_atom.Chain_setup_particle(*args)
9742 
9743  @staticmethod
9744  def get_is_setup(*args):
9745  r"""
9746  get_is_setup(_ParticleAdaptor p) -> bool
9747  get_is_setup(Model m, ParticleIndex pi) -> bool
9748  """
9749  return _IMP_atom.Chain_get_is_setup(*args)
9750 
9751  def get_id(self):
9752  r"""get_id(Chain self) -> std::string"""
9753  return _IMP_atom.Chain_get_id(self)
9754 
9755  def set_id(self, c):
9756  r"""set_id(Chain self, std::string c)"""
9757  return _IMP_atom.Chain_set_id(self, c)
9758 
9759  def get_label_asym_id(self):
9760  r"""get_label_asym_id(Chain self) -> std::string"""
9761  return _IMP_atom.Chain_get_label_asym_id(self)
9762 
9763  def set_label_asym_id(self, c):
9764  r"""set_label_asym_id(Chain self, std::string c)"""
9765  return _IMP_atom.Chain_set_label_asym_id(self, c)
9766 
9767  def get_sequence(self):
9768  r"""get_sequence(Chain self) -> std::string"""
9769  return _IMP_atom.Chain_get_sequence(self)
9770 
9771  def set_sequence(self, sequence):
9772  r"""set_sequence(Chain self, std::string sequence)"""
9773  return _IMP_atom.Chain_set_sequence(self, sequence)
9774 
9775  def get_sequence_offset(self):
9776  r"""get_sequence_offset(Chain self) -> int"""
9777  return _IMP_atom.Chain_get_sequence_offset(self)
9778 
9779  def set_sequence_offset(self, offset):
9780  r"""set_sequence_offset(Chain self, int offset)"""
9781  return _IMP_atom.Chain_set_sequence_offset(self, offset)
9782 
9783  def get_uniprot_accession(self):
9784  r"""get_uniprot_accession(Chain self) -> std::string"""
9785  return _IMP_atom.Chain_get_uniprot_accession(self)
9786 
9787  def set_uniprot_accession(self, accession):
9788  r"""set_uniprot_accession(Chain self, std::string accession)"""
9789  return _IMP_atom.Chain_set_uniprot_accession(self, accession)
9790 
9791  def get_chain_type(self):
9792  r"""get_chain_type(Chain self) -> ChainType"""
9793  return _IMP_atom.Chain_get_chain_type(self)
9794 
9795  def set_chain_type(self, t):
9796  r"""set_chain_type(Chain self, ChainType t)"""
9797  return _IMP_atom.Chain_set_chain_type(self, t)
9798 
9799  @staticmethod
9800  def get_id_key():
9801  r"""get_id_key() -> SparseStringKey"""
9802  return _IMP_atom.Chain_get_id_key()
9803 
9804  @staticmethod
9805  def get_label_asym_id_key():
9806  r"""get_label_asym_id_key() -> SparseStringKey"""
9807  return _IMP_atom.Chain_get_label_asym_id_key()
9808 
9809  @staticmethod
9810  def get_sequence_key():
9811  r"""get_sequence_key() -> SparseStringKey"""
9812  return _IMP_atom.Chain_get_sequence_key()
9813 
9814  @staticmethod
9815  def get_sequence_offset_key():
9816  r"""get_sequence_offset_key() -> SparseIntKey"""
9817  return _IMP_atom.Chain_get_sequence_offset_key()
9818 
9819  @staticmethod
9820  def get_uniprot_accession_key():
9821  r"""get_uniprot_accession_key() -> SparseStringKey"""
9822  return _IMP_atom.Chain_get_uniprot_accession_key()
9823 
9824  @staticmethod
9825  def get_chain_type_key():
9826  r"""get_chain_type_key() -> SparseIntKey"""
9827  return _IMP_atom.Chain_get_chain_type_key()
9828 
9829  def add_attribute(self, *args):
9830  r"""
9831  add_attribute(Chain self, FloatKey k, IMP::Float v, bool opt)
9832  add_attribute(Chain self, FloatKey a0, IMP::Float a1)
9833  add_attribute(Chain self, IntKey a0, IMP::Int a1)
9834  add_attribute(Chain self, FloatsKey a0, IMP::Floats a1)
9835  add_attribute(Chain self, IntsKey a0, IMP::Ints a1)
9836  add_attribute(Chain self, StringKey a0, IMP::String a1)
9837  add_attribute(Chain self, ParticleIndexKey a0, Particle a1)
9838  add_attribute(Chain self, ObjectKey a0, Object a1)
9839  add_attribute(Chain self, SparseFloatKey a0, IMP::Float a1)
9840  add_attribute(Chain self, SparseIntKey a0, IMP::Int a1)
9841  add_attribute(Chain self, SparseStringKey a0, IMP::String a1)
9842  add_attribute(Chain self, SparseParticleIndexKey a0, ParticleIndex a1)
9843  """
9844  return _IMP_atom.Chain_add_attribute(self, *args)
9845 
9846  def get_value(self, *args):
9847  r"""
9848  get_value(Chain self, FloatKey a0) -> IMP::Float
9849  get_value(Chain self, IntKey a0) -> IMP::Int
9850  get_value(Chain self, FloatsKey a0) -> IMP::Floats
9851  get_value(Chain self, IntsKey a0) -> IMP::Ints
9852  get_value(Chain self, StringKey a0) -> IMP::String
9853  get_value(Chain self, ParticleIndexKey a0) -> Particle
9854  get_value(Chain self, ObjectKey a0) -> Object
9855  get_value(Chain self, SparseFloatKey a0) -> IMP::Float
9856  get_value(Chain self, SparseIntKey a0) -> IMP::Int
9857  get_value(Chain self, SparseStringKey a0) -> IMP::String
9858  get_value(Chain self, SparseParticleIndexKey a0) -> ParticleIndex
9859  """
9860  return _IMP_atom.Chain_get_value(self, *args)
9861 
9862  def set_value(self, *args):
9863  r"""
9864  set_value(Chain self, FloatKey a0, IMP::Float a1)
9865  set_value(Chain self, IntKey a0, IMP::Int a1)
9866  set_value(Chain self, FloatsKey a0, IMP::Floats a1)
9867  set_value(Chain self, IntsKey a0, IMP::Ints a1)
9868  set_value(Chain self, StringKey a0, IMP::String a1)
9869  set_value(Chain self, ParticleIndexKey a0, Particle a1)
9870  set_value(Chain self, ObjectKey a0, Object a1)
9871  set_value(Chain self, SparseFloatKey a0, IMP::Float a1)
9872  set_value(Chain self, SparseIntKey a0, IMP::Int a1)
9873  set_value(Chain self, SparseStringKey a0, IMP::String a1)
9874  set_value(Chain self, SparseParticleIndexKey a0, ParticleIndex a1)
9875  """
9876  return _IMP_atom.Chain_set_value(self, *args)
9877 
9878  def remove_attribute(self, *args):
9879  r"""
9880  remove_attribute(Chain self, FloatKey a0)
9881  remove_attribute(Chain self, IntKey a0)
9882  remove_attribute(Chain self, FloatsKey a0)
9883  remove_attribute(Chain self, IntsKey a0)
9884  remove_attribute(Chain self, StringKey a0)
9885  remove_attribute(Chain self, ParticleIndexKey a0)
9886  remove_attribute(Chain self, ObjectKey a0)
9887  remove_attribute(Chain self, SparseFloatKey a0)
9888  remove_attribute(Chain self, SparseIntKey a0)
9889  remove_attribute(Chain self, SparseStringKey a0)
9890  remove_attribute(Chain self, SparseParticleIndexKey a0)
9891  """
9892  return _IMP_atom.Chain_remove_attribute(self, *args)
9893 
9894  def has_attribute(self, *args):
9895  r"""
9896  has_attribute(Chain self, FloatKey a0) -> bool
9897  has_attribute(Chain self, IntKey a0) -> bool
9898  has_attribute(Chain self, FloatsKey a0) -> bool
9899  has_attribute(Chain self, IntsKey a0) -> bool
9900  has_attribute(Chain self, StringKey a0) -> bool
9901  has_attribute(Chain self, ParticleIndexKey a0) -> bool
9902  has_attribute(Chain self, ObjectKey a0) -> bool
9903  has_attribute(Chain self, SparseFloatKey a0) -> bool
9904  has_attribute(Chain self, SparseIntKey a0) -> bool
9905  has_attribute(Chain self, SparseStringKey a0) -> bool
9906  has_attribute(Chain self, SparseParticleIndexKey a0) -> bool
9907  """
9908  return _IMP_atom.Chain_has_attribute(self, *args)
9909 
9910  def get_derivative(self, a0):
9911  r"""get_derivative(Chain self, FloatKey a0) -> double"""
9912  return _IMP_atom.Chain_get_derivative(self, a0)
9913 
9914  def get_name(self):
9915  r"""get_name(Chain self) -> std::string"""
9916  return _IMP_atom.Chain_get_name(self)
9917 
9918  def clear_caches(self):
9919  r"""clear_caches(Chain self)"""
9920  return _IMP_atom.Chain_clear_caches(self)
9921 
9922  def set_name(self, a0):
9923  r"""set_name(Chain self, std::string a0)"""
9924  return _IMP_atom.Chain_set_name(self, a0)
9925 
9926  def set_check_level(self, a0):
9927  r"""set_check_level(Chain self, IMP::CheckLevel a0)"""
9928  return _IMP_atom.Chain_set_check_level(self, a0)
9929 
9930  def add_to_derivative(self, a0, a1, a2):
9931  r"""add_to_derivative(Chain self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
9932  return _IMP_atom.Chain_add_to_derivative(self, a0, a1, a2)
9933 
9934  def set_is_optimized(self, a0, a1):
9935  r"""set_is_optimized(Chain self, FloatKey a0, bool a1)"""
9936  return _IMP_atom.Chain_set_is_optimized(self, a0, a1)
9937 
9938  def get_is_optimized(self, a0):
9939  r"""get_is_optimized(Chain self, FloatKey a0) -> bool"""
9940  return _IMP_atom.Chain_get_is_optimized(self, a0)
9941 
9942  def get_check_level(self):
9943  r"""get_check_level(Chain self) -> IMP::CheckLevel"""
9944  return _IMP_atom.Chain_get_check_level(self)
9945 
9946  def __eq__(self, *args):
9947  r"""
9948  __eq__(Chain self, Chain o) -> bool
9949  __eq__(Chain self, Particle d) -> bool
9950  """
9951  return _IMP_atom.Chain___eq__(self, *args)
9952 
9953  def __ne__(self, *args):
9954  r"""
9955  __ne__(Chain self, Chain o) -> bool
9956  __ne__(Chain self, Particle d) -> bool
9957  """
9958  return _IMP_atom.Chain___ne__(self, *args)
9959 
9960  def __le__(self, *args):
9961  r"""
9962  __le__(Chain self, Chain o) -> bool
9963  __le__(Chain self, Particle d) -> bool
9964  """
9965  return _IMP_atom.Chain___le__(self, *args)
9966 
9967  def __lt__(self, *args):
9968  r"""
9969  __lt__(Chain self, Chain o) -> bool
9970  __lt__(Chain self, Particle d) -> bool
9971  """
9972  return _IMP_atom.Chain___lt__(self, *args)
9973 
9974  def __ge__(self, *args):
9975  r"""
9976  __ge__(Chain self, Chain o) -> bool
9977  __ge__(Chain self, Particle d) -> bool
9978  """
9979  return _IMP_atom.Chain___ge__(self, *args)
9980 
9981  def __gt__(self, *args):
9982  r"""
9983  __gt__(Chain self, Chain o) -> bool
9984  __gt__(Chain self, Particle d) -> bool
9985  """
9986  return _IMP_atom.Chain___gt__(self, *args)
9987 
9988  def __hash__(self):
9989  r"""__hash__(Chain self) -> std::size_t"""
9990  return _IMP_atom.Chain___hash__(self)
9991 
9992  def __str__(self):
9993  r"""__str__(Chain self) -> std::string"""
9994  return _IMP_atom.Chain___str__(self)
9995 
9996  def __repr__(self):
9997  r"""__repr__(Chain self) -> std::string"""
9998  return _IMP_atom.Chain___repr__(self)
9999 
10000  def _get_as_binary(self):
10001  r"""_get_as_binary(Chain self) -> PyObject *"""
10002  return _IMP_atom.Chain__get_as_binary(self)
10003 
10004  def _set_from_binary(self, p):
10005  r"""_set_from_binary(Chain self, PyObject * p)"""
10006  return _IMP_atom.Chain__set_from_binary(self, p)
10007 
10008  def __getstate__(self):
10009  p = self._get_as_binary()
10010  if len(self.__dict__) > 1:
10011  d = self.__dict__.copy()
10012  del d['this']
10013  p = (d, p)
10014  return p
10015 
10016  def __setstate__(self, p):
10017  if not hasattr(self, 'this'):
10018  self.__init__()
10019  if isinstance(p, tuple):
10020  d, p = p
10021  self.__dict__.update(d)
10022  return self._set_from_binary(p)
10023 
10024  __swig_destroy__ = _IMP_atom.delete_Chain
10025 
10026 # Register Chain in _IMP_atom:
10027 _IMP_atom.Chain_swigregister(Chain)
10028 UnknownChainType = cvar.UnknownChainType
10029 DPolypeptide = cvar.DPolypeptide
10030 LPolypeptide = cvar.LPolypeptide
10031 Polydeoxyribonucleotide = cvar.Polydeoxyribonucleotide
10032 Polyribonucleotide = cvar.Polyribonucleotide
10033 DPolysaccharide = cvar.DPolysaccharide
10034 LPolysaccharide = cvar.LPolysaccharide
10035 Protein = cvar.Protein
10036 DNA = cvar.DNA
10037 RNA = cvar.RNA
10038 
10039 
10040 def get_chain(h):
10041  r"""get_chain(Hierarchy h) -> Chain"""
10042  return _IMP_atom.get_chain(h)
10043 
10044 def get_chain_id(h):
10045  r"""get_chain_id(Hierarchy h) -> std::string"""
10046  return _IMP_atom.get_chain_id(h)
10047 class Selection(IMP._ParticleIndexesAdaptor):
10048  r"""Proxy of C++ IMP::atom::Selection class."""
10049 
10050  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10051  NONE = _IMP_atom.Selection_NONE
10052 
10053  C = _IMP_atom.Selection_C
10054 
10055  N = _IMP_atom.Selection_N
10056 
10057 
10058  def __init__(self, *args):
10059  r"""
10060  __init__(Selection self) -> Selection
10061  __init__(Selection self, Hierarchy h) -> Selection
10062  __init__(Selection self, Particle h) -> Selection
10063  __init__(Selection self, Model m, IMP::ParticleIndexes const & pis) -> Selection
10064  __init__(Selection self, IMP::ParticlesTemp const & h) -> Selection
10065  """
10066  _IMP_atom.Selection_swiginit(self, _IMP_atom.new_Selection(*args))
10067 
10068  def create_clone(self):
10069  r"""create_clone(Selection self) -> Selection"""
10070  return _IMP_atom.Selection_create_clone(self)
10071 
10072  def get_hierarchies(self):
10073  r"""get_hierarchies(Selection self) -> IMP::atom::Hierarchies"""
10074  return _IMP_atom.Selection_get_hierarchies(self)
10075 
10076  def set_molecules(self, mols):
10077  r"""set_molecules(Selection self, IMP::Strings mols)"""
10078  return _IMP_atom.Selection_set_molecules(self, mols)
10079 
10080  def set_resolution(self, r):
10081  r"""set_resolution(Selection self, double r)"""
10082  return _IMP_atom.Selection_set_resolution(self, r)
10083 
10084  def set_representation_type(self, t):
10085  r"""set_representation_type(Selection self, IMP::atom::RepresentationType t)"""
10086  return _IMP_atom.Selection_set_representation_type(self, t)
10087 
10088  def set_state_index(self, state):
10089  r"""set_state_index(Selection self, int state)"""
10090  return _IMP_atom.Selection_set_state_index(self, state)
10091 
10092  def set_state_indexes(self, states):
10093  r"""set_state_indexes(Selection self, IMP::Ints states)"""
10094  return _IMP_atom.Selection_set_state_indexes(self, states)
10095 
10096  def set_terminus(self, t):
10097  r"""set_terminus(Selection self, IMP::atom::Selection::Terminus t)"""
10098  return _IMP_atom.Selection_set_terminus(self, t)
10099 
10100  def set_element(self, e):
10101  r"""set_element(Selection self, IMP::atom::Element e)"""
10102  return _IMP_atom.Selection_set_element(self, e)
10103 
10104  def set_chain_ids(self, chains):
10105  r"""set_chain_ids(Selection self, IMP::Strings chains)"""
10106  return _IMP_atom.Selection_set_chain_ids(self, chains)
10107 
10108  def set_chains(self, chains):
10109  r"""set_chains(Selection self, IMP::Strings chains)"""
10110  return _IMP_atom.Selection_set_chains(self, chains)
10111 
10112  def set_residue_indexes(self, indexes):
10113  r"""set_residue_indexes(Selection self, IMP::Ints indexes)"""
10114  return _IMP_atom.Selection_set_residue_indexes(self, indexes)
10115 
10116  def set_atom_types(self, types):
10117  r"""set_atom_types(Selection self, IMP::atom::AtomTypes types)"""
10118  return _IMP_atom.Selection_set_atom_types(self, types)
10119 
10120  def set_residue_types(self, types):
10121  r"""set_residue_types(Selection self, IMP::atom::ResidueTypes types)"""
10122  return _IMP_atom.Selection_set_residue_types(self, types)
10123 
10124  def set_domains(self, names):
10125  r"""set_domains(Selection self, IMP::Strings names)"""
10126  return _IMP_atom.Selection_set_domains(self, names)
10127 
10128  def set_molecule(self, mol):
10129  r"""set_molecule(Selection self, std::string mol)"""
10130  return _IMP_atom.Selection_set_molecule(self, mol)
10131 
10132  def set_chain_id(self, c):
10133  r"""set_chain_id(Selection self, std::string c)"""
10134  return _IMP_atom.Selection_set_chain_id(self, c)
10135 
10136  def set_chain(self, c):
10137  r"""set_chain(Selection self, std::string c)"""
10138  return _IMP_atom.Selection_set_chain(self, c)
10139 
10140  def set_residue_index(self, i):
10141  r"""set_residue_index(Selection self, int i)"""
10142  return _IMP_atom.Selection_set_residue_index(self, i)
10143 
10144  def set_atom_type(self, types):
10145  r"""set_atom_type(Selection self, AtomType types)"""
10146  return _IMP_atom.Selection_set_atom_type(self, types)
10147 
10148  def set_residue_type(self, type):
10149  r"""set_residue_type(Selection self, ResidueType type)"""
10150  return _IMP_atom.Selection_set_residue_type(self, type)
10151 
10152  def set_domain(self, name):
10153  r"""set_domain(Selection self, std::string name)"""
10154  return _IMP_atom.Selection_set_domain(self, name)
10155 
10156  def set_copy_index(self, copy):
10157  r"""set_copy_index(Selection self, unsigned int copy)"""
10158  return _IMP_atom.Selection_set_copy_index(self, copy)
10159 
10160  def set_copy_indexes(self, copies):
10161  r"""set_copy_indexes(Selection self, IMP::Ints copies)"""
10162  return _IMP_atom.Selection_set_copy_indexes(self, copies)
10163 
10164  def set_particle_type(self, t):
10165  r"""set_particle_type(Selection self, ParticleType t)"""
10166  return _IMP_atom.Selection_set_particle_type(self, t)
10167 
10168  def set_particle_types(self, t):
10169  r"""set_particle_types(Selection self, IMP::core::ParticleTypes t)"""
10170  return _IMP_atom.Selection_set_particle_types(self, t)
10171 
10172  def set_hierarchy_types(self, types):
10173  r"""set_hierarchy_types(Selection self, IMP::Ints types)"""
10174  return _IMP_atom.Selection_set_hierarchy_types(self, types)
10175 
10176  def set_intersection(self, s):
10177  r"""set_intersection(Selection self, Selection s)"""
10178  return _IMP_atom.Selection_set_intersection(self, s)
10179 
10180  def set_union(self, s):
10181  r"""set_union(Selection self, Selection s)"""
10182  return _IMP_atom.Selection_set_union(self, s)
10183 
10184  def set_symmetric_difference(self, s):
10185  r"""set_symmetric_difference(Selection self, Selection s)"""
10186  return _IMP_atom.Selection_set_symmetric_difference(self, s)
10187 
10188  def set_difference(self, s):
10189  r"""set_difference(Selection self, Selection s)"""
10190  return _IMP_atom.Selection_set_difference(self, s)
10191 
10192  def get_selected_particles(self, with_representation=True):
10193  r"""get_selected_particles(Selection self, bool with_representation=True) -> IMP::ParticlesTemp"""
10194  return _IMP_atom.Selection_get_selected_particles(self, with_representation)
10195 
10196  def get_selected_particle_indexes(self, with_representation=True):
10197  r"""get_selected_particle_indexes(Selection self, bool with_representation=True) -> IMP::ParticleIndexes"""
10198  return _IMP_atom.Selection_get_selected_particle_indexes(self, with_representation)
10199 
10200  def show(self, *args):
10201  r"""show(Selection self, _ostream out=std::cout)"""
10202  return _IMP_atom.Selection_show(self, *args)
10203 
10204  def __str__(self):
10205  r"""__str__(Selection self) -> std::string"""
10206  return _IMP_atom.Selection___str__(self)
10207 
10208  def __repr__(self):
10209  r"""__repr__(Selection self) -> std::string"""
10210  return _IMP_atom.Selection___repr__(self)
10211 
10212  def __init__(self, hierarchy=None,
10213  hierarchies=None, **params):
10214  if hierarchy and hierarchies:
10215  raise RuntimeError("You can't pass both hierarchy and hierarchies to Selection")
10216  if hierarchy:
10217  this = _IMP_atom.new_Selection(hierarchy)
10218  try: self.this.append(this)
10219  except: self.this = this
10220  elif hierarchies:
10221  this = _IMP_atom.new_Selection(hierarchies)
10222  try: self.this.append(this)
10223  except: self.this = this
10224  else:
10225  raise ValueError("Either hierarchy or hierarchies must be provided.")
10226  for k in params.keys():
10227  eval("self.set_%s(params[k])"%k)
10228 
10229  def union(self, s):
10230  news = self.create_clone()
10231  news.union_update(s)
10232  return news
10233  def intersection(self, s):
10234  news = self.create_clone()
10235  news.intersection_update(s)
10236  return news
10237  def symmetric_difference(self, s):
10238  news = self.create_clone()
10239  news.symmetric_difference_update(s)
10240  return news
10241  def difference(self, s):
10242  news = self.create_clone()
10243  news.difference_update(s)
10244  return news
10245  def union_update(self, s):
10246  self.set_union(s)
10247  return self
10248  def intersection_update(self, s):
10249  self.set_intersection(s)
10250  return self
10251  def symmetric_difference_update(self, s):
10252  self.set_symmetric_difference(s)
10253  return self
10254  def difference_update(self, s):
10255  self.set_difference(s)
10256  return self
10257  __or__ = union
10258  __and__ = intersection
10259  __xor__ = symmetric_difference
10260  __sub__ = difference
10261  __ior__ = union_update
10262  __iand__ = intersection_update
10263  __ixor__ = symmetric_difference_update
10264  __isub__ = difference_update
10265 
10266  __swig_destroy__ = _IMP_atom.delete_Selection
10267 
10268 # Register Selection in _IMP_atom:
10269 _IMP_atom.Selection_swigregister(Selection)
10270 
10271 def create_distance_restraint(*args):
10272  r"""create_distance_restraint(Selection n0, Selection n1, double x0, double k, std::string name="Distance%1%") -> Restraint"""
10273  return _IMP_atom.create_distance_restraint(*args)
10274 
10276  r"""
10277  create_connectivity_restraint(IMP::atom::Selections const & s, double k, std::string name="Connectivity%1%") -> Restraint
10278  create_connectivity_restraint(IMP::atom::Selections const & s, double x0, double k, std::string name="Connectivity%1%") -> Restraint
10279  """
10280  return _IMP_atom.create_connectivity_restraint(*args)
10281 
10283  r"""
10284  create_internal_connectivity_restraint(Selection s, double k, std::string name="Connectivity%1%") -> Restraint
10285  create_internal_connectivity_restraint(Selection s, double x0, double k, std::string name="Connectivity%1%") -> Restraint
10286  """
10287  return _IMP_atom.create_internal_connectivity_restraint(*args)
10288 
10289 def create_cover(*args):
10290  r"""create_cover(Selection s, std::string name=std::string()) -> XYZR"""
10291  return _IMP_atom.create_cover(*args)
10292 
10293 def get_mass(*args):
10294  r"""
10295  get_mass(ResidueType c) -> double
10296  get_mass(Selection s) -> double
10297  """
10298  return _IMP_atom.get_mass(*args)
10299 
10300 def get_volume(s):
10301  r"""get_volume(Selection s) -> double"""
10302  return _IMP_atom.get_volume(s)
10303 
10304 def get_surface_area(s):
10305  r"""get_surface_area(Selection s) -> double"""
10306  return _IMP_atom.get_surface_area(s)
10307 
10308 def get_leaves(*args):
10309  r"""
10310  get_leaves(Hierarchy h) -> IMP::atom::Hierarchies
10311  get_leaves(IMP::atom::Hierarchies const & h) -> IMP::atom::Hierarchies
10312  get_leaves(Selection h) -> IMP::atom::Hierarchies
10313  """
10314  return _IMP_atom.get_leaves(*args)
10315 class SelectionGeometry(IMP.display.Geometry):
10316  r"""Proxy of C++ IMP::atom::SelectionGeometry class."""
10317 
10318  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10319 
10320  def __init__(self, *args):
10321  r"""__init__(SelectionGeometry self, Selection d, std::string name="Selection") -> SelectionGeometry"""
10322  _IMP_atom.SelectionGeometry_swiginit(self, _IMP_atom.new_SelectionGeometry(*args))
10323 
10324  def get_version_info(self):
10325  r"""get_version_info(SelectionGeometry self) -> VersionInfo"""
10326  return _IMP_atom.SelectionGeometry_get_version_info(self)
10327  __swig_destroy__ = _IMP_atom.delete_SelectionGeometry
10328 
10329  def __str__(self):
10330  r"""__str__(SelectionGeometry self) -> std::string"""
10331  return _IMP_atom.SelectionGeometry___str__(self)
10332 
10333  def __repr__(self):
10334  r"""__repr__(SelectionGeometry self) -> std::string"""
10335  return _IMP_atom.SelectionGeometry___repr__(self)
10336 
10337  @staticmethod
10338  def get_from(o):
10339  return _object_cast_to_SelectionGeometry(o)
10340 
10341 
10342 # Register SelectionGeometry in _IMP_atom:
10343 _IMP_atom.SelectionGeometry_swigregister(SelectionGeometry)
10344 
10345 def get_rmsd(*args):
10346  r"""
10347  get_rmsd(IMP::core::XYZs const & s0, IMP::core::XYZs const & s1) -> double
10348  get_rmsd(Selection s0, Selection s1) -> double
10349  """
10350  return _IMP_atom.get_rmsd(*args)
10351 
10352 def get_rmsd_transforming_first(*args):
10353  r"""
10354  get_rmsd_transforming_first(Transformation3D tr, IMP::core::XYZs const & s0, IMP::core::XYZs const & s1) -> double
10355  get_rmsd_transforming_first(Transformation3D tr, Selection s0, Selection s1) -> double
10356  """
10357  return _IMP_atom.get_rmsd_transforming_first(*args)
10358 
10359 def get_placement_score(source, target):
10360  r"""get_placement_score(IMP::core::XYZs const & source, IMP::core::XYZs const & target) -> IMP::FloatPair"""
10361  return _IMP_atom.get_placement_score(source, target)
10362 
10363 def get_component_placement_score(ref1, ref2, mdl1, mdl2):
10364  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"""
10365  return _IMP_atom.get_component_placement_score(ref1, ref2, mdl1, mdl2)
10366 
10367 def get_pairwise_rmsd_score(ref1, ref2, mdl1, mdl2):
10368  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"""
10369  return _IMP_atom.get_pairwise_rmsd_score(ref1, ref2, mdl1, mdl2)
10370 
10371 def get_radius_of_gyration(*args):
10372  r"""
10373  get_radius_of_gyration(Selection s) -> double
10374  get_radius_of_gyration(IMP::ParticlesTemp const & ps, bool weighted=True) -> double
10375  """
10376  return _IMP_atom.get_radius_of_gyration(*args)
10377 class ForceFieldParameters(IMP.Object):
10378  r"""Proxy of C++ IMP::atom::ForceFieldParameters class."""
10379 
10380  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10381 
10382  def __init__(self):
10383  r"""__init__(ForceFieldParameters self) -> ForceFieldParameters"""
10384  _IMP_atom.ForceFieldParameters_swiginit(self, _IMP_atom.new_ForceFieldParameters())
10385 
10386  def get_radius(self, atom):
10387  r"""get_radius(ForceFieldParameters self, Atom atom) -> IMP::Float"""
10388  return _IMP_atom.ForceFieldParameters_get_radius(self, atom)
10389 
10390  def get_epsilon(self, atom):
10391  r"""get_epsilon(ForceFieldParameters self, Atom atom) -> IMP::Float"""
10392  return _IMP_atom.ForceFieldParameters_get_epsilon(self, atom)
10393 
10394  def add_radii(self, *args):
10395  r"""add_radii(ForceFieldParameters self, Hierarchy mhd, double scale=1.0, FloatKey radius_key=IMP::FloatKey("radius"))"""
10396  return _IMP_atom.ForceFieldParameters_add_radii(self, *args)
10397 
10398  def add_lennard_jones_types(self, mhd):
10399  r"""add_lennard_jones_types(ForceFieldParameters self, Hierarchy mhd)"""
10400  return _IMP_atom.ForceFieldParameters_add_lennard_jones_types(self, mhd)
10401 
10402  def add_bonds(self, mhd):
10403  r"""add_bonds(ForceFieldParameters self, Hierarchy mhd)"""
10404  return _IMP_atom.ForceFieldParameters_add_bonds(self, mhd)
10405  __swig_destroy__ = _IMP_atom.delete_ForceFieldParameters
10406 
10407  def __str__(self):
10408  r"""__str__(ForceFieldParameters self) -> std::string"""
10409  return _IMP_atom.ForceFieldParameters___str__(self)
10410 
10411  def __repr__(self):
10412  r"""__repr__(ForceFieldParameters self) -> std::string"""
10413  return _IMP_atom.ForceFieldParameters___repr__(self)
10414 
10415  @staticmethod
10416  def get_from(o):
10417  return _object_cast_to_ForceFieldParameters(o)
10418 
10419 
10420 # Register ForceFieldParameters in _IMP_atom:
10421 _IMP_atom.ForceFieldParameters_swigregister(ForceFieldParameters)
10422 class CHARMMAtomTopology(object):
10423  r"""Proxy of C++ IMP::atom::CHARMMAtomTopology class."""
10424 
10425  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10426 
10427  def __init__(self, *args):
10428  r"""
10429  __init__(CHARMMAtomTopology self) -> CHARMMAtomTopology
10430  __init__(CHARMMAtomTopology self, std::string name) -> CHARMMAtomTopology
10431  __init__(CHARMMAtomTopology self, std::string name, CHARMMAtomTopology other) -> CHARMMAtomTopology
10432  """
10433  _IMP_atom.CHARMMAtomTopology_swiginit(self, _IMP_atom.new_CHARMMAtomTopology(*args))
10434 
10435  def get_name(self):
10436  r"""get_name(CHARMMAtomTopology self) -> std::string"""
10437  return _IMP_atom.CHARMMAtomTopology_get_name(self)
10438 
10439  def get_charmm_type(self):
10440  r"""get_charmm_type(CHARMMAtomTopology self) -> std::string"""
10441  return _IMP_atom.CHARMMAtomTopology_get_charmm_type(self)
10442 
10443  def get_charge(self):
10444  r"""get_charge(CHARMMAtomTopology self) -> double"""
10445  return _IMP_atom.CHARMMAtomTopology_get_charge(self)
10446 
10447  def set_charmm_type(self, charmm_type):
10448  r"""set_charmm_type(CHARMMAtomTopology self, std::string charmm_type)"""
10449  return _IMP_atom.CHARMMAtomTopology_set_charmm_type(self, charmm_type)
10450 
10451  def set_charge(self, charge):
10452  r"""set_charge(CHARMMAtomTopology self, double charge)"""
10453  return _IMP_atom.CHARMMAtomTopology_set_charge(self, charge)
10454 
10455  def show(self, *args):
10456  r"""show(CHARMMAtomTopology self, _ostream out=std::cout)"""
10457  return _IMP_atom.CHARMMAtomTopology_show(self, *args)
10458 
10459  def __str__(self):
10460  r"""__str__(CHARMMAtomTopology self) -> std::string"""
10461  return _IMP_atom.CHARMMAtomTopology___str__(self)
10462 
10463  def __repr__(self):
10464  r"""__repr__(CHARMMAtomTopology self) -> std::string"""
10465  return _IMP_atom.CHARMMAtomTopology___repr__(self)
10466 
10467  def _get_as_binary(self):
10468  r"""_get_as_binary(CHARMMAtomTopology self) -> PyObject *"""
10469  return _IMP_atom.CHARMMAtomTopology__get_as_binary(self)
10470 
10471  def _set_from_binary(self, p):
10472  r"""_set_from_binary(CHARMMAtomTopology self, PyObject * p)"""
10473  return _IMP_atom.CHARMMAtomTopology__set_from_binary(self, p)
10474 
10475  def __getstate__(self):
10476  p = self._get_as_binary()
10477  if len(self.__dict__) > 1:
10478  d = self.__dict__.copy()
10479  del d['this']
10480  p = (d, p)
10481  return p
10482 
10483  def __setstate__(self, p):
10484  if not hasattr(self, 'this'):
10485  self.__init__()
10486  if isinstance(p, tuple):
10487  d, p = p
10488  self.__dict__.update(d)
10489  return self._set_from_binary(p)
10490 
10491  __swig_destroy__ = _IMP_atom.delete_CHARMMAtomTopology
10492 
10493 # Register CHARMMAtomTopology in _IMP_atom:
10494 _IMP_atom.CHARMMAtomTopology_swigregister(CHARMMAtomTopology)
10495 class CHARMMBondEndpoint(object):
10496  r"""Proxy of C++ IMP::atom::CHARMMBondEndpoint class."""
10497 
10498  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10499 
10500  def __init__(self, atom_name, residue=None):
10501  r"""__init__(CHARMMBondEndpoint self, std::string atom_name, CHARMMResidueTopology residue=None) -> CHARMMBondEndpoint"""
10502  _IMP_atom.CHARMMBondEndpoint_swiginit(self, _IMP_atom.new_CHARMMBondEndpoint(atom_name, residue))
10503 
10504  def get_atom_name(self):
10505  r"""get_atom_name(CHARMMBondEndpoint self) -> std::string"""
10506  return _IMP_atom.CHARMMBondEndpoint_get_atom_name(self)
10507 
10508  def get_atom(self, current_residue, previous_residue, next_residue, resmap):
10509  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"""
10510  return _IMP_atom.CHARMMBondEndpoint_get_atom(self, current_residue, previous_residue, next_residue, resmap)
10511 
10512  def show(self, *args):
10513  r"""show(CHARMMBondEndpoint self, _ostream out=std::cout)"""
10514  return _IMP_atom.CHARMMBondEndpoint_show(self, *args)
10515 
10516  def __str__(self):
10517  r"""__str__(CHARMMBondEndpoint self) -> std::string"""
10518  return _IMP_atom.CHARMMBondEndpoint___str__(self)
10519 
10520  def __repr__(self):
10521  r"""__repr__(CHARMMBondEndpoint self) -> std::string"""
10522  return _IMP_atom.CHARMMBondEndpoint___repr__(self)
10523  __swig_destroy__ = _IMP_atom.delete_CHARMMBondEndpoint
10524 
10525 # Register CHARMMBondEndpoint in _IMP_atom:
10526 _IMP_atom.CHARMMBondEndpoint_swigregister(CHARMMBondEndpoint)
10527 class CHARMMDihedral(object):
10528  r"""Proxy of C++ IMP::atom::CHARMMConnection< 4 > class."""
10529 
10530  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10531  __repr__ = _swig_repr
10532 
10533  def __init__(self, atoms):
10534  r"""__init__(CHARMMDihedral self, IMP::Strings const & atoms) -> CHARMMDihedral"""
10535  _IMP_atom.CHARMMDihedral_swiginit(self, _IMP_atom.new_CHARMMDihedral(atoms))
10536 
10537  def get_endpoint(self, i):
10538  r"""get_endpoint(CHARMMDihedral self, unsigned int i) -> CHARMMBondEndpoint"""
10539  return _IMP_atom.CHARMMDihedral_get_endpoint(self, i)
10540 
10541  def get_contains_atom(self, name):
10542  r"""get_contains_atom(CHARMMDihedral self, std::string name) -> bool"""
10543  return _IMP_atom.CHARMMDihedral_get_contains_atom(self, name)
10544 
10545  def show(self, *args):
10546  r"""show(CHARMMDihedral self, _ostream out=std::cout)"""
10547  return _IMP_atom.CHARMMDihedral_show(self, *args)
10548  __swig_destroy__ = _IMP_atom.delete_CHARMMDihedral
10549 
10550 # Register CHARMMDihedral in _IMP_atom:
10551 _IMP_atom.CHARMMDihedral_swigregister(CHARMMDihedral)
10552 class CHARMMInternalCoordinate(CHARMMDihedral):
10553  r"""Proxy of C++ IMP::atom::CHARMMInternalCoordinate class."""
10554 
10555  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10556 
10557  def __init__(self, *args):
10558  r"""
10559  __init__(CHARMMInternalCoordinate self, IMP::Strings const & atoms, float first_distance, float first_angle, float dihedral, float second_angle, float second_distance, bool improper) -> CHARMMInternalCoordinate
10560  __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
10561  """
10562  _IMP_atom.CHARMMInternalCoordinate_swiginit(self, _IMP_atom.new_CHARMMInternalCoordinate(*args))
10563 
10564  def get_first_distance(self):
10565  r"""get_first_distance(CHARMMInternalCoordinate self) -> float"""
10566  return _IMP_atom.CHARMMInternalCoordinate_get_first_distance(self)
10567 
10568  def get_second_distance(self):
10569  r"""get_second_distance(CHARMMInternalCoordinate self) -> float"""
10570  return _IMP_atom.CHARMMInternalCoordinate_get_second_distance(self)
10571 
10572  def get_first_angle(self):
10573  r"""get_first_angle(CHARMMInternalCoordinate self) -> float"""
10574  return _IMP_atom.CHARMMInternalCoordinate_get_first_angle(self)
10575 
10576  def get_second_angle(self):
10577  r"""get_second_angle(CHARMMInternalCoordinate self) -> float"""
10578  return _IMP_atom.CHARMMInternalCoordinate_get_second_angle(self)
10579 
10580  def get_dihedral(self):
10581  r"""get_dihedral(CHARMMInternalCoordinate self) -> float"""
10582  return _IMP_atom.CHARMMInternalCoordinate_get_dihedral(self)
10583 
10584  def get_improper(self):
10585  r"""get_improper(CHARMMInternalCoordinate self) -> bool"""
10586  return _IMP_atom.CHARMMInternalCoordinate_get_improper(self)
10587 
10588  def show(self, *args):
10589  r"""show(CHARMMInternalCoordinate self, _ostream out=std::cout)"""
10590  return _IMP_atom.CHARMMInternalCoordinate_show(self, *args)
10591 
10592  def __str__(self):
10593  r"""__str__(CHARMMInternalCoordinate self) -> std::string"""
10594  return _IMP_atom.CHARMMInternalCoordinate___str__(self)
10595 
10596  def __repr__(self):
10597  r"""__repr__(CHARMMInternalCoordinate self) -> std::string"""
10598  return _IMP_atom.CHARMMInternalCoordinate___repr__(self)
10599  __swig_destroy__ = _IMP_atom.delete_CHARMMInternalCoordinate
10600 
10601 # Register CHARMMInternalCoordinate in _IMP_atom:
10602 _IMP_atom.CHARMMInternalCoordinate_swigregister(CHARMMInternalCoordinate)
10603 class CHARMMResidueTopologyBase(IMP.Object):
10604  r"""Proxy of C++ IMP::atom::CHARMMResidueTopologyBase class."""
10605 
10606  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10607 
10608  def __init__(self, *args, **kwargs):
10609  raise AttributeError("No constructor defined")
10610 
10611  def get_type(self):
10612  r"""get_type(CHARMMResidueTopologyBase self) -> std::string"""
10613  return _IMP_atom.CHARMMResidueTopologyBase_get_type(self)
10614 
10615  def get_number_of_atoms(self):
10616  r"""get_number_of_atoms(CHARMMResidueTopologyBase self) -> unsigned int"""
10617  return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_atoms(self)
10618 
10619  def add_atom(self, atom):
10620  r"""add_atom(CHARMMResidueTopologyBase self, CHARMMAtomTopology atom)"""
10621  return _IMP_atom.CHARMMResidueTopologyBase_add_atom(self, atom)
10622 
10623  def get_atom(self, *args):
10624  r"""
10625  get_atom(CHARMMResidueTopologyBase self, unsigned int i) -> CHARMMAtomTopology
10626  get_atom(CHARMMResidueTopologyBase self, AtomType type) -> CHARMMAtomTopology
10627  get_atom(CHARMMResidueTopologyBase self, std::string name) -> CHARMMAtomTopology
10628  """
10629  return _IMP_atom.CHARMMResidueTopologyBase_get_atom(self, *args)
10630 
10631  def get_number_of_bonds(self):
10632  r"""get_number_of_bonds(CHARMMResidueTopologyBase self) -> unsigned int"""
10633  return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_bonds(self)
10634 
10635  def add_bond(self, bond):
10636  r"""add_bond(CHARMMResidueTopologyBase self, CHARMMBond bond)"""
10637  return _IMP_atom.CHARMMResidueTopologyBase_add_bond(self, bond)
10638 
10639  def get_number_of_angles(self):
10640  r"""get_number_of_angles(CHARMMResidueTopologyBase self) -> unsigned int"""
10641  return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_angles(self)
10642 
10643  def add_angle(self, bond):
10644  r"""add_angle(CHARMMResidueTopologyBase self, CHARMMAngle bond)"""
10645  return _IMP_atom.CHARMMResidueTopologyBase_add_angle(self, bond)
10646 
10647  def get_number_of_dihedrals(self):
10648  r"""get_number_of_dihedrals(CHARMMResidueTopologyBase self) -> unsigned int"""
10649  return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_dihedrals(self)
10650 
10651  def add_dihedral(self, bond):
10652  r"""add_dihedral(CHARMMResidueTopologyBase self, CHARMMDihedral bond)"""
10653  return _IMP_atom.CHARMMResidueTopologyBase_add_dihedral(self, bond)
10654 
10655  def get_number_of_impropers(self):
10656  r"""get_number_of_impropers(CHARMMResidueTopologyBase self) -> unsigned int"""
10657  return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_impropers(self)
10658 
10659  def add_improper(self, bond):
10660  r"""add_improper(CHARMMResidueTopologyBase self, CHARMMDihedral bond)"""
10661  return _IMP_atom.CHARMMResidueTopologyBase_add_improper(self, bond)
10662 
10663  def get_number_of_internal_coordinates(self):
10664  r"""get_number_of_internal_coordinates(CHARMMResidueTopologyBase self) -> unsigned int"""
10665  return _IMP_atom.CHARMMResidueTopologyBase_get_number_of_internal_coordinates(self)
10666 
10667  def add_internal_coordinate(self, ic):
10668  r"""add_internal_coordinate(CHARMMResidueTopologyBase self, CHARMMInternalCoordinate ic)"""
10669  return _IMP_atom.CHARMMResidueTopologyBase_add_internal_coordinate(self, ic)
10670 
10671  def get_internal_coordinate(self, index):
10672  r"""get_internal_coordinate(CHARMMResidueTopologyBase self, unsigned int index) -> CHARMMInternalCoordinate"""
10673  return _IMP_atom.CHARMMResidueTopologyBase_get_internal_coordinate(self, index)
10674 
10675  def get_bond(self, index):
10676  r"""get_bond(CHARMMResidueTopologyBase self, unsigned int index) -> CHARMMBond"""
10677  return _IMP_atom.CHARMMResidueTopologyBase_get_bond(self, index)
10678 
10679  def get_angle(self, index):
10680  r"""get_angle(CHARMMResidueTopologyBase self, unsigned int index) -> CHARMMAngle"""
10681  return _IMP_atom.CHARMMResidueTopologyBase_get_angle(self, index)
10682 
10683  def get_dihedral(self, index):
10684  r"""get_dihedral(CHARMMResidueTopologyBase self, unsigned int index) -> CHARMMDihedral"""
10685  return _IMP_atom.CHARMMResidueTopologyBase_get_dihedral(self, index)
10686 
10687  def get_improper(self, index):
10688  r"""get_improper(CHARMMResidueTopologyBase self, unsigned int index) -> CHARMMDihedral"""
10689  return _IMP_atom.CHARMMResidueTopologyBase_get_improper(self, index)
10690 
10691  def get_version_info(self):
10692  r"""get_version_info(CHARMMResidueTopologyBase self) -> VersionInfo"""
10693  return _IMP_atom.CHARMMResidueTopologyBase_get_version_info(self)
10694  __swig_destroy__ = _IMP_atom.delete_CHARMMResidueTopologyBase
10695 
10696  def __str__(self):
10697  r"""__str__(CHARMMResidueTopologyBase self) -> std::string"""
10698  return _IMP_atom.CHARMMResidueTopologyBase___str__(self)
10699 
10700  def __repr__(self):
10701  r"""__repr__(CHARMMResidueTopologyBase self) -> std::string"""
10702  return _IMP_atom.CHARMMResidueTopologyBase___repr__(self)
10703 
10704  @staticmethod
10705  def get_from(o):
10706  return _object_cast_to_CHARMMResidueTopologyBase(o)
10707 
10708 
10709 # Register CHARMMResidueTopologyBase in _IMP_atom:
10710 _IMP_atom.CHARMMResidueTopologyBase_swigregister(CHARMMResidueTopologyBase)
10711 class CHARMMIdealResidueTopology(CHARMMResidueTopologyBase):
10712  r"""Proxy of C++ IMP::atom::CHARMMIdealResidueTopology class."""
10713 
10714  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10715 
10716  def __init__(self, *args):
10717  r"""
10718  __init__(CHARMMIdealResidueTopology self, std::string type) -> CHARMMIdealResidueTopology
10719  __init__(CHARMMIdealResidueTopology self, ResidueType type) -> CHARMMIdealResidueTopology
10720  """
10721  _IMP_atom.CHARMMIdealResidueTopology_swiginit(self, _IMP_atom.new_CHARMMIdealResidueTopology(*args))
10722 
10723  def remove_atom(self, name):
10724  r"""remove_atom(CHARMMIdealResidueTopology self, std::string name)"""
10725  return _IMP_atom.CHARMMIdealResidueTopology_remove_atom(self, name)
10726 
10727  def set_default_first_patch(self, patch):
10728  r"""set_default_first_patch(CHARMMIdealResidueTopology self, std::string patch)"""
10729  return _IMP_atom.CHARMMIdealResidueTopology_set_default_first_patch(self, patch)
10730 
10731  def set_default_last_patch(self, patch):
10732  r"""set_default_last_patch(CHARMMIdealResidueTopology self, std::string patch)"""
10733  return _IMP_atom.CHARMMIdealResidueTopology_set_default_last_patch(self, patch)
10734 
10735  def get_default_first_patch(self):
10736  r"""get_default_first_patch(CHARMMIdealResidueTopology self) -> std::string"""
10737  return _IMP_atom.CHARMMIdealResidueTopology_get_default_first_patch(self)
10738 
10739  def get_default_last_patch(self):
10740  r"""get_default_last_patch(CHARMMIdealResidueTopology self) -> std::string"""
10741  return _IMP_atom.CHARMMIdealResidueTopology_get_default_last_patch(self)
10742  __swig_destroy__ = _IMP_atom.delete_CHARMMIdealResidueTopology
10743 
10744  def __str__(self):
10745  r"""__str__(CHARMMIdealResidueTopology self) -> std::string"""
10746  return _IMP_atom.CHARMMIdealResidueTopology___str__(self)
10747 
10748  def __repr__(self):
10749  r"""__repr__(CHARMMIdealResidueTopology self) -> std::string"""
10750  return _IMP_atom.CHARMMIdealResidueTopology___repr__(self)
10751 
10752  @staticmethod
10753  def get_from(o):
10754  return _object_cast_to_CHARMMIdealResidueTopology(o)
10755 
10756 
10757 # Register CHARMMIdealResidueTopology in _IMP_atom:
10758 _IMP_atom.CHARMMIdealResidueTopology_swigregister(CHARMMIdealResidueTopology)
10759 class CHARMMPatch(CHARMMResidueTopologyBase):
10760  r"""Proxy of C++ IMP::atom::CHARMMPatch class."""
10761 
10762  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10763 
10764  def __init__(self, type):
10765  r"""__init__(CHARMMPatch self, std::string type) -> CHARMMPatch"""
10766  _IMP_atom.CHARMMPatch_swiginit(self, _IMP_atom.new_CHARMMPatch(type))
10767 
10768  def add_removed_atom(self, name):
10769  r"""add_removed_atom(CHARMMPatch self, std::string name)"""
10770  return _IMP_atom.CHARMMPatch_add_removed_atom(self, name)
10771 
10772  def get_number_of_removed_atoms(self):
10773  r"""get_number_of_removed_atoms(CHARMMPatch self) -> unsigned int"""
10774  return _IMP_atom.CHARMMPatch_get_number_of_removed_atoms(self)
10775 
10776  def get_removed_atom(self, i):
10777  r"""get_removed_atom(CHARMMPatch self, unsigned int i) -> std::string"""
10778  return _IMP_atom.CHARMMPatch_get_removed_atom(self, i)
10779 
10780  def apply(self, *args):
10781  r"""
10782  apply(CHARMMPatch self, CHARMMResidueTopology res)
10783  apply(CHARMMPatch self, CHARMMResidueTopology res1, CHARMMResidueTopology res2)
10784  """
10785  return _IMP_atom.CHARMMPatch_apply(self, *args)
10786  __swig_destroy__ = _IMP_atom.delete_CHARMMPatch
10787 
10788  def __str__(self):
10789  r"""__str__(CHARMMPatch self) -> std::string"""
10790  return _IMP_atom.CHARMMPatch___str__(self)
10791 
10792  def __repr__(self):
10793  r"""__repr__(CHARMMPatch self) -> std::string"""
10794  return _IMP_atom.CHARMMPatch___repr__(self)
10795 
10796  @staticmethod
10797  def get_from(o):
10798  return _object_cast_to_CHARMMPatch(o)
10799 
10800 
10801 # Register CHARMMPatch in _IMP_atom:
10802 _IMP_atom.CHARMMPatch_swigregister(CHARMMPatch)
10803 class CHARMMResidueTopology(CHARMMIdealResidueTopology):
10804  r"""Proxy of C++ IMP::atom::CHARMMResidueTopology class."""
10805 
10806  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10807 
10808  def __init__(self, *args):
10809  r"""
10810  __init__(CHARMMResidueTopology self, ResidueType type) -> CHARMMResidueTopology
10811  __init__(CHARMMResidueTopology self, CHARMMIdealResidueTopology ideal) -> CHARMMResidueTopology
10812  """
10813  _IMP_atom.CHARMMResidueTopology_swiginit(self, _IMP_atom.new_CHARMMResidueTopology(*args))
10814 
10815  def get_patched(self):
10816  r"""get_patched(CHARMMResidueTopology self) -> bool"""
10817  return _IMP_atom.CHARMMResidueTopology_get_patched(self)
10818 
10819  def set_patched(self, patched):
10820  r"""set_patched(CHARMMResidueTopology self, bool patched)"""
10821  return _IMP_atom.CHARMMResidueTopology_set_patched(self, patched)
10822  __swig_destroy__ = _IMP_atom.delete_CHARMMResidueTopology
10823 
10824  def __str__(self):
10825  r"""__str__(CHARMMResidueTopology self) -> std::string"""
10826  return _IMP_atom.CHARMMResidueTopology___str__(self)
10827 
10828  def __repr__(self):
10829  r"""__repr__(CHARMMResidueTopology self) -> std::string"""
10830  return _IMP_atom.CHARMMResidueTopology___repr__(self)
10831 
10832  @staticmethod
10833  def get_from(o):
10834  return _object_cast_to_CHARMMResidueTopology(o)
10835 
10836 
10837 # Register CHARMMResidueTopology in _IMP_atom:
10838 _IMP_atom.CHARMMResidueTopology_swigregister(CHARMMResidueTopology)
10839 class CHARMMAtom(Atom):
10840  r"""Proxy of C++ IMP::atom::CHARMMAtom class."""
10841 
10842  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10843 
10844  def __init__(self, *args):
10845  r"""
10846  __init__(CHARMMAtom self) -> CHARMMAtom
10847  __init__(CHARMMAtom self, Model m, ParticleIndex id) -> CHARMMAtom
10848  __init__(CHARMMAtom self, _ParticleAdaptor d) -> CHARMMAtom
10849  """
10850  _IMP_atom.CHARMMAtom_swiginit(self, _IMP_atom.new_CHARMMAtom(*args))
10851 
10852  def show(self, *args):
10853  r"""show(CHARMMAtom self, _ostream out=std::cout)"""
10854  return _IMP_atom.CHARMMAtom_show(self, *args)
10855 
10856  @staticmethod
10857  def setup_particle(*args):
10858  r"""
10859  setup_particle(Model m, ParticleIndex pi, IMP::String charmm_type) -> CHARMMAtom
10860  setup_particle(_ParticleAdaptor pa, IMP::String charmm_type) -> CHARMMAtom
10861  """
10862  return _IMP_atom.CHARMMAtom_setup_particle(*args)
10863 
10864  def get_charmm_type(self):
10865  r"""get_charmm_type(CHARMMAtom self) -> IMP::String"""
10866  return _IMP_atom.CHARMMAtom_get_charmm_type(self)
10867 
10868  def set_charmm_type(self, t):
10869  r"""set_charmm_type(CHARMMAtom self, IMP::String t)"""
10870  return _IMP_atom.CHARMMAtom_set_charmm_type(self, t)
10871 
10872  @staticmethod
10873  def get_is_setup(*args):
10874  r"""
10875  get_is_setup(_ParticleAdaptor p) -> bool
10876  get_is_setup(Model m, ParticleIndex pi) -> bool
10877  """
10878  return _IMP_atom.CHARMMAtom_get_is_setup(*args)
10879 
10880  @staticmethod
10881  def get_charmm_type_key():
10882  r"""get_charmm_type_key() -> StringKey"""
10883  return _IMP_atom.CHARMMAtom_get_charmm_type_key()
10884 
10885  def add_attribute(self, *args):
10886  r"""
10887  add_attribute(CHARMMAtom self, FloatKey k, IMP::Float v, bool opt)
10888  add_attribute(CHARMMAtom self, FloatKey a0, IMP::Float a1)
10889  add_attribute(CHARMMAtom self, IntKey a0, IMP::Int a1)
10890  add_attribute(CHARMMAtom self, FloatsKey a0, IMP::Floats a1)
10891  add_attribute(CHARMMAtom self, IntsKey a0, IMP::Ints a1)
10892  add_attribute(CHARMMAtom self, StringKey a0, IMP::String a1)
10893  add_attribute(CHARMMAtom self, ParticleIndexKey a0, Particle a1)
10894  add_attribute(CHARMMAtom self, ObjectKey a0, Object a1)
10895  add_attribute(CHARMMAtom self, SparseFloatKey a0, IMP::Float a1)
10896  add_attribute(CHARMMAtom self, SparseIntKey a0, IMP::Int a1)
10897  add_attribute(CHARMMAtom self, SparseStringKey a0, IMP::String a1)
10898  add_attribute(CHARMMAtom self, SparseParticleIndexKey a0, ParticleIndex a1)
10899  """
10900  return _IMP_atom.CHARMMAtom_add_attribute(self, *args)
10901 
10902  def get_value(self, *args):
10903  r"""
10904  get_value(CHARMMAtom self, FloatKey a0) -> IMP::Float
10905  get_value(CHARMMAtom self, IntKey a0) -> IMP::Int
10906  get_value(CHARMMAtom self, FloatsKey a0) -> IMP::Floats
10907  get_value(CHARMMAtom self, IntsKey a0) -> IMP::Ints
10908  get_value(CHARMMAtom self, StringKey a0) -> IMP::String
10909  get_value(CHARMMAtom self, ParticleIndexKey a0) -> Particle
10910  get_value(CHARMMAtom self, ObjectKey a0) -> Object
10911  get_value(CHARMMAtom self, SparseFloatKey a0) -> IMP::Float
10912  get_value(CHARMMAtom self, SparseIntKey a0) -> IMP::Int
10913  get_value(CHARMMAtom self, SparseStringKey a0) -> IMP::String
10914  get_value(CHARMMAtom self, SparseParticleIndexKey a0) -> ParticleIndex
10915  """
10916  return _IMP_atom.CHARMMAtom_get_value(self, *args)
10917 
10918  def set_value(self, *args):
10919  r"""
10920  set_value(CHARMMAtom self, FloatKey a0, IMP::Float a1)
10921  set_value(CHARMMAtom self, IntKey a0, IMP::Int a1)
10922  set_value(CHARMMAtom self, FloatsKey a0, IMP::Floats a1)
10923  set_value(CHARMMAtom self, IntsKey a0, IMP::Ints a1)
10924  set_value(CHARMMAtom self, StringKey a0, IMP::String a1)
10925  set_value(CHARMMAtom self, ParticleIndexKey a0, Particle a1)
10926  set_value(CHARMMAtom self, ObjectKey a0, Object a1)
10927  set_value(CHARMMAtom self, SparseFloatKey a0, IMP::Float a1)
10928  set_value(CHARMMAtom self, SparseIntKey a0, IMP::Int a1)
10929  set_value(CHARMMAtom self, SparseStringKey a0, IMP::String a1)
10930  set_value(CHARMMAtom self, SparseParticleIndexKey a0, ParticleIndex a1)
10931  """
10932  return _IMP_atom.CHARMMAtom_set_value(self, *args)
10933 
10934  def remove_attribute(self, *args):
10935  r"""
10936  remove_attribute(CHARMMAtom self, FloatKey a0)
10937  remove_attribute(CHARMMAtom self, IntKey a0)
10938  remove_attribute(CHARMMAtom self, FloatsKey a0)
10939  remove_attribute(CHARMMAtom self, IntsKey a0)
10940  remove_attribute(CHARMMAtom self, StringKey a0)
10941  remove_attribute(CHARMMAtom self, ParticleIndexKey a0)
10942  remove_attribute(CHARMMAtom self, ObjectKey a0)
10943  remove_attribute(CHARMMAtom self, SparseFloatKey a0)
10944  remove_attribute(CHARMMAtom self, SparseIntKey a0)
10945  remove_attribute(CHARMMAtom self, SparseStringKey a0)
10946  remove_attribute(CHARMMAtom self, SparseParticleIndexKey a0)
10947  """
10948  return _IMP_atom.CHARMMAtom_remove_attribute(self, *args)
10949 
10950  def has_attribute(self, *args):
10951  r"""
10952  has_attribute(CHARMMAtom self, FloatKey a0) -> bool
10953  has_attribute(CHARMMAtom self, IntKey a0) -> bool
10954  has_attribute(CHARMMAtom self, FloatsKey a0) -> bool
10955  has_attribute(CHARMMAtom self, IntsKey a0) -> bool
10956  has_attribute(CHARMMAtom self, StringKey a0) -> bool
10957  has_attribute(CHARMMAtom self, ParticleIndexKey a0) -> bool
10958  has_attribute(CHARMMAtom self, ObjectKey a0) -> bool
10959  has_attribute(CHARMMAtom self, SparseFloatKey a0) -> bool
10960  has_attribute(CHARMMAtom self, SparseIntKey a0) -> bool
10961  has_attribute(CHARMMAtom self, SparseStringKey a0) -> bool
10962  has_attribute(CHARMMAtom self, SparseParticleIndexKey a0) -> bool
10963  """
10964  return _IMP_atom.CHARMMAtom_has_attribute(self, *args)
10965 
10966  def get_derivative(self, a0):
10967  r"""get_derivative(CHARMMAtom self, FloatKey a0) -> double"""
10968  return _IMP_atom.CHARMMAtom_get_derivative(self, a0)
10969 
10970  def get_name(self):
10971  r"""get_name(CHARMMAtom self) -> std::string"""
10972  return _IMP_atom.CHARMMAtom_get_name(self)
10973 
10974  def clear_caches(self):
10975  r"""clear_caches(CHARMMAtom self)"""
10976  return _IMP_atom.CHARMMAtom_clear_caches(self)
10977 
10978  def set_name(self, a0):
10979  r"""set_name(CHARMMAtom self, std::string a0)"""
10980  return _IMP_atom.CHARMMAtom_set_name(self, a0)
10981 
10982  def set_check_level(self, a0):
10983  r"""set_check_level(CHARMMAtom self, IMP::CheckLevel a0)"""
10984  return _IMP_atom.CHARMMAtom_set_check_level(self, a0)
10985 
10986  def add_to_derivative(self, a0, a1, a2):
10987  r"""add_to_derivative(CHARMMAtom self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
10988  return _IMP_atom.CHARMMAtom_add_to_derivative(self, a0, a1, a2)
10989 
10990  def set_is_optimized(self, a0, a1):
10991  r"""set_is_optimized(CHARMMAtom self, FloatKey a0, bool a1)"""
10992  return _IMP_atom.CHARMMAtom_set_is_optimized(self, a0, a1)
10993 
10994  def get_is_optimized(self, a0):
10995  r"""get_is_optimized(CHARMMAtom self, FloatKey a0) -> bool"""
10996  return _IMP_atom.CHARMMAtom_get_is_optimized(self, a0)
10997 
10998  def get_check_level(self):
10999  r"""get_check_level(CHARMMAtom self) -> IMP::CheckLevel"""
11000  return _IMP_atom.CHARMMAtom_get_check_level(self)
11001 
11002  def __eq__(self, *args):
11003  r"""
11004  __eq__(CHARMMAtom self, CHARMMAtom o) -> bool
11005  __eq__(CHARMMAtom self, Particle d) -> bool
11006  """
11007  return _IMP_atom.CHARMMAtom___eq__(self, *args)
11008 
11009  def __ne__(self, *args):
11010  r"""
11011  __ne__(CHARMMAtom self, CHARMMAtom o) -> bool
11012  __ne__(CHARMMAtom self, Particle d) -> bool
11013  """
11014  return _IMP_atom.CHARMMAtom___ne__(self, *args)
11015 
11016  def __le__(self, *args):
11017  r"""
11018  __le__(CHARMMAtom self, CHARMMAtom o) -> bool
11019  __le__(CHARMMAtom self, Particle d) -> bool
11020  """
11021  return _IMP_atom.CHARMMAtom___le__(self, *args)
11022 
11023  def __lt__(self, *args):
11024  r"""
11025  __lt__(CHARMMAtom self, CHARMMAtom o) -> bool
11026  __lt__(CHARMMAtom self, Particle d) -> bool
11027  """
11028  return _IMP_atom.CHARMMAtom___lt__(self, *args)
11029 
11030  def __ge__(self, *args):
11031  r"""
11032  __ge__(CHARMMAtom self, CHARMMAtom o) -> bool
11033  __ge__(CHARMMAtom self, Particle d) -> bool
11034  """
11035  return _IMP_atom.CHARMMAtom___ge__(self, *args)
11036 
11037  def __gt__(self, *args):
11038  r"""
11039  __gt__(CHARMMAtom self, CHARMMAtom o) -> bool
11040  __gt__(CHARMMAtom self, Particle d) -> bool
11041  """
11042  return _IMP_atom.CHARMMAtom___gt__(self, *args)
11043 
11044  def __hash__(self):
11045  r"""__hash__(CHARMMAtom self) -> std::size_t"""
11046  return _IMP_atom.CHARMMAtom___hash__(self)
11047 
11048  def __str__(self):
11049  r"""__str__(CHARMMAtom self) -> std::string"""
11050  return _IMP_atom.CHARMMAtom___str__(self)
11051 
11052  def __repr__(self):
11053  r"""__repr__(CHARMMAtom self) -> std::string"""
11054  return _IMP_atom.CHARMMAtom___repr__(self)
11055 
11056  def _get_as_binary(self):
11057  r"""_get_as_binary(CHARMMAtom self) -> PyObject *"""
11058  return _IMP_atom.CHARMMAtom__get_as_binary(self)
11059 
11060  def _set_from_binary(self, p):
11061  r"""_set_from_binary(CHARMMAtom self, PyObject * p)"""
11062  return _IMP_atom.CHARMMAtom__set_from_binary(self, p)
11063 
11064  def __getstate__(self):
11065  p = self._get_as_binary()
11066  if len(self.__dict__) > 1:
11067  d = self.__dict__.copy()
11068  del d['this']
11069  p = (d, p)
11070  return p
11071 
11072  def __setstate__(self, p):
11073  if not hasattr(self, 'this'):
11074  self.__init__()
11075  if isinstance(p, tuple):
11076  d, p = p
11077  self.__dict__.update(d)
11078  return self._set_from_binary(p)
11079 
11080  __swig_destroy__ = _IMP_atom.delete_CHARMMAtom
11081 
11082 # Register CHARMMAtom in _IMP_atom:
11083 _IMP_atom.CHARMMAtom_swigregister(CHARMMAtom)
11084 
11085 def get_charmm_untyped_atoms(hierarchy):
11086  r"""get_charmm_untyped_atoms(Hierarchy hierarchy) -> IMP::atom::Atoms"""
11087  return _IMP_atom.get_charmm_untyped_atoms(hierarchy)
11088 
11089 def remove_charmm_untyped_atoms(hierarchy):
11090  r"""remove_charmm_untyped_atoms(Hierarchy hierarchy)"""
11091  return _IMP_atom.remove_charmm_untyped_atoms(hierarchy)
11092 class CHARMMBondParameters(object):
11093  r"""Proxy of C++ IMP::atom::CHARMMBondParameters class."""
11094 
11095  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11096  force_constant = property(_IMP_atom.CHARMMBondParameters_force_constant_get, _IMP_atom.CHARMMBondParameters_force_constant_set, doc=r"""force_constant : double""")
11097  ideal = property(_IMP_atom.CHARMMBondParameters_ideal_get, _IMP_atom.CHARMMBondParameters_ideal_set, doc=r"""ideal : double""")
11098 
11099  def __init__(self):
11100  r"""__init__(CHARMMBondParameters self) -> CHARMMBondParameters"""
11101  _IMP_atom.CHARMMBondParameters_swiginit(self, _IMP_atom.new_CHARMMBondParameters())
11102 
11103  def show(self, *args):
11104  r"""show(CHARMMBondParameters self, _ostream out=std::cout)"""
11105  return _IMP_atom.CHARMMBondParameters_show(self, *args)
11106 
11107  def __str__(self):
11108  r"""__str__(CHARMMBondParameters self) -> std::string"""
11109  return _IMP_atom.CHARMMBondParameters___str__(self)
11110 
11111  def __repr__(self):
11112  r"""__repr__(CHARMMBondParameters self) -> std::string"""
11113  return _IMP_atom.CHARMMBondParameters___repr__(self)
11114 
11115  def _get_as_binary(self):
11116  r"""_get_as_binary(CHARMMBondParameters self) -> PyObject *"""
11117  return _IMP_atom.CHARMMBondParameters__get_as_binary(self)
11118 
11119  def _set_from_binary(self, p):
11120  r"""_set_from_binary(CHARMMBondParameters self, PyObject * p)"""
11121  return _IMP_atom.CHARMMBondParameters__set_from_binary(self, p)
11122 
11123  def __getstate__(self):
11124  p = self._get_as_binary()
11125  if len(self.__dict__) > 1:
11126  d = self.__dict__.copy()
11127  del d['this']
11128  p = (d, p)
11129  return p
11130 
11131  def __setstate__(self, p):
11132  if not hasattr(self, 'this'):
11133  self.__init__()
11134  if isinstance(p, tuple):
11135  d, p = p
11136  self.__dict__.update(d)
11137  return self._set_from_binary(p)
11138 
11139  __swig_destroy__ = _IMP_atom.delete_CHARMMBondParameters
11140 
11141 # Register CHARMMBondParameters in _IMP_atom:
11142 _IMP_atom.CHARMMBondParameters_swigregister(CHARMMBondParameters)
11143 class CHARMMDihedralParameters(object):
11144  r"""Proxy of C++ IMP::atom::CHARMMDihedralParameters class."""
11145 
11146  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11147  force_constant = property(_IMP_atom.CHARMMDihedralParameters_force_constant_get, _IMP_atom.CHARMMDihedralParameters_force_constant_set, doc=r"""force_constant : double""")
11148  multiplicity = property(_IMP_atom.CHARMMDihedralParameters_multiplicity_get, _IMP_atom.CHARMMDihedralParameters_multiplicity_set, doc=r"""multiplicity : int""")
11149  ideal = property(_IMP_atom.CHARMMDihedralParameters_ideal_get, _IMP_atom.CHARMMDihedralParameters_ideal_set, doc=r"""ideal : double""")
11150 
11151  def __init__(self):
11152  r"""__init__(CHARMMDihedralParameters self) -> CHARMMDihedralParameters"""
11153  _IMP_atom.CHARMMDihedralParameters_swiginit(self, _IMP_atom.new_CHARMMDihedralParameters())
11154 
11155  def show(self, *args):
11156  r"""show(CHARMMDihedralParameters self, _ostream out=std::cout)"""
11157  return _IMP_atom.CHARMMDihedralParameters_show(self, *args)
11158 
11159  def __str__(self):
11160  r"""__str__(CHARMMDihedralParameters self) -> std::string"""
11161  return _IMP_atom.CHARMMDihedralParameters___str__(self)
11162 
11163  def __repr__(self):
11164  r"""__repr__(CHARMMDihedralParameters self) -> std::string"""
11165  return _IMP_atom.CHARMMDihedralParameters___repr__(self)
11166 
11167  def _get_as_binary(self):
11168  r"""_get_as_binary(CHARMMDihedralParameters self) -> PyObject *"""
11169  return _IMP_atom.CHARMMDihedralParameters__get_as_binary(self)
11170 
11171  def _set_from_binary(self, p):
11172  r"""_set_from_binary(CHARMMDihedralParameters self, PyObject * p)"""
11173  return _IMP_atom.CHARMMDihedralParameters__set_from_binary(self, p)
11174 
11175  def __getstate__(self):
11176  p = self._get_as_binary()
11177  if len(self.__dict__) > 1:
11178  d = self.__dict__.copy()
11179  del d['this']
11180  p = (d, p)
11181  return p
11182 
11183  def __setstate__(self, p):
11184  if not hasattr(self, 'this'):
11185  self.__init__()
11186  if isinstance(p, tuple):
11187  d, p = p
11188  self.__dict__.update(d)
11189  return self._set_from_binary(p)
11190 
11191  __swig_destroy__ = _IMP_atom.delete_CHARMMDihedralParameters
11192 
11193 # Register CHARMMDihedralParameters in _IMP_atom:
11194 _IMP_atom.CHARMMDihedralParameters_swigregister(CHARMMDihedralParameters)
11195 class CHARMMParameters(ForceFieldParameters):
11196  r"""Proxy of C++ IMP::atom::CHARMMParameters class."""
11197 
11198  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11199 
11200  def __init__(self, *args):
11201  r"""__init__(CHARMMParameters self, TextInput topology_file_name, TextInput par_file_name=IMP::TextInput(), bool translate_names_to_pdb=False) -> CHARMMParameters"""
11202  _IMP_atom.CHARMMParameters_swiginit(self, _IMP_atom.new_CHARMMParameters(*args))
11203 
11204  def add_residue_topology(self, res):
11205  r"""add_residue_topology(CHARMMParameters self, CHARMMIdealResidueTopology res)"""
11206  return _IMP_atom.CHARMMParameters_add_residue_topology(self, res)
11207 
11208  def get_residue_topology(self, type):
11209  r"""get_residue_topology(CHARMMParameters self, ResidueType type) -> CHARMMIdealResidueTopology"""
11210  return _IMP_atom.CHARMMParameters_get_residue_topology(self, type)
11211 
11212  def add_patch(self, patch):
11213  r"""add_patch(CHARMMParameters self, CHARMMPatch patch)"""
11214  return _IMP_atom.CHARMMParameters_add_patch(self, patch)
11215 
11216  def get_patch(self, name):
11217  r"""get_patch(CHARMMParameters self, std::string name) -> CHARMMPatch"""
11218  return _IMP_atom.CHARMMParameters_get_patch(self, name)
11219 
11220  def create_topology(self, hierarchy):
11221  r"""create_topology(CHARMMParameters self, Hierarchy hierarchy) -> CHARMMTopology"""
11222  return _IMP_atom.CHARMMParameters_create_topology(self, hierarchy)
11223 
11224  def get_bond_parameters(self, type1, type2):
11225  r"""get_bond_parameters(CHARMMParameters self, std::string type1, std::string type2) -> CHARMMBondParameters"""
11226  return _IMP_atom.CHARMMParameters_get_bond_parameters(self, type1, type2)
11227 
11228  def get_angle_parameters(self, type1, type2, type3):
11229  r"""get_angle_parameters(CHARMMParameters self, std::string type1, std::string type2, std::string type3) -> CHARMMBondParameters"""
11230  return _IMP_atom.CHARMMParameters_get_angle_parameters(self, type1, type2, type3)
11231 
11232  def get_dihedral_parameters(self, type1, type2, type3, type4):
11233  r"""get_dihedral_parameters(CHARMMParameters self, std::string type1, std::string type2, std::string type3, std::string type4) -> IMP::atom::CHARMMDihedralParametersList"""
11234  return _IMP_atom.CHARMMParameters_get_dihedral_parameters(self, type1, type2, type3, type4)
11235 
11236  def get_improper_parameters(self, type1, type2, type3, type4):
11237  r"""get_improper_parameters(CHARMMParameters self, std::string type1, std::string type2, std::string type3, std::string type4) -> CHARMMDihedralParameters"""
11238  return _IMP_atom.CHARMMParameters_get_improper_parameters(self, type1, type2, type3, type4)
11239 
11240  def create_angles(self, bonds):
11241  r"""create_angles(CHARMMParameters self, IMP::Particles bonds) -> IMP::Particles"""
11242  return _IMP_atom.CHARMMParameters_create_angles(self, bonds)
11243 
11244  def create_dihedrals(self, bonds):
11245  r"""create_dihedrals(CHARMMParameters self, IMP::Particles bonds) -> IMP::Particles"""
11246  return _IMP_atom.CHARMMParameters_create_dihedrals(self, bonds)
11247 
11248  def get_version_info(self):
11249  r"""get_version_info(CHARMMParameters self) -> VersionInfo"""
11250  return _IMP_atom.CHARMMParameters_get_version_info(self)
11251  __swig_destroy__ = _IMP_atom.delete_CHARMMParameters
11252 
11253  def __str__(self):
11254  r"""__str__(CHARMMParameters self) -> std::string"""
11255  return _IMP_atom.CHARMMParameters___str__(self)
11256 
11257  def __repr__(self):
11258  r"""__repr__(CHARMMParameters self) -> std::string"""
11259  return _IMP_atom.CHARMMParameters___repr__(self)
11260 
11261  @staticmethod
11262  def get_from(o):
11263  return _object_cast_to_CHARMMParameters(o)
11264 
11265 
11266 # Register CHARMMParameters in _IMP_atom:
11267 _IMP_atom.CHARMMParameters_swigregister(CHARMMParameters)
11268 
11270  r"""get_heavy_atom_CHARMM_parameters() -> CHARMMParameters"""
11271  return _IMP_atom.get_heavy_atom_CHARMM_parameters()
11272 
11274  r"""get_all_atom_CHARMM_parameters() -> CHARMMParameters"""
11275  return _IMP_atom.get_all_atom_CHARMM_parameters()
11276 class CHARMMSegmentTopology(IMP.Object):
11277  r"""Proxy of C++ IMP::atom::CHARMMSegmentTopology class."""
11278 
11279  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11280  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)
11281  def __set_residues(self, obj): IMP._list_util.set_varlist(self.residues, obj)
11282  def __del_residues(self): IMP._list_util.del_varlist(self.residues)
11283  residues = property(__get_residues, __set_residues, __del_residues, doc="List of ##ucnames")
11284 
11285  def remove_residue(self, d):
11286  r"""remove_residue(CHARMMSegmentTopology self, CHARMMResidueTopology d)"""
11287  return _IMP_atom.CHARMMSegmentTopology_remove_residue(self, d)
11288 
11289  def _python_index_residue(self, d, start, stop):
11290  r"""_python_index_residue(CHARMMSegmentTopology self, CHARMMResidueTopology d, unsigned int start, unsigned int stop) -> unsigned int"""
11291  return _IMP_atom.CHARMMSegmentTopology__python_index_residue(self, d, start, stop)
11292 
11293  def remove_residues(self, d):
11294  r"""remove_residues(CHARMMSegmentTopology self, IMP::atom::CHARMMResidueTopologies const & d)"""
11295  return _IMP_atom.CHARMMSegmentTopology_remove_residues(self, d)
11296 
11297  def set_residues(self, ps):
11298  r"""set_residues(CHARMMSegmentTopology self, IMP::atom::CHARMMResidueTopologies const & ps)"""
11299  return _IMP_atom.CHARMMSegmentTopology_set_residues(self, ps)
11300 
11301  def set_residues_order(self, objs):
11302  r"""set_residues_order(CHARMMSegmentTopology self, IMP::atom::CHARMMResidueTopologies const & objs)"""
11303  return _IMP_atom.CHARMMSegmentTopology_set_residues_order(self, objs)
11304 
11305  def add_residue(self, obj):
11306  r"""add_residue(CHARMMSegmentTopology self, CHARMMResidueTopology obj) -> unsigned int"""
11307  return _IMP_atom.CHARMMSegmentTopology_add_residue(self, obj)
11308 
11309  def add_residues(self, objs):
11310  r"""add_residues(CHARMMSegmentTopology self, IMP::atom::CHARMMResidueTopologies const & objs)"""
11311  return _IMP_atom.CHARMMSegmentTopology_add_residues(self, objs)
11312 
11313  def clear_residues(self):
11314  r"""clear_residues(CHARMMSegmentTopology self)"""
11315  return _IMP_atom.CHARMMSegmentTopology_clear_residues(self)
11316 
11317  def get_number_of_residues(self):
11318  r"""get_number_of_residues(CHARMMSegmentTopology self) -> unsigned int"""
11319  return _IMP_atom.CHARMMSegmentTopology_get_number_of_residues(self)
11320 
11321  def get_has_residues(self):
11322  r"""get_has_residues(CHARMMSegmentTopology self) -> bool"""
11323  return _IMP_atom.CHARMMSegmentTopology_get_has_residues(self)
11324 
11325  def get_residue(self, i):
11326  r"""get_residue(CHARMMSegmentTopology self, unsigned int i) -> CHARMMResidueTopology"""
11327  return _IMP_atom.CHARMMSegmentTopology_get_residue(self, i)
11328 
11329  def get_residues(self):
11330  r"""get_residues(CHARMMSegmentTopology self) -> IMP::atom::CHARMMResidueTopologies"""
11331  return _IMP_atom.CHARMMSegmentTopology_get_residues(self)
11332 
11333  def erase_residue(self, i):
11334  r"""erase_residue(CHARMMSegmentTopology self, unsigned int i)"""
11335  return _IMP_atom.CHARMMSegmentTopology_erase_residue(self, i)
11336 
11337  def reserve_residues(self, sz):
11338  r"""reserve_residues(CHARMMSegmentTopology self, unsigned int sz)"""
11339  return _IMP_atom.CHARMMSegmentTopology_reserve_residues(self, sz)
11340 
11341  def get_version_info(self):
11342  r"""get_version_info(CHARMMSegmentTopology self) -> VersionInfo"""
11343  return _IMP_atom.CHARMMSegmentTopology_get_version_info(self)
11344  __swig_destroy__ = _IMP_atom.delete_CHARMMSegmentTopology
11345 
11346  def __init__(self, *args):
11347  r"""__init__(CHARMMSegmentTopology self, std::string name="CHARMM segment topology %1%") -> CHARMMSegmentTopology"""
11348  _IMP_atom.CHARMMSegmentTopology_swiginit(self, _IMP_atom.new_CHARMMSegmentTopology(*args))
11349 
11350  def apply_default_patches(self, ff):
11351  r"""apply_default_patches(CHARMMSegmentTopology self, CHARMMParameters ff)"""
11352  return _IMP_atom.CHARMMSegmentTopology_apply_default_patches(self, ff)
11353 
11354  def __str__(self):
11355  r"""__str__(CHARMMSegmentTopology self) -> std::string"""
11356  return _IMP_atom.CHARMMSegmentTopology___str__(self)
11357 
11358  def __repr__(self):
11359  r"""__repr__(CHARMMSegmentTopology self) -> std::string"""
11360  return _IMP_atom.CHARMMSegmentTopology___repr__(self)
11361 
11362  @staticmethod
11363  def get_from(o):
11364  return _object_cast_to_CHARMMSegmentTopology(o)
11365 
11366 
11367 # Register CHARMMSegmentTopology in _IMP_atom:
11368 _IMP_atom.CHARMMSegmentTopology_swigregister(CHARMMSegmentTopology)
11369 class CHARMMTopology(IMP.Object):
11370  r"""Proxy of C++ IMP::atom::CHARMMTopology class."""
11371 
11372  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11373 
11374  def __init__(self, *args):
11375  r"""__init__(CHARMMTopology self, CHARMMParameters force_field, std::string name="CHARMM topology %1%") -> CHARMMTopology"""
11376  _IMP_atom.CHARMMTopology_swiginit(self, _IMP_atom.new_CHARMMTopology(*args))
11377 
11378  def get_parameters(self):
11379  r"""get_parameters(CHARMMTopology self) -> CHARMMParameters"""
11380  return _IMP_atom.CHARMMTopology_get_parameters(self)
11381 
11382  def add_sequence(self, sequence):
11383  r"""add_sequence(CHARMMTopology self, std::string sequence)"""
11384  return _IMP_atom.CHARMMTopology_add_sequence(self, sequence)
11385 
11386  def apply_default_patches(self):
11387  r"""apply_default_patches(CHARMMTopology self)"""
11388  return _IMP_atom.CHARMMTopology_apply_default_patches(self)
11389 
11390  def create_hierarchy(self, model):
11391  r"""create_hierarchy(CHARMMTopology self, Model model) -> Hierarchy"""
11392  return _IMP_atom.CHARMMTopology_create_hierarchy(self, model)
11393 
11394  def add_atom_types(self, hierarchy):
11395  r"""add_atom_types(CHARMMTopology self, Hierarchy hierarchy)"""
11396  return _IMP_atom.CHARMMTopology_add_atom_types(self, hierarchy)
11397 
11398  def add_coordinates(self, hierarchy):
11399  r"""add_coordinates(CHARMMTopology self, Hierarchy hierarchy)"""
11400  return _IMP_atom.CHARMMTopology_add_coordinates(self, hierarchy)
11401 
11402  def add_missing_atoms(self, hierarchy):
11403  r"""add_missing_atoms(CHARMMTopology self, Hierarchy hierarchy)"""
11404  return _IMP_atom.CHARMMTopology_add_missing_atoms(self, hierarchy)
11405 
11406  def setup_hierarchy(self, hierarchy):
11407  r"""setup_hierarchy(CHARMMTopology self, Hierarchy hierarchy)"""
11408  return _IMP_atom.CHARMMTopology_setup_hierarchy(self, hierarchy)
11409 
11410  def add_charges(self, hierarchy):
11411  r"""add_charges(CHARMMTopology self, Hierarchy hierarchy)"""
11412  return _IMP_atom.CHARMMTopology_add_charges(self, hierarchy)
11413 
11414  def add_bonds(self, hierarchy):
11415  r"""add_bonds(CHARMMTopology self, Hierarchy hierarchy) -> IMP::Particles"""
11416  return _IMP_atom.CHARMMTopology_add_bonds(self, hierarchy)
11417 
11418  def add_dihedrals(self, hierarchy):
11419  r"""add_dihedrals(CHARMMTopology self, Hierarchy hierarchy) -> IMP::Particles"""
11420  return _IMP_atom.CHARMMTopology_add_dihedrals(self, hierarchy)
11421 
11422  def add_impropers(self, hierarchy):
11423  r"""add_impropers(CHARMMTopology self, Hierarchy hierarchy) -> IMP::Particles"""
11424  return _IMP_atom.CHARMMTopology_add_impropers(self, hierarchy)
11425  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)
11426  def __set_segments(self, obj): IMP._list_util.set_varlist(self.segments, obj)
11427  def __del_segments(self): IMP._list_util.del_varlist(self.segments)
11428  segments = property(__get_segments, __set_segments, __del_segments, doc="List of ##ucnames")
11429 
11430  def remove_segment(self, d):
11431  r"""remove_segment(CHARMMTopology self, CHARMMSegmentTopology d)"""
11432  return _IMP_atom.CHARMMTopology_remove_segment(self, d)
11433 
11434  def _python_index_segment(self, d, start, stop):
11435  r"""_python_index_segment(CHARMMTopology self, CHARMMSegmentTopology d, unsigned int start, unsigned int stop) -> unsigned int"""
11436  return _IMP_atom.CHARMMTopology__python_index_segment(self, d, start, stop)
11437 
11438  def remove_segments(self, d):
11439  r"""remove_segments(CHARMMTopology self, IMP::atom::CHARMMSegmentTopologies const & d)"""
11440  return _IMP_atom.CHARMMTopology_remove_segments(self, d)
11441 
11442  def set_segments(self, ps):
11443  r"""set_segments(CHARMMTopology self, IMP::atom::CHARMMSegmentTopologies const & ps)"""
11444  return _IMP_atom.CHARMMTopology_set_segments(self, ps)
11445 
11446  def set_segments_order(self, objs):
11447  r"""set_segments_order(CHARMMTopology self, IMP::atom::CHARMMSegmentTopologies const & objs)"""
11448  return _IMP_atom.CHARMMTopology_set_segments_order(self, objs)
11449 
11450  def add_segment(self, obj):
11451  r"""add_segment(CHARMMTopology self, CHARMMSegmentTopology obj) -> unsigned int"""
11452  return _IMP_atom.CHARMMTopology_add_segment(self, obj)
11453 
11454  def add_segments(self, objs):
11455  r"""add_segments(CHARMMTopology self, IMP::atom::CHARMMSegmentTopologies const & objs)"""
11456  return _IMP_atom.CHARMMTopology_add_segments(self, objs)
11457 
11458  def clear_segments(self):
11459  r"""clear_segments(CHARMMTopology self)"""
11460  return _IMP_atom.CHARMMTopology_clear_segments(self)
11461 
11462  def get_number_of_segments(self):
11463  r"""get_number_of_segments(CHARMMTopology self) -> unsigned int"""
11464  return _IMP_atom.CHARMMTopology_get_number_of_segments(self)
11465 
11466  def get_has_segments(self):
11467  r"""get_has_segments(CHARMMTopology self) -> bool"""
11468  return _IMP_atom.CHARMMTopology_get_has_segments(self)
11469 
11470  def get_segment(self, i):
11471  r"""get_segment(CHARMMTopology self, unsigned int i) -> CHARMMSegmentTopology"""
11472  return _IMP_atom.CHARMMTopology_get_segment(self, i)
11473 
11474  def get_segments(self):
11475  r"""get_segments(CHARMMTopology self) -> IMP::atom::CHARMMSegmentTopologies"""
11476  return _IMP_atom.CHARMMTopology_get_segments(self)
11477 
11478  def erase_segment(self, i):
11479  r"""erase_segment(CHARMMTopology self, unsigned int i)"""
11480  return _IMP_atom.CHARMMTopology_erase_segment(self, i)
11481 
11482  def reserve_segments(self, sz):
11483  r"""reserve_segments(CHARMMTopology self, unsigned int sz)"""
11484  return _IMP_atom.CHARMMTopology_reserve_segments(self, sz)
11485 
11486  def get_version_info(self):
11487  r"""get_version_info(CHARMMTopology self) -> VersionInfo"""
11488  return _IMP_atom.CHARMMTopology_get_version_info(self)
11489  __swig_destroy__ = _IMP_atom.delete_CHARMMTopology
11490 
11491  def __str__(self):
11492  r"""__str__(CHARMMTopology self) -> std::string"""
11493  return _IMP_atom.CHARMMTopology___str__(self)
11494 
11495  def __repr__(self):
11496  r"""__repr__(CHARMMTopology self) -> std::string"""
11497  return _IMP_atom.CHARMMTopology___repr__(self)
11498 
11499  @staticmethod
11500  def get_from(o):
11501  return _object_cast_to_CHARMMTopology(o)
11502 
11503 
11504 # Register CHARMMTopology in _IMP_atom:
11505 _IMP_atom.CHARMMTopology_swigregister(CHARMMTopology)
11506 class CHARMMStereochemistryRestraint(IMP.Restraint):
11507  r"""Proxy of C++ IMP::atom::CHARMMStereochemistryRestraint class."""
11508 
11509  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11510 
11511  def __init__(self, *args):
11512  r"""
11513  __init__(CHARMMStereochemistryRestraint self, Hierarchy h, CHARMMTopology topology) -> CHARMMStereochemistryRestraint
11514  __init__(CHARMMStereochemistryRestraint self, Hierarchy h, CHARMMTopology topology, IMP::ParticlesTemp limit_to_these_particles) -> CHARMMStereochemistryRestraint
11515  """
11516  _IMP_atom.CHARMMStereochemistryRestraint_swiginit(self, _IMP_atom.new_CHARMMStereochemistryRestraint(*args))
11517 
11518  def get_pair_filter(self):
11519  r"""get_pair_filter(CHARMMStereochemistryRestraint self) -> StereochemistryPairFilter"""
11520  return _IMP_atom.CHARMMStereochemistryRestraint_get_pair_filter(self)
11521 
11522  def get_full_pair_filter(self):
11523  r"""get_full_pair_filter(CHARMMStereochemistryRestraint self) -> StereochemistryPairFilter"""
11524  return _IMP_atom.CHARMMStereochemistryRestraint_get_full_pair_filter(self)
11525 
11526  def do_get_inputs(self):
11527  r"""do_get_inputs(CHARMMStereochemistryRestraint self) -> IMP::ModelObjectsTemp"""
11528  return _IMP_atom.CHARMMStereochemistryRestraint_do_get_inputs(self)
11529 
11530  def get_version_info(self):
11531  r"""get_version_info(CHARMMStereochemistryRestraint self) -> VersionInfo"""
11532  return _IMP_atom.CHARMMStereochemistryRestraint_get_version_info(self)
11533  __swig_destroy__ = _IMP_atom.delete_CHARMMStereochemistryRestraint
11534 
11535  def __str__(self):
11536  r"""__str__(CHARMMStereochemistryRestraint self) -> std::string"""
11537  return _IMP_atom.CHARMMStereochemistryRestraint___str__(self)
11538 
11539  def __repr__(self):
11540  r"""__repr__(CHARMMStereochemistryRestraint self) -> std::string"""
11541  return _IMP_atom.CHARMMStereochemistryRestraint___repr__(self)
11542 
11543  @staticmethod
11544  def get_from(o):
11545  return _object_cast_to_CHARMMStereochemistryRestraint(o)
11546 
11547 
11548 # Register CHARMMStereochemistryRestraint in _IMP_atom:
11549 _IMP_atom.CHARMMStereochemistryRestraint_swigregister(CHARMMStereochemistryRestraint)
11550 
11551 def add_bonds(*args):
11552  r"""add_bonds(Hierarchy d, ForceFieldParameters ffp=IMP::atom::get_all_atom_CHARMM_parameters())"""
11553  return _IMP_atom.add_bonds(*args)
11554 
11555 def add_radii(*args):
11556  r"""add_radii(Hierarchy d, ForceFieldParameters ffp=IMP::atom::get_all_atom_CHARMM_parameters(), FloatKey radius_key=IMP::FloatKey("radius"))"""
11557  return _IMP_atom.add_radii(*args)
11558 ALBER = _IMP_atom.ALBER
11559 
11560 HARPAZ = _IMP_atom.HARPAZ
11561 
11562 ANDERSSON = _IMP_atom.ANDERSSON
11563 
11564 TSAI = _IMP_atom.TSAI
11565 
11566 QUILLIN = _IMP_atom.QUILLIN
11567 
11568 SQUIRE = _IMP_atom.SQUIRE
11569 
11570 
11571 def get_protein_density_from_reference(densityReference):
11572  r"""get_protein_density_from_reference(IMP::atom::ProteinDensityReference densityReference) -> double"""
11573  return _IMP_atom.get_protein_density_from_reference(densityReference)
11574 
11575 def get_volume_from_mass(*args):
11576  r"""get_volume_from_mass(double m, IMP::atom::ProteinDensityReference ref=ALBER) -> double"""
11577  return _IMP_atom.get_volume_from_mass(*args)
11578 
11579 def get_mass_from_volume(*args):
11580  r"""get_mass_from_volume(double v, IMP::atom::ProteinDensityReference ref=ALBER) -> double"""
11581  return _IMP_atom.get_mass_from_volume(*args)
11582 
11584  r"""get_mass_from_number_of_residues(unsigned int num_aa) -> double"""
11585  return _IMP_atom.get_mass_from_number_of_residues(num_aa)
11586 
11588  r"""get_volume_from_residue_type(ResidueType rt) -> double"""
11589  return _IMP_atom.get_volume_from_residue_type(rt)
11590 
11591 def get_molarity(n, volume):
11592  r"""get_molarity(double n, double volume) -> double"""
11593  return _IMP_atom.get_molarity(n, volume)
11594 
11595 def get_kd(na, nb, nab, volume):
11596  r"""get_kd(double na, double nb, double nab, double volume) -> double"""
11597  return _IMP_atom.get_kd(na, nb, nab, volume)
11598 
11599 def get_einstein_diffusion_coefficient(r, temp=-1):
11600  r"""get_einstein_diffusion_coefficient(double r, double temp=-1) -> double"""
11601  return _IMP_atom.get_einstein_diffusion_coefficient(r, temp)
11602 
11604  r"""get_einstein_rotational_diffusion_coefficient(double r, double temp=-1) -> double"""
11605  return _IMP_atom.get_einstein_rotational_diffusion_coefficient(r, temp)
11606 
11607 def get_diffusion_length(*args):
11608  r"""
11609  get_diffusion_length(double D, double t) -> double
11610  get_diffusion_length(double D, double force, double t, double temp=-1) -> double
11611  """
11612  return _IMP_atom.get_diffusion_length(*args)
11613 
11614 def get_diffusion_angle(D, dtfs):
11615  r"""get_diffusion_angle(double D, double dtfs) -> double"""
11616  return _IMP_atom.get_diffusion_angle(D, dtfs)
11617 
11618 def get_diffusion_coefficient(*args):
11619  r"""
11620  get_diffusion_coefficient(IMP::algebra::Vector3Ds const & displacements, double dt) -> double
11621  get_diffusion_coefficient(IMP::algebra::Vector3Ds const & displacements, IMP::Floats const & dts) -> double
11622  """
11623  return _IMP_atom.get_diffusion_coefficient(*args)
11624 
11625 def get_rotational_diffusion_coefficient(orientations, dt):
11626  r"""get_rotational_diffusion_coefficient(IMP::algebra::Rotation3Ds const & orientations, double dt) -> double"""
11627  return _IMP_atom.get_rotational_diffusion_coefficient(orientations, dt)
11628 
11629 def get_energy_in_femto_joules(energy_in_kcal_per_mol):
11630  r"""get_energy_in_femto_joules(double energy_in_kcal_per_mol) -> double"""
11631  return _IMP_atom.get_energy_in_femto_joules(energy_in_kcal_per_mol)
11632 
11633 def get_force_in_femto_newtons(force_in_kcal_per_mol_per_angstrom):
11634  r"""get_force_in_femto_newtons(double force_in_kcal_per_mol_per_angstrom) -> double"""
11635  return _IMP_atom.get_force_in_femto_newtons(force_in_kcal_per_mol_per_angstrom)
11636 
11637 def get_spring_constant_in_femto_newtons_per_angstrom(k_in_kcal_per_mol_per_angstrom_square):
11638  r"""get_spring_constant_in_femto_newtons_per_angstrom(double k_in_kcal_per_mol_per_angstrom_square) -> double"""
11639  return _IMP_atom.get_spring_constant_in_femto_newtons_per_angstrom(k_in_kcal_per_mol_per_angstrom_square)
11640 class EzRestraint(IMP.Restraint):
11641  r"""Proxy of C++ IMP::atom::EzRestraint class."""
11642 
11643  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11644 
11645  def __init__(self, m, ps):
11646  r"""__init__(EzRestraint self, Model m, _ParticleIndexesAdaptor ps) -> EzRestraint"""
11647  _IMP_atom.EzRestraint_swiginit(self, _IMP_atom.new_EzRestraint(m, ps))
11648 
11649  def get_version_info(self):
11650  r"""get_version_info(EzRestraint self) -> VersionInfo"""
11651  return _IMP_atom.EzRestraint_get_version_info(self)
11652  __swig_destroy__ = _IMP_atom.delete_EzRestraint
11653 
11654  def __str__(self):
11655  r"""__str__(EzRestraint self) -> std::string"""
11656  return _IMP_atom.EzRestraint___str__(self)
11657 
11658  def __repr__(self):
11659  r"""__repr__(EzRestraint self) -> std::string"""
11660  return _IMP_atom.EzRestraint___repr__(self)
11661 
11662  @staticmethod
11663  def get_from(o):
11664  return _object_cast_to_EzRestraint(o)
11665 
11666 
11667 # Register EzRestraint in _IMP_atom:
11668 _IMP_atom.EzRestraint_swigregister(EzRestraint)
11669 
11670 def create_protein(*args):
11671  r"""
11672  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
11673  create_protein(Model m, std::string name, double target_radius, IMP::Ints const domain_boundaries) -> Hierarchy
11674  """
11675  return _IMP_atom.create_protein(*args)
11676 
11678  r"""
11679  create_simplified_along_backbone(Hierarchy input, int num_res, bool keep_detailed=False) -> Hierarchy
11680  create_simplified_along_backbone(Chain input, IMP::IntRanges const & residue_segments, bool keep_detailed=False) -> Hierarchy
11681  """
11682  return _IMP_atom.create_simplified_along_backbone(*args)
11683 
11684 def create_simplified_from_volume(h, resolution):
11685  r"""create_simplified_from_volume(Hierarchy h, double resolution) -> Hierarchy"""
11686  return _IMP_atom.create_simplified_from_volume(h, resolution)
11687 
11688 def create_simplified_assembly_from_volume(h, resolution):
11689  r"""create_simplified_assembly_from_volume(Hierarchy h, double resolution) -> Hierarchy"""
11690  return _IMP_atom.create_simplified_assembly_from_volume(h, resolution)
11691 
11692 def get_residue_indexes(h):
11693  r"""get_residue_indexes(Hierarchy h) -> IMP::Ints"""
11694  return _IMP_atom.get_residue_indexes(h)
11695 
11696 def get_residue_type(*args):
11697  r"""
11698  get_residue_type(char c) -> ResidueType
11699  get_residue_type(Hierarchy h) -> ResidueType
11700  """
11701  return _IMP_atom.get_residue_type(*args)
11702 
11703 def get_atom_type(h):
11704  r"""get_atom_type(Hierarchy h) -> AtomType"""
11705  return _IMP_atom.get_atom_type(h)
11706 
11707 def get_domain_name(h):
11708  r"""get_domain_name(Hierarchy h) -> std::string"""
11709  return _IMP_atom.get_domain_name(h)
11710 
11712  r"""
11713  create_excluded_volume_restraint(IMP::atom::Selections const & s) -> Restraint
11714  create_excluded_volume_restraint(IMP::atom::Hierarchies const & hs, double resolution=-1) -> Restraint
11715  """
11716  return _IMP_atom.create_excluded_volume_restraint(*args)
11717 
11718 def setup_as_approximation(*args):
11719  r"""
11720  setup_as_approximation(Particle h, IMP::ParticlesTemp const & other, double resolution=-1)
11721  setup_as_approximation(Hierarchy h, double resolution=-1)
11722  """
11723  return _IMP_atom.setup_as_approximation(*args)
11724 class _HierarchyTreeVertexIndex(object):
11725  r"""Proxy of C++ IMP::atom::HierarchyTreeVertexIndex class."""
11726 
11727  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11728  __repr__ = _swig_repr
11729 
11730  def __init__(self):
11731  r"""__init__(_HierarchyTreeVertexIndex self) -> _HierarchyTreeVertexIndex"""
11732  _IMP_atom._HierarchyTreeVertexIndex_swiginit(self, _IMP_atom.new__HierarchyTreeVertexIndex())
11733  __swig_destroy__ = _IMP_atom.delete__HierarchyTreeVertexIndex
11734 
11735 # Register _HierarchyTreeVertexIndex in _IMP_atom:
11736 _IMP_atom._HierarchyTreeVertexIndex_swigregister(_HierarchyTreeVertexIndex)
11737 
11738 def show_as_graphviz(name, out):
11739  r"""show_as_graphviz(IMP::atom::HierarchyTree const & name, TextOutput out)"""
11740  return _IMP_atom.show_as_graphviz(name, out)
11741 
11742 def get_vertex_index(g):
11743  r"""get_vertex_index(IMP::atom::HierarchyTree const & g) -> _HierarchyTreeVertexIndex"""
11744  return _IMP_atom.get_vertex_index(g)
11745 
11746 def get_hierarchy_tree(h):
11747  r"""get_hierarchy_tree(Hierarchy h) -> IMP::atom::HierarchyTree"""
11748  return _IMP_atom.get_hierarchy_tree(h)
11749 class HierarchyGeometry(IMP.display.SingletonGeometry):
11750  r"""Proxy of C++ IMP::atom::HierarchyGeometry class."""
11751 
11752  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11753 
11754  def __init__(self, d, resolution=0):
11755  r"""__init__(HierarchyGeometry self, Hierarchy d, double resolution=0) -> HierarchyGeometry"""
11756  _IMP_atom.HierarchyGeometry_swiginit(self, _IMP_atom.new_HierarchyGeometry(d, resolution))
11757 
11758  def get_version_info(self):
11759  r"""get_version_info(HierarchyGeometry self) -> VersionInfo"""
11760  return _IMP_atom.HierarchyGeometry_get_version_info(self)
11761  __swig_destroy__ = _IMP_atom.delete_HierarchyGeometry
11762 
11763  def __str__(self):
11764  r"""__str__(HierarchyGeometry self) -> std::string"""
11765  return _IMP_atom.HierarchyGeometry___str__(self)
11766 
11767  def __repr__(self):
11768  r"""__repr__(HierarchyGeometry self) -> std::string"""
11769  return _IMP_atom.HierarchyGeometry___repr__(self)
11770 
11771  @staticmethod
11772  def get_from(o):
11773  return _object_cast_to_HierarchyGeometry(o)
11774 
11775 
11776 # Register HierarchyGeometry in _IMP_atom:
11777 _IMP_atom.HierarchyGeometry_swigregister(HierarchyGeometry)
11778 class HierarchiesGeometry(IMP.display.SingletonsGeometry):
11779  r"""Proxy of C++ IMP::atom::HierarchiesGeometry class."""
11780 
11781  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11782 
11783  def __init__(self, sc, resolution=-1):
11784  r"""__init__(HierarchiesGeometry self, SingletonContainer sc, double resolution=-1) -> HierarchiesGeometry"""
11785  _IMP_atom.HierarchiesGeometry_swiginit(self, _IMP_atom.new_HierarchiesGeometry(sc, resolution))
11786 
11787  def get_version_info(self):
11788  r"""get_version_info(HierarchiesGeometry self) -> VersionInfo"""
11789  return _IMP_atom.HierarchiesGeometry_get_version_info(self)
11790  __swig_destroy__ = _IMP_atom.delete_HierarchiesGeometry
11791 
11792  def __str__(self):
11793  r"""__str__(HierarchiesGeometry self) -> std::string"""
11794  return _IMP_atom.HierarchiesGeometry___str__(self)
11795 
11796  def __repr__(self):
11797  r"""__repr__(HierarchiesGeometry self) -> std::string"""
11798  return _IMP_atom.HierarchiesGeometry___repr__(self)
11799 
11800  @staticmethod
11801  def get_from(o):
11802  return _object_cast_to_HierarchiesGeometry(o)
11803 
11804 
11805 # Register HierarchiesGeometry in _IMP_atom:
11806 _IMP_atom.HierarchiesGeometry_swigregister(HierarchiesGeometry)
11807 
11808 def transform(*args):
11809  r"""
11810  transform(Hierarchy h, Transformation3D tr)
11811  transform(Hierarchy h, Transformation3D tr)
11812  """
11813  return _IMP_atom.transform(*args)
11814 class DopePairScore(_ADopeBase):
11815  r"""Proxy of C++ IMP::atom::DopePairScore class."""
11816 
11817  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11818 
11819  def __init__(self, *args):
11820  r"""
11821  __init__(DopePairScore self, double threshold=std::numeric_limits< double >::max()) -> DopePairScore
11822  __init__(DopePairScore self, double threshold, TextInput data_file) -> DopePairScore
11823  """
11824  _IMP_atom.DopePairScore_swiginit(self, _IMP_atom.new_DopePairScore(*args))
11825 
11826  def __str__(self):
11827  r"""__str__(DopePairScore self) -> std::string"""
11828  return _IMP_atom.DopePairScore___str__(self)
11829 
11830  def __repr__(self):
11831  r"""__repr__(DopePairScore self) -> std::string"""
11832  return _IMP_atom.DopePairScore___repr__(self)
11833 
11834  @staticmethod
11835  def get_from(o):
11836  return _object_cast_to_DopePairScore(o)
11837 
11838  __swig_destroy__ = _IMP_atom.delete_DopePairScore
11839 
11840 # Register DopePairScore in _IMP_atom:
11841 _IMP_atom.DopePairScore_swigregister(DopePairScore)
11842 
11843 def add_dope_score_data(h):
11844  r"""add_dope_score_data(Hierarchy h)"""
11845  return _IMP_atom.add_dope_score_data(h)
11846 class LoopStatisticalPairScore(_ALoopStatisticalBase):
11847  r"""Proxy of C++ IMP::atom::LoopStatisticalPairScore class."""
11848 
11849  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11850 
11851  def __init__(self, *args):
11852  r"""
11853  __init__(LoopStatisticalPairScore self, double threshold=std::numeric_limits< double >::max()) -> LoopStatisticalPairScore
11854  __init__(LoopStatisticalPairScore self, double threshold, TextInput data_file) -> LoopStatisticalPairScore
11855  """
11856  _IMP_atom.LoopStatisticalPairScore_swiginit(self, _IMP_atom.new_LoopStatisticalPairScore(*args))
11857 
11858  def __str__(self):
11859  r"""__str__(LoopStatisticalPairScore self) -> std::string"""
11860  return _IMP_atom.LoopStatisticalPairScore___str__(self)
11861 
11862  def __repr__(self):
11863  r"""__repr__(LoopStatisticalPairScore self) -> std::string"""
11864  return _IMP_atom.LoopStatisticalPairScore___repr__(self)
11865 
11866  @staticmethod
11867  def get_from(o):
11868  return _object_cast_to_LoopStatisticalPairScore(o)
11869 
11870  __swig_destroy__ = _IMP_atom.delete_LoopStatisticalPairScore
11871 
11872 # Register LoopStatisticalPairScore in _IMP_atom:
11873 _IMP_atom.LoopStatisticalPairScore_swigregister(LoopStatisticalPairScore)
11874 
11876  r"""add_loop_statistical_score_data(Hierarchy h)"""
11877  return _IMP_atom.add_loop_statistical_score_data(h)
11878 class OrientedSoapPairScore(_OrientedSoapBase):
11879  r"""Proxy of C++ IMP::atom::OrientedSoapPairScore class."""
11880 
11881  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11882 
11883  def __init__(self, library):
11884  r"""__init__(OrientedSoapPairScore self, std::string library) -> OrientedSoapPairScore"""
11885  _IMP_atom.OrientedSoapPairScore_swiginit(self, _IMP_atom.new_OrientedSoapPairScore(library))
11886 
11887  def get_pair_filter(self):
11888  r"""get_pair_filter(OrientedSoapPairScore self) -> SoapPairFilter"""
11889  return _IMP_atom.OrientedSoapPairScore_get_pair_filter(self)
11890 
11891  def __str__(self):
11892  r"""__str__(OrientedSoapPairScore self) -> std::string"""
11893  return _IMP_atom.OrientedSoapPairScore___str__(self)
11894 
11895  def __repr__(self):
11896  r"""__repr__(OrientedSoapPairScore self) -> std::string"""
11897  return _IMP_atom.OrientedSoapPairScore___repr__(self)
11898 
11899  @staticmethod
11900  def get_from(o):
11901  return _object_cast_to_OrientedSoapPairScore(o)
11902 
11903  __swig_destroy__ = _IMP_atom.delete_OrientedSoapPairScore
11904 
11905 # Register OrientedSoapPairScore in _IMP_atom:
11906 _IMP_atom.OrientedSoapPairScore_swigregister(OrientedSoapPairScore)
11907 class SameResiduePairFilter(IMP.PairPredicate):
11908  r"""Proxy of C++ IMP::atom::SameResiduePairFilter class."""
11909 
11910  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11911 
11912  def __init__(self):
11913  r"""__init__(SameResiduePairFilter self) -> SameResiduePairFilter"""
11914  _IMP_atom.SameResiduePairFilter_swiginit(self, _IMP_atom.new_SameResiduePairFilter())
11915 
11916  def do_get_inputs(self, m, pis):
11917  r"""do_get_inputs(SameResiduePairFilter self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
11918  return _IMP_atom.SameResiduePairFilter_do_get_inputs(self, m, pis)
11919 
11920  def get_value(self, *args):
11921  r"""
11922  get_value(SameResiduePairFilter self, IMP::ParticlePair const & a) -> int
11923  get_value(SameResiduePairFilter self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
11924  """
11925  return _IMP_atom.SameResiduePairFilter_get_value(self, *args)
11926 
11927  def get_value_index(self, *args):
11928  r"""
11929  get_value_index(SameResiduePairFilter self, Model m, IMP::ParticleIndexPair const & p) -> int
11930  get_value_index(SameResiduePairFilter self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
11931  """
11932  return _IMP_atom.SameResiduePairFilter_get_value_index(self, *args)
11933 
11934  def get_version_info(self):
11935  r"""get_version_info(SameResiduePairFilter self) -> VersionInfo"""
11936  return _IMP_atom.SameResiduePairFilter_get_version_info(self)
11937  __swig_destroy__ = _IMP_atom.delete_SameResiduePairFilter
11938 
11939  def __str__(self):
11940  r"""__str__(SameResiduePairFilter self) -> std::string"""
11941  return _IMP_atom.SameResiduePairFilter___str__(self)
11942 
11943  def __repr__(self):
11944  r"""__repr__(SameResiduePairFilter self) -> std::string"""
11945  return _IMP_atom.SameResiduePairFilter___repr__(self)
11946 
11947  @staticmethod
11948  def get_from(o):
11949  return _object_cast_to_SameResiduePairFilter(o)
11950 
11951 
11952 # Register SameResiduePairFilter in _IMP_atom:
11953 _IMP_atom.SameResiduePairFilter_swigregister(SameResiduePairFilter)
11954 class RemoveRigidMotionOptimizerState(IMP.OptimizerState):
11955  r"""Proxy of C++ IMP::atom::RemoveRigidMotionOptimizerState class."""
11956 
11957  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11958 
11959  def __init__(self, m, pis):
11960  r"""__init__(RemoveRigidMotionOptimizerState self, Model m, _ParticleIndexesAdaptor pis) -> RemoveRigidMotionOptimizerState"""
11961  _IMP_atom.RemoveRigidMotionOptimizerState_swiginit(self, _IMP_atom.new_RemoveRigidMotionOptimizerState(m, pis))
11962 
11963  def set_particles(self, pis):
11964  r"""set_particles(RemoveRigidMotionOptimizerState self, IMP::Particles const & pis)"""
11965  return _IMP_atom.RemoveRigidMotionOptimizerState_set_particles(self, pis)
11966 
11967  def remove_rigid_motion(self):
11968  r"""remove_rigid_motion(RemoveRigidMotionOptimizerState self)"""
11969  return _IMP_atom.RemoveRigidMotionOptimizerState_remove_rigid_motion(self)
11970 
11971  def get_version_info(self):
11972  r"""get_version_info(RemoveRigidMotionOptimizerState self) -> VersionInfo"""
11973  return _IMP_atom.RemoveRigidMotionOptimizerState_get_version_info(self)
11974  __swig_destroy__ = _IMP_atom.delete_RemoveRigidMotionOptimizerState
11975 
11976  def __str__(self):
11977  r"""__str__(RemoveRigidMotionOptimizerState self) -> std::string"""
11978  return _IMP_atom.RemoveRigidMotionOptimizerState___str__(self)
11979 
11980  def __repr__(self):
11981  r"""__repr__(RemoveRigidMotionOptimizerState self) -> std::string"""
11982  return _IMP_atom.RemoveRigidMotionOptimizerState___repr__(self)
11983 
11984  @staticmethod
11985  def get_from(o):
11986  return _object_cast_to_RemoveRigidMotionOptimizerState(o)
11987 
11988 
11989 # Register RemoveRigidMotionOptimizerState in _IMP_atom:
11990 _IMP_atom.RemoveRigidMotionOptimizerState_swigregister(RemoveRigidMotionOptimizerState)
11991 class BerendsenThermostatOptimizerState(IMP.OptimizerState):
11992  r"""Proxy of C++ IMP::atom::BerendsenThermostatOptimizerState class."""
11993 
11994  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11995 
11996  def __init__(self, pis, temperature, tau):
11997  r"""__init__(BerendsenThermostatOptimizerState self, IMP::Particles const & pis, double temperature, double tau) -> BerendsenThermostatOptimizerState"""
11998  _IMP_atom.BerendsenThermostatOptimizerState_swiginit(self, _IMP_atom.new_BerendsenThermostatOptimizerState(pis, temperature, tau))
11999 
12000  def set_particles(self, pis):
12001  r"""set_particles(BerendsenThermostatOptimizerState self, IMP::Particles const & pis)"""
12002  return _IMP_atom.BerendsenThermostatOptimizerState_set_particles(self, pis)
12003 
12004  def get_temperature(self):
12005  r"""get_temperature(BerendsenThermostatOptimizerState self) -> double"""
12006  return _IMP_atom.BerendsenThermostatOptimizerState_get_temperature(self)
12007 
12008  def get_tau(self):
12009  r"""get_tau(BerendsenThermostatOptimizerState self) -> double"""
12010  return _IMP_atom.BerendsenThermostatOptimizerState_get_tau(self)
12011 
12012  def set_temperature(self, temperature):
12013  r"""set_temperature(BerendsenThermostatOptimizerState self, double temperature)"""
12014  return _IMP_atom.BerendsenThermostatOptimizerState_set_temperature(self, temperature)
12015 
12016  def set_tau(self, tau):
12017  r"""set_tau(BerendsenThermostatOptimizerState self, double tau)"""
12018  return _IMP_atom.BerendsenThermostatOptimizerState_set_tau(self, tau)
12019 
12020  def rescale_velocities(self):
12021  r"""rescale_velocities(BerendsenThermostatOptimizerState self)"""
12022  return _IMP_atom.BerendsenThermostatOptimizerState_rescale_velocities(self)
12023 
12024  def get_version_info(self):
12025  r"""get_version_info(BerendsenThermostatOptimizerState self) -> VersionInfo"""
12026  return _IMP_atom.BerendsenThermostatOptimizerState_get_version_info(self)
12027  __swig_destroy__ = _IMP_atom.delete_BerendsenThermostatOptimizerState
12028 
12029  def __str__(self):
12030  r"""__str__(BerendsenThermostatOptimizerState self) -> std::string"""
12031  return _IMP_atom.BerendsenThermostatOptimizerState___str__(self)
12032 
12033  def __repr__(self):
12034  r"""__repr__(BerendsenThermostatOptimizerState self) -> std::string"""
12035  return _IMP_atom.BerendsenThermostatOptimizerState___repr__(self)
12036 
12037  @staticmethod
12038  def get_from(o):
12039  return _object_cast_to_BerendsenThermostatOptimizerState(o)
12040 
12041 
12042 # Register BerendsenThermostatOptimizerState in _IMP_atom:
12043 _IMP_atom.BerendsenThermostatOptimizerState_swigregister(BerendsenThermostatOptimizerState)
12044 class LangevinThermostatOptimizerState(IMP.OptimizerState):
12045  r"""Proxy of C++ IMP::atom::LangevinThermostatOptimizerState class."""
12046 
12047  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12048 
12049  def __init__(self, m, pis, temperature, gamma):
12050  r"""__init__(LangevinThermostatOptimizerState self, Model m, _ParticleIndexesAdaptor pis, double temperature, double gamma) -> LangevinThermostatOptimizerState"""
12051  _IMP_atom.LangevinThermostatOptimizerState_swiginit(self, _IMP_atom.new_LangevinThermostatOptimizerState(m, pis, temperature, gamma))
12052 
12053  def set_particles(self, pis):
12054  r"""set_particles(LangevinThermostatOptimizerState self, IMP::Particles const & pis)"""
12055  return _IMP_atom.LangevinThermostatOptimizerState_set_particles(self, pis)
12056 
12057  def get_temperature(self):
12058  r"""get_temperature(LangevinThermostatOptimizerState self) -> double"""
12059  return _IMP_atom.LangevinThermostatOptimizerState_get_temperature(self)
12060 
12061  def get_gamma(self):
12062  r"""get_gamma(LangevinThermostatOptimizerState self) -> double"""
12063  return _IMP_atom.LangevinThermostatOptimizerState_get_gamma(self)
12064 
12065  def set_temperature(self, temperature):
12066  r"""set_temperature(LangevinThermostatOptimizerState self, double temperature)"""
12067  return _IMP_atom.LangevinThermostatOptimizerState_set_temperature(self, temperature)
12068 
12069  def set_gamma(self, gamma):
12070  r"""set_gamma(LangevinThermostatOptimizerState self, double gamma)"""
12071  return _IMP_atom.LangevinThermostatOptimizerState_set_gamma(self, gamma)
12072 
12073  def rescale_velocities(self):
12074  r"""rescale_velocities(LangevinThermostatOptimizerState self)"""
12075  return _IMP_atom.LangevinThermostatOptimizerState_rescale_velocities(self)
12076 
12077  def get_version_info(self):
12078  r"""get_version_info(LangevinThermostatOptimizerState self) -> VersionInfo"""
12079  return _IMP_atom.LangevinThermostatOptimizerState_get_version_info(self)
12080  __swig_destroy__ = _IMP_atom.delete_LangevinThermostatOptimizerState
12081 
12082  def __str__(self):
12083  r"""__str__(LangevinThermostatOptimizerState self) -> std::string"""
12084  return _IMP_atom.LangevinThermostatOptimizerState___str__(self)
12085 
12086  def __repr__(self):
12087  r"""__repr__(LangevinThermostatOptimizerState self) -> std::string"""
12088  return _IMP_atom.LangevinThermostatOptimizerState___repr__(self)
12089 
12090  @staticmethod
12091  def get_from(o):
12092  return _object_cast_to_LangevinThermostatOptimizerState(o)
12093 
12094 
12095 # Register LangevinThermostatOptimizerState in _IMP_atom:
12096 _IMP_atom.LangevinThermostatOptimizerState_swigregister(LangevinThermostatOptimizerState)
12097 class PDBRecord(IMP._Value):
12098  r"""Proxy of C++ IMP::atom::PDBRecord class."""
12099 
12100  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12101 
12102  def __init__(self):
12103  r"""__init__(PDBRecord self) -> PDBRecord"""
12104  _IMP_atom.PDBRecord_swiginit(self, _IMP_atom.new_PDBRecord())
12105 
12106  def get_alt_loc_indicator(self):
12107  r"""get_alt_loc_indicator(PDBRecord self) -> std::string"""
12108  return _IMP_atom.PDBRecord_get_alt_loc_indicator(self)
12109 
12110  def get_is_atom(self):
12111  r"""get_is_atom(PDBRecord self) -> bool"""
12112  return _IMP_atom.PDBRecord_get_is_atom(self)
12113 
12114  def get_trimmed_atom_name(self):
12115  r"""get_trimmed_atom_name(PDBRecord self) -> std::string"""
12116  return _IMP_atom.PDBRecord_get_trimmed_atom_name(self)
12117 
12118  def get_padded_atom_name(self):
12119  r"""get_padded_atom_name(PDBRecord self) -> std::string"""
12120  return _IMP_atom.PDBRecord_get_padded_atom_name(self)
12121 
12122  def get_residue_name(self):
12123  r"""get_residue_name(PDBRecord self) -> std::string"""
12124  return _IMP_atom.PDBRecord_get_residue_name(self)
12125 
12126  def get_chain_id(self):
12127  r"""get_chain_id(PDBRecord self) -> std::string"""
12128  return _IMP_atom.PDBRecord_get_chain_id(self)
12129 
12130  def get_element(self):
12131  r"""get_element(PDBRecord self) -> std::string"""
12132  return _IMP_atom.PDBRecord_get_element(self)
12133 
12134  def show(self, *args):
12135  r"""show(PDBRecord self, _ostream out=std::cout)"""
12136  return _IMP_atom.PDBRecord_show(self, *args)
12137 
12138  def __str__(self):
12139  r"""__str__(PDBRecord self) -> std::string"""
12140  return _IMP_atom.PDBRecord___str__(self)
12141 
12142  def __repr__(self):
12143  r"""__repr__(PDBRecord self) -> std::string"""
12144  return _IMP_atom.PDBRecord___repr__(self)
12145  __swig_destroy__ = _IMP_atom.delete_PDBRecord
12146 
12147 # Register PDBRecord in _IMP_atom:
12148 _IMP_atom.PDBRecord_swigregister(PDBRecord)
12149 class PDBSelector(IMP.Object):
12150  r"""Proxy of C++ IMP::atom::PDBSelector class."""
12151 
12152  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12153 
12154  def __init__(self, name):
12155  r"""__init__(PDBSelector self, std::string name) -> PDBSelector"""
12156  if self.__class__ == PDBSelector:
12157  _self = None
12158  else:
12159  _self = self
12160  _IMP_atom.PDBSelector_swiginit(self, _IMP_atom.new_PDBSelector(_self, name))
12161 
12162  if self.__class__ != PDBSelector:
12163  _director_objects.register(self)
12164 
12165 
12166 
12167 
12168  def get_is_selected(self, record):
12169  r"""get_is_selected(PDBSelector self, PDBRecord record) -> bool"""
12170  return _IMP_atom.PDBSelector_get_is_selected(self, record)
12171  __swig_destroy__ = _IMP_atom.delete_PDBSelector
12172 
12173  def __str__(self):
12174  r"""__str__(PDBSelector self) -> std::string"""
12175  return _IMP_atom.PDBSelector___str__(self)
12176 
12177  def __repr__(self):
12178  r"""__repr__(PDBSelector self) -> std::string"""
12179  return _IMP_atom.PDBSelector___repr__(self)
12180 
12181  @staticmethod
12182  def get_from(o):
12183  return _object_cast_to_PDBSelector(o)
12184 
12185 
12186  def do_show(self, out):
12187  pass
12188 
12189  @staticmethod
12190  def get_from(o):
12191  return _object_cast_to_PDBSelector(o)
12192 
12193 
12194  def __and__(self, s):
12195  return AndPDBSelector(self, s)
12196  def __or__(self, s):
12197  return OrPDBSelector(self, s)
12198  def __xor__(self, s):
12199  return XorPDBSelector(self, s)
12200  def __invert__(self):
12201  return NotPDBSelector(self)
12202  def __sub__(self, s):
12203  return AndPDBSelector(self, NotPDBSelector(s))
12204 
12205  def __disown__(self):
12206  self.this.disown()
12207  _IMP_atom.disown_PDBSelector(self)
12208  return weakref.proxy(self)
12209 
12210  def do_destroy(self):
12211  r"""do_destroy(PDBSelector self)"""
12212  return _IMP_atom.PDBSelector_do_destroy(self)
12213 
12214 # Register PDBSelector in _IMP_atom:
12215 _IMP_atom.PDBSelector_swigregister(PDBSelector)
12216 class NonAlternativePDBSelector(PDBSelector):
12217  r"""Proxy of C++ IMP::atom::NonAlternativePDBSelector class."""
12218 
12219  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12220 
12221  def __init__(self, *args):
12222  r"""__init__(NonAlternativePDBSelector self, std::string name="NonAlternativePDBSelector%1%") -> NonAlternativePDBSelector"""
12223  _IMP_atom.NonAlternativePDBSelector_swiginit(self, _IMP_atom.new_NonAlternativePDBSelector(*args))
12224 
12225  def get_version_info(self):
12226  r"""get_version_info(NonAlternativePDBSelector self) -> VersionInfo"""
12227  return _IMP_atom.NonAlternativePDBSelector_get_version_info(self)
12228  __swig_destroy__ = _IMP_atom.delete_NonAlternativePDBSelector
12229 
12230  def __str__(self):
12231  r"""__str__(NonAlternativePDBSelector self) -> std::string"""
12232  return _IMP_atom.NonAlternativePDBSelector___str__(self)
12233 
12234  def __repr__(self):
12235  r"""__repr__(NonAlternativePDBSelector self) -> std::string"""
12236  return _IMP_atom.NonAlternativePDBSelector___repr__(self)
12237 
12238  @staticmethod
12239  def get_from(o):
12240  return _object_cast_to_NonAlternativePDBSelector(o)
12241 
12242 
12243 # Register NonAlternativePDBSelector in _IMP_atom:
12244 _IMP_atom.NonAlternativePDBSelector_swigregister(NonAlternativePDBSelector)
12245 class ATOMPDBSelector(NonAlternativePDBSelector):
12246  r"""Proxy of C++ IMP::atom::ATOMPDBSelector class."""
12247 
12248  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12249 
12250  def __init__(self, *args):
12251  r"""__init__(ATOMPDBSelector self, std::string name="ATOMPDBSelector%1%") -> ATOMPDBSelector"""
12252  _IMP_atom.ATOMPDBSelector_swiginit(self, _IMP_atom.new_ATOMPDBSelector(*args))
12253  __swig_destroy__ = _IMP_atom.delete_ATOMPDBSelector
12254 
12255  def __str__(self):
12256  r"""__str__(ATOMPDBSelector self) -> std::string"""
12257  return _IMP_atom.ATOMPDBSelector___str__(self)
12258 
12259  def __repr__(self):
12260  r"""__repr__(ATOMPDBSelector self) -> std::string"""
12261  return _IMP_atom.ATOMPDBSelector___repr__(self)
12262 
12263  @staticmethod
12264  def get_from(o):
12265  return _object_cast_to_ATOMPDBSelector(o)
12266 
12267 
12268 # Register ATOMPDBSelector in _IMP_atom:
12269 _IMP_atom.ATOMPDBSelector_swigregister(ATOMPDBSelector)
12270 class CAlphaPDBSelector(NonAlternativePDBSelector):
12271  r"""Proxy of C++ IMP::atom::CAlphaPDBSelector class."""
12272 
12273  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12274 
12275  def __init__(self, *args):
12276  r"""__init__(CAlphaPDBSelector self, std::string name="CAlphaPDBSelector%1%") -> CAlphaPDBSelector"""
12277  _IMP_atom.CAlphaPDBSelector_swiginit(self, _IMP_atom.new_CAlphaPDBSelector(*args))
12278  __swig_destroy__ = _IMP_atom.delete_CAlphaPDBSelector
12279 
12280  def __str__(self):
12281  r"""__str__(CAlphaPDBSelector self) -> std::string"""
12282  return _IMP_atom.CAlphaPDBSelector___str__(self)
12283 
12284  def __repr__(self):
12285  r"""__repr__(CAlphaPDBSelector self) -> std::string"""
12286  return _IMP_atom.CAlphaPDBSelector___repr__(self)
12287 
12288  @staticmethod
12289  def get_from(o):
12290  return _object_cast_to_CAlphaPDBSelector(o)
12291 
12292 
12293 # Register CAlphaPDBSelector in _IMP_atom:
12294 _IMP_atom.CAlphaPDBSelector_swigregister(CAlphaPDBSelector)
12295 class CBetaPDBSelector(NonAlternativePDBSelector):
12296  r"""Proxy of C++ IMP::atom::CBetaPDBSelector class."""
12297 
12298  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12299 
12300  def __init__(self, *args):
12301  r"""__init__(CBetaPDBSelector self, std::string name="CBetaPDBSelector%1%") -> CBetaPDBSelector"""
12302  _IMP_atom.CBetaPDBSelector_swiginit(self, _IMP_atom.new_CBetaPDBSelector(*args))
12303  __swig_destroy__ = _IMP_atom.delete_CBetaPDBSelector
12304 
12305  def __str__(self):
12306  r"""__str__(CBetaPDBSelector self) -> std::string"""
12307  return _IMP_atom.CBetaPDBSelector___str__(self)
12308 
12309  def __repr__(self):
12310  r"""__repr__(CBetaPDBSelector self) -> std::string"""
12311  return _IMP_atom.CBetaPDBSelector___repr__(self)
12312 
12313  @staticmethod
12314  def get_from(o):
12315  return _object_cast_to_CBetaPDBSelector(o)
12316 
12317 
12318 # Register CBetaPDBSelector in _IMP_atom:
12319 _IMP_atom.CBetaPDBSelector_swigregister(CBetaPDBSelector)
12320 class AtomTypePDBSelector(PDBSelector):
12321  r"""Proxy of C++ IMP::atom::AtomTypePDBSelector class."""
12322 
12323  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12324 
12325  def __init__(self, *args):
12326  r"""__init__(AtomTypePDBSelector self, IMP::Strings atom_types, std::string name="AtomTypePDBSelector%1%") -> AtomTypePDBSelector"""
12327  _IMP_atom.AtomTypePDBSelector_swiginit(self, _IMP_atom.new_AtomTypePDBSelector(*args))
12328 
12329  def get_version_info(self):
12330  r"""get_version_info(AtomTypePDBSelector self) -> VersionInfo"""
12331  return _IMP_atom.AtomTypePDBSelector_get_version_info(self)
12332  __swig_destroy__ = _IMP_atom.delete_AtomTypePDBSelector
12333 
12334  def __str__(self):
12335  r"""__str__(AtomTypePDBSelector self) -> std::string"""
12336  return _IMP_atom.AtomTypePDBSelector___str__(self)
12337 
12338  def __repr__(self):
12339  r"""__repr__(AtomTypePDBSelector self) -> std::string"""
12340  return _IMP_atom.AtomTypePDBSelector___repr__(self)
12341 
12342  @staticmethod
12343  def get_from(o):
12344  return _object_cast_to_AtomTypePDBSelector(o)
12345 
12346 
12347 # Register AtomTypePDBSelector in _IMP_atom:
12348 _IMP_atom.AtomTypePDBSelector_swigregister(AtomTypePDBSelector)
12349 class ResidueTypePDBSelector(PDBSelector):
12350  r"""Proxy of C++ IMP::atom::ResidueTypePDBSelector class."""
12351 
12352  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12353 
12354  def __init__(self, *args):
12355  r"""__init__(ResidueTypePDBSelector self, IMP::Strings residue_types, std::string name="ResidueTypePDBSelector%1%") -> ResidueTypePDBSelector"""
12356  _IMP_atom.ResidueTypePDBSelector_swiginit(self, _IMP_atom.new_ResidueTypePDBSelector(*args))
12357 
12358  def get_version_info(self):
12359  r"""get_version_info(ResidueTypePDBSelector self) -> VersionInfo"""
12360  return _IMP_atom.ResidueTypePDBSelector_get_version_info(self)
12361  __swig_destroy__ = _IMP_atom.delete_ResidueTypePDBSelector
12362 
12363  def __str__(self):
12364  r"""__str__(ResidueTypePDBSelector self) -> std::string"""
12365  return _IMP_atom.ResidueTypePDBSelector___str__(self)
12366 
12367  def __repr__(self):
12368  r"""__repr__(ResidueTypePDBSelector self) -> std::string"""
12369  return _IMP_atom.ResidueTypePDBSelector___repr__(self)
12370 
12371  @staticmethod
12372  def get_from(o):
12373  return _object_cast_to_ResidueTypePDBSelector(o)
12374 
12375 
12376 # Register ResidueTypePDBSelector in _IMP_atom:
12377 _IMP_atom.ResidueTypePDBSelector_swigregister(ResidueTypePDBSelector)
12378 class CPDBSelector(NonAlternativePDBSelector):
12379  r"""Proxy of C++ IMP::atom::CPDBSelector class."""
12380 
12381  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12382 
12383  def __init__(self, *args):
12384  r"""__init__(CPDBSelector self, std::string name="CPDBSelector%1%") -> CPDBSelector"""
12385  _IMP_atom.CPDBSelector_swiginit(self, _IMP_atom.new_CPDBSelector(*args))
12386  __swig_destroy__ = _IMP_atom.delete_CPDBSelector
12387 
12388  def __str__(self):
12389  r"""__str__(CPDBSelector self) -> std::string"""
12390  return _IMP_atom.CPDBSelector___str__(self)
12391 
12392  def __repr__(self):
12393  r"""__repr__(CPDBSelector self) -> std::string"""
12394  return _IMP_atom.CPDBSelector___repr__(self)
12395 
12396  @staticmethod
12397  def get_from(o):
12398  return _object_cast_to_CPDBSelector(o)
12399 
12400 
12401 # Register CPDBSelector in _IMP_atom:
12402 _IMP_atom.CPDBSelector_swigregister(CPDBSelector)
12403 class NPDBSelector(NonAlternativePDBSelector):
12404  r"""Proxy of C++ IMP::atom::NPDBSelector class."""
12405 
12406  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12407 
12408  def __init__(self, *args):
12409  r"""__init__(NPDBSelector self, std::string name="NPDBSelector%1%") -> NPDBSelector"""
12410  _IMP_atom.NPDBSelector_swiginit(self, _IMP_atom.new_NPDBSelector(*args))
12411  __swig_destroy__ = _IMP_atom.delete_NPDBSelector
12412 
12413  def __str__(self):
12414  r"""__str__(NPDBSelector self) -> std::string"""
12415  return _IMP_atom.NPDBSelector___str__(self)
12416 
12417  def __repr__(self):
12418  r"""__repr__(NPDBSelector self) -> std::string"""
12419  return _IMP_atom.NPDBSelector___repr__(self)
12420 
12421  @staticmethod
12422  def get_from(o):
12423  return _object_cast_to_NPDBSelector(o)
12424 
12425 
12426 # Register NPDBSelector in _IMP_atom:
12427 _IMP_atom.NPDBSelector_swigregister(NPDBSelector)
12428 class AllPDBSelector(PDBSelector):
12429  r"""Proxy of C++ IMP::atom::AllPDBSelector class."""
12430 
12431  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12432 
12433  def __init__(self, *args):
12434  r"""__init__(AllPDBSelector self, std::string name="AllPDBSelector%1%") -> AllPDBSelector"""
12435  _IMP_atom.AllPDBSelector_swiginit(self, _IMP_atom.new_AllPDBSelector(*args))
12436 
12437  def get_version_info(self):
12438  r"""get_version_info(AllPDBSelector self) -> VersionInfo"""
12439  return _IMP_atom.AllPDBSelector_get_version_info(self)
12440  __swig_destroy__ = _IMP_atom.delete_AllPDBSelector
12441 
12442  def __str__(self):
12443  r"""__str__(AllPDBSelector self) -> std::string"""
12444  return _IMP_atom.AllPDBSelector___str__(self)
12445 
12446  def __repr__(self):
12447  r"""__repr__(AllPDBSelector self) -> std::string"""
12448  return _IMP_atom.AllPDBSelector___repr__(self)
12449 
12450  @staticmethod
12451  def get_from(o):
12452  return _object_cast_to_AllPDBSelector(o)
12453 
12454 
12455 # Register AllPDBSelector in _IMP_atom:
12456 _IMP_atom.AllPDBSelector_swigregister(AllPDBSelector)
12457 class ChainPDBSelector(NonAlternativePDBSelector):
12458  r"""Proxy of C++ IMP::atom::ChainPDBSelector class."""
12459 
12460  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12461  __swig_destroy__ = _IMP_atom.delete_ChainPDBSelector
12462 
12463  def __init__(self, *args):
12464  r"""__init__(ChainPDBSelector self, IMP::Strings chains, std::string name="ChainPDBSelector%1%") -> ChainPDBSelector"""
12465  _IMP_atom.ChainPDBSelector_swiginit(self, _IMP_atom.new_ChainPDBSelector(*args))
12466 
12467  def __str__(self):
12468  r"""__str__(ChainPDBSelector self) -> std::string"""
12469  return _IMP_atom.ChainPDBSelector___str__(self)
12470 
12471  def __repr__(self):
12472  r"""__repr__(ChainPDBSelector self) -> std::string"""
12473  return _IMP_atom.ChainPDBSelector___repr__(self)
12474 
12475  @staticmethod
12476  def get_from(o):
12477  return _object_cast_to_ChainPDBSelector(o)
12478 
12479 
12480 # Register ChainPDBSelector in _IMP_atom:
12481 _IMP_atom.ChainPDBSelector_swigregister(ChainPDBSelector)
12482 class WaterPDBSelector(NonAlternativePDBSelector):
12483  r"""Proxy of C++ IMP::atom::WaterPDBSelector class."""
12484 
12485  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12486 
12487  def __init__(self, *args):
12488  r"""__init__(WaterPDBSelector self, std::string name="WaterPDBSelector%1%") -> WaterPDBSelector"""
12489  _IMP_atom.WaterPDBSelector_swiginit(self, _IMP_atom.new_WaterPDBSelector(*args))
12490  __swig_destroy__ = _IMP_atom.delete_WaterPDBSelector
12491 
12492  def __str__(self):
12493  r"""__str__(WaterPDBSelector self) -> std::string"""
12494  return _IMP_atom.WaterPDBSelector___str__(self)
12495 
12496  def __repr__(self):
12497  r"""__repr__(WaterPDBSelector self) -> std::string"""
12498  return _IMP_atom.WaterPDBSelector___repr__(self)
12499 
12500  @staticmethod
12501  def get_from(o):
12502  return _object_cast_to_WaterPDBSelector(o)
12503 
12504 
12505 # Register WaterPDBSelector in _IMP_atom:
12506 _IMP_atom.WaterPDBSelector_swigregister(WaterPDBSelector)
12507 class HydrogenPDBSelector(NonAlternativePDBSelector):
12508  r"""Proxy of C++ IMP::atom::HydrogenPDBSelector class."""
12509 
12510  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12511 
12512  def __init__(self, *args):
12513  r"""__init__(HydrogenPDBSelector self, std::string name="HydrogenPDBSelector%1%") -> HydrogenPDBSelector"""
12514  _IMP_atom.HydrogenPDBSelector_swiginit(self, _IMP_atom.new_HydrogenPDBSelector(*args))
12515  __swig_destroy__ = _IMP_atom.delete_HydrogenPDBSelector
12516 
12517  def __str__(self):
12518  r"""__str__(HydrogenPDBSelector self) -> std::string"""
12519  return _IMP_atom.HydrogenPDBSelector___str__(self)
12520 
12521  def __repr__(self):
12522  r"""__repr__(HydrogenPDBSelector self) -> std::string"""
12523  return _IMP_atom.HydrogenPDBSelector___repr__(self)
12524 
12525  @staticmethod
12526  def get_from(o):
12527  return _object_cast_to_HydrogenPDBSelector(o)
12528 
12529 
12530 # Register HydrogenPDBSelector in _IMP_atom:
12531 _IMP_atom.HydrogenPDBSelector_swigregister(HydrogenPDBSelector)
12532 class NonWaterNonHydrogenPDBSelector(NonAlternativePDBSelector):
12533  r"""Proxy of C++ IMP::atom::NonWaterNonHydrogenPDBSelector class."""
12534 
12535  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12536  __swig_destroy__ = _IMP_atom.delete_NonWaterNonHydrogenPDBSelector
12537 
12538  def __init__(self, *args):
12539  r"""
12540  __init__(NonWaterNonHydrogenPDBSelector self, std::string name) -> NonWaterNonHydrogenPDBSelector
12541  __init__(NonWaterNonHydrogenPDBSelector self) -> NonWaterNonHydrogenPDBSelector
12542  """
12543  _IMP_atom.NonWaterNonHydrogenPDBSelector_swiginit(self, _IMP_atom.new_NonWaterNonHydrogenPDBSelector(*args))
12544 
12545  def __str__(self):
12546  r"""__str__(NonWaterNonHydrogenPDBSelector self) -> std::string"""
12547  return _IMP_atom.NonWaterNonHydrogenPDBSelector___str__(self)
12548 
12549  def __repr__(self):
12550  r"""__repr__(NonWaterNonHydrogenPDBSelector self) -> std::string"""
12551  return _IMP_atom.NonWaterNonHydrogenPDBSelector___repr__(self)
12552 
12553  @staticmethod
12554  def get_from(o):
12555  return _object_cast_to_NonWaterNonHydrogenPDBSelector(o)
12556 
12557 
12558 # Register NonWaterNonHydrogenPDBSelector in _IMP_atom:
12559 _IMP_atom.NonWaterNonHydrogenPDBSelector_swigregister(NonWaterNonHydrogenPDBSelector)
12560 class NonHydrogenPDBSelector(NonAlternativePDBSelector):
12561  r"""Proxy of C++ IMP::atom::NonHydrogenPDBSelector class."""
12562 
12563  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12564  __swig_destroy__ = _IMP_atom.delete_NonHydrogenPDBSelector
12565 
12566  def __init__(self, *args):
12567  r"""
12568  __init__(NonHydrogenPDBSelector self, std::string name) -> NonHydrogenPDBSelector
12569  __init__(NonHydrogenPDBSelector self) -> NonHydrogenPDBSelector
12570  """
12571  _IMP_atom.NonHydrogenPDBSelector_swiginit(self, _IMP_atom.new_NonHydrogenPDBSelector(*args))
12572 
12573  def __str__(self):
12574  r"""__str__(NonHydrogenPDBSelector self) -> std::string"""
12575  return _IMP_atom.NonHydrogenPDBSelector___str__(self)
12576 
12577  def __repr__(self):
12578  r"""__repr__(NonHydrogenPDBSelector self) -> std::string"""
12579  return _IMP_atom.NonHydrogenPDBSelector___repr__(self)
12580 
12581  @staticmethod
12582  def get_from(o):
12583  return _object_cast_to_NonHydrogenPDBSelector(o)
12584 
12585 
12586 # Register NonHydrogenPDBSelector in _IMP_atom:
12587 _IMP_atom.NonHydrogenPDBSelector_swigregister(NonHydrogenPDBSelector)
12588 class NonWaterPDBSelector(NonAlternativePDBSelector):
12589  r"""Proxy of C++ IMP::atom::NonWaterPDBSelector class."""
12590 
12591  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12592  __swig_destroy__ = _IMP_atom.delete_NonWaterPDBSelector
12593 
12594  def __init__(self, *args):
12595  r"""
12596  __init__(NonWaterPDBSelector self, std::string name) -> NonWaterPDBSelector
12597  __init__(NonWaterPDBSelector self) -> NonWaterPDBSelector
12598  """
12599  _IMP_atom.NonWaterPDBSelector_swiginit(self, _IMP_atom.new_NonWaterPDBSelector(*args))
12600 
12601  def __str__(self):
12602  r"""__str__(NonWaterPDBSelector self) -> std::string"""
12603  return _IMP_atom.NonWaterPDBSelector___str__(self)
12604 
12605  def __repr__(self):
12606  r"""__repr__(NonWaterPDBSelector self) -> std::string"""
12607  return _IMP_atom.NonWaterPDBSelector___repr__(self)
12608 
12609  @staticmethod
12610  def get_from(o):
12611  return _object_cast_to_NonWaterPDBSelector(o)
12612 
12613 
12614 # Register NonWaterPDBSelector in _IMP_atom:
12615 _IMP_atom.NonWaterPDBSelector_swigregister(NonWaterPDBSelector)
12616 class BackbonePDBSelector(NonWaterNonHydrogenPDBSelector):
12617  r"""Proxy of C++ IMP::atom::BackbonePDBSelector class."""
12618 
12619  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12620 
12621  def __init__(self, *args):
12622  r"""__init__(BackbonePDBSelector self, std::string name="BackbonePDBSelector%1%") -> BackbonePDBSelector"""
12623  _IMP_atom.BackbonePDBSelector_swiginit(self, _IMP_atom.new_BackbonePDBSelector(*args))
12624  __swig_destroy__ = _IMP_atom.delete_BackbonePDBSelector
12625 
12626  def __str__(self):
12627  r"""__str__(BackbonePDBSelector self) -> std::string"""
12628  return _IMP_atom.BackbonePDBSelector___str__(self)
12629 
12630  def __repr__(self):
12631  r"""__repr__(BackbonePDBSelector self) -> std::string"""
12632  return _IMP_atom.BackbonePDBSelector___repr__(self)
12633 
12634  @staticmethod
12635  def get_from(o):
12636  return _object_cast_to_BackbonePDBSelector(o)
12637 
12638 
12639 # Register BackbonePDBSelector in _IMP_atom:
12640 _IMP_atom.BackbonePDBSelector_swigregister(BackbonePDBSelector)
12641 class PPDBSelector(NonAlternativePDBSelector):
12642  r"""Proxy of C++ IMP::atom::PPDBSelector class."""
12643 
12644  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12645 
12646  def __init__(self, *args):
12647  r"""__init__(PPDBSelector self, std::string name="PPDBSelector%1%") -> PPDBSelector"""
12648  _IMP_atom.PPDBSelector_swiginit(self, _IMP_atom.new_PPDBSelector(*args))
12649  __swig_destroy__ = _IMP_atom.delete_PPDBSelector
12650 
12651  def __str__(self):
12652  r"""__str__(PPDBSelector self) -> std::string"""
12653  return _IMP_atom.PPDBSelector___str__(self)
12654 
12655  def __repr__(self):
12656  r"""__repr__(PPDBSelector self) -> std::string"""
12657  return _IMP_atom.PPDBSelector___repr__(self)
12658 
12659  @staticmethod
12660  def get_from(o):
12661  return _object_cast_to_PPDBSelector(o)
12662 
12663 
12664 # Register PPDBSelector in _IMP_atom:
12665 _IMP_atom.PPDBSelector_swigregister(PPDBSelector)
12666 class AndPDBSelector(PDBSelector):
12667  r"""Proxy of C++ IMP::atom::AndPDBSelector class."""
12668 
12669  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12670 
12671  def get_version_info(self):
12672  r"""get_version_info(AndPDBSelector self) -> VersionInfo"""
12673  return _IMP_atom.AndPDBSelector_get_version_info(self)
12674  __swig_destroy__ = _IMP_atom.delete_AndPDBSelector
12675 
12676  def __init__(self, a, b):
12677  r"""__init__(AndPDBSelector self, PDBSelector a, PDBSelector b) -> AndPDBSelector"""
12678  _IMP_atom.AndPDBSelector_swiginit(self, _IMP_atom.new_AndPDBSelector(a, b))
12679 
12680  def __str__(self):
12681  r"""__str__(AndPDBSelector self) -> std::string"""
12682  return _IMP_atom.AndPDBSelector___str__(self)
12683 
12684  def __repr__(self):
12685  r"""__repr__(AndPDBSelector self) -> std::string"""
12686  return _IMP_atom.AndPDBSelector___repr__(self)
12687 
12688  @staticmethod
12689  def get_from(o):
12690  return _object_cast_to_AndPDBSelector(o)
12691 
12692 
12693 # Register AndPDBSelector in _IMP_atom:
12694 _IMP_atom.AndPDBSelector_swigregister(AndPDBSelector)
12695 class OrPDBSelector(PDBSelector):
12696  r"""Proxy of C++ IMP::atom::OrPDBSelector class."""
12697 
12698  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12699 
12700  def get_version_info(self):
12701  r"""get_version_info(OrPDBSelector self) -> VersionInfo"""
12702  return _IMP_atom.OrPDBSelector_get_version_info(self)
12703  __swig_destroy__ = _IMP_atom.delete_OrPDBSelector
12704 
12705  def __init__(self, a, b):
12706  r"""__init__(OrPDBSelector self, PDBSelector a, PDBSelector b) -> OrPDBSelector"""
12707  _IMP_atom.OrPDBSelector_swiginit(self, _IMP_atom.new_OrPDBSelector(a, b))
12708 
12709  def __str__(self):
12710  r"""__str__(OrPDBSelector self) -> std::string"""
12711  return _IMP_atom.OrPDBSelector___str__(self)
12712 
12713  def __repr__(self):
12714  r"""__repr__(OrPDBSelector self) -> std::string"""
12715  return _IMP_atom.OrPDBSelector___repr__(self)
12716 
12717  @staticmethod
12718  def get_from(o):
12719  return _object_cast_to_OrPDBSelector(o)
12720 
12721 
12722 # Register OrPDBSelector in _IMP_atom:
12723 _IMP_atom.OrPDBSelector_swigregister(OrPDBSelector)
12724 class XorPDBSelector(PDBSelector):
12725  r"""Proxy of C++ IMP::atom::XorPDBSelector class."""
12726 
12727  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12728 
12729  def get_version_info(self):
12730  r"""get_version_info(XorPDBSelector self) -> VersionInfo"""
12731  return _IMP_atom.XorPDBSelector_get_version_info(self)
12732  __swig_destroy__ = _IMP_atom.delete_XorPDBSelector
12733 
12734  def __init__(self, a, b):
12735  r"""__init__(XorPDBSelector self, PDBSelector a, PDBSelector b) -> XorPDBSelector"""
12736  _IMP_atom.XorPDBSelector_swiginit(self, _IMP_atom.new_XorPDBSelector(a, b))
12737 
12738  def __str__(self):
12739  r"""__str__(XorPDBSelector self) -> std::string"""
12740  return _IMP_atom.XorPDBSelector___str__(self)
12741 
12742  def __repr__(self):
12743  r"""__repr__(XorPDBSelector self) -> std::string"""
12744  return _IMP_atom.XorPDBSelector___repr__(self)
12745 
12746  @staticmethod
12747  def get_from(o):
12748  return _object_cast_to_XorPDBSelector(o)
12749 
12750 
12751 # Register XorPDBSelector in _IMP_atom:
12752 _IMP_atom.XorPDBSelector_swigregister(XorPDBSelector)
12753 class NotPDBSelector(PDBSelector):
12754  r"""Proxy of C++ IMP::atom::NotPDBSelector class."""
12755 
12756  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12757 
12758  def get_version_info(self):
12759  r"""get_version_info(NotPDBSelector self) -> VersionInfo"""
12760  return _IMP_atom.NotPDBSelector_get_version_info(self)
12761  __swig_destroy__ = _IMP_atom.delete_NotPDBSelector
12762 
12763  def __init__(self, a):
12764  r"""__init__(NotPDBSelector self, PDBSelector a) -> NotPDBSelector"""
12765  _IMP_atom.NotPDBSelector_swiginit(self, _IMP_atom.new_NotPDBSelector(a))
12766 
12767  def __str__(self):
12768  r"""__str__(NotPDBSelector self) -> std::string"""
12769  return _IMP_atom.NotPDBSelector___str__(self)
12770 
12771  def __repr__(self):
12772  r"""__repr__(NotPDBSelector self) -> std::string"""
12773  return _IMP_atom.NotPDBSelector___repr__(self)
12774 
12775  @staticmethod
12776  def get_from(o):
12777  return _object_cast_to_NotPDBSelector(o)
12778 
12779 
12780 # Register NotPDBSelector in _IMP_atom:
12781 _IMP_atom.NotPDBSelector_swigregister(NotPDBSelector)
12782 
12783 def get_default_pdb_selector():
12784  r"""get_default_pdb_selector() -> PDBSelector"""
12785  return _IMP_atom.get_default_pdb_selector()
12786 
12787 def read_pdb(*args):
12788  r"""
12789  read_pdb(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool select_first_model=True, bool no_radii=False) -> Hierarchy
12790  read_pdb(TextInput input, int model, Hierarchy h)
12791  """
12792  return _IMP_atom.read_pdb(*args)
12793 
12794 def read_multimodel_pdb(*args):
12795  r"""read_multimodel_pdb(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool noradii=False) -> IMP::atom::Hierarchies"""
12796  return _IMP_atom.read_multimodel_pdb(*args)
12797 
12798 def write_pdb(mhd, out, model=1):
12799  r"""write_pdb(Selection mhd, TextOutput out, unsigned int model=1)"""
12800  return _IMP_atom.write_pdb(mhd, out, model)
12801 
12802 def write_pdb_of_c_alphas(mhd, out, model=1):
12803  r"""write_pdb_of_c_alphas(Selection mhd, TextOutput out, unsigned int model=1)"""
12804  return _IMP_atom.write_pdb_of_c_alphas(mhd, out, model)
12805 
12806 def write_multimodel_pdb(mhd, out):
12807  r"""write_multimodel_pdb(IMP::atom::Hierarchies const & mhd, TextOutput out)"""
12808  return _IMP_atom.write_multimodel_pdb(mhd, out)
12809 
12810 def get_pdb_string(*args):
12811  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"""
12812  return _IMP_atom.get_pdb_string(*args)
12813 
12814 def get_pdb_conect_record_string(arg1, arg2):
12815  r"""get_pdb_conect_record_string(int arg1, int arg2) -> std::string"""
12816  return _IMP_atom.get_pdb_conect_record_string(arg1, arg2)
12817 class WritePDBOptimizerState(IMP.OptimizerState):
12818  r"""Proxy of C++ IMP::atom::WritePDBOptimizerState class."""
12819 
12820  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12821 
12822  def __init__(self, *args):
12823  r"""
12824  __init__(WritePDBOptimizerState self, Model m, _ParticleIndexesAdaptor pis, std::string filename) -> WritePDBOptimizerState
12825  __init__(WritePDBOptimizerState self, IMP::atom::Hierarchies const mh, std::string filename) -> WritePDBOptimizerState
12826  __init__(WritePDBOptimizerState self) -> WritePDBOptimizerState
12827  """
12828  _IMP_atom.WritePDBOptimizerState_swiginit(self, _IMP_atom.new_WritePDBOptimizerState(*args))
12829 
12830  def get_version_info(self):
12831  r"""get_version_info(WritePDBOptimizerState self) -> VersionInfo"""
12832  return _IMP_atom.WritePDBOptimizerState_get_version_info(self)
12833  __swig_destroy__ = _IMP_atom.delete_WritePDBOptimizerState
12834 
12835  def __str__(self):
12836  r"""__str__(WritePDBOptimizerState self) -> std::string"""
12837  return _IMP_atom.WritePDBOptimizerState___str__(self)
12838 
12839  def __repr__(self):
12840  r"""__repr__(WritePDBOptimizerState self) -> std::string"""
12841  return _IMP_atom.WritePDBOptimizerState___repr__(self)
12842 
12843  @staticmethod
12844  def get_from(o):
12845  return _object_cast_to_WritePDBOptimizerState(o)
12846 
12847 
12848  def _get_as_binary(self):
12849  r"""_get_as_binary(WritePDBOptimizerState self) -> PyObject *"""
12850  return _IMP_atom.WritePDBOptimizerState__get_as_binary(self)
12851 
12852  def _set_from_binary(self, p):
12853  r"""_set_from_binary(WritePDBOptimizerState self, PyObject * p)"""
12854  return _IMP_atom.WritePDBOptimizerState__set_from_binary(self, p)
12855 
12856  def __getstate__(self):
12857  p = self._get_as_binary()
12858  if len(self.__dict__) > 1:
12859  d = self.__dict__.copy()
12860  del d['this']
12861  p = (d, p)
12862  return p
12863 
12864  def __setstate__(self, p):
12865  if not hasattr(self, 'this'):
12866  self.__init__()
12867  if isinstance(p, tuple):
12868  d, p = p
12869  self.__dict__.update(d)
12870  return self._set_from_binary(p)
12871 
12872 
12873 # Register WritePDBOptimizerState in _IMP_atom:
12874 _IMP_atom.WritePDBOptimizerState_swigregister(WritePDBOptimizerState)
12875 
12876 def read_multimodel_mmcif(*args):
12877  r"""read_multimodel_mmcif(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool noradii=False) -> IMP::atom::Hierarchies"""
12878  return _IMP_atom.read_multimodel_mmcif(*args)
12879 
12880 def read_mmcif(*args):
12881  r"""read_mmcif(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool select_first_model=True, bool noradii=False) -> Hierarchy"""
12882  return _IMP_atom.read_mmcif(*args)
12883 
12884 def read_multimodel_bcif(*args):
12885  r"""read_multimodel_bcif(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool noradii=False) -> IMP::atom::Hierarchies"""
12886  return _IMP_atom.read_multimodel_bcif(*args)
12887 
12888 def read_bcif(*args):
12889  r"""read_bcif(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool select_first_model=True, bool noradii=False) -> Hierarchy"""
12890  return _IMP_atom.read_bcif(*args)
12891 
12892 def read_pdb_any(*args):
12893  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"""
12894  return _IMP_atom.read_pdb_any(*args)
12895 
12896 def read_multimodel_pdb_any(*args):
12897  r"""read_multimodel_pdb_any(TextInput input, Model model, PDBSelector selector=IMP::atom::get_default_pdb_selector(), bool noradii=False) -> IMP::atom::Hierarchies"""
12898  return _IMP_atom.read_multimodel_pdb_any(*args)
12899 
12900 def get_kt(T):
12901  r"""get_kt(double T) -> double"""
12902  return _IMP_atom.get_kt(T)
12903 class CAAngleRestraint(IMP.Restraint):
12904  r"""Proxy of C++ IMP::atom::CAAngleRestraint class."""
12905 
12906  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12907 
12908  def __init__(self, m, p1, p2, p3, phi0, score):
12909  r"""__init__(CAAngleRestraint self, Model m, _ParticleIndexAdaptor p1, _ParticleIndexAdaptor p2, _ParticleIndexAdaptor p3, IMP::Floats phi0, IMP::Floats score) -> CAAngleRestraint"""
12910  _IMP_atom.CAAngleRestraint_swiginit(self, _IMP_atom.new_CAAngleRestraint(m, p1, p2, p3, phi0, score))
12911 
12912  def do_get_inputs(self):
12913  r"""do_get_inputs(CAAngleRestraint self) -> IMP::ModelObjectsTemp"""
12914  return _IMP_atom.CAAngleRestraint_do_get_inputs(self)
12915 
12916  def get_version_info(self):
12917  r"""get_version_info(CAAngleRestraint self) -> VersionInfo"""
12918  return _IMP_atom.CAAngleRestraint_get_version_info(self)
12919  __swig_destroy__ = _IMP_atom.delete_CAAngleRestraint
12920 
12921  def __str__(self):
12922  r"""__str__(CAAngleRestraint self) -> std::string"""
12923  return _IMP_atom.CAAngleRestraint___str__(self)
12924 
12925  def __repr__(self):
12926  r"""__repr__(CAAngleRestraint self) -> std::string"""
12927  return _IMP_atom.CAAngleRestraint___repr__(self)
12928 
12929  @staticmethod
12930  def get_from(o):
12931  return _object_cast_to_CAAngleRestraint(o)
12932 
12933 
12934 # Register CAAngleRestraint in _IMP_atom:
12935 _IMP_atom.CAAngleRestraint_swigregister(CAAngleRestraint)
12936 class CADihedralRestraint(IMP.Restraint):
12937  r"""Proxy of C++ IMP::atom::CADihedralRestraint class."""
12938 
12939  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12940 
12941  def __init__(self, m, p1, p2, p3, p4, p5, phi0, phi1, score):
12942  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"""
12943  _IMP_atom.CADihedralRestraint_swiginit(self, _IMP_atom.new_CADihedralRestraint(m, p1, p2, p3, p4, p5, phi0, phi1, score))
12944 
12945  def do_get_inputs(self):
12946  r"""do_get_inputs(CADihedralRestraint self) -> IMP::ModelObjectsTemp"""
12947  return _IMP_atom.CADihedralRestraint_do_get_inputs(self)
12948 
12949  def get_version_info(self):
12950  r"""get_version_info(CADihedralRestraint self) -> VersionInfo"""
12951  return _IMP_atom.CADihedralRestraint_get_version_info(self)
12952  __swig_destroy__ = _IMP_atom.delete_CADihedralRestraint
12953 
12954  def __str__(self):
12955  r"""__str__(CADihedralRestraint self) -> std::string"""
12956  return _IMP_atom.CADihedralRestraint___str__(self)
12957 
12958  def __repr__(self):
12959  r"""__repr__(CADihedralRestraint self) -> std::string"""
12960  return _IMP_atom.CADihedralRestraint___repr__(self)
12961 
12962  @staticmethod
12963  def get_from(o):
12964  return _object_cast_to_CADihedralRestraint(o)
12965 
12966 
12967 # Register CADihedralRestraint in _IMP_atom:
12968 _IMP_atom.CADihedralRestraint_swigregister(CADihedralRestraint)
12969 class StructureSource(IMP.Decorator):
12970  r"""Proxy of C++ IMP::atom::StructureSource class."""
12971 
12972  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12973 
12974  def get_source_id(self):
12975  r"""get_source_id(StructureSource self) -> std::string"""
12976  return _IMP_atom.StructureSource_get_source_id(self)
12977 
12978  def get_source_chain_id(self):
12979  r"""get_source_chain_id(StructureSource self) -> std::string"""
12980  return _IMP_atom.StructureSource_get_source_chain_id(self)
12981 
12982  def set_source_id(self, source_id):
12983  r"""set_source_id(StructureSource self, std::string source_id)"""
12984  return _IMP_atom.StructureSource_set_source_id(self, source_id)
12985 
12986  def set_source_chain_id(self, source_chain_id):
12987  r"""set_source_chain_id(StructureSource self, std::string source_chain_id)"""
12988  return _IMP_atom.StructureSource_set_source_chain_id(self, source_chain_id)
12989 
12990  def __init__(self, *args):
12991  r"""
12992  __init__(StructureSource self) -> StructureSource
12993  __init__(StructureSource self, Model m, ParticleIndex id) -> StructureSource
12994  __init__(StructureSource self, _ParticleAdaptor d) -> StructureSource
12995  """
12996  _IMP_atom.StructureSource_swiginit(self, _IMP_atom.new_StructureSource(*args))
12997 
12998  @staticmethod
12999  def get_is_setup(*args):
13000  r"""
13001  get_is_setup(Model m, ParticleIndex pi) -> bool
13002  get_is_setup(_ParticleAdaptor p) -> bool
13003  """
13004  return _IMP_atom.StructureSource_get_is_setup(*args)
13005 
13006  def show(self, *args):
13007  r"""show(StructureSource self, _ostream out=std::cout)"""
13008  return _IMP_atom.StructureSource_show(self, *args)
13009 
13010  @staticmethod
13011  def setup_particle(*args):
13012  r"""
13013  setup_particle(Model m, ParticleIndex pi, std::string source_id, std::string source_chain_id) -> StructureSource
13014  setup_particle(_ParticleAdaptor pa, std::string source_id, std::string source_chain_id) -> StructureSource
13015  """
13016  return _IMP_atom.StructureSource_setup_particle(*args)
13017 
13018  def add_attribute(self, *args):
13019  r"""
13020  add_attribute(StructureSource self, FloatKey k, IMP::Float v, bool opt)
13021  add_attribute(StructureSource self, FloatKey a0, IMP::Float a1)
13022  add_attribute(StructureSource self, IntKey a0, IMP::Int a1)
13023  add_attribute(StructureSource self, FloatsKey a0, IMP::Floats a1)
13024  add_attribute(StructureSource self, IntsKey a0, IMP::Ints a1)
13025  add_attribute(StructureSource self, StringKey a0, IMP::String a1)
13026  add_attribute(StructureSource self, ParticleIndexKey a0, Particle a1)
13027  add_attribute(StructureSource self, ObjectKey a0, Object a1)
13028  add_attribute(StructureSource self, SparseFloatKey a0, IMP::Float a1)
13029  add_attribute(StructureSource self, SparseIntKey a0, IMP::Int a1)
13030  add_attribute(StructureSource self, SparseStringKey a0, IMP::String a1)
13031  add_attribute(StructureSource self, SparseParticleIndexKey a0, ParticleIndex a1)
13032  """
13033  return _IMP_atom.StructureSource_add_attribute(self, *args)
13034 
13035  def get_value(self, *args):
13036  r"""
13037  get_value(StructureSource self, FloatKey a0) -> IMP::Float
13038  get_value(StructureSource self, IntKey a0) -> IMP::Int
13039  get_value(StructureSource self, FloatsKey a0) -> IMP::Floats
13040  get_value(StructureSource self, IntsKey a0) -> IMP::Ints
13041  get_value(StructureSource self, StringKey a0) -> IMP::String
13042  get_value(StructureSource self, ParticleIndexKey a0) -> Particle
13043  get_value(StructureSource self, ObjectKey a0) -> Object
13044  get_value(StructureSource self, SparseFloatKey a0) -> IMP::Float
13045  get_value(StructureSource self, SparseIntKey a0) -> IMP::Int
13046  get_value(StructureSource self, SparseStringKey a0) -> IMP::String
13047  get_value(StructureSource self, SparseParticleIndexKey a0) -> ParticleIndex
13048  """
13049  return _IMP_atom.StructureSource_get_value(self, *args)
13050 
13051  def set_value(self, *args):
13052  r"""
13053  set_value(StructureSource self, FloatKey a0, IMP::Float a1)
13054  set_value(StructureSource self, IntKey a0, IMP::Int a1)
13055  set_value(StructureSource self, FloatsKey a0, IMP::Floats a1)
13056  set_value(StructureSource self, IntsKey a0, IMP::Ints a1)
13057  set_value(StructureSource self, StringKey a0, IMP::String a1)
13058  set_value(StructureSource self, ParticleIndexKey a0, Particle a1)
13059  set_value(StructureSource self, ObjectKey a0, Object a1)
13060  set_value(StructureSource self, SparseFloatKey a0, IMP::Float a1)
13061  set_value(StructureSource self, SparseIntKey a0, IMP::Int a1)
13062  set_value(StructureSource self, SparseStringKey a0, IMP::String a1)
13063  set_value(StructureSource self, SparseParticleIndexKey a0, ParticleIndex a1)
13064  """
13065  return _IMP_atom.StructureSource_set_value(self, *args)
13066 
13067  def remove_attribute(self, *args):
13068  r"""
13069  remove_attribute(StructureSource self, FloatKey a0)
13070  remove_attribute(StructureSource self, IntKey a0)
13071  remove_attribute(StructureSource self, FloatsKey a0)
13072  remove_attribute(StructureSource self, IntsKey a0)
13073  remove_attribute(StructureSource self, StringKey a0)
13074  remove_attribute(StructureSource self, ParticleIndexKey a0)
13075  remove_attribute(StructureSource self, ObjectKey a0)
13076  remove_attribute(StructureSource self, SparseFloatKey a0)
13077  remove_attribute(StructureSource self, SparseIntKey a0)
13078  remove_attribute(StructureSource self, SparseStringKey a0)
13079  remove_attribute(StructureSource self, SparseParticleIndexKey a0)
13080  """
13081  return _IMP_atom.StructureSource_remove_attribute(self, *args)
13082 
13083  def has_attribute(self, *args):
13084  r"""
13085  has_attribute(StructureSource self, FloatKey a0) -> bool
13086  has_attribute(StructureSource self, IntKey a0) -> bool
13087  has_attribute(StructureSource self, FloatsKey a0) -> bool
13088  has_attribute(StructureSource self, IntsKey a0) -> bool
13089  has_attribute(StructureSource self, StringKey a0) -> bool
13090  has_attribute(StructureSource self, ParticleIndexKey a0) -> bool
13091  has_attribute(StructureSource self, ObjectKey a0) -> bool
13092  has_attribute(StructureSource self, SparseFloatKey a0) -> bool
13093  has_attribute(StructureSource self, SparseIntKey a0) -> bool
13094  has_attribute(StructureSource self, SparseStringKey a0) -> bool
13095  has_attribute(StructureSource self, SparseParticleIndexKey a0) -> bool
13096  """
13097  return _IMP_atom.StructureSource_has_attribute(self, *args)
13098 
13099  def get_derivative(self, a0):
13100  r"""get_derivative(StructureSource self, FloatKey a0) -> double"""
13101  return _IMP_atom.StructureSource_get_derivative(self, a0)
13102 
13103  def get_name(self):
13104  r"""get_name(StructureSource self) -> std::string"""
13105  return _IMP_atom.StructureSource_get_name(self)
13106 
13107  def clear_caches(self):
13108  r"""clear_caches(StructureSource self)"""
13109  return _IMP_atom.StructureSource_clear_caches(self)
13110 
13111  def set_name(self, a0):
13112  r"""set_name(StructureSource self, std::string a0)"""
13113  return _IMP_atom.StructureSource_set_name(self, a0)
13114 
13115  def set_check_level(self, a0):
13116  r"""set_check_level(StructureSource self, IMP::CheckLevel a0)"""
13117  return _IMP_atom.StructureSource_set_check_level(self, a0)
13118 
13119  def add_to_derivative(self, a0, a1, a2):
13120  r"""add_to_derivative(StructureSource self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
13121  return _IMP_atom.StructureSource_add_to_derivative(self, a0, a1, a2)
13122 
13123  def set_is_optimized(self, a0, a1):
13124  r"""set_is_optimized(StructureSource self, FloatKey a0, bool a1)"""
13125  return _IMP_atom.StructureSource_set_is_optimized(self, a0, a1)
13126 
13127  def get_is_optimized(self, a0):
13128  r"""get_is_optimized(StructureSource self, FloatKey a0) -> bool"""
13129  return _IMP_atom.StructureSource_get_is_optimized(self, a0)
13130 
13131  def get_check_level(self):
13132  r"""get_check_level(StructureSource self) -> IMP::CheckLevel"""
13133  return _IMP_atom.StructureSource_get_check_level(self)
13134 
13135  def __eq__(self, *args):
13136  r"""
13137  __eq__(StructureSource self, StructureSource o) -> bool
13138  __eq__(StructureSource self, Particle d) -> bool
13139  """
13140  return _IMP_atom.StructureSource___eq__(self, *args)
13141 
13142  def __ne__(self, *args):
13143  r"""
13144  __ne__(StructureSource self, StructureSource o) -> bool
13145  __ne__(StructureSource self, Particle d) -> bool
13146  """
13147  return _IMP_atom.StructureSource___ne__(self, *args)
13148 
13149  def __le__(self, *args):
13150  r"""
13151  __le__(StructureSource self, StructureSource o) -> bool
13152  __le__(StructureSource self, Particle d) -> bool
13153  """
13154  return _IMP_atom.StructureSource___le__(self, *args)
13155 
13156  def __lt__(self, *args):
13157  r"""
13158  __lt__(StructureSource self, StructureSource o) -> bool
13159  __lt__(StructureSource self, Particle d) -> bool
13160  """
13161  return _IMP_atom.StructureSource___lt__(self, *args)
13162 
13163  def __ge__(self, *args):
13164  r"""
13165  __ge__(StructureSource self, StructureSource o) -> bool
13166  __ge__(StructureSource self, Particle d) -> bool
13167  """
13168  return _IMP_atom.StructureSource___ge__(self, *args)
13169 
13170  def __gt__(self, *args):
13171  r"""
13172  __gt__(StructureSource self, StructureSource o) -> bool
13173  __gt__(StructureSource self, Particle d) -> bool
13174  """
13175  return _IMP_atom.StructureSource___gt__(self, *args)
13176 
13177  def __hash__(self):
13178  r"""__hash__(StructureSource self) -> std::size_t"""
13179  return _IMP_atom.StructureSource___hash__(self)
13180 
13181  def __str__(self):
13182  r"""__str__(StructureSource self) -> std::string"""
13183  return _IMP_atom.StructureSource___str__(self)
13184 
13185  def __repr__(self):
13186  r"""__repr__(StructureSource self) -> std::string"""
13187  return _IMP_atom.StructureSource___repr__(self)
13188 
13189  def _get_as_binary(self):
13190  r"""_get_as_binary(StructureSource self) -> PyObject *"""
13191  return _IMP_atom.StructureSource__get_as_binary(self)
13192 
13193  def _set_from_binary(self, p):
13194  r"""_set_from_binary(StructureSource self, PyObject * p)"""
13195  return _IMP_atom.StructureSource__set_from_binary(self, p)
13196 
13197  def __getstate__(self):
13198  p = self._get_as_binary()
13199  if len(self.__dict__) > 1:
13200  d = self.__dict__.copy()
13201  del d['this']
13202  p = (d, p)
13203  return p
13204 
13205  def __setstate__(self, p):
13206  if not hasattr(self, 'this'):
13207  self.__init__()
13208  if isinstance(p, tuple):
13209  d, p = p
13210  self.__dict__.update(d)
13211  return self._set_from_binary(p)
13212 
13213  __swig_destroy__ = _IMP_atom.delete_StructureSource
13214 
13215 # Register StructureSource in _IMP_atom:
13216 _IMP_atom.StructureSource_swigregister(StructureSource)
13217 
13218 def __lshift__(*args):
13219  r"""
13220  __lshift__(_ostream out, Bonded n) -> _ostream
13221  __lshift__(_ostream out, Bond n) -> _ostream
13222  __lshift__(_ostream out, Hierarchy n) -> _ostream
13223  __lshift__(_ostream out, Angle n) -> _ostream
13224  __lshift__(_ostream out, Dihedral n) -> _ostream
13225  __lshift__(_ostream out, CenterOfMass n) -> _ostream
13226  __lshift__(_ostream out, Diffusion n) -> _ostream
13227  __lshift__(_ostream out, RigidBodyDiffusion n) -> _ostream
13228  __lshift__(_ostream out, TAMDParticle n) -> _ostream
13229  __lshift__(_ostream out, Charged n) -> _ostream
13230  __lshift__(_ostream out, Domain n) -> _ostream
13231  __lshift__(_ostream out, LennardJonesTyped n) -> _ostream
13232  __lshift__(_ostream out, Fragment n) -> _ostream
13233  __lshift__(_ostream out, SecondaryStructureResidue n) -> _ostream
13234  __lshift__(_ostream out, Atom n) -> _ostream
13235  __lshift__(_ostream out, Residue n) -> _ostream
13236  __lshift__(_ostream out, Representation n) -> _ostream
13237  __lshift__(_ostream out, State n) -> _ostream
13238  __lshift__(_ostream out, Molecule n) -> _ostream
13239  __lshift__(_ostream out, Copy n) -> _ostream
13240  __lshift__(_ostream out, Chain n) -> _ostream
13241  __lshift__(_ostream out, StructureSource n) -> _ostream
13242  """
13243  return _IMP_atom.__lshift__(*args)
13244 class HelixRestraint(IMP.Restraint):
13245  r"""Proxy of C++ IMP::atom::HelixRestraint class."""
13246 
13247  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13248 
13249  def __init__(self, rs, ideal=True):
13250  r"""__init__(HelixRestraint self, IMP::atom::Residues rs, bool ideal=True) -> HelixRestraint"""
13251  _IMP_atom.HelixRestraint_swiginit(self, _IMP_atom.new_HelixRestraint(rs, ideal))
13252 
13253  def get_number_of_bonds(self):
13254  r"""get_number_of_bonds(HelixRestraint self) -> int"""
13255  return _IMP_atom.HelixRestraint_get_number_of_bonds(self)
13256 
13257  def get_number_of_dihedrals(self):
13258  r"""get_number_of_dihedrals(HelixRestraint self) -> int"""
13259  return _IMP_atom.HelixRestraint_get_number_of_dihedrals(self)
13260 
13261  def do_get_inputs(self):
13262  r"""do_get_inputs(HelixRestraint self) -> IMP::ModelObjectsTemp"""
13263  return _IMP_atom.HelixRestraint_do_get_inputs(self)
13264 
13265  def get_version_info(self):
13266  r"""get_version_info(HelixRestraint self) -> VersionInfo"""
13267  return _IMP_atom.HelixRestraint_get_version_info(self)
13268  __swig_destroy__ = _IMP_atom.delete_HelixRestraint
13269 
13270  def __str__(self):
13271  r"""__str__(HelixRestraint self) -> std::string"""
13272  return _IMP_atom.HelixRestraint___str__(self)
13273 
13274  def __repr__(self):
13275  r"""__repr__(HelixRestraint self) -> std::string"""
13276  return _IMP_atom.HelixRestraint___repr__(self)
13277 
13278  @staticmethod
13279  def get_from(o):
13280  return _object_cast_to_HelixRestraint(o)
13281 
13282 
13283 # Register HelixRestraint in _IMP_atom:
13284 _IMP_atom.HelixRestraint_swigregister(HelixRestraint)
13285 
13287  r"""get_transformation_aligning_first_to_second(Selection s1, Selection s2) -> Transformation3D"""
13288  return _IMP_atom.get_transformation_aligning_first_to_second(s1, s2)
13289 
13290 def show_molecular_hierarchy(*args):
13291  r"""show_molecular_hierarchy(Hierarchy h, _ostream out=std::cout) -> _ostream"""
13292  return _IMP_atom.show_molecular_hierarchy(*args)
13293 class CHARMMBond(object):
13294  r"""Proxy of C++ IMP::atom::CHARMMConnection< 2 > class."""
13295 
13296  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13297  __repr__ = _swig_repr
13298 
13299  def __init__(self, atoms):
13300  r"""__init__(CHARMMBond self, IMP::Strings const & atoms) -> CHARMMBond"""
13301  _IMP_atom.CHARMMBond_swiginit(self, _IMP_atom.new_CHARMMBond(atoms))
13302 
13303  def get_endpoint(self, i):
13304  r"""get_endpoint(CHARMMBond self, unsigned int i) -> CHARMMBondEndpoint"""
13305  return _IMP_atom.CHARMMBond_get_endpoint(self, i)
13306 
13307  def get_contains_atom(self, name):
13308  r"""get_contains_atom(CHARMMBond self, std::string name) -> bool"""
13309  return _IMP_atom.CHARMMBond_get_contains_atom(self, name)
13310 
13311  def show(self, *args):
13312  r"""show(CHARMMBond self, _ostream out=std::cout)"""
13313  return _IMP_atom.CHARMMBond_show(self, *args)
13314  __swig_destroy__ = _IMP_atom.delete_CHARMMBond
13315 
13316 # Register CHARMMBond in _IMP_atom:
13317 _IMP_atom.CHARMMBond_swigregister(CHARMMBond)
13318 class CHARMMAngle(object):
13319  r"""Proxy of C++ IMP::atom::CHARMMConnection< 3 > class."""
13320 
13321  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13322  __repr__ = _swig_repr
13323 
13324  def __init__(self, atoms):
13325  r"""__init__(CHARMMAngle self, IMP::Strings const & atoms) -> CHARMMAngle"""
13326  _IMP_atom.CHARMMAngle_swiginit(self, _IMP_atom.new_CHARMMAngle(atoms))
13327 
13328  def get_endpoint(self, i):
13329  r"""get_endpoint(CHARMMAngle self, unsigned int i) -> CHARMMBondEndpoint"""
13330  return _IMP_atom.CHARMMAngle_get_endpoint(self, i)
13331 
13332  def get_contains_atom(self, name):
13333  r"""get_contains_atom(CHARMMAngle self, std::string name) -> bool"""
13334  return _IMP_atom.CHARMMAngle_get_contains_atom(self, name)
13335 
13336  def show(self, *args):
13337  r"""show(CHARMMAngle self, _ostream out=std::cout)"""
13338  return _IMP_atom.CHARMMAngle_show(self, *args)
13339  __swig_destroy__ = _IMP_atom.delete_CHARMMAngle
13340 
13341 # Register CHARMMAngle in _IMP_atom:
13342 _IMP_atom.CHARMMAngle_swigregister(CHARMMAngle)
13343 
13344 def _get_native_overlap_cpp(m1, m2, threshold):
13345  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"""
13346  return _IMP_atom._get_native_overlap_cpp(m1, m2, threshold)
13347 
13348 def _get_drmsd_cpp(m0, m1):
13349  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"""
13350  return _IMP_atom._get_drmsd_cpp(m0, m1)
13351 
13352 def _get_drmsd_Q_cpp(m0, m1, threshold):
13353  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"""
13354  return _IMP_atom._get_drmsd_Q_cpp(m0, m1, threshold)
13355 
13356 def _get_drms_cpp(m1, m2):
13357  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"""
13358  return _IMP_atom._get_drms_cpp(m1, m2)
13359 
13360 def _get_rigid_bodies_drms_cpp(m1, m2, ranges):
13361  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"""
13362  return _IMP_atom._get_rigid_bodies_drms_cpp(m1, m2, ranges)
13363 
13364 def get_native_overlap(a, b, d):
13365  va= [IMP.algebra.get_vector(x) for x in a]
13366  vb= [IMP.algebra.get_vector(x) for x in b]
13367  return _get_native_overlap_cpp(va, vb, d)
13368 
13369 def get_drmsd(a, b):
13370  va= [IMP.algebra.get_vector(x) for x in a]
13371  vb= [IMP.algebra.get_vector(x) for x in b]
13372  return _get_drmsd_cpp(va, vb)
13373 
13374 def get_drms(a, b):
13375  va= [IMP.algebra.get_vector(x) for x in a]
13376  vb= [IMP.algebra.get_vector(x) for x in b]
13377  return _get_drms_cpp(va, vb)
13378 
13379 def get_drmsd_Q(a, b, t):
13380  va= [IMP.algebra.get_vector(x) for x in a]
13381  vb= [IMP.algebra.get_vector(x) for x in b]
13382  return _get_drmsd_Q_cpp(va, vb, t)
13383 
13384 def get_rigid_bodies_drms(a, b, ranges):
13385  va= [IMP.algebra.get_vector(x) for x in a]
13386  vb= [IMP.algebra.get_vector(x) for x in b]
13387 #rs = [IMP.IntRange(r[0],r[1]) for r in ranges]
13388  return _get_rigid_bodies_drms_cpp(va, vb, ranges)
13389 
13390 
13391 class _LennardJonesTypedPairScore(IMP.PairScore):
13392  r"""Proxy of C++ IMP::atom::LennardJonesTypedPairScore< IMP::atom::SmoothingFunction > class."""
13393 
13394  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13395  __repr__ = _swig_repr
13396 
13397  def __init__(self, f):
13398  r"""__init__(_LennardJonesTypedPairScore self, SmoothingFunction f) -> _LennardJonesTypedPairScore"""
13399  _IMP_atom._LennardJonesTypedPairScore_swiginit(self, _IMP_atom.new__LennardJonesTypedPairScore(f))
13400 
13401  def set_repulsive_weight(self, repulsive_weight):
13402  r"""set_repulsive_weight(_LennardJonesTypedPairScore self, double repulsive_weight)"""
13403  return _IMP_atom._LennardJonesTypedPairScore_set_repulsive_weight(self, repulsive_weight)
13404 
13405  def get_repulsive_weight(self):
13406  r"""get_repulsive_weight(_LennardJonesTypedPairScore self) -> double"""
13407  return _IMP_atom._LennardJonesTypedPairScore_get_repulsive_weight(self)
13408 
13409  def set_attractive_weight(self, attractive_weight):
13410  r"""set_attractive_weight(_LennardJonesTypedPairScore self, double attractive_weight)"""
13411  return _IMP_atom._LennardJonesTypedPairScore_set_attractive_weight(self, attractive_weight)
13412 
13413  def get_attractive_weight(self):
13414  r"""get_attractive_weight(_LennardJonesTypedPairScore self) -> double"""
13415  return _IMP_atom._LennardJonesTypedPairScore_get_attractive_weight(self)
13416 
13417  def do_get_inputs(self, m, pis):
13418  r"""do_get_inputs(_LennardJonesTypedPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
13419  return _IMP_atom._LennardJonesTypedPairScore_do_get_inputs(self, m, pis)
13420 
13421  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
13422  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"""
13423  return _IMP_atom._LennardJonesTypedPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
13424 
13425  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
13426  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"""
13427  return _IMP_atom._LennardJonesTypedPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
13428 
13429  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
13430  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"""
13431  return _IMP_atom._LennardJonesTypedPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
13432 
13433  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
13434  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"""
13435  return _IMP_atom._LennardJonesTypedPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
13436 
13437  def get_version_info(self):
13438  r"""get_version_info(_LennardJonesTypedPairScore self) -> VersionInfo"""
13439  return _IMP_atom._LennardJonesTypedPairScore_get_version_info(self)
13440  __swig_destroy__ = _IMP_atom.delete__LennardJonesTypedPairScore
13441 
13442  @staticmethod
13443  def get_from(o):
13444  return _object_cast_to__LennardJonesTypedPairScore(o)
13445 
13446 
13447 # Register _LennardJonesTypedPairScore in _IMP_atom:
13448 _IMP_atom._LennardJonesTypedPairScore_swigregister(_LennardJonesTypedPairScore)
13449 class _SwitchedLennardJonesTypedPairScore(IMP.PairScore):
13450  r"""Proxy of C++ IMP::atom::LennardJonesTypedPairScore< IMP::atom::ForceSwitch > class."""
13451 
13452  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13453  __repr__ = _swig_repr
13454 
13455  def __init__(self, f):
13456  r"""__init__(_SwitchedLennardJonesTypedPairScore self, ForceSwitch f) -> _SwitchedLennardJonesTypedPairScore"""
13457  _IMP_atom._SwitchedLennardJonesTypedPairScore_swiginit(self, _IMP_atom.new__SwitchedLennardJonesTypedPairScore(f))
13458 
13459  def set_repulsive_weight(self, repulsive_weight):
13460  r"""set_repulsive_weight(_SwitchedLennardJonesTypedPairScore self, double repulsive_weight)"""
13461  return _IMP_atom._SwitchedLennardJonesTypedPairScore_set_repulsive_weight(self, repulsive_weight)
13462 
13463  def get_repulsive_weight(self):
13464  r"""get_repulsive_weight(_SwitchedLennardJonesTypedPairScore self) -> double"""
13465  return _IMP_atom._SwitchedLennardJonesTypedPairScore_get_repulsive_weight(self)
13466 
13467  def set_attractive_weight(self, attractive_weight):
13468  r"""set_attractive_weight(_SwitchedLennardJonesTypedPairScore self, double attractive_weight)"""
13469  return _IMP_atom._SwitchedLennardJonesTypedPairScore_set_attractive_weight(self, attractive_weight)
13470 
13471  def get_attractive_weight(self):
13472  r"""get_attractive_weight(_SwitchedLennardJonesTypedPairScore self) -> double"""
13473  return _IMP_atom._SwitchedLennardJonesTypedPairScore_get_attractive_weight(self)
13474 
13475  def do_get_inputs(self, m, pis):
13476  r"""do_get_inputs(_SwitchedLennardJonesTypedPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
13477  return _IMP_atom._SwitchedLennardJonesTypedPairScore_do_get_inputs(self, m, pis)
13478 
13479  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
13480  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"""
13481  return _IMP_atom._SwitchedLennardJonesTypedPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
13482 
13483  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
13484  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"""
13485  return _IMP_atom._SwitchedLennardJonesTypedPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
13486 
13487  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
13488  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"""
13489  return _IMP_atom._SwitchedLennardJonesTypedPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
13490 
13491  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
13492  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"""
13493  return _IMP_atom._SwitchedLennardJonesTypedPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
13494 
13495  def get_version_info(self):
13496  r"""get_version_info(_SwitchedLennardJonesTypedPairScore self) -> VersionInfo"""
13497  return _IMP_atom._SwitchedLennardJonesTypedPairScore_get_version_info(self)
13498  __swig_destroy__ = _IMP_atom.delete__SwitchedLennardJonesTypedPairScore
13499 
13500  @staticmethod
13501  def get_from(o):
13502  return _object_cast_to__SwitchedLennardJonesTypedPairScore(o)
13503 
13504 
13505 # Register _SwitchedLennardJonesTypedPairScore in _IMP_atom:
13506 _IMP_atom._SwitchedLennardJonesTypedPairScore_swigregister(_SwitchedLennardJonesTypedPairScore)
13507 
13508 class LennardJonesTypedPairScore(_SwitchedLennardJonesTypedPairScore.__bases__[0]):
13509  def __init__(self, f):
13510  if isinstance(f, ForceSwitch):
13511  p = _SwitchedLennardJonesTypedPairScore(f)
13512  else:
13513  p = _LennardJonesTypedPairScore(f)
13514  self.__dict__['_proxied'] = p
13515  def __getattr__(self, key):
13516  return getattr(self._proxied, key)
13517  def __setattr__(self, key, val):
13518  return setattr(self._proxied, key, val)
13519 
13520  @staticmethod
13521  def get_from(o):
13522  try:
13523  p = _SwitchedLennardJonesTypedPairScore.get_from(o)
13524  except ValueError:
13525  p = _LennardJonesTypedPairScore.get_from(o)
13526  obj = object.__new__(LennardJonesTypedPairScore)
13527  obj.__dict__['_proxied'] = p
13528  return obj
13529 
13530 
13531 def get_module_name():
13532  r"""get_module_name() -> std::string const"""
13533  return _IMP_atom.get_module_name()
13534 
13535 def get_module_version():
13536  r"""get_module_version() -> std::string const"""
13537  return _IMP_atom.get_module_version()
13538 
13539 def get_example_path(fname):
13540  r"""get_example_path(std::string fname) -> std::string"""
13541  return _IMP_atom.get_example_path(fname)
13542 
13543 def get_data_path(fname):
13544  r"""get_data_path(std::string fname) -> std::string"""
13545  return _IMP_atom.get_data_path(fname)
13546 
13547 from . import _version_check
13548 _version_check.check_version(get_module_version())
13549 __version__ = get_module_version()
13550 
13551 
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.
Definition: PairScore.h:44
A shared container for Pairs.
Definition: PairContainer.h:39
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.
Definition: exception.h:80
Vector< AtomTypes > get_chi_dihedral_atom_types(ResidueType rt)
setup
Definition: setup.py:1
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.
Definition: mmcif.h:86
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.
Definition: atom/distance.h:49
Vector< VectorD< D > > get_vertices(const BoundingBoxD< D > &bb)
Return a list of the 2^D bounding points for the bounding box.
Definition: BoundingBoxD.h:281
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)
Definition: estimates.h:101
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.
Definition: mmcif.h:61
double get_volume(const BoundingBoxD< D > &bb)
See BoundingBoxD.
Definition: BoundingBoxD.h:170
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.
Definition: Object.h:111
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.
Definition: Optimizer.h:48
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)
Definition: estimates.h:92
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.
double get_radius_of_gyration(const Vector3Ds &ps)
Return the radius of gyration of a set of points.
Definition: Vector3D.h:77
A decorator for a particle with x,y,z coordinates.
Definition: XYZ.h:30
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)
Definition: Decorator.h:119
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.
Definition: PairPredicate.h:31
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.
Definition: Refiner.h:34
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)
Definition: atom/distance.h:85
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.
Definition: exception.h:72
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.
Definition: Restraint.h:56