IMP logo
IMP Reference Guide  develop.31a501ea3f,2026/01/29
The Integrative Modeling Platform
core/__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-2026 IMP Inventors. All rights reserved.
10 
11 
12 
13 
14 from sys import version_info as _swig_python_version_info
15 import _IMP_core
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_CORE_SwigPyIterator(object):
67  r"""Proxy of C++ swig::IMP_CORE_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_core.delete_IMP_CORE_SwigPyIterator
75 
76  def value(self):
77  r"""value(IMP_CORE_SwigPyIterator self) -> PyObject *"""
78  return _IMP_core.IMP_CORE_SwigPyIterator_value(self)
79 
80  def incr(self, n=1):
81  r"""incr(IMP_CORE_SwigPyIterator self, size_t n=1) -> IMP_CORE_SwigPyIterator"""
82  return _IMP_core.IMP_CORE_SwigPyIterator_incr(self, n)
83 
84  def decr(self, n=1):
85  r"""decr(IMP_CORE_SwigPyIterator self, size_t n=1) -> IMP_CORE_SwigPyIterator"""
86  return _IMP_core.IMP_CORE_SwigPyIterator_decr(self, n)
87 
88  def distance(self, x):
89  r"""distance(IMP_CORE_SwigPyIterator self, IMP_CORE_SwigPyIterator x) -> ptrdiff_t"""
90  return _IMP_core.IMP_CORE_SwigPyIterator_distance(self, x)
91 
92  def equal(self, x):
93  r"""equal(IMP_CORE_SwigPyIterator self, IMP_CORE_SwigPyIterator x) -> bool"""
94  return _IMP_core.IMP_CORE_SwigPyIterator_equal(self, x)
95 
96  def copy(self):
97  r"""copy(IMP_CORE_SwigPyIterator self) -> IMP_CORE_SwigPyIterator"""
98  return _IMP_core.IMP_CORE_SwigPyIterator_copy(self)
99 
100  def next(self):
101  r"""next(IMP_CORE_SwigPyIterator self) -> PyObject *"""
102  return _IMP_core.IMP_CORE_SwigPyIterator_next(self)
103 
104  def __next__(self):
105  r"""__next__(IMP_CORE_SwigPyIterator self) -> PyObject *"""
106  return _IMP_core.IMP_CORE_SwigPyIterator___next__(self)
107 
108  def previous(self):
109  r"""previous(IMP_CORE_SwigPyIterator self) -> PyObject *"""
110  return _IMP_core.IMP_CORE_SwigPyIterator_previous(self)
111 
112  def advance(self, n):
113  r"""advance(IMP_CORE_SwigPyIterator self, ptrdiff_t n) -> IMP_CORE_SwigPyIterator"""
114  return _IMP_core.IMP_CORE_SwigPyIterator_advance(self, n)
115 
116  def __eq__(self, x):
117  r"""__eq__(IMP_CORE_SwigPyIterator self, IMP_CORE_SwigPyIterator x) -> bool"""
118  return _IMP_core.IMP_CORE_SwigPyIterator___eq__(self, x)
119 
120  def __ne__(self, x):
121  r"""__ne__(IMP_CORE_SwigPyIterator self, IMP_CORE_SwigPyIterator x) -> bool"""
122  return _IMP_core.IMP_CORE_SwigPyIterator___ne__(self, x)
123 
124  def __iadd__(self, n):
125  r"""__iadd__(IMP_CORE_SwigPyIterator self, ptrdiff_t n) -> IMP_CORE_SwigPyIterator"""
126  return _IMP_core.IMP_CORE_SwigPyIterator___iadd__(self, n)
127 
128  def __isub__(self, n):
129  r"""__isub__(IMP_CORE_SwigPyIterator self, ptrdiff_t n) -> IMP_CORE_SwigPyIterator"""
130  return _IMP_core.IMP_CORE_SwigPyIterator___isub__(self, n)
131 
132  def __add__(self, n):
133  r"""__add__(IMP_CORE_SwigPyIterator self, ptrdiff_t n) -> IMP_CORE_SwigPyIterator"""
134  return _IMP_core.IMP_CORE_SwigPyIterator___add__(self, n)
135 
136  def __sub__(self, *args):
137  r"""
138  __sub__(IMP_CORE_SwigPyIterator self, ptrdiff_t n) -> IMP_CORE_SwigPyIterator
139  __sub__(IMP_CORE_SwigPyIterator self, IMP_CORE_SwigPyIterator x) -> ptrdiff_t
140  """
141  return _IMP_core.IMP_CORE_SwigPyIterator___sub__(self, *args)
142  def __iter__(self):
143  return self
144 
145 # Register IMP_CORE_SwigPyIterator in _IMP_core:
146 _IMP_core.IMP_CORE_SwigPyIterator_swigregister(IMP_CORE_SwigPyIterator)
147 
148 _value_types=[]
149 _object_types=[]
150 _raii_types=[]
151 _plural_types=[]
152 
153 IMP_DEBUG = _IMP_core.IMP_DEBUG
154 
155 IMP_RELEASE = _IMP_core.IMP_RELEASE
156 
157 IMP_SILENT = _IMP_core.IMP_SILENT
158 
159 IMP_PROGRESS = _IMP_core.IMP_PROGRESS
160 
161 IMP_TERSE = _IMP_core.IMP_TERSE
162 
163 IMP_VERBOSE = _IMP_core.IMP_VERBOSE
164 
165 IMP_MEMORY = _IMP_core.IMP_MEMORY
166 
167 IMP_NONE = _IMP_core.IMP_NONE
168 
169 IMP_USAGE = _IMP_core.IMP_USAGE
170 
171 IMP_INTERNAL = _IMP_core.IMP_INTERNAL
172 
173 IMP_KERNEL_HAS_LOG4CXX = _IMP_core.IMP_KERNEL_HAS_LOG4CXX
174 
175 IMP_COMPILER_HAS_CEREAL_RAW_POINTER = _IMP_core.IMP_COMPILER_HAS_CEREAL_RAW_POINTER
176 
177 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_core.IMP_COMPILER_HAS_DEBUG_VECTOR
178 
179 IMP_COMPILER_HAS_RANDOM_SHUFFLE = _IMP_core.IMP_COMPILER_HAS_RANDOM_SHUFFLE
180 
181 IMP_COMPILER_HAS_THREE_WAY = _IMP_core.IMP_COMPILER_HAS_THREE_WAY
182 
183 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_core.IMP_KERNEL_HAS_BOOST_RANDOM
184 
185 IMP_KERNEL_HAS_NUMPY = _IMP_core.IMP_KERNEL_HAS_NUMPY
186 
187 IMP_KERNEL_HAS_BOOST_SYSTEM = _IMP_core.IMP_KERNEL_HAS_BOOST_SYSTEM
188 
189 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_core.IMP_KERNEL_HAS_GPERFTOOLS
190 
191 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_core.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
192 
193 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_core.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
194 
195 IMPKERNEL_SHOW_WARNINGS = _IMP_core.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_core._ostream_write(self, osa_buf)
236 
237 # Register _ostream in _IMP_core:
238 _IMP_core._ostream_swigregister(_ostream)
239 IMP_C_OPEN_BINARY = _IMP_core.IMP_C_OPEN_BINARY
240 
241 import IMP
242 IMP_CGAL_HAS_BOOST_FILESYSTEM = _IMP_core.IMP_CGAL_HAS_BOOST_FILESYSTEM
243 
244 IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS = _IMP_core.IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS
245 
246 IMP_CGAL_HAS_BOOST_RANDOM = _IMP_core.IMP_CGAL_HAS_BOOST_RANDOM
247 
248 IMP_CGAL_HAS_NUMPY = _IMP_core.IMP_CGAL_HAS_NUMPY
249 
250 IMPCGAL_SHOW_WARNINGS = _IMP_core.IMPCGAL_SHOW_WARNINGS
251 
252 import IMP.cgal
253 IMP_ALGEBRA_HAS_IMP_CGAL = _IMP_core.IMP_ALGEBRA_HAS_IMP_CGAL
254 
255 IMP_ALGEBRA_HAS_BOOST_FILESYSTEM = _IMP_core.IMP_ALGEBRA_HAS_BOOST_FILESYSTEM
256 
257 IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS = _IMP_core.IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS
258 
259 IMP_ALGEBRA_HAS_BOOST_RANDOM = _IMP_core.IMP_ALGEBRA_HAS_BOOST_RANDOM
260 
261 IMP_ALGEBRA_HAS_CGAL = _IMP_core.IMP_ALGEBRA_HAS_CGAL
262 
263 IMP_ALGEBRA_HAS_NUMPY = _IMP_core.IMP_ALGEBRA_HAS_NUMPY
264 
265 IMP_ALGEBRA_HAS_ANN = _IMP_core.IMP_ALGEBRA_HAS_ANN
266 
267 IMPALGEBRA_SHOW_WARNINGS = _IMP_core.IMPALGEBRA_SHOW_WARNINGS
268 
269 import IMP.algebra
270 IMP_DISPLAY_HAS_IMP_CGAL = _IMP_core.IMP_DISPLAY_HAS_IMP_CGAL
271 
272 IMP_DISPLAY_HAS_BOOST_FILESYSTEM = _IMP_core.IMP_DISPLAY_HAS_BOOST_FILESYSTEM
273 
274 IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS = _IMP_core.IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS
275 
276 IMP_DISPLAY_HAS_BOOST_RANDOM = _IMP_core.IMP_DISPLAY_HAS_BOOST_RANDOM
277 
278 IMP_DISPLAY_HAS_CGAL = _IMP_core.IMP_DISPLAY_HAS_CGAL
279 
280 IMP_DISPLAY_HAS_NUMPY = _IMP_core.IMP_DISPLAY_HAS_NUMPY
281 
282 IMPDISPLAY_SHOW_WARNINGS = _IMP_core.IMPDISPLAY_SHOW_WARNINGS
283 
284 import IMP.display
285 IMP_SCORE_FUNCTOR_HAS_IMP_CGAL = _IMP_core.IMP_SCORE_FUNCTOR_HAS_IMP_CGAL
286 
287 IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM = _IMP_core.IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM
288 
289 IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS = _IMP_core.IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS
290 
291 IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM = _IMP_core.IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM
292 
293 IMP_SCORE_FUNCTOR_HAS_CGAL = _IMP_core.IMP_SCORE_FUNCTOR_HAS_CGAL
294 
295 IMP_SCORE_FUNCTOR_HAS_HDF5 = _IMP_core.IMP_SCORE_FUNCTOR_HAS_HDF5
296 
297 IMP_SCORE_FUNCTOR_HAS_NUMPY = _IMP_core.IMP_SCORE_FUNCTOR_HAS_NUMPY
298 
299 IMPSCOREFUNCTOR_SHOW_WARNINGS = _IMP_core.IMPSCOREFUNCTOR_SHOW_WARNINGS
300 
301 import IMP.score_functor
302 IMP_CORE_HAS_IMP_CGAL = _IMP_core.IMP_CORE_HAS_IMP_CGAL
303 
304 IMP_CORE_HAS_IMP_KERNEL = _IMP_core.IMP_CORE_HAS_IMP_KERNEL
305 
306 IMP_CORE_HAS_BOOST_FILESYSTEM = _IMP_core.IMP_CORE_HAS_BOOST_FILESYSTEM
307 
308 IMP_CORE_HAS_BOOST_PROGRAMOPTIONS = _IMP_core.IMP_CORE_HAS_BOOST_PROGRAMOPTIONS
309 
310 IMP_CORE_HAS_BOOST_RANDOM = _IMP_core.IMP_CORE_HAS_BOOST_RANDOM
311 
312 IMP_CORE_HAS_CGAL = _IMP_core.IMP_CORE_HAS_CGAL
313 
314 IMP_CORE_HAS_HDF5 = _IMP_core.IMP_CORE_HAS_HDF5
315 
316 IMP_CORE_HAS_NUMPY = _IMP_core.IMP_CORE_HAS_NUMPY
317 
318 IMPCORE_SHOW_WARNINGS = _IMP_core.IMPCORE_SHOW_WARNINGS
319 
320 class _OpenCubicSplineBase(IMP.UnaryFunction):
321  r"""Proxy of C++ IMP::score_functor::ScoreUnaryFunction< IMP::score_functor::OpenCubicSpline > class."""
322 
323  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
324  __repr__ = _swig_repr
325 
326  def __init__(self, *args):
327  r"""__init__(_OpenCubicSplineBase self, IMP::score_functor::OpenCubicSpline const & score, std::string name="UnaryFunction%1%") -> _OpenCubicSplineBase"""
328  _IMP_core._OpenCubicSplineBase_swiginit(self, _IMP_core.new__OpenCubicSplineBase(*args))
329 
330  def get_version_info(self):
331  r"""get_version_info(_OpenCubicSplineBase self) -> VersionInfo"""
332  return _IMP_core._OpenCubicSplineBase_get_version_info(self)
333  __swig_destroy__ = _IMP_core.delete__OpenCubicSplineBase
334 
335 # Register _OpenCubicSplineBase in _IMP_core:
336 _IMP_core._OpenCubicSplineBase_swigregister(_OpenCubicSplineBase)
337 
338 _object_types.append("MonteCarloMover")
339 
340 
341 def _object_cast_to_MonteCarloMover(o):
342  r"""_object_cast_to_MonteCarloMover(Object o) -> MonteCarloMover"""
343  return _IMP_core._object_cast_to_MonteCarloMover(o)
344 
345 MonteCarloMoverResults=list
346 _plural_types.append("MonteCarloMoverResults")
347 _value_types.append("MonteCarloMoverResult")
348 
349 
350 _object_types.append("AngleRestraint")
351 
352 
353 def _object_cast_to_AngleRestraint(o):
354  r"""_object_cast_to_AngleRestraint(Object o) -> AngleRestraint"""
355  return _IMP_core._object_cast_to_AngleRestraint(o)
356 
357 _object_types.append("AngleTripletScore")
358 
359 
360 def _object_cast_to_AngleTripletScore(o):
361  r"""_object_cast_to_AngleTripletScore(Object o) -> AngleTripletScore"""
362  return _IMP_core._object_cast_to_AngleTripletScore(o)
363 
364 _object_types.append("AttributeSingletonScore")
365 
366 
367 def _object_cast_to_AttributeSingletonScore(o):
368  r"""_object_cast_to_AttributeSingletonScore(Object o) -> AttributeSingletonScore"""
369  return _IMP_core._object_cast_to_AttributeSingletonScore(o)
370 
371 _object_types.append("BallMover")
372 
373 
374 def _object_cast_to_BallMover(o):
375  r"""_object_cast_to_BallMover(Object o) -> BallMover"""
376  return _IMP_core._object_cast_to_BallMover(o)
377 
378 _object_types.append("SerialMover")
379 
380 
381 def _object_cast_to_SerialMover(o):
382  r"""_object_cast_to_SerialMover(Object o) -> SerialMover"""
383  return _IMP_core._object_cast_to_SerialMover(o)
384 
385 _object_types.append("SubsetMover")
386 
387 
388 def _object_cast_to_SubsetMover(o):
389  r"""_object_cast_to_SubsetMover(Object o) -> SubsetMover"""
390  return _IMP_core._object_cast_to_SubsetMover(o)
391 
392 _object_types.append("DirectionMover")
393 
394 
395 def _object_cast_to_DirectionMover(o):
396  r"""_object_cast_to_DirectionMover(Object o) -> DirectionMover"""
397  return _IMP_core._object_cast_to_DirectionMover(o)
398 
399 _object_types.append("SurfaceMover")
400 
401 
402 def _object_cast_to_SurfaceMover(o):
403  r"""_object_cast_to_SurfaceMover(Object o) -> SurfaceMover"""
404  return _IMP_core._object_cast_to_SurfaceMover(o)
405 
406 _object_types.append("BoundingBox3DSingletonScore")
407 
408 
409 def _object_cast_to_BoundingBox3DSingletonScore(o):
410  r"""_object_cast_to_BoundingBox3DSingletonScore(Object o) -> BoundingBox3DSingletonScore"""
411  return _IMP_core._object_cast_to_BoundingBox3DSingletonScore(o)
412 
413 _object_types.append("BoundingSphere3DSingletonScore")
414 
415 
416 def _object_cast_to_BoundingSphere3DSingletonScore(o):
417  r"""_object_cast_to_BoundingSphere3DSingletonScore(Object o) -> BoundingSphere3DSingletonScore"""
418  return _IMP_core._object_cast_to_BoundingSphere3DSingletonScore(o)
419 
420 _object_types.append("BoxSweepClosePairsFinder")
421 
422 
423 def _object_cast_to_BoxSweepClosePairsFinder(o):
424  r"""_object_cast_to_BoxSweepClosePairsFinder(Object o) -> BoxSweepClosePairsFinder"""
425  return _IMP_core._object_cast_to_BoxSweepClosePairsFinder(o)
426 
427 _object_types.append("NearestNeighborsClosePairsFinder")
428 
429 
430 def _object_cast_to_NearestNeighborsClosePairsFinder(o):
431  r"""_object_cast_to_NearestNeighborsClosePairsFinder(Object o) -> NearestNeighborsClosePairsFinder"""
432  return _IMP_core._object_cast_to_NearestNeighborsClosePairsFinder(o)
433 
434 _object_types.append("CentroidOfRefined")
435 
436 
437 def _object_cast_to_CentroidOfRefined(o):
438  r"""_object_cast_to_CentroidOfRefined(Object o) -> CentroidOfRefined"""
439  return _IMP_core._object_cast_to_CentroidOfRefined(o)
440 
441 _object_types.append("ChecksScoreState")
442 
443 
444 def _object_cast_to_ChecksScoreState(o):
445  r"""_object_cast_to_ChecksScoreState(Object o) -> ChecksScoreState"""
446  return _IMP_core._object_cast_to_ChecksScoreState(o)
447 
448 _object_types.append("ChildrenRefiner")
449 
450 
451 def _object_cast_to_ChildrenRefiner(o):
452  r"""_object_cast_to_ChildrenRefiner(Object o) -> ChildrenRefiner"""
453  return _IMP_core._object_cast_to_ChildrenRefiner(o)
454 
455 _object_types.append("ClosePairsFinder")
456 
457 
458 def _object_cast_to_ClosePairsFinder(o):
459  r"""_object_cast_to_ClosePairsFinder(Object o) -> ClosePairsFinder"""
460  return _IMP_core._object_cast_to_ClosePairsFinder(o)
461 
462 _object_types.append("ClosePairsPairScore")
463 
464 
465 def _object_cast_to_ClosePairsPairScore(o):
466  r"""_object_cast_to_ClosePairsPairScore(Object o) -> ClosePairsPairScore"""
467  return _IMP_core._object_cast_to_ClosePairsPairScore(o)
468 
469 _object_types.append("ClosedCubicSpline")
470 
471 
472 def _object_cast_to_ClosedCubicSpline(o):
473  r"""_object_cast_to_ClosedCubicSpline(Object o) -> ClosedCubicSpline"""
474  return _IMP_core._object_cast_to_ClosedCubicSpline(o)
475 
476 _object_types.append("ConjugateGradients")
477 
478 
479 def _object_cast_to_ConjugateGradients(o):
480  r"""_object_cast_to_ConjugateGradients(Object o) -> ConjugateGradients"""
481  return _IMP_core._object_cast_to_ConjugateGradients(o)
482 
483 _object_types.append("ConnectivityRestraint")
484 
485 
486 def _object_cast_to_ConnectivityRestraint(o):
487  r"""_object_cast_to_ConnectivityRestraint(Object o) -> ConnectivityRestraint"""
488  return _IMP_core._object_cast_to_ConnectivityRestraint(o)
489 
490 _object_types.append("ConstantRestraint")
491 
492 
493 def _object_cast_to_ConstantRestraint(o):
494  r"""_object_cast_to_ConstantRestraint(Object o) -> ConstantRestraint"""
495  return _IMP_core._object_cast_to_ConstantRestraint(o)
496 
497 _object_types.append("Cosine")
498 
499 
500 def _object_cast_to_Cosine(o):
501  r"""_object_cast_to_Cosine(Object o) -> Cosine"""
502  return _IMP_core._object_cast_to_Cosine(o)
503 
504 _object_types.append("CoverRefined")
505 
506 
507 def _object_cast_to_CoverRefined(o):
508  r"""_object_cast_to_CoverRefined(Object o) -> CoverRefined"""
509  return _IMP_core._object_cast_to_CoverRefined(o)
510 
511 _object_types.append("DerivativesFromRefined")
512 
513 
514 def _object_cast_to_DerivativesFromRefined(o):
515  r"""_object_cast_to_DerivativesFromRefined(Object o) -> DerivativesFromRefined"""
516  return _IMP_core._object_cast_to_DerivativesFromRefined(o)
517 
518 _object_types.append("DerivativesToRefined")
519 
520 
521 def _object_cast_to_DerivativesToRefined(o):
522  r"""_object_cast_to_DerivativesToRefined(Object o) -> DerivativesToRefined"""
523  return _IMP_core._object_cast_to_DerivativesToRefined(o)
524 
525 _object_types.append("WeightedDerivativesToRefined")
526 
527 
528 def _object_cast_to_WeightedDerivativesToRefined(o):
529  r"""_object_cast_to_WeightedDerivativesToRefined(Object o) -> IMP::core::WeightedDerivativesToRefined *"""
530  return _IMP_core._object_cast_to_WeightedDerivativesToRefined(o)
531 
532 _object_types.append("DiameterRestraint")
533 
534 
535 def _object_cast_to_DiameterRestraint(o):
536  r"""_object_cast_to_DiameterRestraint(Object o) -> DiameterRestraint"""
537  return _IMP_core._object_cast_to_DiameterRestraint(o)
538 
539 _object_types.append("DihedralRestraint")
540 
541 
542 def _object_cast_to_DihedralRestraint(o):
543  r"""_object_cast_to_DihedralRestraint(Object o) -> DihedralRestraint"""
544  return _IMP_core._object_cast_to_DihedralRestraint(o)
545 
546 _object_types.append("DistanceRestraint")
547 
548 
549 def _object_cast_to_DistanceRestraint(o):
550  r"""_object_cast_to_DistanceRestraint(Object o) -> DistanceRestraint"""
551  return _IMP_core._object_cast_to_DistanceRestraint(o)
552 
553 _object_types.append("DistanceToSingletonScore")
554 
555 
556 def _object_cast_to_DistanceToSingletonScore(o):
557  r"""_object_cast_to_DistanceToSingletonScore(Object o) -> DistanceToSingletonScore"""
558  return _IMP_core._object_cast_to_DistanceToSingletonScore(o)
559 
560 _object_types.append("ExcludedVolumeRestraint")
561 
562 
563 def _object_cast_to_ExcludedVolumeRestraint(o):
564  r"""_object_cast_to_ExcludedVolumeRestraint(Object o) -> ExcludedVolumeRestraint"""
565  return _IMP_core._object_cast_to_ExcludedVolumeRestraint(o)
566 
567 _object_types.append("FixedRefiner")
568 
569 
570 def _object_cast_to_FixedRefiner(o):
571  r"""_object_cast_to_FixedRefiner(Object o) -> FixedRefiner"""
572  return _IMP_core._object_cast_to_FixedRefiner(o)
573 
574 _object_types.append("GridClosePairsFinder")
575 
576 
577 def _object_cast_to_GridClosePairsFinder(o):
578  r"""_object_cast_to_GridClosePairsFinder(Object o) -> GridClosePairsFinder"""
579  return _IMP_core._object_cast_to_GridClosePairsFinder(o)
580 
581 _object_types.append("Harmonic")
582 
583 
584 def _object_cast_to_Harmonic(o):
585  r"""_object_cast_to_Harmonic(Object o) -> Harmonic"""
586  return _IMP_core._object_cast_to_Harmonic(o)
587 
588 _object_types.append("HarmonicWell")
589 
590 
591 def _object_cast_to_HarmonicWell(o):
592  r"""_object_cast_to_HarmonicWell(Object o) -> HarmonicWell"""
593  return _IMP_core._object_cast_to_HarmonicWell(o)
594 
595 _object_types.append("HarmonicLowerBound")
596 
597 
598 def _object_cast_to_HarmonicLowerBound(o):
599  r"""_object_cast_to_HarmonicLowerBound(Object o) -> HarmonicLowerBound"""
600  return _IMP_core._object_cast_to_HarmonicLowerBound(o)
601 
602 _object_types.append("HarmonicUpperBound")
603 
604 
605 def _object_cast_to_HarmonicUpperBound(o):
606  r"""_object_cast_to_HarmonicUpperBound(Object o) -> HarmonicUpperBound"""
607  return _IMP_core._object_cast_to_HarmonicUpperBound(o)
608 
609 _object_types.append("HarmonicSphereDistancePairScore")
610 
611 
612 def _object_cast_to_HarmonicSphereDistancePairScore(o):
613  r"""_object_cast_to_HarmonicSphereDistancePairScore(Object o) -> HarmonicSphereDistancePairScore"""
614  return _IMP_core._object_cast_to_HarmonicSphereDistancePairScore(o)
615 
616 _object_types.append("HarmonicUpperBoundSphereDistancePairScore")
617 
618 
619 def _object_cast_to_HarmonicUpperBoundSphereDistancePairScore(o):
620  r"""_object_cast_to_HarmonicUpperBoundSphereDistancePairScore(Object o) -> HarmonicUpperBoundSphereDistancePairScore"""
621  return _IMP_core._object_cast_to_HarmonicUpperBoundSphereDistancePairScore(o)
622 
623 _object_types.append("HarmonicUpperBoundSphereDiameterPairScore")
624 
625 
626 def _object_cast_to_HarmonicUpperBoundSphereDiameterPairScore(o):
627  r"""_object_cast_to_HarmonicUpperBoundSphereDiameterPairScore(Object o) -> HarmonicUpperBoundSphereDiameterPairScore"""
628  return _IMP_core._object_cast_to_HarmonicUpperBoundSphereDiameterPairScore(o)
629 
630 _object_types.append("HarmonicSurfaceDistancePairScore")
631 
632 
633 def _object_cast_to_HarmonicSurfaceDistancePairScore(o):
634  r"""_object_cast_to_HarmonicSurfaceDistancePairScore(Object o) -> HarmonicSurfaceDistancePairScore"""
635  return _IMP_core._object_cast_to_HarmonicSurfaceDistancePairScore(o)
636 
637 _object_types.append("HarmonicSurfaceHeightPairScore")
638 
639 
640 def _object_cast_to_HarmonicSurfaceHeightPairScore(o):
641  r"""_object_cast_to_HarmonicSurfaceHeightPairScore(Object o) -> HarmonicSurfaceHeightPairScore"""
642  return _IMP_core._object_cast_to_HarmonicSurfaceHeightPairScore(o)
643 
644 _object_types.append("HarmonicSurfaceDepthPairScore")
645 
646 
647 def _object_cast_to_HarmonicSurfaceDepthPairScore(o):
648  r"""_object_cast_to_HarmonicSurfaceDepthPairScore(Object o) -> HarmonicSurfaceDepthPairScore"""
649  return _IMP_core._object_cast_to_HarmonicSurfaceDepthPairScore(o)
650 
651 _object_types.append("WeightedSum")
652 
653 
654 def _object_cast_to_WeightedSum(o):
655  r"""_object_cast_to_WeightedSum(Object o) -> WeightedSum"""
656  return _IMP_core._object_cast_to_WeightedSum(o)
657 
658 _object_types.append("WeightedSumOfExponential")
659 
660 
661 def _object_cast_to_WeightedSumOfExponential(o):
662  r"""_object_cast_to_WeightedSumOfExponential(Object o) -> WeightedSumOfExponential"""
663  return _IMP_core._object_cast_to_WeightedSumOfExponential(o)
664 
665 _object_types.append("KClosePairsPairScore")
666 
667 
668 def _object_cast_to_KClosePairsPairScore(o):
669  r"""_object_cast_to_KClosePairsPairScore(Object o) -> KClosePairsPairScore"""
670  return _IMP_core._object_cast_to_KClosePairsPairScore(o)
671 
672 _object_types.append("LeavesRefiner")
673 
674 
675 def _object_cast_to_LeavesRefiner(o):
676  r"""_object_cast_to_LeavesRefiner(Object o) -> LeavesRefiner"""
677  return _IMP_core._object_cast_to_LeavesRefiner(o)
678 
679 _object_types.append("Linear")
680 
681 
682 def _object_cast_to_Linear(o):
683  r"""_object_cast_to_Linear(Object o) -> Linear"""
684  return _IMP_core._object_cast_to_Linear(o)
685 
686 _object_types.append("LogNormalMover")
687 
688 
689 def _object_cast_to_LogNormalMover(o):
690  r"""_object_cast_to_LogNormalMover(Object o) -> LogNormalMover"""
691  return _IMP_core._object_cast_to_LogNormalMover(o)
692 
693 _object_types.append("MCCGSampler")
694 
695 
696 def _object_cast_to_MCCGSampler(o):
697  r"""_object_cast_to_MCCGSampler(Object o) -> MCCGSampler"""
698  return _IMP_core._object_cast_to_MCCGSampler(o)
699 
700 _object_types.append("MonteCarlo")
701 
702 
703 def _object_cast_to_MonteCarlo(o):
704  r"""_object_cast_to_MonteCarlo(Object o) -> MonteCarlo"""
705  return _IMP_core._object_cast_to_MonteCarlo(o)
706 
707 _object_types.append("MonteCarloWithLocalOptimization")
708 
709 
710 def _object_cast_to_MonteCarloWithLocalOptimization(o):
711  r"""_object_cast_to_MonteCarloWithLocalOptimization(Object o) -> MonteCarloWithLocalOptimization"""
712  return _IMP_core._object_cast_to_MonteCarloWithLocalOptimization(o)
713 
714 _object_types.append("MonteCarloWithBasinHopping")
715 
716 
717 def _object_cast_to_MonteCarloWithBasinHopping(o):
718  r"""_object_cast_to_MonteCarloWithBasinHopping(Object o) -> MonteCarloWithBasinHopping"""
719  return _IMP_core._object_cast_to_MonteCarloWithBasinHopping(o)
720 
721 _object_types.append("MSConnectivityRestraint")
722 
723 
724 def _object_cast_to_MSConnectivityRestraint(o):
725  r"""_object_cast_to_MSConnectivityRestraint(Object o) -> MSConnectivityRestraint"""
726  return _IMP_core._object_cast_to_MSConnectivityRestraint(o)
727 
728 _object_types.append("NeighborsTable")
729 
730 
731 def _object_cast_to_NeighborsTable(o):
732  r"""_object_cast_to_NeighborsTable(Object o) -> NeighborsTable"""
733  return _IMP_core._object_cast_to_NeighborsTable(o)
734 
735 _object_types.append("NormalMover")
736 
737 
738 def _object_cast_to_NormalMover(o):
739  r"""_object_cast_to_NormalMover(Object o) -> NormalMover"""
740  return _IMP_core._object_cast_to_NormalMover(o)
741 
742 _object_types.append("NormalizedSphereDistancePairScore")
743 
744 
745 def _object_cast_to_NormalizedSphereDistancePairScore(o):
746  r"""_object_cast_to_NormalizedSphereDistancePairScore(Object o) -> NormalizedSphereDistancePairScore"""
747  return _IMP_core._object_cast_to_NormalizedSphereDistancePairScore(o)
748 
749 _object_types.append("OpenCubicSpline")
750 
751 
752 def _object_cast_to_OpenCubicSpline(o):
753  r"""_object_cast_to_OpenCubicSpline(Object o) -> OpenCubicSpline"""
754  return _IMP_core._object_cast_to_OpenCubicSpline(o)
755 
756 _object_types.append("PairConstraint")
757 
758 
759 def _object_cast_to_PairConstraint(o):
760  r"""_object_cast_to_PairConstraint(Object o) -> PairConstraint"""
761  return _IMP_core._object_cast_to_PairConstraint(o)
762 
763 _object_types.append("PairRestraint")
764 
765 
766 def _object_cast_to_PairRestraint(o):
767  r"""_object_cast_to_PairRestraint(Object o) -> PairRestraint"""
768  return _IMP_core._object_cast_to_PairRestraint(o)
769 
770 _object_types.append("QuadConstraint")
771 
772 
773 def _object_cast_to_QuadConstraint(o):
774  r"""_object_cast_to_QuadConstraint(Object o) -> QuadConstraint"""
775  return _IMP_core._object_cast_to_QuadConstraint(o)
776 
777 _object_types.append("QuadRestraint")
778 
779 
780 def _object_cast_to_QuadRestraint(o):
781  r"""_object_cast_to_QuadRestraint(Object o) -> QuadRestraint"""
782  return _IMP_core._object_cast_to_QuadRestraint(o)
783 
784 _object_types.append("QuadraticClosePairsFinder")
785 
786 
787 def _object_cast_to_QuadraticClosePairsFinder(o):
788  r"""_object_cast_to_QuadraticClosePairsFinder(Object o) -> QuadraticClosePairsFinder"""
789  return _IMP_core._object_cast_to_QuadraticClosePairsFinder(o)
790 
791 _object_types.append("RefinedPairsPairScore")
792 
793 
794 def _object_cast_to_RefinedPairsPairScore(o):
795  r"""_object_cast_to_RefinedPairsPairScore(Object o) -> RefinedPairsPairScore"""
796  return _IMP_core._object_cast_to_RefinedPairsPairScore(o)
797 
798 _object_types.append("RestraintsScoringFunction")
799 
800 
801 def _object_cast_to_RestraintsScoringFunction(o):
802  r"""_object_cast_to_RestraintsScoringFunction(Object o) -> RestraintsScoringFunction"""
803  return _IMP_core._object_cast_to_RestraintsScoringFunction(o)
804 
805 _object_types.append("RigidBodyDistancePairScore")
806 
807 
808 def _object_cast_to_RigidBodyDistancePairScore(o):
809  r"""_object_cast_to_RigidBodyDistancePairScore(Object o) -> RigidBodyDistancePairScore"""
810  return _IMP_core._object_cast_to_RigidBodyDistancePairScore(o)
811 
812 _object_types.append("RigidBodyAnglePairScore")
813 
814 
815 def _object_cast_to_RigidBodyAnglePairScore(o):
816  r"""_object_cast_to_RigidBodyAnglePairScore(Object o) -> RigidBodyAnglePairScore"""
817  return _IMP_core._object_cast_to_RigidBodyAnglePairScore(o)
818 
819 _object_types.append("RigidBodyMover")
820 
821 
822 def _object_cast_to_RigidBodyMover(o):
823  r"""_object_cast_to_RigidBodyMover(Object o) -> RigidBodyMover"""
824  return _IMP_core._object_cast_to_RigidBodyMover(o)
825 
826 _object_types.append("RigidBodyTunneler")
827 
828 
829 def _object_cast_to_RigidBodyTunneler(o):
830  r"""_object_cast_to_RigidBodyTunneler(Object o) -> RigidBodyTunneler"""
831  return _IMP_core._object_cast_to_RigidBodyTunneler(o)
832 
833 _object_types.append("RigidBodyUmbrella")
834 
835 
836 def _object_cast_to_RigidBodyUmbrella(o):
837  r"""_object_cast_to_RigidBodyUmbrella(Object o) -> RigidBodyUmbrella"""
838  return _IMP_core._object_cast_to_RigidBodyUmbrella(o)
839 
840 _object_types.append("RigidClosePairsFinder")
841 
842 
843 def _object_cast_to_RigidClosePairsFinder(o):
844  r"""_object_cast_to_RigidClosePairsFinder(Object o) -> RigidClosePairsFinder"""
845  return _IMP_core._object_cast_to_RigidClosePairsFinder(o)
846 
847 _object_types.append("RigidMembersRefiner")
848 
849 
850 def _object_cast_to_RigidMembersRefiner(o):
851  r"""_object_cast_to_RigidMembersRefiner(Object o) -> RigidMembersRefiner"""
852  return _IMP_core._object_cast_to_RigidMembersRefiner(o)
853 
854 _object_types.append("SingletonConstraint")
855 
856 
857 def _object_cast_to_SingletonConstraint(o):
858  r"""_object_cast_to_SingletonConstraint(Object o) -> SingletonConstraint"""
859  return _IMP_core._object_cast_to_SingletonConstraint(o)
860 
861 _object_types.append("SingletonRestraint")
862 
863 
864 def _object_cast_to_SingletonRestraint(o):
865  r"""_object_cast_to_SingletonRestraint(Object o) -> SingletonRestraint"""
866  return _IMP_core._object_cast_to_SingletonRestraint(o)
867 
868 _object_types.append("SoftSpherePairScore")
869 
870 
871 def _object_cast_to_SoftSpherePairScore(o):
872  r"""_object_cast_to_SoftSpherePairScore(Object o) -> SoftSpherePairScore"""
873  return _IMP_core._object_cast_to_SoftSpherePairScore(o)
874 
875 _object_types.append("_SphereDistancePairScore")
876 
877 
878 def _object_cast_to__SphereDistancePairScore(o):
879  r"""_object_cast_to__SphereDistancePairScore(Object o) -> _SphereDistancePairScore"""
880  return _IMP_core._object_cast_to__SphereDistancePairScore(o)
881 
882 _object_types.append("SphereDistanceToSingletonScore")
883 
884 
885 def _object_cast_to_SphereDistanceToSingletonScore(o):
886  r"""_object_cast_to_SphereDistanceToSingletonScore(Object o) -> SphereDistanceToSingletonScore"""
887  return _IMP_core._object_cast_to_SphereDistanceToSingletonScore(o)
888 
889 _object_types.append("SoftSubSurfacePairScore")
890 
891 
892 def _object_cast_to_SoftSubSurfacePairScore(o):
893  r"""_object_cast_to_SoftSubSurfacePairScore(Object o) -> SoftSubSurfacePairScore"""
894  return _IMP_core._object_cast_to_SoftSubSurfacePairScore(o)
895 
896 _object_types.append("SoftSuperSurfacePairScore")
897 
898 
899 def _object_cast_to_SoftSuperSurfacePairScore(o):
900  r"""_object_cast_to_SoftSuperSurfacePairScore(Object o) -> SoftSuperSurfacePairScore"""
901  return _IMP_core._object_cast_to_SoftSuperSurfacePairScore(o)
902 
903 _object_types.append("SurfaceDistancePairScore")
904 
905 
906 def _object_cast_to_SurfaceDistancePairScore(o):
907  r"""_object_cast_to_SurfaceDistancePairScore(Object o) -> SurfaceDistancePairScore"""
908  return _IMP_core._object_cast_to_SurfaceDistancePairScore(o)
909 
910 _object_types.append("SurfaceHeightPairScore")
911 
912 
913 def _object_cast_to_SurfaceHeightPairScore(o):
914  r"""_object_cast_to_SurfaceHeightPairScore(Object o) -> SurfaceHeightPairScore"""
915  return _IMP_core._object_cast_to_SurfaceHeightPairScore(o)
916 
917 _object_types.append("SurfaceDepthPairScore")
918 
919 
920 def _object_cast_to_SurfaceDepthPairScore(o):
921  r"""_object_cast_to_SurfaceDepthPairScore(Object o) -> SurfaceDepthPairScore"""
922  return _IMP_core._object_cast_to_SurfaceDepthPairScore(o)
923 
924 _object_types.append("SurfaceTetheredChain")
925 
926 
927 def _object_cast_to_SurfaceTetheredChain(o):
928  r"""_object_cast_to_SurfaceTetheredChain(Object o) -> SurfaceTetheredChain"""
929  return _IMP_core._object_cast_to_SurfaceTetheredChain(o)
930 
931 _object_types.append("SurfaceSymmetryConstraint")
932 
933 
934 def _object_cast_to_SurfaceSymmetryConstraint(o):
935  r"""_object_cast_to_SurfaceSymmetryConstraint(Object o) -> SurfaceSymmetryConstraint"""
936  return _IMP_core._object_cast_to_SurfaceSymmetryConstraint(o)
937 
938 _object_types.append("SteepestDescent")
939 
940 
941 def _object_cast_to_SteepestDescent(o):
942  r"""_object_cast_to_SteepestDescent(Object o) -> SteepestDescent"""
943  return _IMP_core._object_cast_to_SteepestDescent(o)
944 
945 _object_types.append("TableRefiner")
946 
947 
948 def _object_cast_to_TableRefiner(o):
949  r"""_object_cast_to_TableRefiner(Object o) -> TableRefiner"""
950  return _IMP_core._object_cast_to_TableRefiner(o)
951 
952 _object_types.append("Transform")
953 
954 
955 def _object_cast_to_Transform(o):
956  r"""_object_cast_to_Transform(Object o) -> Transform"""
957  return _IMP_core._object_cast_to_Transform(o)
958 
959 _object_types.append("TransformationAndReflectionSymmetry")
960 
961 
962 def _object_cast_to_TransformationAndReflectionSymmetry(o):
963  r"""_object_cast_to_TransformationAndReflectionSymmetry(Object o) -> TransformationAndReflectionSymmetry"""
964  return _IMP_core._object_cast_to_TransformationAndReflectionSymmetry(o)
965 
966 _object_types.append("TransformationSymmetry")
967 
968 
969 def _object_cast_to_TransformationSymmetry(o):
970  r"""_object_cast_to_TransformationSymmetry(Object o) -> TransformationSymmetry"""
971  return _IMP_core._object_cast_to_TransformationSymmetry(o)
972 
973 _object_types.append("TransformationSymmetryMover")
974 
975 
976 def _object_cast_to_TransformationSymmetryMover(o):
977  r"""_object_cast_to_TransformationSymmetryMover(Object o) -> TransformationSymmetryMover"""
978  return _IMP_core._object_cast_to_TransformationSymmetryMover(o)
979 
980 _object_types.append("TransformedDistancePairScore")
981 
982 
983 def _object_cast_to_TransformedDistancePairScore(o):
984  r"""_object_cast_to_TransformedDistancePairScore(Object o) -> TransformedDistancePairScore"""
985  return _IMP_core._object_cast_to_TransformedDistancePairScore(o)
986 
987 _object_types.append("TripletConstraint")
988 
989 
990 def _object_cast_to_TripletConstraint(o):
991  r"""_object_cast_to_TripletConstraint(Object o) -> TripletConstraint"""
992  return _IMP_core._object_cast_to_TripletConstraint(o)
993 
994 _object_types.append("TripletRestraint")
995 
996 
997 def _object_cast_to_TripletRestraint(o):
998  r"""_object_cast_to_TripletRestraint(Object o) -> TripletRestraint"""
999  return _IMP_core._object_cast_to_TripletRestraint(o)
1000 
1001 _object_types.append("TypedPairScore")
1002 
1003 
1004 def _object_cast_to_TypedPairScore(o):
1005  r"""_object_cast_to_TypedPairScore(Object o) -> TypedPairScore"""
1006  return _IMP_core._object_cast_to_TypedPairScore(o)
1007 
1008 _object_types.append("VolumeRestraint")
1009 
1010 
1011 def _object_cast_to_VolumeRestraint(o):
1012  r"""_object_cast_to_VolumeRestraint(Object o) -> VolumeRestraint"""
1013  return _IMP_core._object_cast_to_VolumeRestraint(o)
1014 
1015 _object_types.append("WeightedSphereDistancePairScore")
1016 
1017 
1018 def _object_cast_to_WeightedSphereDistancePairScore(o):
1019  r"""_object_cast_to_WeightedSphereDistancePairScore(Object o) -> WeightedSphereDistancePairScore"""
1020  return _IMP_core._object_cast_to_WeightedSphereDistancePairScore(o)
1021 
1022 _object_types.append("MoveStatisticsScoreState")
1023 
1024 
1025 def _object_cast_to_MoveStatisticsScoreState(o):
1026  r"""_object_cast_to_MoveStatisticsScoreState(Object o) -> MoveStatisticsScoreState"""
1027  return _IMP_core._object_cast_to_MoveStatisticsScoreState(o)
1028 
1029 _object_types.append("MinimumRestraint")
1030 
1031 
1032 def _object_cast_to_MinimumRestraint(o):
1033  r"""_object_cast_to_MinimumRestraint(Object o) -> MinimumRestraint"""
1034  return _IMP_core._object_cast_to_MinimumRestraint(o)
1035 
1036 _object_types.append("WriteRestraintScoresOptimizerState")
1037 
1038 
1039 def _object_cast_to_WriteRestraintScoresOptimizerState(o):
1040  r"""_object_cast_to_WriteRestraintScoresOptimizerState(Object o) -> WriteRestraintScoresOptimizerState"""
1041  return _IMP_core._object_cast_to_WriteRestraintScoresOptimizerState(o)
1042 
1043 _object_types.append("LateralSurfaceConstraint")
1044 
1045 
1046 def _object_cast_to_LateralSurfaceConstraint(o):
1047  r"""_object_cast_to_LateralSurfaceConstraint(Object o) -> LateralSurfaceConstraint"""
1048  return _IMP_core._object_cast_to_LateralSurfaceConstraint(o)
1049 
1050 _object_types.append("ConstantSingletonPredicate")
1051 
1052 
1053 def _object_cast_to_ConstantSingletonPredicate(o):
1054  r"""_object_cast_to_ConstantSingletonPredicate(Object o) -> ConstantSingletonPredicate"""
1055  return _IMP_core._object_cast_to_ConstantSingletonPredicate(o)
1056 
1057 _object_types.append("ConstantPairPredicate")
1058 
1059 
1060 def _object_cast_to_ConstantPairPredicate(o):
1061  r"""_object_cast_to_ConstantPairPredicate(Object o) -> ConstantPairPredicate"""
1062  return _IMP_core._object_cast_to_ConstantPairPredicate(o)
1063 
1064 _object_types.append("ConstantTripletPredicate")
1065 
1066 
1067 def _object_cast_to_ConstantTripletPredicate(o):
1068  r"""_object_cast_to_ConstantTripletPredicate(Object o) -> ConstantTripletPredicate"""
1069  return _IMP_core._object_cast_to_ConstantTripletPredicate(o)
1070 
1071 _object_types.append("ConstantQuadPredicate")
1072 
1073 
1074 def _object_cast_to_ConstantQuadPredicate(o):
1075  r"""_object_cast_to_ConstantQuadPredicate(Object o) -> ConstantQuadPredicate"""
1076  return _IMP_core._object_cast_to_ConstantQuadPredicate(o)
1077 
1078 _object_types.append("CoinFlipSingletonPredicate")
1079 
1080 
1081 def _object_cast_to_CoinFlipSingletonPredicate(o):
1082  r"""_object_cast_to_CoinFlipSingletonPredicate(Object o) -> CoinFlipSingletonPredicate"""
1083  return _IMP_core._object_cast_to_CoinFlipSingletonPredicate(o)
1084 
1085 _object_types.append("CoinFlipPairPredicate")
1086 
1087 
1088 def _object_cast_to_CoinFlipPairPredicate(o):
1089  r"""_object_cast_to_CoinFlipPairPredicate(Object o) -> CoinFlipPairPredicate"""
1090  return _IMP_core._object_cast_to_CoinFlipPairPredicate(o)
1091 
1092 _object_types.append("CoinFlipTripletPredicate")
1093 
1094 
1095 def _object_cast_to_CoinFlipTripletPredicate(o):
1096  r"""_object_cast_to_CoinFlipTripletPredicate(Object o) -> CoinFlipTripletPredicate"""
1097  return _IMP_core._object_cast_to_CoinFlipTripletPredicate(o)
1098 
1099 _object_types.append("CoinFlipQuadPredicate")
1100 
1101 
1102 def _object_cast_to_CoinFlipQuadPredicate(o):
1103  r"""_object_cast_to_CoinFlipQuadPredicate(Object o) -> CoinFlipQuadPredicate"""
1104  return _IMP_core._object_cast_to_CoinFlipQuadPredicate(o)
1105 
1106 _object_types.append("UnorderedTypeSingletonPredicate")
1107 
1108 
1109 def _object_cast_to_UnorderedTypeSingletonPredicate(o):
1110  r"""_object_cast_to_UnorderedTypeSingletonPredicate(Object o) -> UnorderedTypeSingletonPredicate"""
1111  return _IMP_core._object_cast_to_UnorderedTypeSingletonPredicate(o)
1112 
1113 _object_types.append("UnorderedTypePairPredicate")
1114 
1115 
1116 def _object_cast_to_UnorderedTypePairPredicate(o):
1117  r"""_object_cast_to_UnorderedTypePairPredicate(Object o) -> UnorderedTypePairPredicate"""
1118  return _IMP_core._object_cast_to_UnorderedTypePairPredicate(o)
1119 
1120 _object_types.append("UnorderedTypeTripletPredicate")
1121 
1122 
1123 def _object_cast_to_UnorderedTypeTripletPredicate(o):
1124  r"""_object_cast_to_UnorderedTypeTripletPredicate(Object o) -> UnorderedTypeTripletPredicate"""
1125  return _IMP_core._object_cast_to_UnorderedTypeTripletPredicate(o)
1126 
1127 _object_types.append("UnorderedTypeQuadPredicate")
1128 
1129 
1130 def _object_cast_to_UnorderedTypeQuadPredicate(o):
1131  r"""_object_cast_to_UnorderedTypeQuadPredicate(Object o) -> UnorderedTypeQuadPredicate"""
1132  return _IMP_core._object_cast_to_UnorderedTypeQuadPredicate(o)
1133 
1134 _object_types.append("OrderedTypeSingletonPredicate")
1135 
1136 
1137 def _object_cast_to_OrderedTypeSingletonPredicate(o):
1138  r"""_object_cast_to_OrderedTypeSingletonPredicate(Object o) -> OrderedTypeSingletonPredicate"""
1139  return _IMP_core._object_cast_to_OrderedTypeSingletonPredicate(o)
1140 
1141 _object_types.append("OrderedTypePairPredicate")
1142 
1143 
1144 def _object_cast_to_OrderedTypePairPredicate(o):
1145  r"""_object_cast_to_OrderedTypePairPredicate(Object o) -> OrderedTypePairPredicate"""
1146  return _IMP_core._object_cast_to_OrderedTypePairPredicate(o)
1147 
1148 _object_types.append("OrderedTypeTripletPredicate")
1149 
1150 
1151 def _object_cast_to_OrderedTypeTripletPredicate(o):
1152  r"""_object_cast_to_OrderedTypeTripletPredicate(Object o) -> OrderedTypeTripletPredicate"""
1153  return _IMP_core._object_cast_to_OrderedTypeTripletPredicate(o)
1154 
1155 _object_types.append("OrderedTypeQuadPredicate")
1156 
1157 
1158 def _object_cast_to_OrderedTypeQuadPredicate(o):
1159  r"""_object_cast_to_OrderedTypeQuadPredicate(Object o) -> OrderedTypeQuadPredicate"""
1160  return _IMP_core._object_cast_to_OrderedTypeQuadPredicate(o)
1161 
1162 _object_types.append("AllSameSingletonPredicate")
1163 
1164 
1165 def _object_cast_to_AllSameSingletonPredicate(o):
1166  r"""_object_cast_to_AllSameSingletonPredicate(Object o) -> AllSameSingletonPredicate"""
1167  return _IMP_core._object_cast_to_AllSameSingletonPredicate(o)
1168 
1169 _object_types.append("AllSamePairPredicate")
1170 
1171 
1172 def _object_cast_to_AllSamePairPredicate(o):
1173  r"""_object_cast_to_AllSamePairPredicate(Object o) -> AllSamePairPredicate"""
1174  return _IMP_core._object_cast_to_AllSamePairPredicate(o)
1175 
1176 _object_types.append("AllSameTripletPredicate")
1177 
1178 
1179 def _object_cast_to_AllSameTripletPredicate(o):
1180  r"""_object_cast_to_AllSameTripletPredicate(Object o) -> AllSameTripletPredicate"""
1181  return _IMP_core._object_cast_to_AllSameTripletPredicate(o)
1182 
1183 _object_types.append("AllSameQuadPredicate")
1184 
1185 
1186 def _object_cast_to_AllSameQuadPredicate(o):
1187  r"""_object_cast_to_AllSameQuadPredicate(Object o) -> AllSameQuadPredicate"""
1188  return _IMP_core._object_cast_to_AllSameQuadPredicate(o)
1189 
1190 def XYZs(l=[]):
1191  return [XYZ(x) for x in l]
1192 _plural_types.append("XYZs")
1193 
1194 
1195 _value_types.append("XYZ")
1196 
1197 
1198 def XYZRs(l=[]):
1199  return [XYZR(x) for x in l]
1200 _plural_types.append("XYZRs")
1201 
1202 
1203 _value_types.append("XYZR")
1204 
1205 
1206 def RigidBodies(l=[]):
1207  return [RigidBody(x) for x in l]
1208 _plural_types.append("RigidBodies")
1209 
1210 
1211 _value_types.append("RigidBody")
1212 
1213 
1214 def RigidBodyMembers(l=[]):
1215  return [RigidBodyMember(x) for x in l]
1216 _plural_types.append("RigidBodyMembers")
1217 
1218 
1219 _value_types.append("RigidBodyMember")
1220 
1221 
1222 def RigidMembers(l=[]):
1223  return [RigidMember(x) for x in l]
1224 _plural_types.append("RigidMembers")
1225 
1226 
1227 _value_types.append("RigidMember")
1228 
1229 
1230 def NonRigidMembers(l=[]):
1231  return [NonRigidMember(x) for x in l]
1232 _plural_types.append("NonRigidMembers")
1233 
1234 
1235 _value_types.append("NonRigidMember")
1236 
1237 
1238 def Centroids(l=[]):
1239  return [Centroid(x) for x in l]
1240 _plural_types.append("Centroids")
1241 
1242 
1243 _value_types.append("Centroid")
1244 
1245 
1246 def Covers(l=[]):
1247  return [Cover(x) for x in l]
1248 _plural_types.append("Covers")
1249 
1250 
1251 _value_types.append("Cover")
1252 
1253 
1254 def References(l=[]):
1255  return [Reference(x) for x in l]
1256 _plural_types.append("References")
1257 
1258 
1259 _value_types.append("Reference")
1260 
1261 
1262 ParticleTypes=list
1263 _plural_types.append("ParticleTypes")
1264 _value_types.append("ParticleType")
1265 
1266 
1267 def Typeds(l=[]):
1268  return [Typed(x) for x in l]
1269 _plural_types.append("Typeds")
1270 
1271 
1272 _value_types.append("Typed")
1273 
1274 
1275 def GenericHierarchies(l=[]):
1276  return [Hierarchy(x) for x in l]
1277 _plural_types.append("GenericHierarchies")
1278 
1279 
1280 _value_types.append("Hierarchy")
1281 
1282 
1283 def Gaussians(l=[]):
1284  return [Gaussian(x) for x in l]
1285 _plural_types.append("Gaussians")
1286 
1287 
1288 _value_types.append("Gaussian")
1289 
1290 
1291 def Directions(l=[]):
1292  return [Direction(x) for x in l]
1293 _plural_types.append("Directions")
1294 
1295 
1296 _value_types.append("Direction")
1297 
1298 
1299 def DirectionAngles(l=[]):
1300  return [DirectionAngle(x) for x in l]
1301 _plural_types.append("DirectionAngles")
1302 
1303 
1304 _value_types.append("DirectionAngle")
1305 
1306 
1307 def Surfaces(l=[]):
1308  return [Surface(x) for x in l]
1309 _plural_types.append("Surfaces")
1310 
1311 
1312 _value_types.append("Surface")
1313 
1314 
1315 def Provenances(l=[]):
1316  return [Provenance(x) for x in l]
1317 _plural_types.append("Provenances")
1318 
1319 
1320 _value_types.append("Provenance")
1321 
1322 
1323 def StructureProvenances(l=[]):
1324  return [StructureProvenance(x) for x in l]
1325 _plural_types.append("StructureProvenances")
1326 
1327 
1328 _value_types.append("StructureProvenance")
1329 
1330 
1331 def SampleProvenances(l=[]):
1332  return [SampleProvenance(x) for x in l]
1333 _plural_types.append("SampleProvenances")
1334 
1335 
1336 _value_types.append("SampleProvenance")
1337 
1338 
1339 def ClusterProvenances(l=[]):
1340  return [ClusterProvenance(x) for x in l]
1341 _plural_types.append("ClusterProvenances")
1342 
1343 
1344 _value_types.append("ClusterProvenance")
1345 
1346 
1347 def CombineProvenances(l=[]):
1348  return [CombineProvenance(x) for x in l]
1349 _plural_types.append("CombineProvenances")
1350 
1351 
1352 _value_types.append("CombineProvenance")
1353 
1354 
1355 def FilterProvenances(l=[]):
1356  return [FilterProvenance(x) for x in l]
1357 _plural_types.append("FilterProvenances")
1358 
1359 
1360 _value_types.append("FilterProvenance")
1361 
1362 
1363 def ScriptProvenances(l=[]):
1364  return [ScriptProvenance(x) for x in l]
1365 _plural_types.append("ScriptProvenances")
1366 
1367 
1368 _value_types.append("ScriptProvenance")
1369 
1370 
1371 def SoftwareProvenances(l=[]):
1372  return [SoftwareProvenance(x) for x in l]
1373 _plural_types.append("SoftwareProvenances")
1374 
1375 
1376 _value_types.append("SoftwareProvenance")
1377 
1378 
1379 def Provenanceds(l=[]):
1380  return [Provenanced(x) for x in l]
1381 _plural_types.append("Provenanceds")
1382 
1383 
1384 _value_types.append("Provenanced")
1385 
1386 
1387 HierarchyCounters=list
1388 _plural_types.append("HierarchyCounters")
1389 _value_types.append("HierarchyCounter")
1390 
1391 
1392 HierarchyTraitsList=list
1393 _plural_types.append("HierarchyTraitsList")
1394 _value_types.append("HierarchyTraits")
1395 
1396 
1397 _object_types.append("TruncatedHarmonicBound")
1398 
1399 
1400 def _object_cast_to_TruncatedHarmonicBound(o):
1401  r"""_object_cast_to_TruncatedHarmonicBound(Object o) -> TruncatedHarmonicBound"""
1402  return _IMP_core._object_cast_to_TruncatedHarmonicBound(o)
1403 
1404 _object_types.append("TruncatedHarmonicLowerBound")
1405 
1406 
1407 def _object_cast_to_TruncatedHarmonicLowerBound(o):
1408  r"""_object_cast_to_TruncatedHarmonicLowerBound(Object o) -> TruncatedHarmonicLowerBound"""
1409  return _IMP_core._object_cast_to_TruncatedHarmonicLowerBound(o)
1410 
1411 _object_types.append("TruncatedHarmonicUpperBound")
1412 
1413 
1414 def _object_cast_to_TruncatedHarmonicUpperBound(o):
1415  r"""_object_cast_to_TruncatedHarmonicUpperBound(Object o) -> TruncatedHarmonicUpperBound"""
1416  return _IMP_core._object_cast_to_TruncatedHarmonicUpperBound(o)
1417 
1418 _object_types.append("HarmonicDistancePairScore")
1419 
1420 
1421 def _object_cast_to_HarmonicDistancePairScore(o):
1422  r"""_object_cast_to_HarmonicDistancePairScore(Object o) -> HarmonicDistancePairScore"""
1423  return _IMP_core._object_cast_to_HarmonicDistancePairScore(o)
1424 
1425 _object_types.append("DistancePairScore")
1426 
1427 
1428 def _object_cast_to_DistancePairScore(o):
1429  r"""_object_cast_to_DistancePairScore(Object o) -> DistancePairScore"""
1430  return _IMP_core._object_cast_to_DistancePairScore(o)
1431 
1432 _object_types.append("XYZRGeometry")
1433 
1434 
1435 def _object_cast_to_XYZRGeometry(o):
1436  r"""_object_cast_to_XYZRGeometry(Object o) -> XYZRGeometry"""
1437  return _IMP_core._object_cast_to_XYZRGeometry(o)
1438 
1439 _object_types.append("XYZRsGeometry")
1440 
1441 
1442 def _object_cast_to_XYZRsGeometry(o):
1443  r"""_object_cast_to_XYZRsGeometry(Object o) -> XYZRsGeometry"""
1444  return _IMP_core._object_cast_to_XYZRsGeometry(o)
1445 
1446 _object_types.append("XYZDerivativeGeometry")
1447 
1448 
1449 def _object_cast_to_XYZDerivativeGeometry(o):
1450  r"""_object_cast_to_XYZDerivativeGeometry(Object o) -> XYZDerivativeGeometry"""
1451  return _IMP_core._object_cast_to_XYZDerivativeGeometry(o)
1452 
1453 _object_types.append("XYZDerivativesGeometry")
1454 
1455 
1456 def _object_cast_to_XYZDerivativesGeometry(o):
1457  r"""_object_cast_to_XYZDerivativesGeometry(Object o) -> XYZDerivativesGeometry"""
1458  return _IMP_core._object_cast_to_XYZDerivativesGeometry(o)
1459 
1460 _object_types.append("RigidBodyDerivativeGeometry")
1461 
1462 
1463 def _object_cast_to_RigidBodyDerivativeGeometry(o):
1464  r"""_object_cast_to_RigidBodyDerivativeGeometry(Object o) -> RigidBodyDerivativeGeometry"""
1465  return _IMP_core._object_cast_to_RigidBodyDerivativeGeometry(o)
1466 
1467 _object_types.append("RigidBodyDerivativesGeometry")
1468 
1469 
1470 def _object_cast_to_RigidBodyDerivativesGeometry(o):
1471  r"""_object_cast_to_RigidBodyDerivativesGeometry(Object o) -> RigidBodyDerivativesGeometry"""
1472  return _IMP_core._object_cast_to_RigidBodyDerivativesGeometry(o)
1473 
1474 _object_types.append("RigidBodyHierarchyGeometry")
1475 
1476 
1477 def _object_cast_to_RigidBodyHierarchyGeometry(o):
1478  r"""_object_cast_to_RigidBodyHierarchyGeometry(Object o) -> RigidBodyHierarchyGeometry"""
1479  return _IMP_core._object_cast_to_RigidBodyHierarchyGeometry(o)
1480 
1481 _object_types.append("RigidBodyFrameGeometry")
1482 
1483 
1484 def _object_cast_to_RigidBodyFrameGeometry(o):
1485  r"""_object_cast_to_RigidBodyFrameGeometry(Object o) -> RigidBodyFrameGeometry"""
1486  return _IMP_core._object_cast_to_RigidBodyFrameGeometry(o)
1487 
1488 _object_types.append("RigidBodyFramesGeometry")
1489 
1490 
1491 def _object_cast_to_RigidBodyFramesGeometry(o):
1492  r"""_object_cast_to_RigidBodyFramesGeometry(Object o) -> RigidBodyFramesGeometry"""
1493  return _IMP_core._object_cast_to_RigidBodyFramesGeometry(o)
1494 
1495 _object_types.append("RigidBodyTorque")
1496 
1497 
1498 def _object_cast_to_RigidBodyTorque(o):
1499  r"""_object_cast_to_RigidBodyTorque(Object o) -> RigidBodyTorque"""
1500  return _IMP_core._object_cast_to_RigidBodyTorque(o)
1501 
1502 _object_types.append("EdgePairGeometry")
1503 
1504 
1505 def _object_cast_to_EdgePairGeometry(o):
1506  r"""_object_cast_to_EdgePairGeometry(Object o) -> EdgePairGeometry"""
1507  return _IMP_core._object_cast_to_EdgePairGeometry(o)
1508 
1509 _object_types.append("EdgePairsGeometry")
1510 
1511 
1512 def _object_cast_to_EdgePairsGeometry(o):
1513  r"""_object_cast_to_EdgePairsGeometry(Object o) -> EdgePairsGeometry"""
1514  return _IMP_core._object_cast_to_EdgePairsGeometry(o)
1515 
1516 _object_types.append("SurfaceGeometry")
1517 
1518 
1519 def _object_cast_to_SurfaceGeometry(o):
1520  r"""_object_cast_to_SurfaceGeometry(Object o) -> SurfaceGeometry"""
1521  return _IMP_core._object_cast_to_SurfaceGeometry(o)
1522 
1523 _object_types.append("SurfaceGeometryConstraint")
1524 
1525 
1526 def _object_cast_to_SurfaceGeometryConstraint(o):
1527  r"""_object_cast_to_SurfaceGeometryConstraint(Object o) -> SurfaceGeometryConstraint"""
1528  return _IMP_core._object_cast_to_SurfaceGeometryConstraint(o)
1529 
1530 _object_types.append("AttributeSingletonPredicate")
1531 
1532 
1533 def _object_cast_to_AttributeSingletonPredicate(o):
1534  r"""_object_cast_to_AttributeSingletonPredicate(Object o) -> AttributeSingletonPredicate"""
1535  return _IMP_core._object_cast_to_AttributeSingletonPredicate(o)
1536 
1537 _object_types.append("InBoundingBox3DSingletonPredicate")
1538 
1539 
1540 def _object_cast_to_InBoundingBox3DSingletonPredicate(o):
1541  r"""_object_cast_to_InBoundingBox3DSingletonPredicate(Object o) -> InBoundingBox3DSingletonPredicate"""
1542  return _IMP_core._object_cast_to_InBoundingBox3DSingletonPredicate(o)
1543 
1544 _object_types.append("IsCollisionPairPredicate")
1545 
1546 
1547 def _object_cast_to_IsCollisionPairPredicate(o):
1548  r"""_object_cast_to_IsCollisionPairPredicate(Object o) -> IsCollisionPairPredicate"""
1549  return _IMP_core._object_cast_to_IsCollisionPairPredicate(o)
1550 
1551 BinormalTermList=list
1552 _plural_types.append("BinormalTermList")
1553 _value_types.append("BinormalTerm")
1554 
1555 
1556 _object_types.append("MultipleBinormalRestraint")
1557 
1558 
1559 def _object_cast_to_MultipleBinormalRestraint(o):
1560  r"""_object_cast_to_MultipleBinormalRestraint(Object o) -> MultipleBinormalRestraint"""
1561  return _IMP_core._object_cast_to_MultipleBinormalRestraint(o)
1562 class ClosePairsFinder(IMP._ParticleInputs, IMP.Object):
1563  r"""Proxy of C++ IMP::core::ClosePairsFinder class."""
1564 
1565  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1566 
1567  def __init__(self, *args, **kwargs):
1568  raise AttributeError("No constructor defined - class is abstract")
1569  __swig_destroy__ = _IMP_core.delete_ClosePairsFinder
1570 
1571  def get_close_pairs(self, *args):
1572  r"""
1573  get_close_pairs(ClosePairsFinder self, Model m, IMP::ParticleIndexes const & pc) -> IMP::ParticleIndexPairs
1574  get_close_pairs(ClosePairsFinder self, Model m, IMP::ParticleIndexes const & pca, IMP::ParticleIndexes const & pcb) -> IMP::ParticleIndexPairs
1575  get_close_pairs(ClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
1576  get_close_pairs(ClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bas, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
1577  """
1578  return _IMP_core.ClosePairsFinder_get_close_pairs(self, *args)
1579 
1580  def set_distance(self, d):
1581  r"""set_distance(ClosePairsFinder self, double d)"""
1582  return _IMP_core.ClosePairsFinder_set_distance(self, d)
1583 
1584  def get_distance(self):
1585  r"""get_distance(ClosePairsFinder self) -> double"""
1586  return _IMP_core.ClosePairsFinder_get_distance(self)
1587  def __get_pair_filters(self): return IMP._list_util.VarList(getdimfunc=self.get_number_of_pair_filters, getfunc=self.get_pair_filter, erasefunc=self.erase_pair_filter, appendfunc=self.add_pair_filter, extendfunc=self.add_pair_filters, clearfunc=self.clear_pair_filters, indexfunc=self._python_index_pair_filter)
1588  def __set_pair_filters(self, obj): IMP._list_util.set_varlist(self.pair_filters, obj)
1589  def __del_pair_filters(self): IMP._list_util.del_varlist(self.pair_filters)
1590  pair_filters = property(__get_pair_filters, __set_pair_filters, __del_pair_filters, doc="List of ##ucnames")
1591 
1592  def remove_pair_filter(self, d):
1593  r"""remove_pair_filter(ClosePairsFinder self, PairPredicate d)"""
1594  return _IMP_core.ClosePairsFinder_remove_pair_filter(self, d)
1595 
1596  def _python_index_pair_filter(self, d, start, stop):
1597  r"""_python_index_pair_filter(ClosePairsFinder self, PairPredicate d, unsigned int start, unsigned int stop) -> unsigned int"""
1598  return _IMP_core.ClosePairsFinder__python_index_pair_filter(self, d, start, stop)
1599 
1600  def remove_pair_filters(self, d):
1601  r"""remove_pair_filters(ClosePairsFinder self, IMP::PairPredicates const & d)"""
1602  return _IMP_core.ClosePairsFinder_remove_pair_filters(self, d)
1603 
1604  def set_pair_filters(self, ps):
1605  r"""set_pair_filters(ClosePairsFinder self, IMP::PairPredicates const & ps)"""
1606  return _IMP_core.ClosePairsFinder_set_pair_filters(self, ps)
1607 
1608  def set_pair_filters_order(self, objs):
1609  r"""set_pair_filters_order(ClosePairsFinder self, IMP::PairPredicates const & objs)"""
1610  return _IMP_core.ClosePairsFinder_set_pair_filters_order(self, objs)
1611 
1612  def add_pair_filter(self, obj):
1613  r"""add_pair_filter(ClosePairsFinder self, PairPredicate obj) -> unsigned int"""
1614  return _IMP_core.ClosePairsFinder_add_pair_filter(self, obj)
1615 
1616  def add_pair_filters(self, objs):
1617  r"""add_pair_filters(ClosePairsFinder self, IMP::PairPredicates const & objs)"""
1618  return _IMP_core.ClosePairsFinder_add_pair_filters(self, objs)
1619 
1620  def clear_pair_filters(self):
1621  r"""clear_pair_filters(ClosePairsFinder self)"""
1622  return _IMP_core.ClosePairsFinder_clear_pair_filters(self)
1623 
1624  def get_number_of_pair_filters(self):
1625  r"""get_number_of_pair_filters(ClosePairsFinder self) -> unsigned int"""
1626  return _IMP_core.ClosePairsFinder_get_number_of_pair_filters(self)
1627 
1628  def get_has_pair_filters(self):
1629  r"""get_has_pair_filters(ClosePairsFinder self) -> bool"""
1630  return _IMP_core.ClosePairsFinder_get_has_pair_filters(self)
1631 
1632  def get_pair_filter(self, i):
1633  r"""get_pair_filter(ClosePairsFinder self, unsigned int i) -> PairPredicate"""
1634  return _IMP_core.ClosePairsFinder_get_pair_filter(self, i)
1635 
1636  def get_pair_filters(self):
1637  r"""get_pair_filters(ClosePairsFinder self) -> IMP::PairPredicates"""
1638  return _IMP_core.ClosePairsFinder_get_pair_filters(self)
1639 
1640  def erase_pair_filter(self, i):
1641  r"""erase_pair_filter(ClosePairsFinder self, unsigned int i)"""
1642  return _IMP_core.ClosePairsFinder_erase_pair_filter(self, i)
1643 
1644  def reserve_pair_filters(self, sz):
1645  r"""reserve_pair_filters(ClosePairsFinder self, unsigned int sz)"""
1646  return _IMP_core.ClosePairsFinder_reserve_pair_filters(self, sz)
1647 
1648  def __str__(self):
1649  r"""__str__(ClosePairsFinder self) -> std::string"""
1650  return _IMP_core.ClosePairsFinder___str__(self)
1651 
1652  def __repr__(self):
1653  r"""__repr__(ClosePairsFinder self) -> std::string"""
1654  return _IMP_core.ClosePairsFinder___repr__(self)
1655 
1656  @staticmethod
1657  def get_from(o):
1658  return _object_cast_to_ClosePairsFinder(o)
1659 
1660 
1661 # Register ClosePairsFinder in _IMP_core:
1662 _IMP_core.ClosePairsFinder_swigregister(ClosePairsFinder)
1663 class MonteCarloMoverResult(IMP._Value):
1664  r"""Proxy of C++ IMP::core::MonteCarloMoverResult class."""
1665 
1666  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1667 
1668  def __init__(self, *args):
1669  r"""__init__(MonteCarloMoverResult self, IMP::ParticleIndexes i0=IMP::ParticleIndexes(), double i1=double()) -> MonteCarloMoverResult"""
1670  _IMP_core.MonteCarloMoverResult_swiginit(self, _IMP_core.new_MonteCarloMoverResult(*args))
1671 
1672  def __hash__(self):
1673  r"""__hash__(MonteCarloMoverResult self) -> std::size_t"""
1674  return _IMP_core.MonteCarloMoverResult___hash__(self)
1675 
1676  def show(self, *args):
1677  r"""show(MonteCarloMoverResult self, _ostream out=std::cout)"""
1678  return _IMP_core.MonteCarloMoverResult_show(self, *args)
1679 
1680  def __cmp__(self, o):
1681  r"""__cmp__(MonteCarloMoverResult self, MonteCarloMoverResult o) -> int"""
1682  return _IMP_core.MonteCarloMoverResult___cmp__(self, o)
1683 
1684  def __eq__(self, o):
1685  r"""__eq__(MonteCarloMoverResult self, MonteCarloMoverResult o) -> bool"""
1686  return _IMP_core.MonteCarloMoverResult___eq__(self, o)
1687 
1688  def __ne__(self, o):
1689  r"""__ne__(MonteCarloMoverResult self, MonteCarloMoverResult o) -> bool"""
1690  return _IMP_core.MonteCarloMoverResult___ne__(self, o)
1691 
1692  def __lt__(self, o):
1693  r"""__lt__(MonteCarloMoverResult self, MonteCarloMoverResult o) -> bool"""
1694  return _IMP_core.MonteCarloMoverResult___lt__(self, o)
1695 
1696  def __gt__(self, o):
1697  r"""__gt__(MonteCarloMoverResult self, MonteCarloMoverResult o) -> bool"""
1698  return _IMP_core.MonteCarloMoverResult___gt__(self, o)
1699 
1700  def __ge__(self, o):
1701  r"""__ge__(MonteCarloMoverResult self, MonteCarloMoverResult o) -> bool"""
1702  return _IMP_core.MonteCarloMoverResult___ge__(self, o)
1703 
1704  def __le__(self, o):
1705  r"""__le__(MonteCarloMoverResult self, MonteCarloMoverResult o) -> bool"""
1706  return _IMP_core.MonteCarloMoverResult___le__(self, o)
1707 
1708  def get_moved_particles(self):
1709  r"""get_moved_particles(MonteCarloMoverResult self) -> IMP::ParticleIndexes const &"""
1710  return _IMP_core.MonteCarloMoverResult_get_moved_particles(self)
1711 
1712  def set_moved_particles(self, v):
1713  r"""set_moved_particles(MonteCarloMoverResult self, IMP::ParticleIndexes const & v)"""
1714  return _IMP_core.MonteCarloMoverResult_set_moved_particles(self, v)
1715 
1716  def get_proposal_ratio(self):
1717  r"""get_proposal_ratio(MonteCarloMoverResult self) -> double const &"""
1718  return _IMP_core.MonteCarloMoverResult_get_proposal_ratio(self)
1719 
1720  def set_proposal_ratio(self, v):
1721  r"""set_proposal_ratio(MonteCarloMoverResult self, double const & v)"""
1722  return _IMP_core.MonteCarloMoverResult_set_proposal_ratio(self, v)
1723 
1724  def __str__(self):
1725  r"""__str__(MonteCarloMoverResult self) -> std::string"""
1726  return _IMP_core.MonteCarloMoverResult___str__(self)
1727 
1728  def __repr__(self):
1729  r"""__repr__(MonteCarloMoverResult self) -> std::string"""
1730  return _IMP_core.MonteCarloMoverResult___repr__(self)
1731  __swig_destroy__ = _IMP_core.delete_MonteCarloMoverResult
1732 
1733 # Register MonteCarloMoverResult in _IMP_core:
1734 _IMP_core.MonteCarloMoverResult_swigregister(MonteCarloMoverResult)
1735 class MonteCarloMover(IMP.ModelObject):
1736  r"""Proxy of C++ IMP::core::MonteCarloMover class."""
1737 
1738  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1739 
1740  def __init__(self, *args):
1741  r"""
1742  __init__(MonteCarloMover self, Model m, std::string name) -> MonteCarloMover
1743  __init__(MonteCarloMover self) -> MonteCarloMover
1744  """
1745  if self.__class__ == MonteCarloMover:
1746  _self = None
1747  else:
1748  _self = self
1749  _IMP_core.MonteCarloMover_swiginit(self, _IMP_core.new_MonteCarloMover(_self, *args))
1750 
1751  if self.__class__ != MonteCarloMover:
1752  _director_objects.register(self)
1753 
1754 
1755 
1756 
1757  def propose(self):
1758  r"""propose(MonteCarloMover self) -> MonteCarloMoverResult"""
1759  return _IMP_core.MonteCarloMover_propose(self)
1760 
1761  def reject(self):
1762  r"""reject(MonteCarloMover self)"""
1763  return _IMP_core.MonteCarloMover_reject(self)
1764 
1765  def accept(self):
1766  r"""accept(MonteCarloMover self)"""
1767  return _IMP_core.MonteCarloMover_accept(self)
1768 
1769  def get_number_of_proposed(self):
1770  r"""get_number_of_proposed(MonteCarloMover self) -> unsigned int"""
1771  return _IMP_core.MonteCarloMover_get_number_of_proposed(self)
1772 
1773  def get_number_of_accepted(self):
1774  r"""get_number_of_accepted(MonteCarloMover self) -> unsigned int"""
1775  return _IMP_core.MonteCarloMover_get_number_of_accepted(self)
1776 
1777  def reset_statistics(self):
1778  r"""reset_statistics(MonteCarloMover self)"""
1779  return _IMP_core.MonteCarloMover_reset_statistics(self)
1780 
1781  def do_propose(self):
1782  r"""do_propose(MonteCarloMover self) -> MonteCarloMoverResult"""
1783  return _IMP_core.MonteCarloMover_do_propose(self)
1784 
1785  def do_reject(self):
1786  r"""do_reject(MonteCarloMover self)"""
1787  return _IMP_core.MonteCarloMover_do_reject(self)
1788 
1789  def do_accept(self):
1790  r"""do_accept(MonteCarloMover self)"""
1791  return _IMP_core.MonteCarloMover_do_accept(self)
1792 
1793  def do_get_outputs(self):
1794  r"""do_get_outputs(MonteCarloMover self) -> IMP::ModelObjectsTemp"""
1795  return _IMP_core.MonteCarloMover_do_get_outputs(self)
1796 
1797  def __str__(self):
1798  r"""__str__(MonteCarloMover self) -> std::string"""
1799  return _IMP_core.MonteCarloMover___str__(self)
1800 
1801  def __repr__(self):
1802  r"""__repr__(MonteCarloMover self) -> std::string"""
1803  return _IMP_core.MonteCarloMover___repr__(self)
1804 
1805  @staticmethod
1806  def get_from(o):
1807  return _object_cast_to_MonteCarloMover(o)
1808 
1809 
1810  def do_show(self, out):
1811  pass
1812 
1813  @staticmethod
1814  def get_from(o):
1815  return _object_cast_to_MonteCarloMover(o)
1816 
1817 
1818  def _get_jax(self):
1819  """Return a JAX implementation of this mover.
1820  Implement this method in a MonteCarloMover subclass to provide
1821  equivalent functionality using [JAX](https://docs.jax.dev/).
1822  See _wrap_jax for more information.
1823  """
1824  raise NotImplementedError(f"No JAX implementation for {self}")
1825 
1826  def _wrap_jax(self, init_func, propose_func):
1827  """Create the return value for _get_jax.
1828  Use this method in _get_jax() to wrap the JAX functions
1829  with other mover-specific information.
1830 
1831  @param init_func a JAX function which is used to initialize this
1832  mover. It is called with a single argument, a fresh JAX
1833  random key, and should return a persistent state object.
1834  This object may be the key itself, or any other Python object
1835  that JAX understands.
1836  @param propose_func a JAX function which is called with the current
1837  JAX Model and the mover's persistent state object.
1838  It should return a new JAX Model with the move applied,
1839  a new persistent state, and the proposal ratio. If the move
1840  is rejected then the new JAX Model will be discarded.
1841  However, the mover's persistent state is updated for both
1842  accepted and rejected moves.
1843  """
1844  from IMP.core._jax_util import JAXMoverInfo
1845  return JAXMoverInfo(init_func, propose_func)
1846 
1847  __swig_destroy__ = _IMP_core.delete_MonteCarloMover
1848  def __disown__(self):
1849  self.this.disown()
1850  _IMP_core.disown_MonteCarloMover(self)
1851  return weakref.proxy(self)
1852 
1853  def do_destroy(self):
1854  r"""do_destroy(MonteCarloMover self)"""
1855  return _IMP_core.MonteCarloMover_do_destroy(self)
1856 
1857  def handle_set_has_required_score_states(self, arg0):
1858  r"""handle_set_has_required_score_states(MonteCarloMover self, bool arg0)"""
1859  return _IMP_core.MonteCarloMover_handle_set_has_required_score_states(self, arg0)
1860 
1861  def do_get_inputs(self):
1862  r"""do_get_inputs(MonteCarloMover self) -> IMP::ModelObjectsTemp"""
1863  return _IMP_core.MonteCarloMover_do_get_inputs(self)
1864 
1865  def do_get_interactions(self):
1866  r"""do_get_interactions(MonteCarloMover self) -> IMP::ModelObjectsTemps"""
1867  return _IMP_core.MonteCarloMover_do_get_interactions(self)
1868 
1869 # Register MonteCarloMover in _IMP_core:
1870 _IMP_core.MonteCarloMover_swigregister(MonteCarloMover)
1871 class XYZ(IMP.Decorator):
1872  r"""Proxy of C++ IMP::core::XYZ class."""
1873 
1874  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1875 
1876  @staticmethod
1877  def get_coordinate_key(i):
1878  r"""get_coordinate_key(unsigned int i) -> FloatKey"""
1879  return _IMP_core.XYZ_get_coordinate_key(i)
1880 
1881  def __init__(self, *args):
1882  r"""
1883  __init__(XYZ self) -> XYZ
1884  __init__(XYZ self, Model m, ParticleIndex id) -> XYZ
1885  __init__(XYZ self, _ParticleAdaptor d) -> XYZ
1886  """
1887  _IMP_core.XYZ_swiginit(self, _IMP_core.new_XYZ(*args))
1888 
1889  def show(self, *args):
1890  r"""show(XYZ self, _ostream out=std::cout)"""
1891  return _IMP_core.XYZ_show(self, *args)
1892 
1893  @staticmethod
1894  def setup_particle(*args):
1895  r"""
1896  setup_particle(Model m, ParticleIndex pi) -> XYZ
1897  setup_particle(_ParticleAdaptor pa) -> XYZ
1898  setup_particle(Model m, ParticleIndex pi, Vector3D v) -> XYZ
1899  setup_particle(_ParticleAdaptor pa, Vector3D v) -> XYZ
1900  """
1901  return _IMP_core.XYZ_setup_particle(*args)
1902 
1903  def get_x(self):
1904  r"""get_x(XYZ self) -> IMP::Float"""
1905  return _IMP_core.XYZ_get_x(self)
1906 
1907  def set_x(self, t):
1908  r"""set_x(XYZ self, IMP::Float t)"""
1909  return _IMP_core.XYZ_set_x(self, t)
1910 
1911  def get_y(self):
1912  r"""get_y(XYZ self) -> IMP::Float"""
1913  return _IMP_core.XYZ_get_y(self)
1914 
1915  def set_y(self, t):
1916  r"""set_y(XYZ self, IMP::Float t)"""
1917  return _IMP_core.XYZ_set_y(self, t)
1918 
1919  def get_z(self):
1920  r"""get_z(XYZ self) -> IMP::Float"""
1921  return _IMP_core.XYZ_get_z(self)
1922 
1923  def set_z(self, t):
1924  r"""set_z(XYZ self, IMP::Float t)"""
1925  return _IMP_core.XYZ_set_z(self, t)
1926 
1927  def set_coordinate(self, i, v):
1928  r"""set_coordinate(XYZ self, unsigned int i, IMP::Float v)"""
1929  return _IMP_core.XYZ_set_coordinate(self, i, v)
1930 
1931  def set_coordinates(self, v):
1932  r"""set_coordinates(XYZ self, Vector3D v)"""
1933  return _IMP_core.XYZ_set_coordinates(self, v)
1934 
1935  def get_coordinate(self, i):
1936  r"""get_coordinate(XYZ self, int i) -> IMP::Float"""
1937  return _IMP_core.XYZ_get_coordinate(self, i)
1938 
1939  def add_to_derivatives(self, v, d):
1940  r"""add_to_derivatives(XYZ self, Vector3D v, DerivativeAccumulator d)"""
1941  return _IMP_core.XYZ_add_to_derivatives(self, v, d)
1942 
1943  def get_coordinates_are_optimized(self):
1944  r"""get_coordinates_are_optimized(XYZ self) -> bool"""
1945  return _IMP_core.XYZ_get_coordinates_are_optimized(self)
1946 
1947  def set_coordinates_are_optimized(self, tf):
1948  r"""set_coordinates_are_optimized(XYZ self, bool tf)"""
1949  return _IMP_core.XYZ_set_coordinates_are_optimized(self, tf)
1950 
1951  def get_vector_to(self, b):
1952  r"""get_vector_to(XYZ self, XYZ b) -> Vector3D"""
1953  return _IMP_core.XYZ_get_vector_to(self, b)
1954 
1955  def get_coordinates(self):
1956  r"""get_coordinates(XYZ self) -> Vector3D"""
1957  return _IMP_core.XYZ_get_coordinates(self)
1958 
1959  def get_derivatives(self):
1960  r"""get_derivatives(XYZ self) -> Vector3D"""
1961  return _IMP_core.XYZ_get_derivatives(self)
1962 
1963  @staticmethod
1964  def get_is_setup(*args):
1965  r"""
1966  get_is_setup(_ParticleAdaptor p) -> bool
1967  get_is_setup(Model m, ParticleIndex pi) -> bool
1968  """
1969  return _IMP_core.XYZ_get_is_setup(*args)
1970 
1971  @staticmethod
1972  def get_xyz_keys():
1973  r"""get_xyz_keys() -> IMP::FloatKeys const &"""
1974  return _IMP_core.XYZ_get_xyz_keys()
1975 
1976  def add_attribute(self, *args):
1977  r"""
1978  add_attribute(XYZ self, FloatKey k, IMP::Float v, bool opt)
1979  add_attribute(XYZ self, FloatKey a0, IMP::Float a1)
1980  add_attribute(XYZ self, IntKey a0, IMP::Int a1)
1981  add_attribute(XYZ self, FloatsKey a0, IMP::Floats a1)
1982  add_attribute(XYZ self, IntsKey a0, IMP::Ints a1)
1983  add_attribute(XYZ self, StringKey a0, IMP::String a1)
1984  add_attribute(XYZ self, ParticleIndexKey a0, Particle a1)
1985  add_attribute(XYZ self, ObjectKey a0, Object a1)
1986  add_attribute(XYZ self, SparseFloatKey a0, IMP::Float a1)
1987  add_attribute(XYZ self, SparseIntKey a0, IMP::Int a1)
1988  add_attribute(XYZ self, SparseStringKey a0, IMP::String a1)
1989  add_attribute(XYZ self, SparseParticleIndexKey a0, ParticleIndex a1)
1990  """
1991  return _IMP_core.XYZ_add_attribute(self, *args)
1992 
1993  def get_value(self, *args):
1994  r"""
1995  get_value(XYZ self, FloatKey a0) -> IMP::Float
1996  get_value(XYZ self, IntKey a0) -> IMP::Int
1997  get_value(XYZ self, FloatsKey a0) -> IMP::Floats
1998  get_value(XYZ self, IntsKey a0) -> IMP::Ints
1999  get_value(XYZ self, StringKey a0) -> IMP::String
2000  get_value(XYZ self, ParticleIndexKey a0) -> Particle
2001  get_value(XYZ self, ObjectKey a0) -> Object
2002  get_value(XYZ self, SparseFloatKey a0) -> IMP::Float
2003  get_value(XYZ self, SparseIntKey a0) -> IMP::Int
2004  get_value(XYZ self, SparseStringKey a0) -> IMP::String
2005  get_value(XYZ self, SparseParticleIndexKey a0) -> ParticleIndex
2006  """
2007  return _IMP_core.XYZ_get_value(self, *args)
2008 
2009  def set_value(self, *args):
2010  r"""
2011  set_value(XYZ self, FloatKey a0, IMP::Float a1)
2012  set_value(XYZ self, IntKey a0, IMP::Int a1)
2013  set_value(XYZ self, FloatsKey a0, IMP::Floats a1)
2014  set_value(XYZ self, IntsKey a0, IMP::Ints a1)
2015  set_value(XYZ self, StringKey a0, IMP::String a1)
2016  set_value(XYZ self, ParticleIndexKey a0, Particle a1)
2017  set_value(XYZ self, ObjectKey a0, Object a1)
2018  set_value(XYZ self, SparseFloatKey a0, IMP::Float a1)
2019  set_value(XYZ self, SparseIntKey a0, IMP::Int a1)
2020  set_value(XYZ self, SparseStringKey a0, IMP::String a1)
2021  set_value(XYZ self, SparseParticleIndexKey a0, ParticleIndex a1)
2022  """
2023  return _IMP_core.XYZ_set_value(self, *args)
2024 
2025  def remove_attribute(self, *args):
2026  r"""
2027  remove_attribute(XYZ self, FloatKey a0)
2028  remove_attribute(XYZ self, IntKey a0)
2029  remove_attribute(XYZ self, FloatsKey a0)
2030  remove_attribute(XYZ self, IntsKey a0)
2031  remove_attribute(XYZ self, StringKey a0)
2032  remove_attribute(XYZ self, ParticleIndexKey a0)
2033  remove_attribute(XYZ self, ObjectKey a0)
2034  remove_attribute(XYZ self, SparseFloatKey a0)
2035  remove_attribute(XYZ self, SparseIntKey a0)
2036  remove_attribute(XYZ self, SparseStringKey a0)
2037  remove_attribute(XYZ self, SparseParticleIndexKey a0)
2038  """
2039  return _IMP_core.XYZ_remove_attribute(self, *args)
2040 
2041  def has_attribute(self, *args):
2042  r"""
2043  has_attribute(XYZ self, FloatKey a0) -> bool
2044  has_attribute(XYZ self, IntKey a0) -> bool
2045  has_attribute(XYZ self, FloatsKey a0) -> bool
2046  has_attribute(XYZ self, IntsKey a0) -> bool
2047  has_attribute(XYZ self, StringKey a0) -> bool
2048  has_attribute(XYZ self, ParticleIndexKey a0) -> bool
2049  has_attribute(XYZ self, ObjectKey a0) -> bool
2050  has_attribute(XYZ self, SparseFloatKey a0) -> bool
2051  has_attribute(XYZ self, SparseIntKey a0) -> bool
2052  has_attribute(XYZ self, SparseStringKey a0) -> bool
2053  has_attribute(XYZ self, SparseParticleIndexKey a0) -> bool
2054  """
2055  return _IMP_core.XYZ_has_attribute(self, *args)
2056 
2057  def get_derivative(self, *args):
2058  r"""
2059  get_derivative(XYZ self, int i) -> IMP::Float
2060  get_derivative(XYZ self, FloatKey a0) -> double
2061  """
2062  return _IMP_core.XYZ_get_derivative(self, *args)
2063 
2064  def get_name(self):
2065  r"""get_name(XYZ self) -> std::string"""
2066  return _IMP_core.XYZ_get_name(self)
2067 
2068  def clear_caches(self):
2069  r"""clear_caches(XYZ self)"""
2070  return _IMP_core.XYZ_clear_caches(self)
2071 
2072  def set_name(self, a0):
2073  r"""set_name(XYZ self, std::string a0)"""
2074  return _IMP_core.XYZ_set_name(self, a0)
2075 
2076  def set_check_level(self, a0):
2077  r"""set_check_level(XYZ self, IMP::CheckLevel a0)"""
2078  return _IMP_core.XYZ_set_check_level(self, a0)
2079 
2080  def add_to_derivative(self, *args):
2081  r"""
2082  add_to_derivative(XYZ self, int i, IMP::Float v, DerivativeAccumulator d)
2083  add_to_derivative(XYZ self, FloatKey a0, double a1, DerivativeAccumulator a2)
2084  """
2085  return _IMP_core.XYZ_add_to_derivative(self, *args)
2086 
2087  def set_is_optimized(self, a0, a1):
2088  r"""set_is_optimized(XYZ self, FloatKey a0, bool a1)"""
2089  return _IMP_core.XYZ_set_is_optimized(self, a0, a1)
2090 
2091  def get_is_optimized(self, a0):
2092  r"""get_is_optimized(XYZ self, FloatKey a0) -> bool"""
2093  return _IMP_core.XYZ_get_is_optimized(self, a0)
2094 
2095  def get_check_level(self):
2096  r"""get_check_level(XYZ self) -> IMP::CheckLevel"""
2097  return _IMP_core.XYZ_get_check_level(self)
2098 
2099  def __eq__(self, *args):
2100  r"""
2101  __eq__(XYZ self, XYZ o) -> bool
2102  __eq__(XYZ self, Particle d) -> bool
2103  """
2104  return _IMP_core.XYZ___eq__(self, *args)
2105 
2106  def __ne__(self, *args):
2107  r"""
2108  __ne__(XYZ self, XYZ o) -> bool
2109  __ne__(XYZ self, Particle d) -> bool
2110  """
2111  return _IMP_core.XYZ___ne__(self, *args)
2112 
2113  def __le__(self, *args):
2114  r"""
2115  __le__(XYZ self, XYZ o) -> bool
2116  __le__(XYZ self, Particle d) -> bool
2117  """
2118  return _IMP_core.XYZ___le__(self, *args)
2119 
2120  def __lt__(self, *args):
2121  r"""
2122  __lt__(XYZ self, XYZ o) -> bool
2123  __lt__(XYZ self, Particle d) -> bool
2124  """
2125  return _IMP_core.XYZ___lt__(self, *args)
2126 
2127  def __ge__(self, *args):
2128  r"""
2129  __ge__(XYZ self, XYZ o) -> bool
2130  __ge__(XYZ self, Particle d) -> bool
2131  """
2132  return _IMP_core.XYZ___ge__(self, *args)
2133 
2134  def __gt__(self, *args):
2135  r"""
2136  __gt__(XYZ self, XYZ o) -> bool
2137  __gt__(XYZ self, Particle d) -> bool
2138  """
2139  return _IMP_core.XYZ___gt__(self, *args)
2140 
2141  def __hash__(self):
2142  r"""__hash__(XYZ self) -> std::size_t"""
2143  return _IMP_core.XYZ___hash__(self)
2144 
2145  def __str__(self):
2146  r"""__str__(XYZ self) -> std::string"""
2147  return _IMP_core.XYZ___str__(self)
2148 
2149  def __repr__(self):
2150  r"""__repr__(XYZ self) -> std::string"""
2151  return _IMP_core.XYZ___repr__(self)
2152 
2153  def _get_as_binary(self):
2154  r"""_get_as_binary(XYZ self) -> PyObject *"""
2155  return _IMP_core.XYZ__get_as_binary(self)
2156 
2157  def _set_from_binary(self, p):
2158  r"""_set_from_binary(XYZ self, PyObject * p)"""
2159  return _IMP_core.XYZ__set_from_binary(self, p)
2160 
2161  def __getstate__(self):
2162  p = self._get_as_binary()
2163  if len(self.__dict__) > 1:
2164  d = self.__dict__.copy()
2165  del d['this']
2166  p = (d, p)
2167  return p
2168 
2169  def __setstate__(self, p):
2170  if not hasattr(self, 'this'):
2171  self.__init__()
2172  if isinstance(p, tuple):
2173  d, p = p
2174  self.__dict__.update(d)
2175  return self._set_from_binary(p)
2176 
2177  __swig_destroy__ = _IMP_core.delete_XYZ
2178 
2179 # Register XYZ in _IMP_core:
2180 _IMP_core.XYZ_swigregister(XYZ)
2181 
2182 def set_vector_geometry(d, v):
2183  r"""set_vector_geometry(XYZ d, Vector3D v)"""
2184  return _IMP_core.set_vector_geometry(d, v)
2185 
2186 def get_vector_geometry(d):
2187  r"""get_vector_geometry(XYZ d) -> Vector3D"""
2188  return _IMP_core.get_vector_geometry(d)
2189 
2190 def get_dihedral(a, b, c, d):
2191  r"""get_dihedral(XYZ a, XYZ b, XYZ c, XYZ d) -> double"""
2192  return _IMP_core.get_dihedral(a, b, c, d)
2193 class XYZR(XYZ):
2194  r"""Proxy of C++ IMP::core::XYZR class."""
2195 
2196  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2197 
2198  def __init__(self, *args):
2199  r"""
2200  __init__(XYZR self) -> XYZR
2201  __init__(XYZR self, Model m, ParticleIndex id) -> XYZR
2202  __init__(XYZR self, _ParticleAdaptor d) -> XYZR
2203  """
2204  _IMP_core.XYZR_swiginit(self, _IMP_core.new_XYZR(*args))
2205 
2206  def show(self, *args):
2207  r"""show(XYZR self, _ostream out=std::cout)"""
2208  return _IMP_core.XYZR_show(self, *args)
2209 
2210  @staticmethod
2211  def setup_particle(*args):
2212  r"""
2213  setup_particle(Model m, ParticleIndex pi) -> XYZR
2214  setup_particle(_ParticleAdaptor pa) -> XYZR
2215  setup_particle(Model m, ParticleIndex pi, IMP::Float radius) -> XYZR
2216  setup_particle(_ParticleAdaptor pa, IMP::Float radius) -> XYZR
2217  setup_particle(Model m, ParticleIndex pi, Sphere3D ball) -> XYZR
2218  setup_particle(_ParticleAdaptor pa, Sphere3D ball) -> XYZR
2219  """
2220  return _IMP_core.XYZR_setup_particle(*args)
2221 
2222  @staticmethod
2223  def get_is_setup(*args):
2224  r"""
2225  get_is_setup(_ParticleAdaptor p) -> bool
2226  get_is_setup(Model m, ParticleIndex pi) -> bool
2227  """
2228  return _IMP_core.XYZR_get_is_setup(*args)
2229 
2230  def get_radius(self):
2231  r"""get_radius(XYZR self) -> double"""
2232  return _IMP_core.XYZR_get_radius(self)
2233 
2234  def set_radius(self, r):
2235  r"""set_radius(XYZR self, double r)"""
2236  return _IMP_core.XYZR_set_radius(self, r)
2237 
2238  def get_sphere(self):
2239  r"""get_sphere(XYZR self) -> Sphere3D"""
2240  return _IMP_core.XYZR_get_sphere(self)
2241 
2242  def set_sphere(self, s):
2243  r"""set_sphere(XYZR self, Sphere3D s)"""
2244  return _IMP_core.XYZR_set_sphere(self, s)
2245 
2246  @staticmethod
2247  def get_radius_key():
2248  r"""get_radius_key() -> FloatKey"""
2249  return _IMP_core.XYZR_get_radius_key()
2250 
2251  def add_to_radius_derivative(self, v, d):
2252  r"""add_to_radius_derivative(XYZR self, double v, DerivativeAccumulator d)"""
2253  return _IMP_core.XYZR_add_to_radius_derivative(self, v, d)
2254 
2255  def add_attribute(self, *args):
2256  r"""
2257  add_attribute(XYZR self, FloatKey k, IMP::Float v, bool opt)
2258  add_attribute(XYZR self, FloatKey a0, IMP::Float a1)
2259  add_attribute(XYZR self, IntKey a0, IMP::Int a1)
2260  add_attribute(XYZR self, FloatsKey a0, IMP::Floats a1)
2261  add_attribute(XYZR self, IntsKey a0, IMP::Ints a1)
2262  add_attribute(XYZR self, StringKey a0, IMP::String a1)
2263  add_attribute(XYZR self, ParticleIndexKey a0, Particle a1)
2264  add_attribute(XYZR self, ObjectKey a0, Object a1)
2265  add_attribute(XYZR self, SparseFloatKey a0, IMP::Float a1)
2266  add_attribute(XYZR self, SparseIntKey a0, IMP::Int a1)
2267  add_attribute(XYZR self, SparseStringKey a0, IMP::String a1)
2268  add_attribute(XYZR self, SparseParticleIndexKey a0, ParticleIndex a1)
2269  """
2270  return _IMP_core.XYZR_add_attribute(self, *args)
2271 
2272  def get_value(self, *args):
2273  r"""
2274  get_value(XYZR self, FloatKey a0) -> IMP::Float
2275  get_value(XYZR self, IntKey a0) -> IMP::Int
2276  get_value(XYZR self, FloatsKey a0) -> IMP::Floats
2277  get_value(XYZR self, IntsKey a0) -> IMP::Ints
2278  get_value(XYZR self, StringKey a0) -> IMP::String
2279  get_value(XYZR self, ParticleIndexKey a0) -> Particle
2280  get_value(XYZR self, ObjectKey a0) -> Object
2281  get_value(XYZR self, SparseFloatKey a0) -> IMP::Float
2282  get_value(XYZR self, SparseIntKey a0) -> IMP::Int
2283  get_value(XYZR self, SparseStringKey a0) -> IMP::String
2284  get_value(XYZR self, SparseParticleIndexKey a0) -> ParticleIndex
2285  """
2286  return _IMP_core.XYZR_get_value(self, *args)
2287 
2288  def set_value(self, *args):
2289  r"""
2290  set_value(XYZR self, FloatKey a0, IMP::Float a1)
2291  set_value(XYZR self, IntKey a0, IMP::Int a1)
2292  set_value(XYZR self, FloatsKey a0, IMP::Floats a1)
2293  set_value(XYZR self, IntsKey a0, IMP::Ints a1)
2294  set_value(XYZR self, StringKey a0, IMP::String a1)
2295  set_value(XYZR self, ParticleIndexKey a0, Particle a1)
2296  set_value(XYZR self, ObjectKey a0, Object a1)
2297  set_value(XYZR self, SparseFloatKey a0, IMP::Float a1)
2298  set_value(XYZR self, SparseIntKey a0, IMP::Int a1)
2299  set_value(XYZR self, SparseStringKey a0, IMP::String a1)
2300  set_value(XYZR self, SparseParticleIndexKey a0, ParticleIndex a1)
2301  """
2302  return _IMP_core.XYZR_set_value(self, *args)
2303 
2304  def remove_attribute(self, *args):
2305  r"""
2306  remove_attribute(XYZR self, FloatKey a0)
2307  remove_attribute(XYZR self, IntKey a0)
2308  remove_attribute(XYZR self, FloatsKey a0)
2309  remove_attribute(XYZR self, IntsKey a0)
2310  remove_attribute(XYZR self, StringKey a0)
2311  remove_attribute(XYZR self, ParticleIndexKey a0)
2312  remove_attribute(XYZR self, ObjectKey a0)
2313  remove_attribute(XYZR self, SparseFloatKey a0)
2314  remove_attribute(XYZR self, SparseIntKey a0)
2315  remove_attribute(XYZR self, SparseStringKey a0)
2316  remove_attribute(XYZR self, SparseParticleIndexKey a0)
2317  """
2318  return _IMP_core.XYZR_remove_attribute(self, *args)
2319 
2320  def has_attribute(self, *args):
2321  r"""
2322  has_attribute(XYZR self, FloatKey a0) -> bool
2323  has_attribute(XYZR self, IntKey a0) -> bool
2324  has_attribute(XYZR self, FloatsKey a0) -> bool
2325  has_attribute(XYZR self, IntsKey a0) -> bool
2326  has_attribute(XYZR self, StringKey a0) -> bool
2327  has_attribute(XYZR self, ParticleIndexKey a0) -> bool
2328  has_attribute(XYZR self, ObjectKey a0) -> bool
2329  has_attribute(XYZR self, SparseFloatKey a0) -> bool
2330  has_attribute(XYZR self, SparseIntKey a0) -> bool
2331  has_attribute(XYZR self, SparseStringKey a0) -> bool
2332  has_attribute(XYZR self, SparseParticleIndexKey a0) -> bool
2333  """
2334  return _IMP_core.XYZR_has_attribute(self, *args)
2335 
2336  def get_derivative(self, a0):
2337  r"""get_derivative(XYZR self, FloatKey a0) -> double"""
2338  return _IMP_core.XYZR_get_derivative(self, a0)
2339 
2340  def get_name(self):
2341  r"""get_name(XYZR self) -> std::string"""
2342  return _IMP_core.XYZR_get_name(self)
2343 
2344  def clear_caches(self):
2345  r"""clear_caches(XYZR self)"""
2346  return _IMP_core.XYZR_clear_caches(self)
2347 
2348  def set_name(self, a0):
2349  r"""set_name(XYZR self, std::string a0)"""
2350  return _IMP_core.XYZR_set_name(self, a0)
2351 
2352  def set_check_level(self, a0):
2353  r"""set_check_level(XYZR self, IMP::CheckLevel a0)"""
2354  return _IMP_core.XYZR_set_check_level(self, a0)
2355 
2356  def add_to_derivative(self, a0, a1, a2):
2357  r"""add_to_derivative(XYZR self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
2358  return _IMP_core.XYZR_add_to_derivative(self, a0, a1, a2)
2359 
2360  def set_is_optimized(self, a0, a1):
2361  r"""set_is_optimized(XYZR self, FloatKey a0, bool a1)"""
2362  return _IMP_core.XYZR_set_is_optimized(self, a0, a1)
2363 
2364  def get_is_optimized(self, a0):
2365  r"""get_is_optimized(XYZR self, FloatKey a0) -> bool"""
2366  return _IMP_core.XYZR_get_is_optimized(self, a0)
2367 
2368  def get_check_level(self):
2369  r"""get_check_level(XYZR self) -> IMP::CheckLevel"""
2370  return _IMP_core.XYZR_get_check_level(self)
2371 
2372  def __eq__(self, *args):
2373  r"""
2374  __eq__(XYZR self, XYZR o) -> bool
2375  __eq__(XYZR self, Particle d) -> bool
2376  """
2377  return _IMP_core.XYZR___eq__(self, *args)
2378 
2379  def __ne__(self, *args):
2380  r"""
2381  __ne__(XYZR self, XYZR o) -> bool
2382  __ne__(XYZR self, Particle d) -> bool
2383  """
2384  return _IMP_core.XYZR___ne__(self, *args)
2385 
2386  def __le__(self, *args):
2387  r"""
2388  __le__(XYZR self, XYZR o) -> bool
2389  __le__(XYZR self, Particle d) -> bool
2390  """
2391  return _IMP_core.XYZR___le__(self, *args)
2392 
2393  def __lt__(self, *args):
2394  r"""
2395  __lt__(XYZR self, XYZR o) -> bool
2396  __lt__(XYZR self, Particle d) -> bool
2397  """
2398  return _IMP_core.XYZR___lt__(self, *args)
2399 
2400  def __ge__(self, *args):
2401  r"""
2402  __ge__(XYZR self, XYZR o) -> bool
2403  __ge__(XYZR self, Particle d) -> bool
2404  """
2405  return _IMP_core.XYZR___ge__(self, *args)
2406 
2407  def __gt__(self, *args):
2408  r"""
2409  __gt__(XYZR self, XYZR o) -> bool
2410  __gt__(XYZR self, Particle d) -> bool
2411  """
2412  return _IMP_core.XYZR___gt__(self, *args)
2413 
2414  def __hash__(self):
2415  r"""__hash__(XYZR self) -> std::size_t"""
2416  return _IMP_core.XYZR___hash__(self)
2417 
2418  def __str__(self):
2419  r"""__str__(XYZR self) -> std::string"""
2420  return _IMP_core.XYZR___str__(self)
2421 
2422  def __repr__(self):
2423  r"""__repr__(XYZR self) -> std::string"""
2424  return _IMP_core.XYZR___repr__(self)
2425 
2426  def _get_as_binary(self):
2427  r"""_get_as_binary(XYZR self) -> PyObject *"""
2428  return _IMP_core.XYZR__get_as_binary(self)
2429 
2430  def _set_from_binary(self, p):
2431  r"""_set_from_binary(XYZR self, PyObject * p)"""
2432  return _IMP_core.XYZR__set_from_binary(self, p)
2433 
2434  def __getstate__(self):
2435  p = self._get_as_binary()
2436  if len(self.__dict__) > 1:
2437  d = self.__dict__.copy()
2438  del d['this']
2439  p = (d, p)
2440  return p
2441 
2442  def __setstate__(self, p):
2443  if not hasattr(self, 'this'):
2444  self.__init__()
2445  if isinstance(p, tuple):
2446  d, p = p
2447  self.__dict__.update(d)
2448  return self._set_from_binary(p)
2449 
2450  __swig_destroy__ = _IMP_core.delete_XYZR
2451 
2452 # Register XYZR in _IMP_core:
2453 _IMP_core.XYZR_swigregister(XYZR)
2454 
2455 def set_enclosing_sphere(b, v, slack=0):
2456  r"""set_enclosing_sphere(XYZR b, IMP::core::XYZs const & v, double slack=0)"""
2457  return _IMP_core.set_enclosing_sphere(b, v, slack)
2458 
2459 def set_enclosing_radius(b, v):
2460  r"""set_enclosing_radius(XYZR b, IMP::core::XYZs const & v)"""
2461  return _IMP_core.set_enclosing_radius(b, v)
2462 
2463 def get_enclosing_sphere(v):
2464  r"""get_enclosing_sphere(IMP::core::XYZs const & v) -> Sphere3D"""
2465  return _IMP_core.get_enclosing_sphere(v)
2466 
2467 def create_xyzr_particles(m, num, radius, box_side=10):
2468  r"""create_xyzr_particles(Model m, unsigned int num, IMP::Float radius, IMP::Float box_side=10) -> IMP::core::XYZRs"""
2469  return _IMP_core.create_xyzr_particles(m, num, radius, box_side)
2470 class XYZRGeometry(IMP.display.SingletonGeometry):
2471  r"""Proxy of C++ IMP::core::XYZRGeometry class."""
2472 
2473  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2474 
2475  def __init__(self, *args):
2476  r"""
2477  __init__(XYZRGeometry self, Particle p) -> XYZRGeometry
2478  __init__(XYZRGeometry self, XYZR d) -> XYZRGeometry
2479  """
2480  _IMP_core.XYZRGeometry_swiginit(self, _IMP_core.new_XYZRGeometry(*args))
2481 
2482  def get_version_info(self):
2483  r"""get_version_info(XYZRGeometry self) -> VersionInfo"""
2484  return _IMP_core.XYZRGeometry_get_version_info(self)
2485  __swig_destroy__ = _IMP_core.delete_XYZRGeometry
2486 
2487  def __str__(self):
2488  r"""__str__(XYZRGeometry self) -> std::string"""
2489  return _IMP_core.XYZRGeometry___str__(self)
2490 
2491  def __repr__(self):
2492  r"""__repr__(XYZRGeometry self) -> std::string"""
2493  return _IMP_core.XYZRGeometry___repr__(self)
2494 
2495  @staticmethod
2496  def get_from(o):
2497  return _object_cast_to_XYZRGeometry(o)
2498 
2499 
2500 # Register XYZRGeometry in _IMP_core:
2501 _IMP_core.XYZRGeometry_swigregister(XYZRGeometry)
2502 class XYZRsGeometry(IMP.display.SingletonsGeometry):
2503  r"""Proxy of C++ IMP::core::XYZRsGeometry class."""
2504 
2505  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2506 
2507  def __init__(self, sc):
2508  r"""__init__(XYZRsGeometry self, SingletonContainer sc) -> XYZRsGeometry"""
2509  _IMP_core.XYZRsGeometry_swiginit(self, _IMP_core.new_XYZRsGeometry(sc))
2510 
2511  def get_version_info(self):
2512  r"""get_version_info(XYZRsGeometry self) -> VersionInfo"""
2513  return _IMP_core.XYZRsGeometry_get_version_info(self)
2514  __swig_destroy__ = _IMP_core.delete_XYZRsGeometry
2515 
2516  def __str__(self):
2517  r"""__str__(XYZRsGeometry self) -> std::string"""
2518  return _IMP_core.XYZRsGeometry___str__(self)
2519 
2520  def __repr__(self):
2521  r"""__repr__(XYZRsGeometry self) -> std::string"""
2522  return _IMP_core.XYZRsGeometry___repr__(self)
2523 
2524  @staticmethod
2525  def get_from(o):
2526  return _object_cast_to_XYZRsGeometry(o)
2527 
2528 
2529 # Register XYZRsGeometry in _IMP_core:
2530 _IMP_core.XYZRsGeometry_swigregister(XYZRsGeometry)
2531 class XYZDerivativeGeometry(IMP.display.SingletonGeometry):
2532  r"""Proxy of C++ IMP::core::XYZDerivativeGeometry class."""
2533 
2534  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2535 
2536  def __init__(self, *args):
2537  r"""
2538  __init__(XYZDerivativeGeometry self, Particle p) -> XYZDerivativeGeometry
2539  __init__(XYZDerivativeGeometry self, XYZ d) -> XYZDerivativeGeometry
2540  """
2541  _IMP_core.XYZDerivativeGeometry_swiginit(self, _IMP_core.new_XYZDerivativeGeometry(*args))
2542 
2543  def get_version_info(self):
2544  r"""get_version_info(XYZDerivativeGeometry self) -> VersionInfo"""
2545  return _IMP_core.XYZDerivativeGeometry_get_version_info(self)
2546  __swig_destroy__ = _IMP_core.delete_XYZDerivativeGeometry
2547 
2548  def __str__(self):
2549  r"""__str__(XYZDerivativeGeometry self) -> std::string"""
2550  return _IMP_core.XYZDerivativeGeometry___str__(self)
2551 
2552  def __repr__(self):
2553  r"""__repr__(XYZDerivativeGeometry self) -> std::string"""
2554  return _IMP_core.XYZDerivativeGeometry___repr__(self)
2555 
2556  @staticmethod
2557  def get_from(o):
2558  return _object_cast_to_XYZDerivativeGeometry(o)
2559 
2560 
2561 # Register XYZDerivativeGeometry in _IMP_core:
2562 _IMP_core.XYZDerivativeGeometry_swigregister(XYZDerivativeGeometry)
2563 class XYZDerivativesGeometry(IMP.display.SingletonsGeometry):
2564  r"""Proxy of C++ IMP::core::XYZDerivativesGeometry class."""
2565 
2566  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2567 
2568  def __init__(self, sc):
2569  r"""__init__(XYZDerivativesGeometry self, SingletonContainer sc) -> XYZDerivativesGeometry"""
2570  _IMP_core.XYZDerivativesGeometry_swiginit(self, _IMP_core.new_XYZDerivativesGeometry(sc))
2571 
2572  def get_version_info(self):
2573  r"""get_version_info(XYZDerivativesGeometry self) -> VersionInfo"""
2574  return _IMP_core.XYZDerivativesGeometry_get_version_info(self)
2575  __swig_destroy__ = _IMP_core.delete_XYZDerivativesGeometry
2576 
2577  def __str__(self):
2578  r"""__str__(XYZDerivativesGeometry self) -> std::string"""
2579  return _IMP_core.XYZDerivativesGeometry___str__(self)
2580 
2581  def __repr__(self):
2582  r"""__repr__(XYZDerivativesGeometry self) -> std::string"""
2583  return _IMP_core.XYZDerivativesGeometry___repr__(self)
2584 
2585  @staticmethod
2586  def get_from(o):
2587  return _object_cast_to_XYZDerivativesGeometry(o)
2588 
2589 
2590 # Register XYZDerivativesGeometry in _IMP_core:
2591 _IMP_core.XYZDerivativesGeometry_swigregister(XYZDerivativesGeometry)
2592 class EdgePairGeometry(IMP.display.PairGeometry):
2593  r"""Proxy of C++ IMP::core::EdgePairGeometry class."""
2594 
2595  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2596 
2597  def __init__(self, pp):
2598  r"""__init__(EdgePairGeometry self, IMP::ParticlePair const & pp) -> EdgePairGeometry"""
2599  _IMP_core.EdgePairGeometry_swiginit(self, _IMP_core.new_EdgePairGeometry(pp))
2600 
2601  def get_version_info(self):
2602  r"""get_version_info(EdgePairGeometry self) -> VersionInfo"""
2603  return _IMP_core.EdgePairGeometry_get_version_info(self)
2604  __swig_destroy__ = _IMP_core.delete_EdgePairGeometry
2605 
2606  def __str__(self):
2607  r"""__str__(EdgePairGeometry self) -> std::string"""
2608  return _IMP_core.EdgePairGeometry___str__(self)
2609 
2610  def __repr__(self):
2611  r"""__repr__(EdgePairGeometry self) -> std::string"""
2612  return _IMP_core.EdgePairGeometry___repr__(self)
2613 
2614  @staticmethod
2615  def get_from(o):
2616  return _object_cast_to_EdgePairGeometry(o)
2617 
2618 
2619 # Register EdgePairGeometry in _IMP_core:
2620 _IMP_core.EdgePairGeometry_swigregister(EdgePairGeometry)
2621 class EdgePairsGeometry(IMP.display.PairsGeometry):
2622  r"""Proxy of C++ IMP::core::EdgePairsGeometry class."""
2623 
2624  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2625 
2626  def __init__(self, sc):
2627  r"""__init__(EdgePairsGeometry self, PairContainer sc) -> EdgePairsGeometry"""
2628  _IMP_core.EdgePairsGeometry_swiginit(self, _IMP_core.new_EdgePairsGeometry(sc))
2629 
2630  def get_version_info(self):
2631  r"""get_version_info(EdgePairsGeometry self) -> VersionInfo"""
2632  return _IMP_core.EdgePairsGeometry_get_version_info(self)
2633  __swig_destroy__ = _IMP_core.delete_EdgePairsGeometry
2634 
2635  def __str__(self):
2636  r"""__str__(EdgePairsGeometry self) -> std::string"""
2637  return _IMP_core.EdgePairsGeometry___str__(self)
2638 
2639  def __repr__(self):
2640  r"""__repr__(EdgePairsGeometry self) -> std::string"""
2641  return _IMP_core.EdgePairsGeometry___repr__(self)
2642 
2643  @staticmethod
2644  def get_from(o):
2645  return _object_cast_to_EdgePairsGeometry(o)
2646 
2647 
2648 # Register EdgePairsGeometry in _IMP_core:
2649 _IMP_core.EdgePairsGeometry_swigregister(EdgePairsGeometry)
2650 class Direction(IMP.Decorator):
2651  r"""Proxy of C++ IMP::core::Direction class."""
2652 
2653  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2654 
2655  @staticmethod
2656  def do_setup_particle(m, pi, v):
2657  r"""do_setup_particle(Model m, ParticleIndex pi, Vector3D v)"""
2658  return _IMP_core.Direction_do_setup_particle(m, pi, v)
2659 
2660  def __init__(self, *args):
2661  r"""
2662  __init__(Direction self) -> Direction
2663  __init__(Direction self, Model m, ParticleIndex id) -> Direction
2664  __init__(Direction self, _ParticleAdaptor d) -> Direction
2665  """
2666  _IMP_core.Direction_swiginit(self, _IMP_core.new_Direction(*args))
2667 
2668  def show(self, *args):
2669  r"""show(Direction self, _ostream out=std::cout)"""
2670  return _IMP_core.Direction_show(self, *args)
2671 
2672  @staticmethod
2673  def setup_particle(*args):
2674  r"""
2675  setup_particle(Model m, ParticleIndex pi, Vector3D v) -> Direction
2676  setup_particle(_ParticleAdaptor pa, Vector3D v) -> Direction
2677  """
2678  return _IMP_core.Direction_setup_particle(*args)
2679 
2680  @staticmethod
2681  def get_is_setup(*args):
2682  r"""
2683  get_is_setup(_ParticleAdaptor p) -> bool
2684  get_is_setup(Model m, ParticleIndex pi) -> bool
2685  """
2686  return _IMP_core.Direction_get_is_setup(*args)
2687 
2688  @staticmethod
2689  def get_direction_key(i):
2690  r"""get_direction_key(unsigned int i) -> FloatKey"""
2691  return _IMP_core.Direction_get_direction_key(i)
2692 
2693  def get_direction_derivative(self, i):
2694  r"""get_direction_derivative(Direction self, int i) -> IMP::Float"""
2695  return _IMP_core.Direction_get_direction_derivative(self, i)
2696 
2697  def get_direction_derivatives(self):
2698  r"""get_direction_derivatives(Direction self) -> Vector3D"""
2699  return _IMP_core.Direction_get_direction_derivatives(self)
2700 
2701  def add_to_direction_derivative(self, i, v, d):
2702  r"""add_to_direction_derivative(Direction self, int i, IMP::Float v, DerivativeAccumulator d)"""
2703  return _IMP_core.Direction_add_to_direction_derivative(self, i, v, d)
2704 
2705  def add_to_direction_derivatives(self, v, d):
2706  r"""add_to_direction_derivatives(Direction self, Vector3D v, DerivativeAccumulator d)"""
2707  return _IMP_core.Direction_add_to_direction_derivatives(self, v, d)
2708 
2709  def get_direction_is_optimized(self):
2710  r"""get_direction_is_optimized(Direction self) -> bool"""
2711  return _IMP_core.Direction_get_direction_is_optimized(self)
2712 
2713  def set_direction_is_optimized(self, tf):
2714  r"""set_direction_is_optimized(Direction self, bool tf)"""
2715  return _IMP_core.Direction_set_direction_is_optimized(self, tf)
2716 
2717  def get_direction(self):
2718  r"""get_direction(Direction self) -> Vector3D"""
2719  return _IMP_core.Direction_get_direction(self)
2720 
2721  def set_direction(self, v):
2722  r"""set_direction(Direction self, Vector3D v)"""
2723  return _IMP_core.Direction_set_direction(self, v)
2724 
2725  def reflect(self):
2726  r"""reflect(Direction self)"""
2727  return _IMP_core.Direction_reflect(self)
2728 
2729  def add_attribute(self, *args):
2730  r"""
2731  add_attribute(Direction self, FloatKey k, IMP::Float v, bool opt)
2732  add_attribute(Direction self, FloatKey a0, IMP::Float a1)
2733  add_attribute(Direction self, IntKey a0, IMP::Int a1)
2734  add_attribute(Direction self, FloatsKey a0, IMP::Floats a1)
2735  add_attribute(Direction self, IntsKey a0, IMP::Ints a1)
2736  add_attribute(Direction self, StringKey a0, IMP::String a1)
2737  add_attribute(Direction self, ParticleIndexKey a0, Particle a1)
2738  add_attribute(Direction self, ObjectKey a0, Object a1)
2739  add_attribute(Direction self, SparseFloatKey a0, IMP::Float a1)
2740  add_attribute(Direction self, SparseIntKey a0, IMP::Int a1)
2741  add_attribute(Direction self, SparseStringKey a0, IMP::String a1)
2742  add_attribute(Direction self, SparseParticleIndexKey a0, ParticleIndex a1)
2743  """
2744  return _IMP_core.Direction_add_attribute(self, *args)
2745 
2746  def get_value(self, *args):
2747  r"""
2748  get_value(Direction self, FloatKey a0) -> IMP::Float
2749  get_value(Direction self, IntKey a0) -> IMP::Int
2750  get_value(Direction self, FloatsKey a0) -> IMP::Floats
2751  get_value(Direction self, IntsKey a0) -> IMP::Ints
2752  get_value(Direction self, StringKey a0) -> IMP::String
2753  get_value(Direction self, ParticleIndexKey a0) -> Particle
2754  get_value(Direction self, ObjectKey a0) -> Object
2755  get_value(Direction self, SparseFloatKey a0) -> IMP::Float
2756  get_value(Direction self, SparseIntKey a0) -> IMP::Int
2757  get_value(Direction self, SparseStringKey a0) -> IMP::String
2758  get_value(Direction self, SparseParticleIndexKey a0) -> ParticleIndex
2759  """
2760  return _IMP_core.Direction_get_value(self, *args)
2761 
2762  def set_value(self, *args):
2763  r"""
2764  set_value(Direction self, FloatKey a0, IMP::Float a1)
2765  set_value(Direction self, IntKey a0, IMP::Int a1)
2766  set_value(Direction self, FloatsKey a0, IMP::Floats a1)
2767  set_value(Direction self, IntsKey a0, IMP::Ints a1)
2768  set_value(Direction self, StringKey a0, IMP::String a1)
2769  set_value(Direction self, ParticleIndexKey a0, Particle a1)
2770  set_value(Direction self, ObjectKey a0, Object a1)
2771  set_value(Direction self, SparseFloatKey a0, IMP::Float a1)
2772  set_value(Direction self, SparseIntKey a0, IMP::Int a1)
2773  set_value(Direction self, SparseStringKey a0, IMP::String a1)
2774  set_value(Direction self, SparseParticleIndexKey a0, ParticleIndex a1)
2775  """
2776  return _IMP_core.Direction_set_value(self, *args)
2777 
2778  def remove_attribute(self, *args):
2779  r"""
2780  remove_attribute(Direction self, FloatKey a0)
2781  remove_attribute(Direction self, IntKey a0)
2782  remove_attribute(Direction self, FloatsKey a0)
2783  remove_attribute(Direction self, IntsKey a0)
2784  remove_attribute(Direction self, StringKey a0)
2785  remove_attribute(Direction self, ParticleIndexKey a0)
2786  remove_attribute(Direction self, ObjectKey a0)
2787  remove_attribute(Direction self, SparseFloatKey a0)
2788  remove_attribute(Direction self, SparseIntKey a0)
2789  remove_attribute(Direction self, SparseStringKey a0)
2790  remove_attribute(Direction self, SparseParticleIndexKey a0)
2791  """
2792  return _IMP_core.Direction_remove_attribute(self, *args)
2793 
2794  def has_attribute(self, *args):
2795  r"""
2796  has_attribute(Direction self, FloatKey a0) -> bool
2797  has_attribute(Direction self, IntKey a0) -> bool
2798  has_attribute(Direction self, FloatsKey a0) -> bool
2799  has_attribute(Direction self, IntsKey a0) -> bool
2800  has_attribute(Direction self, StringKey a0) -> bool
2801  has_attribute(Direction self, ParticleIndexKey a0) -> bool
2802  has_attribute(Direction self, ObjectKey a0) -> bool
2803  has_attribute(Direction self, SparseFloatKey a0) -> bool
2804  has_attribute(Direction self, SparseIntKey a0) -> bool
2805  has_attribute(Direction self, SparseStringKey a0) -> bool
2806  has_attribute(Direction self, SparseParticleIndexKey a0) -> bool
2807  """
2808  return _IMP_core.Direction_has_attribute(self, *args)
2809 
2810  def get_derivative(self, a0):
2811  r"""get_derivative(Direction self, FloatKey a0) -> double"""
2812  return _IMP_core.Direction_get_derivative(self, a0)
2813 
2814  def get_name(self):
2815  r"""get_name(Direction self) -> std::string"""
2816  return _IMP_core.Direction_get_name(self)
2817 
2818  def clear_caches(self):
2819  r"""clear_caches(Direction self)"""
2820  return _IMP_core.Direction_clear_caches(self)
2821 
2822  def set_name(self, a0):
2823  r"""set_name(Direction self, std::string a0)"""
2824  return _IMP_core.Direction_set_name(self, a0)
2825 
2826  def set_check_level(self, a0):
2827  r"""set_check_level(Direction self, IMP::CheckLevel a0)"""
2828  return _IMP_core.Direction_set_check_level(self, a0)
2829 
2830  def add_to_derivative(self, a0, a1, a2):
2831  r"""add_to_derivative(Direction self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
2832  return _IMP_core.Direction_add_to_derivative(self, a0, a1, a2)
2833 
2834  def set_is_optimized(self, a0, a1):
2835  r"""set_is_optimized(Direction self, FloatKey a0, bool a1)"""
2836  return _IMP_core.Direction_set_is_optimized(self, a0, a1)
2837 
2838  def get_is_optimized(self, a0):
2839  r"""get_is_optimized(Direction self, FloatKey a0) -> bool"""
2840  return _IMP_core.Direction_get_is_optimized(self, a0)
2841 
2842  def get_check_level(self):
2843  r"""get_check_level(Direction self) -> IMP::CheckLevel"""
2844  return _IMP_core.Direction_get_check_level(self)
2845 
2846  def __eq__(self, *args):
2847  r"""
2848  __eq__(Direction self, Direction o) -> bool
2849  __eq__(Direction self, Particle d) -> bool
2850  """
2851  return _IMP_core.Direction___eq__(self, *args)
2852 
2853  def __ne__(self, *args):
2854  r"""
2855  __ne__(Direction self, Direction o) -> bool
2856  __ne__(Direction self, Particle d) -> bool
2857  """
2858  return _IMP_core.Direction___ne__(self, *args)
2859 
2860  def __le__(self, *args):
2861  r"""
2862  __le__(Direction self, Direction o) -> bool
2863  __le__(Direction self, Particle d) -> bool
2864  """
2865  return _IMP_core.Direction___le__(self, *args)
2866 
2867  def __lt__(self, *args):
2868  r"""
2869  __lt__(Direction self, Direction o) -> bool
2870  __lt__(Direction self, Particle d) -> bool
2871  """
2872  return _IMP_core.Direction___lt__(self, *args)
2873 
2874  def __ge__(self, *args):
2875  r"""
2876  __ge__(Direction self, Direction o) -> bool
2877  __ge__(Direction self, Particle d) -> bool
2878  """
2879  return _IMP_core.Direction___ge__(self, *args)
2880 
2881  def __gt__(self, *args):
2882  r"""
2883  __gt__(Direction self, Direction o) -> bool
2884  __gt__(Direction self, Particle d) -> bool
2885  """
2886  return _IMP_core.Direction___gt__(self, *args)
2887 
2888  def __hash__(self):
2889  r"""__hash__(Direction self) -> std::size_t"""
2890  return _IMP_core.Direction___hash__(self)
2891 
2892  def __str__(self):
2893  r"""__str__(Direction self) -> std::string"""
2894  return _IMP_core.Direction___str__(self)
2895 
2896  def __repr__(self):
2897  r"""__repr__(Direction self) -> std::string"""
2898  return _IMP_core.Direction___repr__(self)
2899 
2900  def _get_as_binary(self):
2901  r"""_get_as_binary(Direction self) -> PyObject *"""
2902  return _IMP_core.Direction__get_as_binary(self)
2903 
2904  def _set_from_binary(self, p):
2905  r"""_set_from_binary(Direction self, PyObject * p)"""
2906  return _IMP_core.Direction__set_from_binary(self, p)
2907 
2908  def __getstate__(self):
2909  p = self._get_as_binary()
2910  if len(self.__dict__) > 1:
2911  d = self.__dict__.copy()
2912  del d['this']
2913  p = (d, p)
2914  return p
2915 
2916  def __setstate__(self, p):
2917  if not hasattr(self, 'this'):
2918  self.__init__()
2919  if isinstance(p, tuple):
2920  d, p = p
2921  self.__dict__.update(d)
2922  return self._set_from_binary(p)
2923 
2924  __swig_destroy__ = _IMP_core.delete_Direction
2925 
2926 # Register Direction in _IMP_core:
2927 _IMP_core.Direction_swigregister(Direction)
2928 
2929 def get_angle(a, b):
2930  r"""get_angle(Direction a, Direction b) -> double"""
2931  return _IMP_core.get_angle(a, b)
2932 class DirectionAngle(IMP.Decorator):
2933  r"""Proxy of C++ IMP::core::DirectionAngle class."""
2934 
2935  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2936 
2937  def __init__(self, *args):
2938  r"""
2939  __init__(DirectionAngle self) -> DirectionAngle
2940  __init__(DirectionAngle self, Model m, ParticleIndex id) -> DirectionAngle
2941  __init__(DirectionAngle self, _ParticleAdaptor d) -> DirectionAngle
2942  """
2943  _IMP_core.DirectionAngle_swiginit(self, _IMP_core.new_DirectionAngle(*args))
2944 
2945  def show(self, *args):
2946  r"""show(DirectionAngle self, _ostream out=std::cout)"""
2947  return _IMP_core.DirectionAngle_show(self, *args)
2948 
2949  @staticmethod
2950  def setup_particle(*args):
2951  r"""
2952  setup_particle(Model m, ParticleIndex pi, IMP::ParticleIndexPair ds) -> DirectionAngle
2953  setup_particle(_ParticleAdaptor pa, IMP::ParticleIndexPair ds) -> DirectionAngle
2954  setup_particle(Model m, ParticleIndex pi, _ParticleIndexAdaptor d0, _ParticleIndexAdaptor d1) -> DirectionAngle
2955  setup_particle(_ParticleAdaptor pa, _ParticleIndexAdaptor d0, _ParticleIndexAdaptor d1) -> DirectionAngle
2956  """
2957  return _IMP_core.DirectionAngle_setup_particle(*args)
2958 
2959  @staticmethod
2960  def get_is_setup(*args):
2961  r"""
2962  get_is_setup(_ParticleAdaptor p) -> bool
2963  get_is_setup(Model m, ParticleIndex pi) -> bool
2964  """
2965  return _IMP_core.DirectionAngle_get_is_setup(*args)
2966 
2967  @staticmethod
2968  def get_angle_key():
2969  r"""get_angle_key() -> FloatKey"""
2970  return _IMP_core.DirectionAngle_get_angle_key()
2971 
2972  @staticmethod
2973  def get_particle_key(i):
2974  r"""get_particle_key(unsigned int i) -> ParticleIndexKey"""
2975  return _IMP_core.DirectionAngle_get_particle_key(i)
2976 
2977  def get_particle(self, *args):
2978  r"""
2979  get_particle(DirectionAngle self, unsigned int i) -> Particle
2980  get_particle(DirectionAngle self) -> Particle
2981  """
2982  return _IMP_core.DirectionAngle_get_particle(self, *args)
2983 
2984  def get_particle_index(self, *args):
2985  r"""
2986  get_particle_index(DirectionAngle self, unsigned int i) -> ParticleIndex
2987  get_particle_index(DirectionAngle self) -> ParticleIndex
2988  """
2989  return _IMP_core.DirectionAngle_get_particle_index(self, *args)
2990 
2991  def get_angle(self):
2992  r"""get_angle(DirectionAngle self) -> IMP::Float"""
2993  return _IMP_core.DirectionAngle_get_angle(self)
2994 
2995  def get_angle_derivative(self):
2996  r"""get_angle_derivative(DirectionAngle self) -> IMP::Float"""
2997  return _IMP_core.DirectionAngle_get_angle_derivative(self)
2998 
2999  def add_to_angle_derivative(self, v, d):
3000  r"""add_to_angle_derivative(DirectionAngle self, IMP::Float v, DerivativeAccumulator d)"""
3001  return _IMP_core.DirectionAngle_add_to_angle_derivative(self, v, d)
3002 
3003  def add_attribute(self, *args):
3004  r"""
3005  add_attribute(DirectionAngle self, FloatKey k, IMP::Float v, bool opt)
3006  add_attribute(DirectionAngle self, FloatKey a0, IMP::Float a1)
3007  add_attribute(DirectionAngle self, IntKey a0, IMP::Int a1)
3008  add_attribute(DirectionAngle self, FloatsKey a0, IMP::Floats a1)
3009  add_attribute(DirectionAngle self, IntsKey a0, IMP::Ints a1)
3010  add_attribute(DirectionAngle self, StringKey a0, IMP::String a1)
3011  add_attribute(DirectionAngle self, ParticleIndexKey a0, Particle a1)
3012  add_attribute(DirectionAngle self, ObjectKey a0, Object a1)
3013  add_attribute(DirectionAngle self, SparseFloatKey a0, IMP::Float a1)
3014  add_attribute(DirectionAngle self, SparseIntKey a0, IMP::Int a1)
3015  add_attribute(DirectionAngle self, SparseStringKey a0, IMP::String a1)
3016  add_attribute(DirectionAngle self, SparseParticleIndexKey a0, ParticleIndex a1)
3017  """
3018  return _IMP_core.DirectionAngle_add_attribute(self, *args)
3019 
3020  def get_value(self, *args):
3021  r"""
3022  get_value(DirectionAngle self, FloatKey a0) -> IMP::Float
3023  get_value(DirectionAngle self, IntKey a0) -> IMP::Int
3024  get_value(DirectionAngle self, FloatsKey a0) -> IMP::Floats
3025  get_value(DirectionAngle self, IntsKey a0) -> IMP::Ints
3026  get_value(DirectionAngle self, StringKey a0) -> IMP::String
3027  get_value(DirectionAngle self, ParticleIndexKey a0) -> Particle
3028  get_value(DirectionAngle self, ObjectKey a0) -> Object
3029  get_value(DirectionAngle self, SparseFloatKey a0) -> IMP::Float
3030  get_value(DirectionAngle self, SparseIntKey a0) -> IMP::Int
3031  get_value(DirectionAngle self, SparseStringKey a0) -> IMP::String
3032  get_value(DirectionAngle self, SparseParticleIndexKey a0) -> ParticleIndex
3033  """
3034  return _IMP_core.DirectionAngle_get_value(self, *args)
3035 
3036  def set_value(self, *args):
3037  r"""
3038  set_value(DirectionAngle self, FloatKey a0, IMP::Float a1)
3039  set_value(DirectionAngle self, IntKey a0, IMP::Int a1)
3040  set_value(DirectionAngle self, FloatsKey a0, IMP::Floats a1)
3041  set_value(DirectionAngle self, IntsKey a0, IMP::Ints a1)
3042  set_value(DirectionAngle self, StringKey a0, IMP::String a1)
3043  set_value(DirectionAngle self, ParticleIndexKey a0, Particle a1)
3044  set_value(DirectionAngle self, ObjectKey a0, Object a1)
3045  set_value(DirectionAngle self, SparseFloatKey a0, IMP::Float a1)
3046  set_value(DirectionAngle self, SparseIntKey a0, IMP::Int a1)
3047  set_value(DirectionAngle self, SparseStringKey a0, IMP::String a1)
3048  set_value(DirectionAngle self, SparseParticleIndexKey a0, ParticleIndex a1)
3049  """
3050  return _IMP_core.DirectionAngle_set_value(self, *args)
3051 
3052  def remove_attribute(self, *args):
3053  r"""
3054  remove_attribute(DirectionAngle self, FloatKey a0)
3055  remove_attribute(DirectionAngle self, IntKey a0)
3056  remove_attribute(DirectionAngle self, FloatsKey a0)
3057  remove_attribute(DirectionAngle self, IntsKey a0)
3058  remove_attribute(DirectionAngle self, StringKey a0)
3059  remove_attribute(DirectionAngle self, ParticleIndexKey a0)
3060  remove_attribute(DirectionAngle self, ObjectKey a0)
3061  remove_attribute(DirectionAngle self, SparseFloatKey a0)
3062  remove_attribute(DirectionAngle self, SparseIntKey a0)
3063  remove_attribute(DirectionAngle self, SparseStringKey a0)
3064  remove_attribute(DirectionAngle self, SparseParticleIndexKey a0)
3065  """
3066  return _IMP_core.DirectionAngle_remove_attribute(self, *args)
3067 
3068  def has_attribute(self, *args):
3069  r"""
3070  has_attribute(DirectionAngle self, FloatKey a0) -> bool
3071  has_attribute(DirectionAngle self, IntKey a0) -> bool
3072  has_attribute(DirectionAngle self, FloatsKey a0) -> bool
3073  has_attribute(DirectionAngle self, IntsKey a0) -> bool
3074  has_attribute(DirectionAngle self, StringKey a0) -> bool
3075  has_attribute(DirectionAngle self, ParticleIndexKey a0) -> bool
3076  has_attribute(DirectionAngle self, ObjectKey a0) -> bool
3077  has_attribute(DirectionAngle self, SparseFloatKey a0) -> bool
3078  has_attribute(DirectionAngle self, SparseIntKey a0) -> bool
3079  has_attribute(DirectionAngle self, SparseStringKey a0) -> bool
3080  has_attribute(DirectionAngle self, SparseParticleIndexKey a0) -> bool
3081  """
3082  return _IMP_core.DirectionAngle_has_attribute(self, *args)
3083 
3084  def get_derivative(self, a0):
3085  r"""get_derivative(DirectionAngle self, FloatKey a0) -> double"""
3086  return _IMP_core.DirectionAngle_get_derivative(self, a0)
3087 
3088  def get_name(self):
3089  r"""get_name(DirectionAngle self) -> std::string"""
3090  return _IMP_core.DirectionAngle_get_name(self)
3091 
3092  def clear_caches(self):
3093  r"""clear_caches(DirectionAngle self)"""
3094  return _IMP_core.DirectionAngle_clear_caches(self)
3095 
3096  def set_name(self, a0):
3097  r"""set_name(DirectionAngle self, std::string a0)"""
3098  return _IMP_core.DirectionAngle_set_name(self, a0)
3099 
3100  def set_check_level(self, a0):
3101  r"""set_check_level(DirectionAngle self, IMP::CheckLevel a0)"""
3102  return _IMP_core.DirectionAngle_set_check_level(self, a0)
3103 
3104  def add_to_derivative(self, a0, a1, a2):
3105  r"""add_to_derivative(DirectionAngle self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
3106  return _IMP_core.DirectionAngle_add_to_derivative(self, a0, a1, a2)
3107 
3108  def set_is_optimized(self, a0, a1):
3109  r"""set_is_optimized(DirectionAngle self, FloatKey a0, bool a1)"""
3110  return _IMP_core.DirectionAngle_set_is_optimized(self, a0, a1)
3111 
3112  def get_is_optimized(self, a0):
3113  r"""get_is_optimized(DirectionAngle self, FloatKey a0) -> bool"""
3114  return _IMP_core.DirectionAngle_get_is_optimized(self, a0)
3115 
3116  def get_check_level(self):
3117  r"""get_check_level(DirectionAngle self) -> IMP::CheckLevel"""
3118  return _IMP_core.DirectionAngle_get_check_level(self)
3119 
3120  def __eq__(self, *args):
3121  r"""
3122  __eq__(DirectionAngle self, DirectionAngle o) -> bool
3123  __eq__(DirectionAngle self, Particle d) -> bool
3124  """
3125  return _IMP_core.DirectionAngle___eq__(self, *args)
3126 
3127  def __ne__(self, *args):
3128  r"""
3129  __ne__(DirectionAngle self, DirectionAngle o) -> bool
3130  __ne__(DirectionAngle self, Particle d) -> bool
3131  """
3132  return _IMP_core.DirectionAngle___ne__(self, *args)
3133 
3134  def __le__(self, *args):
3135  r"""
3136  __le__(DirectionAngle self, DirectionAngle o) -> bool
3137  __le__(DirectionAngle self, Particle d) -> bool
3138  """
3139  return _IMP_core.DirectionAngle___le__(self, *args)
3140 
3141  def __lt__(self, *args):
3142  r"""
3143  __lt__(DirectionAngle self, DirectionAngle o) -> bool
3144  __lt__(DirectionAngle self, Particle d) -> bool
3145  """
3146  return _IMP_core.DirectionAngle___lt__(self, *args)
3147 
3148  def __ge__(self, *args):
3149  r"""
3150  __ge__(DirectionAngle self, DirectionAngle o) -> bool
3151  __ge__(DirectionAngle self, Particle d) -> bool
3152  """
3153  return _IMP_core.DirectionAngle___ge__(self, *args)
3154 
3155  def __gt__(self, *args):
3156  r"""
3157  __gt__(DirectionAngle self, DirectionAngle o) -> bool
3158  __gt__(DirectionAngle self, Particle d) -> bool
3159  """
3160  return _IMP_core.DirectionAngle___gt__(self, *args)
3161 
3162  def __hash__(self):
3163  r"""__hash__(DirectionAngle self) -> std::size_t"""
3164  return _IMP_core.DirectionAngle___hash__(self)
3165 
3166  def __str__(self):
3167  r"""__str__(DirectionAngle self) -> std::string"""
3168  return _IMP_core.DirectionAngle___str__(self)
3169 
3170  def __repr__(self):
3171  r"""__repr__(DirectionAngle self) -> std::string"""
3172  return _IMP_core.DirectionAngle___repr__(self)
3173 
3174  def _get_as_binary(self):
3175  r"""_get_as_binary(DirectionAngle self) -> PyObject *"""
3176  return _IMP_core.DirectionAngle__get_as_binary(self)
3177 
3178  def _set_from_binary(self, p):
3179  r"""_set_from_binary(DirectionAngle self, PyObject * p)"""
3180  return _IMP_core.DirectionAngle__set_from_binary(self, p)
3181 
3182  def __getstate__(self):
3183  p = self._get_as_binary()
3184  if len(self.__dict__) > 1:
3185  d = self.__dict__.copy()
3186  del d['this']
3187  p = (d, p)
3188  return p
3189 
3190  def __setstate__(self, p):
3191  if not hasattr(self, 'this'):
3192  self.__init__()
3193  if isinstance(p, tuple):
3194  d, p = p
3195  self.__dict__.update(d)
3196  return self._set_from_binary(p)
3197 
3198  __swig_destroy__ = _IMP_core.delete_DirectionAngle
3199 
3200 # Register DirectionAngle in _IMP_core:
3201 _IMP_core.DirectionAngle_swigregister(DirectionAngle)
3202 class Surface(XYZ):
3203  r"""Proxy of C++ IMP::core::Surface class."""
3204 
3205  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3206 
3207  @staticmethod
3208  def do_setup_particle(*args):
3209  r"""
3210  do_setup_particle(Model m, ParticleIndex pi, Vector3D center=IMP::algebra::Vector3D(0, 0, 0), Vector3D normal=IMP::algebra::Vector3D(0, 0, 1))
3211  do_setup_particle(Model m, ParticleIndex pi, ReferenceFrame3D rf)
3212  """
3213  return _IMP_core.Surface_do_setup_particle(*args)
3214 
3215  def __init__(self, *args):
3216  r"""
3217  __init__(Surface self) -> Surface
3218  __init__(Surface self, Model m, ParticleIndex id) -> Surface
3219  __init__(Surface self, _ParticleAdaptor d) -> Surface
3220  """
3221  _IMP_core.Surface_swiginit(self, _IMP_core.new_Surface(*args))
3222 
3223  def show(self, *args):
3224  r"""show(Surface self, _ostream out=std::cout)"""
3225  return _IMP_core.Surface_show(self, *args)
3226 
3227  @staticmethod
3228  def setup_particle(*args):
3229  r"""
3230  setup_particle(Model m, ParticleIndex pi) -> Surface
3231  setup_particle(_ParticleAdaptor pa) -> Surface
3232  setup_particle(Model m, ParticleIndex pi, ReferenceFrame3D rf) -> Surface
3233  setup_particle(_ParticleAdaptor pa, ReferenceFrame3D rf) -> Surface
3234  setup_particle(Model m, ParticleIndex pi, Vector3D center) -> Surface
3235  setup_particle(_ParticleAdaptor pa, Vector3D center) -> Surface
3236  setup_particle(Model m, ParticleIndex pi, Vector3D center, Vector3D normal) -> Surface
3237  setup_particle(_ParticleAdaptor pa, Vector3D center, Vector3D normal) -> Surface
3238  """
3239  return _IMP_core.Surface_setup_particle(*args)
3240 
3241  def get_normal_x(self):
3242  r"""get_normal_x(Surface self) -> IMP::Float"""
3243  return _IMP_core.Surface_get_normal_x(self)
3244 
3245  def set_normal_x(self, t):
3246  r"""set_normal_x(Surface self, IMP::Float t)"""
3247  return _IMP_core.Surface_set_normal_x(self, t)
3248 
3249  def get_normal_y(self):
3250  r"""get_normal_y(Surface self) -> IMP::Float"""
3251  return _IMP_core.Surface_get_normal_y(self)
3252 
3253  def set_normal_y(self, t):
3254  r"""set_normal_y(Surface self, IMP::Float t)"""
3255  return _IMP_core.Surface_set_normal_y(self, t)
3256 
3257  def get_normal_z(self):
3258  r"""get_normal_z(Surface self) -> IMP::Float"""
3259  return _IMP_core.Surface_get_normal_z(self)
3260 
3261  def set_normal_z(self, t):
3262  r"""set_normal_z(Surface self, IMP::Float t)"""
3263  return _IMP_core.Surface_set_normal_z(self, t)
3264 
3265  @staticmethod
3266  def get_is_setup(*args):
3267  r"""
3268  get_is_setup(_ParticleAdaptor p) -> bool
3269  get_is_setup(Model m, ParticleIndex pi) -> bool
3270  """
3271  return _IMP_core.Surface_get_is_setup(*args)
3272 
3273  @staticmethod
3274  def get_normal_key(i):
3275  r"""get_normal_key(unsigned int i) -> FloatKey"""
3276  return _IMP_core.Surface_get_normal_key(i)
3277 
3278  def get_normal_derivative(self, i):
3279  r"""get_normal_derivative(Surface self, int i) -> IMP::Float"""
3280  return _IMP_core.Surface_get_normal_derivative(self, i)
3281 
3282  def get_normal_derivatives(self):
3283  r"""get_normal_derivatives(Surface self) -> Vector3D"""
3284  return _IMP_core.Surface_get_normal_derivatives(self)
3285 
3286  def add_to_normal_derivative(self, i, v, d):
3287  r"""add_to_normal_derivative(Surface self, int i, IMP::Float v, DerivativeAccumulator d)"""
3288  return _IMP_core.Surface_add_to_normal_derivative(self, i, v, d)
3289 
3290  def add_to_normal_derivatives(self, v, d):
3291  r"""add_to_normal_derivatives(Surface self, Vector3D v, DerivativeAccumulator d)"""
3292  return _IMP_core.Surface_add_to_normal_derivatives(self, v, d)
3293 
3294  def get_normal_is_optimized(self):
3295  r"""get_normal_is_optimized(Surface self) -> bool"""
3296  return _IMP_core.Surface_get_normal_is_optimized(self)
3297 
3298  def set_normal_is_optimized(self, tf):
3299  r"""set_normal_is_optimized(Surface self, bool tf)"""
3300  return _IMP_core.Surface_set_normal_is_optimized(self, tf)
3301 
3302  def get_normal(self):
3303  r"""get_normal(Surface self) -> Vector3D"""
3304  return _IMP_core.Surface_get_normal(self)
3305 
3306  def set_normal(self, normal):
3307  r"""set_normal(Surface self, Vector3D normal)"""
3308  return _IMP_core.Surface_set_normal(self, normal)
3309 
3310  def reflect(self):
3311  r"""reflect(Surface self)"""
3312  return _IMP_core.Surface_reflect(self)
3313 
3314  def get_height(self, v):
3315  r"""get_height(Surface self, Vector3D v) -> double"""
3316  return _IMP_core.Surface_get_height(self, v)
3317 
3318  def get_depth(self, v):
3319  r"""get_depth(Surface self, Vector3D v) -> double"""
3320  return _IMP_core.Surface_get_depth(self, v)
3321 
3322  def get_distance_to(self, v):
3323  r"""get_distance_to(Surface self, Vector3D v) -> double"""
3324  return _IMP_core.Surface_get_distance_to(self, v)
3325 
3326  def get_distance_to_center(self, v):
3327  r"""get_distance_to_center(Surface self, Vector3D v) -> double"""
3328  return _IMP_core.Surface_get_distance_to_center(self, v)
3329 
3330  def set_reference_frame(self, rf):
3331  r"""set_reference_frame(Surface self, ReferenceFrame3D rf)"""
3332  return _IMP_core.Surface_set_reference_frame(self, rf)
3333 
3334  def get_reference_frame(self):
3335  r"""get_reference_frame(Surface self) -> ReferenceFrame3D"""
3336  return _IMP_core.Surface_get_reference_frame(self)
3337 
3338  def get_plane(self):
3339  r"""get_plane(Surface self) -> Plane3D"""
3340  return _IMP_core.Surface_get_plane(self)
3341 
3342  def add_attribute(self, *args):
3343  r"""
3344  add_attribute(Surface self, FloatKey k, IMP::Float v, bool opt)
3345  add_attribute(Surface self, FloatKey a0, IMP::Float a1)
3346  add_attribute(Surface self, IntKey a0, IMP::Int a1)
3347  add_attribute(Surface self, FloatsKey a0, IMP::Floats a1)
3348  add_attribute(Surface self, IntsKey a0, IMP::Ints a1)
3349  add_attribute(Surface self, StringKey a0, IMP::String a1)
3350  add_attribute(Surface self, ParticleIndexKey a0, Particle a1)
3351  add_attribute(Surface self, ObjectKey a0, Object a1)
3352  add_attribute(Surface self, SparseFloatKey a0, IMP::Float a1)
3353  add_attribute(Surface self, SparseIntKey a0, IMP::Int a1)
3354  add_attribute(Surface self, SparseStringKey a0, IMP::String a1)
3355  add_attribute(Surface self, SparseParticleIndexKey a0, ParticleIndex a1)
3356  """
3357  return _IMP_core.Surface_add_attribute(self, *args)
3358 
3359  def get_value(self, *args):
3360  r"""
3361  get_value(Surface self, FloatKey a0) -> IMP::Float
3362  get_value(Surface self, IntKey a0) -> IMP::Int
3363  get_value(Surface self, FloatsKey a0) -> IMP::Floats
3364  get_value(Surface self, IntsKey a0) -> IMP::Ints
3365  get_value(Surface self, StringKey a0) -> IMP::String
3366  get_value(Surface self, ParticleIndexKey a0) -> Particle
3367  get_value(Surface self, ObjectKey a0) -> Object
3368  get_value(Surface self, SparseFloatKey a0) -> IMP::Float
3369  get_value(Surface self, SparseIntKey a0) -> IMP::Int
3370  get_value(Surface self, SparseStringKey a0) -> IMP::String
3371  get_value(Surface self, SparseParticleIndexKey a0) -> ParticleIndex
3372  """
3373  return _IMP_core.Surface_get_value(self, *args)
3374 
3375  def set_value(self, *args):
3376  r"""
3377  set_value(Surface self, FloatKey a0, IMP::Float a1)
3378  set_value(Surface self, IntKey a0, IMP::Int a1)
3379  set_value(Surface self, FloatsKey a0, IMP::Floats a1)
3380  set_value(Surface self, IntsKey a0, IMP::Ints a1)
3381  set_value(Surface self, StringKey a0, IMP::String a1)
3382  set_value(Surface self, ParticleIndexKey a0, Particle a1)
3383  set_value(Surface self, ObjectKey a0, Object a1)
3384  set_value(Surface self, SparseFloatKey a0, IMP::Float a1)
3385  set_value(Surface self, SparseIntKey a0, IMP::Int a1)
3386  set_value(Surface self, SparseStringKey a0, IMP::String a1)
3387  set_value(Surface self, SparseParticleIndexKey a0, ParticleIndex a1)
3388  """
3389  return _IMP_core.Surface_set_value(self, *args)
3390 
3391  def remove_attribute(self, *args):
3392  r"""
3393  remove_attribute(Surface self, FloatKey a0)
3394  remove_attribute(Surface self, IntKey a0)
3395  remove_attribute(Surface self, FloatsKey a0)
3396  remove_attribute(Surface self, IntsKey a0)
3397  remove_attribute(Surface self, StringKey a0)
3398  remove_attribute(Surface self, ParticleIndexKey a0)
3399  remove_attribute(Surface self, ObjectKey a0)
3400  remove_attribute(Surface self, SparseFloatKey a0)
3401  remove_attribute(Surface self, SparseIntKey a0)
3402  remove_attribute(Surface self, SparseStringKey a0)
3403  remove_attribute(Surface self, SparseParticleIndexKey a0)
3404  """
3405  return _IMP_core.Surface_remove_attribute(self, *args)
3406 
3407  def has_attribute(self, *args):
3408  r"""
3409  has_attribute(Surface self, FloatKey a0) -> bool
3410  has_attribute(Surface self, IntKey a0) -> bool
3411  has_attribute(Surface self, FloatsKey a0) -> bool
3412  has_attribute(Surface self, IntsKey a0) -> bool
3413  has_attribute(Surface self, StringKey a0) -> bool
3414  has_attribute(Surface self, ParticleIndexKey a0) -> bool
3415  has_attribute(Surface self, ObjectKey a0) -> bool
3416  has_attribute(Surface self, SparseFloatKey a0) -> bool
3417  has_attribute(Surface self, SparseIntKey a0) -> bool
3418  has_attribute(Surface self, SparseStringKey a0) -> bool
3419  has_attribute(Surface self, SparseParticleIndexKey a0) -> bool
3420  """
3421  return _IMP_core.Surface_has_attribute(self, *args)
3422 
3423  def get_derivative(self, a0):
3424  r"""get_derivative(Surface self, FloatKey a0) -> double"""
3425  return _IMP_core.Surface_get_derivative(self, a0)
3426 
3427  def get_name(self):
3428  r"""get_name(Surface self) -> std::string"""
3429  return _IMP_core.Surface_get_name(self)
3430 
3431  def clear_caches(self):
3432  r"""clear_caches(Surface self)"""
3433  return _IMP_core.Surface_clear_caches(self)
3434 
3435  def set_name(self, a0):
3436  r"""set_name(Surface self, std::string a0)"""
3437  return _IMP_core.Surface_set_name(self, a0)
3438 
3439  def set_check_level(self, a0):
3440  r"""set_check_level(Surface self, IMP::CheckLevel a0)"""
3441  return _IMP_core.Surface_set_check_level(self, a0)
3442 
3443  def add_to_derivative(self, a0, a1, a2):
3444  r"""add_to_derivative(Surface self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
3445  return _IMP_core.Surface_add_to_derivative(self, a0, a1, a2)
3446 
3447  def set_is_optimized(self, a0, a1):
3448  r"""set_is_optimized(Surface self, FloatKey a0, bool a1)"""
3449  return _IMP_core.Surface_set_is_optimized(self, a0, a1)
3450 
3451  def get_is_optimized(self, a0):
3452  r"""get_is_optimized(Surface self, FloatKey a0) -> bool"""
3453  return _IMP_core.Surface_get_is_optimized(self, a0)
3454 
3455  def get_check_level(self):
3456  r"""get_check_level(Surface self) -> IMP::CheckLevel"""
3457  return _IMP_core.Surface_get_check_level(self)
3458 
3459  def __eq__(self, *args):
3460  r"""
3461  __eq__(Surface self, Surface o) -> bool
3462  __eq__(Surface self, Particle d) -> bool
3463  """
3464  return _IMP_core.Surface___eq__(self, *args)
3465 
3466  def __ne__(self, *args):
3467  r"""
3468  __ne__(Surface self, Surface o) -> bool
3469  __ne__(Surface self, Particle d) -> bool
3470  """
3471  return _IMP_core.Surface___ne__(self, *args)
3472 
3473  def __le__(self, *args):
3474  r"""
3475  __le__(Surface self, Surface o) -> bool
3476  __le__(Surface self, Particle d) -> bool
3477  """
3478  return _IMP_core.Surface___le__(self, *args)
3479 
3480  def __lt__(self, *args):
3481  r"""
3482  __lt__(Surface self, Surface o) -> bool
3483  __lt__(Surface self, Particle d) -> bool
3484  """
3485  return _IMP_core.Surface___lt__(self, *args)
3486 
3487  def __ge__(self, *args):
3488  r"""
3489  __ge__(Surface self, Surface o) -> bool
3490  __ge__(Surface self, Particle d) -> bool
3491  """
3492  return _IMP_core.Surface___ge__(self, *args)
3493 
3494  def __gt__(self, *args):
3495  r"""
3496  __gt__(Surface self, Surface o) -> bool
3497  __gt__(Surface self, Particle d) -> bool
3498  """
3499  return _IMP_core.Surface___gt__(self, *args)
3500 
3501  def __hash__(self):
3502  r"""__hash__(Surface self) -> std::size_t"""
3503  return _IMP_core.Surface___hash__(self)
3504 
3505  def __str__(self):
3506  r"""__str__(Surface self) -> std::string"""
3507  return _IMP_core.Surface___str__(self)
3508 
3509  def __repr__(self):
3510  r"""__repr__(Surface self) -> std::string"""
3511  return _IMP_core.Surface___repr__(self)
3512 
3513  def _get_as_binary(self):
3514  r"""_get_as_binary(Surface self) -> PyObject *"""
3515  return _IMP_core.Surface__get_as_binary(self)
3516 
3517  def _set_from_binary(self, p):
3518  r"""_set_from_binary(Surface self, PyObject * p)"""
3519  return _IMP_core.Surface__set_from_binary(self, p)
3520 
3521  def __getstate__(self):
3522  p = self._get_as_binary()
3523  if len(self.__dict__) > 1:
3524  d = self.__dict__.copy()
3525  del d['this']
3526  p = (d, p)
3527  return p
3528 
3529  def __setstate__(self, p):
3530  if not hasattr(self, 'this'):
3531  self.__init__()
3532  if isinstance(p, tuple):
3533  d, p = p
3534  self.__dict__.update(d)
3535  return self._set_from_binary(p)
3536 
3537  __swig_destroy__ = _IMP_core.delete_Surface
3538 
3539 # Register Surface in _IMP_core:
3540 _IMP_core.Surface_swigregister(Surface)
3541 
3542 def get_height(*args):
3543  r"""
3544  get_height(Surface s, XYZR d) -> double
3545  get_height(Surface s, XYZ d) -> double
3546  """
3547  return _IMP_core.get_height(*args)
3548 
3549 def get_depth(*args):
3550  r"""
3551  get_depth(Surface s, XYZR d) -> double
3552  get_depth(Surface s, XYZ d) -> double
3553  """
3554  return _IMP_core.get_depth(*args)
3555 
3556 def get_distance(*args):
3557  r"""
3558  get_distance(XYZ a, XYZ b) -> double
3559  get_distance(XYZR a, XYZR b) -> double
3560  get_distance(Surface s, XYZR d) -> double
3561  get_distance(Surface s, XYZ d) -> double
3562  """
3563  return _IMP_core.get_distance(*args)
3564 class SurfaceGeometry(IMP.display.Geometry):
3565  r"""Proxy of C++ IMP::core::SurfaceGeometry class."""
3566 
3567  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3568 
3569  def __init__(self, *args):
3570  r"""
3571  __init__(SurfaceGeometry self, std::string n="SurfaceGeometry") -> SurfaceGeometry
3572  __init__(SurfaceGeometry self, Surface s, std::string const n="SurfaceGeometry") -> SurfaceGeometry
3573  __init__(SurfaceGeometry self, Surface s, Color c, std::string n="SurfaceGeometry") -> SurfaceGeometry
3574  """
3575  _IMP_core.SurfaceGeometry_swiginit(self, _IMP_core.new_SurfaceGeometry(*args))
3576 
3577  def get_geometry(self):
3578  r"""get_geometry(SurfaceGeometry self) -> Surface"""
3579  return _IMP_core.SurfaceGeometry_get_geometry(self)
3580 
3581  def set_geometry(self, s):
3582  r"""set_geometry(SurfaceGeometry self, Surface s)"""
3583  return _IMP_core.SurfaceGeometry_set_geometry(self, s)
3584 
3585  def get_version_info(self):
3586  r"""get_version_info(SurfaceGeometry self) -> VersionInfo"""
3587  return _IMP_core.SurfaceGeometry_get_version_info(self)
3588  __swig_destroy__ = _IMP_core.delete_SurfaceGeometry
3589 
3590  def __str__(self):
3591  r"""__str__(SurfaceGeometry self) -> std::string"""
3592  return _IMP_core.SurfaceGeometry___str__(self)
3593 
3594  def __repr__(self):
3595  r"""__repr__(SurfaceGeometry self) -> std::string"""
3596  return _IMP_core.SurfaceGeometry___repr__(self)
3597 
3598  @staticmethod
3599  def get_from(o):
3600  return _object_cast_to_SurfaceGeometry(o)
3601 
3602 
3603 # Register SurfaceGeometry in _IMP_core:
3604 _IMP_core.SurfaceGeometry_swigregister(SurfaceGeometry)
3605 
3606 def create_geometry(*args):
3607  r"""create_geometry(Surface s, std::string name=std::string("SurfaceGeometry%1%")) -> SurfaceGeometry"""
3608  return _IMP_core.create_geometry(*args)
3609 class SurfaceGeometryConstraint(IMP.Constraint):
3610  r"""Proxy of C++ IMP::core::SurfaceGeometryConstraint class."""
3611 
3612  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3613 
3614  def __init__(self, s, g):
3615  r"""__init__(SurfaceGeometryConstraint self, Surface s, SurfaceGeometry g) -> SurfaceGeometryConstraint"""
3616  _IMP_core.SurfaceGeometryConstraint_swiginit(self, _IMP_core.new_SurfaceGeometryConstraint(s, g))
3617 
3618  def get_surface(self):
3619  r"""get_surface(SurfaceGeometryConstraint self) -> Surface"""
3620  return _IMP_core.SurfaceGeometryConstraint_get_surface(self)
3621 
3622  def get_geometry(self):
3623  r"""get_geometry(SurfaceGeometryConstraint self) -> SurfaceGeometry"""
3624  return _IMP_core.SurfaceGeometryConstraint_get_geometry(self)
3625 
3626  def do_get_inputs(self):
3627  r"""do_get_inputs(SurfaceGeometryConstraint self) -> IMP::ModelObjectsTemp"""
3628  return _IMP_core.SurfaceGeometryConstraint_do_get_inputs(self)
3629 
3630  def do_get_outputs(self):
3631  r"""do_get_outputs(SurfaceGeometryConstraint self) -> IMP::ModelObjectsTemp"""
3632  return _IMP_core.SurfaceGeometryConstraint_do_get_outputs(self)
3633 
3634  def get_version_info(self):
3635  r"""get_version_info(SurfaceGeometryConstraint self) -> VersionInfo"""
3636  return _IMP_core.SurfaceGeometryConstraint_get_version_info(self)
3637  __swig_destroy__ = _IMP_core.delete_SurfaceGeometryConstraint
3638 
3639  def __str__(self):
3640  r"""__str__(SurfaceGeometryConstraint self) -> std::string"""
3641  return _IMP_core.SurfaceGeometryConstraint___str__(self)
3642 
3643  def __repr__(self):
3644  r"""__repr__(SurfaceGeometryConstraint self) -> std::string"""
3645  return _IMP_core.SurfaceGeometryConstraint___repr__(self)
3646 
3647  @staticmethod
3648  def get_from(o):
3649  return _object_cast_to_SurfaceGeometryConstraint(o)
3650 
3651 
3652 # Register SurfaceGeometryConstraint in _IMP_core:
3653 _IMP_core.SurfaceGeometryConstraint_swigregister(SurfaceGeometryConstraint)
3654 
3656  r"""get_constrained_surface_geometry(Surface s, std::string name="SurfaceGeometry%1%") -> SurfaceGeometry"""
3657  return _IMP_core.get_constrained_surface_geometry(*args)
3658 class LateralSurfaceConstraint(IMP.Constraint):
3659  r"""Proxy of C++ IMP::core::LateralSurfaceConstraint class."""
3660 
3661  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3662 
3663  def __init__(self, s, d):
3664  r"""__init__(LateralSurfaceConstraint self, Surface s, XYZ d) -> LateralSurfaceConstraint"""
3665  _IMP_core.LateralSurfaceConstraint_swiginit(self, _IMP_core.new_LateralSurfaceConstraint(s, d))
3666 
3667  def do_get_inputs(self):
3668  r"""do_get_inputs(LateralSurfaceConstraint self) -> IMP::ModelObjectsTemp"""
3669  return _IMP_core.LateralSurfaceConstraint_do_get_inputs(self)
3670 
3671  def do_get_outputs(self):
3672  r"""do_get_outputs(LateralSurfaceConstraint self) -> IMP::ModelObjectsTemp"""
3673  return _IMP_core.LateralSurfaceConstraint_do_get_outputs(self)
3674 
3675  def get_version_info(self):
3676  r"""get_version_info(LateralSurfaceConstraint self) -> VersionInfo"""
3677  return _IMP_core.LateralSurfaceConstraint_get_version_info(self)
3678  __swig_destroy__ = _IMP_core.delete_LateralSurfaceConstraint
3679 
3680  def __str__(self):
3681  r"""__str__(LateralSurfaceConstraint self) -> std::string"""
3682  return _IMP_core.LateralSurfaceConstraint___str__(self)
3683 
3684  def __repr__(self):
3685  r"""__repr__(LateralSurfaceConstraint self) -> std::string"""
3686  return _IMP_core.LateralSurfaceConstraint___repr__(self)
3687 
3688  @staticmethod
3689  def get_from(o):
3690  return _object_cast_to_LateralSurfaceConstraint(o)
3691 
3692 
3693 # Register LateralSurfaceConstraint in _IMP_core:
3694 _IMP_core.LateralSurfaceConstraint_swigregister(LateralSurfaceConstraint)
3695 class AngleTripletScore(IMP.TripletScore):
3696  r"""Proxy of C++ IMP::core::AngleTripletScore class."""
3697 
3698  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3699 
3700  def __init__(self, *args):
3701  r"""
3702  __init__(AngleTripletScore self, UnaryFunction f) -> AngleTripletScore
3703  __init__(AngleTripletScore self) -> AngleTripletScore
3704  """
3705  _IMP_core.AngleTripletScore_swiginit(self, _IMP_core.new_AngleTripletScore(*args))
3706 
3707  def do_get_inputs(self, m, pis):
3708  r"""do_get_inputs(AngleTripletScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
3709  return _IMP_core.AngleTripletScore_do_get_inputs(self, m, pis)
3710 
3711  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
3712  r"""evaluate_indexes(AngleTripletScore self, Model m, IMP::ParticleIndexTriplets const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
3713  return _IMP_core.AngleTripletScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
3714 
3715  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
3716  r"""evaluate_indexes_scores(AngleTripletScore self, Model m, IMP::ParticleIndexTriplets 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"""
3717  return _IMP_core.AngleTripletScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
3718 
3719  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
3720  r"""evaluate_indexes_delta(AngleTripletScore self, Model m, IMP::ParticleIndexTriplets 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"""
3721  return _IMP_core.AngleTripletScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
3722 
3723  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
3724  r"""evaluate_if_good_indexes(AngleTripletScore self, Model m, IMP::ParticleIndexTriplets const & p, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
3725  return _IMP_core.AngleTripletScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
3726 
3727  def get_version_info(self):
3728  r"""get_version_info(AngleTripletScore self) -> VersionInfo"""
3729  return _IMP_core.AngleTripletScore_get_version_info(self)
3730  __swig_destroy__ = _IMP_core.delete_AngleTripletScore
3731 
3732  def __str__(self):
3733  r"""__str__(AngleTripletScore self) -> std::string"""
3734  return _IMP_core.AngleTripletScore___str__(self)
3735 
3736  def __repr__(self):
3737  r"""__repr__(AngleTripletScore self) -> std::string"""
3738  return _IMP_core.AngleTripletScore___repr__(self)
3739 
3740  @staticmethod
3741  def get_from(o):
3742  return _object_cast_to_AngleTripletScore(o)
3743 
3744 
3745  def _get_as_binary(self):
3746  r"""_get_as_binary(AngleTripletScore self) -> PyObject *"""
3747  return _IMP_core.AngleTripletScore__get_as_binary(self)
3748 
3749  def _set_from_binary(self, p):
3750  r"""_set_from_binary(AngleTripletScore self, PyObject * p)"""
3751  return _IMP_core.AngleTripletScore__set_from_binary(self, p)
3752 
3753  def __getstate__(self):
3754  p = self._get_as_binary()
3755  if len(self.__dict__) > 1:
3756  d = self.__dict__.copy()
3757  del d['this']
3758  p = (d, p)
3759  return p
3760 
3761  def __setstate__(self, p):
3762  if not hasattr(self, 'this'):
3763  self.__init__()
3764  if isinstance(p, tuple):
3765  d, p = p
3766  self.__dict__.update(d)
3767  return self._set_from_binary(p)
3768 
3769 
3770 # Register AngleTripletScore in _IMP_core:
3771 _IMP_core.AngleTripletScore_swigregister(AngleTripletScore)
3772 class BallMover(MonteCarloMover):
3773  r"""Proxy of C++ IMP::core::BallMover class."""
3774 
3775  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3776 
3777  def __init__(self, *args):
3778  r"""
3779  __init__(BallMover self, Model m, ParticleIndex pi, IMP::FloatKeys const & vars, double radius) -> BallMover
3780  __init__(BallMover self, Model m, ParticleIndex pi, double radius) -> BallMover
3781  __init__(BallMover self, Model m, IMP::ParticleIndexes const & pis, IMP::FloatKeys const & vars, IMP::Float radius) -> BallMover
3782  __init__(BallMover self, Model m, IMP::ParticleIndexes const & pis, IMP::Float radius) -> BallMover
3783  __init__(BallMover self) -> BallMover
3784  """
3785  _IMP_core.BallMover_swiginit(self, _IMP_core.new_BallMover(*args))
3786 
3787  def set_radius(self, radius):
3788  r"""set_radius(BallMover self, IMP::Float radius)"""
3789  return _IMP_core.BallMover_set_radius(self, radius)
3790 
3791  def get_radius(self):
3792  r"""get_radius(BallMover self) -> IMP::Float"""
3793  return _IMP_core.BallMover_get_radius(self)
3794 
3795  def get_indexes(self):
3796  r"""get_indexes(BallMover self) -> IMP::ParticleIndexes"""
3797  return _IMP_core.BallMover_get_indexes(self)
3798 
3799  def get_keys(self):
3800  r"""get_keys(BallMover self) -> IMP::FloatKeys"""
3801  return _IMP_core.BallMover_get_keys(self)
3802 
3803  def get_version_info(self):
3804  r"""get_version_info(BallMover self) -> VersionInfo"""
3805  return _IMP_core.BallMover_get_version_info(self)
3806  __swig_destroy__ = _IMP_core.delete_BallMover
3807 
3808  def __str__(self):
3809  r"""__str__(BallMover self) -> std::string"""
3810  return _IMP_core.BallMover___str__(self)
3811 
3812  def __repr__(self):
3813  r"""__repr__(BallMover self) -> std::string"""
3814  return _IMP_core.BallMover___repr__(self)
3815 
3816  @staticmethod
3817  def get_from(o):
3818  return _object_cast_to_BallMover(o)
3819 
3820 
3821  def _get_as_binary(self):
3822  r"""_get_as_binary(BallMover self) -> PyObject *"""
3823  return _IMP_core.BallMover__get_as_binary(self)
3824 
3825  def _set_from_binary(self, p):
3826  r"""_set_from_binary(BallMover self, PyObject * p)"""
3827  return _IMP_core.BallMover__set_from_binary(self, p)
3828 
3829  def __getstate__(self):
3830  p = self._get_as_binary()
3831  if len(self.__dict__) > 1:
3832  d = self.__dict__.copy()
3833  del d['this']
3834  p = (d, p)
3835  return p
3836 
3837  def __setstate__(self, p):
3838  if not hasattr(self, 'this'):
3839  self.__init__()
3840  if isinstance(p, tuple):
3841  d, p = p
3842  self.__dict__.update(d)
3843  return self._set_from_binary(p)
3844 
3845 
3846  def _get_jax(self):
3847  import jax.random
3848  from IMP.algebra._jax_util import get_random_vector_in_3d_sphere
3849  indexes = self.get_indexes()
3850  keys = frozenset(self.get_keys())
3851  if keys != frozenset(IMP.core.XYZ.get_xyz_keys()):
3852  raise NotImplementedError("Only works for XYZ")
3853  radius = self.get_radius()
3854 
3855  def init_func(key):
3856  return key
3857 
3858  def propose_func(jm, key):
3859  key, subkey = jax.random.split(key)
3860  v = get_random_vector_in_3d_sphere(subkey, radius)
3861  jm['xyz'] = jm['xyz'].at[indexes].add(v)
3862  return jm, key, 1.0
3863  return self._wrap_jax(init_func, propose_func)
3864 
3865 
3866 # Register BallMover in _IMP_core:
3867 _IMP_core.BallMover_swigregister(BallMover)
3868 class SerialMover(MonteCarloMover):
3869  r"""Proxy of C++ IMP::core::SerialMover class."""
3870 
3871  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3872 
3873  def __init__(self, *args):
3874  r"""
3875  __init__(SerialMover self, IMP::core::MonteCarloMoversTemp const & mvs) -> SerialMover
3876  __init__(SerialMover self) -> SerialMover
3877  """
3878  _IMP_core.SerialMover_swiginit(self, _IMP_core.new_SerialMover(*args))
3879 
3880  def get_movers(self):
3881  r"""get_movers(SerialMover self) -> IMP::core::MonteCarloMovers const &"""
3882  return _IMP_core.SerialMover_get_movers(self)
3883 
3884  def get_version_info(self):
3885  r"""get_version_info(SerialMover self) -> VersionInfo"""
3886  return _IMP_core.SerialMover_get_version_info(self)
3887  __swig_destroy__ = _IMP_core.delete_SerialMover
3888 
3889  def __str__(self):
3890  r"""__str__(SerialMover self) -> std::string"""
3891  return _IMP_core.SerialMover___str__(self)
3892 
3893  def __repr__(self):
3894  r"""__repr__(SerialMover self) -> std::string"""
3895  return _IMP_core.SerialMover___repr__(self)
3896 
3897  @staticmethod
3898  def get_from(o):
3899  return _object_cast_to_SerialMover(o)
3900 
3901 
3902  def _get_as_binary(self):
3903  r"""_get_as_binary(SerialMover self) -> PyObject *"""
3904  return _IMP_core.SerialMover__get_as_binary(self)
3905 
3906  def _set_from_binary(self, p):
3907  r"""_set_from_binary(SerialMover self, PyObject * p)"""
3908  return _IMP_core.SerialMover__set_from_binary(self, p)
3909 
3910  def __getstate__(self):
3911  p = self._get_as_binary()
3912  if len(self.__dict__) > 1:
3913  d = self.__dict__.copy()
3914  del d['this']
3915  p = (d, p)
3916  return p
3917 
3918  def __setstate__(self, p):
3919  if not hasattr(self, 'this'):
3920  self.__init__()
3921  if isinstance(p, tuple):
3922  d, p = p
3923  self.__dict__.update(d)
3924  return self._set_from_binary(p)
3925 
3926 
3927  def _get_jax(self):
3928  import jax.random
3929  import jax.lax
3930  import functools
3931  from IMP.core._jax_util import _SerialMover
3932  movers = [m.get_derived_object()._get_jax()
3933  for m in self.get_movers()]
3934 
3935  def sub_propose_func(jm, sms, i):
3936  """Call the propose_func of the ith mover"""
3937  jm, sms.mover_state[i], ratio = movers[i].propose_func(
3938  jm, sms.mover_state[i])
3939  return jm, sms, ratio
3940 
3941  sub_propose_funcs = [functools.partial(sub_propose_func, i=i)
3942  for i in range(len(movers))]
3943 
3944  def init_func(key):
3945  # Initialize all movers and store their state in ours
3946  mover_state = []
3947  for m in movers:
3948  key, subkey = jax.random.split(key)
3949  mover_state.append(m.init_func(subkey))
3950  return _SerialMover(imov=-1, mover_state=mover_state)
3951 
3952  def propose_func(jm, sms):
3953  sms.imov = jax.lax.min(sms.imov + 1, len(movers) - 1)
3954  return jax.lax.switch(sms.imov, sub_propose_funcs, jm, sms)
3955  return self._wrap_jax(init_func, propose_func)
3956 
3957 
3958 # Register SerialMover in _IMP_core:
3959 _IMP_core.SerialMover_swigregister(SerialMover)
3960 class SubsetMover(MonteCarloMover):
3961  r"""Proxy of C++ IMP::core::SubsetMover class."""
3962 
3963  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3964 
3965  def __init__(self, *args):
3966  r"""
3967  __init__(SubsetMover self, IMP::core::MonteCarloMoversTemp const & mvs, unsigned int n) -> SubsetMover
3968  __init__(SubsetMover self) -> SubsetMover
3969  """
3970  _IMP_core.SubsetMover_swiginit(self, _IMP_core.new_SubsetMover(*args))
3971 
3972  def get_movers(self):
3973  r"""get_movers(SubsetMover self) -> IMP::core::MonteCarloMovers const &"""
3974  return _IMP_core.SubsetMover_get_movers(self)
3975 
3976  def get_subset_size(self):
3977  r"""get_subset_size(SubsetMover self) -> unsigned int"""
3978  return _IMP_core.SubsetMover_get_subset_size(self)
3979 
3980  def get_version_info(self):
3981  r"""get_version_info(SubsetMover self) -> VersionInfo"""
3982  return _IMP_core.SubsetMover_get_version_info(self)
3983  __swig_destroy__ = _IMP_core.delete_SubsetMover
3984 
3985  def __str__(self):
3986  r"""__str__(SubsetMover self) -> std::string"""
3987  return _IMP_core.SubsetMover___str__(self)
3988 
3989  def __repr__(self):
3990  r"""__repr__(SubsetMover self) -> std::string"""
3991  return _IMP_core.SubsetMover___repr__(self)
3992 
3993  @staticmethod
3994  def get_from(o):
3995  return _object_cast_to_SubsetMover(o)
3996 
3997 
3998  def _get_as_binary(self):
3999  r"""_get_as_binary(SubsetMover self) -> PyObject *"""
4000  return _IMP_core.SubsetMover__get_as_binary(self)
4001 
4002  def _set_from_binary(self, p):
4003  r"""_set_from_binary(SubsetMover self, PyObject * p)"""
4004  return _IMP_core.SubsetMover__set_from_binary(self, p)
4005 
4006  def __getstate__(self):
4007  p = self._get_as_binary()
4008  if len(self.__dict__) > 1:
4009  d = self.__dict__.copy()
4010  del d['this']
4011  p = (d, p)
4012  return p
4013 
4014  def __setstate__(self, p):
4015  if not hasattr(self, 'this'):
4016  self.__init__()
4017  if isinstance(p, tuple):
4018  d, p = p
4019  self.__dict__.update(d)
4020  return self._set_from_binary(p)
4021 
4022 
4023 # Register SubsetMover in _IMP_core:
4024 _IMP_core.SubsetMover_swigregister(SubsetMover)
4025 class DirectionMover(MonteCarloMover):
4026  r"""Proxy of C++ IMP::core::DirectionMover class."""
4027 
4028  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4029 
4030  def __init__(self, *args):
4031  r"""
4032  __init__(DirectionMover self, Model m, ParticleIndex pi, IMP::Float max_rotation, IMP::Float reflect_probability) -> DirectionMover
4033  __init__(DirectionMover self, Direction d, IMP::Float max_rotation, IMP::Float reflect_probability) -> DirectionMover
4034  __init__(DirectionMover self) -> DirectionMover
4035  """
4036  _IMP_core.DirectionMover_swiginit(self, _IMP_core.new_DirectionMover(*args))
4037 
4038  def set_maximum_rotation(self, mr):
4039  r"""set_maximum_rotation(DirectionMover self, IMP::Float mr)"""
4040  return _IMP_core.DirectionMover_set_maximum_rotation(self, mr)
4041 
4042  def set_reflect_probability(self, rp):
4043  r"""set_reflect_probability(DirectionMover self, IMP::Float rp)"""
4044  return _IMP_core.DirectionMover_set_reflect_probability(self, rp)
4045 
4046  def get_maximum_rotation(self):
4047  r"""get_maximum_rotation(DirectionMover self) -> IMP::Float"""
4048  return _IMP_core.DirectionMover_get_maximum_rotation(self)
4049 
4050  def get_reflect_probability(self):
4051  r"""get_reflect_probability(DirectionMover self) -> IMP::Float"""
4052  return _IMP_core.DirectionMover_get_reflect_probability(self)
4053 
4054  def get_direction(self):
4055  r"""get_direction(DirectionMover self) -> Direction"""
4056  return _IMP_core.DirectionMover_get_direction(self)
4057 
4058  def get_version_info(self):
4059  r"""get_version_info(DirectionMover self) -> VersionInfo"""
4060  return _IMP_core.DirectionMover_get_version_info(self)
4061  __swig_destroy__ = _IMP_core.delete_DirectionMover
4062 
4063  def __str__(self):
4064  r"""__str__(DirectionMover self) -> std::string"""
4065  return _IMP_core.DirectionMover___str__(self)
4066 
4067  def __repr__(self):
4068  r"""__repr__(DirectionMover self) -> std::string"""
4069  return _IMP_core.DirectionMover___repr__(self)
4070 
4071  @staticmethod
4072  def get_from(o):
4073  return _object_cast_to_DirectionMover(o)
4074 
4075 
4076  def _get_as_binary(self):
4077  r"""_get_as_binary(DirectionMover self) -> PyObject *"""
4078  return _IMP_core.DirectionMover__get_as_binary(self)
4079 
4080  def _set_from_binary(self, p):
4081  r"""_set_from_binary(DirectionMover self, PyObject * p)"""
4082  return _IMP_core.DirectionMover__set_from_binary(self, p)
4083 
4084  def __getstate__(self):
4085  p = self._get_as_binary()
4086  if len(self.__dict__) > 1:
4087  d = self.__dict__.copy()
4088  del d['this']
4089  p = (d, p)
4090  return p
4091 
4092  def __setstate__(self, p):
4093  if not hasattr(self, 'this'):
4094  self.__init__()
4095  if isinstance(p, tuple):
4096  d, p = p
4097  self.__dict__.update(d)
4098  return self._set_from_binary(p)
4099 
4100 
4101 # Register DirectionMover in _IMP_core:
4102 _IMP_core.DirectionMover_swigregister(DirectionMover)
4103 class SurfaceMover(MonteCarloMover):
4104  r"""Proxy of C++ IMP::core::SurfaceMover class."""
4105 
4106  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4107 
4108  def __init__(self, *args):
4109  r"""
4110  __init__(SurfaceMover self, Model m, ParticleIndex pi, IMP::Float max_translation, IMP::Float max_rotation, IMP::Float reflect_probability) -> SurfaceMover
4111  __init__(SurfaceMover self, Surface s, IMP::Float max_translation, IMP::Float max_rotation, IMP::Float reflect_probability) -> SurfaceMover
4112  __init__(SurfaceMover self) -> SurfaceMover
4113  """
4114  _IMP_core.SurfaceMover_swiginit(self, _IMP_core.new_SurfaceMover(*args))
4115 
4116  def set_maximum_translation(self, mt):
4117  r"""set_maximum_translation(SurfaceMover self, IMP::Float mt)"""
4118  return _IMP_core.SurfaceMover_set_maximum_translation(self, mt)
4119 
4120  def set_maximum_rotation(self, mr):
4121  r"""set_maximum_rotation(SurfaceMover self, IMP::Float mr)"""
4122  return _IMP_core.SurfaceMover_set_maximum_rotation(self, mr)
4123 
4124  def set_reflect_probability(self, rp):
4125  r"""set_reflect_probability(SurfaceMover self, IMP::Float rp)"""
4126  return _IMP_core.SurfaceMover_set_reflect_probability(self, rp)
4127 
4128  def get_maximum_translation(self):
4129  r"""get_maximum_translation(SurfaceMover self) -> IMP::Float"""
4130  return _IMP_core.SurfaceMover_get_maximum_translation(self)
4131 
4132  def get_maximum_rotation(self):
4133  r"""get_maximum_rotation(SurfaceMover self) -> IMP::Float"""
4134  return _IMP_core.SurfaceMover_get_maximum_rotation(self)
4135 
4136  def get_reflect_probability(self):
4137  r"""get_reflect_probability(SurfaceMover self) -> IMP::Float"""
4138  return _IMP_core.SurfaceMover_get_reflect_probability(self)
4139 
4140  def get_surface(self):
4141  r"""get_surface(SurfaceMover self) -> Surface"""
4142  return _IMP_core.SurfaceMover_get_surface(self)
4143 
4144  def get_version_info(self):
4145  r"""get_version_info(SurfaceMover self) -> VersionInfo"""
4146  return _IMP_core.SurfaceMover_get_version_info(self)
4147  __swig_destroy__ = _IMP_core.delete_SurfaceMover
4148 
4149  def __str__(self):
4150  r"""__str__(SurfaceMover self) -> std::string"""
4151  return _IMP_core.SurfaceMover___str__(self)
4152 
4153  def __repr__(self):
4154  r"""__repr__(SurfaceMover self) -> std::string"""
4155  return _IMP_core.SurfaceMover___repr__(self)
4156 
4157  @staticmethod
4158  def get_from(o):
4159  return _object_cast_to_SurfaceMover(o)
4160 
4161 
4162  def _get_as_binary(self):
4163  r"""_get_as_binary(SurfaceMover self) -> PyObject *"""
4164  return _IMP_core.SurfaceMover__get_as_binary(self)
4165 
4166  def _set_from_binary(self, p):
4167  r"""_set_from_binary(SurfaceMover self, PyObject * p)"""
4168  return _IMP_core.SurfaceMover__set_from_binary(self, p)
4169 
4170  def __getstate__(self):
4171  p = self._get_as_binary()
4172  if len(self.__dict__) > 1:
4173  d = self.__dict__.copy()
4174  del d['this']
4175  p = (d, p)
4176  return p
4177 
4178  def __setstate__(self, p):
4179  if not hasattr(self, 'this'):
4180  self.__init__()
4181  if isinstance(p, tuple):
4182  d, p = p
4183  self.__dict__.update(d)
4184  return self._set_from_binary(p)
4185 
4186 
4187 # Register SurfaceMover in _IMP_core:
4188 _IMP_core.SurfaceMover_swigregister(SurfaceMover)
4189 class BoxSweepClosePairsFinder(ClosePairsFinder):
4190  r"""Proxy of C++ IMP::core::BoxSweepClosePairsFinder class."""
4191 
4192  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4193 
4194  def __init__(self):
4195  r"""__init__(BoxSweepClosePairsFinder self) -> BoxSweepClosePairsFinder"""
4196  _IMP_core.BoxSweepClosePairsFinder_swiginit(self, _IMP_core.new_BoxSweepClosePairsFinder())
4197 
4198  def get_close_pairs(self, *args):
4199  r"""
4200  get_close_pairs(BoxSweepClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
4201  get_close_pairs(BoxSweepClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bas, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
4202  get_close_pairs(BoxSweepClosePairsFinder self, Model m, IMP::ParticleIndexes const & pc) -> IMP::ParticleIndexPairs
4203  get_close_pairs(BoxSweepClosePairsFinder self, Model m, IMP::ParticleIndexes const & pca, IMP::ParticleIndexes const & pcb) -> IMP::ParticleIndexPairs
4204  """
4205  return _IMP_core.BoxSweepClosePairsFinder_get_close_pairs(self, *args)
4206 
4207  def do_get_inputs(self, m, pis):
4208  r"""do_get_inputs(BoxSweepClosePairsFinder self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
4209  return _IMP_core.BoxSweepClosePairsFinder_do_get_inputs(self, m, pis)
4210 
4211  def get_version_info(self):
4212  r"""get_version_info(BoxSweepClosePairsFinder self) -> VersionInfo"""
4213  return _IMP_core.BoxSweepClosePairsFinder_get_version_info(self)
4214  __swig_destroy__ = _IMP_core.delete_BoxSweepClosePairsFinder
4215 
4216  def __str__(self):
4217  r"""__str__(BoxSweepClosePairsFinder self) -> std::string"""
4218  return _IMP_core.BoxSweepClosePairsFinder___str__(self)
4219 
4220  def __repr__(self):
4221  r"""__repr__(BoxSweepClosePairsFinder self) -> std::string"""
4222  return _IMP_core.BoxSweepClosePairsFinder___repr__(self)
4223 
4224  @staticmethod
4225  def get_from(o):
4226  return _object_cast_to_BoxSweepClosePairsFinder(o)
4227 
4228 
4229 # Register BoxSweepClosePairsFinder in _IMP_core:
4230 _IMP_core.BoxSweepClosePairsFinder_swigregister(BoxSweepClosePairsFinder)
4231 class CentroidOfRefined(IMP.SingletonModifier):
4232  r"""Proxy of C++ IMP::core::CentroidOfRefined class."""
4233 
4234  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4235 
4236  def __init__(self, *args):
4237  r"""__init__(CentroidOfRefined self, Refiner r, FloatKey weight=IMP::FloatKey(), IMP::FloatKeys ks=IMP::core::XYZ::get_xyz_keys()) -> CentroidOfRefined"""
4238  _IMP_core.CentroidOfRefined_swiginit(self, _IMP_core.new_CentroidOfRefined(*args))
4239 
4240  def get_refiner(self):
4241  r"""get_refiner(CentroidOfRefined self) -> Refiner"""
4242  return _IMP_core.CentroidOfRefined_get_refiner(self)
4243 
4244  def get_weight(self):
4245  r"""get_weight(CentroidOfRefined self) -> FloatKey"""
4246  return _IMP_core.CentroidOfRefined_get_weight(self)
4247 
4248  def get_keys(self):
4249  r"""get_keys(CentroidOfRefined self) -> IMP::FloatKeys"""
4250  return _IMP_core.CentroidOfRefined_get_keys(self)
4251 
4252  def get_is_weight_null(self):
4253  r"""get_is_weight_null(CentroidOfRefined self) -> bool"""
4254  return _IMP_core.CentroidOfRefined_get_is_weight_null(self)
4255 
4256  def do_get_inputs(self, m, pis):
4257  r"""do_get_inputs(CentroidOfRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
4258  return _IMP_core.CentroidOfRefined_do_get_inputs(self, m, pis)
4259 
4260  def do_get_outputs(self, m, pis):
4261  r"""do_get_outputs(CentroidOfRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
4262  return _IMP_core.CentroidOfRefined_do_get_outputs(self, m, pis)
4263 
4264  def get_version_info(self):
4265  r"""get_version_info(CentroidOfRefined self) -> VersionInfo"""
4266  return _IMP_core.CentroidOfRefined_get_version_info(self)
4267  __swig_destroy__ = _IMP_core.delete_CentroidOfRefined
4268 
4269  def __str__(self):
4270  r"""__str__(CentroidOfRefined self) -> std::string"""
4271  return _IMP_core.CentroidOfRefined___str__(self)
4272 
4273  def __repr__(self):
4274  r"""__repr__(CentroidOfRefined self) -> std::string"""
4275  return _IMP_core.CentroidOfRefined___repr__(self)
4276 
4277  @staticmethod
4278  def get_from(o):
4279  return _object_cast_to_CentroidOfRefined(o)
4280 
4281 
4282  def _get_jax(self, m, index=None):
4283  import functools
4284  import jax.numpy as jnp
4285  if index is None:
4286  raise NotImplementedError("Only implemented for single particle")
4287  refined = self.get_refiner().get_refined_indexes(m, index)
4288 
4289  def apply_func_unweighted(jm, indexes):
4290  xyz = jm['xyz']
4291  jm['xyz'] = xyz.at[indexes].set(jnp.average(xyz[refined], axis=0))
4292  return jm
4293 
4294  def apply_func_weighted(jm, indexes, weight_key):
4295  xyz = jm['xyz']
4296  weights = jm[weight_key][refined]
4297  jm['xyz'] = xyz.at[indexes].set(jnp.average(xyz[refined], axis=0,
4298  weights=weights))
4299  return jm
4300 
4301  keys = frozenset(self.get_keys())
4302  if keys != frozenset(IMP.core.XYZ.get_xyz_keys()):
4303  raise NotImplementedError("Only works for XYZ")
4304 
4305  if self.get_is_weight_null():
4306  return self._wrap_jax(apply_func_unweighted)
4307  else:
4308  weight_key = self.get_weight()
4309  return self._wrap_jax(
4310  functools.partial(apply_func_weighted,
4311  weight_key=weight_key.get_string()),
4312  keys=(weight_key,))
4313 
4314 
4315 # Register CentroidOfRefined in _IMP_core:
4316 _IMP_core.CentroidOfRefined_swigregister(CentroidOfRefined)
4317 class Centroid(XYZ):
4318  r"""Proxy of C++ IMP::core::Centroid class."""
4319 
4320  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4321 
4322  def get_constraint(self):
4323  r"""get_constraint(Centroid self) -> Constraint"""
4324  return _IMP_core.Centroid_get_constraint(self)
4325 
4326  def __init__(self, *args):
4327  r"""
4328  __init__(Centroid self) -> Centroid
4329  __init__(Centroid self, Model m, ParticleIndex id) -> Centroid
4330  __init__(Centroid self, _ParticleAdaptor d) -> Centroid
4331  """
4332  _IMP_core.Centroid_swiginit(self, _IMP_core.new_Centroid(*args))
4333 
4334  def show(self, *args):
4335  r"""show(Centroid self, _ostream out=std::cout)"""
4336  return _IMP_core.Centroid_show(self, *args)
4337 
4338  @staticmethod
4339  def setup_particle(*args):
4340  r"""
4341  setup_particle(Model m, ParticleIndex pi, _ParticleIndexesAdaptor members) -> Centroid
4342  setup_particle(_ParticleAdaptor pa, _ParticleIndexesAdaptor members) -> Centroid
4343  setup_particle(Model m, ParticleIndex pi, Refiner refiner) -> Centroid
4344  setup_particle(_ParticleAdaptor pa, Refiner refiner) -> Centroid
4345  """
4346  return _IMP_core.Centroid_setup_particle(*args)
4347 
4348  @staticmethod
4349  def get_is_setup(*args):
4350  r"""
4351  get_is_setup(_ParticleAdaptor p) -> bool
4352  get_is_setup(Model m, ParticleIndex pi) -> bool
4353  """
4354  return _IMP_core.Centroid_get_is_setup(*args)
4355 
4356  def add_attribute(self, *args):
4357  r"""
4358  add_attribute(Centroid self, FloatKey k, IMP::Float v, bool opt)
4359  add_attribute(Centroid self, FloatKey a0, IMP::Float a1)
4360  add_attribute(Centroid self, IntKey a0, IMP::Int a1)
4361  add_attribute(Centroid self, FloatsKey a0, IMP::Floats a1)
4362  add_attribute(Centroid self, IntsKey a0, IMP::Ints a1)
4363  add_attribute(Centroid self, StringKey a0, IMP::String a1)
4364  add_attribute(Centroid self, ParticleIndexKey a0, Particle a1)
4365  add_attribute(Centroid self, ObjectKey a0, Object a1)
4366  add_attribute(Centroid self, SparseFloatKey a0, IMP::Float a1)
4367  add_attribute(Centroid self, SparseIntKey a0, IMP::Int a1)
4368  add_attribute(Centroid self, SparseStringKey a0, IMP::String a1)
4369  add_attribute(Centroid self, SparseParticleIndexKey a0, ParticleIndex a1)
4370  """
4371  return _IMP_core.Centroid_add_attribute(self, *args)
4372 
4373  def get_value(self, *args):
4374  r"""
4375  get_value(Centroid self, FloatKey a0) -> IMP::Float
4376  get_value(Centroid self, IntKey a0) -> IMP::Int
4377  get_value(Centroid self, FloatsKey a0) -> IMP::Floats
4378  get_value(Centroid self, IntsKey a0) -> IMP::Ints
4379  get_value(Centroid self, StringKey a0) -> IMP::String
4380  get_value(Centroid self, ParticleIndexKey a0) -> Particle
4381  get_value(Centroid self, ObjectKey a0) -> Object
4382  get_value(Centroid self, SparseFloatKey a0) -> IMP::Float
4383  get_value(Centroid self, SparseIntKey a0) -> IMP::Int
4384  get_value(Centroid self, SparseStringKey a0) -> IMP::String
4385  get_value(Centroid self, SparseParticleIndexKey a0) -> ParticleIndex
4386  """
4387  return _IMP_core.Centroid_get_value(self, *args)
4388 
4389  def set_value(self, *args):
4390  r"""
4391  set_value(Centroid self, FloatKey a0, IMP::Float a1)
4392  set_value(Centroid self, IntKey a0, IMP::Int a1)
4393  set_value(Centroid self, FloatsKey a0, IMP::Floats a1)
4394  set_value(Centroid self, IntsKey a0, IMP::Ints a1)
4395  set_value(Centroid self, StringKey a0, IMP::String a1)
4396  set_value(Centroid self, ParticleIndexKey a0, Particle a1)
4397  set_value(Centroid self, ObjectKey a0, Object a1)
4398  set_value(Centroid self, SparseFloatKey a0, IMP::Float a1)
4399  set_value(Centroid self, SparseIntKey a0, IMP::Int a1)
4400  set_value(Centroid self, SparseStringKey a0, IMP::String a1)
4401  set_value(Centroid self, SparseParticleIndexKey a0, ParticleIndex a1)
4402  """
4403  return _IMP_core.Centroid_set_value(self, *args)
4404 
4405  def remove_attribute(self, *args):
4406  r"""
4407  remove_attribute(Centroid self, FloatKey a0)
4408  remove_attribute(Centroid self, IntKey a0)
4409  remove_attribute(Centroid self, FloatsKey a0)
4410  remove_attribute(Centroid self, IntsKey a0)
4411  remove_attribute(Centroid self, StringKey a0)
4412  remove_attribute(Centroid self, ParticleIndexKey a0)
4413  remove_attribute(Centroid self, ObjectKey a0)
4414  remove_attribute(Centroid self, SparseFloatKey a0)
4415  remove_attribute(Centroid self, SparseIntKey a0)
4416  remove_attribute(Centroid self, SparseStringKey a0)
4417  remove_attribute(Centroid self, SparseParticleIndexKey a0)
4418  """
4419  return _IMP_core.Centroid_remove_attribute(self, *args)
4420 
4421  def has_attribute(self, *args):
4422  r"""
4423  has_attribute(Centroid self, FloatKey a0) -> bool
4424  has_attribute(Centroid self, IntKey a0) -> bool
4425  has_attribute(Centroid self, FloatsKey a0) -> bool
4426  has_attribute(Centroid self, IntsKey a0) -> bool
4427  has_attribute(Centroid self, StringKey a0) -> bool
4428  has_attribute(Centroid self, ParticleIndexKey a0) -> bool
4429  has_attribute(Centroid self, ObjectKey a0) -> bool
4430  has_attribute(Centroid self, SparseFloatKey a0) -> bool
4431  has_attribute(Centroid self, SparseIntKey a0) -> bool
4432  has_attribute(Centroid self, SparseStringKey a0) -> bool
4433  has_attribute(Centroid self, SparseParticleIndexKey a0) -> bool
4434  """
4435  return _IMP_core.Centroid_has_attribute(self, *args)
4436 
4437  def get_derivative(self, a0):
4438  r"""get_derivative(Centroid self, FloatKey a0) -> double"""
4439  return _IMP_core.Centroid_get_derivative(self, a0)
4440 
4441  def get_name(self):
4442  r"""get_name(Centroid self) -> std::string"""
4443  return _IMP_core.Centroid_get_name(self)
4444 
4445  def clear_caches(self):
4446  r"""clear_caches(Centroid self)"""
4447  return _IMP_core.Centroid_clear_caches(self)
4448 
4449  def set_name(self, a0):
4450  r"""set_name(Centroid self, std::string a0)"""
4451  return _IMP_core.Centroid_set_name(self, a0)
4452 
4453  def set_check_level(self, a0):
4454  r"""set_check_level(Centroid self, IMP::CheckLevel a0)"""
4455  return _IMP_core.Centroid_set_check_level(self, a0)
4456 
4457  def add_to_derivative(self, a0, a1, a2):
4458  r"""add_to_derivative(Centroid self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
4459  return _IMP_core.Centroid_add_to_derivative(self, a0, a1, a2)
4460 
4461  def set_is_optimized(self, a0, a1):
4462  r"""set_is_optimized(Centroid self, FloatKey a0, bool a1)"""
4463  return _IMP_core.Centroid_set_is_optimized(self, a0, a1)
4464 
4465  def get_is_optimized(self, a0):
4466  r"""get_is_optimized(Centroid self, FloatKey a0) -> bool"""
4467  return _IMP_core.Centroid_get_is_optimized(self, a0)
4468 
4469  def get_check_level(self):
4470  r"""get_check_level(Centroid self) -> IMP::CheckLevel"""
4471  return _IMP_core.Centroid_get_check_level(self)
4472 
4473  def __eq__(self, *args):
4474  r"""
4475  __eq__(Centroid self, Centroid o) -> bool
4476  __eq__(Centroid self, Particle d) -> bool
4477  """
4478  return _IMP_core.Centroid___eq__(self, *args)
4479 
4480  def __ne__(self, *args):
4481  r"""
4482  __ne__(Centroid self, Centroid o) -> bool
4483  __ne__(Centroid self, Particle d) -> bool
4484  """
4485  return _IMP_core.Centroid___ne__(self, *args)
4486 
4487  def __le__(self, *args):
4488  r"""
4489  __le__(Centroid self, Centroid o) -> bool
4490  __le__(Centroid self, Particle d) -> bool
4491  """
4492  return _IMP_core.Centroid___le__(self, *args)
4493 
4494  def __lt__(self, *args):
4495  r"""
4496  __lt__(Centroid self, Centroid o) -> bool
4497  __lt__(Centroid self, Particle d) -> bool
4498  """
4499  return _IMP_core.Centroid___lt__(self, *args)
4500 
4501  def __ge__(self, *args):
4502  r"""
4503  __ge__(Centroid self, Centroid o) -> bool
4504  __ge__(Centroid self, Particle d) -> bool
4505  """
4506  return _IMP_core.Centroid___ge__(self, *args)
4507 
4508  def __gt__(self, *args):
4509  r"""
4510  __gt__(Centroid self, Centroid o) -> bool
4511  __gt__(Centroid self, Particle d) -> bool
4512  """
4513  return _IMP_core.Centroid___gt__(self, *args)
4514 
4515  def __hash__(self):
4516  r"""__hash__(Centroid self) -> std::size_t"""
4517  return _IMP_core.Centroid___hash__(self)
4518 
4519  def __str__(self):
4520  r"""__str__(Centroid self) -> std::string"""
4521  return _IMP_core.Centroid___str__(self)
4522 
4523  def __repr__(self):
4524  r"""__repr__(Centroid self) -> std::string"""
4525  return _IMP_core.Centroid___repr__(self)
4526 
4527  def _get_as_binary(self):
4528  r"""_get_as_binary(Centroid self) -> PyObject *"""
4529  return _IMP_core.Centroid__get_as_binary(self)
4530 
4531  def _set_from_binary(self, p):
4532  r"""_set_from_binary(Centroid self, PyObject * p)"""
4533  return _IMP_core.Centroid__set_from_binary(self, p)
4534 
4535  def __getstate__(self):
4536  p = self._get_as_binary()
4537  if len(self.__dict__) > 1:
4538  d = self.__dict__.copy()
4539  del d['this']
4540  p = (d, p)
4541  return p
4542 
4543  def __setstate__(self, p):
4544  if not hasattr(self, 'this'):
4545  self.__init__()
4546  if isinstance(p, tuple):
4547  d, p = p
4548  self.__dict__.update(d)
4549  return self._set_from_binary(p)
4550 
4551  __swig_destroy__ = _IMP_core.delete_Centroid
4552 
4553 # Register Centroid in _IMP_core:
4554 _IMP_core.Centroid_swigregister(Centroid)
4555 class ChecksScoreState(IMP.ScoreState):
4556  r"""Proxy of C++ IMP::core::ChecksScoreState class."""
4557 
4558  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4559 
4560  def __init__(self, *args):
4561  r"""
4562  __init__(ChecksScoreState self, Model m, double probability) -> ChecksScoreState
4563  __init__(ChecksScoreState self) -> ChecksScoreState
4564  """
4565  _IMP_core.ChecksScoreState_swiginit(self, _IMP_core.new_ChecksScoreState(*args))
4566 
4567  def get_number_of_checked(self):
4568  r"""get_number_of_checked(ChecksScoreState self) -> unsigned int"""
4569  return _IMP_core.ChecksScoreState_get_number_of_checked(self)
4570 
4571  def do_before_evaluate(self):
4572  r"""do_before_evaluate(ChecksScoreState self)"""
4573  return _IMP_core.ChecksScoreState_do_before_evaluate(self)
4574 
4575  def do_after_evaluate(self, da):
4576  r"""do_after_evaluate(ChecksScoreState self, DerivativeAccumulator da)"""
4577  return _IMP_core.ChecksScoreState_do_after_evaluate(self, da)
4578 
4579  def do_get_outputs(self):
4580  r"""do_get_outputs(ChecksScoreState self) -> IMP::ModelObjectsTemp"""
4581  return _IMP_core.ChecksScoreState_do_get_outputs(self)
4582 
4583  def do_get_inputs(self):
4584  r"""do_get_inputs(ChecksScoreState self) -> IMP::ModelObjectsTemp"""
4585  return _IMP_core.ChecksScoreState_do_get_inputs(self)
4586 
4587  def get_version_info(self):
4588  r"""get_version_info(ChecksScoreState self) -> VersionInfo"""
4589  return _IMP_core.ChecksScoreState_get_version_info(self)
4590  __swig_destroy__ = _IMP_core.delete_ChecksScoreState
4591 
4592  def __str__(self):
4593  r"""__str__(ChecksScoreState self) -> std::string"""
4594  return _IMP_core.ChecksScoreState___str__(self)
4595 
4596  def __repr__(self):
4597  r"""__repr__(ChecksScoreState self) -> std::string"""
4598  return _IMP_core.ChecksScoreState___repr__(self)
4599 
4600  @staticmethod
4601  def get_from(o):
4602  return _object_cast_to_ChecksScoreState(o)
4603 
4604 
4605  def _get_as_binary(self):
4606  r"""_get_as_binary(ChecksScoreState self) -> PyObject *"""
4607  return _IMP_core.ChecksScoreState__get_as_binary(self)
4608 
4609  def _set_from_binary(self, p):
4610  r"""_set_from_binary(ChecksScoreState self, PyObject * p)"""
4611  return _IMP_core.ChecksScoreState__set_from_binary(self, p)
4612 
4613  def __getstate__(self):
4614  p = self._get_as_binary()
4615  if len(self.__dict__) > 1:
4616  d = self.__dict__.copy()
4617  del d['this']
4618  p = (d, p)
4619  return p
4620 
4621  def __setstate__(self, p):
4622  if not hasattr(self, 'this'):
4623  self.__init__()
4624  if isinstance(p, tuple):
4625  d, p = p
4626  self.__dict__.update(d)
4627  return self._set_from_binary(p)
4628 
4629 
4630 # Register ChecksScoreState in _IMP_core:
4631 _IMP_core.ChecksScoreState_swigregister(ChecksScoreState)
4632 class ChildrenRefiner(IMP.Refiner):
4633  r"""Proxy of C++ IMP::core::ChildrenRefiner class."""
4634 
4635  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4636 
4637  def __init__(self, tr):
4638  r"""__init__(ChildrenRefiner self, HierarchyTraits tr) -> ChildrenRefiner"""
4639  _IMP_core.ChildrenRefiner_swiginit(self, _IMP_core.new_ChildrenRefiner(tr))
4640 
4641  def do_get_inputs(self, m, pis):
4642  r"""do_get_inputs(ChildrenRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
4643  return _IMP_core.ChildrenRefiner_do_get_inputs(self, m, pis)
4644 
4645  def get_version_info(self):
4646  r"""get_version_info(ChildrenRefiner self) -> VersionInfo"""
4647  return _IMP_core.ChildrenRefiner_get_version_info(self)
4648  __swig_destroy__ = _IMP_core.delete_ChildrenRefiner
4649 
4650  def __str__(self):
4651  r"""__str__(ChildrenRefiner self) -> std::string"""
4652  return _IMP_core.ChildrenRefiner___str__(self)
4653 
4654  def __repr__(self):
4655  r"""__repr__(ChildrenRefiner self) -> std::string"""
4656  return _IMP_core.ChildrenRefiner___repr__(self)
4657 
4658  @staticmethod
4659  def get_from(o):
4660  return _object_cast_to_ChildrenRefiner(o)
4661 
4662 
4663 # Register ChildrenRefiner in _IMP_core:
4664 _IMP_core.ChildrenRefiner_swigregister(ChildrenRefiner)
4665 class ClosedCubicSpline(IMP.UnaryFunction):
4666  r"""Proxy of C++ IMP::core::ClosedCubicSpline class."""
4667 
4668  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4669 
4670  def __init__(self, values, minrange, spacing):
4671  r"""__init__(ClosedCubicSpline self, IMP::Floats const & values, double minrange, double spacing) -> ClosedCubicSpline"""
4672  _IMP_core.ClosedCubicSpline_swiginit(self, _IMP_core.new_ClosedCubicSpline(values, minrange, spacing))
4673 
4674  def get_version_info(self):
4675  r"""get_version_info(ClosedCubicSpline self) -> VersionInfo"""
4676  return _IMP_core.ClosedCubicSpline_get_version_info(self)
4677  __swig_destroy__ = _IMP_core.delete_ClosedCubicSpline
4678 
4679  def do_show(self, out):
4680  r"""do_show(ClosedCubicSpline self, _ostream out)"""
4681  return _IMP_core.ClosedCubicSpline_do_show(self, out)
4682 
4683  def __str__(self):
4684  r"""__str__(ClosedCubicSpline self) -> std::string"""
4685  return _IMP_core.ClosedCubicSpline___str__(self)
4686 
4687  def __repr__(self):
4688  r"""__repr__(ClosedCubicSpline self) -> std::string"""
4689  return _IMP_core.ClosedCubicSpline___repr__(self)
4690 
4691  @staticmethod
4692  def get_from(o):
4693  return _object_cast_to_ClosedCubicSpline(o)
4694 
4695 
4696 # Register ClosedCubicSpline in _IMP_core:
4697 _IMP_core.ClosedCubicSpline_swigregister(ClosedCubicSpline)
4698 class KClosePairsPairScore(IMP.PairScore):
4699  r"""Proxy of C++ IMP::core::KClosePairsPairScore class."""
4700 
4701  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4702 
4703  def __init__(self, f, r, k=1):
4704  r"""__init__(KClosePairsPairScore self, PairScore f, Refiner r, int k=1) -> KClosePairsPairScore"""
4705  _IMP_core.KClosePairsPairScore_swiginit(self, _IMP_core.new_KClosePairsPairScore(f, r, k))
4706 
4707  def get_close_pairs(self, pp):
4708  r"""get_close_pairs(KClosePairsPairScore self, IMP::ParticlePair const & pp) -> IMP::ParticlePairsTemp"""
4709  return _IMP_core.KClosePairsPairScore_get_close_pairs(self, pp)
4710 
4711  def create_current_decomposition(self, m, vt):
4712  r"""create_current_decomposition(KClosePairsPairScore self, Model m, IMP::ParticleIndexPair const & vt) -> IMP::Restraints"""
4713  return _IMP_core.KClosePairsPairScore_create_current_decomposition(self, m, vt)
4714 
4715  def do_get_inputs(self, m, pis):
4716  r"""do_get_inputs(KClosePairsPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
4717  return _IMP_core.KClosePairsPairScore_do_get_inputs(self, m, pis)
4718 
4719  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
4720  r"""evaluate_indexes(KClosePairsPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
4721  return _IMP_core.KClosePairsPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
4722 
4723  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
4724  r"""evaluate_indexes_scores(KClosePairsPairScore 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"""
4725  return _IMP_core.KClosePairsPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
4726 
4727  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
4728  r"""evaluate_indexes_delta(KClosePairsPairScore 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"""
4729  return _IMP_core.KClosePairsPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
4730 
4731  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
4732  r"""evaluate_if_good_indexes(KClosePairsPairScore 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"""
4733  return _IMP_core.KClosePairsPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
4734 
4735  def get_version_info(self):
4736  r"""get_version_info(KClosePairsPairScore self) -> VersionInfo"""
4737  return _IMP_core.KClosePairsPairScore_get_version_info(self)
4738  __swig_destroy__ = _IMP_core.delete_KClosePairsPairScore
4739 
4740  def __str__(self):
4741  r"""__str__(KClosePairsPairScore self) -> std::string"""
4742  return _IMP_core.KClosePairsPairScore___str__(self)
4743 
4744  def __repr__(self):
4745  r"""__repr__(KClosePairsPairScore self) -> std::string"""
4746  return _IMP_core.KClosePairsPairScore___repr__(self)
4747 
4748  @staticmethod
4749  def get_from(o):
4750  return _object_cast_to_KClosePairsPairScore(o)
4751 
4752 
4753 # Register KClosePairsPairScore in _IMP_core:
4754 _IMP_core.KClosePairsPairScore_swigregister(KClosePairsPairScore)
4755 class ClosePairsPairScore(IMP.PairScore):
4756  r"""Proxy of C++ IMP::core::ClosePairsPairScore class."""
4757 
4758  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4759 
4760  def __init__(self, f, r, max_distance):
4761  r"""__init__(ClosePairsPairScore self, PairScore f, Refiner r, IMP::Float max_distance) -> ClosePairsPairScore"""
4762  _IMP_core.ClosePairsPairScore_swiginit(self, _IMP_core.new_ClosePairsPairScore(f, r, max_distance))
4763 
4764  def get_close_pairs(self, pp):
4765  r"""get_close_pairs(ClosePairsPairScore self, IMP::ParticlePair const & pp) -> IMP::ParticlePairsTemp"""
4766  return _IMP_core.ClosePairsPairScore_get_close_pairs(self, pp)
4767 
4768  def create_current_decomposition(self, m, vt):
4769  r"""create_current_decomposition(ClosePairsPairScore self, Model m, IMP::ParticleIndexPair const & vt) -> IMP::Restraints"""
4770  return _IMP_core.ClosePairsPairScore_create_current_decomposition(self, m, vt)
4771 
4772  def do_get_inputs(self, m, pis):
4773  r"""do_get_inputs(ClosePairsPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
4774  return _IMP_core.ClosePairsPairScore_do_get_inputs(self, m, pis)
4775 
4776  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
4777  r"""evaluate_indexes(ClosePairsPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
4778  return _IMP_core.ClosePairsPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
4779 
4780  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
4781  r"""evaluate_indexes_scores(ClosePairsPairScore 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"""
4782  return _IMP_core.ClosePairsPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
4783 
4784  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
4785  r"""evaluate_indexes_delta(ClosePairsPairScore 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"""
4786  return _IMP_core.ClosePairsPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
4787 
4788  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
4789  r"""evaluate_if_good_indexes(ClosePairsPairScore 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"""
4790  return _IMP_core.ClosePairsPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
4791 
4792  def get_version_info(self):
4793  r"""get_version_info(ClosePairsPairScore self) -> VersionInfo"""
4794  return _IMP_core.ClosePairsPairScore_get_version_info(self)
4795  __swig_destroy__ = _IMP_core.delete_ClosePairsPairScore
4796 
4797  def __str__(self):
4798  r"""__str__(ClosePairsPairScore self) -> std::string"""
4799  return _IMP_core.ClosePairsPairScore___str__(self)
4800 
4801  def __repr__(self):
4802  r"""__repr__(ClosePairsPairScore self) -> std::string"""
4803  return _IMP_core.ClosePairsPairScore___repr__(self)
4804 
4805  @staticmethod
4806  def get_from(o):
4807  return _object_cast_to_ClosePairsPairScore(o)
4808 
4809 
4810 # Register ClosePairsPairScore in _IMP_core:
4811 _IMP_core.ClosePairsPairScore_swigregister(ClosePairsPairScore)
4812 class ConjugateGradients(IMP.AttributeOptimizer):
4813  r"""Proxy of C++ IMP::core::ConjugateGradients class."""
4814 
4815  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4816 
4817  def __init__(self, *args):
4818  r"""
4819  __init__(ConjugateGradients self, Model m, std::string name="ConjugateGradients%1%") -> ConjugateGradients
4820  __init__(ConjugateGradients self) -> ConjugateGradients
4821  """
4822  _IMP_core.ConjugateGradients_swiginit(self, _IMP_core.new_ConjugateGradients(*args))
4823 
4824  def set_gradient_threshold(self, t):
4825  r"""set_gradient_threshold(ConjugateGradients self, IMP::Float t)"""
4826  return _IMP_core.ConjugateGradients_set_gradient_threshold(self, t)
4827 
4828  def set_max_change(self, t):
4829  r"""set_max_change(ConjugateGradients self, IMP::Float t)"""
4830  return _IMP_core.ConjugateGradients_set_max_change(self, t)
4831 
4832  def do_optimize(self, max_steps):
4833  r"""do_optimize(ConjugateGradients self, unsigned int max_steps) -> IMP::Float"""
4834  return _IMP_core.ConjugateGradients_do_optimize(self, max_steps)
4835 
4836  def get_version_info(self):
4837  r"""get_version_info(ConjugateGradients self) -> VersionInfo"""
4838  return _IMP_core.ConjugateGradients_get_version_info(self)
4839  __swig_destroy__ = _IMP_core.delete_ConjugateGradients
4840 
4841  def __str__(self):
4842  r"""__str__(ConjugateGradients self) -> std::string"""
4843  return _IMP_core.ConjugateGradients___str__(self)
4844 
4845  def __repr__(self):
4846  r"""__repr__(ConjugateGradients self) -> std::string"""
4847  return _IMP_core.ConjugateGradients___repr__(self)
4848 
4849  @staticmethod
4850  def get_from(o):
4851  return _object_cast_to_ConjugateGradients(o)
4852 
4853 
4854  def _get_as_binary(self):
4855  r"""_get_as_binary(ConjugateGradients self) -> PyObject *"""
4856  return _IMP_core.ConjugateGradients__get_as_binary(self)
4857 
4858  def _set_from_binary(self, p):
4859  r"""_set_from_binary(ConjugateGradients self, PyObject * p)"""
4860  return _IMP_core.ConjugateGradients__set_from_binary(self, p)
4861 
4862  def __getstate__(self):
4863  p = self._get_as_binary()
4864  if len(self.__dict__) > 1:
4865  d = self.__dict__.copy()
4866  del d['this']
4867  p = (d, p)
4868  return p
4869 
4870  def __setstate__(self, p):
4871  if not hasattr(self, 'this'):
4872  self.__init__()
4873  if isinstance(p, tuple):
4874  d, p = p
4875  self.__dict__.update(d)
4876  return self._set_from_binary(p)
4877 
4878 
4879 # Register ConjugateGradients in _IMP_core:
4880 _IMP_core.ConjugateGradients_swigregister(ConjugateGradients)
4881 class ConnectivityRestraint(IMP.Restraint):
4882  r"""Proxy of C++ IMP::core::ConnectivityRestraint class."""
4883 
4884  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4885 
4886  def __init__(self, ps, sc):
4887  r"""__init__(ConnectivityRestraint self, PairScore ps, _SingletonContainerAdaptor sc) -> ConnectivityRestraint"""
4888  _IMP_core.ConnectivityRestraint_swiginit(self, _IMP_core.new_ConnectivityRestraint(ps, sc))
4889 
4890  def get_connected_index_pairs(self):
4891  r"""get_connected_index_pairs(ConnectivityRestraint self) -> IMP::ParticleIndexPairs"""
4892  return _IMP_core.ConnectivityRestraint_get_connected_index_pairs(self)
4893 
4894  def get_pair_score(self):
4895  r"""get_pair_score(ConnectivityRestraint self) -> PairScore"""
4896  return _IMP_core.ConnectivityRestraint_get_pair_score(self)
4897 
4898  def do_create_current_decomposition(self):
4899  r"""do_create_current_decomposition(ConnectivityRestraint self) -> IMP::Restraints"""
4900  return _IMP_core.ConnectivityRestraint_do_create_current_decomposition(self)
4901 
4902  def do_get_inputs(self):
4903  r"""do_get_inputs(ConnectivityRestraint self) -> IMP::ModelObjectsTemp"""
4904  return _IMP_core.ConnectivityRestraint_do_get_inputs(self)
4905 
4906  def get_version_info(self):
4907  r"""get_version_info(ConnectivityRestraint self) -> VersionInfo"""
4908  return _IMP_core.ConnectivityRestraint_get_version_info(self)
4909  __swig_destroy__ = _IMP_core.delete_ConnectivityRestraint
4910 
4911  def __str__(self):
4912  r"""__str__(ConnectivityRestraint self) -> std::string"""
4913  return _IMP_core.ConnectivityRestraint___str__(self)
4914 
4915  def __repr__(self):
4916  r"""__repr__(ConnectivityRestraint self) -> std::string"""
4917  return _IMP_core.ConnectivityRestraint___repr__(self)
4918 
4919  @staticmethod
4920  def get_from(o):
4921  return _object_cast_to_ConnectivityRestraint(o)
4922 
4923 
4924 # Register ConnectivityRestraint in _IMP_core:
4925 _IMP_core.ConnectivityRestraint_swigregister(ConnectivityRestraint)
4926 class ConstantRestraint(IMP.Restraint):
4927  r"""Proxy of C++ IMP::core::ConstantRestraint class."""
4928 
4929  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4930 
4931  def __init__(self, *args):
4932  r"""
4933  __init__(ConstantRestraint self, Model m, IMP::Float v) -> ConstantRestraint
4934  __init__(ConstantRestraint self) -> ConstantRestraint
4935  """
4936  _IMP_core.ConstantRestraint_swiginit(self, _IMP_core.new_ConstantRestraint(*args))
4937 
4938  def do_get_inputs(self):
4939  r"""do_get_inputs(ConstantRestraint self) -> IMP::ModelObjectsTemp"""
4940  return _IMP_core.ConstantRestraint_do_get_inputs(self)
4941 
4942  def get_version_info(self):
4943  r"""get_version_info(ConstantRestraint self) -> VersionInfo"""
4944  return _IMP_core.ConstantRestraint_get_version_info(self)
4945  __swig_destroy__ = _IMP_core.delete_ConstantRestraint
4946 
4947  def __str__(self):
4948  r"""__str__(ConstantRestraint self) -> std::string"""
4949  return _IMP_core.ConstantRestraint___str__(self)
4950 
4951  def __repr__(self):
4952  r"""__repr__(ConstantRestraint self) -> std::string"""
4953  return _IMP_core.ConstantRestraint___repr__(self)
4954 
4955  @staticmethod
4956  def get_from(o):
4957  return _object_cast_to_ConstantRestraint(o)
4958 
4959 
4960  def _get_as_binary(self):
4961  r"""_get_as_binary(ConstantRestraint self) -> PyObject *"""
4962  return _IMP_core.ConstantRestraint__get_as_binary(self)
4963 
4964  def _set_from_binary(self, p):
4965  r"""_set_from_binary(ConstantRestraint self, PyObject * p)"""
4966  return _IMP_core.ConstantRestraint__set_from_binary(self, p)
4967 
4968  def __getstate__(self):
4969  p = self._get_as_binary()
4970  if len(self.__dict__) > 1:
4971  d = self.__dict__.copy()
4972  del d['this']
4973  p = (d, p)
4974  return p
4975 
4976  def __setstate__(self, p):
4977  if not hasattr(self, 'this'):
4978  self.__init__()
4979  if isinstance(p, tuple):
4980  d, p = p
4981  self.__dict__.update(d)
4982  return self._set_from_binary(p)
4983 
4984 
4985 # Register ConstantRestraint in _IMP_core:
4986 _IMP_core.ConstantRestraint_swigregister(ConstantRestraint)
4987 class Cosine(IMP.UnaryFunction):
4988  r"""Proxy of C++ IMP::core::Cosine class."""
4989 
4990  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4991 
4992  def __init__(self, *args):
4993  r"""
4994  __init__(Cosine self, IMP::Float force_constant, int periodicity, IMP::Float phase) -> Cosine
4995  __init__(Cosine self) -> Cosine
4996  """
4997  _IMP_core.Cosine_swiginit(self, _IMP_core.new_Cosine(*args))
4998 
4999  def get_force_constant(self):
5000  r"""get_force_constant(Cosine self) -> IMP::Float"""
5001  return _IMP_core.Cosine_get_force_constant(self)
5002 
5003  def get_periodicity(self):
5004  r"""get_periodicity(Cosine self) -> int"""
5005  return _IMP_core.Cosine_get_periodicity(self)
5006 
5007  def get_phase(self):
5008  r"""get_phase(Cosine self) -> IMP::Float"""
5009  return _IMP_core.Cosine_get_phase(self)
5010 
5011  def get_version_info(self):
5012  r"""get_version_info(Cosine self) -> VersionInfo"""
5013  return _IMP_core.Cosine_get_version_info(self)
5014  __swig_destroy__ = _IMP_core.delete_Cosine
5015 
5016  def do_show(self, out):
5017  r"""do_show(Cosine self, _ostream out)"""
5018  return _IMP_core.Cosine_do_show(self, out)
5019 
5020  def __str__(self):
5021  r"""__str__(Cosine self) -> std::string"""
5022  return _IMP_core.Cosine___str__(self)
5023 
5024  def __repr__(self):
5025  r"""__repr__(Cosine self) -> std::string"""
5026  return _IMP_core.Cosine___repr__(self)
5027 
5028  @staticmethod
5029  def get_from(o):
5030  return _object_cast_to_Cosine(o)
5031 
5032 
5033  def _get_as_binary(self):
5034  r"""_get_as_binary(Cosine self) -> PyObject *"""
5035  return _IMP_core.Cosine__get_as_binary(self)
5036 
5037  def _set_from_binary(self, p):
5038  r"""_set_from_binary(Cosine self, PyObject * p)"""
5039  return _IMP_core.Cosine__set_from_binary(self, p)
5040 
5041  def __getstate__(self):
5042  p = self._get_as_binary()
5043  if len(self.__dict__) > 1:
5044  d = self.__dict__.copy()
5045  del d['this']
5046  p = (d, p)
5047  return p
5048 
5049  def __setstate__(self, p):
5050  if not hasattr(self, 'this'):
5051  self.__init__()
5052  if isinstance(p, tuple):
5053  d, p = p
5054  self.__dict__.update(d)
5055  return self._set_from_binary(p)
5056 
5057 
5058  def _get_jax(self):
5059  import functools
5060  import jax.numpy as jnp
5061  def score(val, k, period, phase):
5062  return jnp.abs(k) - k * jnp.cos(period * val + phase)
5063  return functools.partial(score, k=self.get_force_constant(),
5064  period=self.get_periodicity(),
5065  phase=self.get_phase())
5066 
5067 
5068 # Register Cosine in _IMP_core:
5069 _IMP_core.Cosine_swigregister(Cosine)
5070 class CoverRefined(IMP.SingletonModifier):
5071  r"""Proxy of C++ IMP::core::CoverRefined class."""
5072 
5073  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5074 
5075  def __init__(self, ref, slack=0):
5076  r"""__init__(CoverRefined self, Refiner ref, IMP::Float slack=0) -> CoverRefined"""
5077  _IMP_core.CoverRefined_swiginit(self, _IMP_core.new_CoverRefined(ref, slack))
5078 
5079  def set_slack(self, slack):
5080  r"""set_slack(CoverRefined self, IMP::Float slack)"""
5081  return _IMP_core.CoverRefined_set_slack(self, slack)
5082 
5083  def do_get_inputs(self, m, pis):
5084  r"""do_get_inputs(CoverRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5085  return _IMP_core.CoverRefined_do_get_inputs(self, m, pis)
5086 
5087  def do_get_outputs(self, m, pis):
5088  r"""do_get_outputs(CoverRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5089  return _IMP_core.CoverRefined_do_get_outputs(self, m, pis)
5090 
5091  def get_version_info(self):
5092  r"""get_version_info(CoverRefined self) -> VersionInfo"""
5093  return _IMP_core.CoverRefined_get_version_info(self)
5094  __swig_destroy__ = _IMP_core.delete_CoverRefined
5095 
5096  def __str__(self):
5097  r"""__str__(CoverRefined self) -> std::string"""
5098  return _IMP_core.CoverRefined___str__(self)
5099 
5100  def __repr__(self):
5101  r"""__repr__(CoverRefined self) -> std::string"""
5102  return _IMP_core.CoverRefined___repr__(self)
5103 
5104  @staticmethod
5105  def get_from(o):
5106  return _object_cast_to_CoverRefined(o)
5107 
5108 
5109 # Register CoverRefined in _IMP_core:
5110 _IMP_core.CoverRefined_swigregister(CoverRefined)
5111 class Cover(XYZR):
5112  r"""Proxy of C++ IMP::core::Cover class."""
5113 
5114  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5115 
5116  def get_constraint(self):
5117  r"""get_constraint(Cover self) -> Constraint"""
5118  return _IMP_core.Cover_get_constraint(self)
5119 
5120  def __init__(self, *args):
5121  r"""
5122  __init__(Cover self) -> Cover
5123  __init__(Cover self, Model m, ParticleIndex id) -> Cover
5124  __init__(Cover self, _ParticleAdaptor d) -> Cover
5125  """
5126  _IMP_core.Cover_swiginit(self, _IMP_core.new_Cover(*args))
5127 
5128  def show(self, *args):
5129  r"""show(Cover self, _ostream out=std::cout)"""
5130  return _IMP_core.Cover_show(self, *args)
5131 
5132  @staticmethod
5133  def setup_particle(*args):
5134  r"""
5135  setup_particle(Model m, ParticleIndex pi, _ParticleIndexesAdaptor members) -> Cover
5136  setup_particle(_ParticleAdaptor pa, _ParticleIndexesAdaptor members) -> Cover
5137  setup_particle(Model m, ParticleIndex pi, Refiner refiner) -> Cover
5138  setup_particle(_ParticleAdaptor pa, Refiner refiner) -> Cover
5139  """
5140  return _IMP_core.Cover_setup_particle(*args)
5141 
5142  @staticmethod
5143  def get_is_setup(*args):
5144  r"""
5145  get_is_setup(_ParticleAdaptor p) -> bool
5146  get_is_setup(Model m, ParticleIndex pi) -> bool
5147  """
5148  return _IMP_core.Cover_get_is_setup(*args)
5149 
5150  def add_attribute(self, *args):
5151  r"""
5152  add_attribute(Cover self, FloatKey k, IMP::Float v, bool opt)
5153  add_attribute(Cover self, FloatKey a0, IMP::Float a1)
5154  add_attribute(Cover self, IntKey a0, IMP::Int a1)
5155  add_attribute(Cover self, FloatsKey a0, IMP::Floats a1)
5156  add_attribute(Cover self, IntsKey a0, IMP::Ints a1)
5157  add_attribute(Cover self, StringKey a0, IMP::String a1)
5158  add_attribute(Cover self, ParticleIndexKey a0, Particle a1)
5159  add_attribute(Cover self, ObjectKey a0, Object a1)
5160  add_attribute(Cover self, SparseFloatKey a0, IMP::Float a1)
5161  add_attribute(Cover self, SparseIntKey a0, IMP::Int a1)
5162  add_attribute(Cover self, SparseStringKey a0, IMP::String a1)
5163  add_attribute(Cover self, SparseParticleIndexKey a0, ParticleIndex a1)
5164  """
5165  return _IMP_core.Cover_add_attribute(self, *args)
5166 
5167  def get_value(self, *args):
5168  r"""
5169  get_value(Cover self, FloatKey a0) -> IMP::Float
5170  get_value(Cover self, IntKey a0) -> IMP::Int
5171  get_value(Cover self, FloatsKey a0) -> IMP::Floats
5172  get_value(Cover self, IntsKey a0) -> IMP::Ints
5173  get_value(Cover self, StringKey a0) -> IMP::String
5174  get_value(Cover self, ParticleIndexKey a0) -> Particle
5175  get_value(Cover self, ObjectKey a0) -> Object
5176  get_value(Cover self, SparseFloatKey a0) -> IMP::Float
5177  get_value(Cover self, SparseIntKey a0) -> IMP::Int
5178  get_value(Cover self, SparseStringKey a0) -> IMP::String
5179  get_value(Cover self, SparseParticleIndexKey a0) -> ParticleIndex
5180  """
5181  return _IMP_core.Cover_get_value(self, *args)
5182 
5183  def set_value(self, *args):
5184  r"""
5185  set_value(Cover self, FloatKey a0, IMP::Float a1)
5186  set_value(Cover self, IntKey a0, IMP::Int a1)
5187  set_value(Cover self, FloatsKey a0, IMP::Floats a1)
5188  set_value(Cover self, IntsKey a0, IMP::Ints a1)
5189  set_value(Cover self, StringKey a0, IMP::String a1)
5190  set_value(Cover self, ParticleIndexKey a0, Particle a1)
5191  set_value(Cover self, ObjectKey a0, Object a1)
5192  set_value(Cover self, SparseFloatKey a0, IMP::Float a1)
5193  set_value(Cover self, SparseIntKey a0, IMP::Int a1)
5194  set_value(Cover self, SparseStringKey a0, IMP::String a1)
5195  set_value(Cover self, SparseParticleIndexKey a0, ParticleIndex a1)
5196  """
5197  return _IMP_core.Cover_set_value(self, *args)
5198 
5199  def remove_attribute(self, *args):
5200  r"""
5201  remove_attribute(Cover self, FloatKey a0)
5202  remove_attribute(Cover self, IntKey a0)
5203  remove_attribute(Cover self, FloatsKey a0)
5204  remove_attribute(Cover self, IntsKey a0)
5205  remove_attribute(Cover self, StringKey a0)
5206  remove_attribute(Cover self, ParticleIndexKey a0)
5207  remove_attribute(Cover self, ObjectKey a0)
5208  remove_attribute(Cover self, SparseFloatKey a0)
5209  remove_attribute(Cover self, SparseIntKey a0)
5210  remove_attribute(Cover self, SparseStringKey a0)
5211  remove_attribute(Cover self, SparseParticleIndexKey a0)
5212  """
5213  return _IMP_core.Cover_remove_attribute(self, *args)
5214 
5215  def has_attribute(self, *args):
5216  r"""
5217  has_attribute(Cover self, FloatKey a0) -> bool
5218  has_attribute(Cover self, IntKey a0) -> bool
5219  has_attribute(Cover self, FloatsKey a0) -> bool
5220  has_attribute(Cover self, IntsKey a0) -> bool
5221  has_attribute(Cover self, StringKey a0) -> bool
5222  has_attribute(Cover self, ParticleIndexKey a0) -> bool
5223  has_attribute(Cover self, ObjectKey a0) -> bool
5224  has_attribute(Cover self, SparseFloatKey a0) -> bool
5225  has_attribute(Cover self, SparseIntKey a0) -> bool
5226  has_attribute(Cover self, SparseStringKey a0) -> bool
5227  has_attribute(Cover self, SparseParticleIndexKey a0) -> bool
5228  """
5229  return _IMP_core.Cover_has_attribute(self, *args)
5230 
5231  def get_derivative(self, a0):
5232  r"""get_derivative(Cover self, FloatKey a0) -> double"""
5233  return _IMP_core.Cover_get_derivative(self, a0)
5234 
5235  def get_name(self):
5236  r"""get_name(Cover self) -> std::string"""
5237  return _IMP_core.Cover_get_name(self)
5238 
5239  def clear_caches(self):
5240  r"""clear_caches(Cover self)"""
5241  return _IMP_core.Cover_clear_caches(self)
5242 
5243  def set_name(self, a0):
5244  r"""set_name(Cover self, std::string a0)"""
5245  return _IMP_core.Cover_set_name(self, a0)
5246 
5247  def set_check_level(self, a0):
5248  r"""set_check_level(Cover self, IMP::CheckLevel a0)"""
5249  return _IMP_core.Cover_set_check_level(self, a0)
5250 
5251  def add_to_derivative(self, a0, a1, a2):
5252  r"""add_to_derivative(Cover self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
5253  return _IMP_core.Cover_add_to_derivative(self, a0, a1, a2)
5254 
5255  def set_is_optimized(self, a0, a1):
5256  r"""set_is_optimized(Cover self, FloatKey a0, bool a1)"""
5257  return _IMP_core.Cover_set_is_optimized(self, a0, a1)
5258 
5259  def get_is_optimized(self, a0):
5260  r"""get_is_optimized(Cover self, FloatKey a0) -> bool"""
5261  return _IMP_core.Cover_get_is_optimized(self, a0)
5262 
5263  def get_check_level(self):
5264  r"""get_check_level(Cover self) -> IMP::CheckLevel"""
5265  return _IMP_core.Cover_get_check_level(self)
5266 
5267  def __eq__(self, *args):
5268  r"""
5269  __eq__(Cover self, Cover o) -> bool
5270  __eq__(Cover self, Particle d) -> bool
5271  """
5272  return _IMP_core.Cover___eq__(self, *args)
5273 
5274  def __ne__(self, *args):
5275  r"""
5276  __ne__(Cover self, Cover o) -> bool
5277  __ne__(Cover self, Particle d) -> bool
5278  """
5279  return _IMP_core.Cover___ne__(self, *args)
5280 
5281  def __le__(self, *args):
5282  r"""
5283  __le__(Cover self, Cover o) -> bool
5284  __le__(Cover self, Particle d) -> bool
5285  """
5286  return _IMP_core.Cover___le__(self, *args)
5287 
5288  def __lt__(self, *args):
5289  r"""
5290  __lt__(Cover self, Cover o) -> bool
5291  __lt__(Cover self, Particle d) -> bool
5292  """
5293  return _IMP_core.Cover___lt__(self, *args)
5294 
5295  def __ge__(self, *args):
5296  r"""
5297  __ge__(Cover self, Cover o) -> bool
5298  __ge__(Cover self, Particle d) -> bool
5299  """
5300  return _IMP_core.Cover___ge__(self, *args)
5301 
5302  def __gt__(self, *args):
5303  r"""
5304  __gt__(Cover self, Cover o) -> bool
5305  __gt__(Cover self, Particle d) -> bool
5306  """
5307  return _IMP_core.Cover___gt__(self, *args)
5308 
5309  def __hash__(self):
5310  r"""__hash__(Cover self) -> std::size_t"""
5311  return _IMP_core.Cover___hash__(self)
5312 
5313  def __str__(self):
5314  r"""__str__(Cover self) -> std::string"""
5315  return _IMP_core.Cover___str__(self)
5316 
5317  def __repr__(self):
5318  r"""__repr__(Cover self) -> std::string"""
5319  return _IMP_core.Cover___repr__(self)
5320 
5321  def _get_as_binary(self):
5322  r"""_get_as_binary(Cover self) -> PyObject *"""
5323  return _IMP_core.Cover__get_as_binary(self)
5324 
5325  def _set_from_binary(self, p):
5326  r"""_set_from_binary(Cover self, PyObject * p)"""
5327  return _IMP_core.Cover__set_from_binary(self, p)
5328 
5329  def __getstate__(self):
5330  p = self._get_as_binary()
5331  if len(self.__dict__) > 1:
5332  d = self.__dict__.copy()
5333  del d['this']
5334  p = (d, p)
5335  return p
5336 
5337  def __setstate__(self, p):
5338  if not hasattr(self, 'this'):
5339  self.__init__()
5340  if isinstance(p, tuple):
5341  d, p = p
5342  self.__dict__.update(d)
5343  return self._set_from_binary(p)
5344 
5345  __swig_destroy__ = _IMP_core.delete_Cover
5346 
5347 # Register Cover in _IMP_core:
5348 _IMP_core.Cover_swigregister(Cover)
5349 class DerivativesFromRefined(IMP.SingletonModifier):
5350  r"""Proxy of C++ IMP::core::DerivativesFromRefined class."""
5351 
5352  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5353 
5354  def __init__(self, *args):
5355  r"""__init__(DerivativesFromRefined self, Refiner r, IMP::FloatKeys ks=IMP::core::XYZ::get_xyz_keys()) -> DerivativesFromRefined"""
5356  _IMP_core.DerivativesFromRefined_swiginit(self, _IMP_core.new_DerivativesFromRefined(*args))
5357 
5358  def do_get_inputs(self, m, pis):
5359  r"""do_get_inputs(DerivativesFromRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5360  return _IMP_core.DerivativesFromRefined_do_get_inputs(self, m, pis)
5361 
5362  def do_get_outputs(self, m, pis):
5363  r"""do_get_outputs(DerivativesFromRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5364  return _IMP_core.DerivativesFromRefined_do_get_outputs(self, m, pis)
5365 
5366  def get_version_info(self):
5367  r"""get_version_info(DerivativesFromRefined self) -> VersionInfo"""
5368  return _IMP_core.DerivativesFromRefined_get_version_info(self)
5369  __swig_destroy__ = _IMP_core.delete_DerivativesFromRefined
5370 
5371  def __str__(self):
5372  r"""__str__(DerivativesFromRefined self) -> std::string"""
5373  return _IMP_core.DerivativesFromRefined___str__(self)
5374 
5375  def __repr__(self):
5376  r"""__repr__(DerivativesFromRefined self) -> std::string"""
5377  return _IMP_core.DerivativesFromRefined___repr__(self)
5378 
5379  @staticmethod
5380  def get_from(o):
5381  return _object_cast_to_DerivativesFromRefined(o)
5382 
5383 
5384 # Register DerivativesFromRefined in _IMP_core:
5385 _IMP_core.DerivativesFromRefined_swigregister(DerivativesFromRefined)
5386 class DerivativesToRefined(IMP.SingletonModifier):
5387  r"""Proxy of C++ IMP::core::DerivativesToRefined class."""
5388 
5389  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5390 
5391  def __init__(self, *args):
5392  r"""__init__(DerivativesToRefined self, Refiner r, IMP::FloatKeys ks=IMP::core::XYZ::get_xyz_keys()) -> DerivativesToRefined"""
5393  _IMP_core.DerivativesToRefined_swiginit(self, _IMP_core.new_DerivativesToRefined(*args))
5394 
5395  def do_get_inputs(self, m, pis):
5396  r"""do_get_inputs(DerivativesToRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5397  return _IMP_core.DerivativesToRefined_do_get_inputs(self, m, pis)
5398 
5399  def do_get_outputs(self, m, pis):
5400  r"""do_get_outputs(DerivativesToRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5401  return _IMP_core.DerivativesToRefined_do_get_outputs(self, m, pis)
5402 
5403  def get_version_info(self):
5404  r"""get_version_info(DerivativesToRefined self) -> VersionInfo"""
5405  return _IMP_core.DerivativesToRefined_get_version_info(self)
5406  __swig_destroy__ = _IMP_core.delete_DerivativesToRefined
5407 
5408  def __str__(self):
5409  r"""__str__(DerivativesToRefined self) -> std::string"""
5410  return _IMP_core.DerivativesToRefined___str__(self)
5411 
5412  def __repr__(self):
5413  r"""__repr__(DerivativesToRefined self) -> std::string"""
5414  return _IMP_core.DerivativesToRefined___repr__(self)
5415 
5416  @staticmethod
5417  def get_from(o):
5418  return _object_cast_to_DerivativesToRefined(o)
5419 
5420 
5421 # Register DerivativesToRefined in _IMP_core:
5422 _IMP_core.DerivativesToRefined_swigregister(DerivativesToRefined)
5423 class DiameterRestraint(IMP.Restraint):
5424  r"""Proxy of C++ IMP::core::DiameterRestraint class."""
5425 
5426  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5427 
5428  def __init__(self, f, sc, diameter):
5429  r"""__init__(DiameterRestraint self, UnaryFunction f, SingletonContainer sc, IMP::Float diameter) -> DiameterRestraint"""
5430  _IMP_core.DiameterRestraint_swiginit(self, _IMP_core.new_DiameterRestraint(f, sc, diameter))
5431 
5432  def do_get_inputs(self):
5433  r"""do_get_inputs(DiameterRestraint self) -> IMP::ModelObjectsTemp"""
5434  return _IMP_core.DiameterRestraint_do_get_inputs(self)
5435 
5436  def get_version_info(self):
5437  r"""get_version_info(DiameterRestraint self) -> VersionInfo"""
5438  return _IMP_core.DiameterRestraint_get_version_info(self)
5439  __swig_destroy__ = _IMP_core.delete_DiameterRestraint
5440 
5441  def do_create_decomposition(self):
5442  r"""do_create_decomposition(DiameterRestraint self) -> IMP::Restraints"""
5443  return _IMP_core.DiameterRestraint_do_create_decomposition(self)
5444 
5445  def do_create_current_decomposition(self):
5446  r"""do_create_current_decomposition(DiameterRestraint self) -> IMP::Restraints"""
5447  return _IMP_core.DiameterRestraint_do_create_current_decomposition(self)
5448 
5449  def __str__(self):
5450  r"""__str__(DiameterRestraint self) -> std::string"""
5451  return _IMP_core.DiameterRestraint___str__(self)
5452 
5453  def __repr__(self):
5454  r"""__repr__(DiameterRestraint self) -> std::string"""
5455  return _IMP_core.DiameterRestraint___repr__(self)
5456 
5457  @staticmethod
5458  def get_from(o):
5459  return _object_cast_to_DiameterRestraint(o)
5460 
5461 
5462 # Register DiameterRestraint in _IMP_core:
5463 _IMP_core.DiameterRestraint_swigregister(DiameterRestraint)
5464 class Transform(IMP.SingletonModifier):
5465  r"""Proxy of C++ IMP::core::Transform class."""
5466 
5467  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5468 
5469  def __init__(self, *args):
5470  r"""
5471  __init__(Transform self, Transformation3D t, bool ignore_non_xyz=False) -> Transform
5472  __init__(Transform self) -> Transform
5473  """
5474  _IMP_core.Transform_swiginit(self, _IMP_core.new_Transform(*args))
5475 
5476  def do_get_inputs(self, m, pis):
5477  r"""do_get_inputs(Transform self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5478  return _IMP_core.Transform_do_get_inputs(self, m, pis)
5479 
5480  def do_get_outputs(self, m, pis):
5481  r"""do_get_outputs(Transform self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5482  return _IMP_core.Transform_do_get_outputs(self, m, pis)
5483 
5484  def get_version_info(self):
5485  r"""get_version_info(Transform self) -> VersionInfo"""
5486  return _IMP_core.Transform_get_version_info(self)
5487  __swig_destroy__ = _IMP_core.delete_Transform
5488 
5489  def __str__(self):
5490  r"""__str__(Transform self) -> std::string"""
5491  return _IMP_core.Transform___str__(self)
5492 
5493  def __repr__(self):
5494  r"""__repr__(Transform self) -> std::string"""
5495  return _IMP_core.Transform___repr__(self)
5496 
5497  @staticmethod
5498  def get_from(o):
5499  return _object_cast_to_Transform(o)
5500 
5501 
5502  def _get_as_binary(self):
5503  r"""_get_as_binary(Transform self) -> PyObject *"""
5504  return _IMP_core.Transform__get_as_binary(self)
5505 
5506  def _set_from_binary(self, p):
5507  r"""_set_from_binary(Transform self, PyObject * p)"""
5508  return _IMP_core.Transform__set_from_binary(self, p)
5509 
5510  def __getstate__(self):
5511  p = self._get_as_binary()
5512  if len(self.__dict__) > 1:
5513  d = self.__dict__.copy()
5514  del d['this']
5515  p = (d, p)
5516  return p
5517 
5518  def __setstate__(self, p):
5519  if not hasattr(self, 'this'):
5520  self.__init__()
5521  if isinstance(p, tuple):
5522  d, p = p
5523  self.__dict__.update(d)
5524  return self._set_from_binary(p)
5525 
5526 
5527 # Register Transform in _IMP_core:
5528 _IMP_core.Transform_swigregister(Transform)
5529 class Reference(IMP.Decorator):
5530  r"""Proxy of C++ IMP::core::Reference class."""
5531 
5532  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5533 
5534  def __init__(self, *args):
5535  r"""
5536  __init__(Reference self) -> Reference
5537  __init__(Reference self, Model m, ParticleIndex id) -> Reference
5538  __init__(Reference self, _ParticleAdaptor d) -> Reference
5539  """
5540  _IMP_core.Reference_swiginit(self, _IMP_core.new_Reference(*args))
5541 
5542  def show(self, *args):
5543  r"""show(Reference self, _ostream out=std::cout)"""
5544  return _IMP_core.Reference_show(self, *args)
5545 
5546  @staticmethod
5547  def setup_particle(*args):
5548  r"""
5549  setup_particle(Model m, ParticleIndex pi, _ParticleIndexAdaptor reference) -> Reference
5550  setup_particle(_ParticleAdaptor pa, _ParticleIndexAdaptor reference) -> Reference
5551  """
5552  return _IMP_core.Reference_setup_particle(*args)
5553 
5554  def get_reference_particle(self):
5555  r"""get_reference_particle(Reference self) -> Particle"""
5556  return _IMP_core.Reference_get_reference_particle(self)
5557 
5558  @staticmethod
5559  def get_is_setup(*args):
5560  r"""
5561  get_is_setup(_ParticleAdaptor p) -> bool
5562  get_is_setup(Model m, ParticleIndex pi) -> bool
5563  """
5564  return _IMP_core.Reference_get_is_setup(*args)
5565 
5566  @staticmethod
5567  def get_reference_key():
5568  r"""get_reference_key() -> ParticleIndexKey"""
5569  return _IMP_core.Reference_get_reference_key()
5570 
5571  def add_attribute(self, *args):
5572  r"""
5573  add_attribute(Reference self, FloatKey k, IMP::Float v, bool opt)
5574  add_attribute(Reference self, FloatKey a0, IMP::Float a1)
5575  add_attribute(Reference self, IntKey a0, IMP::Int a1)
5576  add_attribute(Reference self, FloatsKey a0, IMP::Floats a1)
5577  add_attribute(Reference self, IntsKey a0, IMP::Ints a1)
5578  add_attribute(Reference self, StringKey a0, IMP::String a1)
5579  add_attribute(Reference self, ParticleIndexKey a0, Particle a1)
5580  add_attribute(Reference self, ObjectKey a0, Object a1)
5581  add_attribute(Reference self, SparseFloatKey a0, IMP::Float a1)
5582  add_attribute(Reference self, SparseIntKey a0, IMP::Int a1)
5583  add_attribute(Reference self, SparseStringKey a0, IMP::String a1)
5584  add_attribute(Reference self, SparseParticleIndexKey a0, ParticleIndex a1)
5585  """
5586  return _IMP_core.Reference_add_attribute(self, *args)
5587 
5588  def get_value(self, *args):
5589  r"""
5590  get_value(Reference self, FloatKey a0) -> IMP::Float
5591  get_value(Reference self, IntKey a0) -> IMP::Int
5592  get_value(Reference self, FloatsKey a0) -> IMP::Floats
5593  get_value(Reference self, IntsKey a0) -> IMP::Ints
5594  get_value(Reference self, StringKey a0) -> IMP::String
5595  get_value(Reference self, ParticleIndexKey a0) -> Particle
5596  get_value(Reference self, ObjectKey a0) -> Object
5597  get_value(Reference self, SparseFloatKey a0) -> IMP::Float
5598  get_value(Reference self, SparseIntKey a0) -> IMP::Int
5599  get_value(Reference self, SparseStringKey a0) -> IMP::String
5600  get_value(Reference self, SparseParticleIndexKey a0) -> ParticleIndex
5601  """
5602  return _IMP_core.Reference_get_value(self, *args)
5603 
5604  def set_value(self, *args):
5605  r"""
5606  set_value(Reference self, FloatKey a0, IMP::Float a1)
5607  set_value(Reference self, IntKey a0, IMP::Int a1)
5608  set_value(Reference self, FloatsKey a0, IMP::Floats a1)
5609  set_value(Reference self, IntsKey a0, IMP::Ints a1)
5610  set_value(Reference self, StringKey a0, IMP::String a1)
5611  set_value(Reference self, ParticleIndexKey a0, Particle a1)
5612  set_value(Reference self, ObjectKey a0, Object a1)
5613  set_value(Reference self, SparseFloatKey a0, IMP::Float a1)
5614  set_value(Reference self, SparseIntKey a0, IMP::Int a1)
5615  set_value(Reference self, SparseStringKey a0, IMP::String a1)
5616  set_value(Reference self, SparseParticleIndexKey a0, ParticleIndex a1)
5617  """
5618  return _IMP_core.Reference_set_value(self, *args)
5619 
5620  def remove_attribute(self, *args):
5621  r"""
5622  remove_attribute(Reference self, FloatKey a0)
5623  remove_attribute(Reference self, IntKey a0)
5624  remove_attribute(Reference self, FloatsKey a0)
5625  remove_attribute(Reference self, IntsKey a0)
5626  remove_attribute(Reference self, StringKey a0)
5627  remove_attribute(Reference self, ParticleIndexKey a0)
5628  remove_attribute(Reference self, ObjectKey a0)
5629  remove_attribute(Reference self, SparseFloatKey a0)
5630  remove_attribute(Reference self, SparseIntKey a0)
5631  remove_attribute(Reference self, SparseStringKey a0)
5632  remove_attribute(Reference self, SparseParticleIndexKey a0)
5633  """
5634  return _IMP_core.Reference_remove_attribute(self, *args)
5635 
5636  def has_attribute(self, *args):
5637  r"""
5638  has_attribute(Reference self, FloatKey a0) -> bool
5639  has_attribute(Reference self, IntKey a0) -> bool
5640  has_attribute(Reference self, FloatsKey a0) -> bool
5641  has_attribute(Reference self, IntsKey a0) -> bool
5642  has_attribute(Reference self, StringKey a0) -> bool
5643  has_attribute(Reference self, ParticleIndexKey a0) -> bool
5644  has_attribute(Reference self, ObjectKey a0) -> bool
5645  has_attribute(Reference self, SparseFloatKey a0) -> bool
5646  has_attribute(Reference self, SparseIntKey a0) -> bool
5647  has_attribute(Reference self, SparseStringKey a0) -> bool
5648  has_attribute(Reference self, SparseParticleIndexKey a0) -> bool
5649  """
5650  return _IMP_core.Reference_has_attribute(self, *args)
5651 
5652  def get_derivative(self, a0):
5653  r"""get_derivative(Reference self, FloatKey a0) -> double"""
5654  return _IMP_core.Reference_get_derivative(self, a0)
5655 
5656  def get_name(self):
5657  r"""get_name(Reference self) -> std::string"""
5658  return _IMP_core.Reference_get_name(self)
5659 
5660  def clear_caches(self):
5661  r"""clear_caches(Reference self)"""
5662  return _IMP_core.Reference_clear_caches(self)
5663 
5664  def set_name(self, a0):
5665  r"""set_name(Reference self, std::string a0)"""
5666  return _IMP_core.Reference_set_name(self, a0)
5667 
5668  def set_check_level(self, a0):
5669  r"""set_check_level(Reference self, IMP::CheckLevel a0)"""
5670  return _IMP_core.Reference_set_check_level(self, a0)
5671 
5672  def add_to_derivative(self, a0, a1, a2):
5673  r"""add_to_derivative(Reference self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
5674  return _IMP_core.Reference_add_to_derivative(self, a0, a1, a2)
5675 
5676  def set_is_optimized(self, a0, a1):
5677  r"""set_is_optimized(Reference self, FloatKey a0, bool a1)"""
5678  return _IMP_core.Reference_set_is_optimized(self, a0, a1)
5679 
5680  def get_is_optimized(self, a0):
5681  r"""get_is_optimized(Reference self, FloatKey a0) -> bool"""
5682  return _IMP_core.Reference_get_is_optimized(self, a0)
5683 
5684  def get_check_level(self):
5685  r"""get_check_level(Reference self) -> IMP::CheckLevel"""
5686  return _IMP_core.Reference_get_check_level(self)
5687 
5688  def __eq__(self, *args):
5689  r"""
5690  __eq__(Reference self, Reference o) -> bool
5691  __eq__(Reference self, Particle d) -> bool
5692  """
5693  return _IMP_core.Reference___eq__(self, *args)
5694 
5695  def __ne__(self, *args):
5696  r"""
5697  __ne__(Reference self, Reference o) -> bool
5698  __ne__(Reference self, Particle d) -> bool
5699  """
5700  return _IMP_core.Reference___ne__(self, *args)
5701 
5702  def __le__(self, *args):
5703  r"""
5704  __le__(Reference self, Reference o) -> bool
5705  __le__(Reference self, Particle d) -> bool
5706  """
5707  return _IMP_core.Reference___le__(self, *args)
5708 
5709  def __lt__(self, *args):
5710  r"""
5711  __lt__(Reference self, Reference o) -> bool
5712  __lt__(Reference self, Particle d) -> bool
5713  """
5714  return _IMP_core.Reference___lt__(self, *args)
5715 
5716  def __ge__(self, *args):
5717  r"""
5718  __ge__(Reference self, Reference o) -> bool
5719  __ge__(Reference self, Particle d) -> bool
5720  """
5721  return _IMP_core.Reference___ge__(self, *args)
5722 
5723  def __gt__(self, *args):
5724  r"""
5725  __gt__(Reference self, Reference o) -> bool
5726  __gt__(Reference self, Particle d) -> bool
5727  """
5728  return _IMP_core.Reference___gt__(self, *args)
5729 
5730  def __hash__(self):
5731  r"""__hash__(Reference self) -> std::size_t"""
5732  return _IMP_core.Reference___hash__(self)
5733 
5734  def __str__(self):
5735  r"""__str__(Reference self) -> std::string"""
5736  return _IMP_core.Reference___str__(self)
5737 
5738  def __repr__(self):
5739  r"""__repr__(Reference self) -> std::string"""
5740  return _IMP_core.Reference___repr__(self)
5741 
5742  def _get_as_binary(self):
5743  r"""_get_as_binary(Reference self) -> PyObject *"""
5744  return _IMP_core.Reference__get_as_binary(self)
5745 
5746  def _set_from_binary(self, p):
5747  r"""_set_from_binary(Reference self, PyObject * p)"""
5748  return _IMP_core.Reference__set_from_binary(self, p)
5749 
5750  def __getstate__(self):
5751  p = self._get_as_binary()
5752  if len(self.__dict__) > 1:
5753  d = self.__dict__.copy()
5754  del d['this']
5755  p = (d, p)
5756  return p
5757 
5758  def __setstate__(self, p):
5759  if not hasattr(self, 'this'):
5760  self.__init__()
5761  if isinstance(p, tuple):
5762  d, p = p
5763  self.__dict__.update(d)
5764  return self._set_from_binary(p)
5765 
5766  __swig_destroy__ = _IMP_core.delete_Reference
5767 
5768 # Register Reference in _IMP_core:
5769 _IMP_core.Reference_swigregister(Reference)
5770 class TransformationAndReflectionSymmetry(IMP.SingletonModifier):
5771  r"""Proxy of C++ IMP::core::TransformationAndReflectionSymmetry class."""
5772 
5773  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5774 
5775  def __init__(self, t, r):
5776  r"""__init__(TransformationAndReflectionSymmetry self, Transformation3D t, Reflection3D r) -> TransformationAndReflectionSymmetry"""
5777  _IMP_core.TransformationAndReflectionSymmetry_swiginit(self, _IMP_core.new_TransformationAndReflectionSymmetry(t, r))
5778 
5779  def do_get_inputs(self, m, pis):
5780  r"""do_get_inputs(TransformationAndReflectionSymmetry self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5781  return _IMP_core.TransformationAndReflectionSymmetry_do_get_inputs(self, m, pis)
5782 
5783  def do_get_outputs(self, m, pis):
5784  r"""do_get_outputs(TransformationAndReflectionSymmetry self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5785  return _IMP_core.TransformationAndReflectionSymmetry_do_get_outputs(self, m, pis)
5786 
5787  def get_version_info(self):
5788  r"""get_version_info(TransformationAndReflectionSymmetry self) -> VersionInfo"""
5789  return _IMP_core.TransformationAndReflectionSymmetry_get_version_info(self)
5790  __swig_destroy__ = _IMP_core.delete_TransformationAndReflectionSymmetry
5791 
5792  def __str__(self):
5793  r"""__str__(TransformationAndReflectionSymmetry self) -> std::string"""
5794  return _IMP_core.TransformationAndReflectionSymmetry___str__(self)
5795 
5796  def __repr__(self):
5797  r"""__repr__(TransformationAndReflectionSymmetry self) -> std::string"""
5798  return _IMP_core.TransformationAndReflectionSymmetry___repr__(self)
5799 
5800  @staticmethod
5801  def get_from(o):
5802  return _object_cast_to_TransformationAndReflectionSymmetry(o)
5803 
5804 
5805 # Register TransformationAndReflectionSymmetry in _IMP_core:
5806 _IMP_core.TransformationAndReflectionSymmetry_swigregister(TransformationAndReflectionSymmetry)
5807 class TransformationSymmetry(IMP.SingletonModifier):
5808  r"""Proxy of C++ IMP::core::TransformationSymmetry class."""
5809 
5810  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5811 
5812  def __init__(self, *args):
5813  r"""
5814  __init__(TransformationSymmetry self, Transformation3D t) -> TransformationSymmetry
5815  __init__(TransformationSymmetry self, ParticleIndex rb_pi) -> TransformationSymmetry
5816  """
5817  _IMP_core.TransformationSymmetry_swiginit(self, _IMP_core.new_TransformationSymmetry(*args))
5818 
5819  def get_transformation(self):
5820  r"""get_transformation(TransformationSymmetry self) -> Transformation3D"""
5821  return _IMP_core.TransformationSymmetry_get_transformation(self)
5822 
5823  def set_transformation(self, t):
5824  r"""set_transformation(TransformationSymmetry self, Transformation3D t)"""
5825  return _IMP_core.TransformationSymmetry_set_transformation(self, t)
5826 
5827  def do_get_inputs(self, m, pis):
5828  r"""do_get_inputs(TransformationSymmetry self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5829  return _IMP_core.TransformationSymmetry_do_get_inputs(self, m, pis)
5830 
5831  def do_get_outputs(self, m, pis):
5832  r"""do_get_outputs(TransformationSymmetry self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5833  return _IMP_core.TransformationSymmetry_do_get_outputs(self, m, pis)
5834 
5835  def get_version_info(self):
5836  r"""get_version_info(TransformationSymmetry self) -> VersionInfo"""
5837  return _IMP_core.TransformationSymmetry_get_version_info(self)
5838  __swig_destroy__ = _IMP_core.delete_TransformationSymmetry
5839 
5840  def __str__(self):
5841  r"""__str__(TransformationSymmetry self) -> std::string"""
5842  return _IMP_core.TransformationSymmetry___str__(self)
5843 
5844  def __repr__(self):
5845  r"""__repr__(TransformationSymmetry self) -> std::string"""
5846  return _IMP_core.TransformationSymmetry___repr__(self)
5847 
5848  @staticmethod
5849  def get_from(o):
5850  return _object_cast_to_TransformationSymmetry(o)
5851 
5852 
5853 # Register TransformationSymmetry in _IMP_core:
5854 _IMP_core.TransformationSymmetry_swigregister(TransformationSymmetry)
5855 class TransformationSymmetryMover(MonteCarloMover):
5856  r"""Proxy of C++ IMP::core::TransformationSymmetryMover class."""
5857 
5858  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5859 
5860  def __init__(self, m, symm, pivot, max_translation, max_rotation):
5861  r"""__init__(TransformationSymmetryMover self, Model m, TransformationSymmetry symm, ParticleIndex pivot, IMP::Float max_translation, IMP::Float max_rotation) -> TransformationSymmetryMover"""
5862  _IMP_core.TransformationSymmetryMover_swiginit(self, _IMP_core.new_TransformationSymmetryMover(m, symm, pivot, max_translation, max_rotation))
5863 
5864  def set_maximum_translation(self, mt):
5865  r"""set_maximum_translation(TransformationSymmetryMover self, IMP::Float mt)"""
5866  return _IMP_core.TransformationSymmetryMover_set_maximum_translation(self, mt)
5867 
5868  def set_maximum_rotation(self, mr):
5869  r"""set_maximum_rotation(TransformationSymmetryMover self, IMP::Float mr)"""
5870  return _IMP_core.TransformationSymmetryMover_set_maximum_rotation(self, mr)
5871 
5872  def get_maximum_translation(self):
5873  r"""get_maximum_translation(TransformationSymmetryMover self) -> IMP::Float"""
5874  return _IMP_core.TransformationSymmetryMover_get_maximum_translation(self)
5875 
5876  def get_maximum_rotation(self):
5877  r"""get_maximum_rotation(TransformationSymmetryMover self) -> IMP::Float"""
5878  return _IMP_core.TransformationSymmetryMover_get_maximum_rotation(self)
5879 
5880  def get_version_info(self):
5881  r"""get_version_info(TransformationSymmetryMover self) -> VersionInfo"""
5882  return _IMP_core.TransformationSymmetryMover_get_version_info(self)
5883  __swig_destroy__ = _IMP_core.delete_TransformationSymmetryMover
5884 
5885  def __str__(self):
5886  r"""__str__(TransformationSymmetryMover self) -> std::string"""
5887  return _IMP_core.TransformationSymmetryMover___str__(self)
5888 
5889  def __repr__(self):
5890  r"""__repr__(TransformationSymmetryMover self) -> std::string"""
5891  return _IMP_core.TransformationSymmetryMover___repr__(self)
5892 
5893  @staticmethod
5894  def get_from(o):
5895  return _object_cast_to_TransformationSymmetryMover(o)
5896 
5897 
5898 # Register TransformationSymmetryMover in _IMP_core:
5899 _IMP_core.TransformationSymmetryMover_swigregister(TransformationSymmetryMover)
5900 class DihedralRestraint(IMP.Restraint):
5901  r"""Proxy of C++ IMP::core::DihedralRestraint class."""
5902 
5903  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5904 
5905  def __init__(self, m, score_func, p1, p2, p3, p4):
5906  r"""__init__(DihedralRestraint self, Model m, UnaryFunction score_func, _ParticleIndexAdaptor p1, _ParticleIndexAdaptor p2, _ParticleIndexAdaptor p3, _ParticleIndexAdaptor p4) -> DihedralRestraint"""
5907  _IMP_core.DihedralRestraint_swiginit(self, _IMP_core.new_DihedralRestraint(m, score_func, p1, p2, p3, p4))
5908 
5909  def do_get_inputs(self):
5910  r"""do_get_inputs(DihedralRestraint self) -> IMP::ModelObjectsTemp"""
5911  return _IMP_core.DihedralRestraint_do_get_inputs(self)
5912 
5913  def get_version_info(self):
5914  r"""get_version_info(DihedralRestraint self) -> VersionInfo"""
5915  return _IMP_core.DihedralRestraint_get_version_info(self)
5916  __swig_destroy__ = _IMP_core.delete_DihedralRestraint
5917 
5918  def __str__(self):
5919  r"""__str__(DihedralRestraint self) -> std::string"""
5920  return _IMP_core.DihedralRestraint___str__(self)
5921 
5922  def __repr__(self):
5923  r"""__repr__(DihedralRestraint self) -> std::string"""
5924  return _IMP_core.DihedralRestraint___repr__(self)
5925 
5926  @staticmethod
5927  def get_from(o):
5928  return _object_cast_to_DihedralRestraint(o)
5929 
5930 
5931 # Register DihedralRestraint in _IMP_core:
5932 _IMP_core.DihedralRestraint_swigregister(DihedralRestraint)
5933 class DistancePairScore(IMP.PairScore):
5934  r"""Proxy of C++ IMP::core::DistancePairScore class."""
5935 
5936  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5937 
5938  def __init__(self, *args):
5939  r"""
5940  __init__(DistancePairScore self, UnaryFunction uf, std::string name="DistancePairScore%1%") -> DistancePairScore
5941  __init__(DistancePairScore self) -> DistancePairScore
5942  """
5943  _IMP_core.DistancePairScore_swiginit(self, _IMP_core.new_DistancePairScore(*args))
5944 
5945  def do_get_inputs(self, m, pis):
5946  r"""do_get_inputs(DistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5947  return _IMP_core.DistancePairScore_do_get_inputs(self, m, pis)
5948 
5949  def get_score_functor(self, *args):
5950  r"""
5951  get_score_functor(DistancePairScore self) -> UnaryFunctionEvaluate
5952  get_score_functor(DistancePairScore self) -> UnaryFunctionEvaluate
5953  """
5954  return _IMP_core.DistancePairScore_get_score_functor(self, *args)
5955 
5956  def get_version_info(self):
5957  r"""get_version_info(DistancePairScore self) -> VersionInfo"""
5958  return _IMP_core.DistancePairScore_get_version_info(self)
5959  __swig_destroy__ = _IMP_core.delete_DistancePairScore
5960 
5961  def __str__(self):
5962  r"""__str__(DistancePairScore self) -> std::string"""
5963  return _IMP_core.DistancePairScore___str__(self)
5964 
5965  def __repr__(self):
5966  r"""__repr__(DistancePairScore self) -> std::string"""
5967  return _IMP_core.DistancePairScore___repr__(self)
5968 
5969  @staticmethod
5970  def get_from(o):
5971  return _object_cast_to_DistancePairScore(o)
5972 
5973 
5974  def _get_as_binary(self):
5975  r"""_get_as_binary(DistancePairScore self) -> PyObject *"""
5976  return _IMP_core.DistancePairScore__get_as_binary(self)
5977 
5978  def _set_from_binary(self, p):
5979  r"""_set_from_binary(DistancePairScore self, PyObject * p)"""
5980  return _IMP_core.DistancePairScore__set_from_binary(self, p)
5981 
5982  def __getstate__(self):
5983  p = self._get_as_binary()
5984  if len(self.__dict__) > 1:
5985  d = self.__dict__.copy()
5986  del d['this']
5987  p = (d, p)
5988  return p
5989 
5990  def __setstate__(self, p):
5991  if not hasattr(self, 'this'):
5992  self.__init__()
5993  if isinstance(p, tuple):
5994  d, p = p
5995  self.__dict__.update(d)
5996  return self._set_from_binary(p)
5997 
5998 
5999  def _get_jax(self):
6000  import jax.numpy as jnp
6001  import functools
6002  def jax_score(jm, indexes, uf):
6003  xyzs = jm['xyz'][indexes]
6004  diff = xyzs[:,0] - xyzs[:,1]
6005  drs = jnp.linalg.norm(diff, axis=1)
6006  return uf(drs)
6007  sfnc = self.get_score_functor()
6008  uf = sfnc.get_unary_function().get_derived_object()
6009  f = functools.partial(jax_score, uf=uf._get_jax())
6010  return self._wrap_jax(f)
6011 
6012 
6013 # Register DistancePairScore in _IMP_core:
6014 _IMP_core.DistancePairScore_swigregister(DistancePairScore)
6015 class HarmonicDistancePairScore(IMP.PairScore):
6016  r"""Proxy of C++ IMP::core::HarmonicDistancePairScore class."""
6017 
6018  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6019 
6020  def __init__(self, *args):
6021  r"""
6022  __init__(HarmonicDistancePairScore self, double x0, double k, std::string name="HarmonicDistancePairScore%1%") -> HarmonicDistancePairScore
6023  __init__(HarmonicDistancePairScore self) -> HarmonicDistancePairScore
6024  """
6025  _IMP_core.HarmonicDistancePairScore_swiginit(self, _IMP_core.new_HarmonicDistancePairScore(*args))
6026 
6027  def do_get_inputs(self, m, pis):
6028  r"""do_get_inputs(HarmonicDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6029  return _IMP_core.HarmonicDistancePairScore_do_get_inputs(self, m, pis)
6030 
6031  def get_score_functor(self, *args):
6032  r"""
6033  get_score_functor(HarmonicDistancePairScore self) -> IMP::core::HarmonicDistanceScore
6034  get_score_functor(HarmonicDistancePairScore self) -> IMP::core::HarmonicDistanceScore const &
6035  """
6036  return _IMP_core.HarmonicDistancePairScore_get_score_functor(self, *args)
6037 
6038  def get_x0(self):
6039  r"""get_x0(HarmonicDistancePairScore self) -> double"""
6040  return _IMP_core.HarmonicDistancePairScore_get_x0(self)
6041 
6042  def get_k(self):
6043  r"""get_k(HarmonicDistancePairScore self) -> double"""
6044  return _IMP_core.HarmonicDistancePairScore_get_k(self)
6045 
6046  def get_version_info(self):
6047  r"""get_version_info(HarmonicDistancePairScore self) -> VersionInfo"""
6048  return _IMP_core.HarmonicDistancePairScore_get_version_info(self)
6049  __swig_destroy__ = _IMP_core.delete_HarmonicDistancePairScore
6050 
6051  def __str__(self):
6052  r"""__str__(HarmonicDistancePairScore self) -> std::string"""
6053  return _IMP_core.HarmonicDistancePairScore___str__(self)
6054 
6055  def __repr__(self):
6056  r"""__repr__(HarmonicDistancePairScore self) -> std::string"""
6057  return _IMP_core.HarmonicDistancePairScore___repr__(self)
6058 
6059  @staticmethod
6060  def get_from(o):
6061  return _object_cast_to_HarmonicDistancePairScore(o)
6062 
6063 
6064  def _get_as_binary(self):
6065  r"""_get_as_binary(HarmonicDistancePairScore self) -> PyObject *"""
6066  return _IMP_core.HarmonicDistancePairScore__get_as_binary(self)
6067 
6068  def _set_from_binary(self, p):
6069  r"""_set_from_binary(HarmonicDistancePairScore self, PyObject * p)"""
6070  return _IMP_core.HarmonicDistancePairScore__set_from_binary(self, p)
6071 
6072  def __getstate__(self):
6073  p = self._get_as_binary()
6074  if len(self.__dict__) > 1:
6075  d = self.__dict__.copy()
6076  del d['this']
6077  p = (d, p)
6078  return p
6079 
6080  def __setstate__(self, p):
6081  if not hasattr(self, 'this'):
6082  self.__init__()
6083  if isinstance(p, tuple):
6084  d, p = p
6085  self.__dict__.update(d)
6086  return self._set_from_binary(p)
6087 
6088 
6089  def _get_jax(self):
6090  import jax.numpy as jnp
6091  import functools
6092  def jax_harmonic_distance_pair_score(jm, indexes, d, k):
6093  xyzs = jm['xyz'][indexes]
6094  diff = xyzs[:,0] - xyzs[:,1]
6095  drs = jnp.linalg.norm(diff, axis=1)
6096  return 0.5 * k * (d - drs)**2
6097  f = functools.partial(jax_harmonic_distance_pair_score,
6098  d=self.get_x0(), k=self.get_k())
6099  return self._wrap_jax(f)
6100 
6101 
6102 # Register HarmonicDistancePairScore in _IMP_core:
6103 _IMP_core.HarmonicDistancePairScore_swigregister(HarmonicDistancePairScore)
6104 class DistanceRestraint(IMP.Restraint):
6105  r"""Proxy of C++ IMP::core::DistanceRestraint class."""
6106 
6107  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6108 
6109  def __init__(self, *args):
6110  r"""
6111  __init__(DistanceRestraint self, Model m, UnaryFunction score_func, _ParticleIndexAdaptor a, _ParticleIndexAdaptor b, std::string name="DistanceRestraint %1%") -> DistanceRestraint
6112  __init__(DistanceRestraint self) -> DistanceRestraint
6113  """
6114  _IMP_core.DistanceRestraint_swiginit(self, _IMP_core.new_DistanceRestraint(*args))
6115 
6116  def get_score_object(self):
6117  r"""get_score_object(DistanceRestraint self) -> DistancePairScore"""
6118  return _IMP_core.DistanceRestraint_get_score_object(self)
6119 
6120  def get_index(self):
6121  r"""get_index(DistanceRestraint self) -> IMP::core::DistancePairScore::IndexArgument"""
6122  return _IMP_core.DistanceRestraint_get_index(self)
6123 
6124  def get_version_info(self):
6125  r"""get_version_info(DistanceRestraint self) -> VersionInfo"""
6126  return _IMP_core.DistanceRestraint_get_version_info(self)
6127  __swig_destroy__ = _IMP_core.delete_DistanceRestraint
6128 
6129  def __str__(self):
6130  r"""__str__(DistanceRestraint self) -> std::string"""
6131  return _IMP_core.DistanceRestraint___str__(self)
6132 
6133  def __repr__(self):
6134  r"""__repr__(DistanceRestraint self) -> std::string"""
6135  return _IMP_core.DistanceRestraint___repr__(self)
6136 
6137  @staticmethod
6138  def get_from(o):
6139  return _object_cast_to_DistanceRestraint(o)
6140 
6141 
6142  def _get_as_binary(self):
6143  r"""_get_as_binary(DistanceRestraint self) -> PyObject *"""
6144  return _IMP_core.DistanceRestraint__get_as_binary(self)
6145 
6146  def _set_from_binary(self, p):
6147  r"""_set_from_binary(DistanceRestraint self, PyObject * p)"""
6148  return _IMP_core.DistanceRestraint__set_from_binary(self, p)
6149 
6150  def __getstate__(self):
6151  p = self._get_as_binary()
6152  if len(self.__dict__) > 1:
6153  d = self.__dict__.copy()
6154  del d['this']
6155  p = (d, p)
6156  return p
6157 
6158  def __setstate__(self, p):
6159  if not hasattr(self, 'this'):
6160  self.__init__()
6161  if isinstance(p, tuple):
6162  d, p = p
6163  self.__dict__.update(d)
6164  return self._set_from_binary(p)
6165 
6166 
6167  def _get_jax(self):
6168  import jax.numpy as jnp
6169  ps = self.get_score_object()
6170  ji = ps._get_jax()
6171  indexes = jnp.array([self.get_index()])
6172  return self._wrap_jax(lambda jm: ji.score_func(jm, indexes))
6173 
6174 
6175 # Register DistanceRestraint in _IMP_core:
6176 _IMP_core.DistanceRestraint_swigregister(DistanceRestraint)
6177 class SphereDistanceToSingletonScore(IMP.SingletonScore):
6178  r"""Proxy of C++ IMP::core::SphereDistanceToSingletonScore class."""
6179 
6180  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6181 
6182  def __init__(self, f, pt):
6183  r"""__init__(SphereDistanceToSingletonScore self, UnaryFunction f, Vector3D pt) -> SphereDistanceToSingletonScore"""
6184  _IMP_core.SphereDistanceToSingletonScore_swiginit(self, _IMP_core.new_SphereDistanceToSingletonScore(f, pt))
6185 
6186  def do_get_inputs(self, m, pis):
6187  r"""do_get_inputs(SphereDistanceToSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6188  return _IMP_core.SphereDistanceToSingletonScore_do_get_inputs(self, m, pis)
6189 
6190  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
6191  r"""evaluate_indexes(SphereDistanceToSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
6192  return _IMP_core.SphereDistanceToSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
6193 
6194  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
6195  r"""evaluate_indexes_scores(SphereDistanceToSingletonScore 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"""
6196  return _IMP_core.SphereDistanceToSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
6197 
6198  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
6199  r"""evaluate_indexes_delta(SphereDistanceToSingletonScore 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"""
6200  return _IMP_core.SphereDistanceToSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
6201 
6202  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
6203  r"""evaluate_if_good_indexes(SphereDistanceToSingletonScore 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"""
6204  return _IMP_core.SphereDistanceToSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
6205 
6206  def get_version_info(self):
6207  r"""get_version_info(SphereDistanceToSingletonScore self) -> VersionInfo"""
6208  return _IMP_core.SphereDistanceToSingletonScore_get_version_info(self)
6209  __swig_destroy__ = _IMP_core.delete_SphereDistanceToSingletonScore
6210 
6211  def __str__(self):
6212  r"""__str__(SphereDistanceToSingletonScore self) -> std::string"""
6213  return _IMP_core.SphereDistanceToSingletonScore___str__(self)
6214 
6215  def __repr__(self):
6216  r"""__repr__(SphereDistanceToSingletonScore self) -> std::string"""
6217  return _IMP_core.SphereDistanceToSingletonScore___repr__(self)
6218 
6219  @staticmethod
6220  def get_from(o):
6221  return _object_cast_to_SphereDistanceToSingletonScore(o)
6222 
6223 
6224 # Register SphereDistanceToSingletonScore in _IMP_core:
6225 _IMP_core.SphereDistanceToSingletonScore_swigregister(SphereDistanceToSingletonScore)
6226 class ExcludedVolumeRestraint(IMP.Restraint):
6227  r"""Proxy of C++ IMP::core::ExcludedVolumeRestraint class."""
6228 
6229  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6230 
6231  def __init__(self, *args):
6232  r"""__init__(ExcludedVolumeRestraint self, _SingletonContainerAdaptor sc, double k=1, double slack=10, std::string name="ExcludedVolumeRestraint%1%") -> ExcludedVolumeRestraint"""
6233  _IMP_core.ExcludedVolumeRestraint_swiginit(self, _IMP_core.new_ExcludedVolumeRestraint(*args))
6234 
6235  def do_get_inputs(self):
6236  r"""do_get_inputs(ExcludedVolumeRestraint self) -> IMP::ModelObjectsTemp"""
6237  return _IMP_core.ExcludedVolumeRestraint_do_get_inputs(self)
6238 
6239  def get_version_info(self):
6240  r"""get_version_info(ExcludedVolumeRestraint self) -> VersionInfo"""
6241  return _IMP_core.ExcludedVolumeRestraint_get_version_info(self)
6242  __swig_destroy__ = _IMP_core.delete_ExcludedVolumeRestraint
6243 
6244  def do_create_decomposition(self):
6245  r"""do_create_decomposition(ExcludedVolumeRestraint self) -> IMP::Restraints"""
6246  return _IMP_core.ExcludedVolumeRestraint_do_create_decomposition(self)
6247 
6248  def do_create_current_decomposition(self):
6249  r"""do_create_current_decomposition(ExcludedVolumeRestraint self) -> IMP::Restraints"""
6250  return _IMP_core.ExcludedVolumeRestraint_do_create_current_decomposition(self)
6251 
6252  def get_indexes(self):
6253  r"""get_indexes(ExcludedVolumeRestraint self) -> IMP::ParticleIndexPairs const &"""
6254  return _IMP_core.ExcludedVolumeRestraint_get_indexes(self)
6255  def __get_pair_filters(self): return IMP._list_util.VarList(getdimfunc=self.get_number_of_pair_filters, getfunc=self.get_pair_filter, erasefunc=self.erase_pair_filter, appendfunc=self.add_pair_filter, extendfunc=self.add_pair_filters, clearfunc=self.clear_pair_filters, indexfunc=self._python_index_pair_filter)
6256  def __set_pair_filters(self, obj): IMP._list_util.set_varlist(self.pair_filters, obj)
6257  def __del_pair_filters(self): IMP._list_util.del_varlist(self.pair_filters)
6258  pair_filters = property(__get_pair_filters, __set_pair_filters, __del_pair_filters, doc="List of ##ucnames")
6259 
6260  def remove_pair_filter(self, d):
6261  r"""remove_pair_filter(ExcludedVolumeRestraint self, PairPredicate d)"""
6262  return _IMP_core.ExcludedVolumeRestraint_remove_pair_filter(self, d)
6263 
6264  def _python_index_pair_filter(self, d, start, stop):
6265  r"""_python_index_pair_filter(ExcludedVolumeRestraint self, PairPredicate d, unsigned int start, unsigned int stop) -> unsigned int"""
6266  return _IMP_core.ExcludedVolumeRestraint__python_index_pair_filter(self, d, start, stop)
6267 
6268  def remove_pair_filters(self, d):
6269  r"""remove_pair_filters(ExcludedVolumeRestraint self, IMP::PairPredicates const & d)"""
6270  return _IMP_core.ExcludedVolumeRestraint_remove_pair_filters(self, d)
6271 
6272  def set_pair_filters(self, ps):
6273  r"""set_pair_filters(ExcludedVolumeRestraint self, IMP::PairPredicates const & ps)"""
6274  return _IMP_core.ExcludedVolumeRestraint_set_pair_filters(self, ps)
6275 
6276  def set_pair_filters_order(self, objs):
6277  r"""set_pair_filters_order(ExcludedVolumeRestraint self, IMP::PairPredicates const & objs)"""
6278  return _IMP_core.ExcludedVolumeRestraint_set_pair_filters_order(self, objs)
6279 
6280  def add_pair_filter(self, obj):
6281  r"""add_pair_filter(ExcludedVolumeRestraint self, PairPredicate obj) -> unsigned int"""
6282  return _IMP_core.ExcludedVolumeRestraint_add_pair_filter(self, obj)
6283 
6284  def add_pair_filters(self, objs):
6285  r"""add_pair_filters(ExcludedVolumeRestraint self, IMP::PairPredicates const & objs)"""
6286  return _IMP_core.ExcludedVolumeRestraint_add_pair_filters(self, objs)
6287 
6288  def clear_pair_filters(self):
6289  r"""clear_pair_filters(ExcludedVolumeRestraint self)"""
6290  return _IMP_core.ExcludedVolumeRestraint_clear_pair_filters(self)
6291 
6292  def get_number_of_pair_filters(self):
6293  r"""get_number_of_pair_filters(ExcludedVolumeRestraint self) -> unsigned int"""
6294  return _IMP_core.ExcludedVolumeRestraint_get_number_of_pair_filters(self)
6295 
6296  def get_has_pair_filters(self):
6297  r"""get_has_pair_filters(ExcludedVolumeRestraint self) -> bool"""
6298  return _IMP_core.ExcludedVolumeRestraint_get_has_pair_filters(self)
6299 
6300  def get_pair_filter(self, i):
6301  r"""get_pair_filter(ExcludedVolumeRestraint self, unsigned int i) -> PairPredicate"""
6302  return _IMP_core.ExcludedVolumeRestraint_get_pair_filter(self, i)
6303 
6304  def get_pair_filters(self):
6305  r"""get_pair_filters(ExcludedVolumeRestraint self) -> IMP::PairPredicates"""
6306  return _IMP_core.ExcludedVolumeRestraint_get_pair_filters(self)
6307 
6308  def erase_pair_filter(self, i):
6309  r"""erase_pair_filter(ExcludedVolumeRestraint self, unsigned int i)"""
6310  return _IMP_core.ExcludedVolumeRestraint_erase_pair_filter(self, i)
6311 
6312  def reserve_pair_filters(self, sz):
6313  r"""reserve_pair_filters(ExcludedVolumeRestraint self, unsigned int sz)"""
6314  return _IMP_core.ExcludedVolumeRestraint_reserve_pair_filters(self, sz)
6315 
6316  def __str__(self):
6317  r"""__str__(ExcludedVolumeRestraint self) -> std::string"""
6318  return _IMP_core.ExcludedVolumeRestraint___str__(self)
6319 
6320  def __repr__(self):
6321  r"""__repr__(ExcludedVolumeRestraint self) -> std::string"""
6322  return _IMP_core.ExcludedVolumeRestraint___repr__(self)
6323 
6324  @staticmethod
6325  def get_from(o):
6326  return _object_cast_to_ExcludedVolumeRestraint(o)
6327 
6328 
6329 # Register ExcludedVolumeRestraint in _IMP_core:
6330 _IMP_core.ExcludedVolumeRestraint_swigregister(ExcludedVolumeRestraint)
6331 class FixedRefiner(IMP.Refiner):
6332  r"""Proxy of C++ IMP::core::FixedRefiner class."""
6333 
6334  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6335 
6336  def __init__(self, *args):
6337  r"""
6338  __init__(FixedRefiner self, IMP::ParticlesTemp const & ps) -> FixedRefiner
6339  __init__(FixedRefiner self, Model m, IMP::ParticleIndexes const & pis) -> FixedRefiner
6340  """
6341  _IMP_core.FixedRefiner_swiginit(self, _IMP_core.new_FixedRefiner(*args))
6342 
6343  def do_get_inputs(self, m, pis):
6344  r"""do_get_inputs(FixedRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6345  return _IMP_core.FixedRefiner_do_get_inputs(self, m, pis)
6346 
6347  def get_version_info(self):
6348  r"""get_version_info(FixedRefiner self) -> VersionInfo"""
6349  return _IMP_core.FixedRefiner_get_version_info(self)
6350  __swig_destroy__ = _IMP_core.delete_FixedRefiner
6351 
6352  def __str__(self):
6353  r"""__str__(FixedRefiner self) -> std::string"""
6354  return _IMP_core.FixedRefiner___str__(self)
6355 
6356  def __repr__(self):
6357  r"""__repr__(FixedRefiner self) -> std::string"""
6358  return _IMP_core.FixedRefiner___repr__(self)
6359 
6360  @staticmethod
6361  def get_from(o):
6362  return _object_cast_to_FixedRefiner(o)
6363 
6364 
6365 # Register FixedRefiner in _IMP_core:
6366 _IMP_core.FixedRefiner_swigregister(FixedRefiner)
6367 class GridClosePairsFinder(ClosePairsFinder):
6368  r"""Proxy of C++ IMP::core::GridClosePairsFinder class."""
6369 
6370  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6371 
6372  def __init__(self):
6373  r"""__init__(GridClosePairsFinder self) -> GridClosePairsFinder"""
6374  _IMP_core.GridClosePairsFinder_swiginit(self, _IMP_core.new_GridClosePairsFinder())
6375 
6376  def get_close_pairs(self, *args):
6377  r"""
6378  get_close_pairs(GridClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
6379  get_close_pairs(GridClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bas, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
6380  get_close_pairs(GridClosePairsFinder self, Model m, IMP::ParticleIndexes const & pc) -> IMP::ParticleIndexPairs
6381  get_close_pairs(GridClosePairsFinder self, Model m, IMP::ParticleIndexes const & pca, IMP::ParticleIndexes const & pcb) -> IMP::ParticleIndexPairs
6382  """
6383  return _IMP_core.GridClosePairsFinder_get_close_pairs(self, *args)
6384 
6385  def do_get_inputs(self, m, pis):
6386  r"""do_get_inputs(GridClosePairsFinder self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6387  return _IMP_core.GridClosePairsFinder_do_get_inputs(self, m, pis)
6388 
6389  def get_version_info(self):
6390  r"""get_version_info(GridClosePairsFinder self) -> VersionInfo"""
6391  return _IMP_core.GridClosePairsFinder_get_version_info(self)
6392  __swig_destroy__ = _IMP_core.delete_GridClosePairsFinder
6393 
6394  def __str__(self):
6395  r"""__str__(GridClosePairsFinder self) -> std::string"""
6396  return _IMP_core.GridClosePairsFinder___str__(self)
6397 
6398  def __repr__(self):
6399  r"""__repr__(GridClosePairsFinder self) -> std::string"""
6400  return _IMP_core.GridClosePairsFinder___repr__(self)
6401 
6402  @staticmethod
6403  def get_from(o):
6404  return _object_cast_to_GridClosePairsFinder(o)
6405 
6406 
6407  def _get_as_binary(self):
6408  r"""_get_as_binary(GridClosePairsFinder self) -> PyObject *"""
6409  return _IMP_core.GridClosePairsFinder__get_as_binary(self)
6410 
6411  def _set_from_binary(self, p):
6412  r"""_set_from_binary(GridClosePairsFinder self, PyObject * p)"""
6413  return _IMP_core.GridClosePairsFinder__set_from_binary(self, p)
6414 
6415  def __getstate__(self):
6416  p = self._get_as_binary()
6417  if len(self.__dict__) > 1:
6418  d = self.__dict__.copy()
6419  del d['this']
6420  p = (d, p)
6421  return p
6422 
6423  def __setstate__(self, p):
6424  if not hasattr(self, 'this'):
6425  self.__init__()
6426  if isinstance(p, tuple):
6427  d, p = p
6428  self.__dict__.update(d)
6429  return self._set_from_binary(p)
6430 
6431 
6432 # Register GridClosePairsFinder in _IMP_core:
6433 _IMP_core.GridClosePairsFinder_swigregister(GridClosePairsFinder)
6434 class Harmonic(IMP.UnaryFunction):
6435  r"""Proxy of C++ IMP::core::Harmonic class."""
6436 
6437  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6438 
6439  def __init__(self, *args):
6440  r"""
6441  __init__(Harmonic self, IMP::Float mean, IMP::Float k) -> Harmonic
6442  __init__(Harmonic self) -> Harmonic
6443  """
6444  _IMP_core.Harmonic_swiginit(self, _IMP_core.new_Harmonic(*args))
6445 
6446  def get_version_info(self):
6447  r"""get_version_info(Harmonic self) -> VersionInfo"""
6448  return _IMP_core.Harmonic_get_version_info(self)
6449  __swig_destroy__ = _IMP_core.delete_Harmonic
6450 
6451  def get_mean(self):
6452  r"""get_mean(Harmonic self) -> IMP::Float"""
6453  return _IMP_core.Harmonic_get_mean(self)
6454 
6455  def get_k(self):
6456  r"""get_k(Harmonic self) -> IMP::Float"""
6457  return _IMP_core.Harmonic_get_k(self)
6458 
6459  def set_mean(self, mean):
6460  r"""set_mean(Harmonic self, IMP::Float mean)"""
6461  return _IMP_core.Harmonic_set_mean(self, mean)
6462 
6463  def set_k(self, k):
6464  r"""set_k(Harmonic self, IMP::Float k)"""
6465  return _IMP_core.Harmonic_set_k(self, k)
6466 
6467  @staticmethod
6468  def get_k_from_standard_deviation(sd, t=297.15):
6469  r"""get_k_from_standard_deviation(IMP::Float sd, IMP::Float t=297.15) -> IMP::Float"""
6470  return _IMP_core.Harmonic_get_k_from_standard_deviation(sd, t)
6471 
6472  def __str__(self):
6473  r"""__str__(Harmonic self) -> std::string"""
6474  return _IMP_core.Harmonic___str__(self)
6475 
6476  def __repr__(self):
6477  r"""__repr__(Harmonic self) -> std::string"""
6478  return _IMP_core.Harmonic___repr__(self)
6479 
6480  @staticmethod
6481  def get_from(o):
6482  return _object_cast_to_Harmonic(o)
6483 
6484 
6485  def _get_as_binary(self):
6486  r"""_get_as_binary(Harmonic self) -> PyObject *"""
6487  return _IMP_core.Harmonic__get_as_binary(self)
6488 
6489  def _set_from_binary(self, p):
6490  r"""_set_from_binary(Harmonic self, PyObject * p)"""
6491  return _IMP_core.Harmonic__set_from_binary(self, p)
6492 
6493  def __getstate__(self):
6494  p = self._get_as_binary()
6495  if len(self.__dict__) > 1:
6496  d = self.__dict__.copy()
6497  del d['this']
6498  p = (d, p)
6499  return p
6500 
6501  def __setstate__(self, p):
6502  if not hasattr(self, 'this'):
6503  self.__init__()
6504  if isinstance(p, tuple):
6505  d, p = p
6506  self.__dict__.update(d)
6507  return self._set_from_binary(p)
6508 
6509 
6510  def _get_jax(self):
6511  import functools
6512  def score(val, mean, k):
6513  return 0.5 * k * (mean - val) ** 2
6514  return functools.partial(score, mean=self.get_mean(), k=self.get_k())
6515 
6516 
6517 # Register Harmonic in _IMP_core:
6518 _IMP_core.Harmonic_swigregister(Harmonic)
6519 class HarmonicWell(IMP.UnaryFunction):
6520  r"""Proxy of C++ IMP::core::HarmonicWell class."""
6521 
6522  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6523 
6524  def __init__(self, well, k):
6525  r"""__init__(HarmonicWell self, IMP::FloatRange const & well, double k) -> HarmonicWell"""
6526  _IMP_core.HarmonicWell_swiginit(self, _IMP_core.new_HarmonicWell(well, k))
6527 
6528  def get_well(self):
6529  r"""get_well(HarmonicWell self) -> IMP::FloatRange"""
6530  return _IMP_core.HarmonicWell_get_well(self)
6531 
6532  def get_k(self):
6533  r"""get_k(HarmonicWell self) -> double"""
6534  return _IMP_core.HarmonicWell_get_k(self)
6535 
6536  def get_version_info(self):
6537  r"""get_version_info(HarmonicWell self) -> VersionInfo"""
6538  return _IMP_core.HarmonicWell_get_version_info(self)
6539  __swig_destroy__ = _IMP_core.delete_HarmonicWell
6540 
6541  def __str__(self):
6542  r"""__str__(HarmonicWell self) -> std::string"""
6543  return _IMP_core.HarmonicWell___str__(self)
6544 
6545  def __repr__(self):
6546  r"""__repr__(HarmonicWell self) -> std::string"""
6547  return _IMP_core.HarmonicWell___repr__(self)
6548 
6549  @staticmethod
6550  def get_from(o):
6551  return _object_cast_to_HarmonicWell(o)
6552 
6553 
6554  def _get_jax(self):
6555  import functools
6556  import jax.numpy as jnp
6557  def score(val, lb, ub, k):
6558  return 0.5 * k * (val - jnp.clip(val, lb, ub)) ** 2
6559  well = self.get_well()
6560  return functools.partial(score, lb=well[0], ub=well[1], k=self.get_k())
6561 
6562 
6563 # Register HarmonicWell in _IMP_core:
6564 _IMP_core.HarmonicWell_swigregister(HarmonicWell)
6565 class HarmonicLowerBound(Harmonic):
6566  r"""Proxy of C++ IMP::core::HarmonicLowerBound class."""
6567 
6568  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6569 
6570  def __init__(self, *args):
6571  r"""
6572  __init__(HarmonicLowerBound self, IMP::Float mean, IMP::Float k) -> HarmonicLowerBound
6573  __init__(HarmonicLowerBound self) -> HarmonicLowerBound
6574  """
6575  _IMP_core.HarmonicLowerBound_swiginit(self, _IMP_core.new_HarmonicLowerBound(*args))
6576  __swig_destroy__ = _IMP_core.delete_HarmonicLowerBound
6577 
6578  def __str__(self):
6579  r"""__str__(HarmonicLowerBound self) -> std::string"""
6580  return _IMP_core.HarmonicLowerBound___str__(self)
6581 
6582  def __repr__(self):
6583  r"""__repr__(HarmonicLowerBound self) -> std::string"""
6584  return _IMP_core.HarmonicLowerBound___repr__(self)
6585 
6586  @staticmethod
6587  def get_from(o):
6588  return _object_cast_to_HarmonicLowerBound(o)
6589 
6590 
6591  def _get_as_binary(self):
6592  r"""_get_as_binary(HarmonicLowerBound self) -> PyObject *"""
6593  return _IMP_core.HarmonicLowerBound__get_as_binary(self)
6594 
6595  def _set_from_binary(self, p):
6596  r"""_set_from_binary(HarmonicLowerBound self, PyObject * p)"""
6597  return _IMP_core.HarmonicLowerBound__set_from_binary(self, p)
6598 
6599  def __getstate__(self):
6600  p = self._get_as_binary()
6601  if len(self.__dict__) > 1:
6602  d = self.__dict__.copy()
6603  del d['this']
6604  p = (d, p)
6605  return p
6606 
6607  def __setstate__(self, p):
6608  if not hasattr(self, 'this'):
6609  self.__init__()
6610  if isinstance(p, tuple):
6611  d, p = p
6612  self.__dict__.update(d)
6613  return self._set_from_binary(p)
6614 
6615 
6616  def _get_jax(self):
6617  import functools
6618  import jax.lax
6619  def score(val, mean, k):
6620  return 0.5 * k * jax.lax.max(mean - val, 0.0) ** 2
6621  return functools.partial(score, mean=self.get_mean(), k=self.get_k())
6622 
6623 
6624 # Register HarmonicLowerBound in _IMP_core:
6625 _IMP_core.HarmonicLowerBound_swigregister(HarmonicLowerBound)
6626 class HarmonicUpperBound(Harmonic):
6627  r"""Proxy of C++ IMP::core::HarmonicUpperBound class."""
6628 
6629  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6630 
6631  def __init__(self, *args):
6632  r"""
6633  __init__(HarmonicUpperBound self, IMP::Float mean, IMP::Float k) -> HarmonicUpperBound
6634  __init__(HarmonicUpperBound self) -> HarmonicUpperBound
6635  """
6636  _IMP_core.HarmonicUpperBound_swiginit(self, _IMP_core.new_HarmonicUpperBound(*args))
6637  __swig_destroy__ = _IMP_core.delete_HarmonicUpperBound
6638 
6639  def __str__(self):
6640  r"""__str__(HarmonicUpperBound self) -> std::string"""
6641  return _IMP_core.HarmonicUpperBound___str__(self)
6642 
6643  def __repr__(self):
6644  r"""__repr__(HarmonicUpperBound self) -> std::string"""
6645  return _IMP_core.HarmonicUpperBound___repr__(self)
6646 
6647  @staticmethod
6648  def get_from(o):
6649  return _object_cast_to_HarmonicUpperBound(o)
6650 
6651 
6652  def _get_as_binary(self):
6653  r"""_get_as_binary(HarmonicUpperBound self) -> PyObject *"""
6654  return _IMP_core.HarmonicUpperBound__get_as_binary(self)
6655 
6656  def _set_from_binary(self, p):
6657  r"""_set_from_binary(HarmonicUpperBound self, PyObject * p)"""
6658  return _IMP_core.HarmonicUpperBound__set_from_binary(self, p)
6659 
6660  def __getstate__(self):
6661  p = self._get_as_binary()
6662  if len(self.__dict__) > 1:
6663  d = self.__dict__.copy()
6664  del d['this']
6665  p = (d, p)
6666  return p
6667 
6668  def __setstate__(self, p):
6669  if not hasattr(self, 'this'):
6670  self.__init__()
6671  if isinstance(p, tuple):
6672  d, p = p
6673  self.__dict__.update(d)
6674  return self._set_from_binary(p)
6675 
6676 
6677  def _get_jax(self):
6678  import functools
6679  import jax.lax
6680  def score(val, mean, k):
6681  return 0.5 * k * jax.lax.min(mean - val, 0.0) ** 2
6682  return functools.partial(score, mean=self.get_mean(), k=self.get_k())
6683 
6684 
6685 # Register HarmonicUpperBound in _IMP_core:
6686 _IMP_core.HarmonicUpperBound_swigregister(HarmonicUpperBound)
6687 class WeightedSum(IMP.UnaryFunction):
6688  r"""Proxy of C++ IMP::core::WeightedSum class."""
6689 
6690  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6691 
6692  def __init__(self, funcs, weights):
6693  r"""__init__(WeightedSum self, IMP::UnaryFunctions funcs, IMP::Floats weights) -> WeightedSum"""
6694  _IMP_core.WeightedSum_swiginit(self, _IMP_core.new_WeightedSum(funcs, weights))
6695 
6696  def get_function_number(self):
6697  r"""get_function_number(WeightedSum self) -> unsigned int"""
6698  return _IMP_core.WeightedSum_get_function_number(self)
6699 
6700  def set_weights(self, weights):
6701  r"""set_weights(WeightedSum self, IMP::Floats weights)"""
6702  return _IMP_core.WeightedSum_set_weights(self, weights)
6703 
6704  def get_weights(self):
6705  r"""get_weights(WeightedSum self) -> IMP::Floats"""
6706  return _IMP_core.WeightedSum_get_weights(self)
6707 
6708  def get_weight(self, i):
6709  r"""get_weight(WeightedSum self, unsigned int i) -> double"""
6710  return _IMP_core.WeightedSum_get_weight(self, i)
6711 
6712  def get_function(self, i):
6713  r"""get_function(WeightedSum self, unsigned int i) -> UnaryFunction"""
6714  return _IMP_core.WeightedSum_get_function(self, i)
6715 
6716  def get_version_info(self):
6717  r"""get_version_info(WeightedSum self) -> VersionInfo"""
6718  return _IMP_core.WeightedSum_get_version_info(self)
6719  __swig_destroy__ = _IMP_core.delete_WeightedSum
6720 
6721  def __str__(self):
6722  r"""__str__(WeightedSum self) -> std::string"""
6723  return _IMP_core.WeightedSum___str__(self)
6724 
6725  def __repr__(self):
6726  r"""__repr__(WeightedSum self) -> std::string"""
6727  return _IMP_core.WeightedSum___repr__(self)
6728 
6729  @staticmethod
6730  def get_from(o):
6731  return _object_cast_to_WeightedSum(o)
6732 
6733 
6734  def _get_jax(self):
6735  import functools
6736  import jax.numpy as jnp
6737  def score(val, funcs, weights):
6738  return sum(f(val) * weight for (f, weight) in zip(funcs, weights))
6739  nfunc = self.get_function_number()
6740  funcs = [self.get_function(i).get_derived_object()._get_jax()
6741  for i in range(nfunc)]
6742  return functools.partial(score, funcs=funcs,
6743  weights=self.get_weights())
6744 
6745 
6746 # Register WeightedSum in _IMP_core:
6747 _IMP_core.WeightedSum_swigregister(WeightedSum)
6748 class WeightedSumOfExponential(IMP.UnaryFunction):
6749  r"""Proxy of C++ IMP::core::WeightedSumOfExponential class."""
6750 
6751  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6752 
6753  def __init__(self, funcs, weights, denom=1.0):
6754  r"""__init__(WeightedSumOfExponential self, IMP::UnaryFunctions funcs, IMP::Floats weights, IMP::Float denom=1.0) -> WeightedSumOfExponential"""
6755  _IMP_core.WeightedSumOfExponential_swiginit(self, _IMP_core.new_WeightedSumOfExponential(funcs, weights, denom))
6756 
6757  def get_function_number(self):
6758  r"""get_function_number(WeightedSumOfExponential self) -> unsigned int"""
6759  return _IMP_core.WeightedSumOfExponential_get_function_number(self)
6760 
6761  def set_weights(self, weights):
6762  r"""set_weights(WeightedSumOfExponential self, IMP::Floats weights)"""
6763  return _IMP_core.WeightedSumOfExponential_set_weights(self, weights)
6764 
6765  def get_weights(self):
6766  r"""get_weights(WeightedSumOfExponential self) -> IMP::Floats"""
6767  return _IMP_core.WeightedSumOfExponential_get_weights(self)
6768 
6769  def get_weight(self, i):
6770  r"""get_weight(WeightedSumOfExponential self, unsigned int i) -> double"""
6771  return _IMP_core.WeightedSumOfExponential_get_weight(self, i)
6772 
6773  def get_function(self, i):
6774  r"""get_function(WeightedSumOfExponential self, unsigned int i) -> UnaryFunction"""
6775  return _IMP_core.WeightedSumOfExponential_get_function(self, i)
6776 
6777  def set_denominator(self, denom):
6778  r"""set_denominator(WeightedSumOfExponential self, double denom)"""
6779  return _IMP_core.WeightedSumOfExponential_set_denominator(self, denom)
6780 
6781  def get_denominator(self):
6782  r"""get_denominator(WeightedSumOfExponential self) -> double"""
6783  return _IMP_core.WeightedSumOfExponential_get_denominator(self)
6784 
6785  def get_version_info(self):
6786  r"""get_version_info(WeightedSumOfExponential self) -> VersionInfo"""
6787  return _IMP_core.WeightedSumOfExponential_get_version_info(self)
6788  __swig_destroy__ = _IMP_core.delete_WeightedSumOfExponential
6789 
6790  def __str__(self):
6791  r"""__str__(WeightedSumOfExponential self) -> std::string"""
6792  return _IMP_core.WeightedSumOfExponential___str__(self)
6793 
6794  def __repr__(self):
6795  r"""__repr__(WeightedSumOfExponential self) -> std::string"""
6796  return _IMP_core.WeightedSumOfExponential___repr__(self)
6797 
6798  @staticmethod
6799  def get_from(o):
6800  return _object_cast_to_WeightedSumOfExponential(o)
6801 
6802 
6803  def _get_jax(self):
6804  import functools
6805  import jax.numpy as jnp
6806  def score(val, funcs, weights, denom):
6807  exp_sum = sum(weight * jnp.exp(-f(val) / denom)
6808  for (f, weight) in zip(funcs, weights))
6809  return -jnp.log(exp_sum) * denom
6810  nfunc = self.get_function_number()
6811  funcs = [self.get_function(i).get_derived_object()._get_jax()
6812  for i in range(nfunc)]
6813  return functools.partial(score, funcs=funcs,
6814  weights=self.get_weights(),
6815  denom=self.get_denominator())
6816 
6817 
6818 # Register WeightedSumOfExponential in _IMP_core:
6819 _IMP_core.WeightedSumOfExponential_swigregister(WeightedSumOfExponential)
6820 class MSConnectivityRestraint(IMP.Restraint):
6821  r"""Proxy of C++ IMP::core::MSConnectivityRestraint class."""
6822 
6823  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6824 
6825  def __init__(self, m, ps, eps=0.1):
6826  r"""__init__(MSConnectivityRestraint self, Model m, PairScore ps, double eps=0.1) -> MSConnectivityRestraint"""
6827  _IMP_core.MSConnectivityRestraint_swiginit(self, _IMP_core.new_MSConnectivityRestraint(m, ps, eps))
6828 
6829  def add_type(self, ps):
6830  r"""add_type(MSConnectivityRestraint self, IMP::ParticlesTemp const & ps) -> unsigned int"""
6831  return _IMP_core.MSConnectivityRestraint_add_type(self, ps)
6832 
6833  def add_composite(self, *args):
6834  r"""
6835  add_composite(MSConnectivityRestraint self, IMP::Ints const & components) -> unsigned int
6836  add_composite(MSConnectivityRestraint self, IMP::Ints const & components, unsigned int parent) -> unsigned int
6837  """
6838  return _IMP_core.MSConnectivityRestraint_add_composite(self, *args)
6839 
6840  def get_connected_pairs(self):
6841  r"""get_connected_pairs(MSConnectivityRestraint self) -> IMP::ParticlePairsTemp"""
6842  return _IMP_core.MSConnectivityRestraint_get_connected_pairs(self)
6843 
6844  def get_pair_score(self):
6845  r"""get_pair_score(MSConnectivityRestraint self) -> PairScore"""
6846  return _IMP_core.MSConnectivityRestraint_get_pair_score(self)
6847 
6848  def do_create_current_decomposition(self):
6849  r"""do_create_current_decomposition(MSConnectivityRestraint self) -> IMP::Restraints"""
6850  return _IMP_core.MSConnectivityRestraint_do_create_current_decomposition(self)
6851 
6852  def do_get_inputs(self):
6853  r"""do_get_inputs(MSConnectivityRestraint self) -> IMP::ModelObjectsTemp"""
6854  return _IMP_core.MSConnectivityRestraint_do_get_inputs(self)
6855 
6856  def get_version_info(self):
6857  r"""get_version_info(MSConnectivityRestraint self) -> VersionInfo"""
6858  return _IMP_core.MSConnectivityRestraint_get_version_info(self)
6859  __swig_destroy__ = _IMP_core.delete_MSConnectivityRestraint
6860 
6861  def __str__(self):
6862  r"""__str__(MSConnectivityRestraint self) -> std::string"""
6863  return _IMP_core.MSConnectivityRestraint___str__(self)
6864 
6865  def __repr__(self):
6866  r"""__repr__(MSConnectivityRestraint self) -> std::string"""
6867  return _IMP_core.MSConnectivityRestraint___repr__(self)
6868 
6869  @staticmethod
6870  def get_from(o):
6871  return _object_cast_to_MSConnectivityRestraint(o)
6872 
6873 
6874 # Register MSConnectivityRestraint in _IMP_core:
6875 _IMP_core.MSConnectivityRestraint_swigregister(MSConnectivityRestraint)
6876 class HierarchyTraits(object):
6877  r"""Proxy of C++ IMP::core::HierarchyTraits class."""
6878 
6879  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6880 
6881  def __init__(self, *args):
6882  r"""
6883  __init__(HierarchyTraits self) -> HierarchyTraits
6884  __init__(HierarchyTraits self, std::string name) -> HierarchyTraits
6885  """
6886  _IMP_core.HierarchyTraits_swiginit(self, _IMP_core.new_HierarchyTraits(*args))
6887 
6888  def get_children_key(self):
6889  r"""get_children_key(HierarchyTraits self) -> ParticleIndexesKey"""
6890  return _IMP_core.HierarchyTraits_get_children_key(self)
6891 
6892  def get_parent_key(self):
6893  r"""get_parent_key(HierarchyTraits self) -> ParticleIndexKey"""
6894  return _IMP_core.HierarchyTraits_get_parent_key(self)
6895 
6896  def __eq__(self, o):
6897  r"""__eq__(HierarchyTraits self, HierarchyTraits o) -> bool"""
6898  return _IMP_core.HierarchyTraits___eq__(self, o)
6899 
6900  def show(self, *args):
6901  r"""show(HierarchyTraits self, _ostream out=std::cout)"""
6902  return _IMP_core.HierarchyTraits_show(self, *args)
6903 
6904  def __str__(self):
6905  r"""__str__(HierarchyTraits self) -> std::string"""
6906  return _IMP_core.HierarchyTraits___str__(self)
6907 
6908  def __repr__(self):
6909  r"""__repr__(HierarchyTraits self) -> std::string"""
6910  return _IMP_core.HierarchyTraits___repr__(self)
6911  __swig_destroy__ = _IMP_core.delete_HierarchyTraits
6912 
6913 # Register HierarchyTraits in _IMP_core:
6914 _IMP_core.HierarchyTraits_swigregister(HierarchyTraits)
6915 class Hierarchy(IMP.Decorator):
6916  r"""Proxy of C++ IMP::core::Hierarchy class."""
6917 
6918  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6919 
6920  def get_decorator_traits(self):
6921  r"""get_decorator_traits(Hierarchy self) -> HierarchyTraits"""
6922  return _IMP_core.Hierarchy_get_decorator_traits(self)
6923 
6924  @staticmethod
6925  def get_default_decorator_traits():
6926  r"""get_default_decorator_traits() -> HierarchyTraits"""
6927  return _IMP_core.Hierarchy_get_default_decorator_traits()
6928 
6929  def __init__(self, *args):
6930  r"""
6931  __init__(Hierarchy self) -> Hierarchy
6932  __init__(Hierarchy self, Model m, ParticleIndex id, HierarchyTraits tr=get_default_traits()) -> Hierarchy
6933  __init__(Hierarchy self, _ParticleAdaptor d, HierarchyTraits tr=get_default_traits()) -> Hierarchy
6934  """
6935  _IMP_core.Hierarchy_swiginit(self, _IMP_core.new_Hierarchy(*args))
6936 
6937  def show(self, *args):
6938  r"""show(Hierarchy self, _ostream out=std::cout)"""
6939  return _IMP_core.Hierarchy_show(self, *args)
6940 
6941  @staticmethod
6942  def setup_particle(*args):
6943  r"""
6944  setup_particle(Model m, ParticleIndex pi, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6945  setup_particle(_ParticleAdaptor d, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6946  setup_particle(Model m, ParticleIndex pi, IMP::ParticleIndexes children, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6947  setup_particle(_ParticleAdaptor d, IMP::ParticleIndexes children, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6948  setup_particle(Model m, ParticleIndex pi, IMP::ParticlesTemp children, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6949  setup_particle(_ParticleAdaptor d, IMP::ParticlesTemp children, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6950  """
6951  return _IMP_core.Hierarchy_setup_particle(*args)
6952 
6953  @staticmethod
6954  def get_is_setup(*args):
6955  r"""
6956  get_is_setup(_ParticleAdaptor p, HierarchyTraits tr=get_default_traits()) -> bool
6957  get_is_setup(Model arg1, ParticleIndex arg2, HierarchyTraits arg3=Hierarchy::get_default_traits()) -> bool
6958  """
6959  return _IMP_core.Hierarchy_get_is_setup(*args)
6960 
6961  @staticmethod
6962  def get_changed_key():
6963  r"""get_changed_key() -> TriggerKey"""
6964  return _IMP_core.Hierarchy_get_changed_key()
6965 
6966  def get_parent(self):
6967  r"""get_parent(Hierarchy self) -> Hierarchy"""
6968  return _IMP_core.Hierarchy_get_parent(self)
6969 
6970  def get_number_of_children(self):
6971  r"""get_number_of_children(Hierarchy self) -> unsigned int"""
6972  return _IMP_core.Hierarchy_get_number_of_children(self)
6973 
6974  def get_child(self, i):
6975  r"""get_child(Hierarchy self, unsigned int i) -> Hierarchy"""
6976  return _IMP_core.Hierarchy_get_child(self, i)
6977 
6978  def get_children_indexes(self):
6979  r"""get_children_indexes(Hierarchy self) -> IMP::ParticleIndexes"""
6980  return _IMP_core.Hierarchy_get_children_indexes(self)
6981 
6982  def get_children(self):
6983  r"""get_children(Hierarchy self) -> IMP::core::GenericHierarchies"""
6984  return _IMP_core.Hierarchy_get_children(self)
6985 
6986  def remove_child(self, *args):
6987  r"""
6988  remove_child(Hierarchy self, unsigned int i)
6989  remove_child(Hierarchy self, Hierarchy h)
6990  """
6991  return _IMP_core.Hierarchy_remove_child(self, *args)
6992 
6993  def clear_children(self):
6994  r"""clear_children(Hierarchy self)"""
6995  return _IMP_core.Hierarchy_clear_children(self)
6996 
6997  def add_child(self, h):
6998  r"""add_child(Hierarchy self, Hierarchy h)"""
6999  return _IMP_core.Hierarchy_add_child(self, h)
7000 
7001  def add_child_at(self, h, pos):
7002  r"""add_child_at(Hierarchy self, Hierarchy h, unsigned int pos)"""
7003  return _IMP_core.Hierarchy_add_child_at(self, h, pos)
7004 
7005  def get_child_index(self, *args):
7006  r"""
7007  get_child_index(Hierarchy self, unsigned int i) -> ParticleIndex
7008  get_child_index(Hierarchy self) -> int
7009  """
7010  return _IMP_core.Hierarchy_get_child_index(self, *args)
7011 
7012  @staticmethod
7013  def get_default_traits():
7014  r"""get_default_traits() -> HierarchyTraits"""
7015  return _IMP_core.Hierarchy_get_default_traits()
7016 
7017  def get_traits(self):
7018  r"""get_traits(Hierarchy self) -> HierarchyTraits"""
7019  return _IMP_core.Hierarchy_get_traits(self)
7020 
7021  def add_attribute(self, *args):
7022  r"""
7023  add_attribute(Hierarchy self, FloatKey k, IMP::Float v, bool opt)
7024  add_attribute(Hierarchy self, FloatKey a0, IMP::Float a1)
7025  add_attribute(Hierarchy self, IntKey a0, IMP::Int a1)
7026  add_attribute(Hierarchy self, FloatsKey a0, IMP::Floats a1)
7027  add_attribute(Hierarchy self, IntsKey a0, IMP::Ints a1)
7028  add_attribute(Hierarchy self, StringKey a0, IMP::String a1)
7029  add_attribute(Hierarchy self, ParticleIndexKey a0, Particle a1)
7030  add_attribute(Hierarchy self, ObjectKey a0, Object a1)
7031  add_attribute(Hierarchy self, SparseFloatKey a0, IMP::Float a1)
7032  add_attribute(Hierarchy self, SparseIntKey a0, IMP::Int a1)
7033  add_attribute(Hierarchy self, SparseStringKey a0, IMP::String a1)
7034  add_attribute(Hierarchy self, SparseParticleIndexKey a0, ParticleIndex a1)
7035  """
7036  return _IMP_core.Hierarchy_add_attribute(self, *args)
7037 
7038  def get_value(self, *args):
7039  r"""
7040  get_value(Hierarchy self, FloatKey a0) -> IMP::Float
7041  get_value(Hierarchy self, IntKey a0) -> IMP::Int
7042  get_value(Hierarchy self, FloatsKey a0) -> IMP::Floats
7043  get_value(Hierarchy self, IntsKey a0) -> IMP::Ints
7044  get_value(Hierarchy self, StringKey a0) -> IMP::String
7045  get_value(Hierarchy self, ParticleIndexKey a0) -> Particle
7046  get_value(Hierarchy self, ObjectKey a0) -> Object
7047  get_value(Hierarchy self, SparseFloatKey a0) -> IMP::Float
7048  get_value(Hierarchy self, SparseIntKey a0) -> IMP::Int
7049  get_value(Hierarchy self, SparseStringKey a0) -> IMP::String
7050  get_value(Hierarchy self, SparseParticleIndexKey a0) -> ParticleIndex
7051  """
7052  return _IMP_core.Hierarchy_get_value(self, *args)
7053 
7054  def set_value(self, *args):
7055  r"""
7056  set_value(Hierarchy self, FloatKey a0, IMP::Float a1)
7057  set_value(Hierarchy self, IntKey a0, IMP::Int a1)
7058  set_value(Hierarchy self, FloatsKey a0, IMP::Floats a1)
7059  set_value(Hierarchy self, IntsKey a0, IMP::Ints a1)
7060  set_value(Hierarchy self, StringKey a0, IMP::String a1)
7061  set_value(Hierarchy self, ParticleIndexKey a0, Particle a1)
7062  set_value(Hierarchy self, ObjectKey a0, Object a1)
7063  set_value(Hierarchy self, SparseFloatKey a0, IMP::Float a1)
7064  set_value(Hierarchy self, SparseIntKey a0, IMP::Int a1)
7065  set_value(Hierarchy self, SparseStringKey a0, IMP::String a1)
7066  set_value(Hierarchy self, SparseParticleIndexKey a0, ParticleIndex a1)
7067  """
7068  return _IMP_core.Hierarchy_set_value(self, *args)
7069 
7070  def remove_attribute(self, *args):
7071  r"""
7072  remove_attribute(Hierarchy self, FloatKey a0)
7073  remove_attribute(Hierarchy self, IntKey a0)
7074  remove_attribute(Hierarchy self, FloatsKey a0)
7075  remove_attribute(Hierarchy self, IntsKey a0)
7076  remove_attribute(Hierarchy self, StringKey a0)
7077  remove_attribute(Hierarchy self, ParticleIndexKey a0)
7078  remove_attribute(Hierarchy self, ObjectKey a0)
7079  remove_attribute(Hierarchy self, SparseFloatKey a0)
7080  remove_attribute(Hierarchy self, SparseIntKey a0)
7081  remove_attribute(Hierarchy self, SparseStringKey a0)
7082  remove_attribute(Hierarchy self, SparseParticleIndexKey a0)
7083  """
7084  return _IMP_core.Hierarchy_remove_attribute(self, *args)
7085 
7086  def has_attribute(self, *args):
7087  r"""
7088  has_attribute(Hierarchy self, FloatKey a0) -> bool
7089  has_attribute(Hierarchy self, IntKey a0) -> bool
7090  has_attribute(Hierarchy self, FloatsKey a0) -> bool
7091  has_attribute(Hierarchy self, IntsKey a0) -> bool
7092  has_attribute(Hierarchy self, StringKey a0) -> bool
7093  has_attribute(Hierarchy self, ParticleIndexKey a0) -> bool
7094  has_attribute(Hierarchy self, ObjectKey a0) -> bool
7095  has_attribute(Hierarchy self, SparseFloatKey a0) -> bool
7096  has_attribute(Hierarchy self, SparseIntKey a0) -> bool
7097  has_attribute(Hierarchy self, SparseStringKey a0) -> bool
7098  has_attribute(Hierarchy self, SparseParticleIndexKey a0) -> bool
7099  """
7100  return _IMP_core.Hierarchy_has_attribute(self, *args)
7101 
7102  def get_derivative(self, a0):
7103  r"""get_derivative(Hierarchy self, FloatKey a0) -> double"""
7104  return _IMP_core.Hierarchy_get_derivative(self, a0)
7105 
7106  def get_name(self):
7107  r"""get_name(Hierarchy self) -> std::string"""
7108  return _IMP_core.Hierarchy_get_name(self)
7109 
7110  def clear_caches(self):
7111  r"""clear_caches(Hierarchy self)"""
7112  return _IMP_core.Hierarchy_clear_caches(self)
7113 
7114  def set_name(self, a0):
7115  r"""set_name(Hierarchy self, std::string a0)"""
7116  return _IMP_core.Hierarchy_set_name(self, a0)
7117 
7118  def set_check_level(self, a0):
7119  r"""set_check_level(Hierarchy self, IMP::CheckLevel a0)"""
7120  return _IMP_core.Hierarchy_set_check_level(self, a0)
7121 
7122  def add_to_derivative(self, a0, a1, a2):
7123  r"""add_to_derivative(Hierarchy self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
7124  return _IMP_core.Hierarchy_add_to_derivative(self, a0, a1, a2)
7125 
7126  def set_is_optimized(self, a0, a1):
7127  r"""set_is_optimized(Hierarchy self, FloatKey a0, bool a1)"""
7128  return _IMP_core.Hierarchy_set_is_optimized(self, a0, a1)
7129 
7130  def get_is_optimized(self, a0):
7131  r"""get_is_optimized(Hierarchy self, FloatKey a0) -> bool"""
7132  return _IMP_core.Hierarchy_get_is_optimized(self, a0)
7133 
7134  def get_check_level(self):
7135  r"""get_check_level(Hierarchy self) -> IMP::CheckLevel"""
7136  return _IMP_core.Hierarchy_get_check_level(self)
7137 
7138  def __eq__(self, *args):
7139  r"""
7140  __eq__(Hierarchy self, Hierarchy o) -> bool
7141  __eq__(Hierarchy self, Particle d) -> bool
7142  """
7143  return _IMP_core.Hierarchy___eq__(self, *args)
7144 
7145  def __ne__(self, *args):
7146  r"""
7147  __ne__(Hierarchy self, Hierarchy o) -> bool
7148  __ne__(Hierarchy self, Particle d) -> bool
7149  """
7150  return _IMP_core.Hierarchy___ne__(self, *args)
7151 
7152  def __le__(self, *args):
7153  r"""
7154  __le__(Hierarchy self, Hierarchy o) -> bool
7155  __le__(Hierarchy self, Particle d) -> bool
7156  """
7157  return _IMP_core.Hierarchy___le__(self, *args)
7158 
7159  def __lt__(self, *args):
7160  r"""
7161  __lt__(Hierarchy self, Hierarchy o) -> bool
7162  __lt__(Hierarchy self, Particle d) -> bool
7163  """
7164  return _IMP_core.Hierarchy___lt__(self, *args)
7165 
7166  def __ge__(self, *args):
7167  r"""
7168  __ge__(Hierarchy self, Hierarchy o) -> bool
7169  __ge__(Hierarchy self, Particle d) -> bool
7170  """
7171  return _IMP_core.Hierarchy___ge__(self, *args)
7172 
7173  def __gt__(self, *args):
7174  r"""
7175  __gt__(Hierarchy self, Hierarchy o) -> bool
7176  __gt__(Hierarchy self, Particle d) -> bool
7177  """
7178  return _IMP_core.Hierarchy___gt__(self, *args)
7179 
7180  def __hash__(self):
7181  r"""__hash__(Hierarchy self) -> std::size_t"""
7182  return _IMP_core.Hierarchy___hash__(self)
7183 
7184  def __str__(self):
7185  r"""__str__(Hierarchy self) -> std::string"""
7186  return _IMP_core.Hierarchy___str__(self)
7187 
7188  def __repr__(self):
7189  r"""__repr__(Hierarchy self) -> std::string"""
7190  return _IMP_core.Hierarchy___repr__(self)
7191  __swig_destroy__ = _IMP_core.delete_Hierarchy
7192 
7193 # Register Hierarchy in _IMP_core:
7194 _IMP_core.Hierarchy_swigregister(Hierarchy)
7195 class HierarchyVisitor(object):
7196  r"""Proxy of C++ IMP::core::HierarchyVisitor class."""
7197 
7198  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7199  __repr__ = _swig_repr
7200 
7201  def __init__(self):
7202  r"""__init__(HierarchyVisitor self) -> HierarchyVisitor"""
7203  if self.__class__ == HierarchyVisitor:
7204  _self = None
7205  else:
7206  _self = self
7207  _IMP_core.HierarchyVisitor_swiginit(self, _IMP_core.new_HierarchyVisitor(_self, ))
7208 
7209  if self.__class__ != HierarchyVisitor:
7210  _director_objects.register(self)
7211 
7212 
7213 
7214 
7215  def __call__(self, p):
7216  r"""__call__(HierarchyVisitor self, Hierarchy p) -> bool"""
7217  return _IMP_core.HierarchyVisitor___call__(self, p)
7218  __swig_destroy__ = _IMP_core.delete_HierarchyVisitor
7219  def __disown__(self):
7220  self.this.disown()
7221  _IMP_core.disown_HierarchyVisitor(self)
7222  return weakref.proxy(self)
7223 
7224 # Register HierarchyVisitor in _IMP_core:
7225 _IMP_core.HierarchyVisitor_swigregister(HierarchyVisitor)
7226 class ModifierVisitor(HierarchyVisitor):
7227  r"""Proxy of C++ IMP::core::ModifierVisitor class."""
7228 
7229  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7230  __repr__ = _swig_repr
7231 
7232  def __init__(self, sm):
7233  r"""__init__(ModifierVisitor self, SingletonModifier sm) -> ModifierVisitor"""
7234  _IMP_core.ModifierVisitor_swiginit(self, _IMP_core.new_ModifierVisitor(sm))
7235  __swig_destroy__ = _IMP_core.delete_ModifierVisitor
7236 
7237 # Register ModifierVisitor in _IMP_core:
7238 _IMP_core.ModifierVisitor_swigregister(ModifierVisitor)
7239 class HierarchyCounter(HierarchyVisitor):
7240  r"""Proxy of C++ IMP::core::HierarchyCounter class."""
7241 
7242  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7243 
7244  def __init__(self):
7245  r"""__init__(HierarchyCounter self) -> HierarchyCounter"""
7246  _IMP_core.HierarchyCounter_swiginit(self, _IMP_core.new_HierarchyCounter())
7247 
7248  def get_count(self):
7249  r"""get_count(HierarchyCounter self) -> unsigned int"""
7250  return _IMP_core.HierarchyCounter_get_count(self)
7251 
7252  def show(self, *args):
7253  r"""show(HierarchyCounter self, _ostream out=std::cout)"""
7254  return _IMP_core.HierarchyCounter_show(self, *args)
7255 
7256  def __str__(self):
7257  r"""__str__(HierarchyCounter self) -> std::string"""
7258  return _IMP_core.HierarchyCounter___str__(self)
7259 
7260  def __repr__(self):
7261  r"""__repr__(HierarchyCounter self) -> std::string"""
7262  return _IMP_core.HierarchyCounter___repr__(self)
7263 
7264  def _get_as_binary(self):
7265  r"""_get_as_binary(HierarchyCounter self) -> PyObject *"""
7266  return _IMP_core.HierarchyCounter__get_as_binary(self)
7267 
7268  def _set_from_binary(self, p):
7269  r"""_set_from_binary(HierarchyCounter self, PyObject * p)"""
7270  return _IMP_core.HierarchyCounter__set_from_binary(self, p)
7271 
7272  def __getstate__(self):
7273  p = self._get_as_binary()
7274  if len(self.__dict__) > 1:
7275  d = self.__dict__.copy()
7276  del d['this']
7277  p = (d, p)
7278  return p
7279 
7280  def __setstate__(self, p):
7281  if not hasattr(self, 'this'):
7282  self.__init__()
7283  if isinstance(p, tuple):
7284  d, p = p
7285  self.__dict__.update(d)
7286  return self._set_from_binary(p)
7287 
7288  __swig_destroy__ = _IMP_core.delete_HierarchyCounter
7289 
7290 # Register HierarchyCounter in _IMP_core:
7291 _IMP_core.HierarchyCounter_swigregister(HierarchyCounter)
7292 
7293 def get_leaves(mhd):
7294  r"""get_leaves(Hierarchy mhd) -> IMP::core::GenericHierarchies"""
7295  return _IMP_core.get_leaves(mhd)
7296 
7297 def get_internal(mhd):
7298  r"""get_internal(Hierarchy mhd) -> IMP::core::GenericHierarchies"""
7299  return _IMP_core.get_internal(mhd)
7300 
7301 def get_all_descendants(mhd):
7302  r"""get_all_descendants(Hierarchy mhd) -> IMP::core::GenericHierarchies"""
7303  return _IMP_core.get_all_descendants(mhd)
7304 
7305 def get_root(h):
7306  r"""get_root(Hierarchy h) -> Hierarchy"""
7307  return _IMP_core.get_root(h)
7308 
7309 def visit_breadth_first(d, f):
7310  r"""visit_breadth_first(Hierarchy d, HierarchyVisitor f)"""
7311  return _IMP_core.visit_breadth_first(d, f)
7312 
7313 def visit_depth_first(d, f):
7314  r"""visit_depth_first(Hierarchy d, HierarchyVisitor f)"""
7315  return _IMP_core.visit_depth_first(d, f)
7316 class LeavesRefiner(IMP.Refiner):
7317  r"""Proxy of C++ IMP::core::LeavesRefiner class."""
7318 
7319  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7320 
7321  def __init__(self, tr):
7322  r"""__init__(LeavesRefiner self, HierarchyTraits tr) -> LeavesRefiner"""
7323  _IMP_core.LeavesRefiner_swiginit(self, _IMP_core.new_LeavesRefiner(tr))
7324 
7325  def do_get_inputs(self, m, pis):
7326  r"""do_get_inputs(LeavesRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7327  return _IMP_core.LeavesRefiner_do_get_inputs(self, m, pis)
7328 
7329  def get_version_info(self):
7330  r"""get_version_info(LeavesRefiner self) -> VersionInfo"""
7331  return _IMP_core.LeavesRefiner_get_version_info(self)
7332  __swig_destroy__ = _IMP_core.delete_LeavesRefiner
7333 
7334  def __str__(self):
7335  r"""__str__(LeavesRefiner self) -> std::string"""
7336  return _IMP_core.LeavesRefiner___str__(self)
7337 
7338  def __repr__(self):
7339  r"""__repr__(LeavesRefiner self) -> std::string"""
7340  return _IMP_core.LeavesRefiner___repr__(self)
7341 
7342  @staticmethod
7343  def get_from(o):
7344  return _object_cast_to_LeavesRefiner(o)
7345 
7346 
7347 # Register LeavesRefiner in _IMP_core:
7348 _IMP_core.LeavesRefiner_swigregister(LeavesRefiner)
7349 class Linear(IMP.UnaryFunction):
7350  r"""Proxy of C++ IMP::core::Linear class."""
7351 
7352  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7353 
7354  def __init__(self, *args):
7355  r"""
7356  __init__(Linear self, double offset, double slope) -> Linear
7357  __init__(Linear self) -> Linear
7358  """
7359  _IMP_core.Linear_swiginit(self, _IMP_core.new_Linear(*args))
7360 
7361  def set_slope(self, f):
7362  r"""set_slope(Linear self, double f)"""
7363  return _IMP_core.Linear_set_slope(self, f)
7364 
7365  def get_slope(self):
7366  r"""get_slope(Linear self) -> double"""
7367  return _IMP_core.Linear_get_slope(self)
7368 
7369  def set_offset(self, f):
7370  r"""set_offset(Linear self, double f)"""
7371  return _IMP_core.Linear_set_offset(self, f)
7372 
7373  def get_offset(self):
7374  r"""get_offset(Linear self) -> double"""
7375  return _IMP_core.Linear_get_offset(self)
7376 
7377  def get_version_info(self):
7378  r"""get_version_info(Linear self) -> VersionInfo"""
7379  return _IMP_core.Linear_get_version_info(self)
7380  __swig_destroy__ = _IMP_core.delete_Linear
7381 
7382  def __str__(self):
7383  r"""__str__(Linear self) -> std::string"""
7384  return _IMP_core.Linear___str__(self)
7385 
7386  def __repr__(self):
7387  r"""__repr__(Linear self) -> std::string"""
7388  return _IMP_core.Linear___repr__(self)
7389 
7390  @staticmethod
7391  def get_from(o):
7392  return _object_cast_to_Linear(o)
7393 
7394 
7395  def _get_as_binary(self):
7396  r"""_get_as_binary(Linear self) -> PyObject *"""
7397  return _IMP_core.Linear__get_as_binary(self)
7398 
7399  def _set_from_binary(self, p):
7400  r"""_set_from_binary(Linear self, PyObject * p)"""
7401  return _IMP_core.Linear__set_from_binary(self, p)
7402 
7403  def __getstate__(self):
7404  p = self._get_as_binary()
7405  if len(self.__dict__) > 1:
7406  d = self.__dict__.copy()
7407  del d['this']
7408  p = (d, p)
7409  return p
7410 
7411  def __setstate__(self, p):
7412  if not hasattr(self, 'this'):
7413  self.__init__()
7414  if isinstance(p, tuple):
7415  d, p = p
7416  self.__dict__.update(d)
7417  return self._set_from_binary(p)
7418 
7419 
7420  def _get_jax(self):
7421  import functools
7422  def score(val, slope, offset):
7423  return (val - offset) * slope
7424  return functools.partial(score, slope=self.get_slope(),
7425  offset=self.get_offset())
7426 
7427 
7428 # Register Linear in _IMP_core:
7429 _IMP_core.Linear_swigregister(Linear)
7430 class LogNormalMover(MonteCarloMover):
7431  r"""Proxy of C++ IMP::core::LogNormalMover class."""
7432 
7433  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7434 
7435  def __init__(self, *args):
7436  r"""
7437  __init__(LogNormalMover self, Model m, ParticleIndex pi, IMP::FloatKeys const & vars, double stddev) -> LogNormalMover
7438  __init__(LogNormalMover self, Model m, ParticleIndex pi, double stddev) -> LogNormalMover
7439  __init__(LogNormalMover self, IMP::ParticlesTemp const & sc, IMP::FloatKeys const & vars, IMP::Float sigma) -> LogNormalMover
7440  __init__(LogNormalMover self, IMP::ParticlesTemp const & sc, IMP::Float radius) -> LogNormalMover
7441  __init__(LogNormalMover self) -> LogNormalMover
7442  """
7443  _IMP_core.LogNormalMover_swiginit(self, _IMP_core.new_LogNormalMover(*args))
7444 
7445  def set_sigma(self, sigma):
7446  r"""set_sigma(LogNormalMover self, IMP::Float sigma)"""
7447  return _IMP_core.LogNormalMover_set_sigma(self, sigma)
7448 
7449  def get_sigma(self):
7450  r"""get_sigma(LogNormalMover self) -> IMP::Float"""
7451  return _IMP_core.LogNormalMover_get_sigma(self)
7452 
7453  def get_version_info(self):
7454  r"""get_version_info(LogNormalMover self) -> VersionInfo"""
7455  return _IMP_core.LogNormalMover_get_version_info(self)
7456  __swig_destroy__ = _IMP_core.delete_LogNormalMover
7457 
7458  def __str__(self):
7459  r"""__str__(LogNormalMover self) -> std::string"""
7460  return _IMP_core.LogNormalMover___str__(self)
7461 
7462  def __repr__(self):
7463  r"""__repr__(LogNormalMover self) -> std::string"""
7464  return _IMP_core.LogNormalMover___repr__(self)
7465 
7466  @staticmethod
7467  def get_from(o):
7468  return _object_cast_to_LogNormalMover(o)
7469 
7470 
7471  def _get_as_binary(self):
7472  r"""_get_as_binary(LogNormalMover self) -> PyObject *"""
7473  return _IMP_core.LogNormalMover__get_as_binary(self)
7474 
7475  def _set_from_binary(self, p):
7476  r"""_set_from_binary(LogNormalMover self, PyObject * p)"""
7477  return _IMP_core.LogNormalMover__set_from_binary(self, p)
7478 
7479  def __getstate__(self):
7480  p = self._get_as_binary()
7481  if len(self.__dict__) > 1:
7482  d = self.__dict__.copy()
7483  del d['this']
7484  p = (d, p)
7485  return p
7486 
7487  def __setstate__(self, p):
7488  if not hasattr(self, 'this'):
7489  self.__init__()
7490  if isinstance(p, tuple):
7491  d, p = p
7492  self.__dict__.update(d)
7493  return self._set_from_binary(p)
7494 
7495 
7496 # Register LogNormalMover in _IMP_core:
7497 _IMP_core.LogNormalMover_swigregister(LogNormalMover)
7498 IMP_CORE_HAS_MONTE_CARLO_MOVER = _IMP_core.IMP_CORE_HAS_MONTE_CARLO_MOVER
7499 
7500 class MonteCarlo(IMP.Optimizer):
7501  r"""Proxy of C++ IMP::core::MonteCarlo class."""
7502 
7503  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7504 
7505  def __init__(self, m):
7506  r"""__init__(MonteCarlo self, Model m) -> MonteCarlo"""
7507  _IMP_core.MonteCarlo_swiginit(self, _IMP_core.new_MonteCarlo(m))
7508 
7509  def get_version_info(self):
7510  r"""get_version_info(MonteCarlo self) -> VersionInfo"""
7511  return _IMP_core.MonteCarlo_get_version_info(self)
7512  __swig_destroy__ = _IMP_core.delete_MonteCarlo
7513 
7514  def set_return_best(self, tf):
7515  r"""set_return_best(MonteCarlo self, bool tf)"""
7516  return _IMP_core.MonteCarlo_set_return_best(self, tf)
7517 
7518  def get_return_best(self):
7519  r"""get_return_best(MonteCarlo self) -> bool"""
7520  return _IMP_core.MonteCarlo_get_return_best(self)
7521 
7522  def set_score_moved(self, mv):
7523  r"""set_score_moved(MonteCarlo self, bool mv)"""
7524  return _IMP_core.MonteCarlo_set_score_moved(self, mv)
7525 
7526  def set_kt(self, t):
7527  r"""set_kt(MonteCarlo self, IMP::Float t)"""
7528  return _IMP_core.MonteCarlo_set_kt(self, t)
7529 
7530  def get_kt(self):
7531  r"""get_kt(MonteCarlo self) -> IMP::Float"""
7532  return _IMP_core.MonteCarlo_get_kt(self)
7533 
7534  def get_last_accepted_energy(self):
7535  r"""get_last_accepted_energy(MonteCarlo self) -> double"""
7536  return _IMP_core.MonteCarlo_get_last_accepted_energy(self)
7537 
7538  def set_last_accepted_energy(self, energy):
7539  r"""set_last_accepted_energy(MonteCarlo self, double energy)"""
7540  return _IMP_core.MonteCarlo_set_last_accepted_energy(self, energy)
7541 
7542  def get_best_accepted_energy(self):
7543  r"""get_best_accepted_energy(MonteCarlo self) -> double"""
7544  return _IMP_core.MonteCarlo_get_best_accepted_energy(self)
7545 
7546  def set_best_accepted_energy(self, energy):
7547  r"""set_best_accepted_energy(MonteCarlo self, double energy)"""
7548  return _IMP_core.MonteCarlo_set_best_accepted_energy(self, energy)
7549 
7550  def get_number_of_downward_steps(self):
7551  r"""get_number_of_downward_steps(MonteCarlo self) -> unsigned int"""
7552  return _IMP_core.MonteCarlo_get_number_of_downward_steps(self)
7553 
7554  def get_number_of_upward_steps(self):
7555  r"""get_number_of_upward_steps(MonteCarlo self) -> unsigned int"""
7556  return _IMP_core.MonteCarlo_get_number_of_upward_steps(self)
7557 
7558  def get_number_of_proposed_steps(self):
7559  r"""get_number_of_proposed_steps(MonteCarlo self) -> unsigned int"""
7560  return _IMP_core.MonteCarlo_get_number_of_proposed_steps(self)
7561 
7562  def get_number_of_accepted_steps(self):
7563  r"""get_number_of_accepted_steps(MonteCarlo self) -> unsigned int"""
7564  return _IMP_core.MonteCarlo_get_number_of_accepted_steps(self)
7565 
7566  def set_number_of_downward_steps(self, nsteps):
7567  r"""set_number_of_downward_steps(MonteCarlo self, unsigned int nsteps)"""
7568  return _IMP_core.MonteCarlo_set_number_of_downward_steps(self, nsteps)
7569 
7570  def set_number_of_upward_steps(self, nsteps):
7571  r"""set_number_of_upward_steps(MonteCarlo self, unsigned int nsteps)"""
7572  return _IMP_core.MonteCarlo_set_number_of_upward_steps(self, nsteps)
7573 
7574  def set_number_of_rejected_steps(self, nsteps):
7575  r"""set_number_of_rejected_steps(MonteCarlo self, unsigned int nsteps)"""
7576  return _IMP_core.MonteCarlo_set_number_of_rejected_steps(self, nsteps)
7577 
7578  def reset_statistics(self):
7579  r"""reset_statistics(MonteCarlo self)"""
7580  return _IMP_core.MonteCarlo_reset_statistics(self)
7581 
7582  def set_score_threshold(self, s):
7583  r"""set_score_threshold(MonteCarlo self, double s)"""
7584  return _IMP_core.MonteCarlo_set_score_threshold(self, s)
7585 
7586  def get_score_threshold(self):
7587  r"""get_score_threshold(MonteCarlo self) -> double"""
7588  return _IMP_core.MonteCarlo_get_score_threshold(self)
7589 
7590  def set_maximum_difference(self, d):
7591  r"""set_maximum_difference(MonteCarlo self, double d)"""
7592  return _IMP_core.MonteCarlo_set_maximum_difference(self, d)
7593 
7594  def get_maximum_difference(self):
7595  r"""get_maximum_difference(MonteCarlo self) -> double"""
7596  return _IMP_core.MonteCarlo_get_maximum_difference(self)
7597  def __get_movers(self): return IMP._list_util.VarList(getdimfunc=self.get_number_of_movers, getfunc=self.get_mover, erasefunc=self.erase_mover, appendfunc=self.add_mover, extendfunc=self.add_movers, clearfunc=self.clear_movers, indexfunc=self._python_index_mover)
7598  def __set_movers(self, obj): IMP._list_util.set_varlist(self.movers, obj)
7599  def __del_movers(self): IMP._list_util.del_varlist(self.movers)
7600  movers = property(__get_movers, __set_movers, __del_movers, doc="List of ##ucnames")
7601 
7602  def remove_mover(self, d):
7603  r"""remove_mover(MonteCarlo self, MonteCarloMover d)"""
7604  return _IMP_core.MonteCarlo_remove_mover(self, d)
7605 
7606  def _python_index_mover(self, d, start, stop):
7607  r"""_python_index_mover(MonteCarlo self, MonteCarloMover d, unsigned int start, unsigned int stop) -> unsigned int"""
7608  return _IMP_core.MonteCarlo__python_index_mover(self, d, start, stop)
7609 
7610  def remove_movers(self, d):
7611  r"""remove_movers(MonteCarlo self, IMP::core::MonteCarloMovers const & d)"""
7612  return _IMP_core.MonteCarlo_remove_movers(self, d)
7613 
7614  def set_movers(self, ps):
7615  r"""set_movers(MonteCarlo self, IMP::core::MonteCarloMovers const & ps)"""
7616  return _IMP_core.MonteCarlo_set_movers(self, ps)
7617 
7618  def set_movers_order(self, objs):
7619  r"""set_movers_order(MonteCarlo self, IMP::core::MonteCarloMovers const & objs)"""
7620  return _IMP_core.MonteCarlo_set_movers_order(self, objs)
7621 
7622  def add_mover(self, obj):
7623  r"""add_mover(MonteCarlo self, MonteCarloMover obj) -> unsigned int"""
7624  return _IMP_core.MonteCarlo_add_mover(self, obj)
7625 
7626  def add_movers(self, objs):
7627  r"""add_movers(MonteCarlo self, IMP::core::MonteCarloMovers const & objs)"""
7628  return _IMP_core.MonteCarlo_add_movers(self, objs)
7629 
7630  def clear_movers(self):
7631  r"""clear_movers(MonteCarlo self)"""
7632  return _IMP_core.MonteCarlo_clear_movers(self)
7633 
7634  def get_number_of_movers(self):
7635  r"""get_number_of_movers(MonteCarlo self) -> unsigned int"""
7636  return _IMP_core.MonteCarlo_get_number_of_movers(self)
7637 
7638  def get_has_movers(self):
7639  r"""get_has_movers(MonteCarlo self) -> bool"""
7640  return _IMP_core.MonteCarlo_get_has_movers(self)
7641 
7642  def get_mover(self, i):
7643  r"""get_mover(MonteCarlo self, unsigned int i) -> MonteCarloMover"""
7644  return _IMP_core.MonteCarlo_get_mover(self, i)
7645 
7646  def get_movers(self):
7647  r"""get_movers(MonteCarlo self) -> IMP::core::MonteCarloMovers"""
7648  return _IMP_core.MonteCarlo_get_movers(self)
7649 
7650  def erase_mover(self, i):
7651  r"""erase_mover(MonteCarlo self, unsigned int i)"""
7652  return _IMP_core.MonteCarlo_erase_mover(self, i)
7653 
7654  def reserve_movers(self, sz):
7655  r"""reserve_movers(MonteCarlo self, unsigned int sz)"""
7656  return _IMP_core.MonteCarlo_reserve_movers(self, sz)
7657 
7658  def __str__(self):
7659  r"""__str__(MonteCarlo self) -> std::string"""
7660  return _IMP_core.MonteCarlo___str__(self)
7661 
7662  def __repr__(self):
7663  r"""__repr__(MonteCarlo self) -> std::string"""
7664  return _IMP_core.MonteCarlo___repr__(self)
7665 
7666  @staticmethod
7667  def get_from(o):
7668  return _object_cast_to_MonteCarlo(o)
7669 
7670 
7671  def _get_jax(self):
7672  from IMP.core._jax_util import _MCJAXInfo
7673  return _MCJAXInfo(self)
7674 
7675  def _optimize_jax(self, max_steps):
7676  import IMP.core._jax_util
7677  return IMP.core._jax_util._mc_optimize(self, max_steps)
7678 
7679 
7680 # Register MonteCarlo in _IMP_core:
7681 _IMP_core.MonteCarlo_swigregister(MonteCarlo)
7682 class MonteCarloWithLocalOptimization(MonteCarlo):
7683  r"""Proxy of C++ IMP::core::MonteCarloWithLocalOptimization class."""
7684 
7685  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7686 
7687  def __init__(self, opt, steps):
7688  r"""__init__(MonteCarloWithLocalOptimization self, Optimizer opt, unsigned int steps) -> MonteCarloWithLocalOptimization"""
7689  _IMP_core.MonteCarloWithLocalOptimization_swiginit(self, _IMP_core.new_MonteCarloWithLocalOptimization(opt, steps))
7690 
7691  def get_number_of_steps(self):
7692  r"""get_number_of_steps(MonteCarloWithLocalOptimization self) -> unsigned int"""
7693  return _IMP_core.MonteCarloWithLocalOptimization_get_number_of_steps(self)
7694 
7695  def get_local_optimizer(self):
7696  r"""get_local_optimizer(MonteCarloWithLocalOptimization self) -> Optimizer"""
7697  return _IMP_core.MonteCarloWithLocalOptimization_get_local_optimizer(self)
7698  __swig_destroy__ = _IMP_core.delete_MonteCarloWithLocalOptimization
7699 
7700  def __str__(self):
7701  r"""__str__(MonteCarloWithLocalOptimization self) -> std::string"""
7702  return _IMP_core.MonteCarloWithLocalOptimization___str__(self)
7703 
7704  def __repr__(self):
7705  r"""__repr__(MonteCarloWithLocalOptimization self) -> std::string"""
7706  return _IMP_core.MonteCarloWithLocalOptimization___repr__(self)
7707 
7708  @staticmethod
7709  def get_from(o):
7710  return _object_cast_to_MonteCarloWithLocalOptimization(o)
7711 
7712 
7713 # Register MonteCarloWithLocalOptimization in _IMP_core:
7714 _IMP_core.MonteCarloWithLocalOptimization_swigregister(MonteCarloWithLocalOptimization)
7715 class MonteCarloWithBasinHopping(MonteCarloWithLocalOptimization):
7716  r"""Proxy of C++ IMP::core::MonteCarloWithBasinHopping class."""
7717 
7718  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7719 
7720  def __init__(self, opt, ns):
7721  r"""__init__(MonteCarloWithBasinHopping self, Optimizer opt, unsigned int ns) -> MonteCarloWithBasinHopping"""
7722  _IMP_core.MonteCarloWithBasinHopping_swiginit(self, _IMP_core.new_MonteCarloWithBasinHopping(opt, ns))
7723  __swig_destroy__ = _IMP_core.delete_MonteCarloWithBasinHopping
7724 
7725  def __str__(self):
7726  r"""__str__(MonteCarloWithBasinHopping self) -> std::string"""
7727  return _IMP_core.MonteCarloWithBasinHopping___str__(self)
7728 
7729  def __repr__(self):
7730  r"""__repr__(MonteCarloWithBasinHopping self) -> std::string"""
7731  return _IMP_core.MonteCarloWithBasinHopping___repr__(self)
7732 
7733  @staticmethod
7734  def get_from(o):
7735  return _object_cast_to_MonteCarloWithBasinHopping(o)
7736 
7737 
7738 # Register MonteCarloWithBasinHopping in _IMP_core:
7739 _IMP_core.MonteCarloWithBasinHopping_swigregister(MonteCarloWithBasinHopping)
7740 class NeighborsTable(IMP.ScoreState):
7741  r"""Proxy of C++ IMP::core::NeighborsTable class."""
7742 
7743  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7744 
7745  def __init__(self, *args):
7746  r"""__init__(NeighborsTable self, PairContainer input, std::string name="CloseNeighborsTable%1%") -> NeighborsTable"""
7747  _IMP_core.NeighborsTable_swiginit(self, _IMP_core.new_NeighborsTable(*args))
7748 
7749  def get_neighbors(self, pi):
7750  r"""get_neighbors(NeighborsTable self, ParticleIndex pi) -> IMP::ParticleIndexes const &"""
7751  return _IMP_core.NeighborsTable_get_neighbors(self, pi)
7752 
7753  def get_version_info(self):
7754  r"""get_version_info(NeighborsTable self) -> VersionInfo"""
7755  return _IMP_core.NeighborsTable_get_version_info(self)
7756  __swig_destroy__ = _IMP_core.delete_NeighborsTable
7757 
7758  def __str__(self):
7759  r"""__str__(NeighborsTable self) -> std::string"""
7760  return _IMP_core.NeighborsTable___str__(self)
7761 
7762  def __repr__(self):
7763  r"""__repr__(NeighborsTable self) -> std::string"""
7764  return _IMP_core.NeighborsTable___repr__(self)
7765 
7766  @staticmethod
7767  def get_from(o):
7768  return _object_cast_to_NeighborsTable(o)
7769 
7770 
7771 # Register NeighborsTable in _IMP_core:
7772 _IMP_core.NeighborsTable_swigregister(NeighborsTable)
7773 class NormalMover(MonteCarloMover):
7774  r"""Proxy of C++ IMP::core::NormalMover class."""
7775 
7776  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7777 
7778  def __init__(self, *args):
7779  r"""
7780  __init__(NormalMover self, Model m, ParticleIndex pi, IMP::FloatKeys const & vars, double stddev) -> NormalMover
7781  __init__(NormalMover self, Model m, ParticleIndex pi, double stddev) -> NormalMover
7782  __init__(NormalMover self, IMP::ParticlesTemp const & sc, IMP::FloatKeys const & vars, IMP::Float sigma) -> NormalMover
7783  __init__(NormalMover self, IMP::ParticlesTemp const & sc, IMP::Float radius) -> NormalMover
7784  __init__(NormalMover self) -> NormalMover
7785  """
7786  _IMP_core.NormalMover_swiginit(self, _IMP_core.new_NormalMover(*args))
7787 
7788  def set_sigma(self, sigma):
7789  r"""set_sigma(NormalMover self, IMP::Float sigma)"""
7790  return _IMP_core.NormalMover_set_sigma(self, sigma)
7791 
7792  def get_sigma(self):
7793  r"""get_sigma(NormalMover self) -> IMP::Float"""
7794  return _IMP_core.NormalMover_get_sigma(self)
7795 
7796  def get_version_info(self):
7797  r"""get_version_info(NormalMover self) -> VersionInfo"""
7798  return _IMP_core.NormalMover_get_version_info(self)
7799  __swig_destroy__ = _IMP_core.delete_NormalMover
7800 
7801  def __str__(self):
7802  r"""__str__(NormalMover self) -> std::string"""
7803  return _IMP_core.NormalMover___str__(self)
7804 
7805  def __repr__(self):
7806  r"""__repr__(NormalMover self) -> std::string"""
7807  return _IMP_core.NormalMover___repr__(self)
7808 
7809  @staticmethod
7810  def get_from(o):
7811  return _object_cast_to_NormalMover(o)
7812 
7813 
7814  def _get_as_binary(self):
7815  r"""_get_as_binary(NormalMover self) -> PyObject *"""
7816  return _IMP_core.NormalMover__get_as_binary(self)
7817 
7818  def _set_from_binary(self, p):
7819  r"""_set_from_binary(NormalMover self, PyObject * p)"""
7820  return _IMP_core.NormalMover__set_from_binary(self, p)
7821 
7822  def __getstate__(self):
7823  p = self._get_as_binary()
7824  if len(self.__dict__) > 1:
7825  d = self.__dict__.copy()
7826  del d['this']
7827  p = (d, p)
7828  return p
7829 
7830  def __setstate__(self, p):
7831  if not hasattr(self, 'this'):
7832  self.__init__()
7833  if isinstance(p, tuple):
7834  d, p = p
7835  self.__dict__.update(d)
7836  return self._set_from_binary(p)
7837 
7838 
7839 # Register NormalMover in _IMP_core:
7840 _IMP_core.NormalMover_swigregister(NormalMover)
7841 class OpenCubicSpline(_OpenCubicSplineBase):
7842  r"""Proxy of C++ IMP::core::OpenCubicSpline class."""
7843 
7844  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7845 
7846  def __init__(self, values, minrange, spacing, extend=False):
7847  r"""__init__(OpenCubicSpline self, IMP::Floats const & values, IMP::Float minrange, IMP::Float spacing, bool extend=False) -> OpenCubicSpline"""
7848  _IMP_core.OpenCubicSpline_swiginit(self, _IMP_core.new_OpenCubicSpline(values, minrange, spacing, extend))
7849 
7850  def __str__(self):
7851  r"""__str__(OpenCubicSpline self) -> std::string"""
7852  return _IMP_core.OpenCubicSpline___str__(self)
7853 
7854  def __repr__(self):
7855  r"""__repr__(OpenCubicSpline self) -> std::string"""
7856  return _IMP_core.OpenCubicSpline___repr__(self)
7857 
7858  @staticmethod
7859  def get_from(o):
7860  return _object_cast_to_OpenCubicSpline(o)
7861 
7862  __swig_destroy__ = _IMP_core.delete_OpenCubicSpline
7863 
7864 # Register OpenCubicSpline in _IMP_core:
7865 _IMP_core.OpenCubicSpline_swigregister(OpenCubicSpline)
7866 class QuadraticClosePairsFinder(ClosePairsFinder):
7867  r"""Proxy of C++ IMP::core::QuadraticClosePairsFinder class."""
7868 
7869  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7870 
7871  def __init__(self):
7872  r"""__init__(QuadraticClosePairsFinder self) -> QuadraticClosePairsFinder"""
7873  _IMP_core.QuadraticClosePairsFinder_swiginit(self, _IMP_core.new_QuadraticClosePairsFinder())
7874 
7875  def get_are_close_and_filtered(self, *args):
7876  r"""
7877  get_are_close_and_filtered(QuadraticClosePairsFinder self, Particle a, Particle b) -> bool
7878  get_are_close_and_filtered(QuadraticClosePairsFinder self, Model m, ParticleIndex a, ParticleIndex b) -> bool
7879  """
7880  return _IMP_core.QuadraticClosePairsFinder_get_are_close_and_filtered(self, *args)
7881 
7882  def get_close_pairs(self, *args):
7883  r"""
7884  get_close_pairs(QuadraticClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
7885  get_close_pairs(QuadraticClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bas, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
7886  get_close_pairs(QuadraticClosePairsFinder self, Model m, IMP::ParticleIndexes const & pc) -> IMP::ParticleIndexPairs
7887  get_close_pairs(QuadraticClosePairsFinder self, Model m, IMP::ParticleIndexes const & pca, IMP::ParticleIndexes const & pcb) -> IMP::ParticleIndexPairs
7888  """
7889  return _IMP_core.QuadraticClosePairsFinder_get_close_pairs(self, *args)
7890 
7891  def do_get_inputs(self, m, pis):
7892  r"""do_get_inputs(QuadraticClosePairsFinder self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7893  return _IMP_core.QuadraticClosePairsFinder_do_get_inputs(self, m, pis)
7894 
7895  def get_version_info(self):
7896  r"""get_version_info(QuadraticClosePairsFinder self) -> VersionInfo"""
7897  return _IMP_core.QuadraticClosePairsFinder_get_version_info(self)
7898  __swig_destroy__ = _IMP_core.delete_QuadraticClosePairsFinder
7899 
7900  def __str__(self):
7901  r"""__str__(QuadraticClosePairsFinder self) -> std::string"""
7902  return _IMP_core.QuadraticClosePairsFinder___str__(self)
7903 
7904  def __repr__(self):
7905  r"""__repr__(QuadraticClosePairsFinder self) -> std::string"""
7906  return _IMP_core.QuadraticClosePairsFinder___repr__(self)
7907 
7908  @staticmethod
7909  def get_from(o):
7910  return _object_cast_to_QuadraticClosePairsFinder(o)
7911 
7912 
7913 # Register QuadraticClosePairsFinder in _IMP_core:
7914 _IMP_core.QuadraticClosePairsFinder_swigregister(QuadraticClosePairsFinder)
7915 class RefinedPairsPairScore(IMP.PairScore):
7916  r"""Proxy of C++ IMP::core::RefinedPairsPairScore class."""
7917 
7918  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7919 
7920  def __init__(self, r, f):
7921  r"""__init__(RefinedPairsPairScore self, Refiner r, PairScore f) -> RefinedPairsPairScore"""
7922  _IMP_core.RefinedPairsPairScore_swiginit(self, _IMP_core.new_RefinedPairsPairScore(r, f))
7923 
7924  def do_get_inputs(self, m, pis):
7925  r"""do_get_inputs(RefinedPairsPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7926  return _IMP_core.RefinedPairsPairScore_do_get_inputs(self, m, pis)
7927 
7928  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
7929  r"""evaluate_indexes(RefinedPairsPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
7930  return _IMP_core.RefinedPairsPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
7931 
7932  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
7933  r"""evaluate_indexes_scores(RefinedPairsPairScore 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"""
7934  return _IMP_core.RefinedPairsPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
7935 
7936  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
7937  r"""evaluate_indexes_delta(RefinedPairsPairScore 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"""
7938  return _IMP_core.RefinedPairsPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
7939 
7940  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
7941  r"""evaluate_if_good_indexes(RefinedPairsPairScore 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"""
7942  return _IMP_core.RefinedPairsPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
7943 
7944  def get_version_info(self):
7945  r"""get_version_info(RefinedPairsPairScore self) -> VersionInfo"""
7946  return _IMP_core.RefinedPairsPairScore_get_version_info(self)
7947  __swig_destroy__ = _IMP_core.delete_RefinedPairsPairScore
7948 
7949  def __str__(self):
7950  r"""__str__(RefinedPairsPairScore self) -> std::string"""
7951  return _IMP_core.RefinedPairsPairScore___str__(self)
7952 
7953  def __repr__(self):
7954  r"""__repr__(RefinedPairsPairScore self) -> std::string"""
7955  return _IMP_core.RefinedPairsPairScore___repr__(self)
7956 
7957  @staticmethod
7958  def get_from(o):
7959  return _object_cast_to_RefinedPairsPairScore(o)
7960 
7961 
7962 # Register RefinedPairsPairScore in _IMP_core:
7963 _IMP_core.RefinedPairsPairScore_swigregister(RefinedPairsPairScore)
7964 class RigidBody(XYZ):
7965  r"""Proxy of C++ IMP::core::RigidBody class."""
7966 
7967  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7968 
7969  def get_rigid_members(self):
7970  r"""get_rigid_members(RigidBody self) -> IMP::core::RigidMembers"""
7971  return _IMP_core.RigidBody_get_rigid_members(self)
7972 
7973  @staticmethod
7974  def get_rotation_keys():
7975  r"""get_rotation_keys() -> IMP::FloatKeys"""
7976  return _IMP_core.RigidBody_get_rotation_keys()
7977 
7978  def get_member_particle_indexes(self):
7979  r"""get_member_particle_indexes(RigidBody self) -> IMP::ParticleIndexes const &"""
7980  return _IMP_core.RigidBody_get_member_particle_indexes(self)
7981 
7982  def get_body_member_particle_indexes(self):
7983  r"""get_body_member_particle_indexes(RigidBody self) -> IMP::ParticleIndexes const &"""
7984  return _IMP_core.RigidBody_get_body_member_particle_indexes(self)
7985 
7986  def get_member_indexes(self):
7987  r"""get_member_indexes(RigidBody self) -> IMP::ParticleIndexes"""
7988  return _IMP_core.RigidBody_get_member_indexes(self)
7989 
7990  def show(self, *args):
7991  r"""show(RigidBody self, _ostream out=std::cout)"""
7992  return _IMP_core.RigidBody_show(self, *args)
7993 
7994  @staticmethod
7995  def setup_particle(*args):
7996  r"""
7997  setup_particle(Model m, ParticleIndex pi, _ParticleIndexesAdaptor ps) -> RigidBody
7998  setup_particle(_ParticleAdaptor pa, _ParticleIndexesAdaptor ps) -> RigidBody
7999  setup_particle(Model m, ParticleIndex pi, ReferenceFrame3D rf) -> RigidBody
8000  setup_particle(_ParticleAdaptor pa, ReferenceFrame3D rf) -> RigidBody
8001  """
8002  return _IMP_core.RigidBody_setup_particle(*args)
8003 
8004  @staticmethod
8005  def teardown_particle(rb):
8006  r"""teardown_particle(RigidBody rb)"""
8007  return _IMP_core.RigidBody_teardown_particle(rb)
8008 
8009  def __init__(self, *args):
8010  r"""
8011  __init__(RigidBody self) -> RigidBody
8012  __init__(RigidBody self, Model m, ParticleIndex id) -> RigidBody
8013  __init__(RigidBody self, _ParticleAdaptor d) -> RigidBody
8014  __init__(RigidBody self, RigidBody arg2) -> RigidBody
8015  """
8016  _IMP_core.RigidBody_swiginit(self, _IMP_core.new_RigidBody(*args))
8017  __swig_destroy__ = _IMP_core.delete_RigidBody
8018 
8019  @staticmethod
8020  def get_is_setup(*args):
8021  r"""
8022  get_is_setup(_ParticleAdaptor p) -> bool
8023  get_is_setup(Model m, ParticleIndex pi) -> bool
8024  """
8025  return _IMP_core.RigidBody_get_is_setup(*args)
8026 
8027  def get_coordinates(self):
8028  r"""get_coordinates(RigidBody self) -> Vector3D"""
8029  return _IMP_core.RigidBody_get_coordinates(self)
8030 
8031  def get_rotation(self):
8032  r"""get_rotation(RigidBody self) -> Rotation3D"""
8033  return _IMP_core.RigidBody_get_rotation(self)
8034 
8035  def get_reference_frame(self):
8036  r"""get_reference_frame(RigidBody self) -> ReferenceFrame3D"""
8037  return _IMP_core.RigidBody_get_reference_frame(self)
8038 
8039  def set_reference_frame(self, tr):
8040  r"""set_reference_frame(RigidBody self, ReferenceFrame3D tr)"""
8041  return _IMP_core.RigidBody_set_reference_frame(self, tr)
8042 
8043  def set_reference_frame_lazy(self, tr):
8044  r"""set_reference_frame_lazy(RigidBody self, ReferenceFrame3D tr)"""
8045  return _IMP_core.RigidBody_set_reference_frame_lazy(self, tr)
8046 
8047  def set_reference_frame_from_members(self, members):
8048  r"""set_reference_frame_from_members(RigidBody self, IMP::ParticleIndexes const & members)"""
8049  return _IMP_core.RigidBody_set_reference_frame_from_members(self, members)
8050 
8051  def pull_back_members_adjoints(self, da):
8052  r"""pull_back_members_adjoints(RigidBody self, DerivativeAccumulator da)"""
8053  return _IMP_core.RigidBody_pull_back_members_adjoints(self, da)
8054 
8055  def pull_back_member_adjoints(self, pi, da):
8056  r"""pull_back_member_adjoints(RigidBody self, ParticleIndex pi, DerivativeAccumulator da)"""
8057  return _IMP_core.RigidBody_pull_back_member_adjoints(self, pi, da)
8058 
8059  def pull_back_body_member_adjoints(self, pi, da):
8060  r"""pull_back_body_member_adjoints(RigidBody self, ParticleIndex pi, DerivativeAccumulator da)"""
8061  return _IMP_core.RigidBody_pull_back_body_member_adjoints(self, pi, da)
8062 
8063  def add_to_derivatives(self, *args):
8064  r"""
8065  add_to_derivatives(RigidBody self, Vector3D local_derivative, Vector3D local_location, DerivativeAccumulator da)
8066  add_to_derivatives(RigidBody self, Vector3D local_derivative, Vector3D global_derivative, Vector3D local_location, Rotation3D rot_local_to_global, DerivativeAccumulator da)
8067  """
8068  return _IMP_core.RigidBody_add_to_derivatives(self, *args)
8069 
8070  def add_to_rotational_derivatives(self, *args):
8071  r"""
8072  add_to_rotational_derivatives(RigidBody self, Vector4D other_qderiv, Rotation3D rot_other_to_local, Rotation3D rot_local_to_global, DerivativeAccumulator da)
8073  add_to_rotational_derivatives(RigidBody self, Vector4D qderiv, DerivativeAccumulator da)
8074  """
8075  return _IMP_core.RigidBody_add_to_rotational_derivatives(self, *args)
8076 
8077  def add_to_torque(self, torque_local, da):
8078  r"""add_to_torque(RigidBody self, Vector3D torque_local, DerivativeAccumulator da)"""
8079  return _IMP_core.RigidBody_add_to_torque(self, torque_local, da)
8080 
8081  def get_torque(self):
8082  r"""get_torque(RigidBody self) -> Vector3D"""
8083  return _IMP_core.RigidBody_get_torque(self)
8084 
8085  def get_coordinates_are_optimized(self):
8086  r"""get_coordinates_are_optimized(RigidBody self) -> bool"""
8087  return _IMP_core.RigidBody_get_coordinates_are_optimized(self)
8088 
8089  def set_coordinates_are_optimized(self, tf):
8090  r"""set_coordinates_are_optimized(RigidBody self, bool tf)"""
8091  return _IMP_core.RigidBody_set_coordinates_are_optimized(self, tf)
8092 
8093  def normalize_rotation(self):
8094  r"""normalize_rotation(RigidBody self)"""
8095  return _IMP_core.RigidBody_normalize_rotation(self)
8096 
8097  def update_members(self):
8098  r"""update_members(RigidBody self)"""
8099  return _IMP_core.RigidBody_update_members(self)
8100 
8101  def get_rotational_derivatives(self):
8102  r"""get_rotational_derivatives(RigidBody self) -> Vector4D"""
8103  return _IMP_core.RigidBody_get_rotational_derivatives(self)
8104 
8105  def get_number_of_members(self):
8106  r"""get_number_of_members(RigidBody self) -> unsigned int"""
8107  return _IMP_core.RigidBody_get_number_of_members(self)
8108 
8109  def get_member(self, i):
8110  r"""get_member(RigidBody self, unsigned int i) -> RigidBodyMember"""
8111  return _IMP_core.RigidBody_get_member(self, i)
8112 
8113  def add_member(self, p):
8114  r"""add_member(RigidBody self, _ParticleIndexAdaptor p)"""
8115  return _IMP_core.RigidBody_add_member(self, p)
8116 
8117  def add_non_rigid_member(self, p):
8118  r"""add_non_rigid_member(RigidBody self, _ParticleIndexAdaptor p)"""
8119  return _IMP_core.RigidBody_add_non_rigid_member(self, p)
8120 
8121  def set_is_rigid_member(self, pi, tf):
8122  r"""set_is_rigid_member(RigidBody self, ParticleIndex pi, bool tf)"""
8123  return _IMP_core.RigidBody_set_is_rigid_member(self, pi, tf)
8124 
8125  def remove_member(self, p):
8126  r"""remove_member(RigidBody self, _ParticleIndexAdaptor p)"""
8127  return _IMP_core.RigidBody_remove_member(self, p)
8128 
8129  def add_attribute(self, *args):
8130  r"""
8131  add_attribute(RigidBody self, FloatKey k, IMP::Float v, bool opt)
8132  add_attribute(RigidBody self, FloatKey a0, IMP::Float a1)
8133  add_attribute(RigidBody self, IntKey a0, IMP::Int a1)
8134  add_attribute(RigidBody self, FloatsKey a0, IMP::Floats a1)
8135  add_attribute(RigidBody self, IntsKey a0, IMP::Ints a1)
8136  add_attribute(RigidBody self, StringKey a0, IMP::String a1)
8137  add_attribute(RigidBody self, ParticleIndexKey a0, Particle a1)
8138  add_attribute(RigidBody self, ObjectKey a0, Object a1)
8139  add_attribute(RigidBody self, SparseFloatKey a0, IMP::Float a1)
8140  add_attribute(RigidBody self, SparseIntKey a0, IMP::Int a1)
8141  add_attribute(RigidBody self, SparseStringKey a0, IMP::String a1)
8142  add_attribute(RigidBody self, SparseParticleIndexKey a0, ParticleIndex a1)
8143  """
8144  return _IMP_core.RigidBody_add_attribute(self, *args)
8145 
8146  def get_value(self, *args):
8147  r"""
8148  get_value(RigidBody self, FloatKey a0) -> IMP::Float
8149  get_value(RigidBody self, IntKey a0) -> IMP::Int
8150  get_value(RigidBody self, FloatsKey a0) -> IMP::Floats
8151  get_value(RigidBody self, IntsKey a0) -> IMP::Ints
8152  get_value(RigidBody self, StringKey a0) -> IMP::String
8153  get_value(RigidBody self, ParticleIndexKey a0) -> Particle
8154  get_value(RigidBody self, ObjectKey a0) -> Object
8155  get_value(RigidBody self, SparseFloatKey a0) -> IMP::Float
8156  get_value(RigidBody self, SparseIntKey a0) -> IMP::Int
8157  get_value(RigidBody self, SparseStringKey a0) -> IMP::String
8158  get_value(RigidBody self, SparseParticleIndexKey a0) -> ParticleIndex
8159  """
8160  return _IMP_core.RigidBody_get_value(self, *args)
8161 
8162  def set_value(self, *args):
8163  r"""
8164  set_value(RigidBody self, FloatKey a0, IMP::Float a1)
8165  set_value(RigidBody self, IntKey a0, IMP::Int a1)
8166  set_value(RigidBody self, FloatsKey a0, IMP::Floats a1)
8167  set_value(RigidBody self, IntsKey a0, IMP::Ints a1)
8168  set_value(RigidBody self, StringKey a0, IMP::String a1)
8169  set_value(RigidBody self, ParticleIndexKey a0, Particle a1)
8170  set_value(RigidBody self, ObjectKey a0, Object a1)
8171  set_value(RigidBody self, SparseFloatKey a0, IMP::Float a1)
8172  set_value(RigidBody self, SparseIntKey a0, IMP::Int a1)
8173  set_value(RigidBody self, SparseStringKey a0, IMP::String a1)
8174  set_value(RigidBody self, SparseParticleIndexKey a0, ParticleIndex a1)
8175  """
8176  return _IMP_core.RigidBody_set_value(self, *args)
8177 
8178  def remove_attribute(self, *args):
8179  r"""
8180  remove_attribute(RigidBody self, FloatKey a0)
8181  remove_attribute(RigidBody self, IntKey a0)
8182  remove_attribute(RigidBody self, FloatsKey a0)
8183  remove_attribute(RigidBody self, IntsKey a0)
8184  remove_attribute(RigidBody self, StringKey a0)
8185  remove_attribute(RigidBody self, ParticleIndexKey a0)
8186  remove_attribute(RigidBody self, ObjectKey a0)
8187  remove_attribute(RigidBody self, SparseFloatKey a0)
8188  remove_attribute(RigidBody self, SparseIntKey a0)
8189  remove_attribute(RigidBody self, SparseStringKey a0)
8190  remove_attribute(RigidBody self, SparseParticleIndexKey a0)
8191  """
8192  return _IMP_core.RigidBody_remove_attribute(self, *args)
8193 
8194  def has_attribute(self, *args):
8195  r"""
8196  has_attribute(RigidBody self, FloatKey a0) -> bool
8197  has_attribute(RigidBody self, IntKey a0) -> bool
8198  has_attribute(RigidBody self, FloatsKey a0) -> bool
8199  has_attribute(RigidBody self, IntsKey a0) -> bool
8200  has_attribute(RigidBody self, StringKey a0) -> bool
8201  has_attribute(RigidBody self, ParticleIndexKey a0) -> bool
8202  has_attribute(RigidBody self, ObjectKey a0) -> bool
8203  has_attribute(RigidBody self, SparseFloatKey a0) -> bool
8204  has_attribute(RigidBody self, SparseIntKey a0) -> bool
8205  has_attribute(RigidBody self, SparseStringKey a0) -> bool
8206  has_attribute(RigidBody self, SparseParticleIndexKey a0) -> bool
8207  """
8208  return _IMP_core.RigidBody_has_attribute(self, *args)
8209 
8210  def get_derivative(self, a0):
8211  r"""get_derivative(RigidBody self, FloatKey a0) -> double"""
8212  return _IMP_core.RigidBody_get_derivative(self, a0)
8213 
8214  def get_name(self):
8215  r"""get_name(RigidBody self) -> std::string"""
8216  return _IMP_core.RigidBody_get_name(self)
8217 
8218  def clear_caches(self):
8219  r"""clear_caches(RigidBody self)"""
8220  return _IMP_core.RigidBody_clear_caches(self)
8221 
8222  def set_name(self, a0):
8223  r"""set_name(RigidBody self, std::string a0)"""
8224  return _IMP_core.RigidBody_set_name(self, a0)
8225 
8226  def set_check_level(self, a0):
8227  r"""set_check_level(RigidBody self, IMP::CheckLevel a0)"""
8228  return _IMP_core.RigidBody_set_check_level(self, a0)
8229 
8230  def add_to_derivative(self, a0, a1, a2):
8231  r"""add_to_derivative(RigidBody self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8232  return _IMP_core.RigidBody_add_to_derivative(self, a0, a1, a2)
8233 
8234  def set_is_optimized(self, a0, a1):
8235  r"""set_is_optimized(RigidBody self, FloatKey a0, bool a1)"""
8236  return _IMP_core.RigidBody_set_is_optimized(self, a0, a1)
8237 
8238  def get_is_optimized(self, a0):
8239  r"""get_is_optimized(RigidBody self, FloatKey a0) -> bool"""
8240  return _IMP_core.RigidBody_get_is_optimized(self, a0)
8241 
8242  def get_check_level(self):
8243  r"""get_check_level(RigidBody self) -> IMP::CheckLevel"""
8244  return _IMP_core.RigidBody_get_check_level(self)
8245 
8246  def __eq__(self, *args):
8247  r"""
8248  __eq__(RigidBody self, RigidBody o) -> bool
8249  __eq__(RigidBody self, Particle d) -> bool
8250  """
8251  return _IMP_core.RigidBody___eq__(self, *args)
8252 
8253  def __ne__(self, *args):
8254  r"""
8255  __ne__(RigidBody self, RigidBody o) -> bool
8256  __ne__(RigidBody self, Particle d) -> bool
8257  """
8258  return _IMP_core.RigidBody___ne__(self, *args)
8259 
8260  def __le__(self, *args):
8261  r"""
8262  __le__(RigidBody self, RigidBody o) -> bool
8263  __le__(RigidBody self, Particle d) -> bool
8264  """
8265  return _IMP_core.RigidBody___le__(self, *args)
8266 
8267  def __lt__(self, *args):
8268  r"""
8269  __lt__(RigidBody self, RigidBody o) -> bool
8270  __lt__(RigidBody self, Particle d) -> bool
8271  """
8272  return _IMP_core.RigidBody___lt__(self, *args)
8273 
8274  def __ge__(self, *args):
8275  r"""
8276  __ge__(RigidBody self, RigidBody o) -> bool
8277  __ge__(RigidBody self, Particle d) -> bool
8278  """
8279  return _IMP_core.RigidBody___ge__(self, *args)
8280 
8281  def __gt__(self, *args):
8282  r"""
8283  __gt__(RigidBody self, RigidBody o) -> bool
8284  __gt__(RigidBody self, Particle d) -> bool
8285  """
8286  return _IMP_core.RigidBody___gt__(self, *args)
8287 
8288  def __hash__(self):
8289  r"""__hash__(RigidBody self) -> std::size_t"""
8290  return _IMP_core.RigidBody___hash__(self)
8291 
8292  def __str__(self):
8293  r"""__str__(RigidBody self) -> std::string"""
8294  return _IMP_core.RigidBody___str__(self)
8295 
8296  def __repr__(self):
8297  r"""__repr__(RigidBody self) -> std::string"""
8298  return _IMP_core.RigidBody___repr__(self)
8299 
8300  def _get_as_binary(self):
8301  r"""_get_as_binary(RigidBody self) -> PyObject *"""
8302  return _IMP_core.RigidBody__get_as_binary(self)
8303 
8304  def _set_from_binary(self, p):
8305  r"""_set_from_binary(RigidBody self, PyObject * p)"""
8306  return _IMP_core.RigidBody__set_from_binary(self, p)
8307 
8308  def __getstate__(self):
8309  p = self._get_as_binary()
8310  if len(self.__dict__) > 1:
8311  d = self.__dict__.copy()
8312  del d['this']
8313  p = (d, p)
8314  return p
8315 
8316  def __setstate__(self, p):
8317  if not hasattr(self, 'this'):
8318  self.__init__()
8319  if isinstance(p, tuple):
8320  d, p = p
8321  self.__dict__.update(d)
8322  return self._set_from_binary(p)
8323 
8324 
8325 # Register RigidBody in _IMP_core:
8326 _IMP_core.RigidBody_swigregister(RigidBody)
8327 
8329  r"""add_rigid_body_cache_key(ObjectKey k)"""
8330  return _IMP_core.add_rigid_body_cache_key(k)
8331 class RigidBodyMember(XYZ):
8332  r"""Proxy of C++ IMP::core::RigidBodyMember class."""
8333 
8334  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8335 
8336  def show(self, *args):
8337  r"""show(RigidBodyMember self, _ostream out=std::cout)"""
8338  return _IMP_core.RigidBodyMember_show(self, *args)
8339 
8340  def get_rigid_body(self):
8341  r"""get_rigid_body(RigidBodyMember self) -> RigidBody"""
8342  return _IMP_core.RigidBodyMember_get_rigid_body(self)
8343 
8344  def get_internal_coordinates(self):
8345  r"""get_internal_coordinates(RigidBodyMember self) -> Vector3D"""
8346  return _IMP_core.RigidBodyMember_get_internal_coordinates(self)
8347 
8348  def set_internal_coordinates(self, v):
8349  r"""set_internal_coordinates(RigidBodyMember self, Vector3D v)"""
8350  return _IMP_core.RigidBodyMember_set_internal_coordinates(self, v)
8351 
8352  def set_internal_transformation(self, v):
8353  r"""set_internal_transformation(RigidBodyMember self, Transformation3D v)"""
8354  return _IMP_core.RigidBodyMember_set_internal_transformation(self, v)
8355 
8356  def get_internal_transformation(self):
8357  r"""get_internal_transformation(RigidBodyMember self) -> Transformation3D"""
8358  return _IMP_core.RigidBodyMember_get_internal_transformation(self)
8359  __swig_destroy__ = _IMP_core.delete_RigidBodyMember
8360 
8361  def set_coordinates(self, *args):
8362  r"""
8363  set_coordinates(RigidBodyMember self, Vector3D center)
8364  set_coordinates(RigidBodyMember self, Transformation3D tr)
8365  """
8366  return _IMP_core.RigidBodyMember_set_coordinates(self, *args)
8367 
8368  def __init__(self, *args):
8369  r"""
8370  __init__(RigidBodyMember self) -> RigidBodyMember
8371  __init__(RigidBodyMember self, Model m, ParticleIndex id) -> RigidBodyMember
8372  __init__(RigidBodyMember self, _ParticleAdaptor d) -> RigidBodyMember
8373  __init__(RigidBodyMember self, RigidBodyMember arg2) -> RigidBodyMember
8374  """
8375  _IMP_core.RigidBodyMember_swiginit(self, _IMP_core.new_RigidBodyMember(*args))
8376 
8377  @staticmethod
8378  def get_is_setup(*args):
8379  r"""
8380  get_is_setup(_ParticleAdaptor p) -> bool
8381  get_is_setup(Model m, _ParticleIndexAdaptor p) -> bool
8382  """
8383  return _IMP_core.RigidBodyMember_get_is_setup(*args)
8384 
8385  @staticmethod
8386  def get_internal_coordinate_keys():
8387  r"""get_internal_coordinate_keys() -> IMP::FloatKeys"""
8388  return _IMP_core.RigidBodyMember_get_internal_coordinate_keys()
8389 
8390  @staticmethod
8391  def get_internal_rotation_keys():
8392  r"""get_internal_rotation_keys() -> IMP::FloatKeys"""
8393  return _IMP_core.RigidBodyMember_get_internal_rotation_keys()
8394 
8395  def add_attribute(self, *args):
8396  r"""
8397  add_attribute(RigidBodyMember self, FloatKey k, IMP::Float v, bool opt)
8398  add_attribute(RigidBodyMember self, FloatKey a0, IMP::Float a1)
8399  add_attribute(RigidBodyMember self, IntKey a0, IMP::Int a1)
8400  add_attribute(RigidBodyMember self, FloatsKey a0, IMP::Floats a1)
8401  add_attribute(RigidBodyMember self, IntsKey a0, IMP::Ints a1)
8402  add_attribute(RigidBodyMember self, StringKey a0, IMP::String a1)
8403  add_attribute(RigidBodyMember self, ParticleIndexKey a0, Particle a1)
8404  add_attribute(RigidBodyMember self, ObjectKey a0, Object a1)
8405  add_attribute(RigidBodyMember self, SparseFloatKey a0, IMP::Float a1)
8406  add_attribute(RigidBodyMember self, SparseIntKey a0, IMP::Int a1)
8407  add_attribute(RigidBodyMember self, SparseStringKey a0, IMP::String a1)
8408  add_attribute(RigidBodyMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8409  """
8410  return _IMP_core.RigidBodyMember_add_attribute(self, *args)
8411 
8412  def get_value(self, *args):
8413  r"""
8414  get_value(RigidBodyMember self, FloatKey a0) -> IMP::Float
8415  get_value(RigidBodyMember self, IntKey a0) -> IMP::Int
8416  get_value(RigidBodyMember self, FloatsKey a0) -> IMP::Floats
8417  get_value(RigidBodyMember self, IntsKey a0) -> IMP::Ints
8418  get_value(RigidBodyMember self, StringKey a0) -> IMP::String
8419  get_value(RigidBodyMember self, ParticleIndexKey a0) -> Particle
8420  get_value(RigidBodyMember self, ObjectKey a0) -> Object
8421  get_value(RigidBodyMember self, SparseFloatKey a0) -> IMP::Float
8422  get_value(RigidBodyMember self, SparseIntKey a0) -> IMP::Int
8423  get_value(RigidBodyMember self, SparseStringKey a0) -> IMP::String
8424  get_value(RigidBodyMember self, SparseParticleIndexKey a0) -> ParticleIndex
8425  """
8426  return _IMP_core.RigidBodyMember_get_value(self, *args)
8427 
8428  def set_value(self, *args):
8429  r"""
8430  set_value(RigidBodyMember self, FloatKey a0, IMP::Float a1)
8431  set_value(RigidBodyMember self, IntKey a0, IMP::Int a1)
8432  set_value(RigidBodyMember self, FloatsKey a0, IMP::Floats a1)
8433  set_value(RigidBodyMember self, IntsKey a0, IMP::Ints a1)
8434  set_value(RigidBodyMember self, StringKey a0, IMP::String a1)
8435  set_value(RigidBodyMember self, ParticleIndexKey a0, Particle a1)
8436  set_value(RigidBodyMember self, ObjectKey a0, Object a1)
8437  set_value(RigidBodyMember self, SparseFloatKey a0, IMP::Float a1)
8438  set_value(RigidBodyMember self, SparseIntKey a0, IMP::Int a1)
8439  set_value(RigidBodyMember self, SparseStringKey a0, IMP::String a1)
8440  set_value(RigidBodyMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8441  """
8442  return _IMP_core.RigidBodyMember_set_value(self, *args)
8443 
8444  def remove_attribute(self, *args):
8445  r"""
8446  remove_attribute(RigidBodyMember self, FloatKey a0)
8447  remove_attribute(RigidBodyMember self, IntKey a0)
8448  remove_attribute(RigidBodyMember self, FloatsKey a0)
8449  remove_attribute(RigidBodyMember self, IntsKey a0)
8450  remove_attribute(RigidBodyMember self, StringKey a0)
8451  remove_attribute(RigidBodyMember self, ParticleIndexKey a0)
8452  remove_attribute(RigidBodyMember self, ObjectKey a0)
8453  remove_attribute(RigidBodyMember self, SparseFloatKey a0)
8454  remove_attribute(RigidBodyMember self, SparseIntKey a0)
8455  remove_attribute(RigidBodyMember self, SparseStringKey a0)
8456  remove_attribute(RigidBodyMember self, SparseParticleIndexKey a0)
8457  """
8458  return _IMP_core.RigidBodyMember_remove_attribute(self, *args)
8459 
8460  def has_attribute(self, *args):
8461  r"""
8462  has_attribute(RigidBodyMember self, FloatKey a0) -> bool
8463  has_attribute(RigidBodyMember self, IntKey a0) -> bool
8464  has_attribute(RigidBodyMember self, FloatsKey a0) -> bool
8465  has_attribute(RigidBodyMember self, IntsKey a0) -> bool
8466  has_attribute(RigidBodyMember self, StringKey a0) -> bool
8467  has_attribute(RigidBodyMember self, ParticleIndexKey a0) -> bool
8468  has_attribute(RigidBodyMember self, ObjectKey a0) -> bool
8469  has_attribute(RigidBodyMember self, SparseFloatKey a0) -> bool
8470  has_attribute(RigidBodyMember self, SparseIntKey a0) -> bool
8471  has_attribute(RigidBodyMember self, SparseStringKey a0) -> bool
8472  has_attribute(RigidBodyMember self, SparseParticleIndexKey a0) -> bool
8473  """
8474  return _IMP_core.RigidBodyMember_has_attribute(self, *args)
8475 
8476  def get_derivative(self, a0):
8477  r"""get_derivative(RigidBodyMember self, FloatKey a0) -> double"""
8478  return _IMP_core.RigidBodyMember_get_derivative(self, a0)
8479 
8480  def get_name(self):
8481  r"""get_name(RigidBodyMember self) -> std::string"""
8482  return _IMP_core.RigidBodyMember_get_name(self)
8483 
8484  def clear_caches(self):
8485  r"""clear_caches(RigidBodyMember self)"""
8486  return _IMP_core.RigidBodyMember_clear_caches(self)
8487 
8488  def set_name(self, a0):
8489  r"""set_name(RigidBodyMember self, std::string a0)"""
8490  return _IMP_core.RigidBodyMember_set_name(self, a0)
8491 
8492  def set_check_level(self, a0):
8493  r"""set_check_level(RigidBodyMember self, IMP::CheckLevel a0)"""
8494  return _IMP_core.RigidBodyMember_set_check_level(self, a0)
8495 
8496  def add_to_derivative(self, a0, a1, a2):
8497  r"""add_to_derivative(RigidBodyMember self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8498  return _IMP_core.RigidBodyMember_add_to_derivative(self, a0, a1, a2)
8499 
8500  def set_is_optimized(self, a0, a1):
8501  r"""set_is_optimized(RigidBodyMember self, FloatKey a0, bool a1)"""
8502  return _IMP_core.RigidBodyMember_set_is_optimized(self, a0, a1)
8503 
8504  def get_is_optimized(self, a0):
8505  r"""get_is_optimized(RigidBodyMember self, FloatKey a0) -> bool"""
8506  return _IMP_core.RigidBodyMember_get_is_optimized(self, a0)
8507 
8508  def get_check_level(self):
8509  r"""get_check_level(RigidBodyMember self) -> IMP::CheckLevel"""
8510  return _IMP_core.RigidBodyMember_get_check_level(self)
8511 
8512  def __eq__(self, *args):
8513  r"""
8514  __eq__(RigidBodyMember self, RigidBodyMember o) -> bool
8515  __eq__(RigidBodyMember self, Particle d) -> bool
8516  """
8517  return _IMP_core.RigidBodyMember___eq__(self, *args)
8518 
8519  def __ne__(self, *args):
8520  r"""
8521  __ne__(RigidBodyMember self, RigidBodyMember o) -> bool
8522  __ne__(RigidBodyMember self, Particle d) -> bool
8523  """
8524  return _IMP_core.RigidBodyMember___ne__(self, *args)
8525 
8526  def __le__(self, *args):
8527  r"""
8528  __le__(RigidBodyMember self, RigidBodyMember o) -> bool
8529  __le__(RigidBodyMember self, Particle d) -> bool
8530  """
8531  return _IMP_core.RigidBodyMember___le__(self, *args)
8532 
8533  def __lt__(self, *args):
8534  r"""
8535  __lt__(RigidBodyMember self, RigidBodyMember o) -> bool
8536  __lt__(RigidBodyMember self, Particle d) -> bool
8537  """
8538  return _IMP_core.RigidBodyMember___lt__(self, *args)
8539 
8540  def __ge__(self, *args):
8541  r"""
8542  __ge__(RigidBodyMember self, RigidBodyMember o) -> bool
8543  __ge__(RigidBodyMember self, Particle d) -> bool
8544  """
8545  return _IMP_core.RigidBodyMember___ge__(self, *args)
8546 
8547  def __gt__(self, *args):
8548  r"""
8549  __gt__(RigidBodyMember self, RigidBodyMember o) -> bool
8550  __gt__(RigidBodyMember self, Particle d) -> bool
8551  """
8552  return _IMP_core.RigidBodyMember___gt__(self, *args)
8553 
8554  def __hash__(self):
8555  r"""__hash__(RigidBodyMember self) -> std::size_t"""
8556  return _IMP_core.RigidBodyMember___hash__(self)
8557 
8558  def __str__(self):
8559  r"""__str__(RigidBodyMember self) -> std::string"""
8560  return _IMP_core.RigidBodyMember___str__(self)
8561 
8562  def __repr__(self):
8563  r"""__repr__(RigidBodyMember self) -> std::string"""
8564  return _IMP_core.RigidBodyMember___repr__(self)
8565 
8566  def _get_as_binary(self):
8567  r"""_get_as_binary(RigidBodyMember self) -> PyObject *"""
8568  return _IMP_core.RigidBodyMember__get_as_binary(self)
8569 
8570  def _set_from_binary(self, p):
8571  r"""_set_from_binary(RigidBodyMember self, PyObject * p)"""
8572  return _IMP_core.RigidBodyMember__set_from_binary(self, p)
8573 
8574  def __getstate__(self):
8575  p = self._get_as_binary()
8576  if len(self.__dict__) > 1:
8577  d = self.__dict__.copy()
8578  del d['this']
8579  p = (d, p)
8580  return p
8581 
8582  def __setstate__(self, p):
8583  if not hasattr(self, 'this'):
8584  self.__init__()
8585  if isinstance(p, tuple):
8586  d, p = p
8587  self.__dict__.update(d)
8588  return self._set_from_binary(p)
8589 
8590 
8591 # Register RigidBodyMember in _IMP_core:
8592 _IMP_core.RigidBodyMember_swigregister(RigidBodyMember)
8593 class RigidMember(RigidBodyMember):
8594  r"""Proxy of C++ IMP::core::RigidMember class."""
8595 
8596  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8597 
8598  def show(self, *args):
8599  r"""show(RigidMember self, _ostream out=std::cout)"""
8600  return _IMP_core.RigidMember_show(self, *args)
8601 
8602  def __init__(self, *args):
8603  r"""
8604  __init__(RigidMember self) -> RigidMember
8605  __init__(RigidMember self, Model m, ParticleIndex id) -> RigidMember
8606  __init__(RigidMember self, _ParticleAdaptor d) -> RigidMember
8607  __init__(RigidMember self, RigidMember arg2) -> RigidMember
8608  """
8609  _IMP_core.RigidMember_swiginit(self, _IMP_core.new_RigidMember(*args))
8610  __swig_destroy__ = _IMP_core.delete_RigidMember
8611 
8612  @staticmethod
8613  def get_is_setup(*args):
8614  r"""
8615  get_is_setup(_ParticleAdaptor p) -> bool
8616  get_is_setup(Model m, _ParticleIndexAdaptor p) -> bool
8617  """
8618  return _IMP_core.RigidMember_get_is_setup(*args)
8619 
8620  def add_attribute(self, *args):
8621  r"""
8622  add_attribute(RigidMember self, FloatKey k, IMP::Float v, bool opt)
8623  add_attribute(RigidMember self, FloatKey a0, IMP::Float a1)
8624  add_attribute(RigidMember self, IntKey a0, IMP::Int a1)
8625  add_attribute(RigidMember self, FloatsKey a0, IMP::Floats a1)
8626  add_attribute(RigidMember self, IntsKey a0, IMP::Ints a1)
8627  add_attribute(RigidMember self, StringKey a0, IMP::String a1)
8628  add_attribute(RigidMember self, ParticleIndexKey a0, Particle a1)
8629  add_attribute(RigidMember self, ObjectKey a0, Object a1)
8630  add_attribute(RigidMember self, SparseFloatKey a0, IMP::Float a1)
8631  add_attribute(RigidMember self, SparseIntKey a0, IMP::Int a1)
8632  add_attribute(RigidMember self, SparseStringKey a0, IMP::String a1)
8633  add_attribute(RigidMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8634  """
8635  return _IMP_core.RigidMember_add_attribute(self, *args)
8636 
8637  def get_value(self, *args):
8638  r"""
8639  get_value(RigidMember self, FloatKey a0) -> IMP::Float
8640  get_value(RigidMember self, IntKey a0) -> IMP::Int
8641  get_value(RigidMember self, FloatsKey a0) -> IMP::Floats
8642  get_value(RigidMember self, IntsKey a0) -> IMP::Ints
8643  get_value(RigidMember self, StringKey a0) -> IMP::String
8644  get_value(RigidMember self, ParticleIndexKey a0) -> Particle
8645  get_value(RigidMember self, ObjectKey a0) -> Object
8646  get_value(RigidMember self, SparseFloatKey a0) -> IMP::Float
8647  get_value(RigidMember self, SparseIntKey a0) -> IMP::Int
8648  get_value(RigidMember self, SparseStringKey a0) -> IMP::String
8649  get_value(RigidMember self, SparseParticleIndexKey a0) -> ParticleIndex
8650  """
8651  return _IMP_core.RigidMember_get_value(self, *args)
8652 
8653  def set_value(self, *args):
8654  r"""
8655  set_value(RigidMember self, FloatKey a0, IMP::Float a1)
8656  set_value(RigidMember self, IntKey a0, IMP::Int a1)
8657  set_value(RigidMember self, FloatsKey a0, IMP::Floats a1)
8658  set_value(RigidMember self, IntsKey a0, IMP::Ints a1)
8659  set_value(RigidMember self, StringKey a0, IMP::String a1)
8660  set_value(RigidMember self, ParticleIndexKey a0, Particle a1)
8661  set_value(RigidMember self, ObjectKey a0, Object a1)
8662  set_value(RigidMember self, SparseFloatKey a0, IMP::Float a1)
8663  set_value(RigidMember self, SparseIntKey a0, IMP::Int a1)
8664  set_value(RigidMember self, SparseStringKey a0, IMP::String a1)
8665  set_value(RigidMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8666  """
8667  return _IMP_core.RigidMember_set_value(self, *args)
8668 
8669  def remove_attribute(self, *args):
8670  r"""
8671  remove_attribute(RigidMember self, FloatKey a0)
8672  remove_attribute(RigidMember self, IntKey a0)
8673  remove_attribute(RigidMember self, FloatsKey a0)
8674  remove_attribute(RigidMember self, IntsKey a0)
8675  remove_attribute(RigidMember self, StringKey a0)
8676  remove_attribute(RigidMember self, ParticleIndexKey a0)
8677  remove_attribute(RigidMember self, ObjectKey a0)
8678  remove_attribute(RigidMember self, SparseFloatKey a0)
8679  remove_attribute(RigidMember self, SparseIntKey a0)
8680  remove_attribute(RigidMember self, SparseStringKey a0)
8681  remove_attribute(RigidMember self, SparseParticleIndexKey a0)
8682  """
8683  return _IMP_core.RigidMember_remove_attribute(self, *args)
8684 
8685  def has_attribute(self, *args):
8686  r"""
8687  has_attribute(RigidMember self, FloatKey a0) -> bool
8688  has_attribute(RigidMember self, IntKey a0) -> bool
8689  has_attribute(RigidMember self, FloatsKey a0) -> bool
8690  has_attribute(RigidMember self, IntsKey a0) -> bool
8691  has_attribute(RigidMember self, StringKey a0) -> bool
8692  has_attribute(RigidMember self, ParticleIndexKey a0) -> bool
8693  has_attribute(RigidMember self, ObjectKey a0) -> bool
8694  has_attribute(RigidMember self, SparseFloatKey a0) -> bool
8695  has_attribute(RigidMember self, SparseIntKey a0) -> bool
8696  has_attribute(RigidMember self, SparseStringKey a0) -> bool
8697  has_attribute(RigidMember self, SparseParticleIndexKey a0) -> bool
8698  """
8699  return _IMP_core.RigidMember_has_attribute(self, *args)
8700 
8701  def get_derivative(self, a0):
8702  r"""get_derivative(RigidMember self, FloatKey a0) -> double"""
8703  return _IMP_core.RigidMember_get_derivative(self, a0)
8704 
8705  def get_name(self):
8706  r"""get_name(RigidMember self) -> std::string"""
8707  return _IMP_core.RigidMember_get_name(self)
8708 
8709  def clear_caches(self):
8710  r"""clear_caches(RigidMember self)"""
8711  return _IMP_core.RigidMember_clear_caches(self)
8712 
8713  def set_name(self, a0):
8714  r"""set_name(RigidMember self, std::string a0)"""
8715  return _IMP_core.RigidMember_set_name(self, a0)
8716 
8717  def set_check_level(self, a0):
8718  r"""set_check_level(RigidMember self, IMP::CheckLevel a0)"""
8719  return _IMP_core.RigidMember_set_check_level(self, a0)
8720 
8721  def add_to_derivative(self, a0, a1, a2):
8722  r"""add_to_derivative(RigidMember self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8723  return _IMP_core.RigidMember_add_to_derivative(self, a0, a1, a2)
8724 
8725  def set_is_optimized(self, a0, a1):
8726  r"""set_is_optimized(RigidMember self, FloatKey a0, bool a1)"""
8727  return _IMP_core.RigidMember_set_is_optimized(self, a0, a1)
8728 
8729  def get_is_optimized(self, a0):
8730  r"""get_is_optimized(RigidMember self, FloatKey a0) -> bool"""
8731  return _IMP_core.RigidMember_get_is_optimized(self, a0)
8732 
8733  def get_check_level(self):
8734  r"""get_check_level(RigidMember self) -> IMP::CheckLevel"""
8735  return _IMP_core.RigidMember_get_check_level(self)
8736 
8737  def __eq__(self, *args):
8738  r"""
8739  __eq__(RigidMember self, RigidMember o) -> bool
8740  __eq__(RigidMember self, Particle d) -> bool
8741  """
8742  return _IMP_core.RigidMember___eq__(self, *args)
8743 
8744  def __ne__(self, *args):
8745  r"""
8746  __ne__(RigidMember self, RigidMember o) -> bool
8747  __ne__(RigidMember self, Particle d) -> bool
8748  """
8749  return _IMP_core.RigidMember___ne__(self, *args)
8750 
8751  def __le__(self, *args):
8752  r"""
8753  __le__(RigidMember self, RigidMember o) -> bool
8754  __le__(RigidMember self, Particle d) -> bool
8755  """
8756  return _IMP_core.RigidMember___le__(self, *args)
8757 
8758  def __lt__(self, *args):
8759  r"""
8760  __lt__(RigidMember self, RigidMember o) -> bool
8761  __lt__(RigidMember self, Particle d) -> bool
8762  """
8763  return _IMP_core.RigidMember___lt__(self, *args)
8764 
8765  def __ge__(self, *args):
8766  r"""
8767  __ge__(RigidMember self, RigidMember o) -> bool
8768  __ge__(RigidMember self, Particle d) -> bool
8769  """
8770  return _IMP_core.RigidMember___ge__(self, *args)
8771 
8772  def __gt__(self, *args):
8773  r"""
8774  __gt__(RigidMember self, RigidMember o) -> bool
8775  __gt__(RigidMember self, Particle d) -> bool
8776  """
8777  return _IMP_core.RigidMember___gt__(self, *args)
8778 
8779  def __hash__(self):
8780  r"""__hash__(RigidMember self) -> std::size_t"""
8781  return _IMP_core.RigidMember___hash__(self)
8782 
8783  def __str__(self):
8784  r"""__str__(RigidMember self) -> std::string"""
8785  return _IMP_core.RigidMember___str__(self)
8786 
8787  def __repr__(self):
8788  r"""__repr__(RigidMember self) -> std::string"""
8789  return _IMP_core.RigidMember___repr__(self)
8790 
8791  def _get_as_binary(self):
8792  r"""_get_as_binary(RigidMember self) -> PyObject *"""
8793  return _IMP_core.RigidMember__get_as_binary(self)
8794 
8795  def _set_from_binary(self, p):
8796  r"""_set_from_binary(RigidMember self, PyObject * p)"""
8797  return _IMP_core.RigidMember__set_from_binary(self, p)
8798 
8799  def __getstate__(self):
8800  p = self._get_as_binary()
8801  if len(self.__dict__) > 1:
8802  d = self.__dict__.copy()
8803  del d['this']
8804  p = (d, p)
8805  return p
8806 
8807  def __setstate__(self, p):
8808  if not hasattr(self, 'this'):
8809  self.__init__()
8810  if isinstance(p, tuple):
8811  d, p = p
8812  self.__dict__.update(d)
8813  return self._set_from_binary(p)
8814 
8815 
8816 # Register RigidMember in _IMP_core:
8817 _IMP_core.RigidMember_swigregister(RigidMember)
8818 class NonRigidMember(RigidBodyMember):
8819  r"""Proxy of C++ IMP::core::NonRigidMember class."""
8820 
8821  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8822 
8823  def show(self, *args):
8824  r"""show(NonRigidMember self, _ostream out=std::cout)"""
8825  return _IMP_core.NonRigidMember_show(self, *args)
8826 
8827  def __init__(self, *args):
8828  r"""
8829  __init__(NonRigidMember self) -> NonRigidMember
8830  __init__(NonRigidMember self, Model m, ParticleIndex id) -> NonRigidMember
8831  __init__(NonRigidMember self, _ParticleAdaptor d) -> NonRigidMember
8832  __init__(NonRigidMember self, NonRigidMember arg2) -> NonRigidMember
8833  """
8834  _IMP_core.NonRigidMember_swiginit(self, _IMP_core.new_NonRigidMember(*args))
8835  __swig_destroy__ = _IMP_core.delete_NonRigidMember
8836 
8837  @staticmethod
8838  def get_is_setup(*args):
8839  r"""
8840  get_is_setup(_ParticleAdaptor p) -> bool
8841  get_is_setup(Model m, ParticleIndex p) -> bool
8842  """
8843  return _IMP_core.NonRigidMember_get_is_setup(*args)
8844 
8845  def add_to_internal_derivatives(self, deriv_parent, da):
8846  r"""add_to_internal_derivatives(NonRigidMember self, Vector3D deriv_parent, DerivativeAccumulator da)"""
8847  return _IMP_core.NonRigidMember_add_to_internal_derivatives(self, deriv_parent, da)
8848 
8849  def add_to_internal_rotational_derivatives(self, *args):
8850  r"""
8851  add_to_internal_rotational_derivatives(NonRigidMember self, Vector4D local_qderiv, Rotation3D rot_local_to_parent, Rotation3D rot_parent_to_global, DerivativeAccumulator da)
8852  add_to_internal_rotational_derivatives(NonRigidMember self, Vector4D qderiv, DerivativeAccumulator da)
8853  """
8854  return _IMP_core.NonRigidMember_add_to_internal_rotational_derivatives(self, *args)
8855 
8856  def get_internal_derivatives(self):
8857  r"""get_internal_derivatives(NonRigidMember self) -> Vector3D"""
8858  return _IMP_core.NonRigidMember_get_internal_derivatives(self)
8859 
8860  def get_internal_rotational_derivatives(self):
8861  r"""get_internal_rotational_derivatives(NonRigidMember self) -> Vector4D"""
8862  return _IMP_core.NonRigidMember_get_internal_rotational_derivatives(self)
8863 
8864  def add_attribute(self, *args):
8865  r"""
8866  add_attribute(NonRigidMember self, FloatKey k, IMP::Float v, bool opt)
8867  add_attribute(NonRigidMember self, FloatKey a0, IMP::Float a1)
8868  add_attribute(NonRigidMember self, IntKey a0, IMP::Int a1)
8869  add_attribute(NonRigidMember self, FloatsKey a0, IMP::Floats a1)
8870  add_attribute(NonRigidMember self, IntsKey a0, IMP::Ints a1)
8871  add_attribute(NonRigidMember self, StringKey a0, IMP::String a1)
8872  add_attribute(NonRigidMember self, ParticleIndexKey a0, Particle a1)
8873  add_attribute(NonRigidMember self, ObjectKey a0, Object a1)
8874  add_attribute(NonRigidMember self, SparseFloatKey a0, IMP::Float a1)
8875  add_attribute(NonRigidMember self, SparseIntKey a0, IMP::Int a1)
8876  add_attribute(NonRigidMember self, SparseStringKey a0, IMP::String a1)
8877  add_attribute(NonRigidMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8878  """
8879  return _IMP_core.NonRigidMember_add_attribute(self, *args)
8880 
8881  def get_value(self, *args):
8882  r"""
8883  get_value(NonRigidMember self, FloatKey a0) -> IMP::Float
8884  get_value(NonRigidMember self, IntKey a0) -> IMP::Int
8885  get_value(NonRigidMember self, FloatsKey a0) -> IMP::Floats
8886  get_value(NonRigidMember self, IntsKey a0) -> IMP::Ints
8887  get_value(NonRigidMember self, StringKey a0) -> IMP::String
8888  get_value(NonRigidMember self, ParticleIndexKey a0) -> Particle
8889  get_value(NonRigidMember self, ObjectKey a0) -> Object
8890  get_value(NonRigidMember self, SparseFloatKey a0) -> IMP::Float
8891  get_value(NonRigidMember self, SparseIntKey a0) -> IMP::Int
8892  get_value(NonRigidMember self, SparseStringKey a0) -> IMP::String
8893  get_value(NonRigidMember self, SparseParticleIndexKey a0) -> ParticleIndex
8894  """
8895  return _IMP_core.NonRigidMember_get_value(self, *args)
8896 
8897  def set_value(self, *args):
8898  r"""
8899  set_value(NonRigidMember self, FloatKey a0, IMP::Float a1)
8900  set_value(NonRigidMember self, IntKey a0, IMP::Int a1)
8901  set_value(NonRigidMember self, FloatsKey a0, IMP::Floats a1)
8902  set_value(NonRigidMember self, IntsKey a0, IMP::Ints a1)
8903  set_value(NonRigidMember self, StringKey a0, IMP::String a1)
8904  set_value(NonRigidMember self, ParticleIndexKey a0, Particle a1)
8905  set_value(NonRigidMember self, ObjectKey a0, Object a1)
8906  set_value(NonRigidMember self, SparseFloatKey a0, IMP::Float a1)
8907  set_value(NonRigidMember self, SparseIntKey a0, IMP::Int a1)
8908  set_value(NonRigidMember self, SparseStringKey a0, IMP::String a1)
8909  set_value(NonRigidMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8910  """
8911  return _IMP_core.NonRigidMember_set_value(self, *args)
8912 
8913  def remove_attribute(self, *args):
8914  r"""
8915  remove_attribute(NonRigidMember self, FloatKey a0)
8916  remove_attribute(NonRigidMember self, IntKey a0)
8917  remove_attribute(NonRigidMember self, FloatsKey a0)
8918  remove_attribute(NonRigidMember self, IntsKey a0)
8919  remove_attribute(NonRigidMember self, StringKey a0)
8920  remove_attribute(NonRigidMember self, ParticleIndexKey a0)
8921  remove_attribute(NonRigidMember self, ObjectKey a0)
8922  remove_attribute(NonRigidMember self, SparseFloatKey a0)
8923  remove_attribute(NonRigidMember self, SparseIntKey a0)
8924  remove_attribute(NonRigidMember self, SparseStringKey a0)
8925  remove_attribute(NonRigidMember self, SparseParticleIndexKey a0)
8926  """
8927  return _IMP_core.NonRigidMember_remove_attribute(self, *args)
8928 
8929  def has_attribute(self, *args):
8930  r"""
8931  has_attribute(NonRigidMember self, FloatKey a0) -> bool
8932  has_attribute(NonRigidMember self, IntKey a0) -> bool
8933  has_attribute(NonRigidMember self, FloatsKey a0) -> bool
8934  has_attribute(NonRigidMember self, IntsKey a0) -> bool
8935  has_attribute(NonRigidMember self, StringKey a0) -> bool
8936  has_attribute(NonRigidMember self, ParticleIndexKey a0) -> bool
8937  has_attribute(NonRigidMember self, ObjectKey a0) -> bool
8938  has_attribute(NonRigidMember self, SparseFloatKey a0) -> bool
8939  has_attribute(NonRigidMember self, SparseIntKey a0) -> bool
8940  has_attribute(NonRigidMember self, SparseStringKey a0) -> bool
8941  has_attribute(NonRigidMember self, SparseParticleIndexKey a0) -> bool
8942  """
8943  return _IMP_core.NonRigidMember_has_attribute(self, *args)
8944 
8945  def get_derivative(self, a0):
8946  r"""get_derivative(NonRigidMember self, FloatKey a0) -> double"""
8947  return _IMP_core.NonRigidMember_get_derivative(self, a0)
8948 
8949  def get_name(self):
8950  r"""get_name(NonRigidMember self) -> std::string"""
8951  return _IMP_core.NonRigidMember_get_name(self)
8952 
8953  def clear_caches(self):
8954  r"""clear_caches(NonRigidMember self)"""
8955  return _IMP_core.NonRigidMember_clear_caches(self)
8956 
8957  def set_name(self, a0):
8958  r"""set_name(NonRigidMember self, std::string a0)"""
8959  return _IMP_core.NonRigidMember_set_name(self, a0)
8960 
8961  def set_check_level(self, a0):
8962  r"""set_check_level(NonRigidMember self, IMP::CheckLevel a0)"""
8963  return _IMP_core.NonRigidMember_set_check_level(self, a0)
8964 
8965  def add_to_derivative(self, a0, a1, a2):
8966  r"""add_to_derivative(NonRigidMember self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8967  return _IMP_core.NonRigidMember_add_to_derivative(self, a0, a1, a2)
8968 
8969  def set_is_optimized(self, a0, a1):
8970  r"""set_is_optimized(NonRigidMember self, FloatKey a0, bool a1)"""
8971  return _IMP_core.NonRigidMember_set_is_optimized(self, a0, a1)
8972 
8973  def get_is_optimized(self, a0):
8974  r"""get_is_optimized(NonRigidMember self, FloatKey a0) -> bool"""
8975  return _IMP_core.NonRigidMember_get_is_optimized(self, a0)
8976 
8977  def get_check_level(self):
8978  r"""get_check_level(NonRigidMember self) -> IMP::CheckLevel"""
8979  return _IMP_core.NonRigidMember_get_check_level(self)
8980 
8981  def __eq__(self, *args):
8982  r"""
8983  __eq__(NonRigidMember self, NonRigidMember o) -> bool
8984  __eq__(NonRigidMember self, Particle d) -> bool
8985  """
8986  return _IMP_core.NonRigidMember___eq__(self, *args)
8987 
8988  def __ne__(self, *args):
8989  r"""
8990  __ne__(NonRigidMember self, NonRigidMember o) -> bool
8991  __ne__(NonRigidMember self, Particle d) -> bool
8992  """
8993  return _IMP_core.NonRigidMember___ne__(self, *args)
8994 
8995  def __le__(self, *args):
8996  r"""
8997  __le__(NonRigidMember self, NonRigidMember o) -> bool
8998  __le__(NonRigidMember self, Particle d) -> bool
8999  """
9000  return _IMP_core.NonRigidMember___le__(self, *args)
9001 
9002  def __lt__(self, *args):
9003  r"""
9004  __lt__(NonRigidMember self, NonRigidMember o) -> bool
9005  __lt__(NonRigidMember self, Particle d) -> bool
9006  """
9007  return _IMP_core.NonRigidMember___lt__(self, *args)
9008 
9009  def __ge__(self, *args):
9010  r"""
9011  __ge__(NonRigidMember self, NonRigidMember o) -> bool
9012  __ge__(NonRigidMember self, Particle d) -> bool
9013  """
9014  return _IMP_core.NonRigidMember___ge__(self, *args)
9015 
9016  def __gt__(self, *args):
9017  r"""
9018  __gt__(NonRigidMember self, NonRigidMember o) -> bool
9019  __gt__(NonRigidMember self, Particle d) -> bool
9020  """
9021  return _IMP_core.NonRigidMember___gt__(self, *args)
9022 
9023  def __hash__(self):
9024  r"""__hash__(NonRigidMember self) -> std::size_t"""
9025  return _IMP_core.NonRigidMember___hash__(self)
9026 
9027  def __str__(self):
9028  r"""__str__(NonRigidMember self) -> std::string"""
9029  return _IMP_core.NonRigidMember___str__(self)
9030 
9031  def __repr__(self):
9032  r"""__repr__(NonRigidMember self) -> std::string"""
9033  return _IMP_core.NonRigidMember___repr__(self)
9034 
9035  def _get_as_binary(self):
9036  r"""_get_as_binary(NonRigidMember self) -> PyObject *"""
9037  return _IMP_core.NonRigidMember__get_as_binary(self)
9038 
9039  def _set_from_binary(self, p):
9040  r"""_set_from_binary(NonRigidMember self, PyObject * p)"""
9041  return _IMP_core.NonRigidMember__set_from_binary(self, p)
9042 
9043  def __getstate__(self):
9044  p = self._get_as_binary()
9045  if len(self.__dict__) > 1:
9046  d = self.__dict__.copy()
9047  del d['this']
9048  p = (d, p)
9049  return p
9050 
9051  def __setstate__(self, p):
9052  if not hasattr(self, 'this'):
9053  self.__init__()
9054  if isinstance(p, tuple):
9055  d, p = p
9056  self.__dict__.update(d)
9057  return self._set_from_binary(p)
9058 
9059 
9060 # Register NonRigidMember in _IMP_core:
9061 _IMP_core.NonRigidMember_swigregister(NonRigidMember)
9062 class RigidMembersRefiner(IMP.Refiner):
9063  r"""Proxy of C++ IMP::core::RigidMembersRefiner class."""
9064 
9065  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9066 
9067  def __init__(self, *args):
9068  r"""__init__(RigidMembersRefiner self, std::string name="RigidMembersRefiner%d") -> RigidMembersRefiner"""
9069  _IMP_core.RigidMembersRefiner_swiginit(self, _IMP_core.new_RigidMembersRefiner(*args))
9070 
9071  def do_get_inputs(self, m, pis):
9072  r"""do_get_inputs(RigidMembersRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9073  return _IMP_core.RigidMembersRefiner_do_get_inputs(self, m, pis)
9074 
9075  def get_version_info(self):
9076  r"""get_version_info(RigidMembersRefiner self) -> VersionInfo"""
9077  return _IMP_core.RigidMembersRefiner_get_version_info(self)
9078  __swig_destroy__ = _IMP_core.delete_RigidMembersRefiner
9079 
9080  def __str__(self):
9081  r"""__str__(RigidMembersRefiner self) -> std::string"""
9082  return _IMP_core.RigidMembersRefiner___str__(self)
9083 
9084  def __repr__(self):
9085  r"""__repr__(RigidMembersRefiner self) -> std::string"""
9086  return _IMP_core.RigidMembersRefiner___repr__(self)
9087 
9088  @staticmethod
9089  def get_from(o):
9090  return _object_cast_to_RigidMembersRefiner(o)
9091 
9092 
9093 # Register RigidMembersRefiner in _IMP_core:
9094 _IMP_core.RigidMembersRefiner_swigregister(RigidMembersRefiner)
9095 
9096 def get_rigid_members_refiner():
9097  r"""get_rigid_members_refiner() -> RigidMembersRefiner"""
9098  return _IMP_core.get_rigid_members_refiner()
9099 
9100 def transform(*args):
9101  r"""
9102  transform(XYZ a, Transformation3D tr)
9103  transform(RigidBody a, Transformation3D tr)
9104  """
9105  return _IMP_core.transform(*args)
9106 
9107 def get_initial_reference_frame(*args):
9108  r"""
9109  get_initial_reference_frame(Model m, IMP::ParticleIndexes const & pis) -> ReferenceFrame3D
9110  get_initial_reference_frame(IMP::ParticlesTemp const & ps) -> ReferenceFrame3D
9111  """
9112  return _IMP_core.get_initial_reference_frame(*args)
9113 
9114 def create_rigid_bodies(m, n, no_members=False):
9115  r"""create_rigid_bodies(Model m, unsigned int n, bool no_members=False) -> IMP::ParticlesTemp"""
9116  return _IMP_core.create_rigid_bodies(m, n, no_members)
9117 
9118 def show_rigid_body_hierarchy(*args):
9119  r"""show_rigid_body_hierarchy(RigidBody rb, TextOutput out=IMP::TextOutput(std::cout))"""
9120  return _IMP_core.show_rigid_body_hierarchy(*args)
9121 
9122 def get_root_rigid_body(m):
9123  r"""get_root_rigid_body(RigidMember m) -> ParticleIndex"""
9124  return _IMP_core.get_root_rigid_body(m)
9125 class RigidBodyHierarchyGeometry(IMP.display.SingletonGeometry):
9126  r"""Proxy of C++ IMP::core::RigidBodyHierarchyGeometry class."""
9127 
9128  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9129 
9130  def __init__(self, rb, constituents):
9131  r"""__init__(RigidBodyHierarchyGeometry self, RigidBody rb, IMP::ParticlesTemp const & constituents) -> RigidBodyHierarchyGeometry"""
9132  _IMP_core.RigidBodyHierarchyGeometry_swiginit(self, _IMP_core.new_RigidBodyHierarchyGeometry(rb, constituents))
9133 
9134  def get_version_info(self):
9135  r"""get_version_info(RigidBodyHierarchyGeometry self) -> VersionInfo"""
9136  return _IMP_core.RigidBodyHierarchyGeometry_get_version_info(self)
9137  __swig_destroy__ = _IMP_core.delete_RigidBodyHierarchyGeometry
9138 
9139  def __str__(self):
9140  r"""__str__(RigidBodyHierarchyGeometry self) -> std::string"""
9141  return _IMP_core.RigidBodyHierarchyGeometry___str__(self)
9142 
9143  def __repr__(self):
9144  r"""__repr__(RigidBodyHierarchyGeometry self) -> std::string"""
9145  return _IMP_core.RigidBodyHierarchyGeometry___repr__(self)
9146 
9147  @staticmethod
9148  def get_from(o):
9149  return _object_cast_to_RigidBodyHierarchyGeometry(o)
9150 
9151 
9152 # Register RigidBodyHierarchyGeometry in _IMP_core:
9153 _IMP_core.RigidBodyHierarchyGeometry_swigregister(RigidBodyHierarchyGeometry)
9154 class RigidBodyDerivativeGeometry(IMP.display.SingletonGeometry):
9155  r"""Proxy of C++ IMP::core::RigidBodyDerivativeGeometry class."""
9156 
9157  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9158 
9159  def __init__(self, *args):
9160  r"""
9161  __init__(RigidBodyDerivativeGeometry self, Particle p) -> RigidBodyDerivativeGeometry
9162  __init__(RigidBodyDerivativeGeometry self, RigidBody d) -> RigidBodyDerivativeGeometry
9163  """
9164  _IMP_core.RigidBodyDerivativeGeometry_swiginit(self, _IMP_core.new_RigidBodyDerivativeGeometry(*args))
9165 
9166  def get_version_info(self):
9167  r"""get_version_info(RigidBodyDerivativeGeometry self) -> VersionInfo"""
9168  return _IMP_core.RigidBodyDerivativeGeometry_get_version_info(self)
9169  __swig_destroy__ = _IMP_core.delete_RigidBodyDerivativeGeometry
9170 
9171  def __str__(self):
9172  r"""__str__(RigidBodyDerivativeGeometry self) -> std::string"""
9173  return _IMP_core.RigidBodyDerivativeGeometry___str__(self)
9174 
9175  def __repr__(self):
9176  r"""__repr__(RigidBodyDerivativeGeometry self) -> std::string"""
9177  return _IMP_core.RigidBodyDerivativeGeometry___repr__(self)
9178 
9179  @staticmethod
9180  def get_from(o):
9181  return _object_cast_to_RigidBodyDerivativeGeometry(o)
9182 
9183 
9184 # Register RigidBodyDerivativeGeometry in _IMP_core:
9185 _IMP_core.RigidBodyDerivativeGeometry_swigregister(RigidBodyDerivativeGeometry)
9186 class RigidBodyDerivativesGeometry(IMP.display.SingletonsGeometry):
9187  r"""Proxy of C++ IMP::core::RigidBodyDerivativesGeometry class."""
9188 
9189  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9190 
9191  def __init__(self, sc):
9192  r"""__init__(RigidBodyDerivativesGeometry self, SingletonContainer sc) -> RigidBodyDerivativesGeometry"""
9193  _IMP_core.RigidBodyDerivativesGeometry_swiginit(self, _IMP_core.new_RigidBodyDerivativesGeometry(sc))
9194 
9195  def get_version_info(self):
9196  r"""get_version_info(RigidBodyDerivativesGeometry self) -> VersionInfo"""
9197  return _IMP_core.RigidBodyDerivativesGeometry_get_version_info(self)
9198  __swig_destroy__ = _IMP_core.delete_RigidBodyDerivativesGeometry
9199 
9200  def __str__(self):
9201  r"""__str__(RigidBodyDerivativesGeometry self) -> std::string"""
9202  return _IMP_core.RigidBodyDerivativesGeometry___str__(self)
9203 
9204  def __repr__(self):
9205  r"""__repr__(RigidBodyDerivativesGeometry self) -> std::string"""
9206  return _IMP_core.RigidBodyDerivativesGeometry___repr__(self)
9207 
9208  @staticmethod
9209  def get_from(o):
9210  return _object_cast_to_RigidBodyDerivativesGeometry(o)
9211 
9212 
9213 # Register RigidBodyDerivativesGeometry in _IMP_core:
9214 _IMP_core.RigidBodyDerivativesGeometry_swigregister(RigidBodyDerivativesGeometry)
9215 class RigidBodyFrameGeometry(IMP.display.SingletonGeometry):
9216  r"""Proxy of C++ IMP::core::RigidBodyFrameGeometry class."""
9217 
9218  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9219 
9220  def __init__(self, *args):
9221  r"""
9222  __init__(RigidBodyFrameGeometry self, Particle p) -> RigidBodyFrameGeometry
9223  __init__(RigidBodyFrameGeometry self, RigidBody d) -> RigidBodyFrameGeometry
9224  """
9225  _IMP_core.RigidBodyFrameGeometry_swiginit(self, _IMP_core.new_RigidBodyFrameGeometry(*args))
9226 
9227  def get_version_info(self):
9228  r"""get_version_info(RigidBodyFrameGeometry self) -> VersionInfo"""
9229  return _IMP_core.RigidBodyFrameGeometry_get_version_info(self)
9230  __swig_destroy__ = _IMP_core.delete_RigidBodyFrameGeometry
9231 
9232  def __str__(self):
9233  r"""__str__(RigidBodyFrameGeometry self) -> std::string"""
9234  return _IMP_core.RigidBodyFrameGeometry___str__(self)
9235 
9236  def __repr__(self):
9237  r"""__repr__(RigidBodyFrameGeometry self) -> std::string"""
9238  return _IMP_core.RigidBodyFrameGeometry___repr__(self)
9239 
9240  @staticmethod
9241  def get_from(o):
9242  return _object_cast_to_RigidBodyFrameGeometry(o)
9243 
9244 
9245 # Register RigidBodyFrameGeometry in _IMP_core:
9246 _IMP_core.RigidBodyFrameGeometry_swigregister(RigidBodyFrameGeometry)
9247 class RigidBodyFramesGeometry(IMP.display.SingletonsGeometry):
9248  r"""Proxy of C++ IMP::core::RigidBodyFramesGeometry class."""
9249 
9250  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9251 
9252  def __init__(self, sc):
9253  r"""__init__(RigidBodyFramesGeometry self, SingletonContainer sc) -> RigidBodyFramesGeometry"""
9254  _IMP_core.RigidBodyFramesGeometry_swiginit(self, _IMP_core.new_RigidBodyFramesGeometry(sc))
9255 
9256  def get_version_info(self):
9257  r"""get_version_info(RigidBodyFramesGeometry self) -> VersionInfo"""
9258  return _IMP_core.RigidBodyFramesGeometry_get_version_info(self)
9259  __swig_destroy__ = _IMP_core.delete_RigidBodyFramesGeometry
9260 
9261  def __str__(self):
9262  r"""__str__(RigidBodyFramesGeometry self) -> std::string"""
9263  return _IMP_core.RigidBodyFramesGeometry___str__(self)
9264 
9265  def __repr__(self):
9266  r"""__repr__(RigidBodyFramesGeometry self) -> std::string"""
9267  return _IMP_core.RigidBodyFramesGeometry___repr__(self)
9268 
9269  @staticmethod
9270  def get_from(o):
9271  return _object_cast_to_RigidBodyFramesGeometry(o)
9272 
9273 
9274 # Register RigidBodyFramesGeometry in _IMP_core:
9275 _IMP_core.RigidBodyFramesGeometry_swigregister(RigidBodyFramesGeometry)
9276 class RigidBodyTorque(IMP.display.SegmentGeometry):
9277  r"""Proxy of C++ IMP::core::RigidBodyTorque class."""
9278 
9279  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9280 
9281  def __init__(self, p):
9282  r"""__init__(RigidBodyTorque self, Particle p) -> RigidBodyTorque"""
9283  _IMP_core.RigidBodyTorque_swiginit(self, _IMP_core.new_RigidBodyTorque(p))
9284 
9285  def __str__(self):
9286  r"""__str__(RigidBodyTorque self) -> std::string"""
9287  return _IMP_core.RigidBodyTorque___str__(self)
9288 
9289  def __repr__(self):
9290  r"""__repr__(RigidBodyTorque self) -> std::string"""
9291  return _IMP_core.RigidBodyTorque___repr__(self)
9292 
9293  @staticmethod
9294  def get_from(o):
9295  return _object_cast_to_RigidBodyTorque(o)
9296 
9297  __swig_destroy__ = _IMP_core.delete_RigidBodyTorque
9298 
9299 # Register RigidBodyTorque in _IMP_core:
9300 _IMP_core.RigidBodyTorque_swigregister(RigidBodyTorque)
9301 class NearestNeighborsClosePairsFinder(ClosePairsFinder):
9302  r"""Proxy of C++ IMP::core::NearestNeighborsClosePairsFinder class."""
9303 
9304  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9305 
9306  def __init__(self):
9307  r"""__init__(NearestNeighborsClosePairsFinder self) -> NearestNeighborsClosePairsFinder"""
9308  _IMP_core.NearestNeighborsClosePairsFinder_swiginit(self, _IMP_core.new_NearestNeighborsClosePairsFinder())
9309 
9310  def get_close_pairs(self, *args):
9311  r"""
9312  get_close_pairs(NearestNeighborsClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
9313  get_close_pairs(NearestNeighborsClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bas, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
9314  get_close_pairs(NearestNeighborsClosePairsFinder self, Model m, IMP::ParticleIndexes const & pc) -> IMP::ParticleIndexPairs
9315  get_close_pairs(NearestNeighborsClosePairsFinder self, Model m, IMP::ParticleIndexes const & pca, IMP::ParticleIndexes const & pcb) -> IMP::ParticleIndexPairs
9316  """
9317  return _IMP_core.NearestNeighborsClosePairsFinder_get_close_pairs(self, *args)
9318 
9319  def do_get_inputs(self, m, pis):
9320  r"""do_get_inputs(NearestNeighborsClosePairsFinder self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9321  return _IMP_core.NearestNeighborsClosePairsFinder_do_get_inputs(self, m, pis)
9322 
9323  def get_version_info(self):
9324  r"""get_version_info(NearestNeighborsClosePairsFinder self) -> VersionInfo"""
9325  return _IMP_core.NearestNeighborsClosePairsFinder_get_version_info(self)
9326  __swig_destroy__ = _IMP_core.delete_NearestNeighborsClosePairsFinder
9327 
9328  def __str__(self):
9329  r"""__str__(NearestNeighborsClosePairsFinder self) -> std::string"""
9330  return _IMP_core.NearestNeighborsClosePairsFinder___str__(self)
9331 
9332  def __repr__(self):
9333  r"""__repr__(NearestNeighborsClosePairsFinder self) -> std::string"""
9334  return _IMP_core.NearestNeighborsClosePairsFinder___repr__(self)
9335 
9336  @staticmethod
9337  def get_from(o):
9338  return _object_cast_to_NearestNeighborsClosePairsFinder(o)
9339 
9340 
9341 # Register NearestNeighborsClosePairsFinder in _IMP_core:
9342 _IMP_core.NearestNeighborsClosePairsFinder_swigregister(NearestNeighborsClosePairsFinder)
9343 class RestraintsScoringFunction(IMP.ScoringFunction):
9344  r"""Proxy of C++ IMP::core::RestraintsScoringFunction class."""
9345 
9346  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9347 
9348  def __init__(self, *args):
9349  r"""
9350  __init__(RestraintsScoringFunction self, _RestraintsAdaptor rs, double weight=1.0, double max=NO_MAX, std::string name="RestraintsScoringFunction%1%") -> RestraintsScoringFunction
9351  __init__(RestraintsScoringFunction self, _RestraintsAdaptor rs, std::string name) -> RestraintsScoringFunction
9352  __init__(RestraintsScoringFunction self) -> RestraintsScoringFunction
9353  """
9354  _IMP_core.RestraintsScoringFunction_swiginit(self, _IMP_core.new_RestraintsScoringFunction(*args))
9355 
9356  def do_add_score_and_derivatives(self, sa, ss):
9357  r"""do_add_score_and_derivatives(RestraintsScoringFunction self, ScoreAccumulator sa, IMP::ScoreStatesTemp const & ss)"""
9358  return _IMP_core.RestraintsScoringFunction_do_add_score_and_derivatives(self, sa, ss)
9359 
9360  def do_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis, ss):
9361  r"""do_add_score_and_derivatives_moved(RestraintsScoringFunction self, ScoreAccumulator sa, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis, IMP::ScoreStatesTemp const & ss)"""
9362  return _IMP_core.RestraintsScoringFunction_do_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis, ss)
9363 
9364  def do_get_inputs(self):
9365  r"""do_get_inputs(RestraintsScoringFunction self) -> IMP::ModelObjectsTemp"""
9366  return _IMP_core.RestraintsScoringFunction_do_get_inputs(self)
9367 
9368  def get_restraints(self):
9369  r"""get_restraints(RestraintsScoringFunction self) -> IMP::Restraints"""
9370  return _IMP_core.RestraintsScoringFunction_get_restraints(self)
9371 
9372  def set_restraints(self, d):
9373  r"""set_restraints(RestraintsScoringFunction self, IMP::Restraints const & d)"""
9374  return _IMP_core.RestraintsScoringFunction_set_restraints(self, d)
9375 
9376  def get_number_of_restraints(self):
9377  r"""get_number_of_restraints(RestraintsScoringFunction self) -> unsigned int"""
9378  return _IMP_core.RestraintsScoringFunction_get_number_of_restraints(self)
9379 
9380  def clear_restraints(self):
9381  r"""clear_restraints(RestraintsScoringFunction self)"""
9382  return _IMP_core.RestraintsScoringFunction_clear_restraints(self)
9383 
9384  def get_restraint(self, i):
9385  r"""get_restraint(RestraintsScoringFunction self, unsigned int i) -> Restraint"""
9386  return _IMP_core.RestraintsScoringFunction_get_restraint(self, i)
9387 
9388  def erase_restraint(self, i):
9389  r"""erase_restraint(RestraintsScoringFunction self, unsigned int i)"""
9390  return _IMP_core.RestraintsScoringFunction_erase_restraint(self, i)
9391 
9392  def add_restraint(self, d):
9393  r"""add_restraint(RestraintsScoringFunction self, Restraint d) -> unsigned int"""
9394  return _IMP_core.RestraintsScoringFunction_add_restraint(self, d)
9395 
9396  def add_restraints(self, d):
9397  r"""add_restraints(RestraintsScoringFunction self, IMP::Restraints const & d)"""
9398  return _IMP_core.RestraintsScoringFunction_add_restraints(self, d)
9399 
9400  def _python_index_restraint(self, r, start, stop):
9401  r"""_python_index_restraint(RestraintsScoringFunction self, Restraint r, unsigned int start, unsigned int stop) -> unsigned int"""
9402  return _IMP_core.RestraintsScoringFunction__python_index_restraint(self, r, start, stop)
9403  def __get_restraints(self): return IMP._list_util.VarList(getdimfunc=self.get_number_of_restraints, getfunc=self.get_restraint, erasefunc=self.erase_restraint, appendfunc=self.add_restraint, extendfunc=self.add_restraints, clearfunc=self.clear_restraints, indexfunc=self._python_index_restraint)
9404  def __set_restraints(self, obj): IMP._list_util.set_varlist(self.restraints, obj)
9405  def __del_restraints(self): IMP._list_util.del_varlist(self.restraints)
9406  restraints = property(__get_restraints, __set_restraints, __del_restraints, doc="List of ##Restraints")
9407 
9408  def get_version_info(self):
9409  r"""get_version_info(RestraintsScoringFunction self) -> VersionInfo"""
9410  return _IMP_core.RestraintsScoringFunction_get_version_info(self)
9411  __swig_destroy__ = _IMP_core.delete_RestraintsScoringFunction
9412 
9413  def __str__(self):
9414  r"""__str__(RestraintsScoringFunction self) -> std::string"""
9415  return _IMP_core.RestraintsScoringFunction___str__(self)
9416 
9417  def __repr__(self):
9418  r"""__repr__(RestraintsScoringFunction self) -> std::string"""
9419  return _IMP_core.RestraintsScoringFunction___repr__(self)
9420 
9421  @staticmethod
9422  def get_from(o):
9423  return _object_cast_to_RestraintsScoringFunction(o)
9424 
9425 
9426  def _get_as_binary(self):
9427  r"""_get_as_binary(RestraintsScoringFunction self) -> PyObject *"""
9428  return _IMP_core.RestraintsScoringFunction__get_as_binary(self)
9429 
9430  def _set_from_binary(self, p):
9431  r"""_set_from_binary(RestraintsScoringFunction self, PyObject * p)"""
9432  return _IMP_core.RestraintsScoringFunction__set_from_binary(self, p)
9433 
9434  def __getstate__(self):
9435  p = self._get_as_binary()
9436  if len(self.__dict__) > 1:
9437  d = self.__dict__.copy()
9438  del d['this']
9439  p = (d, p)
9440  return p
9441 
9442  def __setstate__(self, p):
9443  if not hasattr(self, 'this'):
9444  self.__init__()
9445  if isinstance(p, tuple):
9446  d, p = p
9447  self.__dict__.update(d)
9448  return self._set_from_binary(p)
9449 
9450 
9451  def _get_jax(self):
9452  import IMP._jax_util
9453  jis = [r.get_derived_object()._get_jax() for r in self.restraints]
9454  funcs = [j.score_func for j in jis]
9455  keys = frozenset(x for j in jis for x in j._keys)
9456  def jax_sf(jm):
9457  return sum(f(jm) for f in funcs)
9458  return IMP._jax_util.JAXRestraintInfo(
9459  m=self.get_model(), score_func=jax_sf, weight=1.0, keys=keys)
9460 
9461 
9462 # Register RestraintsScoringFunction in _IMP_core:
9463 _IMP_core.RestraintsScoringFunction_swigregister(RestraintsScoringFunction)
9464 class RigidClosePairsFinder(ClosePairsFinder):
9465  r"""Proxy of C++ IMP::core::RigidClosePairsFinder class."""
9466 
9467  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9468 
9469  def __init__(self, cpf=None):
9470  r"""__init__(RigidClosePairsFinder self, ClosePairsFinder cpf=None) -> RigidClosePairsFinder"""
9471  _IMP_core.RigidClosePairsFinder_swiginit(self, _IMP_core.new_RigidClosePairsFinder(cpf))
9472 
9473  def do_get_inputs(self, m, pis):
9474  r"""do_get_inputs(RigidClosePairsFinder self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9475  return _IMP_core.RigidClosePairsFinder_do_get_inputs(self, m, pis)
9476 
9477  def get_close_pairs(self, *args):
9478  r"""
9479  get_close_pairs(RigidClosePairsFinder self, Model m, ParticleIndex a, ParticleIndex b, IMP::ParticleIndexes const & pa, IMP::ParticleIndexes const & pb) -> IMP::ParticleIndexPairs
9480  get_close_pairs(RigidClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
9481  get_close_pairs(RigidClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bas, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
9482  get_close_pairs(RigidClosePairsFinder self, Model m, IMP::ParticleIndexes const & pc) -> IMP::ParticleIndexPairs
9483  get_close_pairs(RigidClosePairsFinder self, Model m, IMP::ParticleIndexes const & pca, IMP::ParticleIndexes const & pcb) -> IMP::ParticleIndexPairs
9484  """
9485  return _IMP_core.RigidClosePairsFinder_get_close_pairs(self, *args)
9486 
9487  def get_version_info(self):
9488  r"""get_version_info(RigidClosePairsFinder self) -> VersionInfo"""
9489  return _IMP_core.RigidClosePairsFinder_get_version_info(self)
9490  __swig_destroy__ = _IMP_core.delete_RigidClosePairsFinder
9491 
9492  def __str__(self):
9493  r"""__str__(RigidClosePairsFinder self) -> std::string"""
9494  return _IMP_core.RigidClosePairsFinder___str__(self)
9495 
9496  def __repr__(self):
9497  r"""__repr__(RigidClosePairsFinder self) -> std::string"""
9498  return _IMP_core.RigidClosePairsFinder___repr__(self)
9499 
9500  @staticmethod
9501  def get_from(o):
9502  return _object_cast_to_RigidClosePairsFinder(o)
9503 
9504 
9505  def _get_as_binary(self):
9506  r"""_get_as_binary(RigidClosePairsFinder self) -> PyObject *"""
9507  return _IMP_core.RigidClosePairsFinder__get_as_binary(self)
9508 
9509  def _set_from_binary(self, p):
9510  r"""_set_from_binary(RigidClosePairsFinder self, PyObject * p)"""
9511  return _IMP_core.RigidClosePairsFinder__set_from_binary(self, p)
9512 
9513  def __getstate__(self):
9514  p = self._get_as_binary()
9515  if len(self.__dict__) > 1:
9516  d = self.__dict__.copy()
9517  del d['this']
9518  p = (d, p)
9519  return p
9520 
9521  def __setstate__(self, p):
9522  if not hasattr(self, 'this'):
9523  self.__init__()
9524  if isinstance(p, tuple):
9525  d, p = p
9526  self.__dict__.update(d)
9527  return self._set_from_binary(p)
9528 
9529 
9530 # Register RigidClosePairsFinder in _IMP_core:
9531 _IMP_core.RigidClosePairsFinder_swigregister(RigidClosePairsFinder)
9532 class _SphereDistancePairScore(IMP.PairScore):
9533  r"""Proxy of C++ IMP::core::SphereDistancePairScore class."""
9534 
9535  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9536  __repr__ = _swig_repr
9537 
9538  def __init__(self, *args):
9539  r"""
9540  SphereDistancePairScore(UnaryFunction uf, std::string name="SphereDistancePairScore%1%") -> _SphereDistancePairScore
9541  __init__(_SphereDistancePairScore self) -> _SphereDistancePairScore
9542  """
9543  _IMP_core._SphereDistancePairScore_swiginit(self, _IMP_core.new__SphereDistancePairScore(*args))
9544 
9545  def do_get_inputs(self, m, pis):
9546  r"""do_get_inputs(_SphereDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9547  return _IMP_core._SphereDistancePairScore_do_get_inputs(self, m, pis)
9548 
9549  def get_score_functor(self, *args):
9550  r"""
9551  get_score_functor(_SphereDistancePairScore self) -> IMP::core::SphereDistanceScore
9552  get_score_functor(_SphereDistancePairScore self) -> IMP::core::SphereDistanceScore const &
9553  """
9554  return _IMP_core._SphereDistancePairScore_get_score_functor(self, *args)
9555 
9556  def get_version_info(self):
9557  r"""get_version_info(_SphereDistancePairScore self) -> VersionInfo"""
9558  return _IMP_core._SphereDistancePairScore_get_version_info(self)
9559  __swig_destroy__ = _IMP_core.delete__SphereDistancePairScore
9560 
9561  @staticmethod
9562  def get_from(o):
9563  return _object_cast_to__SphereDistancePairScore(o)
9564 
9565 
9566  def _get_as_binary(self):
9567  r"""_get_as_binary(_SphereDistancePairScore self) -> PyObject *"""
9568  return _IMP_core._SphereDistancePairScore__get_as_binary(self)
9569 
9570  def _set_from_binary(self, p):
9571  r"""_set_from_binary(_SphereDistancePairScore self, PyObject * p)"""
9572  return _IMP_core._SphereDistancePairScore__set_from_binary(self, p)
9573 
9574  def __getstate__(self):
9575  p = self._get_as_binary()
9576  if len(self.__dict__) > 1:
9577  d = self.__dict__.copy()
9578  del d['this']
9579  p = (d, p)
9580  return p
9581 
9582  def __setstate__(self, p):
9583  if not hasattr(self, 'this'):
9584  self.__init__()
9585  if isinstance(p, tuple):
9586  d, p = p
9587  self.__dict__.update(d)
9588  return self._set_from_binary(p)
9589 
9590 
9591 # Register _SphereDistancePairScore in _IMP_core:
9592 _IMP_core._SphereDistancePairScore_swigregister(_SphereDistancePairScore)
9593 class HarmonicUpperBoundSphereDistancePairScore(IMP.PairScore):
9594  r"""Proxy of C++ IMP::core::HarmonicUpperBoundSphereDistancePairScore class."""
9595 
9596  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9597 
9598  def __init__(self, *args):
9599  r"""
9600  __init__(HarmonicUpperBoundSphereDistancePairScore self, double x0, double k, std::string name="HarmonicUpperBoundSphereDistancePairScore%1%") -> HarmonicUpperBoundSphereDistancePairScore
9601  __init__(HarmonicUpperBoundSphereDistancePairScore self) -> HarmonicUpperBoundSphereDistancePairScore
9602  """
9603  _IMP_core.HarmonicUpperBoundSphereDistancePairScore_swiginit(self, _IMP_core.new_HarmonicUpperBoundSphereDistancePairScore(*args))
9604 
9605  def do_get_inputs(self, m, pis):
9606  r"""do_get_inputs(HarmonicUpperBoundSphereDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9607  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore_do_get_inputs(self, m, pis)
9608 
9609  def get_score_functor(self, *args):
9610  r"""
9611  get_score_functor(HarmonicUpperBoundSphereDistancePairScore self) -> IMP::core::HarmonicUpperBoundSphereDistanceScore
9612  get_score_functor(HarmonicUpperBoundSphereDistancePairScore self) -> IMP::core::HarmonicUpperBoundSphereDistanceScore const &
9613  """
9614  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore_get_score_functor(self, *args)
9615 
9616  def get_version_info(self):
9617  r"""get_version_info(HarmonicUpperBoundSphereDistancePairScore self) -> VersionInfo"""
9618  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore_get_version_info(self)
9619  __swig_destroy__ = _IMP_core.delete_HarmonicUpperBoundSphereDistancePairScore
9620 
9621  def __str__(self):
9622  r"""__str__(HarmonicUpperBoundSphereDistancePairScore self) -> std::string"""
9623  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore___str__(self)
9624 
9625  def __repr__(self):
9626  r"""__repr__(HarmonicUpperBoundSphereDistancePairScore self) -> std::string"""
9627  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore___repr__(self)
9628 
9629  @staticmethod
9630  def get_from(o):
9631  return _object_cast_to_HarmonicUpperBoundSphereDistancePairScore(o)
9632 
9633 
9634  def _get_as_binary(self):
9635  r"""_get_as_binary(HarmonicUpperBoundSphereDistancePairScore self) -> PyObject *"""
9636  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore__get_as_binary(self)
9637 
9638  def _set_from_binary(self, p):
9639  r"""_set_from_binary(HarmonicUpperBoundSphereDistancePairScore self, PyObject * p)"""
9640  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore__set_from_binary(self, p)
9641 
9642  def __getstate__(self):
9643  p = self._get_as_binary()
9644  if len(self.__dict__) > 1:
9645  d = self.__dict__.copy()
9646  del d['this']
9647  p = (d, p)
9648  return p
9649 
9650  def __setstate__(self, p):
9651  if not hasattr(self, 'this'):
9652  self.__init__()
9653  if isinstance(p, tuple):
9654  d, p = p
9655  self.__dict__.update(d)
9656  return self._set_from_binary(p)
9657 
9658 
9659 # Register HarmonicUpperBoundSphereDistancePairScore in _IMP_core:
9660 _IMP_core.HarmonicUpperBoundSphereDistancePairScore_swigregister(HarmonicUpperBoundSphereDistancePairScore)
9661 class HarmonicUpperBoundSphereDiameterPairScore(IMP.PairScore):
9662  r"""Proxy of C++ IMP::core::HarmonicUpperBoundSphereDiameterPairScore class."""
9663 
9664  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9665 
9666  def __init__(self, d0, k):
9667  r"""__init__(HarmonicUpperBoundSphereDiameterPairScore self, double d0, double k) -> HarmonicUpperBoundSphereDiameterPairScore"""
9668  _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_swiginit(self, _IMP_core.new_HarmonicUpperBoundSphereDiameterPairScore(d0, k))
9669 
9670  def get_rest_length(self):
9671  r"""get_rest_length(HarmonicUpperBoundSphereDiameterPairScore self) -> double"""
9672  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_get_rest_length(self)
9673 
9674  def get_stiffness(self):
9675  r"""get_stiffness(HarmonicUpperBoundSphereDiameterPairScore self) -> double"""
9676  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_get_stiffness(self)
9677 
9678  def do_get_inputs(self, m, pis):
9679  r"""do_get_inputs(HarmonicUpperBoundSphereDiameterPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9680  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_do_get_inputs(self, m, pis)
9681 
9682  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
9683  r"""evaluate_indexes(HarmonicUpperBoundSphereDiameterPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
9684  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
9685 
9686  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
9687  r"""evaluate_indexes_scores(HarmonicUpperBoundSphereDiameterPairScore 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"""
9688  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
9689 
9690  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
9691  r"""evaluate_indexes_delta(HarmonicUpperBoundSphereDiameterPairScore 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"""
9692  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
9693 
9694  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
9695  r"""evaluate_if_good_indexes(HarmonicUpperBoundSphereDiameterPairScore 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"""
9696  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
9697 
9698  def get_version_info(self):
9699  r"""get_version_info(HarmonicUpperBoundSphereDiameterPairScore self) -> VersionInfo"""
9700  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_get_version_info(self)
9701  __swig_destroy__ = _IMP_core.delete_HarmonicUpperBoundSphereDiameterPairScore
9702 
9703  def __str__(self):
9704  r"""__str__(HarmonicUpperBoundSphereDiameterPairScore self) -> std::string"""
9705  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore___str__(self)
9706 
9707  def __repr__(self):
9708  r"""__repr__(HarmonicUpperBoundSphereDiameterPairScore self) -> std::string"""
9709  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore___repr__(self)
9710 
9711  @staticmethod
9712  def get_from(o):
9713  return _object_cast_to_HarmonicUpperBoundSphereDiameterPairScore(o)
9714 
9715 
9716 # Register HarmonicUpperBoundSphereDiameterPairScore in _IMP_core:
9717 _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_swigregister(HarmonicUpperBoundSphereDiameterPairScore)
9718 class HarmonicSphereDistancePairScore(IMP.PairScore):
9719  r"""Proxy of C++ IMP::core::HarmonicSphereDistancePairScore class."""
9720 
9721  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9722 
9723  def __init__(self, *args):
9724  r"""
9725  __init__(HarmonicSphereDistancePairScore self, double x0, double k, std::string name="HarmonicSphereDistancePairScore%1%") -> HarmonicSphereDistancePairScore
9726  __init__(HarmonicSphereDistancePairScore self) -> HarmonicSphereDistancePairScore
9727  """
9728  _IMP_core.HarmonicSphereDistancePairScore_swiginit(self, _IMP_core.new_HarmonicSphereDistancePairScore(*args))
9729 
9730  def do_get_inputs(self, m, pis):
9731  r"""do_get_inputs(HarmonicSphereDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9732  return _IMP_core.HarmonicSphereDistancePairScore_do_get_inputs(self, m, pis)
9733 
9734  def get_score_functor(self, *args):
9735  r"""
9736  get_score_functor(HarmonicSphereDistancePairScore self) -> IMP::core::HarmonicSphereDistanceScore
9737  get_score_functor(HarmonicSphereDistancePairScore self) -> IMP::core::HarmonicSphereDistanceScore const &
9738  """
9739  return _IMP_core.HarmonicSphereDistancePairScore_get_score_functor(self, *args)
9740 
9741  def get_x0(self):
9742  r"""get_x0(HarmonicSphereDistancePairScore self) -> double"""
9743  return _IMP_core.HarmonicSphereDistancePairScore_get_x0(self)
9744 
9745  def get_k(self):
9746  r"""get_k(HarmonicSphereDistancePairScore self) -> double"""
9747  return _IMP_core.HarmonicSphereDistancePairScore_get_k(self)
9748 
9749  def get_version_info(self):
9750  r"""get_version_info(HarmonicSphereDistancePairScore self) -> VersionInfo"""
9751  return _IMP_core.HarmonicSphereDistancePairScore_get_version_info(self)
9752  __swig_destroy__ = _IMP_core.delete_HarmonicSphereDistancePairScore
9753 
9754  def __str__(self):
9755  r"""__str__(HarmonicSphereDistancePairScore self) -> std::string"""
9756  return _IMP_core.HarmonicSphereDistancePairScore___str__(self)
9757 
9758  def __repr__(self):
9759  r"""__repr__(HarmonicSphereDistancePairScore self) -> std::string"""
9760  return _IMP_core.HarmonicSphereDistancePairScore___repr__(self)
9761 
9762  @staticmethod
9763  def get_from(o):
9764  return _object_cast_to_HarmonicSphereDistancePairScore(o)
9765 
9766 
9767  def _get_as_binary(self):
9768  r"""_get_as_binary(HarmonicSphereDistancePairScore self) -> PyObject *"""
9769  return _IMP_core.HarmonicSphereDistancePairScore__get_as_binary(self)
9770 
9771  def _set_from_binary(self, p):
9772  r"""_set_from_binary(HarmonicSphereDistancePairScore self, PyObject * p)"""
9773  return _IMP_core.HarmonicSphereDistancePairScore__set_from_binary(self, p)
9774 
9775  def __getstate__(self):
9776  p = self._get_as_binary()
9777  if len(self.__dict__) > 1:
9778  d = self.__dict__.copy()
9779  del d['this']
9780  p = (d, p)
9781  return p
9782 
9783  def __setstate__(self, p):
9784  if not hasattr(self, 'this'):
9785  self.__init__()
9786  if isinstance(p, tuple):
9787  d, p = p
9788  self.__dict__.update(d)
9789  return self._set_from_binary(p)
9790 
9791 
9792  def _get_jax(self):
9793  import jax.numpy as jnp
9794  import functools
9795  def jax_score(jm, indexes, d, k):
9796  xyzs = jm['xyz'][indexes]
9797  rs = jm['r'][indexes]
9798  diff = xyzs[:,0] - xyzs[:,1]
9799  drs = jnp.linalg.norm(diff, axis=1) - rs.sum(axis=1)
9800  return 0.5 * k * (d - drs)**2
9801  f = functools.partial(jax_score, d=self.get_x0(), k=self.get_k())
9802  return self._wrap_jax(f)
9803 
9804 
9805 # Register HarmonicSphereDistancePairScore in _IMP_core:
9806 _IMP_core.HarmonicSphereDistancePairScore_swigregister(HarmonicSphereDistancePairScore)
9807 class NormalizedSphereDistancePairScore(IMP.PairScore):
9808  r"""Proxy of C++ IMP::core::NormalizedSphereDistancePairScore class."""
9809 
9810  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9811 
9812  def __init__(self, *args):
9813  r"""__init__(NormalizedSphereDistancePairScore self, UnaryFunction f, FloatKey radius=IMP::FloatKey("radius")) -> NormalizedSphereDistancePairScore"""
9814  _IMP_core.NormalizedSphereDistancePairScore_swiginit(self, _IMP_core.new_NormalizedSphereDistancePairScore(*args))
9815 
9816  def do_get_inputs(self, m, pis):
9817  r"""do_get_inputs(NormalizedSphereDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9818  return _IMP_core.NormalizedSphereDistancePairScore_do_get_inputs(self, m, pis)
9819 
9820  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
9821  r"""evaluate_indexes(NormalizedSphereDistancePairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
9822  return _IMP_core.NormalizedSphereDistancePairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
9823 
9824  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
9825  r"""evaluate_indexes_scores(NormalizedSphereDistancePairScore 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"""
9826  return _IMP_core.NormalizedSphereDistancePairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
9827 
9828  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
9829  r"""evaluate_indexes_delta(NormalizedSphereDistancePairScore 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"""
9830  return _IMP_core.NormalizedSphereDistancePairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
9831 
9832  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
9833  r"""evaluate_if_good_indexes(NormalizedSphereDistancePairScore 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"""
9834  return _IMP_core.NormalizedSphereDistancePairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
9835 
9836  def get_version_info(self):
9837  r"""get_version_info(NormalizedSphereDistancePairScore self) -> VersionInfo"""
9838  return _IMP_core.NormalizedSphereDistancePairScore_get_version_info(self)
9839  __swig_destroy__ = _IMP_core.delete_NormalizedSphereDistancePairScore
9840 
9841  def __str__(self):
9842  r"""__str__(NormalizedSphereDistancePairScore self) -> std::string"""
9843  return _IMP_core.NormalizedSphereDistancePairScore___str__(self)
9844 
9845  def __repr__(self):
9846  r"""__repr__(NormalizedSphereDistancePairScore self) -> std::string"""
9847  return _IMP_core.NormalizedSphereDistancePairScore___repr__(self)
9848 
9849  @staticmethod
9850  def get_from(o):
9851  return _object_cast_to_NormalizedSphereDistancePairScore(o)
9852 
9853 
9854 # Register NormalizedSphereDistancePairScore in _IMP_core:
9855 _IMP_core.NormalizedSphereDistancePairScore_swigregister(NormalizedSphereDistancePairScore)
9856 class WeightedSphereDistancePairScore(IMP.PairScore):
9857  r"""Proxy of C++ IMP::core::WeightedSphereDistancePairScore class."""
9858 
9859  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9860 
9861  def __init__(self, *args):
9862  r"""__init__(WeightedSphereDistancePairScore self, UnaryFunction f, FloatKey weight, FloatKey radius=IMP::FloatKey("radius")) -> WeightedSphereDistancePairScore"""
9863  _IMP_core.WeightedSphereDistancePairScore_swiginit(self, _IMP_core.new_WeightedSphereDistancePairScore(*args))
9864 
9865  def do_get_inputs(self, m, pis):
9866  r"""do_get_inputs(WeightedSphereDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9867  return _IMP_core.WeightedSphereDistancePairScore_do_get_inputs(self, m, pis)
9868 
9869  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
9870  r"""evaluate_indexes(WeightedSphereDistancePairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
9871  return _IMP_core.WeightedSphereDistancePairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
9872 
9873  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
9874  r"""evaluate_indexes_scores(WeightedSphereDistancePairScore 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"""
9875  return _IMP_core.WeightedSphereDistancePairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
9876 
9877  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
9878  r"""evaluate_indexes_delta(WeightedSphereDistancePairScore 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"""
9879  return _IMP_core.WeightedSphereDistancePairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
9880 
9881  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
9882  r"""evaluate_if_good_indexes(WeightedSphereDistancePairScore 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"""
9883  return _IMP_core.WeightedSphereDistancePairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
9884 
9885  def get_version_info(self):
9886  r"""get_version_info(WeightedSphereDistancePairScore self) -> VersionInfo"""
9887  return _IMP_core.WeightedSphereDistancePairScore_get_version_info(self)
9888  __swig_destroy__ = _IMP_core.delete_WeightedSphereDistancePairScore
9889 
9890  def __str__(self):
9891  r"""__str__(WeightedSphereDistancePairScore self) -> std::string"""
9892  return _IMP_core.WeightedSphereDistancePairScore___str__(self)
9893 
9894  def __repr__(self):
9895  r"""__repr__(WeightedSphereDistancePairScore self) -> std::string"""
9896  return _IMP_core.WeightedSphereDistancePairScore___repr__(self)
9897 
9898  @staticmethod
9899  def get_from(o):
9900  return _object_cast_to_WeightedSphereDistancePairScore(o)
9901 
9902 
9903 # Register WeightedSphereDistancePairScore in _IMP_core:
9904 _IMP_core.WeightedSphereDistancePairScore_swigregister(WeightedSphereDistancePairScore)
9905 class SoftSpherePairScore(IMP.PairScore):
9906  r"""Proxy of C++ IMP::core::SoftSpherePairScore class."""
9907 
9908  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9909 
9910  def __init__(self, *args):
9911  r"""
9912  __init__(SoftSpherePairScore self, double k, std::string name="SoftSpherePairScore%1%") -> SoftSpherePairScore
9913  __init__(SoftSpherePairScore self) -> SoftSpherePairScore
9914  """
9915  _IMP_core.SoftSpherePairScore_swiginit(self, _IMP_core.new_SoftSpherePairScore(*args))
9916 
9917  def do_get_inputs(self, m, pis):
9918  r"""do_get_inputs(SoftSpherePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9919  return _IMP_core.SoftSpherePairScore_do_get_inputs(self, m, pis)
9920 
9921  def get_score_functor(self, *args):
9922  r"""
9923  get_score_functor(SoftSpherePairScore self) -> IMP::core::SoftSphereDistanceScore
9924  get_score_functor(SoftSpherePairScore self) -> IMP::core::SoftSphereDistanceScore const &
9925  """
9926  return _IMP_core.SoftSpherePairScore_get_score_functor(self, *args)
9927 
9928  def get_version_info(self):
9929  r"""get_version_info(SoftSpherePairScore self) -> VersionInfo"""
9930  return _IMP_core.SoftSpherePairScore_get_version_info(self)
9931  __swig_destroy__ = _IMP_core.delete_SoftSpherePairScore
9932 
9933  def __str__(self):
9934  r"""__str__(SoftSpherePairScore self) -> std::string"""
9935  return _IMP_core.SoftSpherePairScore___str__(self)
9936 
9937  def __repr__(self):
9938  r"""__repr__(SoftSpherePairScore self) -> std::string"""
9939  return _IMP_core.SoftSpherePairScore___repr__(self)
9940 
9941  @staticmethod
9942  def get_from(o):
9943  return _object_cast_to_SoftSpherePairScore(o)
9944 
9945 
9946  def _get_as_binary(self):
9947  r"""_get_as_binary(SoftSpherePairScore self) -> PyObject *"""
9948  return _IMP_core.SoftSpherePairScore__get_as_binary(self)
9949 
9950  def _set_from_binary(self, p):
9951  r"""_set_from_binary(SoftSpherePairScore self, PyObject * p)"""
9952  return _IMP_core.SoftSpherePairScore__set_from_binary(self, p)
9953 
9954  def __getstate__(self):
9955  p = self._get_as_binary()
9956  if len(self.__dict__) > 1:
9957  d = self.__dict__.copy()
9958  del d['this']
9959  p = (d, p)
9960  return p
9961 
9962  def __setstate__(self, p):
9963  if not hasattr(self, 'this'):
9964  self.__init__()
9965  if isinstance(p, tuple):
9966  d, p = p
9967  self.__dict__.update(d)
9968  return self._set_from_binary(p)
9969 
9970 
9971 # Register SoftSpherePairScore in _IMP_core:
9972 _IMP_core.SoftSpherePairScore_swigregister(SoftSpherePairScore)
9973 class SurfaceDistancePairScore(IMP.PairScore):
9974  r"""Proxy of C++ IMP::core::SurfaceDistancePairScore class."""
9975 
9976  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9977 
9978  def __init__(self, *args):
9979  r"""__init__(SurfaceDistancePairScore self, UnaryFunction uf, std::string name="SurfaceDistancePairScore%1%") -> SurfaceDistancePairScore"""
9980  _IMP_core.SurfaceDistancePairScore_swiginit(self, _IMP_core.new_SurfaceDistancePairScore(*args))
9981 
9982  def do_get_inputs(self, m, pis):
9983  r"""do_get_inputs(SurfaceDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9984  return _IMP_core.SurfaceDistancePairScore_do_get_inputs(self, m, pis)
9985 
9986  def get_version_info(self):
9987  r"""get_version_info(SurfaceDistancePairScore self) -> VersionInfo"""
9988  return _IMP_core.SurfaceDistancePairScore_get_version_info(self)
9989  __swig_destroy__ = _IMP_core.delete_SurfaceDistancePairScore
9990 
9991  def __str__(self):
9992  r"""__str__(SurfaceDistancePairScore self) -> std::string"""
9993  return _IMP_core.SurfaceDistancePairScore___str__(self)
9994 
9995  def __repr__(self):
9996  r"""__repr__(SurfaceDistancePairScore self) -> std::string"""
9997  return _IMP_core.SurfaceDistancePairScore___repr__(self)
9998 
9999  @staticmethod
10000  def get_from(o):
10001  return _object_cast_to_SurfaceDistancePairScore(o)
10002 
10003 
10004 # Register SurfaceDistancePairScore in _IMP_core:
10005 _IMP_core.SurfaceDistancePairScore_swigregister(SurfaceDistancePairScore)
10006 class SurfaceHeightPairScore(IMP.PairScore):
10007  r"""Proxy of C++ IMP::core::SurfaceHeightPairScore class."""
10008 
10009  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10010 
10011  def __init__(self, *args):
10012  r"""__init__(SurfaceHeightPairScore self, UnaryFunction uf, std::string name="SurfaceHeightPairScore%1%") -> SurfaceHeightPairScore"""
10013  _IMP_core.SurfaceHeightPairScore_swiginit(self, _IMP_core.new_SurfaceHeightPairScore(*args))
10014 
10015  def do_get_inputs(self, m, pis):
10016  r"""do_get_inputs(SurfaceHeightPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10017  return _IMP_core.SurfaceHeightPairScore_do_get_inputs(self, m, pis)
10018 
10019  def get_version_info(self):
10020  r"""get_version_info(SurfaceHeightPairScore self) -> VersionInfo"""
10021  return _IMP_core.SurfaceHeightPairScore_get_version_info(self)
10022  __swig_destroy__ = _IMP_core.delete_SurfaceHeightPairScore
10023 
10024  def __str__(self):
10025  r"""__str__(SurfaceHeightPairScore self) -> std::string"""
10026  return _IMP_core.SurfaceHeightPairScore___str__(self)
10027 
10028  def __repr__(self):
10029  r"""__repr__(SurfaceHeightPairScore self) -> std::string"""
10030  return _IMP_core.SurfaceHeightPairScore___repr__(self)
10031 
10032  @staticmethod
10033  def get_from(o):
10034  return _object_cast_to_SurfaceHeightPairScore(o)
10035 
10036 
10037 # Register SurfaceHeightPairScore in _IMP_core:
10038 _IMP_core.SurfaceHeightPairScore_swigregister(SurfaceHeightPairScore)
10039 class SurfaceDepthPairScore(IMP.PairScore):
10040  r"""Proxy of C++ IMP::core::SurfaceDepthPairScore class."""
10041 
10042  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10043 
10044  def __init__(self, *args):
10045  r"""__init__(SurfaceDepthPairScore self, UnaryFunction uf, std::string name="SurfaceDepthPairScore%1%") -> SurfaceDepthPairScore"""
10046  _IMP_core.SurfaceDepthPairScore_swiginit(self, _IMP_core.new_SurfaceDepthPairScore(*args))
10047 
10048  def do_get_inputs(self, m, pis):
10049  r"""do_get_inputs(SurfaceDepthPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10050  return _IMP_core.SurfaceDepthPairScore_do_get_inputs(self, m, pis)
10051 
10052  def get_version_info(self):
10053  r"""get_version_info(SurfaceDepthPairScore self) -> VersionInfo"""
10054  return _IMP_core.SurfaceDepthPairScore_get_version_info(self)
10055  __swig_destroy__ = _IMP_core.delete_SurfaceDepthPairScore
10056 
10057  def __str__(self):
10058  r"""__str__(SurfaceDepthPairScore self) -> std::string"""
10059  return _IMP_core.SurfaceDepthPairScore___str__(self)
10060 
10061  def __repr__(self):
10062  r"""__repr__(SurfaceDepthPairScore self) -> std::string"""
10063  return _IMP_core.SurfaceDepthPairScore___repr__(self)
10064 
10065  @staticmethod
10066  def get_from(o):
10067  return _object_cast_to_SurfaceDepthPairScore(o)
10068 
10069 
10070 # Register SurfaceDepthPairScore in _IMP_core:
10071 _IMP_core.SurfaceDepthPairScore_swigregister(SurfaceDepthPairScore)
10072 class HarmonicSurfaceDistancePairScore(IMP.PairScore):
10073  r"""Proxy of C++ IMP::core::HarmonicSurfaceDistancePairScore class."""
10074 
10075  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10076 
10077  def __init__(self, *args):
10078  r"""__init__(HarmonicSurfaceDistancePairScore self, double x0, double k, std::string name="HarmonicSurfaceDistancePairScore%1%") -> HarmonicSurfaceDistancePairScore"""
10079  _IMP_core.HarmonicSurfaceDistancePairScore_swiginit(self, _IMP_core.new_HarmonicSurfaceDistancePairScore(*args))
10080 
10081  def do_get_inputs(self, m, pis):
10082  r"""do_get_inputs(HarmonicSurfaceDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10083  return _IMP_core.HarmonicSurfaceDistancePairScore_do_get_inputs(self, m, pis)
10084 
10085  def get_version_info(self):
10086  r"""get_version_info(HarmonicSurfaceDistancePairScore self) -> VersionInfo"""
10087  return _IMP_core.HarmonicSurfaceDistancePairScore_get_version_info(self)
10088  __swig_destroy__ = _IMP_core.delete_HarmonicSurfaceDistancePairScore
10089 
10090  def __str__(self):
10091  r"""__str__(HarmonicSurfaceDistancePairScore self) -> std::string"""
10092  return _IMP_core.HarmonicSurfaceDistancePairScore___str__(self)
10093 
10094  def __repr__(self):
10095  r"""__repr__(HarmonicSurfaceDistancePairScore self) -> std::string"""
10096  return _IMP_core.HarmonicSurfaceDistancePairScore___repr__(self)
10097 
10098  @staticmethod
10099  def get_from(o):
10100  return _object_cast_to_HarmonicSurfaceDistancePairScore(o)
10101 
10102 
10103 # Register HarmonicSurfaceDistancePairScore in _IMP_core:
10104 _IMP_core.HarmonicSurfaceDistancePairScore_swigregister(HarmonicSurfaceDistancePairScore)
10105 class HarmonicSurfaceHeightPairScore(IMP.PairScore):
10106  r"""Proxy of C++ IMP::core::HarmonicSurfaceHeightPairScore class."""
10107 
10108  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10109 
10110  def __init__(self, *args):
10111  r"""__init__(HarmonicSurfaceHeightPairScore self, double x0, double k, std::string name="HarmonicSurfaceHeightPairScore%1%") -> HarmonicSurfaceHeightPairScore"""
10112  _IMP_core.HarmonicSurfaceHeightPairScore_swiginit(self, _IMP_core.new_HarmonicSurfaceHeightPairScore(*args))
10113 
10114  def do_get_inputs(self, m, pis):
10115  r"""do_get_inputs(HarmonicSurfaceHeightPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10116  return _IMP_core.HarmonicSurfaceHeightPairScore_do_get_inputs(self, m, pis)
10117 
10118  def get_version_info(self):
10119  r"""get_version_info(HarmonicSurfaceHeightPairScore self) -> VersionInfo"""
10120  return _IMP_core.HarmonicSurfaceHeightPairScore_get_version_info(self)
10121  __swig_destroy__ = _IMP_core.delete_HarmonicSurfaceHeightPairScore
10122 
10123  def __str__(self):
10124  r"""__str__(HarmonicSurfaceHeightPairScore self) -> std::string"""
10125  return _IMP_core.HarmonicSurfaceHeightPairScore___str__(self)
10126 
10127  def __repr__(self):
10128  r"""__repr__(HarmonicSurfaceHeightPairScore self) -> std::string"""
10129  return _IMP_core.HarmonicSurfaceHeightPairScore___repr__(self)
10130 
10131  @staticmethod
10132  def get_from(o):
10133  return _object_cast_to_HarmonicSurfaceHeightPairScore(o)
10134 
10135 
10136 # Register HarmonicSurfaceHeightPairScore in _IMP_core:
10137 _IMP_core.HarmonicSurfaceHeightPairScore_swigregister(HarmonicSurfaceHeightPairScore)
10138 class HarmonicSurfaceDepthPairScore(IMP.PairScore):
10139  r"""Proxy of C++ IMP::core::HarmonicSurfaceDepthPairScore class."""
10140 
10141  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10142 
10143  def __init__(self, *args):
10144  r"""__init__(HarmonicSurfaceDepthPairScore self, double x0, double k, std::string name="HarmonicSurfaceDepthPairScore%1%") -> HarmonicSurfaceDepthPairScore"""
10145  _IMP_core.HarmonicSurfaceDepthPairScore_swiginit(self, _IMP_core.new_HarmonicSurfaceDepthPairScore(*args))
10146 
10147  def do_get_inputs(self, m, pis):
10148  r"""do_get_inputs(HarmonicSurfaceDepthPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10149  return _IMP_core.HarmonicSurfaceDepthPairScore_do_get_inputs(self, m, pis)
10150 
10151  def get_version_info(self):
10152  r"""get_version_info(HarmonicSurfaceDepthPairScore self) -> VersionInfo"""
10153  return _IMP_core.HarmonicSurfaceDepthPairScore_get_version_info(self)
10154  __swig_destroy__ = _IMP_core.delete_HarmonicSurfaceDepthPairScore
10155 
10156  def __str__(self):
10157  r"""__str__(HarmonicSurfaceDepthPairScore self) -> std::string"""
10158  return _IMP_core.HarmonicSurfaceDepthPairScore___str__(self)
10159 
10160  def __repr__(self):
10161  r"""__repr__(HarmonicSurfaceDepthPairScore self) -> std::string"""
10162  return _IMP_core.HarmonicSurfaceDepthPairScore___repr__(self)
10163 
10164  @staticmethod
10165  def get_from(o):
10166  return _object_cast_to_HarmonicSurfaceDepthPairScore(o)
10167 
10168 
10169 # Register HarmonicSurfaceDepthPairScore in _IMP_core:
10170 _IMP_core.HarmonicSurfaceDepthPairScore_swigregister(HarmonicSurfaceDepthPairScore)
10171 class SoftSuperSurfacePairScore(IMP.PairScore):
10172  r"""Proxy of C++ IMP::core::SoftSuperSurfacePairScore class."""
10173 
10174  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10175 
10176  def __init__(self, *args):
10177  r"""__init__(SoftSuperSurfacePairScore self, double k, std::string name="SoftSuperSurfacePairScore%1%") -> SoftSuperSurfacePairScore"""
10178  _IMP_core.SoftSuperSurfacePairScore_swiginit(self, _IMP_core.new_SoftSuperSurfacePairScore(*args))
10179 
10180  def do_get_inputs(self, m, pis):
10181  r"""do_get_inputs(SoftSuperSurfacePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10182  return _IMP_core.SoftSuperSurfacePairScore_do_get_inputs(self, m, pis)
10183 
10184  def get_version_info(self):
10185  r"""get_version_info(SoftSuperSurfacePairScore self) -> VersionInfo"""
10186  return _IMP_core.SoftSuperSurfacePairScore_get_version_info(self)
10187  __swig_destroy__ = _IMP_core.delete_SoftSuperSurfacePairScore
10188 
10189  def __str__(self):
10190  r"""__str__(SoftSuperSurfacePairScore self) -> std::string"""
10191  return _IMP_core.SoftSuperSurfacePairScore___str__(self)
10192 
10193  def __repr__(self):
10194  r"""__repr__(SoftSuperSurfacePairScore self) -> std::string"""
10195  return _IMP_core.SoftSuperSurfacePairScore___repr__(self)
10196 
10197  @staticmethod
10198  def get_from(o):
10199  return _object_cast_to_SoftSuperSurfacePairScore(o)
10200 
10201 
10202 # Register SoftSuperSurfacePairScore in _IMP_core:
10203 _IMP_core.SoftSuperSurfacePairScore_swigregister(SoftSuperSurfacePairScore)
10204 class SoftSubSurfacePairScore(IMP.PairScore):
10205  r"""Proxy of C++ IMP::core::SoftSubSurfacePairScore class."""
10206 
10207  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10208 
10209  def __init__(self, *args):
10210  r"""__init__(SoftSubSurfacePairScore self, double k, std::string name="SoftSubSurfacePairScore%1%") -> SoftSubSurfacePairScore"""
10211  _IMP_core.SoftSubSurfacePairScore_swiginit(self, _IMP_core.new_SoftSubSurfacePairScore(*args))
10212 
10213  def do_get_inputs(self, m, pis):
10214  r"""do_get_inputs(SoftSubSurfacePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10215  return _IMP_core.SoftSubSurfacePairScore_do_get_inputs(self, m, pis)
10216 
10217  def get_version_info(self):
10218  r"""get_version_info(SoftSubSurfacePairScore self) -> VersionInfo"""
10219  return _IMP_core.SoftSubSurfacePairScore_get_version_info(self)
10220  __swig_destroy__ = _IMP_core.delete_SoftSubSurfacePairScore
10221 
10222  def __str__(self):
10223  r"""__str__(SoftSubSurfacePairScore self) -> std::string"""
10224  return _IMP_core.SoftSubSurfacePairScore___str__(self)
10225 
10226  def __repr__(self):
10227  r"""__repr__(SoftSubSurfacePairScore self) -> std::string"""
10228  return _IMP_core.SoftSubSurfacePairScore___repr__(self)
10229 
10230  @staticmethod
10231  def get_from(o):
10232  return _object_cast_to_SoftSubSurfacePairScore(o)
10233 
10234 
10235 # Register SoftSubSurfacePairScore in _IMP_core:
10236 _IMP_core.SoftSubSurfacePairScore_swigregister(SoftSubSurfacePairScore)
10237 class SurfaceTetheredChain(IMP.UnaryFunction):
10238  r"""Proxy of C++ IMP::core::SurfaceTetheredChain class."""
10239 
10240  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10241 
10242  def __init__(self, link_num, link_length):
10243  r"""__init__(SurfaceTetheredChain self, int link_num, double link_length) -> SurfaceTetheredChain"""
10244  _IMP_core.SurfaceTetheredChain_swiginit(self, _IMP_core.new_SurfaceTetheredChain(link_num, link_length))
10245 
10246  def get_version_info(self):
10247  r"""get_version_info(SurfaceTetheredChain self) -> VersionInfo"""
10248  return _IMP_core.SurfaceTetheredChain_get_version_info(self)
10249  __swig_destroy__ = _IMP_core.delete_SurfaceTetheredChain
10250 
10251  def get_link_number(self):
10252  r"""get_link_number(SurfaceTetheredChain self) -> int"""
10253  return _IMP_core.SurfaceTetheredChain_get_link_number(self)
10254 
10255  def get_link_length(self):
10256  r"""get_link_length(SurfaceTetheredChain self) -> double"""
10257  return _IMP_core.SurfaceTetheredChain_get_link_length(self)
10258 
10259  def set_link_number(self, N):
10260  r"""set_link_number(SurfaceTetheredChain self, int N)"""
10261  return _IMP_core.SurfaceTetheredChain_set_link_number(self, N)
10262 
10263  def set_link_length(self, b):
10264  r"""set_link_length(SurfaceTetheredChain self, double b)"""
10265  return _IMP_core.SurfaceTetheredChain_set_link_length(self, b)
10266 
10267  def get_distance_at_minimum(self):
10268  r"""get_distance_at_minimum(SurfaceTetheredChain self) -> double"""
10269  return _IMP_core.SurfaceTetheredChain_get_distance_at_minimum(self)
10270 
10271  def get_average_distance(self):
10272  r"""get_average_distance(SurfaceTetheredChain self) -> double"""
10273  return _IMP_core.SurfaceTetheredChain_get_average_distance(self)
10274 
10275  def __str__(self):
10276  r"""__str__(SurfaceTetheredChain self) -> std::string"""
10277  return _IMP_core.SurfaceTetheredChain___str__(self)
10278 
10279  def __repr__(self):
10280  r"""__repr__(SurfaceTetheredChain self) -> std::string"""
10281  return _IMP_core.SurfaceTetheredChain___repr__(self)
10282 
10283  @staticmethod
10284  def get_from(o):
10285  return _object_cast_to_SurfaceTetheredChain(o)
10286 
10287 
10288 # Register SurfaceTetheredChain in _IMP_core:
10289 _IMP_core.SurfaceTetheredChain_swigregister(SurfaceTetheredChain)
10290 class SurfaceSymmetryConstraint(IMP.Constraint):
10291  r"""Proxy of C++ IMP::core::SurfaceSymmetryConstraint class."""
10292 
10293  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10294 
10295  def __init__(self, m, ss, rbs):
10296  r"""__init__(SurfaceSymmetryConstraint self, Model m, IMP::ParticleIndexPair const & ss, IMP::ParticleIndexPair const & rbs) -> SurfaceSymmetryConstraint"""
10297  _IMP_core.SurfaceSymmetryConstraint_swiginit(self, _IMP_core.new_SurfaceSymmetryConstraint(m, ss, rbs))
10298 
10299  def do_get_inputs(self):
10300  r"""do_get_inputs(SurfaceSymmetryConstraint self) -> IMP::ModelObjectsTemp"""
10301  return _IMP_core.SurfaceSymmetryConstraint_do_get_inputs(self)
10302 
10303  def do_get_outputs(self):
10304  r"""do_get_outputs(SurfaceSymmetryConstraint self) -> IMP::ModelObjectsTemp"""
10305  return _IMP_core.SurfaceSymmetryConstraint_do_get_outputs(self)
10306 
10307  def get_version_info(self):
10308  r"""get_version_info(SurfaceSymmetryConstraint self) -> VersionInfo"""
10309  return _IMP_core.SurfaceSymmetryConstraint_get_version_info(self)
10310  __swig_destroy__ = _IMP_core.delete_SurfaceSymmetryConstraint
10311 
10312  def __str__(self):
10313  r"""__str__(SurfaceSymmetryConstraint self) -> std::string"""
10314  return _IMP_core.SurfaceSymmetryConstraint___str__(self)
10315 
10316  def __repr__(self):
10317  r"""__repr__(SurfaceSymmetryConstraint self) -> std::string"""
10318  return _IMP_core.SurfaceSymmetryConstraint___repr__(self)
10319 
10320  @staticmethod
10321  def get_from(o):
10322  return _object_cast_to_SurfaceSymmetryConstraint(o)
10323 
10324 
10325 # Register SurfaceSymmetryConstraint in _IMP_core:
10326 _IMP_core.SurfaceSymmetryConstraint_swigregister(SurfaceSymmetryConstraint)
10327 class SteepestDescent(IMP.AttributeOptimizer):
10328  r"""Proxy of C++ IMP::core::SteepestDescent class."""
10329 
10330  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10331 
10332  def __init__(self, *args):
10333  r"""__init__(SteepestDescent self, Model m, std::string name="SteepestDescent%1%") -> SteepestDescent"""
10334  _IMP_core.SteepestDescent_swiginit(self, _IMP_core.new_SteepestDescent(*args))
10335 
10336  def do_optimize(self, max_steps):
10337  r"""do_optimize(SteepestDescent self, unsigned int max_steps) -> IMP::Float"""
10338  return _IMP_core.SteepestDescent_do_optimize(self, max_steps)
10339 
10340  def get_version_info(self):
10341  r"""get_version_info(SteepestDescent self) -> VersionInfo"""
10342  return _IMP_core.SteepestDescent_get_version_info(self)
10343  __swig_destroy__ = _IMP_core.delete_SteepestDescent
10344 
10345  def set_threshold(self, t):
10346  r"""set_threshold(SteepestDescent self, IMP::Float t)"""
10347  return _IMP_core.SteepestDescent_set_threshold(self, t)
10348 
10349  def set_step_size(self, t):
10350  r"""set_step_size(SteepestDescent self, IMP::Float t)"""
10351  return _IMP_core.SteepestDescent_set_step_size(self, t)
10352 
10353  def set_maximum_step_size(self, t):
10354  r"""set_maximum_step_size(SteepestDescent self, IMP::Float t)"""
10355  return _IMP_core.SteepestDescent_set_maximum_step_size(self, t)
10356 
10357  def __str__(self):
10358  r"""__str__(SteepestDescent self) -> std::string"""
10359  return _IMP_core.SteepestDescent___str__(self)
10360 
10361  def __repr__(self):
10362  r"""__repr__(SteepestDescent self) -> std::string"""
10363  return _IMP_core.SteepestDescent___repr__(self)
10364 
10365  @staticmethod
10366  def get_from(o):
10367  return _object_cast_to_SteepestDescent(o)
10368 
10369 
10370 # Register SteepestDescent in _IMP_core:
10371 _IMP_core.SteepestDescent_swigregister(SteepestDescent)
10372 class TransformedDistancePairScore(IMP.PairScore):
10373  r"""Proxy of C++ IMP::core::TransformedDistancePairScore class."""
10374 
10375  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10376 
10377  def __init__(self, f, transformation):
10378  r"""__init__(TransformedDistancePairScore self, UnaryFunction f, Transformation3D transformation) -> TransformedDistancePairScore"""
10379  _IMP_core.TransformedDistancePairScore_swiginit(self, _IMP_core.new_TransformedDistancePairScore(f, transformation))
10380 
10381  def set_transformation(self, rot):
10382  r"""set_transformation(TransformedDistancePairScore self, Transformation3D rot)"""
10383  return _IMP_core.TransformedDistancePairScore_set_transformation(self, rot)
10384 
10385  def do_get_inputs(self, m, pis):
10386  r"""do_get_inputs(TransformedDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10387  return _IMP_core.TransformedDistancePairScore_do_get_inputs(self, m, pis)
10388 
10389  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
10390  r"""evaluate_indexes(TransformedDistancePairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
10391  return _IMP_core.TransformedDistancePairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
10392 
10393  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
10394  r"""evaluate_indexes_scores(TransformedDistancePairScore 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"""
10395  return _IMP_core.TransformedDistancePairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
10396 
10397  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
10398  r"""evaluate_indexes_delta(TransformedDistancePairScore 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"""
10399  return _IMP_core.TransformedDistancePairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
10400 
10401  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
10402  r"""evaluate_if_good_indexes(TransformedDistancePairScore 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"""
10403  return _IMP_core.TransformedDistancePairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
10404 
10405  def get_version_info(self):
10406  r"""get_version_info(TransformedDistancePairScore self) -> VersionInfo"""
10407  return _IMP_core.TransformedDistancePairScore_get_version_info(self)
10408  __swig_destroy__ = _IMP_core.delete_TransformedDistancePairScore
10409 
10410  def __str__(self):
10411  r"""__str__(TransformedDistancePairScore self) -> std::string"""
10412  return _IMP_core.TransformedDistancePairScore___str__(self)
10413 
10414  def __repr__(self):
10415  r"""__repr__(TransformedDistancePairScore self) -> std::string"""
10416  return _IMP_core.TransformedDistancePairScore___repr__(self)
10417 
10418  @staticmethod
10419  def get_from(o):
10420  return _object_cast_to_TransformedDistancePairScore(o)
10421 
10422 
10423 # Register TransformedDistancePairScore in _IMP_core:
10424 _IMP_core.TransformedDistancePairScore_swigregister(TransformedDistancePairScore)
10425 class TypedPairScore(IMP.PairScore):
10426  r"""Proxy of C++ IMP::core::TypedPairScore class."""
10427 
10428  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10429 
10430  def __init__(self, typekey, allow_invalid_types=True):
10431  r"""__init__(TypedPairScore self, IntKey typekey, bool allow_invalid_types=True) -> TypedPairScore"""
10432  _IMP_core.TypedPairScore_swiginit(self, _IMP_core.new_TypedPairScore(typekey, allow_invalid_types))
10433 
10434  def set_particle_type(self, arg2):
10435  r"""set_particle_type(TypedPairScore self, Particle arg2)"""
10436  return _IMP_core.TypedPairScore_set_particle_type(self, arg2)
10437 
10438  def set_pair_score(self, ps, atype, btype):
10439  r"""set_pair_score(TypedPairScore self, PairScore ps, IMP::Int atype, IMP::Int btype)"""
10440  return _IMP_core.TypedPairScore_set_pair_score(self, ps, atype, btype)
10441 
10442  def do_get_inputs(self, m, pis):
10443  r"""do_get_inputs(TypedPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10444  return _IMP_core.TypedPairScore_do_get_inputs(self, m, pis)
10445 
10446  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
10447  r"""evaluate_indexes(TypedPairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
10448  return _IMP_core.TypedPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
10449 
10450  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
10451  r"""evaluate_indexes_scores(TypedPairScore 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"""
10452  return _IMP_core.TypedPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
10453 
10454  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
10455  r"""evaluate_indexes_delta(TypedPairScore 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"""
10456  return _IMP_core.TypedPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
10457 
10458  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
10459  r"""evaluate_if_good_indexes(TypedPairScore 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"""
10460  return _IMP_core.TypedPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
10461 
10462  def get_version_info(self):
10463  r"""get_version_info(TypedPairScore self) -> VersionInfo"""
10464  return _IMP_core.TypedPairScore_get_version_info(self)
10465  __swig_destroy__ = _IMP_core.delete_TypedPairScore
10466 
10467  def __str__(self):
10468  r"""__str__(TypedPairScore self) -> std::string"""
10469  return _IMP_core.TypedPairScore___str__(self)
10470 
10471  def __repr__(self):
10472  r"""__repr__(TypedPairScore self) -> std::string"""
10473  return _IMP_core.TypedPairScore___repr__(self)
10474 
10475  @staticmethod
10476  def get_from(o):
10477  return _object_cast_to_TypedPairScore(o)
10478 
10479 
10480 # Register TypedPairScore in _IMP_core:
10481 _IMP_core.TypedPairScore_swigregister(TypedPairScore)
10482 class RigidBodyDistancePairScore(KClosePairsPairScore):
10483  r"""Proxy of C++ IMP::core::RigidBodyDistancePairScore class."""
10484 
10485  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10486 
10487  def __init__(self, ps, r):
10488  r"""__init__(RigidBodyDistancePairScore self, PairScore ps, Refiner r) -> RigidBodyDistancePairScore"""
10489  _IMP_core.RigidBodyDistancePairScore_swiginit(self, _IMP_core.new_RigidBodyDistancePairScore(ps, r))
10490 
10491  def __str__(self):
10492  r"""__str__(RigidBodyDistancePairScore self) -> std::string"""
10493  return _IMP_core.RigidBodyDistancePairScore___str__(self)
10494 
10495  def __repr__(self):
10496  r"""__repr__(RigidBodyDistancePairScore self) -> std::string"""
10497  return _IMP_core.RigidBodyDistancePairScore___repr__(self)
10498 
10499  @staticmethod
10500  def get_from(o):
10501  return _object_cast_to_RigidBodyDistancePairScore(o)
10502 
10503  __swig_destroy__ = _IMP_core.delete_RigidBodyDistancePairScore
10504 
10505 # Register RigidBodyDistancePairScore in _IMP_core:
10506 _IMP_core.RigidBodyDistancePairScore_swigregister(RigidBodyDistancePairScore)
10507 class RigidBodyAnglePairScore(IMP.PairScore):
10508  r"""Proxy of C++ IMP::core::RigidBodyAnglePairScore class."""
10509 
10510  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10511 
10512  def __init__(self, f):
10513  r"""__init__(RigidBodyAnglePairScore self, UnaryFunction f) -> RigidBodyAnglePairScore"""
10514  _IMP_core.RigidBodyAnglePairScore_swiginit(self, _IMP_core.new_RigidBodyAnglePairScore(f))
10515 
10516  def do_get_inputs(self, m, pis):
10517  r"""do_get_inputs(RigidBodyAnglePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10518  return _IMP_core.RigidBodyAnglePairScore_do_get_inputs(self, m, pis)
10519 
10520  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
10521  r"""evaluate_indexes(RigidBodyAnglePairScore self, Model m, IMP::ParticleIndexPairs const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
10522  return _IMP_core.RigidBodyAnglePairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
10523 
10524  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
10525  r"""evaluate_indexes_scores(RigidBodyAnglePairScore 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"""
10526  return _IMP_core.RigidBodyAnglePairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
10527 
10528  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
10529  r"""evaluate_indexes_delta(RigidBodyAnglePairScore 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"""
10530  return _IMP_core.RigidBodyAnglePairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
10531 
10532  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
10533  r"""evaluate_if_good_indexes(RigidBodyAnglePairScore 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"""
10534  return _IMP_core.RigidBodyAnglePairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
10535 
10536  def get_version_info(self):
10537  r"""get_version_info(RigidBodyAnglePairScore self) -> VersionInfo"""
10538  return _IMP_core.RigidBodyAnglePairScore_get_version_info(self)
10539  __swig_destroy__ = _IMP_core.delete_RigidBodyAnglePairScore
10540 
10541  def __str__(self):
10542  r"""__str__(RigidBodyAnglePairScore self) -> std::string"""
10543  return _IMP_core.RigidBodyAnglePairScore___str__(self)
10544 
10545  def __repr__(self):
10546  r"""__repr__(RigidBodyAnglePairScore self) -> std::string"""
10547  return _IMP_core.RigidBodyAnglePairScore___repr__(self)
10548 
10549  @staticmethod
10550  def get_from(o):
10551  return _object_cast_to_RigidBodyAnglePairScore(o)
10552 
10553 
10554 # Register RigidBodyAnglePairScore in _IMP_core:
10555 _IMP_core.RigidBodyAnglePairScore_swigregister(RigidBodyAnglePairScore)
10556 class TableRefiner(IMP.Refiner):
10557  r"""Proxy of C++ IMP::core::TableRefiner class."""
10558 
10559  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10560 
10561  def __init__(self):
10562  r"""__init__(TableRefiner self) -> TableRefiner"""
10563  _IMP_core.TableRefiner_swiginit(self, _IMP_core.new_TableRefiner())
10564 
10565  def add_particle(self, p, ps):
10566  r"""add_particle(TableRefiner self, Particle p, IMP::ParticlesTemp const & ps)"""
10567  return _IMP_core.TableRefiner_add_particle(self, p, ps)
10568 
10569  def remove_particle(self, p):
10570  r"""remove_particle(TableRefiner self, Particle p)"""
10571  return _IMP_core.TableRefiner_remove_particle(self, p)
10572 
10573  def set_particle(self, p, ps):
10574  r"""set_particle(TableRefiner self, Particle p, IMP::ParticlesTemp const & ps)"""
10575  return _IMP_core.TableRefiner_set_particle(self, p, ps)
10576 
10577  def do_get_inputs(self, m, pis):
10578  r"""do_get_inputs(TableRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10579  return _IMP_core.TableRefiner_do_get_inputs(self, m, pis)
10580 
10581  def get_version_info(self):
10582  r"""get_version_info(TableRefiner self) -> VersionInfo"""
10583  return _IMP_core.TableRefiner_get_version_info(self)
10584  __swig_destroy__ = _IMP_core.delete_TableRefiner
10585 
10586  def __str__(self):
10587  r"""__str__(TableRefiner self) -> std::string"""
10588  return _IMP_core.TableRefiner___str__(self)
10589 
10590  def __repr__(self):
10591  r"""__repr__(TableRefiner self) -> std::string"""
10592  return _IMP_core.TableRefiner___repr__(self)
10593 
10594  @staticmethod
10595  def get_from(o):
10596  return _object_cast_to_TableRefiner(o)
10597 
10598 
10599 # Register TableRefiner in _IMP_core:
10600 _IMP_core.TableRefiner_swigregister(TableRefiner)
10601 LOWER = _IMP_core.LOWER
10602 
10603 BOTH = _IMP_core.BOTH
10604 
10605 UPPER = _IMP_core.UPPER
10606 
10607 class MCCGSampler(IMP.Sampler):
10608  r"""Proxy of C++ IMP::core::MCCGSampler class."""
10609 
10610  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10611 
10612  def __init__(self, *args):
10613  r"""__init__(MCCGSampler self, Model m, std::string name="MCCG Sampler %1%") -> MCCGSampler"""
10614  _IMP_core.MCCGSampler_swiginit(self, _IMP_core.new_MCCGSampler(*args))
10615 
10616  def set_bounding_box(self, bb):
10617  r"""set_bounding_box(MCCGSampler self, BoundingBox3D bb)"""
10618  return _IMP_core.MCCGSampler_set_bounding_box(self, bb)
10619 
10620  def set_number_of_attempts(self, att):
10621  r"""set_number_of_attempts(MCCGSampler self, unsigned int att)"""
10622  return _IMP_core.MCCGSampler_set_number_of_attempts(self, att)
10623 
10624  def set_number_of_monte_carlo_steps(self, cg):
10625  r"""set_number_of_monte_carlo_steps(MCCGSampler self, unsigned int cg)"""
10626  return _IMP_core.MCCGSampler_set_number_of_monte_carlo_steps(self, cg)
10627 
10628  def set_number_of_conjugate_gradient_steps(self, cg):
10629  r"""set_number_of_conjugate_gradient_steps(MCCGSampler self, unsigned int cg)"""
10630  return _IMP_core.MCCGSampler_set_number_of_conjugate_gradient_steps(self, cg)
10631 
10632  def set_max_monte_carlo_step_size(self, *args):
10633  r"""
10634  set_max_monte_carlo_step_size(MCCGSampler self, double d)
10635  set_max_monte_carlo_step_size(MCCGSampler self, FloatKey k, double d)
10636  """
10637  return _IMP_core.MCCGSampler_set_max_monte_carlo_step_size(self, *args)
10638 
10639  def set_is_refining(self, tf):
10640  r"""set_is_refining(MCCGSampler self, bool tf)"""
10641  return _IMP_core.MCCGSampler_set_is_refining(self, tf)
10642 
10643  def set_local_optimizer(self, opt):
10644  r"""set_local_optimizer(MCCGSampler self, Optimizer opt)"""
10645  return _IMP_core.MCCGSampler_set_local_optimizer(self, opt)
10646 
10647  def set_save_rejected_configurations(self, tf):
10648  r"""set_save_rejected_configurations(MCCGSampler self, bool tf)"""
10649  return _IMP_core.MCCGSampler_set_save_rejected_configurations(self, tf)
10650 
10651  def get_rejected_configurations(self):
10652  r"""get_rejected_configurations(MCCGSampler self) -> ConfigurationSet"""
10653  return _IMP_core.MCCGSampler_get_rejected_configurations(self)
10654  def __get_optimizer_states(self): return IMP._list_util.VarList(getdimfunc=self.get_number_of_optimizer_states, getfunc=self.get_optimizer_state, erasefunc=self.erase_optimizer_state, appendfunc=self.add_optimizer_state, extendfunc=self.add_optimizer_states, clearfunc=self.clear_optimizer_states, indexfunc=self._python_index_optimizer_state)
10655  def __set_optimizer_states(self, obj): IMP._list_util.set_varlist(self.optimizer_states, obj)
10656  def __del_optimizer_states(self): IMP._list_util.del_varlist(self.optimizer_states)
10657  optimizer_states = property(__get_optimizer_states, __set_optimizer_states, __del_optimizer_states, doc="List of ##ucnames")
10658 
10659  def remove_optimizer_state(self, d):
10660  r"""remove_optimizer_state(MCCGSampler self, OptimizerState d)"""
10661  return _IMP_core.MCCGSampler_remove_optimizer_state(self, d)
10662 
10663  def _python_index_optimizer_state(self, d, start, stop):
10664  r"""_python_index_optimizer_state(MCCGSampler self, OptimizerState d, unsigned int start, unsigned int stop) -> unsigned int"""
10665  return _IMP_core.MCCGSampler__python_index_optimizer_state(self, d, start, stop)
10666 
10667  def remove_optimizer_states(self, d):
10668  r"""remove_optimizer_states(MCCGSampler self, IMP::OptimizerStates const & d)"""
10669  return _IMP_core.MCCGSampler_remove_optimizer_states(self, d)
10670 
10671  def set_optimizer_states(self, ps):
10672  r"""set_optimizer_states(MCCGSampler self, IMP::OptimizerStates const & ps)"""
10673  return _IMP_core.MCCGSampler_set_optimizer_states(self, ps)
10674 
10675  def set_optimizer_states_order(self, objs):
10676  r"""set_optimizer_states_order(MCCGSampler self, IMP::OptimizerStates const & objs)"""
10677  return _IMP_core.MCCGSampler_set_optimizer_states_order(self, objs)
10678 
10679  def add_optimizer_state(self, obj):
10680  r"""add_optimizer_state(MCCGSampler self, OptimizerState obj) -> unsigned int"""
10681  return _IMP_core.MCCGSampler_add_optimizer_state(self, obj)
10682 
10683  def add_optimizer_states(self, objs):
10684  r"""add_optimizer_states(MCCGSampler self, IMP::OptimizerStates const & objs)"""
10685  return _IMP_core.MCCGSampler_add_optimizer_states(self, objs)
10686 
10687  def clear_optimizer_states(self):
10688  r"""clear_optimizer_states(MCCGSampler self)"""
10689  return _IMP_core.MCCGSampler_clear_optimizer_states(self)
10690 
10691  def get_number_of_optimizer_states(self):
10692  r"""get_number_of_optimizer_states(MCCGSampler self) -> unsigned int"""
10693  return _IMP_core.MCCGSampler_get_number_of_optimizer_states(self)
10694 
10695  def get_has_optimizer_states(self):
10696  r"""get_has_optimizer_states(MCCGSampler self) -> bool"""
10697  return _IMP_core.MCCGSampler_get_has_optimizer_states(self)
10698 
10699  def get_optimizer_state(self, i):
10700  r"""get_optimizer_state(MCCGSampler self, unsigned int i) -> OptimizerState"""
10701  return _IMP_core.MCCGSampler_get_optimizer_state(self, i)
10702 
10703  def get_optimizer_states(self):
10704  r"""get_optimizer_states(MCCGSampler self) -> IMP::OptimizerStates"""
10705  return _IMP_core.MCCGSampler_get_optimizer_states(self)
10706 
10707  def erase_optimizer_state(self, i):
10708  r"""erase_optimizer_state(MCCGSampler self, unsigned int i)"""
10709  return _IMP_core.MCCGSampler_erase_optimizer_state(self, i)
10710 
10711  def reserve_optimizer_states(self, sz):
10712  r"""reserve_optimizer_states(MCCGSampler self, unsigned int sz)"""
10713  return _IMP_core.MCCGSampler_reserve_optimizer_states(self, sz)
10714 
10715  def do_sample(self):
10716  r"""do_sample(MCCGSampler self) -> ConfigurationSet"""
10717  return _IMP_core.MCCGSampler_do_sample(self)
10718 
10719  def get_version_info(self):
10720  r"""get_version_info(MCCGSampler self) -> VersionInfo"""
10721  return _IMP_core.MCCGSampler_get_version_info(self)
10722  __swig_destroy__ = _IMP_core.delete_MCCGSampler
10723 
10724  def __str__(self):
10725  r"""__str__(MCCGSampler self) -> std::string"""
10726  return _IMP_core.MCCGSampler___str__(self)
10727 
10728  def __repr__(self):
10729  r"""__repr__(MCCGSampler self) -> std::string"""
10730  return _IMP_core.MCCGSampler___repr__(self)
10731 
10732  @staticmethod
10733  def get_from(o):
10734  return _object_cast_to_MCCGSampler(o)
10735 
10736 
10737 # Register MCCGSampler in _IMP_core:
10738 _IMP_core.MCCGSampler_swigregister(MCCGSampler)
10739 class MinimumRestraint(IMP.Restraint):
10740  r"""Proxy of C++ IMP::core::MinimumRestraint class."""
10741 
10742  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10743 
10744  def __init__(self, *args):
10745  r"""__init__(MinimumRestraint self, unsigned int num, IMP::Restraints const & rs=IMP::Restraints(), std::string name="MinimumRestraint %1%") -> MinimumRestraint"""
10746  _IMP_core.MinimumRestraint_swiginit(self, _IMP_core.new_MinimumRestraint(*args))
10747 
10748  def do_get_inputs(self):
10749  r"""do_get_inputs(MinimumRestraint self) -> IMP::ModelObjectsTemp"""
10750  return _IMP_core.MinimumRestraint_do_get_inputs(self)
10751 
10752  def get_version_info(self):
10753  r"""get_version_info(MinimumRestraint self) -> VersionInfo"""
10754  return _IMP_core.MinimumRestraint_get_version_info(self)
10755  __swig_destroy__ = _IMP_core.delete_MinimumRestraint
10756  def __get_restraints(self): return IMP._list_util.VarList(getdimfunc=self.get_number_of_restraints, getfunc=self.get_restraint, erasefunc=self.erase_restraint, appendfunc=self.add_restraint, extendfunc=self.add_restraints, clearfunc=self.clear_restraints, indexfunc=self._python_index_restraint)
10757  def __set_restraints(self, obj): IMP._list_util.set_varlist(self.restraints, obj)
10758  def __del_restraints(self): IMP._list_util.del_varlist(self.restraints)
10759  restraints = property(__get_restraints, __set_restraints, __del_restraints, doc="List of ##ucnames")
10760 
10761  def remove_restraint(self, d):
10762  r"""remove_restraint(MinimumRestraint self, Restraint d)"""
10763  return _IMP_core.MinimumRestraint_remove_restraint(self, d)
10764 
10765  def _python_index_restraint(self, d, start, stop):
10766  r"""_python_index_restraint(MinimumRestraint self, Restraint d, unsigned int start, unsigned int stop) -> unsigned int"""
10767  return _IMP_core.MinimumRestraint__python_index_restraint(self, d, start, stop)
10768 
10769  def remove_restraints(self, d):
10770  r"""remove_restraints(MinimumRestraint self, IMP::Restraints const & d)"""
10771  return _IMP_core.MinimumRestraint_remove_restraints(self, d)
10772 
10773  def set_restraints(self, ps):
10774  r"""set_restraints(MinimumRestraint self, IMP::Restraints const & ps)"""
10775  return _IMP_core.MinimumRestraint_set_restraints(self, ps)
10776 
10777  def set_restraints_order(self, objs):
10778  r"""set_restraints_order(MinimumRestraint self, IMP::Restraints const & objs)"""
10779  return _IMP_core.MinimumRestraint_set_restraints_order(self, objs)
10780 
10781  def add_restraint(self, obj):
10782  r"""add_restraint(MinimumRestraint self, Restraint obj) -> unsigned int"""
10783  return _IMP_core.MinimumRestraint_add_restraint(self, obj)
10784 
10785  def add_restraints(self, objs):
10786  r"""add_restraints(MinimumRestraint self, IMP::Restraints const & objs)"""
10787  return _IMP_core.MinimumRestraint_add_restraints(self, objs)
10788 
10789  def clear_restraints(self):
10790  r"""clear_restraints(MinimumRestraint self)"""
10791  return _IMP_core.MinimumRestraint_clear_restraints(self)
10792 
10793  def get_number_of_restraints(self):
10794  r"""get_number_of_restraints(MinimumRestraint self) -> unsigned int"""
10795  return _IMP_core.MinimumRestraint_get_number_of_restraints(self)
10796 
10797  def get_has_restraints(self):
10798  r"""get_has_restraints(MinimumRestraint self) -> bool"""
10799  return _IMP_core.MinimumRestraint_get_has_restraints(self)
10800 
10801  def get_restraint(self, i):
10802  r"""get_restraint(MinimumRestraint self, unsigned int i) -> Restraint"""
10803  return _IMP_core.MinimumRestraint_get_restraint(self, i)
10804 
10805  def get_restraints(self):
10806  r"""get_restraints(MinimumRestraint self) -> IMP::Restraints"""
10807  return _IMP_core.MinimumRestraint_get_restraints(self)
10808 
10809  def erase_restraint(self, i):
10810  r"""erase_restraint(MinimumRestraint self, unsigned int i)"""
10811  return _IMP_core.MinimumRestraint_erase_restraint(self, i)
10812 
10813  def reserve_restraints(self, sz):
10814  r"""reserve_restraints(MinimumRestraint self, unsigned int sz)"""
10815  return _IMP_core.MinimumRestraint_reserve_restraints(self, sz)
10816 
10817  def __str__(self):
10818  r"""__str__(MinimumRestraint self) -> std::string"""
10819  return _IMP_core.MinimumRestraint___str__(self)
10820 
10821  def __repr__(self):
10822  r"""__repr__(MinimumRestraint self) -> std::string"""
10823  return _IMP_core.MinimumRestraint___repr__(self)
10824 
10825  @staticmethod
10826  def get_from(o):
10827  return _object_cast_to_MinimumRestraint(o)
10828 
10829 
10830 # Register MinimumRestraint in _IMP_core:
10831 _IMP_core.MinimumRestraint_swigregister(MinimumRestraint)
10832 class Gaussian(RigidBody):
10833  r"""Proxy of C++ IMP::core::Gaussian class."""
10834 
10835  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10836 
10837  def __init__(self, *args):
10838  r"""
10839  __init__(Gaussian self) -> Gaussian
10840  __init__(Gaussian self, Model m, ParticleIndex id) -> Gaussian
10841  __init__(Gaussian self, _ParticleAdaptor d) -> Gaussian
10842  """
10843  _IMP_core.Gaussian_swiginit(self, _IMP_core.new_Gaussian(*args))
10844 
10845  def show(self, *args):
10846  r"""show(Gaussian self, _ostream out=std::cout)"""
10847  return _IMP_core.Gaussian_show(self, *args)
10848 
10849  @staticmethod
10850  def setup_particle(*args):
10851  r"""
10852  setup_particle(Model m, ParticleIndex pi) -> Gaussian
10853  setup_particle(_ParticleAdaptor pa) -> Gaussian
10854  setup_particle(Model m, ParticleIndex pi, Gaussian3D g) -> Gaussian
10855  setup_particle(_ParticleAdaptor pa, Gaussian3D g) -> Gaussian
10856  """
10857  return _IMP_core.Gaussian_setup_particle(*args)
10858 
10859  @staticmethod
10860  def get_local_covariance_key():
10861  r"""get_local_covariance_key() -> ObjectKey"""
10862  return _IMP_core.Gaussian_get_local_covariance_key()
10863 
10864  @staticmethod
10865  def get_global_covariance_key():
10866  r"""get_global_covariance_key() -> ObjectKey"""
10867  return _IMP_core.Gaussian_get_global_covariance_key()
10868 
10869  @staticmethod
10870  def get_is_setup(*args):
10871  r"""
10872  get_is_setup(_ParticleAdaptor p) -> bool
10873  get_is_setup(Model m, ParticleIndex pi) -> bool
10874  """
10875  return _IMP_core.Gaussian_get_is_setup(*args)
10876 
10877  def get_local_covariance(self):
10878  r"""get_local_covariance(Gaussian self) -> Eigen::Matrix3d"""
10879  return _IMP_core.Gaussian_get_local_covariance(self)
10880 
10881  def get_variances(self):
10882  r"""get_variances(Gaussian self) -> Vector3D"""
10883  return _IMP_core.Gaussian_get_variances(self)
10884 
10885  def get_global_covariance(self):
10886  r"""get_global_covariance(Gaussian self) -> Eigen::Matrix3d"""
10887  return _IMP_core.Gaussian_get_global_covariance(self)
10888 
10889  def get_gaussian(self):
10890  r"""get_gaussian(Gaussian self) -> Gaussian3D"""
10891  return _IMP_core.Gaussian_get_gaussian(self)
10892 
10893  def set_gaussian(self, g):
10894  r"""set_gaussian(Gaussian self, Gaussian3D g)"""
10895  return _IMP_core.Gaussian_set_gaussian(self, g)
10896 
10897  def set_local_covariance(self, covar):
10898  r"""set_local_covariance(Gaussian self, Eigen::Vector3d const covar)"""
10899  return _IMP_core.Gaussian_set_local_covariance(self, covar)
10900 
10901  def set_variances(self, v):
10902  r"""set_variances(Gaussian self, Vector3D v)"""
10903  return _IMP_core.Gaussian_set_variances(self, v)
10904 
10905  def set_global_covariance(self, covar):
10906  r"""set_global_covariance(Gaussian self, Eigen::Matrix3d covar)"""
10907  return _IMP_core.Gaussian_set_global_covariance(self, covar)
10908 
10909  def update_global_covariance(self):
10910  r"""update_global_covariance(Gaussian self)"""
10911  return _IMP_core.Gaussian_update_global_covariance(self)
10912 
10913  def add_attribute(self, *args):
10914  r"""
10915  add_attribute(Gaussian self, FloatKey k, IMP::Float v, bool opt)
10916  add_attribute(Gaussian self, FloatKey a0, IMP::Float a1)
10917  add_attribute(Gaussian self, IntKey a0, IMP::Int a1)
10918  add_attribute(Gaussian self, FloatsKey a0, IMP::Floats a1)
10919  add_attribute(Gaussian self, IntsKey a0, IMP::Ints a1)
10920  add_attribute(Gaussian self, StringKey a0, IMP::String a1)
10921  add_attribute(Gaussian self, ParticleIndexKey a0, Particle a1)
10922  add_attribute(Gaussian self, ObjectKey a0, Object a1)
10923  add_attribute(Gaussian self, SparseFloatKey a0, IMP::Float a1)
10924  add_attribute(Gaussian self, SparseIntKey a0, IMP::Int a1)
10925  add_attribute(Gaussian self, SparseStringKey a0, IMP::String a1)
10926  add_attribute(Gaussian self, SparseParticleIndexKey a0, ParticleIndex a1)
10927  """
10928  return _IMP_core.Gaussian_add_attribute(self, *args)
10929 
10930  def get_value(self, *args):
10931  r"""
10932  get_value(Gaussian self, FloatKey a0) -> IMP::Float
10933  get_value(Gaussian self, IntKey a0) -> IMP::Int
10934  get_value(Gaussian self, FloatsKey a0) -> IMP::Floats
10935  get_value(Gaussian self, IntsKey a0) -> IMP::Ints
10936  get_value(Gaussian self, StringKey a0) -> IMP::String
10937  get_value(Gaussian self, ParticleIndexKey a0) -> Particle
10938  get_value(Gaussian self, ObjectKey a0) -> Object
10939  get_value(Gaussian self, SparseFloatKey a0) -> IMP::Float
10940  get_value(Gaussian self, SparseIntKey a0) -> IMP::Int
10941  get_value(Gaussian self, SparseStringKey a0) -> IMP::String
10942  get_value(Gaussian self, SparseParticleIndexKey a0) -> ParticleIndex
10943  """
10944  return _IMP_core.Gaussian_get_value(self, *args)
10945 
10946  def set_value(self, *args):
10947  r"""
10948  set_value(Gaussian self, FloatKey a0, IMP::Float a1)
10949  set_value(Gaussian self, IntKey a0, IMP::Int a1)
10950  set_value(Gaussian self, FloatsKey a0, IMP::Floats a1)
10951  set_value(Gaussian self, IntsKey a0, IMP::Ints a1)
10952  set_value(Gaussian self, StringKey a0, IMP::String a1)
10953  set_value(Gaussian self, ParticleIndexKey a0, Particle a1)
10954  set_value(Gaussian self, ObjectKey a0, Object a1)
10955  set_value(Gaussian self, SparseFloatKey a0, IMP::Float a1)
10956  set_value(Gaussian self, SparseIntKey a0, IMP::Int a1)
10957  set_value(Gaussian self, SparseStringKey a0, IMP::String a1)
10958  set_value(Gaussian self, SparseParticleIndexKey a0, ParticleIndex a1)
10959  """
10960  return _IMP_core.Gaussian_set_value(self, *args)
10961 
10962  def remove_attribute(self, *args):
10963  r"""
10964  remove_attribute(Gaussian self, FloatKey a0)
10965  remove_attribute(Gaussian self, IntKey a0)
10966  remove_attribute(Gaussian self, FloatsKey a0)
10967  remove_attribute(Gaussian self, IntsKey a0)
10968  remove_attribute(Gaussian self, StringKey a0)
10969  remove_attribute(Gaussian self, ParticleIndexKey a0)
10970  remove_attribute(Gaussian self, ObjectKey a0)
10971  remove_attribute(Gaussian self, SparseFloatKey a0)
10972  remove_attribute(Gaussian self, SparseIntKey a0)
10973  remove_attribute(Gaussian self, SparseStringKey a0)
10974  remove_attribute(Gaussian self, SparseParticleIndexKey a0)
10975  """
10976  return _IMP_core.Gaussian_remove_attribute(self, *args)
10977 
10978  def has_attribute(self, *args):
10979  r"""
10980  has_attribute(Gaussian self, FloatKey a0) -> bool
10981  has_attribute(Gaussian self, IntKey a0) -> bool
10982  has_attribute(Gaussian self, FloatsKey a0) -> bool
10983  has_attribute(Gaussian self, IntsKey a0) -> bool
10984  has_attribute(Gaussian self, StringKey a0) -> bool
10985  has_attribute(Gaussian self, ParticleIndexKey a0) -> bool
10986  has_attribute(Gaussian self, ObjectKey a0) -> bool
10987  has_attribute(Gaussian self, SparseFloatKey a0) -> bool
10988  has_attribute(Gaussian self, SparseIntKey a0) -> bool
10989  has_attribute(Gaussian self, SparseStringKey a0) -> bool
10990  has_attribute(Gaussian self, SparseParticleIndexKey a0) -> bool
10991  """
10992  return _IMP_core.Gaussian_has_attribute(self, *args)
10993 
10994  def get_derivative(self, a0):
10995  r"""get_derivative(Gaussian self, FloatKey a0) -> double"""
10996  return _IMP_core.Gaussian_get_derivative(self, a0)
10997 
10998  def get_name(self):
10999  r"""get_name(Gaussian self) -> std::string"""
11000  return _IMP_core.Gaussian_get_name(self)
11001 
11002  def clear_caches(self):
11003  r"""clear_caches(Gaussian self)"""
11004  return _IMP_core.Gaussian_clear_caches(self)
11005 
11006  def set_name(self, a0):
11007  r"""set_name(Gaussian self, std::string a0)"""
11008  return _IMP_core.Gaussian_set_name(self, a0)
11009 
11010  def set_check_level(self, a0):
11011  r"""set_check_level(Gaussian self, IMP::CheckLevel a0)"""
11012  return _IMP_core.Gaussian_set_check_level(self, a0)
11013 
11014  def add_to_derivative(self, a0, a1, a2):
11015  r"""add_to_derivative(Gaussian self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
11016  return _IMP_core.Gaussian_add_to_derivative(self, a0, a1, a2)
11017 
11018  def set_is_optimized(self, a0, a1):
11019  r"""set_is_optimized(Gaussian self, FloatKey a0, bool a1)"""
11020  return _IMP_core.Gaussian_set_is_optimized(self, a0, a1)
11021 
11022  def get_is_optimized(self, a0):
11023  r"""get_is_optimized(Gaussian self, FloatKey a0) -> bool"""
11024  return _IMP_core.Gaussian_get_is_optimized(self, a0)
11025 
11026  def get_check_level(self):
11027  r"""get_check_level(Gaussian self) -> IMP::CheckLevel"""
11028  return _IMP_core.Gaussian_get_check_level(self)
11029 
11030  def __eq__(self, *args):
11031  r"""
11032  __eq__(Gaussian self, Gaussian o) -> bool
11033  __eq__(Gaussian self, Particle d) -> bool
11034  """
11035  return _IMP_core.Gaussian___eq__(self, *args)
11036 
11037  def __ne__(self, *args):
11038  r"""
11039  __ne__(Gaussian self, Gaussian o) -> bool
11040  __ne__(Gaussian self, Particle d) -> bool
11041  """
11042  return _IMP_core.Gaussian___ne__(self, *args)
11043 
11044  def __le__(self, *args):
11045  r"""
11046  __le__(Gaussian self, Gaussian o) -> bool
11047  __le__(Gaussian self, Particle d) -> bool
11048  """
11049  return _IMP_core.Gaussian___le__(self, *args)
11050 
11051  def __lt__(self, *args):
11052  r"""
11053  __lt__(Gaussian self, Gaussian o) -> bool
11054  __lt__(Gaussian self, Particle d) -> bool
11055  """
11056  return _IMP_core.Gaussian___lt__(self, *args)
11057 
11058  def __ge__(self, *args):
11059  r"""
11060  __ge__(Gaussian self, Gaussian o) -> bool
11061  __ge__(Gaussian self, Particle d) -> bool
11062  """
11063  return _IMP_core.Gaussian___ge__(self, *args)
11064 
11065  def __gt__(self, *args):
11066  r"""
11067  __gt__(Gaussian self, Gaussian o) -> bool
11068  __gt__(Gaussian self, Particle d) -> bool
11069  """
11070  return _IMP_core.Gaussian___gt__(self, *args)
11071 
11072  def __hash__(self):
11073  r"""__hash__(Gaussian self) -> std::size_t"""
11074  return _IMP_core.Gaussian___hash__(self)
11075 
11076  def __str__(self):
11077  r"""__str__(Gaussian self) -> std::string"""
11078  return _IMP_core.Gaussian___str__(self)
11079 
11080  def __repr__(self):
11081  r"""__repr__(Gaussian self) -> std::string"""
11082  return _IMP_core.Gaussian___repr__(self)
11083 
11084  def _get_as_binary(self):
11085  r"""_get_as_binary(Gaussian self) -> PyObject *"""
11086  return _IMP_core.Gaussian__get_as_binary(self)
11087 
11088  def _set_from_binary(self, p):
11089  r"""_set_from_binary(Gaussian self, PyObject * p)"""
11090  return _IMP_core.Gaussian__set_from_binary(self, p)
11091 
11092  def __getstate__(self):
11093  p = self._get_as_binary()
11094  if len(self.__dict__) > 1:
11095  d = self.__dict__.copy()
11096  del d['this']
11097  p = (d, p)
11098  return p
11099 
11100  def __setstate__(self, p):
11101  if not hasattr(self, 'this'):
11102  self.__init__()
11103  if isinstance(p, tuple):
11104  d, p = p
11105  self.__dict__.update(d)
11106  return self._set_from_binary(p)
11107 
11108  __swig_destroy__ = _IMP_core.delete_Gaussian
11109 
11110 # Register Gaussian in _IMP_core:
11111 _IMP_core.Gaussian_swigregister(Gaussian)
11112 class PairRestraint(IMP.Restraint):
11113  r"""Proxy of C++ IMP::core::PairRestraint class."""
11114 
11115  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11116 
11117  def __init__(self, *args):
11118  r"""
11119  __init__(PairRestraint self, Model m, PairScore ss, IMP::ParticleIndexPair const & vt, std::string name="PairRestraint %1%") -> PairRestraint
11120  __init__(PairRestraint self) -> PairRestraint
11121  """
11122  _IMP_core.PairRestraint_swiginit(self, _IMP_core.new_PairRestraint(*args))
11123 
11124  def get_score_object(self):
11125  r"""get_score_object(PairRestraint self) -> PairScore"""
11126  return _IMP_core.PairRestraint_get_score_object(self)
11127 
11128  def get_index(self):
11129  r"""get_index(PairRestraint self) -> IMP::PairScore::IndexArgument"""
11130  return _IMP_core.PairRestraint_get_index(self)
11131 
11132  def get_version_info(self):
11133  r"""get_version_info(PairRestraint self) -> VersionInfo"""
11134  return _IMP_core.PairRestraint_get_version_info(self)
11135  __swig_destroy__ = _IMP_core.delete_PairRestraint
11136 
11137  def __str__(self):
11138  r"""__str__(PairRestraint self) -> std::string"""
11139  return _IMP_core.PairRestraint___str__(self)
11140 
11141  def __repr__(self):
11142  r"""__repr__(PairRestraint self) -> std::string"""
11143  return _IMP_core.PairRestraint___repr__(self)
11144 
11145  @staticmethod
11146  def get_from(o):
11147  return _object_cast_to_PairRestraint(o)
11148 
11149 
11150  def _get_as_binary(self):
11151  r"""_get_as_binary(PairRestraint self) -> PyObject *"""
11152  return _IMP_core.PairRestraint__get_as_binary(self)
11153 
11154  def _set_from_binary(self, p):
11155  r"""_set_from_binary(PairRestraint self, PyObject * p)"""
11156  return _IMP_core.PairRestraint__set_from_binary(self, p)
11157 
11158  def __getstate__(self):
11159  p = self._get_as_binary()
11160  if len(self.__dict__) > 1:
11161  d = self.__dict__.copy()
11162  del d['this']
11163  p = (d, p)
11164  return p
11165 
11166  def __setstate__(self, p):
11167  if not hasattr(self, 'this'):
11168  self.__init__()
11169  if isinstance(p, tuple):
11170  d, p = p
11171  self.__dict__.update(d)
11172  return self._set_from_binary(p)
11173 
11174 
11175  def _get_jax(self):
11176  from . import _jax_util
11177  return _jax_util._get_jax_restraint(self)
11178 
11179 
11180 # Register PairRestraint in _IMP_core:
11181 _IMP_core.PairRestraint_swigregister(PairRestraint)
11182 class SingletonRestraint(IMP.Restraint):
11183  r"""Proxy of C++ IMP::core::SingletonRestraint class."""
11184 
11185  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11186 
11187  def __init__(self, *args):
11188  r"""
11189  __init__(SingletonRestraint self, Model m, SingletonScore ss, ParticleIndex vt, std::string name="SingletonRestraint %1%") -> SingletonRestraint
11190  __init__(SingletonRestraint self) -> SingletonRestraint
11191  """
11192  _IMP_core.SingletonRestraint_swiginit(self, _IMP_core.new_SingletonRestraint(*args))
11193 
11194  def get_score_object(self):
11195  r"""get_score_object(SingletonRestraint self) -> SingletonScore"""
11196  return _IMP_core.SingletonRestraint_get_score_object(self)
11197 
11198  def get_index(self):
11199  r"""get_index(SingletonRestraint self) -> ParticleIndex"""
11200  return _IMP_core.SingletonRestraint_get_index(self)
11201 
11202  def get_version_info(self):
11203  r"""get_version_info(SingletonRestraint self) -> VersionInfo"""
11204  return _IMP_core.SingletonRestraint_get_version_info(self)
11205  __swig_destroy__ = _IMP_core.delete_SingletonRestraint
11206 
11207  def __str__(self):
11208  r"""__str__(SingletonRestraint self) -> std::string"""
11209  return _IMP_core.SingletonRestraint___str__(self)
11210 
11211  def __repr__(self):
11212  r"""__repr__(SingletonRestraint self) -> std::string"""
11213  return _IMP_core.SingletonRestraint___repr__(self)
11214 
11215  @staticmethod
11216  def get_from(o):
11217  return _object_cast_to_SingletonRestraint(o)
11218 
11219 
11220  def _get_as_binary(self):
11221  r"""_get_as_binary(SingletonRestraint self) -> PyObject *"""
11222  return _IMP_core.SingletonRestraint__get_as_binary(self)
11223 
11224  def _set_from_binary(self, p):
11225  r"""_set_from_binary(SingletonRestraint self, PyObject * p)"""
11226  return _IMP_core.SingletonRestraint__set_from_binary(self, p)
11227 
11228  def __getstate__(self):
11229  p = self._get_as_binary()
11230  if len(self.__dict__) > 1:
11231  d = self.__dict__.copy()
11232  del d['this']
11233  p = (d, p)
11234  return p
11235 
11236  def __setstate__(self, p):
11237  if not hasattr(self, 'this'):
11238  self.__init__()
11239  if isinstance(p, tuple):
11240  d, p = p
11241  self.__dict__.update(d)
11242  return self._set_from_binary(p)
11243 
11244 
11245  def _get_jax(self):
11246  from . import _jax_util
11247  return _jax_util._get_jax_restraint(self)
11248 
11249 
11250 # Register SingletonRestraint in _IMP_core:
11251 _IMP_core.SingletonRestraint_swigregister(SingletonRestraint)
11252 class TripletRestraint(IMP.Restraint):
11253  r"""Proxy of C++ IMP::core::TripletRestraint class."""
11254 
11255  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11256 
11257  def __init__(self, *args):
11258  r"""
11259  __init__(TripletRestraint self, Model m, TripletScore ss, IMP::ParticleIndexTriplet const & vt, std::string name="TripletRestraint %1%") -> TripletRestraint
11260  __init__(TripletRestraint self) -> TripletRestraint
11261  """
11262  _IMP_core.TripletRestraint_swiginit(self, _IMP_core.new_TripletRestraint(*args))
11263 
11264  def get_score_object(self):
11265  r"""get_score_object(TripletRestraint self) -> TripletScore"""
11266  return _IMP_core.TripletRestraint_get_score_object(self)
11267 
11268  def get_index(self):
11269  r"""get_index(TripletRestraint self) -> IMP::TripletScore::IndexArgument"""
11270  return _IMP_core.TripletRestraint_get_index(self)
11271 
11272  def get_version_info(self):
11273  r"""get_version_info(TripletRestraint self) -> VersionInfo"""
11274  return _IMP_core.TripletRestraint_get_version_info(self)
11275  __swig_destroy__ = _IMP_core.delete_TripletRestraint
11276 
11277  def __str__(self):
11278  r"""__str__(TripletRestraint self) -> std::string"""
11279  return _IMP_core.TripletRestraint___str__(self)
11280 
11281  def __repr__(self):
11282  r"""__repr__(TripletRestraint self) -> std::string"""
11283  return _IMP_core.TripletRestraint___repr__(self)
11284 
11285  @staticmethod
11286  def get_from(o):
11287  return _object_cast_to_TripletRestraint(o)
11288 
11289 
11290  def _get_as_binary(self):
11291  r"""_get_as_binary(TripletRestraint self) -> PyObject *"""
11292  return _IMP_core.TripletRestraint__get_as_binary(self)
11293 
11294  def _set_from_binary(self, p):
11295  r"""_set_from_binary(TripletRestraint self, PyObject * p)"""
11296  return _IMP_core.TripletRestraint__set_from_binary(self, p)
11297 
11298  def __getstate__(self):
11299  p = self._get_as_binary()
11300  if len(self.__dict__) > 1:
11301  d = self.__dict__.copy()
11302  del d['this']
11303  p = (d, p)
11304  return p
11305 
11306  def __setstate__(self, p):
11307  if not hasattr(self, 'this'):
11308  self.__init__()
11309  if isinstance(p, tuple):
11310  d, p = p
11311  self.__dict__.update(d)
11312  return self._set_from_binary(p)
11313 
11314 
11315 # Register TripletRestraint in _IMP_core:
11316 _IMP_core.TripletRestraint_swigregister(TripletRestraint)
11317 class QuadRestraint(IMP.Restraint):
11318  r"""Proxy of C++ IMP::core::QuadRestraint class."""
11319 
11320  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11321 
11322  def __init__(self, *args):
11323  r"""
11324  __init__(QuadRestraint self, Model m, QuadScore ss, IMP::ParticleIndexQuad const & vt, std::string name="QuadRestraint %1%") -> QuadRestraint
11325  __init__(QuadRestraint self) -> QuadRestraint
11326  """
11327  _IMP_core.QuadRestraint_swiginit(self, _IMP_core.new_QuadRestraint(*args))
11328 
11329  def get_score_object(self):
11330  r"""get_score_object(QuadRestraint self) -> QuadScore"""
11331  return _IMP_core.QuadRestraint_get_score_object(self)
11332 
11333  def get_index(self):
11334  r"""get_index(QuadRestraint self) -> IMP::QuadScore::IndexArgument"""
11335  return _IMP_core.QuadRestraint_get_index(self)
11336 
11337  def get_version_info(self):
11338  r"""get_version_info(QuadRestraint self) -> VersionInfo"""
11339  return _IMP_core.QuadRestraint_get_version_info(self)
11340  __swig_destroy__ = _IMP_core.delete_QuadRestraint
11341 
11342  def __str__(self):
11343  r"""__str__(QuadRestraint self) -> std::string"""
11344  return _IMP_core.QuadRestraint___str__(self)
11345 
11346  def __repr__(self):
11347  r"""__repr__(QuadRestraint self) -> std::string"""
11348  return _IMP_core.QuadRestraint___repr__(self)
11349 
11350  @staticmethod
11351  def get_from(o):
11352  return _object_cast_to_QuadRestraint(o)
11353 
11354 
11355  def _get_as_binary(self):
11356  r"""_get_as_binary(QuadRestraint self) -> PyObject *"""
11357  return _IMP_core.QuadRestraint__get_as_binary(self)
11358 
11359  def _set_from_binary(self, p):
11360  r"""_set_from_binary(QuadRestraint self, PyObject * p)"""
11361  return _IMP_core.QuadRestraint__set_from_binary(self, p)
11362 
11363  def __getstate__(self):
11364  p = self._get_as_binary()
11365  if len(self.__dict__) > 1:
11366  d = self.__dict__.copy()
11367  del d['this']
11368  p = (d, p)
11369  return p
11370 
11371  def __setstate__(self, p):
11372  if not hasattr(self, 'this'):
11373  self.__init__()
11374  if isinstance(p, tuple):
11375  d, p = p
11376  self.__dict__.update(d)
11377  return self._set_from_binary(p)
11378 
11379 
11380 # Register QuadRestraint in _IMP_core:
11381 _IMP_core.QuadRestraint_swigregister(QuadRestraint)
11382 class SingletonConstraint(IMP.Constraint):
11383  r"""Proxy of C++ IMP::core::SingletonConstraint class."""
11384 
11385  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11386 
11387  def __init__(self, *args):
11388  r"""
11389  __init__(SingletonConstraint self, SingletonModifier before, SingletonModifier after, Model m, ParticleIndex vt, std::string name="SingletonConstraint %1%", bool can_skip=False) -> SingletonConstraint
11390  __init__(SingletonConstraint self) -> SingletonConstraint
11391  """
11392  _IMP_core.SingletonConstraint_swiginit(self, _IMP_core.new_SingletonConstraint(*args))
11393 
11394  def get_before_modifier(self):
11395  r"""get_before_modifier(SingletonConstraint self) -> SingletonModifier"""
11396  return _IMP_core.SingletonConstraint_get_before_modifier(self)
11397 
11398  def get_index(self):
11399  r"""get_index(SingletonConstraint self) -> ParticleIndex"""
11400  return _IMP_core.SingletonConstraint_get_index(self)
11401 
11402  def get_version_info(self):
11403  r"""get_version_info(SingletonConstraint self) -> VersionInfo"""
11404  return _IMP_core.SingletonConstraint_get_version_info(self)
11405  __swig_destroy__ = _IMP_core.delete_SingletonConstraint
11406 
11407  def __str__(self):
11408  r"""__str__(SingletonConstraint self) -> std::string"""
11409  return _IMP_core.SingletonConstraint___str__(self)
11410 
11411  def __repr__(self):
11412  r"""__repr__(SingletonConstraint self) -> std::string"""
11413  return _IMP_core.SingletonConstraint___repr__(self)
11414 
11415  @staticmethod
11416  def get_from(o):
11417  return _object_cast_to_SingletonConstraint(o)
11418 
11419 
11420  def _get_as_binary(self):
11421  r"""_get_as_binary(SingletonConstraint self) -> PyObject *"""
11422  return _IMP_core.SingletonConstraint__get_as_binary(self)
11423 
11424  def _set_from_binary(self, p):
11425  r"""_set_from_binary(SingletonConstraint self, PyObject * p)"""
11426  return _IMP_core.SingletonConstraint__set_from_binary(self, p)
11427 
11428  def __getstate__(self):
11429  p = self._get_as_binary()
11430  if len(self.__dict__) > 1:
11431  d = self.__dict__.copy()
11432  del d['this']
11433  p = (d, p)
11434  return p
11435 
11436  def __setstate__(self, p):
11437  if not hasattr(self, 'this'):
11438  self.__init__()
11439  if isinstance(p, tuple):
11440  d, p = p
11441  self.__dict__.update(d)
11442  return self._set_from_binary(p)
11443 
11444 
11445  def _get_jax(self):
11446  import functools
11447  index = self.get_index()
11448  mod = self.get_before_modifier().get_derived_object()
11449  ji = mod._get_jax(self.get_model(), index)
11450  return self._wrap_jax(
11451  functools.partial(ji.apply_func, indexes=index),
11452  keys=ji._keys)
11453 
11454 
11455 # Register SingletonConstraint in _IMP_core:
11456 _IMP_core.SingletonConstraint_swigregister(SingletonConstraint)
11457 class PairConstraint(IMP.Constraint):
11458  r"""Proxy of C++ IMP::core::PairConstraint class."""
11459 
11460  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11461 
11462  def __init__(self, *args):
11463  r"""
11464  __init__(PairConstraint self, PairModifier before, PairModifier after, Model m, IMP::ParticleIndexPair const & vt, std::string name="PairConstraint %1%", bool can_skip=False) -> PairConstraint
11465  __init__(PairConstraint self) -> PairConstraint
11466  """
11467  _IMP_core.PairConstraint_swiginit(self, _IMP_core.new_PairConstraint(*args))
11468 
11469  def get_before_modifier(self):
11470  r"""get_before_modifier(PairConstraint self) -> PairModifier"""
11471  return _IMP_core.PairConstraint_get_before_modifier(self)
11472 
11473  def get_index(self):
11474  r"""get_index(PairConstraint self) -> IMP::PairModifier::IndexArgument"""
11475  return _IMP_core.PairConstraint_get_index(self)
11476 
11477  def get_version_info(self):
11478  r"""get_version_info(PairConstraint self) -> VersionInfo"""
11479  return _IMP_core.PairConstraint_get_version_info(self)
11480  __swig_destroy__ = _IMP_core.delete_PairConstraint
11481 
11482  def __str__(self):
11483  r"""__str__(PairConstraint self) -> std::string"""
11484  return _IMP_core.PairConstraint___str__(self)
11485 
11486  def __repr__(self):
11487  r"""__repr__(PairConstraint self) -> std::string"""
11488  return _IMP_core.PairConstraint___repr__(self)
11489 
11490  @staticmethod
11491  def get_from(o):
11492  return _object_cast_to_PairConstraint(o)
11493 
11494 
11495  def _get_as_binary(self):
11496  r"""_get_as_binary(PairConstraint self) -> PyObject *"""
11497  return _IMP_core.PairConstraint__get_as_binary(self)
11498 
11499  def _set_from_binary(self, p):
11500  r"""_set_from_binary(PairConstraint self, PyObject * p)"""
11501  return _IMP_core.PairConstraint__set_from_binary(self, p)
11502 
11503  def __getstate__(self):
11504  p = self._get_as_binary()
11505  if len(self.__dict__) > 1:
11506  d = self.__dict__.copy()
11507  del d['this']
11508  p = (d, p)
11509  return p
11510 
11511  def __setstate__(self, p):
11512  if not hasattr(self, 'this'):
11513  self.__init__()
11514  if isinstance(p, tuple):
11515  d, p = p
11516  self.__dict__.update(d)
11517  return self._set_from_binary(p)
11518 
11519 
11520 # Register PairConstraint in _IMP_core:
11521 _IMP_core.PairConstraint_swigregister(PairConstraint)
11522 class TripletConstraint(IMP.Constraint):
11523  r"""Proxy of C++ IMP::core::TripletConstraint class."""
11524 
11525  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11526 
11527  def __init__(self, *args):
11528  r"""
11529  __init__(TripletConstraint self, TripletModifier before, TripletModifier after, Model m, IMP::ParticleIndexTriplet const & vt, std::string name="TripletConstraint %1%", bool can_skip=False) -> TripletConstraint
11530  __init__(TripletConstraint self) -> TripletConstraint
11531  """
11532  _IMP_core.TripletConstraint_swiginit(self, _IMP_core.new_TripletConstraint(*args))
11533 
11534  def get_before_modifier(self):
11535  r"""get_before_modifier(TripletConstraint self) -> TripletModifier"""
11536  return _IMP_core.TripletConstraint_get_before_modifier(self)
11537 
11538  def get_index(self):
11539  r"""get_index(TripletConstraint self) -> IMP::TripletModifier::IndexArgument"""
11540  return _IMP_core.TripletConstraint_get_index(self)
11541 
11542  def get_version_info(self):
11543  r"""get_version_info(TripletConstraint self) -> VersionInfo"""
11544  return _IMP_core.TripletConstraint_get_version_info(self)
11545  __swig_destroy__ = _IMP_core.delete_TripletConstraint
11546 
11547  def __str__(self):
11548  r"""__str__(TripletConstraint self) -> std::string"""
11549  return _IMP_core.TripletConstraint___str__(self)
11550 
11551  def __repr__(self):
11552  r"""__repr__(TripletConstraint self) -> std::string"""
11553  return _IMP_core.TripletConstraint___repr__(self)
11554 
11555  @staticmethod
11556  def get_from(o):
11557  return _object_cast_to_TripletConstraint(o)
11558 
11559 
11560  def _get_as_binary(self):
11561  r"""_get_as_binary(TripletConstraint self) -> PyObject *"""
11562  return _IMP_core.TripletConstraint__get_as_binary(self)
11563 
11564  def _set_from_binary(self, p):
11565  r"""_set_from_binary(TripletConstraint self, PyObject * p)"""
11566  return _IMP_core.TripletConstraint__set_from_binary(self, p)
11567 
11568  def __getstate__(self):
11569  p = self._get_as_binary()
11570  if len(self.__dict__) > 1:
11571  d = self.__dict__.copy()
11572  del d['this']
11573  p = (d, p)
11574  return p
11575 
11576  def __setstate__(self, p):
11577  if not hasattr(self, 'this'):
11578  self.__init__()
11579  if isinstance(p, tuple):
11580  d, p = p
11581  self.__dict__.update(d)
11582  return self._set_from_binary(p)
11583 
11584 
11585 # Register TripletConstraint in _IMP_core:
11586 _IMP_core.TripletConstraint_swigregister(TripletConstraint)
11587 class QuadConstraint(IMP.Constraint):
11588  r"""Proxy of C++ IMP::core::QuadConstraint class."""
11589 
11590  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11591 
11592  def __init__(self, *args):
11593  r"""
11594  __init__(QuadConstraint self, QuadModifier before, QuadModifier after, Model m, IMP::ParticleIndexQuad const & vt, std::string name="QuadConstraint %1%", bool can_skip=False) -> QuadConstraint
11595  __init__(QuadConstraint self) -> QuadConstraint
11596  """
11597  _IMP_core.QuadConstraint_swiginit(self, _IMP_core.new_QuadConstraint(*args))
11598 
11599  def get_before_modifier(self):
11600  r"""get_before_modifier(QuadConstraint self) -> QuadModifier"""
11601  return _IMP_core.QuadConstraint_get_before_modifier(self)
11602 
11603  def get_index(self):
11604  r"""get_index(QuadConstraint self) -> IMP::QuadModifier::IndexArgument"""
11605  return _IMP_core.QuadConstraint_get_index(self)
11606 
11607  def get_version_info(self):
11608  r"""get_version_info(QuadConstraint self) -> VersionInfo"""
11609  return _IMP_core.QuadConstraint_get_version_info(self)
11610  __swig_destroy__ = _IMP_core.delete_QuadConstraint
11611 
11612  def __str__(self):
11613  r"""__str__(QuadConstraint self) -> std::string"""
11614  return _IMP_core.QuadConstraint___str__(self)
11615 
11616  def __repr__(self):
11617  r"""__repr__(QuadConstraint self) -> std::string"""
11618  return _IMP_core.QuadConstraint___repr__(self)
11619 
11620  @staticmethod
11621  def get_from(o):
11622  return _object_cast_to_QuadConstraint(o)
11623 
11624 
11625  def _get_as_binary(self):
11626  r"""_get_as_binary(QuadConstraint self) -> PyObject *"""
11627  return _IMP_core.QuadConstraint__get_as_binary(self)
11628 
11629  def _set_from_binary(self, p):
11630  r"""_set_from_binary(QuadConstraint self, PyObject * p)"""
11631  return _IMP_core.QuadConstraint__set_from_binary(self, p)
11632 
11633  def __getstate__(self):
11634  p = self._get_as_binary()
11635  if len(self.__dict__) > 1:
11636  d = self.__dict__.copy()
11637  del d['this']
11638  p = (d, p)
11639  return p
11640 
11641  def __setstate__(self, p):
11642  if not hasattr(self, 'this'):
11643  self.__init__()
11644  if isinstance(p, tuple):
11645  d, p = p
11646  self.__dict__.update(d)
11647  return self._set_from_binary(p)
11648 
11649 
11650 # Register QuadConstraint in _IMP_core:
11651 _IMP_core.QuadConstraint_swigregister(QuadConstraint)
11652 class ConstantSingletonPredicate(IMP.SingletonPredicate):
11653  r"""Proxy of C++ IMP::core::ConstantSingletonPredicate class."""
11654 
11655  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11656 
11657  def __init__(self, *args):
11658  r"""
11659  __init__(ConstantSingletonPredicate self, int v, std::string name="ConstSingletonPredicate%1%") -> ConstantSingletonPredicate
11660  __init__(ConstantSingletonPredicate self) -> ConstantSingletonPredicate
11661  """
11662  _IMP_core.ConstantSingletonPredicate_swiginit(self, _IMP_core.new_ConstantSingletonPredicate(*args))
11663 
11664  def do_get_inputs(self, arg2, arg3):
11665  r"""do_get_inputs(ConstantSingletonPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
11666  return _IMP_core.ConstantSingletonPredicate_do_get_inputs(self, arg2, arg3)
11667 
11668  def get_value(self, *args):
11669  r"""
11670  get_value(ConstantSingletonPredicate self, Particle a) -> int
11671  get_value(ConstantSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
11672  """
11673  return _IMP_core.ConstantSingletonPredicate_get_value(self, *args)
11674 
11675  def get_value_index(self, *args):
11676  r"""
11677  get_value_index(ConstantSingletonPredicate self, Model arg2, ParticleIndex arg3) -> int
11678  get_value_index(ConstantSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
11679  """
11680  return _IMP_core.ConstantSingletonPredicate_get_value_index(self, *args)
11681 
11682  def get_version_info(self):
11683  r"""get_version_info(ConstantSingletonPredicate self) -> VersionInfo"""
11684  return _IMP_core.ConstantSingletonPredicate_get_version_info(self)
11685  __swig_destroy__ = _IMP_core.delete_ConstantSingletonPredicate
11686 
11687  def __str__(self):
11688  r"""__str__(ConstantSingletonPredicate self) -> std::string"""
11689  return _IMP_core.ConstantSingletonPredicate___str__(self)
11690 
11691  def __repr__(self):
11692  r"""__repr__(ConstantSingletonPredicate self) -> std::string"""
11693  return _IMP_core.ConstantSingletonPredicate___repr__(self)
11694 
11695  @staticmethod
11696  def get_from(o):
11697  return _object_cast_to_ConstantSingletonPredicate(o)
11698 
11699 
11700  def _get_as_binary(self):
11701  r"""_get_as_binary(ConstantSingletonPredicate self) -> PyObject *"""
11702  return _IMP_core.ConstantSingletonPredicate__get_as_binary(self)
11703 
11704  def _set_from_binary(self, p):
11705  r"""_set_from_binary(ConstantSingletonPredicate self, PyObject * p)"""
11706  return _IMP_core.ConstantSingletonPredicate__set_from_binary(self, p)
11707 
11708  def __getstate__(self):
11709  p = self._get_as_binary()
11710  if len(self.__dict__) > 1:
11711  d = self.__dict__.copy()
11712  del d['this']
11713  p = (d, p)
11714  return p
11715 
11716  def __setstate__(self, p):
11717  if not hasattr(self, 'this'):
11718  self.__init__()
11719  if isinstance(p, tuple):
11720  d, p = p
11721  self.__dict__.update(d)
11722  return self._set_from_binary(p)
11723 
11724 
11725 # Register ConstantSingletonPredicate in _IMP_core:
11726 _IMP_core.ConstantSingletonPredicate_swigregister(ConstantSingletonPredicate)
11727 class UnorderedTypeSingletonPredicate(IMP.SingletonPredicate):
11728  r"""Proxy of C++ IMP::core::UnorderedTypeSingletonPredicate class."""
11729 
11730  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11731 
11732  def __init__(self, *args):
11733  r"""__init__(UnorderedTypeSingletonPredicate self, std::string name="UnorderedTypeSingletonPredicate%1%") -> UnorderedTypeSingletonPredicate"""
11734  _IMP_core.UnorderedTypeSingletonPredicate_swiginit(self, _IMP_core.new_UnorderedTypeSingletonPredicate(*args))
11735 
11736  def do_get_inputs(self, m, pis):
11737  r"""do_get_inputs(UnorderedTypeSingletonPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
11738  return _IMP_core.UnorderedTypeSingletonPredicate_do_get_inputs(self, m, pis)
11739 
11740  def get_value(self, *args):
11741  r"""
11742  get_value(UnorderedTypeSingletonPredicate self, Particle a) -> int
11743  get_value(UnorderedTypeSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
11744  """
11745  return _IMP_core.UnorderedTypeSingletonPredicate_get_value(self, *args)
11746 
11747  def get_value_index(self, *args):
11748  r"""
11749  get_value_index(UnorderedTypeSingletonPredicate self, Model m, ParticleIndex pi) -> int
11750  get_value_index(UnorderedTypeSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
11751  """
11752  return _IMP_core.UnorderedTypeSingletonPredicate_get_value_index(self, *args)
11753 
11754  def get_version_info(self):
11755  r"""get_version_info(UnorderedTypeSingletonPredicate self) -> VersionInfo"""
11756  return _IMP_core.UnorderedTypeSingletonPredicate_get_version_info(self)
11757  __swig_destroy__ = _IMP_core.delete_UnorderedTypeSingletonPredicate
11758 
11759  def __str__(self):
11760  r"""__str__(UnorderedTypeSingletonPredicate self) -> std::string"""
11761  return _IMP_core.UnorderedTypeSingletonPredicate___str__(self)
11762 
11763  def __repr__(self):
11764  r"""__repr__(UnorderedTypeSingletonPredicate self) -> std::string"""
11765  return _IMP_core.UnorderedTypeSingletonPredicate___repr__(self)
11766 
11767  @staticmethod
11768  def get_from(o):
11769  return _object_cast_to_UnorderedTypeSingletonPredicate(o)
11770 
11771 
11772  def _get_as_binary(self):
11773  r"""_get_as_binary(UnorderedTypeSingletonPredicate self) -> PyObject *"""
11774  return _IMP_core.UnorderedTypeSingletonPredicate__get_as_binary(self)
11775 
11776  def _set_from_binary(self, p):
11777  r"""_set_from_binary(UnorderedTypeSingletonPredicate self, PyObject * p)"""
11778  return _IMP_core.UnorderedTypeSingletonPredicate__set_from_binary(self, p)
11779 
11780  def __getstate__(self):
11781  p = self._get_as_binary()
11782  if len(self.__dict__) > 1:
11783  d = self.__dict__.copy()
11784  del d['this']
11785  p = (d, p)
11786  return p
11787 
11788  def __setstate__(self, p):
11789  if not hasattr(self, 'this'):
11790  self.__init__()
11791  if isinstance(p, tuple):
11792  d, p = p
11793  self.__dict__.update(d)
11794  return self._set_from_binary(p)
11795 
11796 
11797 # Register UnorderedTypeSingletonPredicate in _IMP_core:
11798 _IMP_core.UnorderedTypeSingletonPredicate_swigregister(UnorderedTypeSingletonPredicate)
11799 class OrderedTypeSingletonPredicate(IMP.SingletonPredicate):
11800  r"""Proxy of C++ IMP::core::OrderedTypeSingletonPredicate class."""
11801 
11802  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11803 
11804  def __init__(self, *args):
11805  r"""__init__(OrderedTypeSingletonPredicate self, std::string name="OrderedTypeSingletonPredicate%1%") -> OrderedTypeSingletonPredicate"""
11806  _IMP_core.OrderedTypeSingletonPredicate_swiginit(self, _IMP_core.new_OrderedTypeSingletonPredicate(*args))
11807 
11808  def do_get_inputs(self, m, pis):
11809  r"""do_get_inputs(OrderedTypeSingletonPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
11810  return _IMP_core.OrderedTypeSingletonPredicate_do_get_inputs(self, m, pis)
11811 
11812  def get_value(self, *args):
11813  r"""
11814  get_value(OrderedTypeSingletonPredicate self, IMP::core::ParticleTypes const & types) -> int
11815  get_value(OrderedTypeSingletonPredicate self, Particle a) -> int
11816  get_value(OrderedTypeSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
11817  """
11818  return _IMP_core.OrderedTypeSingletonPredicate_get_value(self, *args)
11819 
11820  def get_value_index(self, *args):
11821  r"""
11822  get_value_index(OrderedTypeSingletonPredicate self, Model m, ParticleIndex pi) -> int
11823  get_value_index(OrderedTypeSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
11824  """
11825  return _IMP_core.OrderedTypeSingletonPredicate_get_value_index(self, *args)
11826 
11827  def get_version_info(self):
11828  r"""get_version_info(OrderedTypeSingletonPredicate self) -> VersionInfo"""
11829  return _IMP_core.OrderedTypeSingletonPredicate_get_version_info(self)
11830  __swig_destroy__ = _IMP_core.delete_OrderedTypeSingletonPredicate
11831 
11832  def __str__(self):
11833  r"""__str__(OrderedTypeSingletonPredicate self) -> std::string"""
11834  return _IMP_core.OrderedTypeSingletonPredicate___str__(self)
11835 
11836  def __repr__(self):
11837  r"""__repr__(OrderedTypeSingletonPredicate self) -> std::string"""
11838  return _IMP_core.OrderedTypeSingletonPredicate___repr__(self)
11839 
11840  @staticmethod
11841  def get_from(o):
11842  return _object_cast_to_OrderedTypeSingletonPredicate(o)
11843 
11844 
11845 # Register OrderedTypeSingletonPredicate in _IMP_core:
11846 _IMP_core.OrderedTypeSingletonPredicate_swigregister(OrderedTypeSingletonPredicate)
11847 class AllSameSingletonPredicate(IMP.SingletonPredicate):
11848  r"""Proxy of C++ IMP::core::AllSameSingletonPredicate class."""
11849 
11850  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11851 
11852  def __init__(self, *args):
11853  r"""__init__(AllSameSingletonPredicate self, std::string name="AllSameSingletonPredicate%1%") -> AllSameSingletonPredicate"""
11854  _IMP_core.AllSameSingletonPredicate_swiginit(self, _IMP_core.new_AllSameSingletonPredicate(*args))
11855 
11856  def do_get_inputs(self, arg2, arg3):
11857  r"""do_get_inputs(AllSameSingletonPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
11858  return _IMP_core.AllSameSingletonPredicate_do_get_inputs(self, arg2, arg3)
11859 
11860  def get_value(self, *args):
11861  r"""
11862  get_value(AllSameSingletonPredicate self, Particle a) -> int
11863  get_value(AllSameSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
11864  """
11865  return _IMP_core.AllSameSingletonPredicate_get_value(self, *args)
11866 
11867  def get_value_index(self, *args):
11868  r"""
11869  get_value_index(AllSameSingletonPredicate self, Model m, ParticleIndex pi) -> int
11870  get_value_index(AllSameSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
11871  """
11872  return _IMP_core.AllSameSingletonPredicate_get_value_index(self, *args)
11873 
11874  def get_version_info(self):
11875  r"""get_version_info(AllSameSingletonPredicate self) -> VersionInfo"""
11876  return _IMP_core.AllSameSingletonPredicate_get_version_info(self)
11877  __swig_destroy__ = _IMP_core.delete_AllSameSingletonPredicate
11878 
11879  def __str__(self):
11880  r"""__str__(AllSameSingletonPredicate self) -> std::string"""
11881  return _IMP_core.AllSameSingletonPredicate___str__(self)
11882 
11883  def __repr__(self):
11884  r"""__repr__(AllSameSingletonPredicate self) -> std::string"""
11885  return _IMP_core.AllSameSingletonPredicate___repr__(self)
11886 
11887  @staticmethod
11888  def get_from(o):
11889  return _object_cast_to_AllSameSingletonPredicate(o)
11890 
11891 
11892  def _get_as_binary(self):
11893  r"""_get_as_binary(AllSameSingletonPredicate self) -> PyObject *"""
11894  return _IMP_core.AllSameSingletonPredicate__get_as_binary(self)
11895 
11896  def _set_from_binary(self, p):
11897  r"""_set_from_binary(AllSameSingletonPredicate self, PyObject * p)"""
11898  return _IMP_core.AllSameSingletonPredicate__set_from_binary(self, p)
11899 
11900  def __getstate__(self):
11901  p = self._get_as_binary()
11902  if len(self.__dict__) > 1:
11903  d = self.__dict__.copy()
11904  del d['this']
11905  p = (d, p)
11906  return p
11907 
11908  def __setstate__(self, p):
11909  if not hasattr(self, 'this'):
11910  self.__init__()
11911  if isinstance(p, tuple):
11912  d, p = p
11913  self.__dict__.update(d)
11914  return self._set_from_binary(p)
11915 
11916 
11917 # Register AllSameSingletonPredicate in _IMP_core:
11918 _IMP_core.AllSameSingletonPredicate_swigregister(AllSameSingletonPredicate)
11919 class CoinFlipSingletonPredicate(IMP.SingletonPredicate):
11920  r"""Proxy of C++ IMP::core::CoinFlipSingletonPredicate class."""
11921 
11922  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11923 
11924  def __init__(self, *args):
11925  r"""__init__(CoinFlipSingletonPredicate self, double p, std::string name="CoinFlipSingletonPredicate%1%") -> CoinFlipSingletonPredicate"""
11926  _IMP_core.CoinFlipSingletonPredicate_swiginit(self, _IMP_core.new_CoinFlipSingletonPredicate(*args))
11927 
11928  def do_get_inputs(self, arg2, arg3):
11929  r"""do_get_inputs(CoinFlipSingletonPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
11930  return _IMP_core.CoinFlipSingletonPredicate_do_get_inputs(self, arg2, arg3)
11931 
11932  def get_value(self, *args):
11933  r"""
11934  get_value(CoinFlipSingletonPredicate self, Particle a) -> int
11935  get_value(CoinFlipSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
11936  """
11937  return _IMP_core.CoinFlipSingletonPredicate_get_value(self, *args)
11938 
11939  def get_value_index(self, *args):
11940  r"""
11941  get_value_index(CoinFlipSingletonPredicate self, Model arg2, ParticleIndex arg3) -> int
11942  get_value_index(CoinFlipSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
11943  """
11944  return _IMP_core.CoinFlipSingletonPredicate_get_value_index(self, *args)
11945 
11946  def get_version_info(self):
11947  r"""get_version_info(CoinFlipSingletonPredicate self) -> VersionInfo"""
11948  return _IMP_core.CoinFlipSingletonPredicate_get_version_info(self)
11949  __swig_destroy__ = _IMP_core.delete_CoinFlipSingletonPredicate
11950 
11951  def __str__(self):
11952  r"""__str__(CoinFlipSingletonPredicate self) -> std::string"""
11953  return _IMP_core.CoinFlipSingletonPredicate___str__(self)
11954 
11955  def __repr__(self):
11956  r"""__repr__(CoinFlipSingletonPredicate self) -> std::string"""
11957  return _IMP_core.CoinFlipSingletonPredicate___repr__(self)
11958 
11959  @staticmethod
11960  def get_from(o):
11961  return _object_cast_to_CoinFlipSingletonPredicate(o)
11962 
11963 
11964 # Register CoinFlipSingletonPredicate in _IMP_core:
11965 _IMP_core.CoinFlipSingletonPredicate_swigregister(CoinFlipSingletonPredicate)
11966 class ConstantPairPredicate(IMP.PairPredicate):
11967  r"""Proxy of C++ IMP::core::ConstantPairPredicate class."""
11968 
11969  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11970 
11971  def __init__(self, *args):
11972  r"""
11973  __init__(ConstantPairPredicate self, int v, std::string name="ConstPairPredicate%1%") -> ConstantPairPredicate
11974  __init__(ConstantPairPredicate self) -> ConstantPairPredicate
11975  """
11976  _IMP_core.ConstantPairPredicate_swiginit(self, _IMP_core.new_ConstantPairPredicate(*args))
11977 
11978  def do_get_inputs(self, arg2, arg3):
11979  r"""do_get_inputs(ConstantPairPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
11980  return _IMP_core.ConstantPairPredicate_do_get_inputs(self, arg2, arg3)
11981 
11982  def get_value(self, *args):
11983  r"""
11984  get_value(ConstantPairPredicate self, IMP::ParticlePair const & a) -> int
11985  get_value(ConstantPairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
11986  """
11987  return _IMP_core.ConstantPairPredicate_get_value(self, *args)
11988 
11989  def get_value_index(self, *args):
11990  r"""
11991  get_value_index(ConstantPairPredicate self, Model arg2, IMP::ParticleIndexPair const & arg3) -> int
11992  get_value_index(ConstantPairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
11993  """
11994  return _IMP_core.ConstantPairPredicate_get_value_index(self, *args)
11995 
11996  def get_version_info(self):
11997  r"""get_version_info(ConstantPairPredicate self) -> VersionInfo"""
11998  return _IMP_core.ConstantPairPredicate_get_version_info(self)
11999  __swig_destroy__ = _IMP_core.delete_ConstantPairPredicate
12000 
12001  def __str__(self):
12002  r"""__str__(ConstantPairPredicate self) -> std::string"""
12003  return _IMP_core.ConstantPairPredicate___str__(self)
12004 
12005  def __repr__(self):
12006  r"""__repr__(ConstantPairPredicate self) -> std::string"""
12007  return _IMP_core.ConstantPairPredicate___repr__(self)
12008 
12009  @staticmethod
12010  def get_from(o):
12011  return _object_cast_to_ConstantPairPredicate(o)
12012 
12013 
12014  def _get_as_binary(self):
12015  r"""_get_as_binary(ConstantPairPredicate self) -> PyObject *"""
12016  return _IMP_core.ConstantPairPredicate__get_as_binary(self)
12017 
12018  def _set_from_binary(self, p):
12019  r"""_set_from_binary(ConstantPairPredicate self, PyObject * p)"""
12020  return _IMP_core.ConstantPairPredicate__set_from_binary(self, p)
12021 
12022  def __getstate__(self):
12023  p = self._get_as_binary()
12024  if len(self.__dict__) > 1:
12025  d = self.__dict__.copy()
12026  del d['this']
12027  p = (d, p)
12028  return p
12029 
12030  def __setstate__(self, p):
12031  if not hasattr(self, 'this'):
12032  self.__init__()
12033  if isinstance(p, tuple):
12034  d, p = p
12035  self.__dict__.update(d)
12036  return self._set_from_binary(p)
12037 
12038 
12039 # Register ConstantPairPredicate in _IMP_core:
12040 _IMP_core.ConstantPairPredicate_swigregister(ConstantPairPredicate)
12041 class UnorderedTypePairPredicate(IMP.PairPredicate):
12042  r"""Proxy of C++ IMP::core::UnorderedTypePairPredicate class."""
12043 
12044  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12045 
12046  def __init__(self, *args):
12047  r"""__init__(UnorderedTypePairPredicate self, std::string name="UnorderedTypePairPredicate%1%") -> UnorderedTypePairPredicate"""
12048  _IMP_core.UnorderedTypePairPredicate_swiginit(self, _IMP_core.new_UnorderedTypePairPredicate(*args))
12049 
12050  def do_get_inputs(self, m, pis):
12051  r"""do_get_inputs(UnorderedTypePairPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
12052  return _IMP_core.UnorderedTypePairPredicate_do_get_inputs(self, m, pis)
12053 
12054  def get_value(self, *args):
12055  r"""
12056  get_value(UnorderedTypePairPredicate self, IMP::ParticlePair const & a) -> int
12057  get_value(UnorderedTypePairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
12058  """
12059  return _IMP_core.UnorderedTypePairPredicate_get_value(self, *args)
12060 
12061  def get_value_index(self, *args):
12062  r"""
12063  get_value_index(UnorderedTypePairPredicate self, Model m, IMP::ParticleIndexPair const & pi) -> int
12064  get_value_index(UnorderedTypePairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
12065  """
12066  return _IMP_core.UnorderedTypePairPredicate_get_value_index(self, *args)
12067 
12068  def get_version_info(self):
12069  r"""get_version_info(UnorderedTypePairPredicate self) -> VersionInfo"""
12070  return _IMP_core.UnorderedTypePairPredicate_get_version_info(self)
12071  __swig_destroy__ = _IMP_core.delete_UnorderedTypePairPredicate
12072 
12073  def __str__(self):
12074  r"""__str__(UnorderedTypePairPredicate self) -> std::string"""
12075  return _IMP_core.UnorderedTypePairPredicate___str__(self)
12076 
12077  def __repr__(self):
12078  r"""__repr__(UnorderedTypePairPredicate self) -> std::string"""
12079  return _IMP_core.UnorderedTypePairPredicate___repr__(self)
12080 
12081  @staticmethod
12082  def get_from(o):
12083  return _object_cast_to_UnorderedTypePairPredicate(o)
12084 
12085 
12086  def _get_as_binary(self):
12087  r"""_get_as_binary(UnorderedTypePairPredicate self) -> PyObject *"""
12088  return _IMP_core.UnorderedTypePairPredicate__get_as_binary(self)
12089 
12090  def _set_from_binary(self, p):
12091  r"""_set_from_binary(UnorderedTypePairPredicate self, PyObject * p)"""
12092  return _IMP_core.UnorderedTypePairPredicate__set_from_binary(self, p)
12093 
12094  def __getstate__(self):
12095  p = self._get_as_binary()
12096  if len(self.__dict__) > 1:
12097  d = self.__dict__.copy()
12098  del d['this']
12099  p = (d, p)
12100  return p
12101 
12102  def __setstate__(self, p):
12103  if not hasattr(self, 'this'):
12104  self.__init__()
12105  if isinstance(p, tuple):
12106  d, p = p
12107  self.__dict__.update(d)
12108  return self._set_from_binary(p)
12109 
12110 
12111 # Register UnorderedTypePairPredicate in _IMP_core:
12112 _IMP_core.UnorderedTypePairPredicate_swigregister(UnorderedTypePairPredicate)
12113 class OrderedTypePairPredicate(IMP.PairPredicate):
12114  r"""Proxy of C++ IMP::core::OrderedTypePairPredicate class."""
12115 
12116  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12117 
12118  def __init__(self, *args):
12119  r"""__init__(OrderedTypePairPredicate self, std::string name="OrderedTypePairPredicate%1%") -> OrderedTypePairPredicate"""
12120  _IMP_core.OrderedTypePairPredicate_swiginit(self, _IMP_core.new_OrderedTypePairPredicate(*args))
12121 
12122  def do_get_inputs(self, m, pis):
12123  r"""do_get_inputs(OrderedTypePairPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
12124  return _IMP_core.OrderedTypePairPredicate_do_get_inputs(self, m, pis)
12125 
12126  def get_value(self, *args):
12127  r"""
12128  get_value(OrderedTypePairPredicate self, IMP::core::ParticleTypes const & types) -> int
12129  get_value(OrderedTypePairPredicate self, IMP::ParticlePair const & a) -> int
12130  get_value(OrderedTypePairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
12131  """
12132  return _IMP_core.OrderedTypePairPredicate_get_value(self, *args)
12133 
12134  def get_value_index(self, *args):
12135  r"""
12136  get_value_index(OrderedTypePairPredicate self, Model m, IMP::ParticleIndexPair const & pi) -> int
12137  get_value_index(OrderedTypePairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
12138  """
12139  return _IMP_core.OrderedTypePairPredicate_get_value_index(self, *args)
12140 
12141  def get_version_info(self):
12142  r"""get_version_info(OrderedTypePairPredicate self) -> VersionInfo"""
12143  return _IMP_core.OrderedTypePairPredicate_get_version_info(self)
12144  __swig_destroy__ = _IMP_core.delete_OrderedTypePairPredicate
12145 
12146  def __str__(self):
12147  r"""__str__(OrderedTypePairPredicate self) -> std::string"""
12148  return _IMP_core.OrderedTypePairPredicate___str__(self)
12149 
12150  def __repr__(self):
12151  r"""__repr__(OrderedTypePairPredicate self) -> std::string"""
12152  return _IMP_core.OrderedTypePairPredicate___repr__(self)
12153 
12154  @staticmethod
12155  def get_from(o):
12156  return _object_cast_to_OrderedTypePairPredicate(o)
12157 
12158 
12159 # Register OrderedTypePairPredicate in _IMP_core:
12160 _IMP_core.OrderedTypePairPredicate_swigregister(OrderedTypePairPredicate)
12161 class AllSamePairPredicate(IMP.PairPredicate):
12162  r"""Proxy of C++ IMP::core::AllSamePairPredicate class."""
12163 
12164  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12165 
12166  def __init__(self, *args):
12167  r"""__init__(AllSamePairPredicate self, std::string name="AllSamePairPredicate%1%") -> AllSamePairPredicate"""
12168  _IMP_core.AllSamePairPredicate_swiginit(self, _IMP_core.new_AllSamePairPredicate(*args))
12169 
12170  def do_get_inputs(self, arg2, arg3):
12171  r"""do_get_inputs(AllSamePairPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12172  return _IMP_core.AllSamePairPredicate_do_get_inputs(self, arg2, arg3)
12173 
12174  def get_value(self, *args):
12175  r"""
12176  get_value(AllSamePairPredicate self, IMP::ParticlePair const & a) -> int
12177  get_value(AllSamePairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
12178  """
12179  return _IMP_core.AllSamePairPredicate_get_value(self, *args)
12180 
12181  def get_value_index(self, *args):
12182  r"""
12183  get_value_index(AllSamePairPredicate self, Model m, IMP::ParticleIndexPair const & pi) -> int
12184  get_value_index(AllSamePairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
12185  """
12186  return _IMP_core.AllSamePairPredicate_get_value_index(self, *args)
12187 
12188  def get_version_info(self):
12189  r"""get_version_info(AllSamePairPredicate self) -> VersionInfo"""
12190  return _IMP_core.AllSamePairPredicate_get_version_info(self)
12191  __swig_destroy__ = _IMP_core.delete_AllSamePairPredicate
12192 
12193  def __str__(self):
12194  r"""__str__(AllSamePairPredicate self) -> std::string"""
12195  return _IMP_core.AllSamePairPredicate___str__(self)
12196 
12197  def __repr__(self):
12198  r"""__repr__(AllSamePairPredicate self) -> std::string"""
12199  return _IMP_core.AllSamePairPredicate___repr__(self)
12200 
12201  @staticmethod
12202  def get_from(o):
12203  return _object_cast_to_AllSamePairPredicate(o)
12204 
12205 
12206  def _get_as_binary(self):
12207  r"""_get_as_binary(AllSamePairPredicate self) -> PyObject *"""
12208  return _IMP_core.AllSamePairPredicate__get_as_binary(self)
12209 
12210  def _set_from_binary(self, p):
12211  r"""_set_from_binary(AllSamePairPredicate self, PyObject * p)"""
12212  return _IMP_core.AllSamePairPredicate__set_from_binary(self, p)
12213 
12214  def __getstate__(self):
12215  p = self._get_as_binary()
12216  if len(self.__dict__) > 1:
12217  d = self.__dict__.copy()
12218  del d['this']
12219  p = (d, p)
12220  return p
12221 
12222  def __setstate__(self, p):
12223  if not hasattr(self, 'this'):
12224  self.__init__()
12225  if isinstance(p, tuple):
12226  d, p = p
12227  self.__dict__.update(d)
12228  return self._set_from_binary(p)
12229 
12230 
12231 # Register AllSamePairPredicate in _IMP_core:
12232 _IMP_core.AllSamePairPredicate_swigregister(AllSamePairPredicate)
12233 class CoinFlipPairPredicate(IMP.PairPredicate):
12234  r"""Proxy of C++ IMP::core::CoinFlipPairPredicate class."""
12235 
12236  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12237 
12238  def __init__(self, *args):
12239  r"""__init__(CoinFlipPairPredicate self, double p, std::string name="CoinFlipPairPredicate%1%") -> CoinFlipPairPredicate"""
12240  _IMP_core.CoinFlipPairPredicate_swiginit(self, _IMP_core.new_CoinFlipPairPredicate(*args))
12241 
12242  def do_get_inputs(self, arg2, arg3):
12243  r"""do_get_inputs(CoinFlipPairPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12244  return _IMP_core.CoinFlipPairPredicate_do_get_inputs(self, arg2, arg3)
12245 
12246  def get_value(self, *args):
12247  r"""
12248  get_value(CoinFlipPairPredicate self, IMP::ParticlePair const & a) -> int
12249  get_value(CoinFlipPairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
12250  """
12251  return _IMP_core.CoinFlipPairPredicate_get_value(self, *args)
12252 
12253  def get_value_index(self, *args):
12254  r"""
12255  get_value_index(CoinFlipPairPredicate self, Model arg2, IMP::ParticleIndexPair const & arg3) -> int
12256  get_value_index(CoinFlipPairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
12257  """
12258  return _IMP_core.CoinFlipPairPredicate_get_value_index(self, *args)
12259 
12260  def get_version_info(self):
12261  r"""get_version_info(CoinFlipPairPredicate self) -> VersionInfo"""
12262  return _IMP_core.CoinFlipPairPredicate_get_version_info(self)
12263  __swig_destroy__ = _IMP_core.delete_CoinFlipPairPredicate
12264 
12265  def __str__(self):
12266  r"""__str__(CoinFlipPairPredicate self) -> std::string"""
12267  return _IMP_core.CoinFlipPairPredicate___str__(self)
12268 
12269  def __repr__(self):
12270  r"""__repr__(CoinFlipPairPredicate self) -> std::string"""
12271  return _IMP_core.CoinFlipPairPredicate___repr__(self)
12272 
12273  @staticmethod
12274  def get_from(o):
12275  return _object_cast_to_CoinFlipPairPredicate(o)
12276 
12277 
12278 # Register CoinFlipPairPredicate in _IMP_core:
12279 _IMP_core.CoinFlipPairPredicate_swigregister(CoinFlipPairPredicate)
12280 class ConstantTripletPredicate(IMP.TripletPredicate):
12281  r"""Proxy of C++ IMP::core::ConstantTripletPredicate class."""
12282 
12283  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12284 
12285  def __init__(self, *args):
12286  r"""
12287  __init__(ConstantTripletPredicate self, int v, std::string name="ConstTripletPredicate%1%") -> ConstantTripletPredicate
12288  __init__(ConstantTripletPredicate self) -> ConstantTripletPredicate
12289  """
12290  _IMP_core.ConstantTripletPredicate_swiginit(self, _IMP_core.new_ConstantTripletPredicate(*args))
12291 
12292  def do_get_inputs(self, arg2, arg3):
12293  r"""do_get_inputs(ConstantTripletPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12294  return _IMP_core.ConstantTripletPredicate_do_get_inputs(self, arg2, arg3)
12295 
12296  def get_value(self, *args):
12297  r"""
12298  get_value(ConstantTripletPredicate self, IMP::ParticleTriplet const & a) -> int
12299  get_value(ConstantTripletPredicate self, IMP::ParticleTripletsTemp const & o) -> IMP::Ints
12300  """
12301  return _IMP_core.ConstantTripletPredicate_get_value(self, *args)
12302 
12303  def get_value_index(self, *args):
12304  r"""
12305  get_value_index(ConstantTripletPredicate self, Model arg2, IMP::ParticleIndexTriplet const & arg3) -> int
12306  get_value_index(ConstantTripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
12307  """
12308  return _IMP_core.ConstantTripletPredicate_get_value_index(self, *args)
12309 
12310  def get_version_info(self):
12311  r"""get_version_info(ConstantTripletPredicate self) -> VersionInfo"""
12312  return _IMP_core.ConstantTripletPredicate_get_version_info(self)
12313  __swig_destroy__ = _IMP_core.delete_ConstantTripletPredicate
12314 
12315  def __str__(self):
12316  r"""__str__(ConstantTripletPredicate self) -> std::string"""
12317  return _IMP_core.ConstantTripletPredicate___str__(self)
12318 
12319  def __repr__(self):
12320  r"""__repr__(ConstantTripletPredicate self) -> std::string"""
12321  return _IMP_core.ConstantTripletPredicate___repr__(self)
12322 
12323  @staticmethod
12324  def get_from(o):
12325  return _object_cast_to_ConstantTripletPredicate(o)
12326 
12327 
12328  def _get_as_binary(self):
12329  r"""_get_as_binary(ConstantTripletPredicate self) -> PyObject *"""
12330  return _IMP_core.ConstantTripletPredicate__get_as_binary(self)
12331 
12332  def _set_from_binary(self, p):
12333  r"""_set_from_binary(ConstantTripletPredicate self, PyObject * p)"""
12334  return _IMP_core.ConstantTripletPredicate__set_from_binary(self, p)
12335 
12336  def __getstate__(self):
12337  p = self._get_as_binary()
12338  if len(self.__dict__) > 1:
12339  d = self.__dict__.copy()
12340  del d['this']
12341  p = (d, p)
12342  return p
12343 
12344  def __setstate__(self, p):
12345  if not hasattr(self, 'this'):
12346  self.__init__()
12347  if isinstance(p, tuple):
12348  d, p = p
12349  self.__dict__.update(d)
12350  return self._set_from_binary(p)
12351 
12352 
12353 # Register ConstantTripletPredicate in _IMP_core:
12354 _IMP_core.ConstantTripletPredicate_swigregister(ConstantTripletPredicate)
12355 class UnorderedTypeTripletPredicate(IMP.TripletPredicate):
12356  r"""Proxy of C++ IMP::core::UnorderedTypeTripletPredicate class."""
12357 
12358  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12359 
12360  def __init__(self, *args):
12361  r"""__init__(UnorderedTypeTripletPredicate self, std::string name="UnorderedTypeTripletPredicate%1%") -> UnorderedTypeTripletPredicate"""
12362  _IMP_core.UnorderedTypeTripletPredicate_swiginit(self, _IMP_core.new_UnorderedTypeTripletPredicate(*args))
12363 
12364  def do_get_inputs(self, m, pis):
12365  r"""do_get_inputs(UnorderedTypeTripletPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
12366  return _IMP_core.UnorderedTypeTripletPredicate_do_get_inputs(self, m, pis)
12367 
12368  def get_value(self, *args):
12369  r"""
12370  get_value(UnorderedTypeTripletPredicate self, IMP::ParticleTriplet const & a) -> int
12371  get_value(UnorderedTypeTripletPredicate self, IMP::ParticleTripletsTemp const & o) -> IMP::Ints
12372  """
12373  return _IMP_core.UnorderedTypeTripletPredicate_get_value(self, *args)
12374 
12375  def get_value_index(self, *args):
12376  r"""
12377  get_value_index(UnorderedTypeTripletPredicate self, Model m, IMP::ParticleIndexTriplet const & pi) -> int
12378  get_value_index(UnorderedTypeTripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
12379  """
12380  return _IMP_core.UnorderedTypeTripletPredicate_get_value_index(self, *args)
12381 
12382  def get_version_info(self):
12383  r"""get_version_info(UnorderedTypeTripletPredicate self) -> VersionInfo"""
12384  return _IMP_core.UnorderedTypeTripletPredicate_get_version_info(self)
12385  __swig_destroy__ = _IMP_core.delete_UnorderedTypeTripletPredicate
12386 
12387  def __str__(self):
12388  r"""__str__(UnorderedTypeTripletPredicate self) -> std::string"""
12389  return _IMP_core.UnorderedTypeTripletPredicate___str__(self)
12390 
12391  def __repr__(self):
12392  r"""__repr__(UnorderedTypeTripletPredicate self) -> std::string"""
12393  return _IMP_core.UnorderedTypeTripletPredicate___repr__(self)
12394 
12395  @staticmethod
12396  def get_from(o):
12397  return _object_cast_to_UnorderedTypeTripletPredicate(o)
12398 
12399 
12400  def _get_as_binary(self):
12401  r"""_get_as_binary(UnorderedTypeTripletPredicate self) -> PyObject *"""
12402  return _IMP_core.UnorderedTypeTripletPredicate__get_as_binary(self)
12403 
12404  def _set_from_binary(self, p):
12405  r"""_set_from_binary(UnorderedTypeTripletPredicate self, PyObject * p)"""
12406  return _IMP_core.UnorderedTypeTripletPredicate__set_from_binary(self, p)
12407 
12408  def __getstate__(self):
12409  p = self._get_as_binary()
12410  if len(self.__dict__) > 1:
12411  d = self.__dict__.copy()
12412  del d['this']
12413  p = (d, p)
12414  return p
12415 
12416  def __setstate__(self, p):
12417  if not hasattr(self, 'this'):
12418  self.__init__()
12419  if isinstance(p, tuple):
12420  d, p = p
12421  self.__dict__.update(d)
12422  return self._set_from_binary(p)
12423 
12424 
12425 # Register UnorderedTypeTripletPredicate in _IMP_core:
12426 _IMP_core.UnorderedTypeTripletPredicate_swigregister(UnorderedTypeTripletPredicate)
12427 class OrderedTypeTripletPredicate(IMP.TripletPredicate):
12428  r"""Proxy of C++ IMP::core::OrderedTypeTripletPredicate class."""
12429 
12430  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12431 
12432  def __init__(self, *args):
12433  r"""__init__(OrderedTypeTripletPredicate self, std::string name="OrderedTypeTripletPredicate%1%") -> OrderedTypeTripletPredicate"""
12434  _IMP_core.OrderedTypeTripletPredicate_swiginit(self, _IMP_core.new_OrderedTypeTripletPredicate(*args))
12435 
12436  def do_get_inputs(self, m, pis):
12437  r"""do_get_inputs(OrderedTypeTripletPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
12438  return _IMP_core.OrderedTypeTripletPredicate_do_get_inputs(self, m, pis)
12439 
12440  def get_value(self, *args):
12441  r"""
12442  get_value(OrderedTypeTripletPredicate self, IMP::core::ParticleTypes const & types) -> int
12443  get_value(OrderedTypeTripletPredicate self, IMP::ParticleTriplet const & a) -> int
12444  get_value(OrderedTypeTripletPredicate self, IMP::ParticleTripletsTemp const & o) -> IMP::Ints
12445  """
12446  return _IMP_core.OrderedTypeTripletPredicate_get_value(self, *args)
12447 
12448  def get_value_index(self, *args):
12449  r"""
12450  get_value_index(OrderedTypeTripletPredicate self, Model m, IMP::ParticleIndexTriplet const & pi) -> int
12451  get_value_index(OrderedTypeTripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
12452  """
12453  return _IMP_core.OrderedTypeTripletPredicate_get_value_index(self, *args)
12454 
12455  def get_version_info(self):
12456  r"""get_version_info(OrderedTypeTripletPredicate self) -> VersionInfo"""
12457  return _IMP_core.OrderedTypeTripletPredicate_get_version_info(self)
12458  __swig_destroy__ = _IMP_core.delete_OrderedTypeTripletPredicate
12459 
12460  def __str__(self):
12461  r"""__str__(OrderedTypeTripletPredicate self) -> std::string"""
12462  return _IMP_core.OrderedTypeTripletPredicate___str__(self)
12463 
12464  def __repr__(self):
12465  r"""__repr__(OrderedTypeTripletPredicate self) -> std::string"""
12466  return _IMP_core.OrderedTypeTripletPredicate___repr__(self)
12467 
12468  @staticmethod
12469  def get_from(o):
12470  return _object_cast_to_OrderedTypeTripletPredicate(o)
12471 
12472 
12473 # Register OrderedTypeTripletPredicate in _IMP_core:
12474 _IMP_core.OrderedTypeTripletPredicate_swigregister(OrderedTypeTripletPredicate)
12475 class AllSameTripletPredicate(IMP.TripletPredicate):
12476  r"""Proxy of C++ IMP::core::AllSameTripletPredicate class."""
12477 
12478  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12479 
12480  def __init__(self, *args):
12481  r"""__init__(AllSameTripletPredicate self, std::string name="AllSameTripletPredicate%1%") -> AllSameTripletPredicate"""
12482  _IMP_core.AllSameTripletPredicate_swiginit(self, _IMP_core.new_AllSameTripletPredicate(*args))
12483 
12484  def do_get_inputs(self, arg2, arg3):
12485  r"""do_get_inputs(AllSameTripletPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12486  return _IMP_core.AllSameTripletPredicate_do_get_inputs(self, arg2, arg3)
12487 
12488  def get_value(self, *args):
12489  r"""
12490  get_value(AllSameTripletPredicate self, IMP::ParticleTriplet const & a) -> int
12491  get_value(AllSameTripletPredicate self, IMP::ParticleTripletsTemp const & o) -> IMP::Ints
12492  """
12493  return _IMP_core.AllSameTripletPredicate_get_value(self, *args)
12494 
12495  def get_value_index(self, *args):
12496  r"""
12497  get_value_index(AllSameTripletPredicate self, Model m, IMP::ParticleIndexTriplet const & pi) -> int
12498  get_value_index(AllSameTripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
12499  """
12500  return _IMP_core.AllSameTripletPredicate_get_value_index(self, *args)
12501 
12502  def get_version_info(self):
12503  r"""get_version_info(AllSameTripletPredicate self) -> VersionInfo"""
12504  return _IMP_core.AllSameTripletPredicate_get_version_info(self)
12505  __swig_destroy__ = _IMP_core.delete_AllSameTripletPredicate
12506 
12507  def __str__(self):
12508  r"""__str__(AllSameTripletPredicate self) -> std::string"""
12509  return _IMP_core.AllSameTripletPredicate___str__(self)
12510 
12511  def __repr__(self):
12512  r"""__repr__(AllSameTripletPredicate self) -> std::string"""
12513  return _IMP_core.AllSameTripletPredicate___repr__(self)
12514 
12515  @staticmethod
12516  def get_from(o):
12517  return _object_cast_to_AllSameTripletPredicate(o)
12518 
12519 
12520  def _get_as_binary(self):
12521  r"""_get_as_binary(AllSameTripletPredicate self) -> PyObject *"""
12522  return _IMP_core.AllSameTripletPredicate__get_as_binary(self)
12523 
12524  def _set_from_binary(self, p):
12525  r"""_set_from_binary(AllSameTripletPredicate self, PyObject * p)"""
12526  return _IMP_core.AllSameTripletPredicate__set_from_binary(self, p)
12527 
12528  def __getstate__(self):
12529  p = self._get_as_binary()
12530  if len(self.__dict__) > 1:
12531  d = self.__dict__.copy()
12532  del d['this']
12533  p = (d, p)
12534  return p
12535 
12536  def __setstate__(self, p):
12537  if not hasattr(self, 'this'):
12538  self.__init__()
12539  if isinstance(p, tuple):
12540  d, p = p
12541  self.__dict__.update(d)
12542  return self._set_from_binary(p)
12543 
12544 
12545 # Register AllSameTripletPredicate in _IMP_core:
12546 _IMP_core.AllSameTripletPredicate_swigregister(AllSameTripletPredicate)
12547 class CoinFlipTripletPredicate(IMP.TripletPredicate):
12548  r"""Proxy of C++ IMP::core::CoinFlipTripletPredicate class."""
12549 
12550  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12551 
12552  def __init__(self, *args):
12553  r"""__init__(CoinFlipTripletPredicate self, double p, std::string name="CoinFlipTripletPredicate%1%") -> CoinFlipTripletPredicate"""
12554  _IMP_core.CoinFlipTripletPredicate_swiginit(self, _IMP_core.new_CoinFlipTripletPredicate(*args))
12555 
12556  def do_get_inputs(self, arg2, arg3):
12557  r"""do_get_inputs(CoinFlipTripletPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12558  return _IMP_core.CoinFlipTripletPredicate_do_get_inputs(self, arg2, arg3)
12559 
12560  def get_value(self, *args):
12561  r"""
12562  get_value(CoinFlipTripletPredicate self, IMP::ParticleTriplet const & a) -> int
12563  get_value(CoinFlipTripletPredicate self, IMP::ParticleTripletsTemp const & o) -> IMP::Ints
12564  """
12565  return _IMP_core.CoinFlipTripletPredicate_get_value(self, *args)
12566 
12567  def get_value_index(self, *args):
12568  r"""
12569  get_value_index(CoinFlipTripletPredicate self, Model arg2, IMP::ParticleIndexTriplet const & arg3) -> int
12570  get_value_index(CoinFlipTripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
12571  """
12572  return _IMP_core.CoinFlipTripletPredicate_get_value_index(self, *args)
12573 
12574  def get_version_info(self):
12575  r"""get_version_info(CoinFlipTripletPredicate self) -> VersionInfo"""
12576  return _IMP_core.CoinFlipTripletPredicate_get_version_info(self)
12577  __swig_destroy__ = _IMP_core.delete_CoinFlipTripletPredicate
12578 
12579  def __str__(self):
12580  r"""__str__(CoinFlipTripletPredicate self) -> std::string"""
12581  return _IMP_core.CoinFlipTripletPredicate___str__(self)
12582 
12583  def __repr__(self):
12584  r"""__repr__(CoinFlipTripletPredicate self) -> std::string"""
12585  return _IMP_core.CoinFlipTripletPredicate___repr__(self)
12586 
12587  @staticmethod
12588  def get_from(o):
12589  return _object_cast_to_CoinFlipTripletPredicate(o)
12590 
12591 
12592 # Register CoinFlipTripletPredicate in _IMP_core:
12593 _IMP_core.CoinFlipTripletPredicate_swigregister(CoinFlipTripletPredicate)
12594 class ConstantQuadPredicate(IMP.QuadPredicate):
12595  r"""Proxy of C++ IMP::core::ConstantQuadPredicate class."""
12596 
12597  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12598 
12599  def __init__(self, *args):
12600  r"""
12601  __init__(ConstantQuadPredicate self, int v, std::string name="ConstQuadPredicate%1%") -> ConstantQuadPredicate
12602  __init__(ConstantQuadPredicate self) -> ConstantQuadPredicate
12603  """
12604  _IMP_core.ConstantQuadPredicate_swiginit(self, _IMP_core.new_ConstantQuadPredicate(*args))
12605 
12606  def do_get_inputs(self, arg2, arg3):
12607  r"""do_get_inputs(ConstantQuadPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12608  return _IMP_core.ConstantQuadPredicate_do_get_inputs(self, arg2, arg3)
12609 
12610  def get_value(self, *args):
12611  r"""
12612  get_value(ConstantQuadPredicate self, IMP::ParticleQuad const & a) -> int
12613  get_value(ConstantQuadPredicate self, IMP::ParticleQuadsTemp const & o) -> IMP::Ints
12614  """
12615  return _IMP_core.ConstantQuadPredicate_get_value(self, *args)
12616 
12617  def get_value_index(self, *args):
12618  r"""
12619  get_value_index(ConstantQuadPredicate self, Model arg2, IMP::ParticleIndexQuad const & arg3) -> int
12620  get_value_index(ConstantQuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
12621  """
12622  return _IMP_core.ConstantQuadPredicate_get_value_index(self, *args)
12623 
12624  def get_version_info(self):
12625  r"""get_version_info(ConstantQuadPredicate self) -> VersionInfo"""
12626  return _IMP_core.ConstantQuadPredicate_get_version_info(self)
12627  __swig_destroy__ = _IMP_core.delete_ConstantQuadPredicate
12628 
12629  def __str__(self):
12630  r"""__str__(ConstantQuadPredicate self) -> std::string"""
12631  return _IMP_core.ConstantQuadPredicate___str__(self)
12632 
12633  def __repr__(self):
12634  r"""__repr__(ConstantQuadPredicate self) -> std::string"""
12635  return _IMP_core.ConstantQuadPredicate___repr__(self)
12636 
12637  @staticmethod
12638  def get_from(o):
12639  return _object_cast_to_ConstantQuadPredicate(o)
12640 
12641 
12642  def _get_as_binary(self):
12643  r"""_get_as_binary(ConstantQuadPredicate self) -> PyObject *"""
12644  return _IMP_core.ConstantQuadPredicate__get_as_binary(self)
12645 
12646  def _set_from_binary(self, p):
12647  r"""_set_from_binary(ConstantQuadPredicate self, PyObject * p)"""
12648  return _IMP_core.ConstantQuadPredicate__set_from_binary(self, p)
12649 
12650  def __getstate__(self):
12651  p = self._get_as_binary()
12652  if len(self.__dict__) > 1:
12653  d = self.__dict__.copy()
12654  del d['this']
12655  p = (d, p)
12656  return p
12657 
12658  def __setstate__(self, p):
12659  if not hasattr(self, 'this'):
12660  self.__init__()
12661  if isinstance(p, tuple):
12662  d, p = p
12663  self.__dict__.update(d)
12664  return self._set_from_binary(p)
12665 
12666 
12667 # Register ConstantQuadPredicate in _IMP_core:
12668 _IMP_core.ConstantQuadPredicate_swigregister(ConstantQuadPredicate)
12669 class UnorderedTypeQuadPredicate(IMP.QuadPredicate):
12670  r"""Proxy of C++ IMP::core::UnorderedTypeQuadPredicate class."""
12671 
12672  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12673 
12674  def __init__(self, *args):
12675  r"""__init__(UnorderedTypeQuadPredicate self, std::string name="UnorderedTypeQuadPredicate%1%") -> UnorderedTypeQuadPredicate"""
12676  _IMP_core.UnorderedTypeQuadPredicate_swiginit(self, _IMP_core.new_UnorderedTypeQuadPredicate(*args))
12677 
12678  def do_get_inputs(self, m, pis):
12679  r"""do_get_inputs(UnorderedTypeQuadPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
12680  return _IMP_core.UnorderedTypeQuadPredicate_do_get_inputs(self, m, pis)
12681 
12682  def get_value(self, *args):
12683  r"""
12684  get_value(UnorderedTypeQuadPredicate self, IMP::ParticleQuad const & a) -> int
12685  get_value(UnorderedTypeQuadPredicate self, IMP::ParticleQuadsTemp const & o) -> IMP::Ints
12686  """
12687  return _IMP_core.UnorderedTypeQuadPredicate_get_value(self, *args)
12688 
12689  def get_value_index(self, *args):
12690  r"""
12691  get_value_index(UnorderedTypeQuadPredicate self, Model m, IMP::ParticleIndexQuad const & pi) -> int
12692  get_value_index(UnorderedTypeQuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
12693  """
12694  return _IMP_core.UnorderedTypeQuadPredicate_get_value_index(self, *args)
12695 
12696  def get_version_info(self):
12697  r"""get_version_info(UnorderedTypeQuadPredicate self) -> VersionInfo"""
12698  return _IMP_core.UnorderedTypeQuadPredicate_get_version_info(self)
12699  __swig_destroy__ = _IMP_core.delete_UnorderedTypeQuadPredicate
12700 
12701  def __str__(self):
12702  r"""__str__(UnorderedTypeQuadPredicate self) -> std::string"""
12703  return _IMP_core.UnorderedTypeQuadPredicate___str__(self)
12704 
12705  def __repr__(self):
12706  r"""__repr__(UnorderedTypeQuadPredicate self) -> std::string"""
12707  return _IMP_core.UnorderedTypeQuadPredicate___repr__(self)
12708 
12709  @staticmethod
12710  def get_from(o):
12711  return _object_cast_to_UnorderedTypeQuadPredicate(o)
12712 
12713 
12714  def _get_as_binary(self):
12715  r"""_get_as_binary(UnorderedTypeQuadPredicate self) -> PyObject *"""
12716  return _IMP_core.UnorderedTypeQuadPredicate__get_as_binary(self)
12717 
12718  def _set_from_binary(self, p):
12719  r"""_set_from_binary(UnorderedTypeQuadPredicate self, PyObject * p)"""
12720  return _IMP_core.UnorderedTypeQuadPredicate__set_from_binary(self, p)
12721 
12722  def __getstate__(self):
12723  p = self._get_as_binary()
12724  if len(self.__dict__) > 1:
12725  d = self.__dict__.copy()
12726  del d['this']
12727  p = (d, p)
12728  return p
12729 
12730  def __setstate__(self, p):
12731  if not hasattr(self, 'this'):
12732  self.__init__()
12733  if isinstance(p, tuple):
12734  d, p = p
12735  self.__dict__.update(d)
12736  return self._set_from_binary(p)
12737 
12738 
12739 # Register UnorderedTypeQuadPredicate in _IMP_core:
12740 _IMP_core.UnorderedTypeQuadPredicate_swigregister(UnorderedTypeQuadPredicate)
12741 class OrderedTypeQuadPredicate(IMP.QuadPredicate):
12742  r"""Proxy of C++ IMP::core::OrderedTypeQuadPredicate class."""
12743 
12744  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12745 
12746  def __init__(self, *args):
12747  r"""__init__(OrderedTypeQuadPredicate self, std::string name="OrderedTypeQuadPredicate%1%") -> OrderedTypeQuadPredicate"""
12748  _IMP_core.OrderedTypeQuadPredicate_swiginit(self, _IMP_core.new_OrderedTypeQuadPredicate(*args))
12749 
12750  def do_get_inputs(self, m, pis):
12751  r"""do_get_inputs(OrderedTypeQuadPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
12752  return _IMP_core.OrderedTypeQuadPredicate_do_get_inputs(self, m, pis)
12753 
12754  def get_value(self, *args):
12755  r"""
12756  get_value(OrderedTypeQuadPredicate self, IMP::core::ParticleTypes const & types) -> int
12757  get_value(OrderedTypeQuadPredicate self, IMP::ParticleQuad const & a) -> int
12758  get_value(OrderedTypeQuadPredicate self, IMP::ParticleQuadsTemp const & o) -> IMP::Ints
12759  """
12760  return _IMP_core.OrderedTypeQuadPredicate_get_value(self, *args)
12761 
12762  def get_value_index(self, *args):
12763  r"""
12764  get_value_index(OrderedTypeQuadPredicate self, Model m, IMP::ParticleIndexQuad const & pi) -> int
12765  get_value_index(OrderedTypeQuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
12766  """
12767  return _IMP_core.OrderedTypeQuadPredicate_get_value_index(self, *args)
12768 
12769  def get_version_info(self):
12770  r"""get_version_info(OrderedTypeQuadPredicate self) -> VersionInfo"""
12771  return _IMP_core.OrderedTypeQuadPredicate_get_version_info(self)
12772  __swig_destroy__ = _IMP_core.delete_OrderedTypeQuadPredicate
12773 
12774  def __str__(self):
12775  r"""__str__(OrderedTypeQuadPredicate self) -> std::string"""
12776  return _IMP_core.OrderedTypeQuadPredicate___str__(self)
12777 
12778  def __repr__(self):
12779  r"""__repr__(OrderedTypeQuadPredicate self) -> std::string"""
12780  return _IMP_core.OrderedTypeQuadPredicate___repr__(self)
12781 
12782  @staticmethod
12783  def get_from(o):
12784  return _object_cast_to_OrderedTypeQuadPredicate(o)
12785 
12786 
12787 # Register OrderedTypeQuadPredicate in _IMP_core:
12788 _IMP_core.OrderedTypeQuadPredicate_swigregister(OrderedTypeQuadPredicate)
12789 class AllSameQuadPredicate(IMP.QuadPredicate):
12790  r"""Proxy of C++ IMP::core::AllSameQuadPredicate class."""
12791 
12792  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12793 
12794  def __init__(self, *args):
12795  r"""__init__(AllSameQuadPredicate self, std::string name="AllSameQuadPredicate%1%") -> AllSameQuadPredicate"""
12796  _IMP_core.AllSameQuadPredicate_swiginit(self, _IMP_core.new_AllSameQuadPredicate(*args))
12797 
12798  def do_get_inputs(self, arg2, arg3):
12799  r"""do_get_inputs(AllSameQuadPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12800  return _IMP_core.AllSameQuadPredicate_do_get_inputs(self, arg2, arg3)
12801 
12802  def get_value(self, *args):
12803  r"""
12804  get_value(AllSameQuadPredicate self, IMP::ParticleQuad const & a) -> int
12805  get_value(AllSameQuadPredicate self, IMP::ParticleQuadsTemp const & o) -> IMP::Ints
12806  """
12807  return _IMP_core.AllSameQuadPredicate_get_value(self, *args)
12808 
12809  def get_value_index(self, *args):
12810  r"""
12811  get_value_index(AllSameQuadPredicate self, Model m, IMP::ParticleIndexQuad const & pi) -> int
12812  get_value_index(AllSameQuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
12813  """
12814  return _IMP_core.AllSameQuadPredicate_get_value_index(self, *args)
12815 
12816  def get_version_info(self):
12817  r"""get_version_info(AllSameQuadPredicate self) -> VersionInfo"""
12818  return _IMP_core.AllSameQuadPredicate_get_version_info(self)
12819  __swig_destroy__ = _IMP_core.delete_AllSameQuadPredicate
12820 
12821  def __str__(self):
12822  r"""__str__(AllSameQuadPredicate self) -> std::string"""
12823  return _IMP_core.AllSameQuadPredicate___str__(self)
12824 
12825  def __repr__(self):
12826  r"""__repr__(AllSameQuadPredicate self) -> std::string"""
12827  return _IMP_core.AllSameQuadPredicate___repr__(self)
12828 
12829  @staticmethod
12830  def get_from(o):
12831  return _object_cast_to_AllSameQuadPredicate(o)
12832 
12833 
12834  def _get_as_binary(self):
12835  r"""_get_as_binary(AllSameQuadPredicate self) -> PyObject *"""
12836  return _IMP_core.AllSameQuadPredicate__get_as_binary(self)
12837 
12838  def _set_from_binary(self, p):
12839  r"""_set_from_binary(AllSameQuadPredicate self, PyObject * p)"""
12840  return _IMP_core.AllSameQuadPredicate__set_from_binary(self, p)
12841 
12842  def __getstate__(self):
12843  p = self._get_as_binary()
12844  if len(self.__dict__) > 1:
12845  d = self.__dict__.copy()
12846  del d['this']
12847  p = (d, p)
12848  return p
12849 
12850  def __setstate__(self, p):
12851  if not hasattr(self, 'this'):
12852  self.__init__()
12853  if isinstance(p, tuple):
12854  d, p = p
12855  self.__dict__.update(d)
12856  return self._set_from_binary(p)
12857 
12858 
12859 # Register AllSameQuadPredicate in _IMP_core:
12860 _IMP_core.AllSameQuadPredicate_swigregister(AllSameQuadPredicate)
12861 class CoinFlipQuadPredicate(IMP.QuadPredicate):
12862  r"""Proxy of C++ IMP::core::CoinFlipQuadPredicate class."""
12863 
12864  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12865 
12866  def __init__(self, *args):
12867  r"""__init__(CoinFlipQuadPredicate self, double p, std::string name="CoinFlipQuadPredicate%1%") -> CoinFlipQuadPredicate"""
12868  _IMP_core.CoinFlipQuadPredicate_swiginit(self, _IMP_core.new_CoinFlipQuadPredicate(*args))
12869 
12870  def do_get_inputs(self, arg2, arg3):
12871  r"""do_get_inputs(CoinFlipQuadPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12872  return _IMP_core.CoinFlipQuadPredicate_do_get_inputs(self, arg2, arg3)
12873 
12874  def get_value(self, *args):
12875  r"""
12876  get_value(CoinFlipQuadPredicate self, IMP::ParticleQuad const & a) -> int
12877  get_value(CoinFlipQuadPredicate self, IMP::ParticleQuadsTemp const & o) -> IMP::Ints
12878  """
12879  return _IMP_core.CoinFlipQuadPredicate_get_value(self, *args)
12880 
12881  def get_value_index(self, *args):
12882  r"""
12883  get_value_index(CoinFlipQuadPredicate self, Model arg2, IMP::ParticleIndexQuad const & arg3) -> int
12884  get_value_index(CoinFlipQuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
12885  """
12886  return _IMP_core.CoinFlipQuadPredicate_get_value_index(self, *args)
12887 
12888  def get_version_info(self):
12889  r"""get_version_info(CoinFlipQuadPredicate self) -> VersionInfo"""
12890  return _IMP_core.CoinFlipQuadPredicate_get_version_info(self)
12891  __swig_destroy__ = _IMP_core.delete_CoinFlipQuadPredicate
12892 
12893  def __str__(self):
12894  r"""__str__(CoinFlipQuadPredicate self) -> std::string"""
12895  return _IMP_core.CoinFlipQuadPredicate___str__(self)
12896 
12897  def __repr__(self):
12898  r"""__repr__(CoinFlipQuadPredicate self) -> std::string"""
12899  return _IMP_core.CoinFlipQuadPredicate___repr__(self)
12900 
12901  @staticmethod
12902  def get_from(o):
12903  return _object_cast_to_CoinFlipQuadPredicate(o)
12904 
12905 
12906 # Register CoinFlipQuadPredicate in _IMP_core:
12907 _IMP_core.CoinFlipQuadPredicate_swigregister(CoinFlipQuadPredicate)
12908 class InBoundingBox3DSingletonPredicate(IMP.SingletonPredicate):
12909  r"""Proxy of C++ IMP::core::InBoundingBox3DSingletonPredicate class."""
12910 
12911  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12912 
12913  def __init__(self, *args):
12914  r"""__init__(InBoundingBox3DSingletonPredicate self, BoundingBox3D bb, std::string name="InBoundingBox3DSingletonPredicate%1%") -> InBoundingBox3DSingletonPredicate"""
12915  _IMP_core.InBoundingBox3DSingletonPredicate_swiginit(self, _IMP_core.new_InBoundingBox3DSingletonPredicate(*args))
12916 
12917  def do_get_inputs(self, m, pi):
12918  r"""do_get_inputs(InBoundingBox3DSingletonPredicate self, Model m, IMP::ParticleIndexes const & pi) -> IMP::ModelObjectsTemp"""
12919  return _IMP_core.InBoundingBox3DSingletonPredicate_do_get_inputs(self, m, pi)
12920 
12921  def get_value(self, *args):
12922  r"""
12923  get_value(InBoundingBox3DSingletonPredicate self, Particle a) -> int
12924  get_value(InBoundingBox3DSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
12925  """
12926  return _IMP_core.InBoundingBox3DSingletonPredicate_get_value(self, *args)
12927 
12928  def get_value_index(self, *args):
12929  r"""
12930  get_value_index(InBoundingBox3DSingletonPredicate self, Model m, ParticleIndex pi) -> int
12931  get_value_index(InBoundingBox3DSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
12932  """
12933  return _IMP_core.InBoundingBox3DSingletonPredicate_get_value_index(self, *args)
12934 
12935  def get_version_info(self):
12936  r"""get_version_info(InBoundingBox3DSingletonPredicate self) -> VersionInfo"""
12937  return _IMP_core.InBoundingBox3DSingletonPredicate_get_version_info(self)
12938  __swig_destroy__ = _IMP_core.delete_InBoundingBox3DSingletonPredicate
12939 
12940  def __str__(self):
12941  r"""__str__(InBoundingBox3DSingletonPredicate self) -> std::string"""
12942  return _IMP_core.InBoundingBox3DSingletonPredicate___str__(self)
12943 
12944  def __repr__(self):
12945  r"""__repr__(InBoundingBox3DSingletonPredicate self) -> std::string"""
12946  return _IMP_core.InBoundingBox3DSingletonPredicate___repr__(self)
12947 
12948  @staticmethod
12949  def get_from(o):
12950  return _object_cast_to_InBoundingBox3DSingletonPredicate(o)
12951 
12952 
12953 # Register InBoundingBox3DSingletonPredicate in _IMP_core:
12954 _IMP_core.InBoundingBox3DSingletonPredicate_swigregister(InBoundingBox3DSingletonPredicate)
12955 class AttributeSingletonPredicate(IMP.SingletonPredicate):
12956  r"""Proxy of C++ IMP::core::AttributeSingletonPredicate class."""
12957 
12958  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12959 
12960  def __init__(self, *args):
12961  r"""__init__(AttributeSingletonPredicate self, IntKey bb, std::string name="AttributeSingletonPredicate%1%") -> AttributeSingletonPredicate"""
12962  _IMP_core.AttributeSingletonPredicate_swiginit(self, _IMP_core.new_AttributeSingletonPredicate(*args))
12963 
12964  def do_get_inputs(self, m, pi):
12965  r"""do_get_inputs(AttributeSingletonPredicate self, Model m, IMP::ParticleIndexes const & pi) -> IMP::ModelObjectsTemp"""
12966  return _IMP_core.AttributeSingletonPredicate_do_get_inputs(self, m, pi)
12967 
12968  def get_value(self, *args):
12969  r"""
12970  get_value(AttributeSingletonPredicate self, Particle a) -> int
12971  get_value(AttributeSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
12972  """
12973  return _IMP_core.AttributeSingletonPredicate_get_value(self, *args)
12974 
12975  def get_value_index(self, *args):
12976  r"""
12977  get_value_index(AttributeSingletonPredicate self, Model m, ParticleIndex pi) -> int
12978  get_value_index(AttributeSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
12979  """
12980  return _IMP_core.AttributeSingletonPredicate_get_value_index(self, *args)
12981 
12982  def get_version_info(self):
12983  r"""get_version_info(AttributeSingletonPredicate self) -> VersionInfo"""
12984  return _IMP_core.AttributeSingletonPredicate_get_version_info(self)
12985  __swig_destroy__ = _IMP_core.delete_AttributeSingletonPredicate
12986 
12987  def __str__(self):
12988  r"""__str__(AttributeSingletonPredicate self) -> std::string"""
12989  return _IMP_core.AttributeSingletonPredicate___str__(self)
12990 
12991  def __repr__(self):
12992  r"""__repr__(AttributeSingletonPredicate self) -> std::string"""
12993  return _IMP_core.AttributeSingletonPredicate___repr__(self)
12994 
12995  @staticmethod
12996  def get_from(o):
12997  return _object_cast_to_AttributeSingletonPredicate(o)
12998 
12999 
13000 # Register AttributeSingletonPredicate in _IMP_core:
13001 _IMP_core.AttributeSingletonPredicate_swigregister(AttributeSingletonPredicate)
13002 class IsCollisionPairPredicate(IMP.PairPredicate):
13003  r"""Proxy of C++ IMP::core::IsCollisionPairPredicate class."""
13004 
13005  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13006 
13007  def __init__(self, *args):
13008  r"""__init__(IsCollisionPairPredicate self, std::string name="CollisionPairPredicate%1%") -> IsCollisionPairPredicate"""
13009  _IMP_core.IsCollisionPairPredicate_swiginit(self, _IMP_core.new_IsCollisionPairPredicate(*args))
13010 
13011  def do_get_inputs(self, m, pi):
13012  r"""do_get_inputs(IsCollisionPairPredicate self, Model m, IMP::ParticleIndexes const & pi) -> IMP::ModelObjectsTemp"""
13013  return _IMP_core.IsCollisionPairPredicate_do_get_inputs(self, m, pi)
13014 
13015  def get_value(self, *args):
13016  r"""
13017  get_value(IsCollisionPairPredicate self, IMP::ParticlePair const & a) -> int
13018  get_value(IsCollisionPairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
13019  """
13020  return _IMP_core.IsCollisionPairPredicate_get_value(self, *args)
13021 
13022  def get_value_index(self, *args):
13023  r"""
13024  get_value_index(IsCollisionPairPredicate self, Model m, IMP::ParticleIndexPair const & pi) -> int
13025  get_value_index(IsCollisionPairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
13026  """
13027  return _IMP_core.IsCollisionPairPredicate_get_value_index(self, *args)
13028 
13029  def get_version_info(self):
13030  r"""get_version_info(IsCollisionPairPredicate self) -> VersionInfo"""
13031  return _IMP_core.IsCollisionPairPredicate_get_version_info(self)
13032  __swig_destroy__ = _IMP_core.delete_IsCollisionPairPredicate
13033 
13034  def __str__(self):
13035  r"""__str__(IsCollisionPairPredicate self) -> std::string"""
13036  return _IMP_core.IsCollisionPairPredicate___str__(self)
13037 
13038  def __repr__(self):
13039  r"""__repr__(IsCollisionPairPredicate self) -> std::string"""
13040  return _IMP_core.IsCollisionPairPredicate___repr__(self)
13041 
13042  @staticmethod
13043  def get_from(o):
13044  return _object_cast_to_IsCollisionPairPredicate(o)
13045 
13046 
13047 # Register IsCollisionPairPredicate in _IMP_core:
13048 _IMP_core.IsCollisionPairPredicate_swigregister(IsCollisionPairPredicate)
13049 class AngleRestraint(TripletRestraint):
13050  r"""Proxy of C++ IMP::core::AngleRestraint class."""
13051 
13052  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13053 
13054  def __init__(self, *args):
13055  r"""
13056  __init__(AngleRestraint self, Model m, UnaryFunction score_func, _ParticleIndexAdaptor p1, _ParticleIndexAdaptor p2, _ParticleIndexAdaptor p3) -> AngleRestraint
13057  __init__(AngleRestraint self) -> AngleRestraint
13058  """
13059  _IMP_core.AngleRestraint_swiginit(self, _IMP_core.new_AngleRestraint(*args))
13060  __swig_destroy__ = _IMP_core.delete_AngleRestraint
13061 
13062  def __str__(self):
13063  r"""__str__(AngleRestraint self) -> std::string"""
13064  return _IMP_core.AngleRestraint___str__(self)
13065 
13066  def __repr__(self):
13067  r"""__repr__(AngleRestraint self) -> std::string"""
13068  return _IMP_core.AngleRestraint___repr__(self)
13069 
13070  @staticmethod
13071  def get_from(o):
13072  return _object_cast_to_AngleRestraint(o)
13073 
13074 
13075  def _get_as_binary(self):
13076  r"""_get_as_binary(AngleRestraint self) -> PyObject *"""
13077  return _IMP_core.AngleRestraint__get_as_binary(self)
13078 
13079  def _set_from_binary(self, p):
13080  r"""_set_from_binary(AngleRestraint self, PyObject * p)"""
13081  return _IMP_core.AngleRestraint__set_from_binary(self, p)
13082 
13083  def __getstate__(self):
13084  p = self._get_as_binary()
13085  if len(self.__dict__) > 1:
13086  d = self.__dict__.copy()
13087  del d['this']
13088  p = (d, p)
13089  return p
13090 
13091  def __setstate__(self, p):
13092  if not hasattr(self, 'this'):
13093  self.__init__()
13094  if isinstance(p, tuple):
13095  d, p = p
13096  self.__dict__.update(d)
13097  return self._set_from_binary(p)
13098 
13099 
13100 # Register AngleRestraint in _IMP_core:
13101 _IMP_core.AngleRestraint_swigregister(AngleRestraint)
13102 class RigidBodyMover(MonteCarloMover):
13103  r"""Proxy of C++ IMP::core::RigidBodyMover class."""
13104 
13105  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13106 
13107  def __init__(self, *args):
13108  r"""
13109  __init__(RigidBodyMover self, Model m, ParticleIndex pi, IMP::Float max_translation, IMP::Float max_rotation) -> RigidBodyMover
13110  __init__(RigidBodyMover self) -> RigidBodyMover
13111  """
13112  _IMP_core.RigidBodyMover_swiginit(self, _IMP_core.new_RigidBodyMover(*args))
13113 
13114  def set_maximum_translation(self, mt):
13115  r"""set_maximum_translation(RigidBodyMover self, IMP::Float mt)"""
13116  return _IMP_core.RigidBodyMover_set_maximum_translation(self, mt)
13117 
13118  def set_maximum_rotation(self, mr):
13119  r"""set_maximum_rotation(RigidBodyMover self, IMP::Float mr)"""
13120  return _IMP_core.RigidBodyMover_set_maximum_rotation(self, mr)
13121 
13122  def get_maximum_translation(self):
13123  r"""get_maximum_translation(RigidBodyMover self) -> IMP::Float"""
13124  return _IMP_core.RigidBodyMover_get_maximum_translation(self)
13125 
13126  def get_maximum_rotation(self):
13127  r"""get_maximum_rotation(RigidBodyMover self) -> IMP::Float"""
13128  return _IMP_core.RigidBodyMover_get_maximum_rotation(self)
13129 
13130  def get_version_info(self):
13131  r"""get_version_info(RigidBodyMover self) -> VersionInfo"""
13132  return _IMP_core.RigidBodyMover_get_version_info(self)
13133  __swig_destroy__ = _IMP_core.delete_RigidBodyMover
13134 
13135  def __str__(self):
13136  r"""__str__(RigidBodyMover self) -> std::string"""
13137  return _IMP_core.RigidBodyMover___str__(self)
13138 
13139  def __repr__(self):
13140  r"""__repr__(RigidBodyMover self) -> std::string"""
13141  return _IMP_core.RigidBodyMover___repr__(self)
13142 
13143  @staticmethod
13144  def get_from(o):
13145  return _object_cast_to_RigidBodyMover(o)
13146 
13147 
13148  def _get_as_binary(self):
13149  r"""_get_as_binary(RigidBodyMover self) -> PyObject *"""
13150  return _IMP_core.RigidBodyMover__get_as_binary(self)
13151 
13152  def _set_from_binary(self, p):
13153  r"""_set_from_binary(RigidBodyMover self, PyObject * p)"""
13154  return _IMP_core.RigidBodyMover__set_from_binary(self, p)
13155 
13156  def __getstate__(self):
13157  p = self._get_as_binary()
13158  if len(self.__dict__) > 1:
13159  d = self.__dict__.copy()
13160  del d['this']
13161  p = (d, p)
13162  return p
13163 
13164  def __setstate__(self, p):
13165  if not hasattr(self, 'this'):
13166  self.__init__()
13167  if isinstance(p, tuple):
13168  d, p = p
13169  self.__dict__.update(d)
13170  return self._set_from_binary(p)
13171 
13172 
13173 # Register RigidBodyMover in _IMP_core:
13174 _IMP_core.RigidBodyMover_swigregister(RigidBodyMover)
13175 class RigidBodyTunneler(MonteCarloMover):
13176  r"""Proxy of C++ IMP::core::RigidBodyTunneler class."""
13177 
13178  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13179 
13180  def __init__(self, m, pis, ref, k, move_probability=1.):
13181  r"""__init__(RigidBodyTunneler self, Model m, IMP::ParticleIndexes pis, ParticleIndex ref, double k, double move_probability=1.) -> RigidBodyTunneler"""
13182  _IMP_core.RigidBodyTunneler_swiginit(self, _IMP_core.new_RigidBodyTunneler(m, pis, ref, k, move_probability))
13183 
13184  def add_entry_point(self, fl):
13185  r"""add_entry_point(RigidBodyTunneler self, IMP::Floats fl)"""
13186  return _IMP_core.RigidBodyTunneler_add_entry_point(self, fl)
13187 
13188  def reset_stats(self):
13189  r"""reset_stats(RigidBodyTunneler self)"""
13190  return _IMP_core.RigidBodyTunneler_reset_stats(self)
13191 
13192  def get_number_of_rejected_moves(self):
13193  r"""get_number_of_rejected_moves(RigidBodyTunneler self) -> unsigned int"""
13194  return _IMP_core.RigidBodyTunneler_get_number_of_rejected_moves(self)
13195 
13196  def get_number_of_proposed_moves(self):
13197  r"""get_number_of_proposed_moves(RigidBodyTunneler self) -> unsigned int"""
13198  return _IMP_core.RigidBodyTunneler_get_number_of_proposed_moves(self)
13199 
13200  def get_number_of_impossible_moves(self):
13201  r"""get_number_of_impossible_moves(RigidBodyTunneler self) -> unsigned int"""
13202  return _IMP_core.RigidBodyTunneler_get_number_of_impossible_moves(self)
13203 
13204  def get_number_of_calls(self):
13205  r"""get_number_of_calls(RigidBodyTunneler self) -> unsigned int"""
13206  return _IMP_core.RigidBodyTunneler_get_number_of_calls(self)
13207 
13208  @staticmethod
13209  def get_reduced_coordinates(*args):
13210  r"""
13211  get_reduced_coordinates(Model m, ParticleIndex target, ParticleIndex ref) -> IMP::Floats
13212  get_reduced_coordinates(Model m, ParticleIndex pi) -> IMP::Floats
13213  """
13214  return _IMP_core.RigidBodyTunneler_get_reduced_coordinates(*args)
13215 
13216  @staticmethod
13217  def set_reduced_coordinates(m, target, ref, coords):
13218  r"""set_reduced_coordinates(Model m, ParticleIndex target, ParticleIndex ref, IMP::Floats coords)"""
13219  return _IMP_core.RigidBodyTunneler_set_reduced_coordinates(m, target, ref, coords)
13220 
13221  def get_version_info(self):
13222  r"""get_version_info(RigidBodyTunneler self) -> VersionInfo"""
13223  return _IMP_core.RigidBodyTunneler_get_version_info(self)
13224  __swig_destroy__ = _IMP_core.delete_RigidBodyTunneler
13225 
13226  def __str__(self):
13227  r"""__str__(RigidBodyTunneler self) -> std::string"""
13228  return _IMP_core.RigidBodyTunneler___str__(self)
13229 
13230  def __repr__(self):
13231  r"""__repr__(RigidBodyTunneler self) -> std::string"""
13232  return _IMP_core.RigidBodyTunneler___repr__(self)
13233 
13234  @staticmethod
13235  def get_from(o):
13236  return _object_cast_to_RigidBodyTunneler(o)
13237 
13238 
13239 # Register RigidBodyTunneler in _IMP_core:
13240 _IMP_core.RigidBodyTunneler_swigregister(RigidBodyTunneler)
13241 class RigidBodyUmbrella(IMP.Restraint):
13242  r"""Proxy of C++ IMP::core::RigidBodyUmbrella class."""
13243 
13244  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13245 
13246  def __init__(self, *args):
13247  r"""
13248  __init__(RigidBodyUmbrella self, Model m, ParticleIndex pi, ParticleIndex ref, IMP::Floats x0, double alpha, double k, std::string name="RigidBodyUmbrella %1%") -> RigidBodyUmbrella
13249  __init__(RigidBodyUmbrella self, Model m, ParticleIndex pi, ParticleIndex ref, double _lambda, IMP::Floats x1, IMP::Floats x2, double alpha, double k, std::string name="RigidBodyUmbrella %1%") -> RigidBodyUmbrella
13250  """
13251  _IMP_core.RigidBodyUmbrella_swiginit(self, _IMP_core.new_RigidBodyUmbrella(*args))
13252 
13253  def set_x0(self, *args):
13254  r"""
13255  set_x0(RigidBodyUmbrella self, IMP::Floats x0)
13256  set_x0(RigidBodyUmbrella self, double _lambda, IMP::Floats x1, IMP::Floats x2)
13257  """
13258  return _IMP_core.RigidBodyUmbrella_set_x0(self, *args)
13259 
13260  def get_x0(self):
13261  r"""get_x0(RigidBodyUmbrella self) -> IMP::Floats"""
13262  return _IMP_core.RigidBodyUmbrella_get_x0(self)
13263 
13264  def get_x(self):
13265  r"""get_x(RigidBodyUmbrella self) -> IMP::Floats"""
13266  return _IMP_core.RigidBodyUmbrella_get_x(self)
13267 
13268  def set_alpha(self, alpha):
13269  r"""set_alpha(RigidBodyUmbrella self, double alpha)"""
13270  return _IMP_core.RigidBodyUmbrella_set_alpha(self, alpha)
13271 
13272  def set_k(self, k):
13273  r"""set_k(RigidBodyUmbrella self, double k)"""
13274  return _IMP_core.RigidBodyUmbrella_set_k(self, k)
13275 
13276  def get_version_info(self):
13277  r"""get_version_info(RigidBodyUmbrella self) -> VersionInfo"""
13278  return _IMP_core.RigidBodyUmbrella_get_version_info(self)
13279  __swig_destroy__ = _IMP_core.delete_RigidBodyUmbrella
13280 
13281  def __str__(self):
13282  r"""__str__(RigidBodyUmbrella self) -> std::string"""
13283  return _IMP_core.RigidBodyUmbrella___str__(self)
13284 
13285  def __repr__(self):
13286  r"""__repr__(RigidBodyUmbrella self) -> std::string"""
13287  return _IMP_core.RigidBodyUmbrella___repr__(self)
13288 
13289  @staticmethod
13290  def get_from(o):
13291  return _object_cast_to_RigidBodyUmbrella(o)
13292 
13293 
13294 # Register RigidBodyUmbrella in _IMP_core:
13295 _IMP_core.RigidBodyUmbrella_swigregister(RigidBodyUmbrella)
13296 class VolumeRestraint(IMP.Restraint):
13297  r"""Proxy of C++ IMP::core::VolumeRestraint class."""
13298 
13299  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13300 
13301  def __init__(self, f, sc, volume):
13302  r"""__init__(VolumeRestraint self, UnaryFunction f, SingletonContainer sc, double volume) -> VolumeRestraint"""
13303  _IMP_core.VolumeRestraint_swiginit(self, _IMP_core.new_VolumeRestraint(f, sc, volume))
13304 
13305  def do_get_inputs(self):
13306  r"""do_get_inputs(VolumeRestraint self) -> IMP::ModelObjectsTemp"""
13307  return _IMP_core.VolumeRestraint_do_get_inputs(self)
13308 
13309  def get_version_info(self):
13310  r"""get_version_info(VolumeRestraint self) -> VersionInfo"""
13311  return _IMP_core.VolumeRestraint_get_version_info(self)
13312  __swig_destroy__ = _IMP_core.delete_VolumeRestraint
13313 
13314  def __str__(self):
13315  r"""__str__(VolumeRestraint self) -> std::string"""
13316  return _IMP_core.VolumeRestraint___str__(self)
13317 
13318  def __repr__(self):
13319  r"""__repr__(VolumeRestraint self) -> std::string"""
13320  return _IMP_core.VolumeRestraint___repr__(self)
13321 
13322  @staticmethod
13323  def get_from(o):
13324  return _object_cast_to_VolumeRestraint(o)
13325 
13326 
13327 # Register VolumeRestraint in _IMP_core:
13328 _IMP_core.VolumeRestraint_swigregister(VolumeRestraint)
13329 
13330 def get_centroid(ps):
13331  r"""get_centroid(IMP::core::XYZs const & ps) -> Vector3D"""
13332  return _IMP_core.get_centroid(ps)
13333 
13334 def get_bounding_box(ps):
13335  r"""get_bounding_box(IMP::core::XYZRs const & ps) -> BoundingBox3D"""
13336  return _IMP_core.get_bounding_box(ps)
13337 class MoveStatisticsScoreState(IMP.ScoreState):
13338  r"""Proxy of C++ IMP::core::MoveStatisticsScoreState class."""
13339 
13340  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13341 
13342  def __init__(self, ps):
13343  r"""__init__(MoveStatisticsScoreState self, IMP::ParticlesTemp const & ps) -> MoveStatisticsScoreState"""
13344  _IMP_core.MoveStatisticsScoreState_swiginit(self, _IMP_core.new_MoveStatisticsScoreState(ps))
13345 
13346  def show_statistics(self, *args):
13347  r"""show_statistics(MoveStatisticsScoreState self, _ostream out=std::cout)"""
13348  return _IMP_core.MoveStatisticsScoreState_show_statistics(self, *args)
13349 
13350  def reset(self):
13351  r"""reset(MoveStatisticsScoreState self)"""
13352  return _IMP_core.MoveStatisticsScoreState_reset(self)
13353 
13354  def do_before_evaluate(self):
13355  r"""do_before_evaluate(MoveStatisticsScoreState self)"""
13356  return _IMP_core.MoveStatisticsScoreState_do_before_evaluate(self)
13357 
13358  def do_after_evaluate(self, da):
13359  r"""do_after_evaluate(MoveStatisticsScoreState self, DerivativeAccumulator da)"""
13360  return _IMP_core.MoveStatisticsScoreState_do_after_evaluate(self, da)
13361 
13362  def do_get_inputs(self):
13363  r"""do_get_inputs(MoveStatisticsScoreState self) -> IMP::ModelObjectsTemp"""
13364  return _IMP_core.MoveStatisticsScoreState_do_get_inputs(self)
13365 
13366  def do_get_outputs(self):
13367  r"""do_get_outputs(MoveStatisticsScoreState self) -> IMP::ModelObjectsTemp"""
13368  return _IMP_core.MoveStatisticsScoreState_do_get_outputs(self)
13369 
13370  def get_version_info(self):
13371  r"""get_version_info(MoveStatisticsScoreState self) -> VersionInfo"""
13372  return _IMP_core.MoveStatisticsScoreState_get_version_info(self)
13373  __swig_destroy__ = _IMP_core.delete_MoveStatisticsScoreState
13374 
13375  def __str__(self):
13376  r"""__str__(MoveStatisticsScoreState self) -> std::string"""
13377  return _IMP_core.MoveStatisticsScoreState___str__(self)
13378 
13379  def __repr__(self):
13380  r"""__repr__(MoveStatisticsScoreState self) -> std::string"""
13381  return _IMP_core.MoveStatisticsScoreState___repr__(self)
13382 
13383  @staticmethod
13384  def get_from(o):
13385  return _object_cast_to_MoveStatisticsScoreState(o)
13386 
13387 
13388 # Register MoveStatisticsScoreState in _IMP_core:
13389 _IMP_core.MoveStatisticsScoreState_swigregister(MoveStatisticsScoreState)
13390 IMP_PARTICLE_TYPE_INDEX = _IMP_core.IMP_PARTICLE_TYPE_INDEX
13391 
13392 class Typed(IMP.Decorator):
13393  r"""Proxy of C++ IMP::core::Typed class."""
13394 
13395  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13396 
13397  @staticmethod
13398  def get_type_key():
13399  r"""get_type_key() -> IntKey"""
13400  return _IMP_core.Typed_get_type_key()
13401 
13402  def __init__(self, *args):
13403  r"""
13404  __init__(Typed self) -> Typed
13405  __init__(Typed self, Model m, ParticleIndex id) -> Typed
13406  __init__(Typed self, _ParticleAdaptor d) -> Typed
13407  """
13408  _IMP_core.Typed_swiginit(self, _IMP_core.new_Typed(*args))
13409 
13410  def show(self, *args):
13411  r"""show(Typed self, _ostream out=std::cout)"""
13412  return _IMP_core.Typed_show(self, *args)
13413 
13414  @staticmethod
13415  def setup_particle(*args):
13416  r"""
13417  setup_particle(Model m, ParticleIndex pi, ParticleType t) -> Typed
13418  setup_particle(_ParticleAdaptor pa, ParticleType t) -> Typed
13419  """
13420  return _IMP_core.Typed_setup_particle(*args)
13421 
13422  @staticmethod
13423  def get_is_setup(*args):
13424  r"""
13425  get_is_setup(_ParticleAdaptor p) -> bool
13426  get_is_setup(Model m, ParticleIndex pi) -> bool
13427  """
13428  return _IMP_core.Typed_get_is_setup(*args)
13429 
13430  def get_type(self):
13431  r"""get_type(Typed self) -> ParticleType"""
13432  return _IMP_core.Typed_get_type(self)
13433 
13434  def set_type(self, pt):
13435  r"""set_type(Typed self, ParticleType pt)"""
13436  return _IMP_core.Typed_set_type(self, pt)
13437 
13438  def add_attribute(self, *args):
13439  r"""
13440  add_attribute(Typed self, FloatKey k, IMP::Float v, bool opt)
13441  add_attribute(Typed self, FloatKey a0, IMP::Float a1)
13442  add_attribute(Typed self, IntKey a0, IMP::Int a1)
13443  add_attribute(Typed self, FloatsKey a0, IMP::Floats a1)
13444  add_attribute(Typed self, IntsKey a0, IMP::Ints a1)
13445  add_attribute(Typed self, StringKey a0, IMP::String a1)
13446  add_attribute(Typed self, ParticleIndexKey a0, Particle a1)
13447  add_attribute(Typed self, ObjectKey a0, Object a1)
13448  add_attribute(Typed self, SparseFloatKey a0, IMP::Float a1)
13449  add_attribute(Typed self, SparseIntKey a0, IMP::Int a1)
13450  add_attribute(Typed self, SparseStringKey a0, IMP::String a1)
13451  add_attribute(Typed self, SparseParticleIndexKey a0, ParticleIndex a1)
13452  """
13453  return _IMP_core.Typed_add_attribute(self, *args)
13454 
13455  def get_value(self, *args):
13456  r"""
13457  get_value(Typed self, FloatKey a0) -> IMP::Float
13458  get_value(Typed self, IntKey a0) -> IMP::Int
13459  get_value(Typed self, FloatsKey a0) -> IMP::Floats
13460  get_value(Typed self, IntsKey a0) -> IMP::Ints
13461  get_value(Typed self, StringKey a0) -> IMP::String
13462  get_value(Typed self, ParticleIndexKey a0) -> Particle
13463  get_value(Typed self, ObjectKey a0) -> Object
13464  get_value(Typed self, SparseFloatKey a0) -> IMP::Float
13465  get_value(Typed self, SparseIntKey a0) -> IMP::Int
13466  get_value(Typed self, SparseStringKey a0) -> IMP::String
13467  get_value(Typed self, SparseParticleIndexKey a0) -> ParticleIndex
13468  """
13469  return _IMP_core.Typed_get_value(self, *args)
13470 
13471  def set_value(self, *args):
13472  r"""
13473  set_value(Typed self, FloatKey a0, IMP::Float a1)
13474  set_value(Typed self, IntKey a0, IMP::Int a1)
13475  set_value(Typed self, FloatsKey a0, IMP::Floats a1)
13476  set_value(Typed self, IntsKey a0, IMP::Ints a1)
13477  set_value(Typed self, StringKey a0, IMP::String a1)
13478  set_value(Typed self, ParticleIndexKey a0, Particle a1)
13479  set_value(Typed self, ObjectKey a0, Object a1)
13480  set_value(Typed self, SparseFloatKey a0, IMP::Float a1)
13481  set_value(Typed self, SparseIntKey a0, IMP::Int a1)
13482  set_value(Typed self, SparseStringKey a0, IMP::String a1)
13483  set_value(Typed self, SparseParticleIndexKey a0, ParticleIndex a1)
13484  """
13485  return _IMP_core.Typed_set_value(self, *args)
13486 
13487  def remove_attribute(self, *args):
13488  r"""
13489  remove_attribute(Typed self, FloatKey a0)
13490  remove_attribute(Typed self, IntKey a0)
13491  remove_attribute(Typed self, FloatsKey a0)
13492  remove_attribute(Typed self, IntsKey a0)
13493  remove_attribute(Typed self, StringKey a0)
13494  remove_attribute(Typed self, ParticleIndexKey a0)
13495  remove_attribute(Typed self, ObjectKey a0)
13496  remove_attribute(Typed self, SparseFloatKey a0)
13497  remove_attribute(Typed self, SparseIntKey a0)
13498  remove_attribute(Typed self, SparseStringKey a0)
13499  remove_attribute(Typed self, SparseParticleIndexKey a0)
13500  """
13501  return _IMP_core.Typed_remove_attribute(self, *args)
13502 
13503  def has_attribute(self, *args):
13504  r"""
13505  has_attribute(Typed self, FloatKey a0) -> bool
13506  has_attribute(Typed self, IntKey a0) -> bool
13507  has_attribute(Typed self, FloatsKey a0) -> bool
13508  has_attribute(Typed self, IntsKey a0) -> bool
13509  has_attribute(Typed self, StringKey a0) -> bool
13510  has_attribute(Typed self, ParticleIndexKey a0) -> bool
13511  has_attribute(Typed self, ObjectKey a0) -> bool
13512  has_attribute(Typed self, SparseFloatKey a0) -> bool
13513  has_attribute(Typed self, SparseIntKey a0) -> bool
13514  has_attribute(Typed self, SparseStringKey a0) -> bool
13515  has_attribute(Typed self, SparseParticleIndexKey a0) -> bool
13516  """
13517  return _IMP_core.Typed_has_attribute(self, *args)
13518 
13519  def get_derivative(self, a0):
13520  r"""get_derivative(Typed self, FloatKey a0) -> double"""
13521  return _IMP_core.Typed_get_derivative(self, a0)
13522 
13523  def get_name(self):
13524  r"""get_name(Typed self) -> std::string"""
13525  return _IMP_core.Typed_get_name(self)
13526 
13527  def clear_caches(self):
13528  r"""clear_caches(Typed self)"""
13529  return _IMP_core.Typed_clear_caches(self)
13530 
13531  def set_name(self, a0):
13532  r"""set_name(Typed self, std::string a0)"""
13533  return _IMP_core.Typed_set_name(self, a0)
13534 
13535  def set_check_level(self, a0):
13536  r"""set_check_level(Typed self, IMP::CheckLevel a0)"""
13537  return _IMP_core.Typed_set_check_level(self, a0)
13538 
13539  def add_to_derivative(self, a0, a1, a2):
13540  r"""add_to_derivative(Typed self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
13541  return _IMP_core.Typed_add_to_derivative(self, a0, a1, a2)
13542 
13543  def set_is_optimized(self, a0, a1):
13544  r"""set_is_optimized(Typed self, FloatKey a0, bool a1)"""
13545  return _IMP_core.Typed_set_is_optimized(self, a0, a1)
13546 
13547  def get_is_optimized(self, a0):
13548  r"""get_is_optimized(Typed self, FloatKey a0) -> bool"""
13549  return _IMP_core.Typed_get_is_optimized(self, a0)
13550 
13551  def get_check_level(self):
13552  r"""get_check_level(Typed self) -> IMP::CheckLevel"""
13553  return _IMP_core.Typed_get_check_level(self)
13554 
13555  def __eq__(self, *args):
13556  r"""
13557  __eq__(Typed self, Typed o) -> bool
13558  __eq__(Typed self, Particle d) -> bool
13559  """
13560  return _IMP_core.Typed___eq__(self, *args)
13561 
13562  def __ne__(self, *args):
13563  r"""
13564  __ne__(Typed self, Typed o) -> bool
13565  __ne__(Typed self, Particle d) -> bool
13566  """
13567  return _IMP_core.Typed___ne__(self, *args)
13568 
13569  def __le__(self, *args):
13570  r"""
13571  __le__(Typed self, Typed o) -> bool
13572  __le__(Typed self, Particle d) -> bool
13573  """
13574  return _IMP_core.Typed___le__(self, *args)
13575 
13576  def __lt__(self, *args):
13577  r"""
13578  __lt__(Typed self, Typed o) -> bool
13579  __lt__(Typed self, Particle d) -> bool
13580  """
13581  return _IMP_core.Typed___lt__(self, *args)
13582 
13583  def __ge__(self, *args):
13584  r"""
13585  __ge__(Typed self, Typed o) -> bool
13586  __ge__(Typed self, Particle d) -> bool
13587  """
13588  return _IMP_core.Typed___ge__(self, *args)
13589 
13590  def __gt__(self, *args):
13591  r"""
13592  __gt__(Typed self, Typed o) -> bool
13593  __gt__(Typed self, Particle d) -> bool
13594  """
13595  return _IMP_core.Typed___gt__(self, *args)
13596 
13597  def __hash__(self):
13598  r"""__hash__(Typed self) -> std::size_t"""
13599  return _IMP_core.Typed___hash__(self)
13600 
13601  def __str__(self):
13602  r"""__str__(Typed self) -> std::string"""
13603  return _IMP_core.Typed___str__(self)
13604 
13605  def __repr__(self):
13606  r"""__repr__(Typed self) -> std::string"""
13607  return _IMP_core.Typed___repr__(self)
13608 
13609  def _get_as_binary(self):
13610  r"""_get_as_binary(Typed self) -> PyObject *"""
13611  return _IMP_core.Typed__get_as_binary(self)
13612 
13613  def _set_from_binary(self, p):
13614  r"""_set_from_binary(Typed self, PyObject * p)"""
13615  return _IMP_core.Typed__set_from_binary(self, p)
13616 
13617  def __getstate__(self):
13618  p = self._get_as_binary()
13619  if len(self.__dict__) > 1:
13620  d = self.__dict__.copy()
13621  del d['this']
13622  p = (d, p)
13623  return p
13624 
13625  def __setstate__(self, p):
13626  if not hasattr(self, 'this'):
13627  self.__init__()
13628  if isinstance(p, tuple):
13629  d, p = p
13630  self.__dict__.update(d)
13631  return self._set_from_binary(p)
13632 
13633  __swig_destroy__ = _IMP_core.delete_Typed
13634 
13635 # Register Typed in _IMP_core:
13636 _IMP_core.Typed_swigregister(Typed)
13637 
13638 def __lshift__(*args):
13639  r"""
13640  __lshift__(_ostream out, XYZ n) -> _ostream
13641  __lshift__(_ostream out, XYZR n) -> _ostream
13642  __lshift__(_ostream out, Direction n) -> _ostream
13643  __lshift__(_ostream out, DirectionAngle n) -> _ostream
13644  __lshift__(_ostream out, Surface n) -> _ostream
13645  __lshift__(_ostream out, Centroid n) -> _ostream
13646  __lshift__(_ostream out, Cover n) -> _ostream
13647  __lshift__(_ostream out, Reference n) -> _ostream
13648  __lshift__(_ostream out, RigidMember n) -> _ostream
13649  __lshift__(_ostream out, RigidBody n) -> _ostream
13650  __lshift__(_ostream out, Gaussian n) -> _ostream
13651  __lshift__(_ostream out, Typed n) -> _ostream
13652  """
13653  return _IMP_core.__lshift__(*args)
13654 class WriteRestraintScoresOptimizerState(IMP.OptimizerState):
13655  r"""Proxy of C++ IMP::core::WriteRestraintScoresOptimizerState class."""
13656 
13657  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13658 
13659  def __init__(self, rs, out):
13660  r"""__init__(WriteRestraintScoresOptimizerState self, IMP::Restraints const & rs, TextOutput out) -> WriteRestraintScoresOptimizerState"""
13661  _IMP_core.WriteRestraintScoresOptimizerState_swiginit(self, _IMP_core.new_WriteRestraintScoresOptimizerState(rs, out))
13662 
13663  def get_version_info(self):
13664  r"""get_version_info(WriteRestraintScoresOptimizerState self) -> VersionInfo"""
13665  return _IMP_core.WriteRestraintScoresOptimizerState_get_version_info(self)
13666  __swig_destroy__ = _IMP_core.delete_WriteRestraintScoresOptimizerState
13667 
13668  def __str__(self):
13669  r"""__str__(WriteRestraintScoresOptimizerState self) -> std::string"""
13670  return _IMP_core.WriteRestraintScoresOptimizerState___str__(self)
13671 
13672  def __repr__(self):
13673  r"""__repr__(WriteRestraintScoresOptimizerState self) -> std::string"""
13674  return _IMP_core.WriteRestraintScoresOptimizerState___repr__(self)
13675 
13676  @staticmethod
13677  def get_from(o):
13678  return _object_cast_to_WriteRestraintScoresOptimizerState(o)
13679 
13680 
13681 # Register WriteRestraintScoresOptimizerState in _IMP_core:
13682 _IMP_core.WriteRestraintScoresOptimizerState_swigregister(WriteRestraintScoresOptimizerState)
13683 
13684 def assign_blame(rs, ps, attribute):
13685  r"""assign_blame(IMP::RestraintsTemp const & rs, IMP::ParticlesTemp const & ps, FloatKey attribute)"""
13686  return _IMP_core.assign_blame(rs, ps, attribute)
13687 
13688 def create_blame_geometries(*args):
13689  r"""create_blame_geometries(IMP::RestraintsTemp const & rs, IMP::ParticlesTemp const & ps, double max=NO_MAX, std::string name=std::string()) -> IMP::display::Geometries"""
13690  return _IMP_core.create_blame_geometries(*args)
13691 class MultipleBinormalRestraint(IMP.Restraint):
13692  r"""Proxy of C++ IMP::core::MultipleBinormalRestraint class."""
13693 
13694  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13695 
13696  def __init__(self, m, q1, q2):
13697  r"""__init__(MultipleBinormalRestraint self, Model m, IMP::ParticleIndexQuad const & q1, IMP::ParticleIndexQuad const & q2) -> MultipleBinormalRestraint"""
13698  _IMP_core.MultipleBinormalRestraint_swiginit(self, _IMP_core.new_MultipleBinormalRestraint(m, q1, q2))
13699 
13700  def add_term(self, term):
13701  r"""add_term(MultipleBinormalRestraint self, BinormalTerm term)"""
13702  return _IMP_core.MultipleBinormalRestraint_add_term(self, term)
13703 
13704  def do_get_inputs(self):
13705  r"""do_get_inputs(MultipleBinormalRestraint self) -> IMP::ModelObjectsTemp"""
13706  return _IMP_core.MultipleBinormalRestraint_do_get_inputs(self)
13707 
13708  def get_version_info(self):
13709  r"""get_version_info(MultipleBinormalRestraint self) -> VersionInfo"""
13710  return _IMP_core.MultipleBinormalRestraint_get_version_info(self)
13711  __swig_destroy__ = _IMP_core.delete_MultipleBinormalRestraint
13712 
13713  def __str__(self):
13714  r"""__str__(MultipleBinormalRestraint self) -> std::string"""
13715  return _IMP_core.MultipleBinormalRestraint___str__(self)
13716 
13717  def __repr__(self):
13718  r"""__repr__(MultipleBinormalRestraint self) -> std::string"""
13719  return _IMP_core.MultipleBinormalRestraint___repr__(self)
13720 
13721  @staticmethod
13722  def get_from(o):
13723  return _object_cast_to_MultipleBinormalRestraint(o)
13724 
13725 
13726 # Register MultipleBinormalRestraint in _IMP_core:
13727 _IMP_core.MultipleBinormalRestraint_swigregister(MultipleBinormalRestraint)
13728 class BinormalTerm(object):
13729  r"""Proxy of C++ IMP::core::BinormalTerm class."""
13730 
13731  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13732 
13733  def __init__(self):
13734  r"""__init__(BinormalTerm self) -> BinormalTerm"""
13735  _IMP_core.BinormalTerm_swiginit(self, _IMP_core.new_BinormalTerm())
13736 
13737  def set_correlation(self, correlation):
13738  r"""set_correlation(BinormalTerm self, double correlation)"""
13739  return _IMP_core.BinormalTerm_set_correlation(self, correlation)
13740 
13741  def set_weight(self, weight):
13742  r"""set_weight(BinormalTerm self, double weight)"""
13743  return _IMP_core.BinormalTerm_set_weight(self, weight)
13744 
13745  def set_means(self, means):
13746  r"""set_means(BinormalTerm self, IMP::FloatPair means)"""
13747  return _IMP_core.BinormalTerm_set_means(self, means)
13748 
13749  def set_standard_deviations(self, stdevs):
13750  r"""set_standard_deviations(BinormalTerm self, IMP::FloatPair stdevs)"""
13751  return _IMP_core.BinormalTerm_set_standard_deviations(self, stdevs)
13752 
13753  def show(self, *args):
13754  r"""show(BinormalTerm self, _ostream out=std::cout)"""
13755  return _IMP_core.BinormalTerm_show(self, *args)
13756 
13757  def __str__(self):
13758  r"""__str__(BinormalTerm self) -> std::string"""
13759  return _IMP_core.BinormalTerm___str__(self)
13760 
13761  def __repr__(self):
13762  r"""__repr__(BinormalTerm self) -> std::string"""
13763  return _IMP_core.BinormalTerm___repr__(self)
13764 
13765  def _get_as_binary(self):
13766  r"""_get_as_binary(BinormalTerm self) -> PyObject *"""
13767  return _IMP_core.BinormalTerm__get_as_binary(self)
13768 
13769  def _set_from_binary(self, p):
13770  r"""_set_from_binary(BinormalTerm self, PyObject * p)"""
13771  return _IMP_core.BinormalTerm__set_from_binary(self, p)
13772 
13773  def __getstate__(self):
13774  p = self._get_as_binary()
13775  if len(self.__dict__) > 1:
13776  d = self.__dict__.copy()
13777  del d['this']
13778  p = (d, p)
13779  return p
13780 
13781  def __setstate__(self, p):
13782  if not hasattr(self, 'this'):
13783  self.__init__()
13784  if isinstance(p, tuple):
13785  d, p = p
13786  self.__dict__.update(d)
13787  return self._set_from_binary(p)
13788 
13789  __swig_destroy__ = _IMP_core.delete_BinormalTerm
13790 
13791 # Register BinormalTerm in _IMP_core:
13792 _IMP_core.BinormalTerm_swigregister(BinormalTerm)
13793 class Provenance(IMP.Decorator):
13794  r"""Proxy of C++ IMP::core::Provenance class."""
13795 
13796  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13797 
13798  def get_previous(self):
13799  r"""get_previous(Provenance self) -> Provenance"""
13800  return _IMP_core.Provenance_get_previous(self)
13801 
13802  def set_previous(self, p):
13803  r"""set_previous(Provenance self, Provenance p)"""
13804  return _IMP_core.Provenance_set_previous(self, p)
13805 
13806  def __init__(self, *args):
13807  r"""
13808  __init__(Provenance self) -> Provenance
13809  __init__(Provenance self, Model m, ParticleIndex id) -> Provenance
13810  __init__(Provenance self, _ParticleAdaptor d) -> Provenance
13811  """
13812  _IMP_core.Provenance_swiginit(self, _IMP_core.new_Provenance(*args))
13813 
13814  @staticmethod
13815  def get_is_setup(*args):
13816  r"""
13817  get_is_setup(Model m, ParticleIndex pi) -> bool
13818  get_is_setup(_ParticleAdaptor p) -> bool
13819  """
13820  return _IMP_core.Provenance_get_is_setup(*args)
13821 
13822  def show(self, *args):
13823  r"""show(Provenance self, _ostream out=std::cout)"""
13824  return _IMP_core.Provenance_show(self, *args)
13825 
13826  @staticmethod
13827  def setup_particle(*args):
13828  r"""
13829  setup_particle(Model m, ParticleIndex pi) -> Provenance
13830  setup_particle(_ParticleAdaptor pa) -> Provenance
13831  """
13832  return _IMP_core.Provenance_setup_particle(*args)
13833 
13834  def add_attribute(self, *args):
13835  r"""
13836  add_attribute(Provenance self, FloatKey k, IMP::Float v, bool opt)
13837  add_attribute(Provenance self, FloatKey a0, IMP::Float a1)
13838  add_attribute(Provenance self, IntKey a0, IMP::Int a1)
13839  add_attribute(Provenance self, FloatsKey a0, IMP::Floats a1)
13840  add_attribute(Provenance self, IntsKey a0, IMP::Ints a1)
13841  add_attribute(Provenance self, StringKey a0, IMP::String a1)
13842  add_attribute(Provenance self, ParticleIndexKey a0, Particle a1)
13843  add_attribute(Provenance self, ObjectKey a0, Object a1)
13844  add_attribute(Provenance self, SparseFloatKey a0, IMP::Float a1)
13845  add_attribute(Provenance self, SparseIntKey a0, IMP::Int a1)
13846  add_attribute(Provenance self, SparseStringKey a0, IMP::String a1)
13847  add_attribute(Provenance self, SparseParticleIndexKey a0, ParticleIndex a1)
13848  """
13849  return _IMP_core.Provenance_add_attribute(self, *args)
13850 
13851  def get_value(self, *args):
13852  r"""
13853  get_value(Provenance self, FloatKey a0) -> IMP::Float
13854  get_value(Provenance self, IntKey a0) -> IMP::Int
13855  get_value(Provenance self, FloatsKey a0) -> IMP::Floats
13856  get_value(Provenance self, IntsKey a0) -> IMP::Ints
13857  get_value(Provenance self, StringKey a0) -> IMP::String
13858  get_value(Provenance self, ParticleIndexKey a0) -> Particle
13859  get_value(Provenance self, ObjectKey a0) -> Object
13860  get_value(Provenance self, SparseFloatKey a0) -> IMP::Float
13861  get_value(Provenance self, SparseIntKey a0) -> IMP::Int
13862  get_value(Provenance self, SparseStringKey a0) -> IMP::String
13863  get_value(Provenance self, SparseParticleIndexKey a0) -> ParticleIndex
13864  """
13865  return _IMP_core.Provenance_get_value(self, *args)
13866 
13867  def set_value(self, *args):
13868  r"""
13869  set_value(Provenance self, FloatKey a0, IMP::Float a1)
13870  set_value(Provenance self, IntKey a0, IMP::Int a1)
13871  set_value(Provenance self, FloatsKey a0, IMP::Floats a1)
13872  set_value(Provenance self, IntsKey a0, IMP::Ints a1)
13873  set_value(Provenance self, StringKey a0, IMP::String a1)
13874  set_value(Provenance self, ParticleIndexKey a0, Particle a1)
13875  set_value(Provenance self, ObjectKey a0, Object a1)
13876  set_value(Provenance self, SparseFloatKey a0, IMP::Float a1)
13877  set_value(Provenance self, SparseIntKey a0, IMP::Int a1)
13878  set_value(Provenance self, SparseStringKey a0, IMP::String a1)
13879  set_value(Provenance self, SparseParticleIndexKey a0, ParticleIndex a1)
13880  """
13881  return _IMP_core.Provenance_set_value(self, *args)
13882 
13883  def remove_attribute(self, *args):
13884  r"""
13885  remove_attribute(Provenance self, FloatKey a0)
13886  remove_attribute(Provenance self, IntKey a0)
13887  remove_attribute(Provenance self, FloatsKey a0)
13888  remove_attribute(Provenance self, IntsKey a0)
13889  remove_attribute(Provenance self, StringKey a0)
13890  remove_attribute(Provenance self, ParticleIndexKey a0)
13891  remove_attribute(Provenance self, ObjectKey a0)
13892  remove_attribute(Provenance self, SparseFloatKey a0)
13893  remove_attribute(Provenance self, SparseIntKey a0)
13894  remove_attribute(Provenance self, SparseStringKey a0)
13895  remove_attribute(Provenance self, SparseParticleIndexKey a0)
13896  """
13897  return _IMP_core.Provenance_remove_attribute(self, *args)
13898 
13899  def has_attribute(self, *args):
13900  r"""
13901  has_attribute(Provenance self, FloatKey a0) -> bool
13902  has_attribute(Provenance self, IntKey a0) -> bool
13903  has_attribute(Provenance self, FloatsKey a0) -> bool
13904  has_attribute(Provenance self, IntsKey a0) -> bool
13905  has_attribute(Provenance self, StringKey a0) -> bool
13906  has_attribute(Provenance self, ParticleIndexKey a0) -> bool
13907  has_attribute(Provenance self, ObjectKey a0) -> bool
13908  has_attribute(Provenance self, SparseFloatKey a0) -> bool
13909  has_attribute(Provenance self, SparseIntKey a0) -> bool
13910  has_attribute(Provenance self, SparseStringKey a0) -> bool
13911  has_attribute(Provenance self, SparseParticleIndexKey a0) -> bool
13912  """
13913  return _IMP_core.Provenance_has_attribute(self, *args)
13914 
13915  def get_derivative(self, a0):
13916  r"""get_derivative(Provenance self, FloatKey a0) -> double"""
13917  return _IMP_core.Provenance_get_derivative(self, a0)
13918 
13919  def get_name(self):
13920  r"""get_name(Provenance self) -> std::string"""
13921  return _IMP_core.Provenance_get_name(self)
13922 
13923  def clear_caches(self):
13924  r"""clear_caches(Provenance self)"""
13925  return _IMP_core.Provenance_clear_caches(self)
13926 
13927  def set_name(self, a0):
13928  r"""set_name(Provenance self, std::string a0)"""
13929  return _IMP_core.Provenance_set_name(self, a0)
13930 
13931  def set_check_level(self, a0):
13932  r"""set_check_level(Provenance self, IMP::CheckLevel a0)"""
13933  return _IMP_core.Provenance_set_check_level(self, a0)
13934 
13935  def add_to_derivative(self, a0, a1, a2):
13936  r"""add_to_derivative(Provenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
13937  return _IMP_core.Provenance_add_to_derivative(self, a0, a1, a2)
13938 
13939  def set_is_optimized(self, a0, a1):
13940  r"""set_is_optimized(Provenance self, FloatKey a0, bool a1)"""
13941  return _IMP_core.Provenance_set_is_optimized(self, a0, a1)
13942 
13943  def get_is_optimized(self, a0):
13944  r"""get_is_optimized(Provenance self, FloatKey a0) -> bool"""
13945  return _IMP_core.Provenance_get_is_optimized(self, a0)
13946 
13947  def get_check_level(self):
13948  r"""get_check_level(Provenance self) -> IMP::CheckLevel"""
13949  return _IMP_core.Provenance_get_check_level(self)
13950 
13951  def __eq__(self, *args):
13952  r"""
13953  __eq__(Provenance self, Provenance o) -> bool
13954  __eq__(Provenance self, Particle d) -> bool
13955  """
13956  return _IMP_core.Provenance___eq__(self, *args)
13957 
13958  def __ne__(self, *args):
13959  r"""
13960  __ne__(Provenance self, Provenance o) -> bool
13961  __ne__(Provenance self, Particle d) -> bool
13962  """
13963  return _IMP_core.Provenance___ne__(self, *args)
13964 
13965  def __le__(self, *args):
13966  r"""
13967  __le__(Provenance self, Provenance o) -> bool
13968  __le__(Provenance self, Particle d) -> bool
13969  """
13970  return _IMP_core.Provenance___le__(self, *args)
13971 
13972  def __lt__(self, *args):
13973  r"""
13974  __lt__(Provenance self, Provenance o) -> bool
13975  __lt__(Provenance self, Particle d) -> bool
13976  """
13977  return _IMP_core.Provenance___lt__(self, *args)
13978 
13979  def __ge__(self, *args):
13980  r"""
13981  __ge__(Provenance self, Provenance o) -> bool
13982  __ge__(Provenance self, Particle d) -> bool
13983  """
13984  return _IMP_core.Provenance___ge__(self, *args)
13985 
13986  def __gt__(self, *args):
13987  r"""
13988  __gt__(Provenance self, Provenance o) -> bool
13989  __gt__(Provenance self, Particle d) -> bool
13990  """
13991  return _IMP_core.Provenance___gt__(self, *args)
13992 
13993  def __hash__(self):
13994  r"""__hash__(Provenance self) -> std::size_t"""
13995  return _IMP_core.Provenance___hash__(self)
13996 
13997  def __str__(self):
13998  r"""__str__(Provenance self) -> std::string"""
13999  return _IMP_core.Provenance___str__(self)
14000 
14001  def __repr__(self):
14002  r"""__repr__(Provenance self) -> std::string"""
14003  return _IMP_core.Provenance___repr__(self)
14004 
14005  def _get_as_binary(self):
14006  r"""_get_as_binary(Provenance self) -> PyObject *"""
14007  return _IMP_core.Provenance__get_as_binary(self)
14008 
14009  def _set_from_binary(self, p):
14010  r"""_set_from_binary(Provenance self, PyObject * p)"""
14011  return _IMP_core.Provenance__set_from_binary(self, p)
14012 
14013  def __getstate__(self):
14014  p = self._get_as_binary()
14015  if len(self.__dict__) > 1:
14016  d = self.__dict__.copy()
14017  del d['this']
14018  p = (d, p)
14019  return p
14020 
14021  def __setstate__(self, p):
14022  if not hasattr(self, 'this'):
14023  self.__init__()
14024  if isinstance(p, tuple):
14025  d, p = p
14026  self.__dict__.update(d)
14027  return self._set_from_binary(p)
14028 
14029  __swig_destroy__ = _IMP_core.delete_Provenance
14030 
14031 # Register Provenance in _IMP_core:
14032 _IMP_core.Provenance_swigregister(Provenance)
14033 class StructureProvenance(Provenance):
14034  r"""Proxy of C++ IMP::core::StructureProvenance class."""
14035 
14036  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
14037 
14038  def set_filename(self, filename):
14039  r"""set_filename(StructureProvenance self, std::string filename)"""
14040  return _IMP_core.StructureProvenance_set_filename(self, filename)
14041 
14042  def get_filename(self):
14043  r"""get_filename(StructureProvenance self) -> std::string"""
14044  return _IMP_core.StructureProvenance_get_filename(self)
14045 
14046  def set_chain_id(self, chain_id):
14047  r"""set_chain_id(StructureProvenance self, std::string chain_id)"""
14048  return _IMP_core.StructureProvenance_set_chain_id(self, chain_id)
14049 
14050  def get_chain_id(self):
14051  r"""get_chain_id(StructureProvenance self) -> std::string"""
14052  return _IMP_core.StructureProvenance_get_chain_id(self)
14053 
14054  def set_residue_offset(self, residue_offset):
14055  r"""set_residue_offset(StructureProvenance self, int residue_offset)"""
14056  return _IMP_core.StructureProvenance_set_residue_offset(self, residue_offset)
14057 
14058  def get_residue_offset(self):
14059  r"""get_residue_offset(StructureProvenance self) -> int"""
14060  return _IMP_core.StructureProvenance_get_residue_offset(self)
14061 
14062  def __init__(self, *args):
14063  r"""
14064  __init__(StructureProvenance self) -> StructureProvenance
14065  __init__(StructureProvenance self, Model m, ParticleIndex id) -> StructureProvenance
14066  __init__(StructureProvenance self, _ParticleAdaptor d) -> StructureProvenance
14067  """
14068  _IMP_core.StructureProvenance_swiginit(self, _IMP_core.new_StructureProvenance(*args))
14069 
14070  @staticmethod
14071  def get_is_setup(*args):
14072  r"""
14073  get_is_setup(Model m, ParticleIndex pi) -> bool
14074  get_is_setup(_ParticleAdaptor p) -> bool
14075  """
14076  return _IMP_core.StructureProvenance_get_is_setup(*args)
14077 
14078  def show(self, *args):
14079  r"""show(StructureProvenance self, _ostream out=std::cout)"""
14080  return _IMP_core.StructureProvenance_show(self, *args)
14081 
14082  @staticmethod
14083  def setup_particle(*args):
14084  r"""
14085  setup_particle(Model m, ParticleIndex pi, std::string filename, std::string chain_id, int residue_offset) -> StructureProvenance
14086  setup_particle(_ParticleAdaptor pa, std::string filename, std::string chain_id, int residue_offset) -> StructureProvenance
14087  setup_particle(Model m, ParticleIndex pi, std::string filename, std::string chain_id) -> StructureProvenance
14088  setup_particle(_ParticleAdaptor pa, std::string filename, std::string chain_id) -> StructureProvenance
14089  setup_particle(Model m, ParticleIndex pi, StructureProvenance o) -> StructureProvenance
14090  setup_particle(_ParticleAdaptor pa, StructureProvenance o) -> StructureProvenance
14091  """
14092  return _IMP_core.StructureProvenance_setup_particle(*args)
14093 
14094  def add_attribute(self, *args):
14095  r"""
14096  add_attribute(StructureProvenance self, FloatKey k, IMP::Float v, bool opt)
14097  add_attribute(StructureProvenance self, FloatKey a0, IMP::Float a1)
14098  add_attribute(StructureProvenance self, IntKey a0, IMP::Int a1)
14099  add_attribute(StructureProvenance self, FloatsKey a0, IMP::Floats a1)
14100  add_attribute(StructureProvenance self, IntsKey a0, IMP::Ints a1)
14101  add_attribute(StructureProvenance self, StringKey a0, IMP::String a1)
14102  add_attribute(StructureProvenance self, ParticleIndexKey a0, Particle a1)
14103  add_attribute(StructureProvenance self, ObjectKey a0, Object a1)
14104  add_attribute(StructureProvenance self, SparseFloatKey a0, IMP::Float a1)
14105  add_attribute(StructureProvenance self, SparseIntKey a0, IMP::Int a1)
14106  add_attribute(StructureProvenance self, SparseStringKey a0, IMP::String a1)
14107  add_attribute(StructureProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14108  """
14109  return _IMP_core.StructureProvenance_add_attribute(self, *args)
14110 
14111  def get_value(self, *args):
14112  r"""
14113  get_value(StructureProvenance self, FloatKey a0) -> IMP::Float
14114  get_value(StructureProvenance self, IntKey a0) -> IMP::Int
14115  get_value(StructureProvenance self, FloatsKey a0) -> IMP::Floats
14116  get_value(StructureProvenance self, IntsKey a0) -> IMP::Ints
14117  get_value(StructureProvenance self, StringKey a0) -> IMP::String
14118  get_value(StructureProvenance self, ParticleIndexKey a0) -> Particle
14119  get_value(StructureProvenance self, ObjectKey a0) -> Object
14120  get_value(StructureProvenance self, SparseFloatKey a0) -> IMP::Float
14121  get_value(StructureProvenance self, SparseIntKey a0) -> IMP::Int
14122  get_value(StructureProvenance self, SparseStringKey a0) -> IMP::String
14123  get_value(StructureProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
14124  """
14125  return _IMP_core.StructureProvenance_get_value(self, *args)
14126 
14127  def set_value(self, *args):
14128  r"""
14129  set_value(StructureProvenance self, FloatKey a0, IMP::Float a1)
14130  set_value(StructureProvenance self, IntKey a0, IMP::Int a1)
14131  set_value(StructureProvenance self, FloatsKey a0, IMP::Floats a1)
14132  set_value(StructureProvenance self, IntsKey a0, IMP::Ints a1)
14133  set_value(StructureProvenance self, StringKey a0, IMP::String a1)
14134  set_value(StructureProvenance self, ParticleIndexKey a0, Particle a1)
14135  set_value(StructureProvenance self, ObjectKey a0, Object a1)
14136  set_value(StructureProvenance self, SparseFloatKey a0, IMP::Float a1)
14137  set_value(StructureProvenance self, SparseIntKey a0, IMP::Int a1)
14138  set_value(StructureProvenance self, SparseStringKey a0, IMP::String a1)
14139  set_value(StructureProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14140  """
14141  return _IMP_core.StructureProvenance_set_value(self, *args)
14142 
14143  def remove_attribute(self, *args):
14144  r"""
14145  remove_attribute(StructureProvenance self, FloatKey a0)
14146  remove_attribute(StructureProvenance self, IntKey a0)
14147  remove_attribute(StructureProvenance self, FloatsKey a0)
14148  remove_attribute(StructureProvenance self, IntsKey a0)
14149  remove_attribute(StructureProvenance self, StringKey a0)
14150  remove_attribute(StructureProvenance self, ParticleIndexKey a0)
14151  remove_attribute(StructureProvenance self, ObjectKey a0)
14152  remove_attribute(StructureProvenance self, SparseFloatKey a0)
14153  remove_attribute(StructureProvenance self, SparseIntKey a0)
14154  remove_attribute(StructureProvenance self, SparseStringKey a0)
14155  remove_attribute(StructureProvenance self, SparseParticleIndexKey a0)
14156  """
14157  return _IMP_core.StructureProvenance_remove_attribute(self, *args)
14158 
14159  def has_attribute(self, *args):
14160  r"""
14161  has_attribute(StructureProvenance self, FloatKey a0) -> bool
14162  has_attribute(StructureProvenance self, IntKey a0) -> bool
14163  has_attribute(StructureProvenance self, FloatsKey a0) -> bool
14164  has_attribute(StructureProvenance self, IntsKey a0) -> bool
14165  has_attribute(StructureProvenance self, StringKey a0) -> bool
14166  has_attribute(StructureProvenance self, ParticleIndexKey a0) -> bool
14167  has_attribute(StructureProvenance self, ObjectKey a0) -> bool
14168  has_attribute(StructureProvenance self, SparseFloatKey a0) -> bool
14169  has_attribute(StructureProvenance self, SparseIntKey a0) -> bool
14170  has_attribute(StructureProvenance self, SparseStringKey a0) -> bool
14171  has_attribute(StructureProvenance self, SparseParticleIndexKey a0) -> bool
14172  """
14173  return _IMP_core.StructureProvenance_has_attribute(self, *args)
14174 
14175  def get_derivative(self, a0):
14176  r"""get_derivative(StructureProvenance self, FloatKey a0) -> double"""
14177  return _IMP_core.StructureProvenance_get_derivative(self, a0)
14178 
14179  def get_name(self):
14180  r"""get_name(StructureProvenance self) -> std::string"""
14181  return _IMP_core.StructureProvenance_get_name(self)
14182 
14183  def clear_caches(self):
14184  r"""clear_caches(StructureProvenance self)"""
14185  return _IMP_core.StructureProvenance_clear_caches(self)
14186 
14187  def set_name(self, a0):
14188  r"""set_name(StructureProvenance self, std::string a0)"""
14189  return _IMP_core.StructureProvenance_set_name(self, a0)
14190 
14191  def set_check_level(self, a0):
14192  r"""set_check_level(StructureProvenance self, IMP::CheckLevel a0)"""
14193  return _IMP_core.StructureProvenance_set_check_level(self, a0)
14194 
14195  def add_to_derivative(self, a0, a1, a2):
14196  r"""add_to_derivative(StructureProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
14197  return _IMP_core.StructureProvenance_add_to_derivative(self, a0, a1, a2)
14198 
14199  def set_is_optimized(self, a0, a1):
14200  r"""set_is_optimized(StructureProvenance self, FloatKey a0, bool a1)"""
14201  return _IMP_core.StructureProvenance_set_is_optimized(self, a0, a1)
14202 
14203  def get_is_optimized(self, a0):
14204  r"""get_is_optimized(StructureProvenance self, FloatKey a0) -> bool"""
14205  return _IMP_core.StructureProvenance_get_is_optimized(self, a0)
14206 
14207  def get_check_level(self):
14208  r"""get_check_level(StructureProvenance self) -> IMP::CheckLevel"""
14209  return _IMP_core.StructureProvenance_get_check_level(self)
14210 
14211  def __eq__(self, *args):
14212  r"""
14213  __eq__(StructureProvenance self, StructureProvenance o) -> bool
14214  __eq__(StructureProvenance self, Particle d) -> bool
14215  """
14216  return _IMP_core.StructureProvenance___eq__(self, *args)
14217 
14218  def __ne__(self, *args):
14219  r"""
14220  __ne__(StructureProvenance self, StructureProvenance o) -> bool
14221  __ne__(StructureProvenance self, Particle d) -> bool
14222  """
14223  return _IMP_core.StructureProvenance___ne__(self, *args)
14224 
14225  def __le__(self, *args):
14226  r"""
14227  __le__(StructureProvenance self, StructureProvenance o) -> bool
14228  __le__(StructureProvenance self, Particle d) -> bool
14229  """
14230  return _IMP_core.StructureProvenance___le__(self, *args)
14231 
14232  def __lt__(self, *args):
14233  r"""
14234  __lt__(StructureProvenance self, StructureProvenance o) -> bool
14235  __lt__(StructureProvenance self, Particle d) -> bool
14236  """
14237  return _IMP_core.StructureProvenance___lt__(self, *args)
14238 
14239  def __ge__(self, *args):
14240  r"""
14241  __ge__(StructureProvenance self, StructureProvenance o) -> bool
14242  __ge__(StructureProvenance self, Particle d) -> bool
14243  """
14244  return _IMP_core.StructureProvenance___ge__(self, *args)
14245 
14246  def __gt__(self, *args):
14247  r"""
14248  __gt__(StructureProvenance self, StructureProvenance o) -> bool
14249  __gt__(StructureProvenance self, Particle d) -> bool
14250  """
14251  return _IMP_core.StructureProvenance___gt__(self, *args)
14252 
14253  def __hash__(self):
14254  r"""__hash__(StructureProvenance self) -> std::size_t"""
14255  return _IMP_core.StructureProvenance___hash__(self)
14256 
14257  def __str__(self):
14258  r"""__str__(StructureProvenance self) -> std::string"""
14259  return _IMP_core.StructureProvenance___str__(self)
14260 
14261  def __repr__(self):
14262  r"""__repr__(StructureProvenance self) -> std::string"""
14263  return _IMP_core.StructureProvenance___repr__(self)
14264 
14265  def _get_as_binary(self):
14266  r"""_get_as_binary(StructureProvenance self) -> PyObject *"""
14267  return _IMP_core.StructureProvenance__get_as_binary(self)
14268 
14269  def _set_from_binary(self, p):
14270  r"""_set_from_binary(StructureProvenance self, PyObject * p)"""
14271  return _IMP_core.StructureProvenance__set_from_binary(self, p)
14272 
14273  def __getstate__(self):
14274  p = self._get_as_binary()
14275  if len(self.__dict__) > 1:
14276  d = self.__dict__.copy()
14277  del d['this']
14278  p = (d, p)
14279  return p
14280 
14281  def __setstate__(self, p):
14282  if not hasattr(self, 'this'):
14283  self.__init__()
14284  if isinstance(p, tuple):
14285  d, p = p
14286  self.__dict__.update(d)
14287  return self._set_from_binary(p)
14288 
14289  __swig_destroy__ = _IMP_core.delete_StructureProvenance
14290 
14291 # Register StructureProvenance in _IMP_core:
14292 _IMP_core.StructureProvenance_swigregister(StructureProvenance)
14293 class SampleProvenance(Provenance):
14294  r"""Proxy of C++ IMP::core::SampleProvenance class."""
14295 
14296  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
14297 
14298  def set_method(self, method):
14299  r"""set_method(SampleProvenance self, std::string method)"""
14300  return _IMP_core.SampleProvenance_set_method(self, method)
14301 
14302  def get_method(self):
14303  r"""get_method(SampleProvenance self) -> std::string"""
14304  return _IMP_core.SampleProvenance_get_method(self)
14305 
14306  def set_number_of_frames(self, frames):
14307  r"""set_number_of_frames(SampleProvenance self, int frames)"""
14308  return _IMP_core.SampleProvenance_set_number_of_frames(self, frames)
14309 
14310  def get_number_of_frames(self):
14311  r"""get_number_of_frames(SampleProvenance self) -> int"""
14312  return _IMP_core.SampleProvenance_get_number_of_frames(self)
14313 
14314  def set_number_of_iterations(self, iterations):
14315  r"""set_number_of_iterations(SampleProvenance self, int iterations)"""
14316  return _IMP_core.SampleProvenance_set_number_of_iterations(self, iterations)
14317 
14318  def get_number_of_iterations(self):
14319  r"""get_number_of_iterations(SampleProvenance self) -> int"""
14320  return _IMP_core.SampleProvenance_get_number_of_iterations(self)
14321 
14322  def set_number_of_replicas(self, replicas):
14323  r"""set_number_of_replicas(SampleProvenance self, int replicas)"""
14324  return _IMP_core.SampleProvenance_set_number_of_replicas(self, replicas)
14325 
14326  def get_number_of_replicas(self):
14327  r"""get_number_of_replicas(SampleProvenance self) -> int"""
14328  return _IMP_core.SampleProvenance_get_number_of_replicas(self)
14329 
14330  def __init__(self, *args):
14331  r"""
14332  __init__(SampleProvenance self) -> SampleProvenance
14333  __init__(SampleProvenance self, Model m, ParticleIndex id) -> SampleProvenance
14334  __init__(SampleProvenance self, _ParticleAdaptor d) -> SampleProvenance
14335  """
14336  _IMP_core.SampleProvenance_swiginit(self, _IMP_core.new_SampleProvenance(*args))
14337 
14338  @staticmethod
14339  def get_is_setup(*args):
14340  r"""
14341  get_is_setup(Model m, ParticleIndex pi) -> bool
14342  get_is_setup(_ParticleAdaptor p) -> bool
14343  """
14344  return _IMP_core.SampleProvenance_get_is_setup(*args)
14345 
14346  def show(self, *args):
14347  r"""show(SampleProvenance self, _ostream out=std::cout)"""
14348  return _IMP_core.SampleProvenance_show(self, *args)
14349 
14350  @staticmethod
14351  def setup_particle(*args):
14352  r"""
14353  setup_particle(Model m, ParticleIndex pi, std::string method, int frames, int iterations, int replicas) -> SampleProvenance
14354  setup_particle(_ParticleAdaptor pa, std::string method, int frames, int iterations, int replicas) -> SampleProvenance
14355  setup_particle(Model m, ParticleIndex pi, std::string method, int frames, int iterations) -> SampleProvenance
14356  setup_particle(_ParticleAdaptor pa, std::string method, int frames, int iterations) -> SampleProvenance
14357  setup_particle(Model m, ParticleIndex pi, SampleProvenance o) -> SampleProvenance
14358  setup_particle(_ParticleAdaptor pa, SampleProvenance o) -> SampleProvenance
14359  """
14360  return _IMP_core.SampleProvenance_setup_particle(*args)
14361 
14362  def add_attribute(self, *args):
14363  r"""
14364  add_attribute(SampleProvenance self, FloatKey k, IMP::Float v, bool opt)
14365  add_attribute(SampleProvenance self, FloatKey a0, IMP::Float a1)
14366  add_attribute(SampleProvenance self, IntKey a0, IMP::Int a1)
14367  add_attribute(SampleProvenance self, FloatsKey a0, IMP::Floats a1)
14368  add_attribute(SampleProvenance self, IntsKey a0, IMP::Ints a1)
14369  add_attribute(SampleProvenance self, StringKey a0, IMP::String a1)
14370  add_attribute(SampleProvenance self, ParticleIndexKey a0, Particle a1)
14371  add_attribute(SampleProvenance self, ObjectKey a0, Object a1)
14372  add_attribute(SampleProvenance self, SparseFloatKey a0, IMP::Float a1)
14373  add_attribute(SampleProvenance self, SparseIntKey a0, IMP::Int a1)
14374  add_attribute(SampleProvenance self, SparseStringKey a0, IMP::String a1)
14375  add_attribute(SampleProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14376  """
14377  return _IMP_core.SampleProvenance_add_attribute(self, *args)
14378 
14379  def get_value(self, *args):
14380  r"""
14381  get_value(SampleProvenance self, FloatKey a0) -> IMP::Float
14382  get_value(SampleProvenance self, IntKey a0) -> IMP::Int
14383  get_value(SampleProvenance self, FloatsKey a0) -> IMP::Floats
14384  get_value(SampleProvenance self, IntsKey a0) -> IMP::Ints
14385  get_value(SampleProvenance self, StringKey a0) -> IMP::String
14386  get_value(SampleProvenance self, ParticleIndexKey a0) -> Particle
14387  get_value(SampleProvenance self, ObjectKey a0) -> Object
14388  get_value(SampleProvenance self, SparseFloatKey a0) -> IMP::Float
14389  get_value(SampleProvenance self, SparseIntKey a0) -> IMP::Int
14390  get_value(SampleProvenance self, SparseStringKey a0) -> IMP::String
14391  get_value(SampleProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
14392  """
14393  return _IMP_core.SampleProvenance_get_value(self, *args)
14394 
14395  def set_value(self, *args):
14396  r"""
14397  set_value(SampleProvenance self, FloatKey a0, IMP::Float a1)
14398  set_value(SampleProvenance self, IntKey a0, IMP::Int a1)
14399  set_value(SampleProvenance self, FloatsKey a0, IMP::Floats a1)
14400  set_value(SampleProvenance self, IntsKey a0, IMP::Ints a1)
14401  set_value(SampleProvenance self, StringKey a0, IMP::String a1)
14402  set_value(SampleProvenance self, ParticleIndexKey a0, Particle a1)
14403  set_value(SampleProvenance self, ObjectKey a0, Object a1)
14404  set_value(SampleProvenance self, SparseFloatKey a0, IMP::Float a1)
14405  set_value(SampleProvenance self, SparseIntKey a0, IMP::Int a1)
14406  set_value(SampleProvenance self, SparseStringKey a0, IMP::String a1)
14407  set_value(SampleProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14408  """
14409  return _IMP_core.SampleProvenance_set_value(self, *args)
14410 
14411  def remove_attribute(self, *args):
14412  r"""
14413  remove_attribute(SampleProvenance self, FloatKey a0)
14414  remove_attribute(SampleProvenance self, IntKey a0)
14415  remove_attribute(SampleProvenance self, FloatsKey a0)
14416  remove_attribute(SampleProvenance self, IntsKey a0)
14417  remove_attribute(SampleProvenance self, StringKey a0)
14418  remove_attribute(SampleProvenance self, ParticleIndexKey a0)
14419  remove_attribute(SampleProvenance self, ObjectKey a0)
14420  remove_attribute(SampleProvenance self, SparseFloatKey a0)
14421  remove_attribute(SampleProvenance self, SparseIntKey a0)
14422  remove_attribute(SampleProvenance self, SparseStringKey a0)
14423  remove_attribute(SampleProvenance self, SparseParticleIndexKey a0)
14424  """
14425  return _IMP_core.SampleProvenance_remove_attribute(self, *args)
14426 
14427  def has_attribute(self, *args):
14428  r"""
14429  has_attribute(SampleProvenance self, FloatKey a0) -> bool
14430  has_attribute(SampleProvenance self, IntKey a0) -> bool
14431  has_attribute(SampleProvenance self, FloatsKey a0) -> bool
14432  has_attribute(SampleProvenance self, IntsKey a0) -> bool
14433  has_attribute(SampleProvenance self, StringKey a0) -> bool
14434  has_attribute(SampleProvenance self, ParticleIndexKey a0) -> bool
14435  has_attribute(SampleProvenance self, ObjectKey a0) -> bool
14436  has_attribute(SampleProvenance self, SparseFloatKey a0) -> bool
14437  has_attribute(SampleProvenance self, SparseIntKey a0) -> bool
14438  has_attribute(SampleProvenance self, SparseStringKey a0) -> bool
14439  has_attribute(SampleProvenance self, SparseParticleIndexKey a0) -> bool
14440  """
14441  return _IMP_core.SampleProvenance_has_attribute(self, *args)
14442 
14443  def get_derivative(self, a0):
14444  r"""get_derivative(SampleProvenance self, FloatKey a0) -> double"""
14445  return _IMP_core.SampleProvenance_get_derivative(self, a0)
14446 
14447  def get_name(self):
14448  r"""get_name(SampleProvenance self) -> std::string"""
14449  return _IMP_core.SampleProvenance_get_name(self)
14450 
14451  def clear_caches(self):
14452  r"""clear_caches(SampleProvenance self)"""
14453  return _IMP_core.SampleProvenance_clear_caches(self)
14454 
14455  def set_name(self, a0):
14456  r"""set_name(SampleProvenance self, std::string a0)"""
14457  return _IMP_core.SampleProvenance_set_name(self, a0)
14458 
14459  def set_check_level(self, a0):
14460  r"""set_check_level(SampleProvenance self, IMP::CheckLevel a0)"""
14461  return _IMP_core.SampleProvenance_set_check_level(self, a0)
14462 
14463  def add_to_derivative(self, a0, a1, a2):
14464  r"""add_to_derivative(SampleProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
14465  return _IMP_core.SampleProvenance_add_to_derivative(self, a0, a1, a2)
14466 
14467  def set_is_optimized(self, a0, a1):
14468  r"""set_is_optimized(SampleProvenance self, FloatKey a0, bool a1)"""
14469  return _IMP_core.SampleProvenance_set_is_optimized(self, a0, a1)
14470 
14471  def get_is_optimized(self, a0):
14472  r"""get_is_optimized(SampleProvenance self, FloatKey a0) -> bool"""
14473  return _IMP_core.SampleProvenance_get_is_optimized(self, a0)
14474 
14475  def get_check_level(self):
14476  r"""get_check_level(SampleProvenance self) -> IMP::CheckLevel"""
14477  return _IMP_core.SampleProvenance_get_check_level(self)
14478 
14479  def __eq__(self, *args):
14480  r"""
14481  __eq__(SampleProvenance self, SampleProvenance o) -> bool
14482  __eq__(SampleProvenance self, Particle d) -> bool
14483  """
14484  return _IMP_core.SampleProvenance___eq__(self, *args)
14485 
14486  def __ne__(self, *args):
14487  r"""
14488  __ne__(SampleProvenance self, SampleProvenance o) -> bool
14489  __ne__(SampleProvenance self, Particle d) -> bool
14490  """
14491  return _IMP_core.SampleProvenance___ne__(self, *args)
14492 
14493  def __le__(self, *args):
14494  r"""
14495  __le__(SampleProvenance self, SampleProvenance o) -> bool
14496  __le__(SampleProvenance self, Particle d) -> bool
14497  """
14498  return _IMP_core.SampleProvenance___le__(self, *args)
14499 
14500  def __lt__(self, *args):
14501  r"""
14502  __lt__(SampleProvenance self, SampleProvenance o) -> bool
14503  __lt__(SampleProvenance self, Particle d) -> bool
14504  """
14505  return _IMP_core.SampleProvenance___lt__(self, *args)
14506 
14507  def __ge__(self, *args):
14508  r"""
14509  __ge__(SampleProvenance self, SampleProvenance o) -> bool
14510  __ge__(SampleProvenance self, Particle d) -> bool
14511  """
14512  return _IMP_core.SampleProvenance___ge__(self, *args)
14513 
14514  def __gt__(self, *args):
14515  r"""
14516  __gt__(SampleProvenance self, SampleProvenance o) -> bool
14517  __gt__(SampleProvenance self, Particle d) -> bool
14518  """
14519  return _IMP_core.SampleProvenance___gt__(self, *args)
14520 
14521  def __hash__(self):
14522  r"""__hash__(SampleProvenance self) -> std::size_t"""
14523  return _IMP_core.SampleProvenance___hash__(self)
14524 
14525  def __str__(self):
14526  r"""__str__(SampleProvenance self) -> std::string"""
14527  return _IMP_core.SampleProvenance___str__(self)
14528 
14529  def __repr__(self):
14530  r"""__repr__(SampleProvenance self) -> std::string"""
14531  return _IMP_core.SampleProvenance___repr__(self)
14532 
14533  def _get_as_binary(self):
14534  r"""_get_as_binary(SampleProvenance self) -> PyObject *"""
14535  return _IMP_core.SampleProvenance__get_as_binary(self)
14536 
14537  def _set_from_binary(self, p):
14538  r"""_set_from_binary(SampleProvenance self, PyObject * p)"""
14539  return _IMP_core.SampleProvenance__set_from_binary(self, p)
14540 
14541  def __getstate__(self):
14542  p = self._get_as_binary()
14543  if len(self.__dict__) > 1:
14544  d = self.__dict__.copy()
14545  del d['this']
14546  p = (d, p)
14547  return p
14548 
14549  def __setstate__(self, p):
14550  if not hasattr(self, 'this'):
14551  self.__init__()
14552  if isinstance(p, tuple):
14553  d, p = p
14554  self.__dict__.update(d)
14555  return self._set_from_binary(p)
14556 
14557  __swig_destroy__ = _IMP_core.delete_SampleProvenance
14558 
14559 # Register SampleProvenance in _IMP_core:
14560 _IMP_core.SampleProvenance_swigregister(SampleProvenance)
14561 class CombineProvenance(Provenance):
14562  r"""Proxy of C++ IMP::core::CombineProvenance class."""
14563 
14564  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
14565 
14566  def set_number_of_frames(self, frames):
14567  r"""set_number_of_frames(CombineProvenance self, int frames)"""
14568  return _IMP_core.CombineProvenance_set_number_of_frames(self, frames)
14569 
14570  def get_number_of_frames(self):
14571  r"""get_number_of_frames(CombineProvenance self) -> int"""
14572  return _IMP_core.CombineProvenance_get_number_of_frames(self)
14573 
14574  def set_number_of_runs(self, runs):
14575  r"""set_number_of_runs(CombineProvenance self, int runs)"""
14576  return _IMP_core.CombineProvenance_set_number_of_runs(self, runs)
14577 
14578  def get_number_of_runs(self):
14579  r"""get_number_of_runs(CombineProvenance self) -> int"""
14580  return _IMP_core.CombineProvenance_get_number_of_runs(self)
14581 
14582  def __init__(self, *args):
14583  r"""
14584  __init__(CombineProvenance self) -> CombineProvenance
14585  __init__(CombineProvenance self, Model m, ParticleIndex id) -> CombineProvenance
14586  __init__(CombineProvenance self, _ParticleAdaptor d) -> CombineProvenance
14587  """
14588  _IMP_core.CombineProvenance_swiginit(self, _IMP_core.new_CombineProvenance(*args))
14589 
14590  @staticmethod
14591  def get_is_setup(*args):
14592  r"""
14593  get_is_setup(Model m, ParticleIndex pi) -> bool
14594  get_is_setup(_ParticleAdaptor p) -> bool
14595  """
14596  return _IMP_core.CombineProvenance_get_is_setup(*args)
14597 
14598  def show(self, *args):
14599  r"""show(CombineProvenance self, _ostream out=std::cout)"""
14600  return _IMP_core.CombineProvenance_show(self, *args)
14601 
14602  @staticmethod
14603  def setup_particle(*args):
14604  r"""
14605  setup_particle(Model m, ParticleIndex pi, int runs, int frames) -> CombineProvenance
14606  setup_particle(_ParticleAdaptor pa, int runs, int frames) -> CombineProvenance
14607  setup_particle(Model m, ParticleIndex pi, CombineProvenance o) -> CombineProvenance
14608  setup_particle(_ParticleAdaptor pa, CombineProvenance o) -> CombineProvenance
14609  """
14610  return _IMP_core.CombineProvenance_setup_particle(*args)
14611 
14612  def add_attribute(self, *args):
14613  r"""
14614  add_attribute(CombineProvenance self, FloatKey k, IMP::Float v, bool opt)
14615  add_attribute(CombineProvenance self, FloatKey a0, IMP::Float a1)
14616  add_attribute(CombineProvenance self, IntKey a0, IMP::Int a1)
14617  add_attribute(CombineProvenance self, FloatsKey a0, IMP::Floats a1)
14618  add_attribute(CombineProvenance self, IntsKey a0, IMP::Ints a1)
14619  add_attribute(CombineProvenance self, StringKey a0, IMP::String a1)
14620  add_attribute(CombineProvenance self, ParticleIndexKey a0, Particle a1)
14621  add_attribute(CombineProvenance self, ObjectKey a0, Object a1)
14622  add_attribute(CombineProvenance self, SparseFloatKey a0, IMP::Float a1)
14623  add_attribute(CombineProvenance self, SparseIntKey a0, IMP::Int a1)
14624  add_attribute(CombineProvenance self, SparseStringKey a0, IMP::String a1)
14625  add_attribute(CombineProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14626  """
14627  return _IMP_core.CombineProvenance_add_attribute(self, *args)
14628 
14629  def get_value(self, *args):
14630  r"""
14631  get_value(CombineProvenance self, FloatKey a0) -> IMP::Float
14632  get_value(CombineProvenance self, IntKey a0) -> IMP::Int
14633  get_value(CombineProvenance self, FloatsKey a0) -> IMP::Floats
14634  get_value(CombineProvenance self, IntsKey a0) -> IMP::Ints
14635  get_value(CombineProvenance self, StringKey a0) -> IMP::String
14636  get_value(CombineProvenance self, ParticleIndexKey a0) -> Particle
14637  get_value(CombineProvenance self, ObjectKey a0) -> Object
14638  get_value(CombineProvenance self, SparseFloatKey a0) -> IMP::Float
14639  get_value(CombineProvenance self, SparseIntKey a0) -> IMP::Int
14640  get_value(CombineProvenance self, SparseStringKey a0) -> IMP::String
14641  get_value(CombineProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
14642  """
14643  return _IMP_core.CombineProvenance_get_value(self, *args)
14644 
14645  def set_value(self, *args):
14646  r"""
14647  set_value(CombineProvenance self, FloatKey a0, IMP::Float a1)
14648  set_value(CombineProvenance self, IntKey a0, IMP::Int a1)
14649  set_value(CombineProvenance self, FloatsKey a0, IMP::Floats a1)
14650  set_value(CombineProvenance self, IntsKey a0, IMP::Ints a1)
14651  set_value(CombineProvenance self, StringKey a0, IMP::String a1)
14652  set_value(CombineProvenance self, ParticleIndexKey a0, Particle a1)
14653  set_value(CombineProvenance self, ObjectKey a0, Object a1)
14654  set_value(CombineProvenance self, SparseFloatKey a0, IMP::Float a1)
14655  set_value(CombineProvenance self, SparseIntKey a0, IMP::Int a1)
14656  set_value(CombineProvenance self, SparseStringKey a0, IMP::String a1)
14657  set_value(CombineProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14658  """
14659  return _IMP_core.CombineProvenance_set_value(self, *args)
14660 
14661  def remove_attribute(self, *args):
14662  r"""
14663  remove_attribute(CombineProvenance self, FloatKey a0)
14664  remove_attribute(CombineProvenance self, IntKey a0)
14665  remove_attribute(CombineProvenance self, FloatsKey a0)
14666  remove_attribute(CombineProvenance self, IntsKey a0)
14667  remove_attribute(CombineProvenance self, StringKey a0)
14668  remove_attribute(CombineProvenance self, ParticleIndexKey a0)
14669  remove_attribute(CombineProvenance self, ObjectKey a0)
14670  remove_attribute(CombineProvenance self, SparseFloatKey a0)
14671  remove_attribute(CombineProvenance self, SparseIntKey a0)
14672  remove_attribute(CombineProvenance self, SparseStringKey a0)
14673  remove_attribute(CombineProvenance self, SparseParticleIndexKey a0)
14674  """
14675  return _IMP_core.CombineProvenance_remove_attribute(self, *args)
14676 
14677  def has_attribute(self, *args):
14678  r"""
14679  has_attribute(CombineProvenance self, FloatKey a0) -> bool
14680  has_attribute(CombineProvenance self, IntKey a0) -> bool
14681  has_attribute(CombineProvenance self, FloatsKey a0) -> bool
14682  has_attribute(CombineProvenance self, IntsKey a0) -> bool
14683  has_attribute(CombineProvenance self, StringKey a0) -> bool
14684  has_attribute(CombineProvenance self, ParticleIndexKey a0) -> bool
14685  has_attribute(CombineProvenance self, ObjectKey a0) -> bool
14686  has_attribute(CombineProvenance self, SparseFloatKey a0) -> bool
14687  has_attribute(CombineProvenance self, SparseIntKey a0) -> bool
14688  has_attribute(CombineProvenance self, SparseStringKey a0) -> bool
14689  has_attribute(CombineProvenance self, SparseParticleIndexKey a0) -> bool
14690  """
14691  return _IMP_core.CombineProvenance_has_attribute(self, *args)
14692 
14693  def get_derivative(self, a0):
14694  r"""get_derivative(CombineProvenance self, FloatKey a0) -> double"""
14695  return _IMP_core.CombineProvenance_get_derivative(self, a0)
14696 
14697  def get_name(self):
14698  r"""get_name(CombineProvenance self) -> std::string"""
14699  return _IMP_core.CombineProvenance_get_name(self)
14700 
14701  def clear_caches(self):
14702  r"""clear_caches(CombineProvenance self)"""
14703  return _IMP_core.CombineProvenance_clear_caches(self)
14704 
14705  def set_name(self, a0):
14706  r"""set_name(CombineProvenance self, std::string a0)"""
14707  return _IMP_core.CombineProvenance_set_name(self, a0)
14708 
14709  def set_check_level(self, a0):
14710  r"""set_check_level(CombineProvenance self, IMP::CheckLevel a0)"""
14711  return _IMP_core.CombineProvenance_set_check_level(self, a0)
14712 
14713  def add_to_derivative(self, a0, a1, a2):
14714  r"""add_to_derivative(CombineProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
14715  return _IMP_core.CombineProvenance_add_to_derivative(self, a0, a1, a2)
14716 
14717  def set_is_optimized(self, a0, a1):
14718  r"""set_is_optimized(CombineProvenance self, FloatKey a0, bool a1)"""
14719  return _IMP_core.CombineProvenance_set_is_optimized(self, a0, a1)
14720 
14721  def get_is_optimized(self, a0):
14722  r"""get_is_optimized(CombineProvenance self, FloatKey a0) -> bool"""
14723  return _IMP_core.CombineProvenance_get_is_optimized(self, a0)
14724 
14725  def get_check_level(self):
14726  r"""get_check_level(CombineProvenance self) -> IMP::CheckLevel"""
14727  return _IMP_core.CombineProvenance_get_check_level(self)
14728 
14729  def __eq__(self, *args):
14730  r"""
14731  __eq__(CombineProvenance self, CombineProvenance o) -> bool
14732  __eq__(CombineProvenance self, Particle d) -> bool
14733  """
14734  return _IMP_core.CombineProvenance___eq__(self, *args)
14735 
14736  def __ne__(self, *args):
14737  r"""
14738  __ne__(CombineProvenance self, CombineProvenance o) -> bool
14739  __ne__(CombineProvenance self, Particle d) -> bool
14740  """
14741  return _IMP_core.CombineProvenance___ne__(self, *args)
14742 
14743  def __le__(self, *args):
14744  r"""
14745  __le__(CombineProvenance self, CombineProvenance o) -> bool
14746  __le__(CombineProvenance self, Particle d) -> bool
14747  """
14748  return _IMP_core.CombineProvenance___le__(self, *args)
14749 
14750  def __lt__(self, *args):
14751  r"""
14752  __lt__(CombineProvenance self, CombineProvenance o) -> bool
14753  __lt__(CombineProvenance self, Particle d) -> bool
14754  """
14755  return _IMP_core.CombineProvenance___lt__(self, *args)
14756 
14757  def __ge__(self, *args):
14758  r"""
14759  __ge__(CombineProvenance self, CombineProvenance o) -> bool
14760  __ge__(CombineProvenance self, Particle d) -> bool
14761  """
14762  return _IMP_core.CombineProvenance___ge__(self, *args)
14763 
14764  def __gt__(self, *args):
14765  r"""
14766  __gt__(CombineProvenance self, CombineProvenance o) -> bool
14767  __gt__(CombineProvenance self, Particle d) -> bool
14768  """
14769  return _IMP_core.CombineProvenance___gt__(self, *args)
14770 
14771  def __hash__(self):
14772  r"""__hash__(CombineProvenance self) -> std::size_t"""
14773  return _IMP_core.CombineProvenance___hash__(self)
14774 
14775  def __str__(self):
14776  r"""__str__(CombineProvenance self) -> std::string"""
14777  return _IMP_core.CombineProvenance___str__(self)
14778 
14779  def __repr__(self):
14780  r"""__repr__(CombineProvenance self) -> std::string"""
14781  return _IMP_core.CombineProvenance___repr__(self)
14782 
14783  def _get_as_binary(self):
14784  r"""_get_as_binary(CombineProvenance self) -> PyObject *"""
14785  return _IMP_core.CombineProvenance__get_as_binary(self)
14786 
14787  def _set_from_binary(self, p):
14788  r"""_set_from_binary(CombineProvenance self, PyObject * p)"""
14789  return _IMP_core.CombineProvenance__set_from_binary(self, p)
14790 
14791  def __getstate__(self):
14792  p = self._get_as_binary()
14793  if len(self.__dict__) > 1:
14794  d = self.__dict__.copy()
14795  del d['this']
14796  p = (d, p)
14797  return p
14798 
14799  def __setstate__(self, p):
14800  if not hasattr(self, 'this'):
14801  self.__init__()
14802  if isinstance(p, tuple):
14803  d, p = p
14804  self.__dict__.update(d)
14805  return self._set_from_binary(p)
14806 
14807  __swig_destroy__ = _IMP_core.delete_CombineProvenance
14808 
14809 # Register CombineProvenance in _IMP_core:
14810 _IMP_core.CombineProvenance_swigregister(CombineProvenance)
14811 class FilterProvenance(Provenance):
14812  r"""Proxy of C++ IMP::core::FilterProvenance class."""
14813 
14814  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
14815 
14816  def set_method(self, method):
14817  r"""set_method(FilterProvenance self, std::string method)"""
14818  return _IMP_core.FilterProvenance_set_method(self, method)
14819 
14820  def get_method(self):
14821  r"""get_method(FilterProvenance self) -> std::string"""
14822  return _IMP_core.FilterProvenance_get_method(self)
14823 
14824  def set_number_of_frames(self, frames):
14825  r"""set_number_of_frames(FilterProvenance self, int frames)"""
14826  return _IMP_core.FilterProvenance_set_number_of_frames(self, frames)
14827 
14828  def get_number_of_frames(self):
14829  r"""get_number_of_frames(FilterProvenance self) -> int"""
14830  return _IMP_core.FilterProvenance_get_number_of_frames(self)
14831 
14832  def set_threshold(self, threshold):
14833  r"""set_threshold(FilterProvenance self, double threshold)"""
14834  return _IMP_core.FilterProvenance_set_threshold(self, threshold)
14835 
14836  def get_threshold(self):
14837  r"""get_threshold(FilterProvenance self) -> double"""
14838  return _IMP_core.FilterProvenance_get_threshold(self)
14839 
14840  def __init__(self, *args):
14841  r"""
14842  __init__(FilterProvenance self) -> FilterProvenance
14843  __init__(FilterProvenance self, Model m, ParticleIndex id) -> FilterProvenance
14844  __init__(FilterProvenance self, _ParticleAdaptor d) -> FilterProvenance
14845  """
14846  _IMP_core.FilterProvenance_swiginit(self, _IMP_core.new_FilterProvenance(*args))
14847 
14848  @staticmethod
14849  def get_is_setup(*args):
14850  r"""
14851  get_is_setup(Model m, ParticleIndex pi) -> bool
14852  get_is_setup(_ParticleAdaptor p) -> bool
14853  """
14854  return _IMP_core.FilterProvenance_get_is_setup(*args)
14855 
14856  def show(self, *args):
14857  r"""show(FilterProvenance self, _ostream out=std::cout)"""
14858  return _IMP_core.FilterProvenance_show(self, *args)
14859 
14860  @staticmethod
14861  def setup_particle(*args):
14862  r"""
14863  setup_particle(Model m, ParticleIndex pi, std::string method, double threshold, int frames) -> FilterProvenance
14864  setup_particle(_ParticleAdaptor pa, std::string method, double threshold, int frames) -> FilterProvenance
14865  setup_particle(Model m, ParticleIndex pi, FilterProvenance o) -> FilterProvenance
14866  setup_particle(_ParticleAdaptor pa, FilterProvenance o) -> FilterProvenance
14867  """
14868  return _IMP_core.FilterProvenance_setup_particle(*args)
14869 
14870  def add_attribute(self, *args):
14871  r"""
14872  add_attribute(FilterProvenance self, FloatKey k, IMP::Float v, bool opt)
14873  add_attribute(FilterProvenance self, FloatKey a0, IMP::Float a1)
14874  add_attribute(FilterProvenance self, IntKey a0, IMP::Int a1)
14875  add_attribute(FilterProvenance self, FloatsKey a0, IMP::Floats a1)
14876  add_attribute(FilterProvenance self, IntsKey a0, IMP::Ints a1)
14877  add_attribute(FilterProvenance self, StringKey a0, IMP::String a1)
14878  add_attribute(FilterProvenance self, ParticleIndexKey a0, Particle a1)
14879  add_attribute(FilterProvenance self, ObjectKey a0, Object a1)
14880  add_attribute(FilterProvenance self, SparseFloatKey a0, IMP::Float a1)
14881  add_attribute(FilterProvenance self, SparseIntKey a0, IMP::Int a1)
14882  add_attribute(FilterProvenance self, SparseStringKey a0, IMP::String a1)
14883  add_attribute(FilterProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14884  """
14885  return _IMP_core.FilterProvenance_add_attribute(self, *args)
14886 
14887  def get_value(self, *args):
14888  r"""
14889  get_value(FilterProvenance self, FloatKey a0) -> IMP::Float
14890  get_value(FilterProvenance self, IntKey a0) -> IMP::Int
14891  get_value(FilterProvenance self, FloatsKey a0) -> IMP::Floats
14892  get_value(FilterProvenance self, IntsKey a0) -> IMP::Ints
14893  get_value(FilterProvenance self, StringKey a0) -> IMP::String
14894  get_value(FilterProvenance self, ParticleIndexKey a0) -> Particle
14895  get_value(FilterProvenance self, ObjectKey a0) -> Object
14896  get_value(FilterProvenance self, SparseFloatKey a0) -> IMP::Float
14897  get_value(FilterProvenance self, SparseIntKey a0) -> IMP::Int
14898  get_value(FilterProvenance self, SparseStringKey a0) -> IMP::String
14899  get_value(FilterProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
14900  """
14901  return _IMP_core.FilterProvenance_get_value(self, *args)
14902 
14903  def set_value(self, *args):
14904  r"""
14905  set_value(FilterProvenance self, FloatKey a0, IMP::Float a1)
14906  set_value(FilterProvenance self, IntKey a0, IMP::Int a1)
14907  set_value(FilterProvenance self, FloatsKey a0, IMP::Floats a1)
14908  set_value(FilterProvenance self, IntsKey a0, IMP::Ints a1)
14909  set_value(FilterProvenance self, StringKey a0, IMP::String a1)
14910  set_value(FilterProvenance self, ParticleIndexKey a0, Particle a1)
14911  set_value(FilterProvenance self, ObjectKey a0, Object a1)
14912  set_value(FilterProvenance self, SparseFloatKey a0, IMP::Float a1)
14913  set_value(FilterProvenance self, SparseIntKey a0, IMP::Int a1)
14914  set_value(FilterProvenance self, SparseStringKey a0, IMP::String a1)
14915  set_value(FilterProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14916  """
14917  return _IMP_core.FilterProvenance_set_value(self, *args)
14918 
14919  def remove_attribute(self, *args):
14920  r"""
14921  remove_attribute(FilterProvenance self, FloatKey a0)
14922  remove_attribute(FilterProvenance self, IntKey a0)
14923  remove_attribute(FilterProvenance self, FloatsKey a0)
14924  remove_attribute(FilterProvenance self, IntsKey a0)
14925  remove_attribute(FilterProvenance self, StringKey a0)
14926  remove_attribute(FilterProvenance self, ParticleIndexKey a0)
14927  remove_attribute(FilterProvenance self, ObjectKey a0)
14928  remove_attribute(FilterProvenance self, SparseFloatKey a0)
14929  remove_attribute(FilterProvenance self, SparseIntKey a0)
14930  remove_attribute(FilterProvenance self, SparseStringKey a0)
14931  remove_attribute(FilterProvenance self, SparseParticleIndexKey a0)
14932  """
14933  return _IMP_core.FilterProvenance_remove_attribute(self, *args)
14934 
14935  def has_attribute(self, *args):
14936  r"""
14937  has_attribute(FilterProvenance self, FloatKey a0) -> bool
14938  has_attribute(FilterProvenance self, IntKey a0) -> bool
14939  has_attribute(FilterProvenance self, FloatsKey a0) -> bool
14940  has_attribute(FilterProvenance self, IntsKey a0) -> bool
14941  has_attribute(FilterProvenance self, StringKey a0) -> bool
14942  has_attribute(FilterProvenance self, ParticleIndexKey a0) -> bool
14943  has_attribute(FilterProvenance self, ObjectKey a0) -> bool
14944  has_attribute(FilterProvenance self, SparseFloatKey a0) -> bool
14945  has_attribute(FilterProvenance self, SparseIntKey a0) -> bool
14946  has_attribute(FilterProvenance self, SparseStringKey a0) -> bool
14947  has_attribute(FilterProvenance self, SparseParticleIndexKey a0) -> bool
14948  """
14949  return _IMP_core.FilterProvenance_has_attribute(self, *args)
14950 
14951  def get_derivative(self, a0):
14952  r"""get_derivative(FilterProvenance self, FloatKey a0) -> double"""
14953  return _IMP_core.FilterProvenance_get_derivative(self, a0)
14954 
14955  def get_name(self):
14956  r"""get_name(FilterProvenance self) -> std::string"""
14957  return _IMP_core.FilterProvenance_get_name(self)
14958 
14959  def clear_caches(self):
14960  r"""clear_caches(FilterProvenance self)"""
14961  return _IMP_core.FilterProvenance_clear_caches(self)
14962 
14963  def set_name(self, a0):
14964  r"""set_name(FilterProvenance self, std::string a0)"""
14965  return _IMP_core.FilterProvenance_set_name(self, a0)
14966 
14967  def set_check_level(self, a0):
14968  r"""set_check_level(FilterProvenance self, IMP::CheckLevel a0)"""
14969  return _IMP_core.FilterProvenance_set_check_level(self, a0)
14970 
14971  def add_to_derivative(self, a0, a1, a2):
14972  r"""add_to_derivative(FilterProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
14973  return _IMP_core.FilterProvenance_add_to_derivative(self, a0, a1, a2)
14974 
14975  def set_is_optimized(self, a0, a1):
14976  r"""set_is_optimized(FilterProvenance self, FloatKey a0, bool a1)"""
14977  return _IMP_core.FilterProvenance_set_is_optimized(self, a0, a1)
14978 
14979  def get_is_optimized(self, a0):
14980  r"""get_is_optimized(FilterProvenance self, FloatKey a0) -> bool"""
14981  return _IMP_core.FilterProvenance_get_is_optimized(self, a0)
14982 
14983  def get_check_level(self):
14984  r"""get_check_level(FilterProvenance self) -> IMP::CheckLevel"""
14985  return _IMP_core.FilterProvenance_get_check_level(self)
14986 
14987  def __eq__(self, *args):
14988  r"""
14989  __eq__(FilterProvenance self, FilterProvenance o) -> bool
14990  __eq__(FilterProvenance self, Particle d) -> bool
14991  """
14992  return _IMP_core.FilterProvenance___eq__(self, *args)
14993 
14994  def __ne__(self, *args):
14995  r"""
14996  __ne__(FilterProvenance self, FilterProvenance o) -> bool
14997  __ne__(FilterProvenance self, Particle d) -> bool
14998  """
14999  return _IMP_core.FilterProvenance___ne__(self, *args)
15000 
15001  def __le__(self, *args):
15002  r"""
15003  __le__(FilterProvenance self, FilterProvenance o) -> bool
15004  __le__(FilterProvenance self, Particle d) -> bool
15005  """
15006  return _IMP_core.FilterProvenance___le__(self, *args)
15007 
15008  def __lt__(self, *args):
15009  r"""
15010  __lt__(FilterProvenance self, FilterProvenance o) -> bool
15011  __lt__(FilterProvenance self, Particle d) -> bool
15012  """
15013  return _IMP_core.FilterProvenance___lt__(self, *args)
15014 
15015  def __ge__(self, *args):
15016  r"""
15017  __ge__(FilterProvenance self, FilterProvenance o) -> bool
15018  __ge__(FilterProvenance self, Particle d) -> bool
15019  """
15020  return _IMP_core.FilterProvenance___ge__(self, *args)
15021 
15022  def __gt__(self, *args):
15023  r"""
15024  __gt__(FilterProvenance self, FilterProvenance o) -> bool
15025  __gt__(FilterProvenance self, Particle d) -> bool
15026  """
15027  return _IMP_core.FilterProvenance___gt__(self, *args)
15028 
15029  def __hash__(self):
15030  r"""__hash__(FilterProvenance self) -> std::size_t"""
15031  return _IMP_core.FilterProvenance___hash__(self)
15032 
15033  def __str__(self):
15034  r"""__str__(FilterProvenance self) -> std::string"""
15035  return _IMP_core.FilterProvenance___str__(self)
15036 
15037  def __repr__(self):
15038  r"""__repr__(FilterProvenance self) -> std::string"""
15039  return _IMP_core.FilterProvenance___repr__(self)
15040 
15041  def _get_as_binary(self):
15042  r"""_get_as_binary(FilterProvenance self) -> PyObject *"""
15043  return _IMP_core.FilterProvenance__get_as_binary(self)
15044 
15045  def _set_from_binary(self, p):
15046  r"""_set_from_binary(FilterProvenance self, PyObject * p)"""
15047  return _IMP_core.FilterProvenance__set_from_binary(self, p)
15048 
15049  def __getstate__(self):
15050  p = self._get_as_binary()
15051  if len(self.__dict__) > 1:
15052  d = self.__dict__.copy()
15053  del d['this']
15054  p = (d, p)
15055  return p
15056 
15057  def __setstate__(self, p):
15058  if not hasattr(self, 'this'):
15059  self.__init__()
15060  if isinstance(p, tuple):
15061  d, p = p
15062  self.__dict__.update(d)
15063  return self._set_from_binary(p)
15064 
15065  __swig_destroy__ = _IMP_core.delete_FilterProvenance
15066 
15067 # Register FilterProvenance in _IMP_core:
15068 _IMP_core.FilterProvenance_swigregister(FilterProvenance)
15069 class ClusterProvenance(Provenance):
15070  r"""Proxy of C++ IMP::core::ClusterProvenance class."""
15071 
15072  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
15073 
15074  def set_number_of_members(self, members):
15075  r"""set_number_of_members(ClusterProvenance self, int members)"""
15076  return _IMP_core.ClusterProvenance_set_number_of_members(self, members)
15077 
15078  def get_number_of_members(self):
15079  r"""get_number_of_members(ClusterProvenance self) -> int"""
15080  return _IMP_core.ClusterProvenance_get_number_of_members(self)
15081 
15082  def set_precision(self, precision):
15083  r"""set_precision(ClusterProvenance self, double precision)"""
15084  return _IMP_core.ClusterProvenance_set_precision(self, precision)
15085 
15086  def get_precision(self):
15087  r"""get_precision(ClusterProvenance self) -> double"""
15088  return _IMP_core.ClusterProvenance_get_precision(self)
15089 
15090  def set_density(self, density):
15091  r"""set_density(ClusterProvenance self, std::string density)"""
15092  return _IMP_core.ClusterProvenance_set_density(self, density)
15093 
15094  def get_density(self):
15095  r"""get_density(ClusterProvenance self) -> std::string"""
15096  return _IMP_core.ClusterProvenance_get_density(self)
15097 
15098  def __init__(self, *args):
15099  r"""
15100  __init__(ClusterProvenance self) -> ClusterProvenance
15101  __init__(ClusterProvenance self, Model m, ParticleIndex id) -> ClusterProvenance
15102  __init__(ClusterProvenance self, _ParticleAdaptor d) -> ClusterProvenance
15103  """
15104  _IMP_core.ClusterProvenance_swiginit(self, _IMP_core.new_ClusterProvenance(*args))
15105 
15106  @staticmethod
15107  def get_is_setup(*args):
15108  r"""
15109  get_is_setup(Model m, ParticleIndex pi) -> bool
15110  get_is_setup(_ParticleAdaptor p) -> bool
15111  """
15112  return _IMP_core.ClusterProvenance_get_is_setup(*args)
15113 
15114  def show(self, *args):
15115  r"""show(ClusterProvenance self, _ostream out=std::cout)"""
15116  return _IMP_core.ClusterProvenance_show(self, *args)
15117 
15118  @staticmethod
15119  def setup_particle(*args):
15120  r"""
15121  setup_particle(Model m, ParticleIndex pi, int members) -> ClusterProvenance
15122  setup_particle(_ParticleAdaptor pa, int members) -> ClusterProvenance
15123  setup_particle(Model m, ParticleIndex pi, int members, double precision) -> ClusterProvenance
15124  setup_particle(_ParticleAdaptor pa, int members, double precision) -> ClusterProvenance
15125  setup_particle(Model m, ParticleIndex pi, int members, double precision, std::string density) -> ClusterProvenance
15126  setup_particle(_ParticleAdaptor pa, int members, double precision, std::string density) -> ClusterProvenance
15127  setup_particle(Model m, ParticleIndex pi, ClusterProvenance o) -> ClusterProvenance
15128  setup_particle(_ParticleAdaptor pa, ClusterProvenance o) -> ClusterProvenance
15129  """
15130  return _IMP_core.ClusterProvenance_setup_particle(*args)
15131 
15132  def add_attribute(self, *args):
15133  r"""
15134  add_attribute(ClusterProvenance self, FloatKey k, IMP::Float v, bool opt)
15135  add_attribute(ClusterProvenance self, FloatKey a0, IMP::Float a1)
15136  add_attribute(ClusterProvenance self, IntKey a0, IMP::Int a1)
15137  add_attribute(ClusterProvenance self, FloatsKey a0, IMP::Floats a1)
15138  add_attribute(ClusterProvenance self, IntsKey a0, IMP::Ints a1)
15139  add_attribute(ClusterProvenance self, StringKey a0, IMP::String a1)
15140  add_attribute(ClusterProvenance self, ParticleIndexKey a0, Particle a1)
15141  add_attribute(ClusterProvenance self, ObjectKey a0, Object a1)
15142  add_attribute(ClusterProvenance self, SparseFloatKey a0, IMP::Float a1)
15143  add_attribute(ClusterProvenance self, SparseIntKey a0, IMP::Int a1)
15144  add_attribute(ClusterProvenance self, SparseStringKey a0, IMP::String a1)
15145  add_attribute(ClusterProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15146  """
15147  return _IMP_core.ClusterProvenance_add_attribute(self, *args)
15148 
15149  def get_value(self, *args):
15150  r"""
15151  get_value(ClusterProvenance self, FloatKey a0) -> IMP::Float
15152  get_value(ClusterProvenance self, IntKey a0) -> IMP::Int
15153  get_value(ClusterProvenance self, FloatsKey a0) -> IMP::Floats
15154  get_value(ClusterProvenance self, IntsKey a0) -> IMP::Ints
15155  get_value(ClusterProvenance self, StringKey a0) -> IMP::String
15156  get_value(ClusterProvenance self, ParticleIndexKey a0) -> Particle
15157  get_value(ClusterProvenance self, ObjectKey a0) -> Object
15158  get_value(ClusterProvenance self, SparseFloatKey a0) -> IMP::Float
15159  get_value(ClusterProvenance self, SparseIntKey a0) -> IMP::Int
15160  get_value(ClusterProvenance self, SparseStringKey a0) -> IMP::String
15161  get_value(ClusterProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
15162  """
15163  return _IMP_core.ClusterProvenance_get_value(self, *args)
15164 
15165  def set_value(self, *args):
15166  r"""
15167  set_value(ClusterProvenance self, FloatKey a0, IMP::Float a1)
15168  set_value(ClusterProvenance self, IntKey a0, IMP::Int a1)
15169  set_value(ClusterProvenance self, FloatsKey a0, IMP::Floats a1)
15170  set_value(ClusterProvenance self, IntsKey a0, IMP::Ints a1)
15171  set_value(ClusterProvenance self, StringKey a0, IMP::String a1)
15172  set_value(ClusterProvenance self, ParticleIndexKey a0, Particle a1)
15173  set_value(ClusterProvenance self, ObjectKey a0, Object a1)
15174  set_value(ClusterProvenance self, SparseFloatKey a0, IMP::Float a1)
15175  set_value(ClusterProvenance self, SparseIntKey a0, IMP::Int a1)
15176  set_value(ClusterProvenance self, SparseStringKey a0, IMP::String a1)
15177  set_value(ClusterProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15178  """
15179  return _IMP_core.ClusterProvenance_set_value(self, *args)
15180 
15181  def remove_attribute(self, *args):
15182  r"""
15183  remove_attribute(ClusterProvenance self, FloatKey a0)
15184  remove_attribute(ClusterProvenance self, IntKey a0)
15185  remove_attribute(ClusterProvenance self, FloatsKey a0)
15186  remove_attribute(ClusterProvenance self, IntsKey a0)
15187  remove_attribute(ClusterProvenance self, StringKey a0)
15188  remove_attribute(ClusterProvenance self, ParticleIndexKey a0)
15189  remove_attribute(ClusterProvenance self, ObjectKey a0)
15190  remove_attribute(ClusterProvenance self, SparseFloatKey a0)
15191  remove_attribute(ClusterProvenance self, SparseIntKey a0)
15192  remove_attribute(ClusterProvenance self, SparseStringKey a0)
15193  remove_attribute(ClusterProvenance self, SparseParticleIndexKey a0)
15194  """
15195  return _IMP_core.ClusterProvenance_remove_attribute(self, *args)
15196 
15197  def has_attribute(self, *args):
15198  r"""
15199  has_attribute(ClusterProvenance self, FloatKey a0) -> bool
15200  has_attribute(ClusterProvenance self, IntKey a0) -> bool
15201  has_attribute(ClusterProvenance self, FloatsKey a0) -> bool
15202  has_attribute(ClusterProvenance self, IntsKey a0) -> bool
15203  has_attribute(ClusterProvenance self, StringKey a0) -> bool
15204  has_attribute(ClusterProvenance self, ParticleIndexKey a0) -> bool
15205  has_attribute(ClusterProvenance self, ObjectKey a0) -> bool
15206  has_attribute(ClusterProvenance self, SparseFloatKey a0) -> bool
15207  has_attribute(ClusterProvenance self, SparseIntKey a0) -> bool
15208  has_attribute(ClusterProvenance self, SparseStringKey a0) -> bool
15209  has_attribute(ClusterProvenance self, SparseParticleIndexKey a0) -> bool
15210  """
15211  return _IMP_core.ClusterProvenance_has_attribute(self, *args)
15212 
15213  def get_derivative(self, a0):
15214  r"""get_derivative(ClusterProvenance self, FloatKey a0) -> double"""
15215  return _IMP_core.ClusterProvenance_get_derivative(self, a0)
15216 
15217  def get_name(self):
15218  r"""get_name(ClusterProvenance self) -> std::string"""
15219  return _IMP_core.ClusterProvenance_get_name(self)
15220 
15221  def clear_caches(self):
15222  r"""clear_caches(ClusterProvenance self)"""
15223  return _IMP_core.ClusterProvenance_clear_caches(self)
15224 
15225  def set_name(self, a0):
15226  r"""set_name(ClusterProvenance self, std::string a0)"""
15227  return _IMP_core.ClusterProvenance_set_name(self, a0)
15228 
15229  def set_check_level(self, a0):
15230  r"""set_check_level(ClusterProvenance self, IMP::CheckLevel a0)"""
15231  return _IMP_core.ClusterProvenance_set_check_level(self, a0)
15232 
15233  def add_to_derivative(self, a0, a1, a2):
15234  r"""add_to_derivative(ClusterProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
15235  return _IMP_core.ClusterProvenance_add_to_derivative(self, a0, a1, a2)
15236 
15237  def set_is_optimized(self, a0, a1):
15238  r"""set_is_optimized(ClusterProvenance self, FloatKey a0, bool a1)"""
15239  return _IMP_core.ClusterProvenance_set_is_optimized(self, a0, a1)
15240 
15241  def get_is_optimized(self, a0):
15242  r"""get_is_optimized(ClusterProvenance self, FloatKey a0) -> bool"""
15243  return _IMP_core.ClusterProvenance_get_is_optimized(self, a0)
15244 
15245  def get_check_level(self):
15246  r"""get_check_level(ClusterProvenance self) -> IMP::CheckLevel"""
15247  return _IMP_core.ClusterProvenance_get_check_level(self)
15248 
15249  def __eq__(self, *args):
15250  r"""
15251  __eq__(ClusterProvenance self, ClusterProvenance o) -> bool
15252  __eq__(ClusterProvenance self, Particle d) -> bool
15253  """
15254  return _IMP_core.ClusterProvenance___eq__(self, *args)
15255 
15256  def __ne__(self, *args):
15257  r"""
15258  __ne__(ClusterProvenance self, ClusterProvenance o) -> bool
15259  __ne__(ClusterProvenance self, Particle d) -> bool
15260  """
15261  return _IMP_core.ClusterProvenance___ne__(self, *args)
15262 
15263  def __le__(self, *args):
15264  r"""
15265  __le__(ClusterProvenance self, ClusterProvenance o) -> bool
15266  __le__(ClusterProvenance self, Particle d) -> bool
15267  """
15268  return _IMP_core.ClusterProvenance___le__(self, *args)
15269 
15270  def __lt__(self, *args):
15271  r"""
15272  __lt__(ClusterProvenance self, ClusterProvenance o) -> bool
15273  __lt__(ClusterProvenance self, Particle d) -> bool
15274  """
15275  return _IMP_core.ClusterProvenance___lt__(self, *args)
15276 
15277  def __ge__(self, *args):
15278  r"""
15279  __ge__(ClusterProvenance self, ClusterProvenance o) -> bool
15280  __ge__(ClusterProvenance self, Particle d) -> bool
15281  """
15282  return _IMP_core.ClusterProvenance___ge__(self, *args)
15283 
15284  def __gt__(self, *args):
15285  r"""
15286  __gt__(ClusterProvenance self, ClusterProvenance o) -> bool
15287  __gt__(ClusterProvenance self, Particle d) -> bool
15288  """
15289  return _IMP_core.ClusterProvenance___gt__(self, *args)
15290 
15291  def __hash__(self):
15292  r"""__hash__(ClusterProvenance self) -> std::size_t"""
15293  return _IMP_core.ClusterProvenance___hash__(self)
15294 
15295  def __str__(self):
15296  r"""__str__(ClusterProvenance self) -> std::string"""
15297  return _IMP_core.ClusterProvenance___str__(self)
15298 
15299  def __repr__(self):
15300  r"""__repr__(ClusterProvenance self) -> std::string"""
15301  return _IMP_core.ClusterProvenance___repr__(self)
15302 
15303  def _get_as_binary(self):
15304  r"""_get_as_binary(ClusterProvenance self) -> PyObject *"""
15305  return _IMP_core.ClusterProvenance__get_as_binary(self)
15306 
15307  def _set_from_binary(self, p):
15308  r"""_set_from_binary(ClusterProvenance self, PyObject * p)"""
15309  return _IMP_core.ClusterProvenance__set_from_binary(self, p)
15310 
15311  def __getstate__(self):
15312  p = self._get_as_binary()
15313  if len(self.__dict__) > 1:
15314  d = self.__dict__.copy()
15315  del d['this']
15316  p = (d, p)
15317  return p
15318 
15319  def __setstate__(self, p):
15320  if not hasattr(self, 'this'):
15321  self.__init__()
15322  if isinstance(p, tuple):
15323  d, p = p
15324  self.__dict__.update(d)
15325  return self._set_from_binary(p)
15326 
15327  __swig_destroy__ = _IMP_core.delete_ClusterProvenance
15328 
15329 # Register ClusterProvenance in _IMP_core:
15330 _IMP_core.ClusterProvenance_swigregister(ClusterProvenance)
15331 class ScriptProvenance(Provenance):
15332  r"""Proxy of C++ IMP::core::ScriptProvenance class."""
15333 
15334  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
15335 
15336  def set_filename(self, filename):
15337  r"""set_filename(ScriptProvenance self, std::string filename)"""
15338  return _IMP_core.ScriptProvenance_set_filename(self, filename)
15339 
15340  def get_filename(self):
15341  r"""get_filename(ScriptProvenance self) -> std::string"""
15342  return _IMP_core.ScriptProvenance_get_filename(self)
15343 
15344  def __init__(self, *args):
15345  r"""
15346  __init__(ScriptProvenance self) -> ScriptProvenance
15347  __init__(ScriptProvenance self, Model m, ParticleIndex id) -> ScriptProvenance
15348  __init__(ScriptProvenance self, _ParticleAdaptor d) -> ScriptProvenance
15349  """
15350  _IMP_core.ScriptProvenance_swiginit(self, _IMP_core.new_ScriptProvenance(*args))
15351 
15352  @staticmethod
15353  def get_is_setup(*args):
15354  r"""
15355  get_is_setup(Model m, ParticleIndex pi) -> bool
15356  get_is_setup(_ParticleAdaptor p) -> bool
15357  """
15358  return _IMP_core.ScriptProvenance_get_is_setup(*args)
15359 
15360  def show(self, *args):
15361  r"""show(ScriptProvenance self, _ostream out=std::cout)"""
15362  return _IMP_core.ScriptProvenance_show(self, *args)
15363 
15364  @staticmethod
15365  def setup_particle(*args):
15366  r"""
15367  setup_particle(Model m, ParticleIndex pi, std::string filename) -> ScriptProvenance
15368  setup_particle(_ParticleAdaptor pa, std::string filename) -> ScriptProvenance
15369  setup_particle(Model m, ParticleIndex pi, ScriptProvenance o) -> ScriptProvenance
15370  setup_particle(_ParticleAdaptor pa, ScriptProvenance o) -> ScriptProvenance
15371  """
15372  return _IMP_core.ScriptProvenance_setup_particle(*args)
15373 
15374  def add_attribute(self, *args):
15375  r"""
15376  add_attribute(ScriptProvenance self, FloatKey k, IMP::Float v, bool opt)
15377  add_attribute(ScriptProvenance self, FloatKey a0, IMP::Float a1)
15378  add_attribute(ScriptProvenance self, IntKey a0, IMP::Int a1)
15379  add_attribute(ScriptProvenance self, FloatsKey a0, IMP::Floats a1)
15380  add_attribute(ScriptProvenance self, IntsKey a0, IMP::Ints a1)
15381  add_attribute(ScriptProvenance self, StringKey a0, IMP::String a1)
15382  add_attribute(ScriptProvenance self, ParticleIndexKey a0, Particle a1)
15383  add_attribute(ScriptProvenance self, ObjectKey a0, Object a1)
15384  add_attribute(ScriptProvenance self, SparseFloatKey a0, IMP::Float a1)
15385  add_attribute(ScriptProvenance self, SparseIntKey a0, IMP::Int a1)
15386  add_attribute(ScriptProvenance self, SparseStringKey a0, IMP::String a1)
15387  add_attribute(ScriptProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15388  """
15389  return _IMP_core.ScriptProvenance_add_attribute(self, *args)
15390 
15391  def get_value(self, *args):
15392  r"""
15393  get_value(ScriptProvenance self, FloatKey a0) -> IMP::Float
15394  get_value(ScriptProvenance self, IntKey a0) -> IMP::Int
15395  get_value(ScriptProvenance self, FloatsKey a0) -> IMP::Floats
15396  get_value(ScriptProvenance self, IntsKey a0) -> IMP::Ints
15397  get_value(ScriptProvenance self, StringKey a0) -> IMP::String
15398  get_value(ScriptProvenance self, ParticleIndexKey a0) -> Particle
15399  get_value(ScriptProvenance self, ObjectKey a0) -> Object
15400  get_value(ScriptProvenance self, SparseFloatKey a0) -> IMP::Float
15401  get_value(ScriptProvenance self, SparseIntKey a0) -> IMP::Int
15402  get_value(ScriptProvenance self, SparseStringKey a0) -> IMP::String
15403  get_value(ScriptProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
15404  """
15405  return _IMP_core.ScriptProvenance_get_value(self, *args)
15406 
15407  def set_value(self, *args):
15408  r"""
15409  set_value(ScriptProvenance self, FloatKey a0, IMP::Float a1)
15410  set_value(ScriptProvenance self, IntKey a0, IMP::Int a1)
15411  set_value(ScriptProvenance self, FloatsKey a0, IMP::Floats a1)
15412  set_value(ScriptProvenance self, IntsKey a0, IMP::Ints a1)
15413  set_value(ScriptProvenance self, StringKey a0, IMP::String a1)
15414  set_value(ScriptProvenance self, ParticleIndexKey a0, Particle a1)
15415  set_value(ScriptProvenance self, ObjectKey a0, Object a1)
15416  set_value(ScriptProvenance self, SparseFloatKey a0, IMP::Float a1)
15417  set_value(ScriptProvenance self, SparseIntKey a0, IMP::Int a1)
15418  set_value(ScriptProvenance self, SparseStringKey a0, IMP::String a1)
15419  set_value(ScriptProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15420  """
15421  return _IMP_core.ScriptProvenance_set_value(self, *args)
15422 
15423  def remove_attribute(self, *args):
15424  r"""
15425  remove_attribute(ScriptProvenance self, FloatKey a0)
15426  remove_attribute(ScriptProvenance self, IntKey a0)
15427  remove_attribute(ScriptProvenance self, FloatsKey a0)
15428  remove_attribute(ScriptProvenance self, IntsKey a0)
15429  remove_attribute(ScriptProvenance self, StringKey a0)
15430  remove_attribute(ScriptProvenance self, ParticleIndexKey a0)
15431  remove_attribute(ScriptProvenance self, ObjectKey a0)
15432  remove_attribute(ScriptProvenance self, SparseFloatKey a0)
15433  remove_attribute(ScriptProvenance self, SparseIntKey a0)
15434  remove_attribute(ScriptProvenance self, SparseStringKey a0)
15435  remove_attribute(ScriptProvenance self, SparseParticleIndexKey a0)
15436  """
15437  return _IMP_core.ScriptProvenance_remove_attribute(self, *args)
15438 
15439  def has_attribute(self, *args):
15440  r"""
15441  has_attribute(ScriptProvenance self, FloatKey a0) -> bool
15442  has_attribute(ScriptProvenance self, IntKey a0) -> bool
15443  has_attribute(ScriptProvenance self, FloatsKey a0) -> bool
15444  has_attribute(ScriptProvenance self, IntsKey a0) -> bool
15445  has_attribute(ScriptProvenance self, StringKey a0) -> bool
15446  has_attribute(ScriptProvenance self, ParticleIndexKey a0) -> bool
15447  has_attribute(ScriptProvenance self, ObjectKey a0) -> bool
15448  has_attribute(ScriptProvenance self, SparseFloatKey a0) -> bool
15449  has_attribute(ScriptProvenance self, SparseIntKey a0) -> bool
15450  has_attribute(ScriptProvenance self, SparseStringKey a0) -> bool
15451  has_attribute(ScriptProvenance self, SparseParticleIndexKey a0) -> bool
15452  """
15453  return _IMP_core.ScriptProvenance_has_attribute(self, *args)
15454 
15455  def get_derivative(self, a0):
15456  r"""get_derivative(ScriptProvenance self, FloatKey a0) -> double"""
15457  return _IMP_core.ScriptProvenance_get_derivative(self, a0)
15458 
15459  def get_name(self):
15460  r"""get_name(ScriptProvenance self) -> std::string"""
15461  return _IMP_core.ScriptProvenance_get_name(self)
15462 
15463  def clear_caches(self):
15464  r"""clear_caches(ScriptProvenance self)"""
15465  return _IMP_core.ScriptProvenance_clear_caches(self)
15466 
15467  def set_name(self, a0):
15468  r"""set_name(ScriptProvenance self, std::string a0)"""
15469  return _IMP_core.ScriptProvenance_set_name(self, a0)
15470 
15471  def set_check_level(self, a0):
15472  r"""set_check_level(ScriptProvenance self, IMP::CheckLevel a0)"""
15473  return _IMP_core.ScriptProvenance_set_check_level(self, a0)
15474 
15475  def add_to_derivative(self, a0, a1, a2):
15476  r"""add_to_derivative(ScriptProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
15477  return _IMP_core.ScriptProvenance_add_to_derivative(self, a0, a1, a2)
15478 
15479  def set_is_optimized(self, a0, a1):
15480  r"""set_is_optimized(ScriptProvenance self, FloatKey a0, bool a1)"""
15481  return _IMP_core.ScriptProvenance_set_is_optimized(self, a0, a1)
15482 
15483  def get_is_optimized(self, a0):
15484  r"""get_is_optimized(ScriptProvenance self, FloatKey a0) -> bool"""
15485  return _IMP_core.ScriptProvenance_get_is_optimized(self, a0)
15486 
15487  def get_check_level(self):
15488  r"""get_check_level(ScriptProvenance self) -> IMP::CheckLevel"""
15489  return _IMP_core.ScriptProvenance_get_check_level(self)
15490 
15491  def __eq__(self, *args):
15492  r"""
15493  __eq__(ScriptProvenance self, ScriptProvenance o) -> bool
15494  __eq__(ScriptProvenance self, Particle d) -> bool
15495  """
15496  return _IMP_core.ScriptProvenance___eq__(self, *args)
15497 
15498  def __ne__(self, *args):
15499  r"""
15500  __ne__(ScriptProvenance self, ScriptProvenance o) -> bool
15501  __ne__(ScriptProvenance self, Particle d) -> bool
15502  """
15503  return _IMP_core.ScriptProvenance___ne__(self, *args)
15504 
15505  def __le__(self, *args):
15506  r"""
15507  __le__(ScriptProvenance self, ScriptProvenance o) -> bool
15508  __le__(ScriptProvenance self, Particle d) -> bool
15509  """
15510  return _IMP_core.ScriptProvenance___le__(self, *args)
15511 
15512  def __lt__(self, *args):
15513  r"""
15514  __lt__(ScriptProvenance self, ScriptProvenance o) -> bool
15515  __lt__(ScriptProvenance self, Particle d) -> bool
15516  """
15517  return _IMP_core.ScriptProvenance___lt__(self, *args)
15518 
15519  def __ge__(self, *args):
15520  r"""
15521  __ge__(ScriptProvenance self, ScriptProvenance o) -> bool
15522  __ge__(ScriptProvenance self, Particle d) -> bool
15523  """
15524  return _IMP_core.ScriptProvenance___ge__(self, *args)
15525 
15526  def __gt__(self, *args):
15527  r"""
15528  __gt__(ScriptProvenance self, ScriptProvenance o) -> bool
15529  __gt__(ScriptProvenance self, Particle d) -> bool
15530  """
15531  return _IMP_core.ScriptProvenance___gt__(self, *args)
15532 
15533  def __hash__(self):
15534  r"""__hash__(ScriptProvenance self) -> std::size_t"""
15535  return _IMP_core.ScriptProvenance___hash__(self)
15536 
15537  def __str__(self):
15538  r"""__str__(ScriptProvenance self) -> std::string"""
15539  return _IMP_core.ScriptProvenance___str__(self)
15540 
15541  def __repr__(self):
15542  r"""__repr__(ScriptProvenance self) -> std::string"""
15543  return _IMP_core.ScriptProvenance___repr__(self)
15544 
15545  def _get_as_binary(self):
15546  r"""_get_as_binary(ScriptProvenance self) -> PyObject *"""
15547  return _IMP_core.ScriptProvenance__get_as_binary(self)
15548 
15549  def _set_from_binary(self, p):
15550  r"""_set_from_binary(ScriptProvenance self, PyObject * p)"""
15551  return _IMP_core.ScriptProvenance__set_from_binary(self, p)
15552 
15553  def __getstate__(self):
15554  p = self._get_as_binary()
15555  if len(self.__dict__) > 1:
15556  d = self.__dict__.copy()
15557  del d['this']
15558  p = (d, p)
15559  return p
15560 
15561  def __setstate__(self, p):
15562  if not hasattr(self, 'this'):
15563  self.__init__()
15564  if isinstance(p, tuple):
15565  d, p = p
15566  self.__dict__.update(d)
15567  return self._set_from_binary(p)
15568 
15569  __swig_destroy__ = _IMP_core.delete_ScriptProvenance
15570 
15571 # Register ScriptProvenance in _IMP_core:
15572 _IMP_core.ScriptProvenance_swigregister(ScriptProvenance)
15573 class SoftwareProvenance(Provenance):
15574  r"""Proxy of C++ IMP::core::SoftwareProvenance class."""
15575 
15576  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
15577 
15578  def set_software_name(self, name):
15579  r"""set_software_name(SoftwareProvenance self, std::string name)"""
15580  return _IMP_core.SoftwareProvenance_set_software_name(self, name)
15581 
15582  def get_software_name(self):
15583  r"""get_software_name(SoftwareProvenance self) -> std::string"""
15584  return _IMP_core.SoftwareProvenance_get_software_name(self)
15585 
15586  def set_version(self, version):
15587  r"""set_version(SoftwareProvenance self, std::string version)"""
15588  return _IMP_core.SoftwareProvenance_set_version(self, version)
15589 
15590  def get_version(self):
15591  r"""get_version(SoftwareProvenance self) -> std::string"""
15592  return _IMP_core.SoftwareProvenance_get_version(self)
15593 
15594  def set_location(self, location):
15595  r"""set_location(SoftwareProvenance self, std::string location)"""
15596  return _IMP_core.SoftwareProvenance_set_location(self, location)
15597 
15598  def get_location(self):
15599  r"""get_location(SoftwareProvenance self) -> std::string"""
15600  return _IMP_core.SoftwareProvenance_get_location(self)
15601 
15602  def __init__(self, *args):
15603  r"""
15604  __init__(SoftwareProvenance self) -> SoftwareProvenance
15605  __init__(SoftwareProvenance self, Model m, ParticleIndex id) -> SoftwareProvenance
15606  __init__(SoftwareProvenance self, _ParticleAdaptor d) -> SoftwareProvenance
15607  """
15608  _IMP_core.SoftwareProvenance_swiginit(self, _IMP_core.new_SoftwareProvenance(*args))
15609 
15610  @staticmethod
15611  def get_is_setup(*args):
15612  r"""
15613  get_is_setup(Model m, ParticleIndex pi) -> bool
15614  get_is_setup(_ParticleAdaptor p) -> bool
15615  """
15616  return _IMP_core.SoftwareProvenance_get_is_setup(*args)
15617 
15618  def show(self, *args):
15619  r"""show(SoftwareProvenance self, _ostream out=std::cout)"""
15620  return _IMP_core.SoftwareProvenance_show(self, *args)
15621 
15622  @staticmethod
15623  def setup_particle(*args):
15624  r"""
15625  setup_particle(Model m, ParticleIndex pi, std::string name, std::string version, std::string location) -> SoftwareProvenance
15626  setup_particle(_ParticleAdaptor pa, std::string name, std::string version, std::string location) -> SoftwareProvenance
15627  setup_particle(Model m, ParticleIndex pi, SoftwareProvenance o) -> SoftwareProvenance
15628  setup_particle(_ParticleAdaptor pa, SoftwareProvenance o) -> SoftwareProvenance
15629  """
15630  return _IMP_core.SoftwareProvenance_setup_particle(*args)
15631 
15632  def add_attribute(self, *args):
15633  r"""
15634  add_attribute(SoftwareProvenance self, FloatKey k, IMP::Float v, bool opt)
15635  add_attribute(SoftwareProvenance self, FloatKey a0, IMP::Float a1)
15636  add_attribute(SoftwareProvenance self, IntKey a0, IMP::Int a1)
15637  add_attribute(SoftwareProvenance self, FloatsKey a0, IMP::Floats a1)
15638  add_attribute(SoftwareProvenance self, IntsKey a0, IMP::Ints a1)
15639  add_attribute(SoftwareProvenance self, StringKey a0, IMP::String a1)
15640  add_attribute(SoftwareProvenance self, ParticleIndexKey a0, Particle a1)
15641  add_attribute(SoftwareProvenance self, ObjectKey a0, Object a1)
15642  add_attribute(SoftwareProvenance self, SparseFloatKey a0, IMP::Float a1)
15643  add_attribute(SoftwareProvenance self, SparseIntKey a0, IMP::Int a1)
15644  add_attribute(SoftwareProvenance self, SparseStringKey a0, IMP::String a1)
15645  add_attribute(SoftwareProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15646  """
15647  return _IMP_core.SoftwareProvenance_add_attribute(self, *args)
15648 
15649  def get_value(self, *args):
15650  r"""
15651  get_value(SoftwareProvenance self, FloatKey a0) -> IMP::Float
15652  get_value(SoftwareProvenance self, IntKey a0) -> IMP::Int
15653  get_value(SoftwareProvenance self, FloatsKey a0) -> IMP::Floats
15654  get_value(SoftwareProvenance self, IntsKey a0) -> IMP::Ints
15655  get_value(SoftwareProvenance self, StringKey a0) -> IMP::String
15656  get_value(SoftwareProvenance self, ParticleIndexKey a0) -> Particle
15657  get_value(SoftwareProvenance self, ObjectKey a0) -> Object
15658  get_value(SoftwareProvenance self, SparseFloatKey a0) -> IMP::Float
15659  get_value(SoftwareProvenance self, SparseIntKey a0) -> IMP::Int
15660  get_value(SoftwareProvenance self, SparseStringKey a0) -> IMP::String
15661  get_value(SoftwareProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
15662  """
15663  return _IMP_core.SoftwareProvenance_get_value(self, *args)
15664 
15665  def set_value(self, *args):
15666  r"""
15667  set_value(SoftwareProvenance self, FloatKey a0, IMP::Float a1)
15668  set_value(SoftwareProvenance self, IntKey a0, IMP::Int a1)
15669  set_value(SoftwareProvenance self, FloatsKey a0, IMP::Floats a1)
15670  set_value(SoftwareProvenance self, IntsKey a0, IMP::Ints a1)
15671  set_value(SoftwareProvenance self, StringKey a0, IMP::String a1)
15672  set_value(SoftwareProvenance self, ParticleIndexKey a0, Particle a1)
15673  set_value(SoftwareProvenance self, ObjectKey a0, Object a1)
15674  set_value(SoftwareProvenance self, SparseFloatKey a0, IMP::Float a1)
15675  set_value(SoftwareProvenance self, SparseIntKey a0, IMP::Int a1)
15676  set_value(SoftwareProvenance self, SparseStringKey a0, IMP::String a1)
15677  set_value(SoftwareProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15678  """
15679  return _IMP_core.SoftwareProvenance_set_value(self, *args)
15680 
15681  def remove_attribute(self, *args):
15682  r"""
15683  remove_attribute(SoftwareProvenance self, FloatKey a0)
15684  remove_attribute(SoftwareProvenance self, IntKey a0)
15685  remove_attribute(SoftwareProvenance self, FloatsKey a0)
15686  remove_attribute(SoftwareProvenance self, IntsKey a0)
15687  remove_attribute(SoftwareProvenance self, StringKey a0)
15688  remove_attribute(SoftwareProvenance self, ParticleIndexKey a0)
15689  remove_attribute(SoftwareProvenance self, ObjectKey a0)
15690  remove_attribute(SoftwareProvenance self, SparseFloatKey a0)
15691  remove_attribute(SoftwareProvenance self, SparseIntKey a0)
15692  remove_attribute(SoftwareProvenance self, SparseStringKey a0)
15693  remove_attribute(SoftwareProvenance self, SparseParticleIndexKey a0)
15694  """
15695  return _IMP_core.SoftwareProvenance_remove_attribute(self, *args)
15696 
15697  def has_attribute(self, *args):
15698  r"""
15699  has_attribute(SoftwareProvenance self, FloatKey a0) -> bool
15700  has_attribute(SoftwareProvenance self, IntKey a0) -> bool
15701  has_attribute(SoftwareProvenance self, FloatsKey a0) -> bool
15702  has_attribute(SoftwareProvenance self, IntsKey a0) -> bool
15703  has_attribute(SoftwareProvenance self, StringKey a0) -> bool
15704  has_attribute(SoftwareProvenance self, ParticleIndexKey a0) -> bool
15705  has_attribute(SoftwareProvenance self, ObjectKey a0) -> bool
15706  has_attribute(SoftwareProvenance self, SparseFloatKey a0) -> bool
15707  has_attribute(SoftwareProvenance self, SparseIntKey a0) -> bool
15708  has_attribute(SoftwareProvenance self, SparseStringKey a0) -> bool
15709  has_attribute(SoftwareProvenance self, SparseParticleIndexKey a0) -> bool
15710  """
15711  return _IMP_core.SoftwareProvenance_has_attribute(self, *args)
15712 
15713  def get_derivative(self, a0):
15714  r"""get_derivative(SoftwareProvenance self, FloatKey a0) -> double"""
15715  return _IMP_core.SoftwareProvenance_get_derivative(self, a0)
15716 
15717  def get_name(self):
15718  r"""get_name(SoftwareProvenance self) -> std::string"""
15719  return _IMP_core.SoftwareProvenance_get_name(self)
15720 
15721  def clear_caches(self):
15722  r"""clear_caches(SoftwareProvenance self)"""
15723  return _IMP_core.SoftwareProvenance_clear_caches(self)
15724 
15725  def set_name(self, a0):
15726  r"""set_name(SoftwareProvenance self, std::string a0)"""
15727  return _IMP_core.SoftwareProvenance_set_name(self, a0)
15728 
15729  def set_check_level(self, a0):
15730  r"""set_check_level(SoftwareProvenance self, IMP::CheckLevel a0)"""
15731  return _IMP_core.SoftwareProvenance_set_check_level(self, a0)
15732 
15733  def add_to_derivative(self, a0, a1, a2):
15734  r"""add_to_derivative(SoftwareProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
15735  return _IMP_core.SoftwareProvenance_add_to_derivative(self, a0, a1, a2)
15736 
15737  def set_is_optimized(self, a0, a1):
15738  r"""set_is_optimized(SoftwareProvenance self, FloatKey a0, bool a1)"""
15739  return _IMP_core.SoftwareProvenance_set_is_optimized(self, a0, a1)
15740 
15741  def get_is_optimized(self, a0):
15742  r"""get_is_optimized(SoftwareProvenance self, FloatKey a0) -> bool"""
15743  return _IMP_core.SoftwareProvenance_get_is_optimized(self, a0)
15744 
15745  def get_check_level(self):
15746  r"""get_check_level(SoftwareProvenance self) -> IMP::CheckLevel"""
15747  return _IMP_core.SoftwareProvenance_get_check_level(self)
15748 
15749  def __eq__(self, *args):
15750  r"""
15751  __eq__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15752  __eq__(SoftwareProvenance self, Particle d) -> bool
15753  """
15754  return _IMP_core.SoftwareProvenance___eq__(self, *args)
15755 
15756  def __ne__(self, *args):
15757  r"""
15758  __ne__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15759  __ne__(SoftwareProvenance self, Particle d) -> bool
15760  """
15761  return _IMP_core.SoftwareProvenance___ne__(self, *args)
15762 
15763  def __le__(self, *args):
15764  r"""
15765  __le__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15766  __le__(SoftwareProvenance self, Particle d) -> bool
15767  """
15768  return _IMP_core.SoftwareProvenance___le__(self, *args)
15769 
15770  def __lt__(self, *args):
15771  r"""
15772  __lt__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15773  __lt__(SoftwareProvenance self, Particle d) -> bool
15774  """
15775  return _IMP_core.SoftwareProvenance___lt__(self, *args)
15776 
15777  def __ge__(self, *args):
15778  r"""
15779  __ge__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15780  __ge__(SoftwareProvenance self, Particle d) -> bool
15781  """
15782  return _IMP_core.SoftwareProvenance___ge__(self, *args)
15783 
15784  def __gt__(self, *args):
15785  r"""
15786  __gt__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15787  __gt__(SoftwareProvenance self, Particle d) -> bool
15788  """
15789  return _IMP_core.SoftwareProvenance___gt__(self, *args)
15790 
15791  def __hash__(self):
15792  r"""__hash__(SoftwareProvenance self) -> std::size_t"""
15793  return _IMP_core.SoftwareProvenance___hash__(self)
15794 
15795  def __str__(self):
15796  r"""__str__(SoftwareProvenance self) -> std::string"""
15797  return _IMP_core.SoftwareProvenance___str__(self)
15798 
15799  def __repr__(self):
15800  r"""__repr__(SoftwareProvenance self) -> std::string"""
15801  return _IMP_core.SoftwareProvenance___repr__(self)
15802 
15803  def _get_as_binary(self):
15804  r"""_get_as_binary(SoftwareProvenance self) -> PyObject *"""
15805  return _IMP_core.SoftwareProvenance__get_as_binary(self)
15806 
15807  def _set_from_binary(self, p):
15808  r"""_set_from_binary(SoftwareProvenance self, PyObject * p)"""
15809  return _IMP_core.SoftwareProvenance__set_from_binary(self, p)
15810 
15811  def __getstate__(self):
15812  p = self._get_as_binary()
15813  if len(self.__dict__) > 1:
15814  d = self.__dict__.copy()
15815  del d['this']
15816  p = (d, p)
15817  return p
15818 
15819  def __setstate__(self, p):
15820  if not hasattr(self, 'this'):
15821  self.__init__()
15822  if isinstance(p, tuple):
15823  d, p = p
15824  self.__dict__.update(d)
15825  return self._set_from_binary(p)
15826 
15827  __swig_destroy__ = _IMP_core.delete_SoftwareProvenance
15828 
15829 # Register SoftwareProvenance in _IMP_core:
15830 _IMP_core.SoftwareProvenance_swigregister(SoftwareProvenance)
15831 class Provenanced(IMP.Decorator):
15832  r"""Proxy of C++ IMP::core::Provenanced class."""
15833 
15834  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
15835 
15836  def get_provenance(self):
15837  r"""get_provenance(Provenanced self) -> Provenance"""
15838  return _IMP_core.Provenanced_get_provenance(self)
15839 
15840  def set_provenance(self, p):
15841  r"""set_provenance(Provenanced self, Provenance p)"""
15842  return _IMP_core.Provenanced_set_provenance(self, p)
15843 
15844  def __init__(self, *args):
15845  r"""
15846  __init__(Provenanced self) -> Provenanced
15847  __init__(Provenanced self, Model m, ParticleIndex id) -> Provenanced
15848  __init__(Provenanced self, _ParticleAdaptor d) -> Provenanced
15849  """
15850  _IMP_core.Provenanced_swiginit(self, _IMP_core.new_Provenanced(*args))
15851 
15852  @staticmethod
15853  def get_is_setup(*args):
15854  r"""
15855  get_is_setup(Model m, ParticleIndex pi) -> bool
15856  get_is_setup(_ParticleAdaptor p) -> bool
15857  """
15858  return _IMP_core.Provenanced_get_is_setup(*args)
15859 
15860  def show(self, *args):
15861  r"""show(Provenanced self, _ostream out=std::cout)"""
15862  return _IMP_core.Provenanced_show(self, *args)
15863 
15864  @staticmethod
15865  def setup_particle(*args):
15866  r"""
15867  setup_particle(Model m, ParticleIndex pi, Provenance p) -> Provenanced
15868  setup_particle(_ParticleAdaptor pa, Provenance p) -> Provenanced
15869  """
15870  return _IMP_core.Provenanced_setup_particle(*args)
15871 
15872  def add_attribute(self, *args):
15873  r"""
15874  add_attribute(Provenanced self, FloatKey k, IMP::Float v, bool opt)
15875  add_attribute(Provenanced self, FloatKey a0, IMP::Float a1)
15876  add_attribute(Provenanced self, IntKey a0, IMP::Int a1)
15877  add_attribute(Provenanced self, FloatsKey a0, IMP::Floats a1)
15878  add_attribute(Provenanced self, IntsKey a0, IMP::Ints a1)
15879  add_attribute(Provenanced self, StringKey a0, IMP::String a1)
15880  add_attribute(Provenanced self, ParticleIndexKey a0, Particle a1)
15881  add_attribute(Provenanced self, ObjectKey a0, Object a1)
15882  add_attribute(Provenanced self, SparseFloatKey a0, IMP::Float a1)
15883  add_attribute(Provenanced self, SparseIntKey a0, IMP::Int a1)
15884  add_attribute(Provenanced self, SparseStringKey a0, IMP::String a1)
15885  add_attribute(Provenanced self, SparseParticleIndexKey a0, ParticleIndex a1)
15886  """
15887  return _IMP_core.Provenanced_add_attribute(self, *args)
15888 
15889  def get_value(self, *args):
15890  r"""
15891  get_value(Provenanced self, FloatKey a0) -> IMP::Float
15892  get_value(Provenanced self, IntKey a0) -> IMP::Int
15893  get_value(Provenanced self, FloatsKey a0) -> IMP::Floats
15894  get_value(Provenanced self, IntsKey a0) -> IMP::Ints
15895  get_value(Provenanced self, StringKey a0) -> IMP::String
15896  get_value(Provenanced self, ParticleIndexKey a0) -> Particle
15897  get_value(Provenanced self, ObjectKey a0) -> Object
15898  get_value(Provenanced self, SparseFloatKey a0) -> IMP::Float
15899  get_value(Provenanced self, SparseIntKey a0) -> IMP::Int
15900  get_value(Provenanced self, SparseStringKey a0) -> IMP::String
15901  get_value(Provenanced self, SparseParticleIndexKey a0) -> ParticleIndex
15902  """
15903  return _IMP_core.Provenanced_get_value(self, *args)
15904 
15905  def set_value(self, *args):
15906  r"""
15907  set_value(Provenanced self, FloatKey a0, IMP::Float a1)
15908  set_value(Provenanced self, IntKey a0, IMP::Int a1)
15909  set_value(Provenanced self, FloatsKey a0, IMP::Floats a1)
15910  set_value(Provenanced self, IntsKey a0, IMP::Ints a1)
15911  set_value(Provenanced self, StringKey a0, IMP::String a1)
15912  set_value(Provenanced self, ParticleIndexKey a0, Particle a1)
15913  set_value(Provenanced self, ObjectKey a0, Object a1)
15914  set_value(Provenanced self, SparseFloatKey a0, IMP::Float a1)
15915  set_value(Provenanced self, SparseIntKey a0, IMP::Int a1)
15916  set_value(Provenanced self, SparseStringKey a0, IMP::String a1)
15917  set_value(Provenanced self, SparseParticleIndexKey a0, ParticleIndex a1)
15918  """
15919  return _IMP_core.Provenanced_set_value(self, *args)
15920 
15921  def remove_attribute(self, *args):
15922  r"""
15923  remove_attribute(Provenanced self, FloatKey a0)
15924  remove_attribute(Provenanced self, IntKey a0)
15925  remove_attribute(Provenanced self, FloatsKey a0)
15926  remove_attribute(Provenanced self, IntsKey a0)
15927  remove_attribute(Provenanced self, StringKey a0)
15928  remove_attribute(Provenanced self, ParticleIndexKey a0)
15929  remove_attribute(Provenanced self, ObjectKey a0)
15930  remove_attribute(Provenanced self, SparseFloatKey a0)
15931  remove_attribute(Provenanced self, SparseIntKey a0)
15932  remove_attribute(Provenanced self, SparseStringKey a0)
15933  remove_attribute(Provenanced self, SparseParticleIndexKey a0)
15934  """
15935  return _IMP_core.Provenanced_remove_attribute(self, *args)
15936 
15937  def has_attribute(self, *args):
15938  r"""
15939  has_attribute(Provenanced self, FloatKey a0) -> bool
15940  has_attribute(Provenanced self, IntKey a0) -> bool
15941  has_attribute(Provenanced self, FloatsKey a0) -> bool
15942  has_attribute(Provenanced self, IntsKey a0) -> bool
15943  has_attribute(Provenanced self, StringKey a0) -> bool
15944  has_attribute(Provenanced self, ParticleIndexKey a0) -> bool
15945  has_attribute(Provenanced self, ObjectKey a0) -> bool
15946  has_attribute(Provenanced self, SparseFloatKey a0) -> bool
15947  has_attribute(Provenanced self, SparseIntKey a0) -> bool
15948  has_attribute(Provenanced self, SparseStringKey a0) -> bool
15949  has_attribute(Provenanced self, SparseParticleIndexKey a0) -> bool
15950  """
15951  return _IMP_core.Provenanced_has_attribute(self, *args)
15952 
15953  def get_derivative(self, a0):
15954  r"""get_derivative(Provenanced self, FloatKey a0) -> double"""
15955  return _IMP_core.Provenanced_get_derivative(self, a0)
15956 
15957  def get_name(self):
15958  r"""get_name(Provenanced self) -> std::string"""
15959  return _IMP_core.Provenanced_get_name(self)
15960 
15961  def clear_caches(self):
15962  r"""clear_caches(Provenanced self)"""
15963  return _IMP_core.Provenanced_clear_caches(self)
15964 
15965  def set_name(self, a0):
15966  r"""set_name(Provenanced self, std::string a0)"""
15967  return _IMP_core.Provenanced_set_name(self, a0)
15968 
15969  def set_check_level(self, a0):
15970  r"""set_check_level(Provenanced self, IMP::CheckLevel a0)"""
15971  return _IMP_core.Provenanced_set_check_level(self, a0)
15972 
15973  def add_to_derivative(self, a0, a1, a2):
15974  r"""add_to_derivative(Provenanced self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
15975  return _IMP_core.Provenanced_add_to_derivative(self, a0, a1, a2)
15976 
15977  def set_is_optimized(self, a0, a1):
15978  r"""set_is_optimized(Provenanced self, FloatKey a0, bool a1)"""
15979  return _IMP_core.Provenanced_set_is_optimized(self, a0, a1)
15980 
15981  def get_is_optimized(self, a0):
15982  r"""get_is_optimized(Provenanced self, FloatKey a0) -> bool"""
15983  return _IMP_core.Provenanced_get_is_optimized(self, a0)
15984 
15985  def get_check_level(self):
15986  r"""get_check_level(Provenanced self) -> IMP::CheckLevel"""
15987  return _IMP_core.Provenanced_get_check_level(self)
15988 
15989  def __eq__(self, *args):
15990  r"""
15991  __eq__(Provenanced self, Provenanced o) -> bool
15992  __eq__(Provenanced self, Particle d) -> bool
15993  """
15994  return _IMP_core.Provenanced___eq__(self, *args)
15995 
15996  def __ne__(self, *args):
15997  r"""
15998  __ne__(Provenanced self, Provenanced o) -> bool
15999  __ne__(Provenanced self, Particle d) -> bool
16000  """
16001  return _IMP_core.Provenanced___ne__(self, *args)
16002 
16003  def __le__(self, *args):
16004  r"""
16005  __le__(Provenanced self, Provenanced o) -> bool
16006  __le__(Provenanced self, Particle d) -> bool
16007  """
16008  return _IMP_core.Provenanced___le__(self, *args)
16009 
16010  def __lt__(self, *args):
16011  r"""
16012  __lt__(Provenanced self, Provenanced o) -> bool
16013  __lt__(Provenanced self, Particle d) -> bool
16014  """
16015  return _IMP_core.Provenanced___lt__(self, *args)
16016 
16017  def __ge__(self, *args):
16018  r"""
16019  __ge__(Provenanced self, Provenanced o) -> bool
16020  __ge__(Provenanced self, Particle d) -> bool
16021  """
16022  return _IMP_core.Provenanced___ge__(self, *args)
16023 
16024  def __gt__(self, *args):
16025  r"""
16026  __gt__(Provenanced self, Provenanced o) -> bool
16027  __gt__(Provenanced self, Particle d) -> bool
16028  """
16029  return _IMP_core.Provenanced___gt__(self, *args)
16030 
16031  def __hash__(self):
16032  r"""__hash__(Provenanced self) -> std::size_t"""
16033  return _IMP_core.Provenanced___hash__(self)
16034 
16035  def __str__(self):
16036  r"""__str__(Provenanced self) -> std::string"""
16037  return _IMP_core.Provenanced___str__(self)
16038 
16039  def __repr__(self):
16040  r"""__repr__(Provenanced self) -> std::string"""
16041  return _IMP_core.Provenanced___repr__(self)
16042 
16043  def _get_as_binary(self):
16044  r"""_get_as_binary(Provenanced self) -> PyObject *"""
16045  return _IMP_core.Provenanced__get_as_binary(self)
16046 
16047  def _set_from_binary(self, p):
16048  r"""_set_from_binary(Provenanced self, PyObject * p)"""
16049  return _IMP_core.Provenanced__set_from_binary(self, p)
16050 
16051  def __getstate__(self):
16052  p = self._get_as_binary()
16053  if len(self.__dict__) > 1:
16054  d = self.__dict__.copy()
16055  del d['this']
16056  p = (d, p)
16057  return p
16058 
16059  def __setstate__(self, p):
16060  if not hasattr(self, 'this'):
16061  self.__init__()
16062  if isinstance(p, tuple):
16063  d, p = p
16064  self.__dict__.update(d)
16065  return self._set_from_binary(p)
16066 
16067  __swig_destroy__ = _IMP_core.delete_Provenanced
16068 
16069 # Register Provenanced in _IMP_core:
16070 _IMP_core.Provenanced_swigregister(Provenanced)
16071 
16072 def add_provenance(m, pi, p):
16073  r"""add_provenance(Model m, ParticleIndex pi, Provenance p)"""
16074  return _IMP_core.add_provenance(m, pi, p)
16075 
16076 def create_clone(p):
16077  r"""create_clone(Provenance p) -> Provenance"""
16078  return _IMP_core.create_clone(p)
16079 
16081  r"""
16082  get_transformation_aligning_first_to_second(IMP::ParticlesTemp const & a, IMP::ParticlesTemp const & b) -> Transformation3D
16083  get_transformation_aligning_first_to_second(IMP::ParticlesTemp const & a, IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & b) -> Transformation3D
16084  get_transformation_aligning_first_to_second(IMP::Vector< IMP::algebra::VectorD< 3 >,std::allocator< IMP::algebra::VectorD< 3 > > > const & a, IMP::ParticlesTemp const & b) -> Transformation3D
16085  """
16086  return _IMP_core.get_transformation_aligning_first_to_second(*args)
16087 
16088 def create_restraint(ps, pp):
16089  r"""create_restraint(PairScore ps, IMP::ParticlePair pp) -> Restraint"""
16090  return _IMP_core.create_restraint(ps, pp)
16092  r"""Proxy of C++ IMP::core::TruncatedHarmonic< IMP::core::LOWER > class."""
16093 
16094  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16095 
16096  def __init__(self, *args):
16097  r"""
16098  __init__(TruncatedHarmonicLowerBound self, IMP::Float center, IMP::Float k, IMP::Float threshold, IMP::Float limit) -> TruncatedHarmonicLowerBound
16099  __init__(TruncatedHarmonicLowerBound self, IMP::Float center, IMP::Float k, IMP::Float threshold) -> TruncatedHarmonicLowerBound
16100  """
16101  _IMP_core.TruncatedHarmonicLowerBound_swiginit(self, _IMP_core.new_TruncatedHarmonicLowerBound(*args))
16102 
16103  def get_version_info(self):
16104  r"""get_version_info(TruncatedHarmonicLowerBound self) -> VersionInfo"""
16105  return _IMP_core.TruncatedHarmonicLowerBound_get_version_info(self)
16106  __swig_destroy__ = _IMP_core.delete_TruncatedHarmonicLowerBound
16107 
16108  def __str__(self):
16109  r"""__str__(TruncatedHarmonicLowerBound self) -> std::string"""
16110  return _IMP_core.TruncatedHarmonicLowerBound___str__(self)
16111 
16112  def __repr__(self):
16113  r"""__repr__(TruncatedHarmonicLowerBound self) -> std::string"""
16114  return _IMP_core.TruncatedHarmonicLowerBound___repr__(self)
16115 
16116  @staticmethod
16117  def get_from(o):
16118  return _object_cast_to_TruncatedHarmonic(o)
16119 
16120 
16121 # Register TruncatedHarmonicLowerBound in _IMP_core:
16122 _IMP_core.TruncatedHarmonicLowerBound_swigregister(TruncatedHarmonicLowerBound)
16124  r"""Proxy of C++ IMP::core::TruncatedHarmonic< IMP::core::UPPER > class."""
16125 
16126  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16127 
16128  def __init__(self, *args):
16129  r"""
16130  __init__(TruncatedHarmonicUpperBound self, IMP::Float center, IMP::Float k, IMP::Float threshold, IMP::Float limit) -> TruncatedHarmonicUpperBound
16131  __init__(TruncatedHarmonicUpperBound self, IMP::Float center, IMP::Float k, IMP::Float threshold) -> TruncatedHarmonicUpperBound
16132  """
16133  _IMP_core.TruncatedHarmonicUpperBound_swiginit(self, _IMP_core.new_TruncatedHarmonicUpperBound(*args))
16134 
16135  def get_version_info(self):
16136  r"""get_version_info(TruncatedHarmonicUpperBound self) -> VersionInfo"""
16137  return _IMP_core.TruncatedHarmonicUpperBound_get_version_info(self)
16138  __swig_destroy__ = _IMP_core.delete_TruncatedHarmonicUpperBound
16139 
16140  def __str__(self):
16141  r"""__str__(TruncatedHarmonicUpperBound self) -> std::string"""
16142  return _IMP_core.TruncatedHarmonicUpperBound___str__(self)
16143 
16144  def __repr__(self):
16145  r"""__repr__(TruncatedHarmonicUpperBound self) -> std::string"""
16146  return _IMP_core.TruncatedHarmonicUpperBound___repr__(self)
16147 
16148  @staticmethod
16149  def get_from(o):
16150  return _object_cast_to_TruncatedHarmonic(o)
16151 
16152 
16153 # Register TruncatedHarmonicUpperBound in _IMP_core:
16154 _IMP_core.TruncatedHarmonicUpperBound_swigregister(TruncatedHarmonicUpperBound)
16156  r"""Proxy of C++ IMP::core::TruncatedHarmonic< IMP::core::BOTH > class."""
16157 
16158  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16159 
16160  def __init__(self, *args):
16161  r"""
16162  __init__(TruncatedHarmonicBound self, IMP::Float center, IMP::Float k, IMP::Float threshold, IMP::Float limit) -> TruncatedHarmonicBound
16163  __init__(TruncatedHarmonicBound self, IMP::Float center, IMP::Float k, IMP::Float threshold) -> TruncatedHarmonicBound
16164  """
16165  _IMP_core.TruncatedHarmonicBound_swiginit(self, _IMP_core.new_TruncatedHarmonicBound(*args))
16166 
16167  def get_version_info(self):
16168  r"""get_version_info(TruncatedHarmonicBound self) -> VersionInfo"""
16169  return _IMP_core.TruncatedHarmonicBound_get_version_info(self)
16170  __swig_destroy__ = _IMP_core.delete_TruncatedHarmonicBound
16171 
16172  def __str__(self):
16173  r"""__str__(TruncatedHarmonicBound self) -> std::string"""
16174  return _IMP_core.TruncatedHarmonicBound___str__(self)
16175 
16176  def __repr__(self):
16177  r"""__repr__(TruncatedHarmonicBound self) -> std::string"""
16178  return _IMP_core.TruncatedHarmonicBound___repr__(self)
16179 
16180  @staticmethod
16181  def get_from(o):
16182  return _object_cast_to_TruncatedHarmonic(o)
16183 
16184 
16185 # Register TruncatedHarmonicBound in _IMP_core:
16186 _IMP_core.TruncatedHarmonicBound_swigregister(TruncatedHarmonicBound)
16187 class ParticleType(IMP._Value):
16188  r"""Proxy of C++ IMP::Key< 34897493 > class."""
16189 
16190  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16191 
16192  def __init__(self, *args):
16193  r"""
16194  __init__(ParticleType self) -> ParticleType
16195  __init__(ParticleType self, std::string const & c, bool is_implicit_add_permitted=True) -> ParticleType
16196  __init__(ParticleType self, unsigned int i) -> ParticleType
16197  """
16198  _IMP_core.ParticleType_swiginit(self, _IMP_core.new_ParticleType(*args))
16199 
16200  @staticmethod
16201  def add_key(sc):
16202  r"""add_key(std::string sc) -> unsigned int"""
16203  return _IMP_core.ParticleType_add_key(sc)
16204 
16205  @staticmethod
16206  def get_key_exists(sc):
16207  r"""get_key_exists(std::string sc) -> bool"""
16208  return _IMP_core.ParticleType_get_key_exists(sc)
16209 
16210  def get_string(self):
16211  r"""get_string(ParticleType self) -> std::string const"""
16212  return _IMP_core.ParticleType_get_string(self)
16213 
16214  def __cmp__(self, o):
16215  r"""__cmp__(ParticleType self, ParticleType o) -> int"""
16216  return _IMP_core.ParticleType___cmp__(self, o)
16217 
16218  def __eq__(self, o):
16219  r"""__eq__(ParticleType self, ParticleType o) -> bool"""
16220  return _IMP_core.ParticleType___eq__(self, o)
16221 
16222  def __ne__(self, o):
16223  r"""__ne__(ParticleType self, ParticleType o) -> bool"""
16224  return _IMP_core.ParticleType___ne__(self, o)
16225 
16226  def __lt__(self, o):
16227  r"""__lt__(ParticleType self, ParticleType o) -> bool"""
16228  return _IMP_core.ParticleType___lt__(self, o)
16229 
16230  def __gt__(self, o):
16231  r"""__gt__(ParticleType self, ParticleType o) -> bool"""
16232  return _IMP_core.ParticleType___gt__(self, o)
16233 
16234  def __ge__(self, o):
16235  r"""__ge__(ParticleType self, ParticleType o) -> bool"""
16236  return _IMP_core.ParticleType___ge__(self, o)
16237 
16238  def __le__(self, o):
16239  r"""__le__(ParticleType self, ParticleType o) -> bool"""
16240  return _IMP_core.ParticleType___le__(self, o)
16241 
16242  def __hash__(self):
16243  r"""__hash__(ParticleType self) -> std::size_t"""
16244  return _IMP_core.ParticleType___hash__(self)
16245 
16246  def show(self, *args):
16247  r"""show(ParticleType self, _ostream out=std::cout)"""
16248  return _IMP_core.ParticleType_show(self, *args)
16249 
16250  @staticmethod
16251  def add_alias(old_key, new_name):
16252  r"""add_alias(ParticleType old_key, std::string new_name) -> ParticleType"""
16253  return _IMP_core.ParticleType_add_alias(old_key, new_name)
16254 
16255  @staticmethod
16256  def get_number_of_keys():
16257  r"""get_number_of_keys() -> unsigned int"""
16258  return _IMP_core.ParticleType_get_number_of_keys()
16259 
16260  def get_index(self):
16261  r"""get_index(ParticleType self) -> unsigned int"""
16262  return _IMP_core.ParticleType_get_index(self)
16263 
16264  @staticmethod
16265  def show_all(out):
16266  r"""show_all(_ostream out)"""
16267  return _IMP_core.ParticleType_show_all(out)
16268 
16269  @staticmethod
16270  def get_all_strings():
16271  r"""get_all_strings() -> IMP::Vector< std::string >"""
16272  return _IMP_core.ParticleType_get_all_strings()
16273 
16274  @staticmethod
16275  def get_number_unique():
16276  r"""get_number_unique() -> unsigned int"""
16277  return _IMP_core.ParticleType_get_number_unique()
16278 
16279  def __str__(self):
16280  r"""__str__(ParticleType self) -> std::string"""
16281  return _IMP_core.ParticleType___str__(self)
16282 
16283  def __repr__(self):
16284  r"""__repr__(ParticleType self) -> std::string"""
16285  return _IMP_core.ParticleType___repr__(self)
16286  __swig_destroy__ = _IMP_core.delete_ParticleType
16287 
16288 # Register ParticleType in _IMP_core:
16289 _IMP_core.ParticleType_swigregister(ParticleType)
16291  r"""Proxy of C++ IMP::core::GenericAttributeSingletonScore< UnaryFunction > class."""
16292 
16293  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16294  __repr__ = _swig_repr
16295 
16296  def __init__(self, f, k):
16297  r"""__init__(AttributeSingletonScore self, UnaryFunction f, FloatKey k) -> AttributeSingletonScore"""
16298  _IMP_core.AttributeSingletonScore_swiginit(self, _IMP_core.new_AttributeSingletonScore(f, k))
16299 
16300  def do_get_inputs(self, m, pis):
16301  r"""do_get_inputs(AttributeSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
16302  return _IMP_core.AttributeSingletonScore_do_get_inputs(self, m, pis)
16303 
16304  def get_unary_function(self):
16305  r"""get_unary_function(AttributeSingletonScore self) -> UnaryFunction"""
16306  return _IMP_core.AttributeSingletonScore_get_unary_function(self)
16307 
16308  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
16309  r"""evaluate_indexes(AttributeSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
16310  return _IMP_core.AttributeSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
16311 
16312  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
16313  r"""evaluate_indexes_scores(AttributeSingletonScore 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"""
16314  return _IMP_core.AttributeSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
16315 
16316  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
16317  r"""evaluate_indexes_delta(AttributeSingletonScore 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"""
16318  return _IMP_core.AttributeSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
16319 
16320  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
16321  r"""evaluate_if_good_indexes(AttributeSingletonScore 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"""
16322  return _IMP_core.AttributeSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
16323 
16324  def get_version_info(self):
16325  r"""get_version_info(AttributeSingletonScore self) -> VersionInfo"""
16326  return _IMP_core.AttributeSingletonScore_get_version_info(self)
16327  __swig_destroy__ = _IMP_core.delete_AttributeSingletonScore
16328 
16329  @staticmethod
16330  def get_from(o):
16331  return _object_cast_to_AttributeSingletonScore(o)
16332 
16333 
16334 # Register AttributeSingletonScore in _IMP_core:
16335 _IMP_core.AttributeSingletonScore_swigregister(AttributeSingletonScore)
16336 
16338  r"""create_generic_attribute_singleton_score(UnaryFunction uf, FloatKey k) -> AttributeSingletonScore"""
16339  return _IMP_core.create_generic_attribute_singleton_score(uf, k)
16341  r"""Proxy of C++ IMP::core::GenericBoundingBox3DSingletonScore< UnaryFunction > class."""
16342 
16343  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16344  __repr__ = _swig_repr
16345 
16346  def __init__(self, f, bb):
16347  r"""__init__(BoundingBox3DSingletonScore self, UnaryFunction f, BoundingBox3D bb) -> BoundingBox3DSingletonScore"""
16348  _IMP_core.BoundingBox3DSingletonScore_swiginit(self, _IMP_core.new_BoundingBox3DSingletonScore(f, bb))
16349 
16350  def get_unary_function(self):
16351  r"""get_unary_function(BoundingBox3DSingletonScore self) -> UnaryFunction"""
16352  return _IMP_core.BoundingBox3DSingletonScore_get_unary_function(self)
16353 
16354  def get_bounding_box(self):
16355  r"""get_bounding_box(BoundingBox3DSingletonScore self) -> BoundingBox3D"""
16356  return _IMP_core.BoundingBox3DSingletonScore_get_bounding_box(self)
16357 
16358  def do_get_inputs(self, m, pis):
16359  r"""do_get_inputs(BoundingBox3DSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
16360  return _IMP_core.BoundingBox3DSingletonScore_do_get_inputs(self, m, pis)
16361 
16362  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
16363  r"""evaluate_indexes(BoundingBox3DSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
16364  return _IMP_core.BoundingBox3DSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
16365 
16366  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
16367  r"""evaluate_indexes_scores(BoundingBox3DSingletonScore 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"""
16368  return _IMP_core.BoundingBox3DSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
16369 
16370  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
16371  r"""evaluate_indexes_delta(BoundingBox3DSingletonScore 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"""
16372  return _IMP_core.BoundingBox3DSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
16373 
16374  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
16375  r"""evaluate_if_good_indexes(BoundingBox3DSingletonScore 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"""
16376  return _IMP_core.BoundingBox3DSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
16377 
16378  def get_version_info(self):
16379  r"""get_version_info(BoundingBox3DSingletonScore self) -> VersionInfo"""
16380  return _IMP_core.BoundingBox3DSingletonScore_get_version_info(self)
16381  __swig_destroy__ = _IMP_core.delete_BoundingBox3DSingletonScore
16382 
16383  @staticmethod
16384  def get_from(o):
16385  return _object_cast_to_BoundingBox3DSingletonScore(o)
16386 
16387 
16388  def _get_jax(self):
16389  import jax.numpy as jnp
16390  import functools
16391  def score(jm, indexes, box_min, box_max, uf):
16392  xyzs = jm['xyz'][indexes]
16393  # This calculates the distance and the score for every point,
16394  # even those inside the box. IMP just returns zero for points
16395  # inside the box, skipping the distance calculation.
16396  # The implementation here is *probably* faster on a GPU since
16397  # we reduce the use of conditionals, and JAX will likely skip
16398  # the sqrt if uf is a harmonic, but this should be benchmarked.
16399  drs = jnp.linalg.norm(
16400  xyzs - jnp.clip(xyzs, box_min, box_max), axis=1)
16401  return uf(drs)
16402  uf = self.get_unary_function().get_derived_object()
16403  bb = self.get_bounding_box()
16404  f = functools.partial(score, box_min=jnp.asarray(bb.get_corner(0)),
16405  box_max=jnp.asarray(bb.get_corner(1)),
16406  uf=uf._get_jax())
16407  return self._wrap_jax(f)
16408 
16409 
16410 # Register BoundingBox3DSingletonScore in _IMP_core:
16411 _IMP_core.BoundingBox3DSingletonScore_swigregister(BoundingBox3DSingletonScore)
16412 
16413 def create_bounding_box_3d_singleton_score(f, bb):
16414  r"""create_bounding_box_3d_singleton_score(UnaryFunction f, BoundingBox3D bb) -> BoundingBox3DSingletonScore"""
16415  return _IMP_core.create_bounding_box_3d_singleton_score(f, bb)
16417  r"""Proxy of C++ IMP::core::GenericBoundingSphere3DSingletonScore< UnaryFunction > class."""
16418 
16419  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16420  __repr__ = _swig_repr
16421 
16422  def __init__(self, f, sphere):
16423  r"""__init__(BoundingSphere3DSingletonScore self, UnaryFunction f, Sphere3D sphere) -> BoundingSphere3DSingletonScore"""
16424  _IMP_core.BoundingSphere3DSingletonScore_swiginit(self, _IMP_core.new_BoundingSphere3DSingletonScore(f, sphere))
16425 
16426  def do_get_inputs(self, m, pis):
16427  r"""do_get_inputs(BoundingSphere3DSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
16428  return _IMP_core.BoundingSphere3DSingletonScore_do_get_inputs(self, m, pis)
16429 
16430  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
16431  r"""evaluate_indexes(BoundingSphere3DSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
16432  return _IMP_core.BoundingSphere3DSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
16433 
16434  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
16435  r"""evaluate_indexes_scores(BoundingSphere3DSingletonScore 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"""
16436  return _IMP_core.BoundingSphere3DSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
16437 
16438  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
16439  r"""evaluate_indexes_delta(BoundingSphere3DSingletonScore 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"""
16440  return _IMP_core.BoundingSphere3DSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
16441 
16442  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
16443  r"""evaluate_if_good_indexes(BoundingSphere3DSingletonScore 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"""
16444  return _IMP_core.BoundingSphere3DSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
16445 
16446  def get_version_info(self):
16447  r"""get_version_info(BoundingSphere3DSingletonScore self) -> VersionInfo"""
16448  return _IMP_core.BoundingSphere3DSingletonScore_get_version_info(self)
16449  __swig_destroy__ = _IMP_core.delete_BoundingSphere3DSingletonScore
16450 
16451  @staticmethod
16452  def get_from(o):
16453  return _object_cast_to_BoundingSphere3DSingletonScore(o)
16454 
16455 
16456 # Register BoundingSphere3DSingletonScore in _IMP_core:
16457 _IMP_core.BoundingSphere3DSingletonScore_swigregister(BoundingSphere3DSingletonScore)
16458 
16459 def create_bounding_sphere_3d_singleton_score(f, sphere):
16460  r"""create_bounding_sphere_3d_singleton_score(UnaryFunction f, Sphere3D sphere) -> BoundingSphere3DSingletonScore"""
16461  return _IMP_core.create_bounding_sphere_3d_singleton_score(f, sphere)
16463  r"""Proxy of C++ IMP::core::GenericDistanceToSingletonScore< UnaryFunction > class."""
16464 
16465  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16466  __repr__ = _swig_repr
16467 
16468  def __init__(self, *args):
16469  r"""
16470  __init__(DistanceToSingletonScore self, UnaryFunction f, Vector3D pt) -> DistanceToSingletonScore
16471  __init__(DistanceToSingletonScore self) -> DistanceToSingletonScore
16472  """
16473  _IMP_core.DistanceToSingletonScore_swiginit(self, _IMP_core.new_DistanceToSingletonScore(*args))
16474 
16475  def do_get_inputs(self, m, pis):
16476  r"""do_get_inputs(DistanceToSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
16477  return _IMP_core.DistanceToSingletonScore_do_get_inputs(self, m, pis)
16478 
16479  def get_unary_function(self):
16480  r"""get_unary_function(DistanceToSingletonScore self) -> UnaryFunction"""
16481  return _IMP_core.DistanceToSingletonScore_get_unary_function(self)
16482 
16483  def get_point(self):
16484  r"""get_point(DistanceToSingletonScore self) -> Vector3D"""
16485  return _IMP_core.DistanceToSingletonScore_get_point(self)
16486 
16487  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
16488  r"""evaluate_indexes(DistanceToSingletonScore self, Model m, IMP::ParticleIndexes const & p, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, bool all_indexes_checked=False) -> double"""
16489  return _IMP_core.DistanceToSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
16490 
16491  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
16492  r"""evaluate_indexes_scores(DistanceToSingletonScore 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"""
16493  return _IMP_core.DistanceToSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
16494 
16495  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
16496  r"""evaluate_indexes_delta(DistanceToSingletonScore 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"""
16497  return _IMP_core.DistanceToSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
16498 
16499  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
16500  r"""evaluate_if_good_indexes(DistanceToSingletonScore 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"""
16501  return _IMP_core.DistanceToSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
16502 
16503  def get_version_info(self):
16504  r"""get_version_info(DistanceToSingletonScore self) -> VersionInfo"""
16505  return _IMP_core.DistanceToSingletonScore_get_version_info(self)
16506  __swig_destroy__ = _IMP_core.delete_DistanceToSingletonScore
16507 
16508  @staticmethod
16509  def get_from(o):
16510  return _object_cast_to_DistanceToSingletonScore(o)
16511 
16512 
16513  def _get_as_binary(self):
16514  r"""_get_as_binary(DistanceToSingletonScore self) -> PyObject *"""
16515  return _IMP_core.DistanceToSingletonScore__get_as_binary(self)
16516 
16517  def _set_from_binary(self, p):
16518  r"""_set_from_binary(DistanceToSingletonScore self, PyObject * p)"""
16519  return _IMP_core.DistanceToSingletonScore__set_from_binary(self, p)
16520 
16521  def __getstate__(self):
16522  p = self._get_as_binary()
16523  if len(self.__dict__) > 1:
16524  d = self.__dict__.copy()
16525  del d['this']
16526  p = (d, p)
16527  return p
16528 
16529  def __setstate__(self, p):
16530  if not hasattr(self, 'this'):
16531  self.__init__()
16532  if isinstance(p, tuple):
16533  d, p = p
16534  self.__dict__.update(d)
16535  return self._set_from_binary(p)
16536 
16537 
16538  def _get_jax(self):
16539  import jax.numpy as jnp
16540  import functools
16541  def score(jm, indexes, point, uf):
16542  xyzs = jm['xyz'][indexes]
16543  drs = jnp.linalg.norm(xyzs - point, axis=1)
16544  return uf(drs)
16545  uf = self.get_unary_function().get_derived_object()
16546  f = functools.partial(score, point=jnp.array(self.get_point()),
16547  uf=uf._get_jax())
16548  return self._wrap_jax(f)
16549 
16550 
16551 # Register DistanceToSingletonScore in _IMP_core:
16552 _IMP_core.DistanceToSingletonScore_swigregister(DistanceToSingletonScore)
16553 
16554 def create_distance_to_singleton_score(f, pt):
16555  r"""create_distance_to_singleton_score(UnaryFunction f, Vector3D pt) -> DistanceToSingletonScore"""
16556  return _IMP_core.create_distance_to_singleton_score(f, pt)
16557 
16558 class SphereDistancePairScore(_SphereDistancePairScore.__bases__[0]):
16559  def __init__(self, uf):
16560  if isinstance(uf, HarmonicUpperBound):
16561  p = HarmonicUpperBoundSphereDistancePairScore(
16562  uf.get_mean(), uf.get_k())
16563  elif isinstance(uf, HarmonicLowerBound):
16564  if uf.get_mean() == 0.0:
16565  p = SoftSpherePairScore(uf.get_k())
16566  else:
16567  p = _SphereDistancePairScore(uf)
16568  elif isinstance(uf, Harmonic):
16569  p = HarmonicSphereDistancePairScore(
16570  uf.get_mean(), uf.get_k())
16571  else:
16572  p = _SphereDistancePairScore(uf)
16573  self.__dict__['_proxied'] = p
16574  def __getattr__(self, key):
16575  return getattr(self._proxied, key)
16576  def __setattr__(self, key, val):
16577  return setattr(self._proxied, key, val)
16578 
16579  def __getstate__(self):
16580  return self.__dict__['_proxied']
16581 
16582  def __setstate__(self, p):
16583  self.__dict__['_proxied'] = p
16584 
16585  @staticmethod
16586  def get_from(o):
16587  try:
16588  p = HarmonicUpperBoundSphereDistancePairScore.get_from(o)
16589  except ValueError:
16590  try:
16591  p = HarmonicSphereDistancePairScore.get_from(o)
16592  except ValueError:
16593  try:
16594  p = SoftSpherePairScore.get_from(o)
16595  except ValueError:
16596  p = _SphereDistancePairScore.get_from(o)
16597  obj = object.__new__(SphereDistancePairScore)
16598  obj.__dict__['_proxied'] = p
16599  return obj
16600 
16601 
16602 
16603 def get_all_provenance(p, types=[StructureProvenance, SampleProvenance,
16604  CombineProvenance, FilterProvenance,
16605  ClusterProvenance, ScriptProvenance,
16606  SoftwareProvenance]):
16607  """Yield all provenance decorators of the given types for the particle.
16608  By default, all provenance types are returned. Provenance is returned
16609  in order, most recent first. If the particle has no provenance
16610  information, an empty generator is returned."""
16611  if Provenanced.get_is_setup(p):
16612  prov = Provenanced(p).get_provenance()
16613  while prov:
16614  for c in types:
16615  if c.get_is_setup(prov):
16616  yield c(prov)
16617  prov = prov.get_previous()
16618 
16620  """Tag the given particle with the current Python script.
16621  This is a noop if the particle is already so tagged."""
16622  main = sys.modules['__main__']
16623 # Can't do anything if running from an interactive interpreter
16624  if not hasattr(main, '__file__'):
16625  return
16626  f = IMP.get_absolute_path(main.__file__)
16627  for prov in get_all_provenance(p, types=[ScriptProvenance]):
16628  if prov.get_filename() == f:
16629  return
16630  m = p.get_model()
16631  provp = IMP.Particle(m)
16632  provp.set_name('script')
16633  prov = ScriptProvenance.setup_particle(provp, f)
16634  add_provenance(m, p, prov)
16635 
16636 def add_software_provenance(p, name, version, location):
16637  """Tag the given particle with the software used to create it.
16638  This is a noop if the particle is already so tagged."""
16639  for prov in get_all_provenance(p, types=[SoftwareProvenance]):
16640  if prov.get_software_name() == name and prov.get_version() == version \
16641  and prov.get_location() == location:
16642  return
16643  m = p.get_model()
16644  provp = IMP.Particle(m)
16645  provp.set_name('software')
16646  prov = SoftwareProvenance.setup_particle(provp, name, version, location)
16647  add_provenance(m, p, prov)
16648 
16650  """Tag the given particle as being created by the current version of IMP."""
16651  add_software_provenance(p, name="Integrative Modeling Platform (IMP)",
16652  version=IMP.get_module_version(),
16653  location="https://integrativemodeling.org")
16654 
16655 
16656 def get_module_name():
16657  r"""get_module_name() -> std::string const"""
16658  return _IMP_core.get_module_name()
16659 
16660 def get_module_version():
16661  r"""get_module_version() -> std::string const"""
16662  return _IMP_core.get_module_version()
16663 
16664 def get_example_path(fname):
16665  r"""get_example_path(std::string fname) -> std::string"""
16666  return _IMP_core.get_example_path(fname)
16667 
16668 def get_data_path(fname):
16669  r"""get_data_path(std::string fname) -> std::string"""
16670  return _IMP_core.get_data_path(fname)
16671 
16672 from . import _version_check
16673 _version_check.check_version(get_module_version())
16674 __version__ = get_module_version()
16675 
16676 
F visit_breadth_first(HD d, F f)
Apply the visitor to each particle, breadth first.
A base class for geometry contained in particles.
A base class for modifiers of ParticlesTemp.
GenericDistanceToSingletonScore< UnaryFunction > DistanceToSingletonScore
double get_kt(double T)
Return kT for a given temperature in units of [kcal/mol].
Abstract class for scoring object(s) of type ParticleIndexPair.
Definition: PairScore.h:44
double get_height(const Surface &s, const XYZR &d)
Get height of sphere above surface.
Definition: Surface.h:129
algebra::Transformation3D get_transformation_aligning_first_to_second(XYZsOrVector3ds a, XYZsOrVector3ds b)
double get_mean(const cv::Mat &mat, const cvIntMat &mask)
CheckLevel get_check_level()
Get the current audit mode.
Definition: exception.h:80
def add_script_provenance
Tag the given particle with the current Python script.
GenericBoundingSphere3DSingletonScore< UnaryFunction > BoundingSphere3DSingletonScore
Abstract predicate function.
Definition: QuadPredicate.h:31
Restraint * create_restraint(Score *s, const typename Score::Argument &t, std::string name=std::string())
Definition: generic.h:36
ParticleIndex get_root_rigid_body(RigidMember m)
Return the index of the outer-most rigid body containing the member.
algebra::ReferenceFrame3D get_initial_reference_frame(Model *m, const ParticleIndexes &pis)
The base class for geometry.
F visit_depth_first(HD d, F &f)
Apply functor F to each particle, traversing the hierarchy depth first.
XYZRs create_xyzr_particles(Model *m, unsigned int num, Float radius, Float box_side=10)
Create a set of particles with random coordinates.
A base class for geometry contained in particles.
double get_angle(Direction a, Direction b)
Get angle between directions.
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.
Make CGAL functionality available to IMP.
Provenance create_clone(Provenance p)
Clone provenance (including previous provenance)
ParticlesTemp create_rigid_bodies(Model *m, unsigned int n, bool no_members=false)
std::string get_data_path(std::string file_name)
Return the full path to one of this module's data files.
void add_rigid_body_cache_key(ObjectKey k)
Base class for all samplers.
Definition: Sampler.h:31
Key< 34897493 > ParticleType
An IMP::Key object for identifying types of particles by strings.
Definition: Typed.h:28
algebra::Vector3D get_centroid(const XYZs &ps)
Get the centroid.
void add_particle(RMF::FileHandle fh, Particle *hs)
GenericHierarchies get_leaves(Hierarchy mhd)
Get all the leaves of the bit of hierarchy.
Composable functors to implement scores via compile-time composition.
std::string get_example_path(std::string file_name)
Return the full path to one of this module's example files.
GenericHierarchies get_all_descendants(Hierarchy mhd)
Get all the particles in the subtree.
A base class for geometry from a set of particles.
def add_imp_provenance
Tag the given particle as being created by the current version of IMP.
display::Geometries create_blame_geometries(const RestraintsTemp &rs, const ParticlesTemp &ps, double max=NO_MAX, std::string name=std::string())
void show_rigid_body_hierarchy(RigidBody rb, TextOutput out=TextOutput(std::cout))
Implement a constraint on the Model.
Definition: Constraint.h:49
void add_restraint(RMF::FileHandle fh, Restraint *hs)
def add_software_provenance
Tag the given particle with the software used to create it.
Base class for objects in a Model that depend on other objects.
Definition: ModelObject.h:28
Abstract predicate function.
Ints get_index(const ParticlesTemp &particles, const Subset &subset, const Subsets &excluded)
Common base class for heavy weight IMP objects.
Definition: Object.h:111
int get_number_of_frames(const ::npctransport_proto::Assignment &config, double time_step)
Abstract class for scoring object(s) of type ParticleIndex.
ScoreStates maintain invariants in the Model.
Definition: ScoreState.h:56
Base class for all optimizers.
Definition: Optimizer.h:48
GenericAttributeSingletonScore< UnaryFunction > AttributeSingletonScore
SurfaceGeometry * create_geometry(const Surface s, std::string name=std::string("SurfaceGeometry%1%"))
Create a geometry from a Surface.
Definition: Surface.h:191
void add_restraints(RMF::FileHandle fh, const Restraints &hs)
algebra::BoundingBoxD< 3 > get_bounding_box(const XYZRs &ps)
Get the bounding box.
const algebra::Vector3D & get_vector_geometry(XYZ d)
Definition: XYZ.h:135
GenericHierarchies get_internal(Hierarchy mhd)
Get all the non-leaves of the bit of hierarchy.
Interface to specialized Particle types (e.g. atoms)
Definition: Decorator.h:119
std::ostream & show(Hierarchy h, std::ostream &out=std::cout)
Print the hierarchy using a given decorator to display each node.
std::string get_absolute_path(std::string file)
Convert a possibly relative path to an absolute path.
algebra::Sphere3D get_enclosing_sphere(const XYZs &v)
Get a sphere enclosing the set of XYZRs.
Base class for optimizers that act on individual attributes.
SurfaceGeometry * get_constrained_surface_geometry(const Surface s, std::string name="SurfaceGeometry%1%")
Get surface geometry constrained to the surface.
Definition: Surface.h:236
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...
Represents a scoring function on the model.
void set_vector_geometry(XYZ d, const algebra::Vector3D &v)
Definition: XYZ.h:131
Shared optimizer state that is invoked upon commitment of new coordinates.
Hierarchy get_root(Hierarchy h)
Return the root of the hierarchy.
Abstract predicate function.
GenericBoundingBox3DSingletonScore< UnaryFunction > BoundingBox3DSingletonScore
Abstract class to implement hierarchical methods.
Definition: Refiner.h:34
double get_depth(const Surface &s, const XYZR &d)
Get depth of sphere below surface.
Definition: Surface.h:143
void set_enclosing_radius(XYZR b, const XYZs &v)
Set the radius of the first to enclose the list.
Class to handle individual particles of a Model object.
Definition: Particle.h:45
GenericAttributeSingletonScore< UF > * create_generic_attribute_singleton_score(UF *uf, FloatKey k)
void transform(RigidBody a, const algebra::Transformation3D &tr)
Transform a rigid body.
Definition: rigid_bodies.h:882
void assign_blame(const RestraintsTemp &rs, const ParticlesTemp &ps, FloatKey attribute)
std::string get_module_version()
Return the version of this module, as a string.
TruncatedHarmonic< BOTH > TruncatedHarmonicBound
TruncatedHarmonic< UPPER > TruncatedHarmonicUpperBound
static const FloatKeys & get_xyz_keys()
Get a vector containing the keys for x,y,z.
BallMover
Definition: BallMover.py:1
Output IMP model data in various file formats.
std::string get_chain_id(Hierarchy h)
Walk up the hierarchy to determine the chain id.
def get_all_provenance
Yield all provenance decorators of the given types for the particle.
Abstract class for scoring object(s) of type ParticleIndexTriplet.
Definition: TripletScore.h:44
void add_provenance(Model *m, ParticleIndex pi, Provenance p)
Add provenance to part of the model.
Tag part of the system to track how it was created.
Definition: provenance.h:632
double get_distance(const Surface &s, const XYZR &d)
Get distance from sphere to surface.
Definition: Surface.h:153
ParticleIndexes get_indexes(const ParticlesTemp &ps)
Get the indexes from a list of particles.
Abstract single variable functor class for score functions.
Definition: UnaryFunction.h:27
void set_enclosing_sphere(XYZR b, const XYZs &v, double slack=0)
Set the coordinates and radius of the first to enclose the list.
TruncatedHarmonic< LOWER > TruncatedHarmonicLowerBound
void set_check_level(CheckLevel tf)
Control runtime checks in the code.
Definition: exception.h:72
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