IMP logo
IMP Reference Guide  2.24.0
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_version_info(self):
5000  r"""get_version_info(Cosine self) -> VersionInfo"""
5001  return _IMP_core.Cosine_get_version_info(self)
5002  __swig_destroy__ = _IMP_core.delete_Cosine
5003 
5004  def do_show(self, out):
5005  r"""do_show(Cosine self, _ostream out)"""
5006  return _IMP_core.Cosine_do_show(self, out)
5007 
5008  def __str__(self):
5009  r"""__str__(Cosine self) -> std::string"""
5010  return _IMP_core.Cosine___str__(self)
5011 
5012  def __repr__(self):
5013  r"""__repr__(Cosine self) -> std::string"""
5014  return _IMP_core.Cosine___repr__(self)
5015 
5016  @staticmethod
5017  def get_from(o):
5018  return _object_cast_to_Cosine(o)
5019 
5020 
5021  def _get_as_binary(self):
5022  r"""_get_as_binary(Cosine self) -> PyObject *"""
5023  return _IMP_core.Cosine__get_as_binary(self)
5024 
5025  def _set_from_binary(self, p):
5026  r"""_set_from_binary(Cosine self, PyObject * p)"""
5027  return _IMP_core.Cosine__set_from_binary(self, p)
5028 
5029  def __getstate__(self):
5030  p = self._get_as_binary()
5031  if len(self.__dict__) > 1:
5032  d = self.__dict__.copy()
5033  del d['this']
5034  p = (d, p)
5035  return p
5036 
5037  def __setstate__(self, p):
5038  if not hasattr(self, 'this'):
5039  self.__init__()
5040  if isinstance(p, tuple):
5041  d, p = p
5042  self.__dict__.update(d)
5043  return self._set_from_binary(p)
5044 
5045 
5046 # Register Cosine in _IMP_core:
5047 _IMP_core.Cosine_swigregister(Cosine)
5048 class CoverRefined(IMP.SingletonModifier):
5049  r"""Proxy of C++ IMP::core::CoverRefined class."""
5050 
5051  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5052 
5053  def __init__(self, ref, slack=0):
5054  r"""__init__(CoverRefined self, Refiner ref, IMP::Float slack=0) -> CoverRefined"""
5055  _IMP_core.CoverRefined_swiginit(self, _IMP_core.new_CoverRefined(ref, slack))
5056 
5057  def set_slack(self, slack):
5058  r"""set_slack(CoverRefined self, IMP::Float slack)"""
5059  return _IMP_core.CoverRefined_set_slack(self, slack)
5060 
5061  def do_get_inputs(self, m, pis):
5062  r"""do_get_inputs(CoverRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5063  return _IMP_core.CoverRefined_do_get_inputs(self, m, pis)
5064 
5065  def do_get_outputs(self, m, pis):
5066  r"""do_get_outputs(CoverRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5067  return _IMP_core.CoverRefined_do_get_outputs(self, m, pis)
5068 
5069  def get_version_info(self):
5070  r"""get_version_info(CoverRefined self) -> VersionInfo"""
5071  return _IMP_core.CoverRefined_get_version_info(self)
5072  __swig_destroy__ = _IMP_core.delete_CoverRefined
5073 
5074  def __str__(self):
5075  r"""__str__(CoverRefined self) -> std::string"""
5076  return _IMP_core.CoverRefined___str__(self)
5077 
5078  def __repr__(self):
5079  r"""__repr__(CoverRefined self) -> std::string"""
5080  return _IMP_core.CoverRefined___repr__(self)
5081 
5082  @staticmethod
5083  def get_from(o):
5084  return _object_cast_to_CoverRefined(o)
5085 
5086 
5087 # Register CoverRefined in _IMP_core:
5088 _IMP_core.CoverRefined_swigregister(CoverRefined)
5089 class Cover(XYZR):
5090  r"""Proxy of C++ IMP::core::Cover class."""
5091 
5092  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5093 
5094  def get_constraint(self):
5095  r"""get_constraint(Cover self) -> Constraint"""
5096  return _IMP_core.Cover_get_constraint(self)
5097 
5098  def __init__(self, *args):
5099  r"""
5100  __init__(Cover self) -> Cover
5101  __init__(Cover self, Model m, ParticleIndex id) -> Cover
5102  __init__(Cover self, _ParticleAdaptor d) -> Cover
5103  """
5104  _IMP_core.Cover_swiginit(self, _IMP_core.new_Cover(*args))
5105 
5106  def show(self, *args):
5107  r"""show(Cover self, _ostream out=std::cout)"""
5108  return _IMP_core.Cover_show(self, *args)
5109 
5110  @staticmethod
5111  def setup_particle(*args):
5112  r"""
5113  setup_particle(Model m, ParticleIndex pi, _ParticleIndexesAdaptor members) -> Cover
5114  setup_particle(_ParticleAdaptor pa, _ParticleIndexesAdaptor members) -> Cover
5115  setup_particle(Model m, ParticleIndex pi, Refiner refiner) -> Cover
5116  setup_particle(_ParticleAdaptor pa, Refiner refiner) -> Cover
5117  """
5118  return _IMP_core.Cover_setup_particle(*args)
5119 
5120  @staticmethod
5121  def get_is_setup(*args):
5122  r"""
5123  get_is_setup(_ParticleAdaptor p) -> bool
5124  get_is_setup(Model m, ParticleIndex pi) -> bool
5125  """
5126  return _IMP_core.Cover_get_is_setup(*args)
5127 
5128  def add_attribute(self, *args):
5129  r"""
5130  add_attribute(Cover self, FloatKey k, IMP::Float v, bool opt)
5131  add_attribute(Cover self, FloatKey a0, IMP::Float a1)
5132  add_attribute(Cover self, IntKey a0, IMP::Int a1)
5133  add_attribute(Cover self, FloatsKey a0, IMP::Floats a1)
5134  add_attribute(Cover self, IntsKey a0, IMP::Ints a1)
5135  add_attribute(Cover self, StringKey a0, IMP::String a1)
5136  add_attribute(Cover self, ParticleIndexKey a0, Particle a1)
5137  add_attribute(Cover self, ObjectKey a0, Object a1)
5138  add_attribute(Cover self, SparseFloatKey a0, IMP::Float a1)
5139  add_attribute(Cover self, SparseIntKey a0, IMP::Int a1)
5140  add_attribute(Cover self, SparseStringKey a0, IMP::String a1)
5141  add_attribute(Cover self, SparseParticleIndexKey a0, ParticleIndex a1)
5142  """
5143  return _IMP_core.Cover_add_attribute(self, *args)
5144 
5145  def get_value(self, *args):
5146  r"""
5147  get_value(Cover self, FloatKey a0) -> IMP::Float
5148  get_value(Cover self, IntKey a0) -> IMP::Int
5149  get_value(Cover self, FloatsKey a0) -> IMP::Floats
5150  get_value(Cover self, IntsKey a0) -> IMP::Ints
5151  get_value(Cover self, StringKey a0) -> IMP::String
5152  get_value(Cover self, ParticleIndexKey a0) -> Particle
5153  get_value(Cover self, ObjectKey a0) -> Object
5154  get_value(Cover self, SparseFloatKey a0) -> IMP::Float
5155  get_value(Cover self, SparseIntKey a0) -> IMP::Int
5156  get_value(Cover self, SparseStringKey a0) -> IMP::String
5157  get_value(Cover self, SparseParticleIndexKey a0) -> ParticleIndex
5158  """
5159  return _IMP_core.Cover_get_value(self, *args)
5160 
5161  def set_value(self, *args):
5162  r"""
5163  set_value(Cover self, FloatKey a0, IMP::Float a1)
5164  set_value(Cover self, IntKey a0, IMP::Int a1)
5165  set_value(Cover self, FloatsKey a0, IMP::Floats a1)
5166  set_value(Cover self, IntsKey a0, IMP::Ints a1)
5167  set_value(Cover self, StringKey a0, IMP::String a1)
5168  set_value(Cover self, ParticleIndexKey a0, Particle a1)
5169  set_value(Cover self, ObjectKey a0, Object a1)
5170  set_value(Cover self, SparseFloatKey a0, IMP::Float a1)
5171  set_value(Cover self, SparseIntKey a0, IMP::Int a1)
5172  set_value(Cover self, SparseStringKey a0, IMP::String a1)
5173  set_value(Cover self, SparseParticleIndexKey a0, ParticleIndex a1)
5174  """
5175  return _IMP_core.Cover_set_value(self, *args)
5176 
5177  def remove_attribute(self, *args):
5178  r"""
5179  remove_attribute(Cover self, FloatKey a0)
5180  remove_attribute(Cover self, IntKey a0)
5181  remove_attribute(Cover self, FloatsKey a0)
5182  remove_attribute(Cover self, IntsKey a0)
5183  remove_attribute(Cover self, StringKey a0)
5184  remove_attribute(Cover self, ParticleIndexKey a0)
5185  remove_attribute(Cover self, ObjectKey a0)
5186  remove_attribute(Cover self, SparseFloatKey a0)
5187  remove_attribute(Cover self, SparseIntKey a0)
5188  remove_attribute(Cover self, SparseStringKey a0)
5189  remove_attribute(Cover self, SparseParticleIndexKey a0)
5190  """
5191  return _IMP_core.Cover_remove_attribute(self, *args)
5192 
5193  def has_attribute(self, *args):
5194  r"""
5195  has_attribute(Cover self, FloatKey a0) -> bool
5196  has_attribute(Cover self, IntKey a0) -> bool
5197  has_attribute(Cover self, FloatsKey a0) -> bool
5198  has_attribute(Cover self, IntsKey a0) -> bool
5199  has_attribute(Cover self, StringKey a0) -> bool
5200  has_attribute(Cover self, ParticleIndexKey a0) -> bool
5201  has_attribute(Cover self, ObjectKey a0) -> bool
5202  has_attribute(Cover self, SparseFloatKey a0) -> bool
5203  has_attribute(Cover self, SparseIntKey a0) -> bool
5204  has_attribute(Cover self, SparseStringKey a0) -> bool
5205  has_attribute(Cover self, SparseParticleIndexKey a0) -> bool
5206  """
5207  return _IMP_core.Cover_has_attribute(self, *args)
5208 
5209  def get_derivative(self, a0):
5210  r"""get_derivative(Cover self, FloatKey a0) -> double"""
5211  return _IMP_core.Cover_get_derivative(self, a0)
5212 
5213  def get_name(self):
5214  r"""get_name(Cover self) -> std::string"""
5215  return _IMP_core.Cover_get_name(self)
5216 
5217  def clear_caches(self):
5218  r"""clear_caches(Cover self)"""
5219  return _IMP_core.Cover_clear_caches(self)
5220 
5221  def set_name(self, a0):
5222  r"""set_name(Cover self, std::string a0)"""
5223  return _IMP_core.Cover_set_name(self, a0)
5224 
5225  def set_check_level(self, a0):
5226  r"""set_check_level(Cover self, IMP::CheckLevel a0)"""
5227  return _IMP_core.Cover_set_check_level(self, a0)
5228 
5229  def add_to_derivative(self, a0, a1, a2):
5230  r"""add_to_derivative(Cover self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
5231  return _IMP_core.Cover_add_to_derivative(self, a0, a1, a2)
5232 
5233  def set_is_optimized(self, a0, a1):
5234  r"""set_is_optimized(Cover self, FloatKey a0, bool a1)"""
5235  return _IMP_core.Cover_set_is_optimized(self, a0, a1)
5236 
5237  def get_is_optimized(self, a0):
5238  r"""get_is_optimized(Cover self, FloatKey a0) -> bool"""
5239  return _IMP_core.Cover_get_is_optimized(self, a0)
5240 
5241  def get_check_level(self):
5242  r"""get_check_level(Cover self) -> IMP::CheckLevel"""
5243  return _IMP_core.Cover_get_check_level(self)
5244 
5245  def __eq__(self, *args):
5246  r"""
5247  __eq__(Cover self, Cover o) -> bool
5248  __eq__(Cover self, Particle d) -> bool
5249  """
5250  return _IMP_core.Cover___eq__(self, *args)
5251 
5252  def __ne__(self, *args):
5253  r"""
5254  __ne__(Cover self, Cover o) -> bool
5255  __ne__(Cover self, Particle d) -> bool
5256  """
5257  return _IMP_core.Cover___ne__(self, *args)
5258 
5259  def __le__(self, *args):
5260  r"""
5261  __le__(Cover self, Cover o) -> bool
5262  __le__(Cover self, Particle d) -> bool
5263  """
5264  return _IMP_core.Cover___le__(self, *args)
5265 
5266  def __lt__(self, *args):
5267  r"""
5268  __lt__(Cover self, Cover o) -> bool
5269  __lt__(Cover self, Particle d) -> bool
5270  """
5271  return _IMP_core.Cover___lt__(self, *args)
5272 
5273  def __ge__(self, *args):
5274  r"""
5275  __ge__(Cover self, Cover o) -> bool
5276  __ge__(Cover self, Particle d) -> bool
5277  """
5278  return _IMP_core.Cover___ge__(self, *args)
5279 
5280  def __gt__(self, *args):
5281  r"""
5282  __gt__(Cover self, Cover o) -> bool
5283  __gt__(Cover self, Particle d) -> bool
5284  """
5285  return _IMP_core.Cover___gt__(self, *args)
5286 
5287  def __hash__(self):
5288  r"""__hash__(Cover self) -> std::size_t"""
5289  return _IMP_core.Cover___hash__(self)
5290 
5291  def __str__(self):
5292  r"""__str__(Cover self) -> std::string"""
5293  return _IMP_core.Cover___str__(self)
5294 
5295  def __repr__(self):
5296  r"""__repr__(Cover self) -> std::string"""
5297  return _IMP_core.Cover___repr__(self)
5298 
5299  def _get_as_binary(self):
5300  r"""_get_as_binary(Cover self) -> PyObject *"""
5301  return _IMP_core.Cover__get_as_binary(self)
5302 
5303  def _set_from_binary(self, p):
5304  r"""_set_from_binary(Cover self, PyObject * p)"""
5305  return _IMP_core.Cover__set_from_binary(self, p)
5306 
5307  def __getstate__(self):
5308  p = self._get_as_binary()
5309  if len(self.__dict__) > 1:
5310  d = self.__dict__.copy()
5311  del d['this']
5312  p = (d, p)
5313  return p
5314 
5315  def __setstate__(self, p):
5316  if not hasattr(self, 'this'):
5317  self.__init__()
5318  if isinstance(p, tuple):
5319  d, p = p
5320  self.__dict__.update(d)
5321  return self._set_from_binary(p)
5322 
5323  __swig_destroy__ = _IMP_core.delete_Cover
5324 
5325 # Register Cover in _IMP_core:
5326 _IMP_core.Cover_swigregister(Cover)
5327 class DerivativesFromRefined(IMP.SingletonModifier):
5328  r"""Proxy of C++ IMP::core::DerivativesFromRefined class."""
5329 
5330  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5331 
5332  def __init__(self, *args):
5333  r"""__init__(DerivativesFromRefined self, Refiner r, IMP::FloatKeys ks=IMP::core::XYZ::get_xyz_keys()) -> DerivativesFromRefined"""
5334  _IMP_core.DerivativesFromRefined_swiginit(self, _IMP_core.new_DerivativesFromRefined(*args))
5335 
5336  def do_get_inputs(self, m, pis):
5337  r"""do_get_inputs(DerivativesFromRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5338  return _IMP_core.DerivativesFromRefined_do_get_inputs(self, m, pis)
5339 
5340  def do_get_outputs(self, m, pis):
5341  r"""do_get_outputs(DerivativesFromRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5342  return _IMP_core.DerivativesFromRefined_do_get_outputs(self, m, pis)
5343 
5344  def get_version_info(self):
5345  r"""get_version_info(DerivativesFromRefined self) -> VersionInfo"""
5346  return _IMP_core.DerivativesFromRefined_get_version_info(self)
5347  __swig_destroy__ = _IMP_core.delete_DerivativesFromRefined
5348 
5349  def __str__(self):
5350  r"""__str__(DerivativesFromRefined self) -> std::string"""
5351  return _IMP_core.DerivativesFromRefined___str__(self)
5352 
5353  def __repr__(self):
5354  r"""__repr__(DerivativesFromRefined self) -> std::string"""
5355  return _IMP_core.DerivativesFromRefined___repr__(self)
5356 
5357  @staticmethod
5358  def get_from(o):
5359  return _object_cast_to_DerivativesFromRefined(o)
5360 
5361 
5362 # Register DerivativesFromRefined in _IMP_core:
5363 _IMP_core.DerivativesFromRefined_swigregister(DerivativesFromRefined)
5364 class DerivativesToRefined(IMP.SingletonModifier):
5365  r"""Proxy of C++ IMP::core::DerivativesToRefined class."""
5366 
5367  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5368 
5369  def __init__(self, *args):
5370  r"""__init__(DerivativesToRefined self, Refiner r, IMP::FloatKeys ks=IMP::core::XYZ::get_xyz_keys()) -> DerivativesToRefined"""
5371  _IMP_core.DerivativesToRefined_swiginit(self, _IMP_core.new_DerivativesToRefined(*args))
5372 
5373  def do_get_inputs(self, m, pis):
5374  r"""do_get_inputs(DerivativesToRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5375  return _IMP_core.DerivativesToRefined_do_get_inputs(self, m, pis)
5376 
5377  def do_get_outputs(self, m, pis):
5378  r"""do_get_outputs(DerivativesToRefined self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5379  return _IMP_core.DerivativesToRefined_do_get_outputs(self, m, pis)
5380 
5381  def get_version_info(self):
5382  r"""get_version_info(DerivativesToRefined self) -> VersionInfo"""
5383  return _IMP_core.DerivativesToRefined_get_version_info(self)
5384  __swig_destroy__ = _IMP_core.delete_DerivativesToRefined
5385 
5386  def __str__(self):
5387  r"""__str__(DerivativesToRefined self) -> std::string"""
5388  return _IMP_core.DerivativesToRefined___str__(self)
5389 
5390  def __repr__(self):
5391  r"""__repr__(DerivativesToRefined self) -> std::string"""
5392  return _IMP_core.DerivativesToRefined___repr__(self)
5393 
5394  @staticmethod
5395  def get_from(o):
5396  return _object_cast_to_DerivativesToRefined(o)
5397 
5398 
5399 # Register DerivativesToRefined in _IMP_core:
5400 _IMP_core.DerivativesToRefined_swigregister(DerivativesToRefined)
5401 class DiameterRestraint(IMP.Restraint):
5402  r"""Proxy of C++ IMP::core::DiameterRestraint class."""
5403 
5404  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5405 
5406  def __init__(self, f, sc, diameter):
5407  r"""__init__(DiameterRestraint self, UnaryFunction f, SingletonContainer sc, IMP::Float diameter) -> DiameterRestraint"""
5408  _IMP_core.DiameterRestraint_swiginit(self, _IMP_core.new_DiameterRestraint(f, sc, diameter))
5409 
5410  def do_get_inputs(self):
5411  r"""do_get_inputs(DiameterRestraint self) -> IMP::ModelObjectsTemp"""
5412  return _IMP_core.DiameterRestraint_do_get_inputs(self)
5413 
5414  def get_version_info(self):
5415  r"""get_version_info(DiameterRestraint self) -> VersionInfo"""
5416  return _IMP_core.DiameterRestraint_get_version_info(self)
5417  __swig_destroy__ = _IMP_core.delete_DiameterRestraint
5418 
5419  def do_create_decomposition(self):
5420  r"""do_create_decomposition(DiameterRestraint self) -> IMP::Restraints"""
5421  return _IMP_core.DiameterRestraint_do_create_decomposition(self)
5422 
5423  def do_create_current_decomposition(self):
5424  r"""do_create_current_decomposition(DiameterRestraint self) -> IMP::Restraints"""
5425  return _IMP_core.DiameterRestraint_do_create_current_decomposition(self)
5426 
5427  def __str__(self):
5428  r"""__str__(DiameterRestraint self) -> std::string"""
5429  return _IMP_core.DiameterRestraint___str__(self)
5430 
5431  def __repr__(self):
5432  r"""__repr__(DiameterRestraint self) -> std::string"""
5433  return _IMP_core.DiameterRestraint___repr__(self)
5434 
5435  @staticmethod
5436  def get_from(o):
5437  return _object_cast_to_DiameterRestraint(o)
5438 
5439 
5440 # Register DiameterRestraint in _IMP_core:
5441 _IMP_core.DiameterRestraint_swigregister(DiameterRestraint)
5442 class Transform(IMP.SingletonModifier):
5443  r"""Proxy of C++ IMP::core::Transform class."""
5444 
5445  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5446 
5447  def __init__(self, *args):
5448  r"""
5449  __init__(Transform self, Transformation3D t, bool ignore_non_xyz=False) -> Transform
5450  __init__(Transform self) -> Transform
5451  """
5452  _IMP_core.Transform_swiginit(self, _IMP_core.new_Transform(*args))
5453 
5454  def do_get_inputs(self, m, pis):
5455  r"""do_get_inputs(Transform self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5456  return _IMP_core.Transform_do_get_inputs(self, m, pis)
5457 
5458  def do_get_outputs(self, m, pis):
5459  r"""do_get_outputs(Transform self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5460  return _IMP_core.Transform_do_get_outputs(self, m, pis)
5461 
5462  def get_version_info(self):
5463  r"""get_version_info(Transform self) -> VersionInfo"""
5464  return _IMP_core.Transform_get_version_info(self)
5465  __swig_destroy__ = _IMP_core.delete_Transform
5466 
5467  def __str__(self):
5468  r"""__str__(Transform self) -> std::string"""
5469  return _IMP_core.Transform___str__(self)
5470 
5471  def __repr__(self):
5472  r"""__repr__(Transform self) -> std::string"""
5473  return _IMP_core.Transform___repr__(self)
5474 
5475  @staticmethod
5476  def get_from(o):
5477  return _object_cast_to_Transform(o)
5478 
5479 
5480  def _get_as_binary(self):
5481  r"""_get_as_binary(Transform self) -> PyObject *"""
5482  return _IMP_core.Transform__get_as_binary(self)
5483 
5484  def _set_from_binary(self, p):
5485  r"""_set_from_binary(Transform self, PyObject * p)"""
5486  return _IMP_core.Transform__set_from_binary(self, p)
5487 
5488  def __getstate__(self):
5489  p = self._get_as_binary()
5490  if len(self.__dict__) > 1:
5491  d = self.__dict__.copy()
5492  del d['this']
5493  p = (d, p)
5494  return p
5495 
5496  def __setstate__(self, p):
5497  if not hasattr(self, 'this'):
5498  self.__init__()
5499  if isinstance(p, tuple):
5500  d, p = p
5501  self.__dict__.update(d)
5502  return self._set_from_binary(p)
5503 
5504 
5505 # Register Transform in _IMP_core:
5506 _IMP_core.Transform_swigregister(Transform)
5507 class Reference(IMP.Decorator):
5508  r"""Proxy of C++ IMP::core::Reference class."""
5509 
5510  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5511 
5512  def __init__(self, *args):
5513  r"""
5514  __init__(Reference self) -> Reference
5515  __init__(Reference self, Model m, ParticleIndex id) -> Reference
5516  __init__(Reference self, _ParticleAdaptor d) -> Reference
5517  """
5518  _IMP_core.Reference_swiginit(self, _IMP_core.new_Reference(*args))
5519 
5520  def show(self, *args):
5521  r"""show(Reference self, _ostream out=std::cout)"""
5522  return _IMP_core.Reference_show(self, *args)
5523 
5524  @staticmethod
5525  def setup_particle(*args):
5526  r"""
5527  setup_particle(Model m, ParticleIndex pi, _ParticleIndexAdaptor reference) -> Reference
5528  setup_particle(_ParticleAdaptor pa, _ParticleIndexAdaptor reference) -> Reference
5529  """
5530  return _IMP_core.Reference_setup_particle(*args)
5531 
5532  def get_reference_particle(self):
5533  r"""get_reference_particle(Reference self) -> Particle"""
5534  return _IMP_core.Reference_get_reference_particle(self)
5535 
5536  @staticmethod
5537  def get_is_setup(*args):
5538  r"""
5539  get_is_setup(_ParticleAdaptor p) -> bool
5540  get_is_setup(Model m, ParticleIndex pi) -> bool
5541  """
5542  return _IMP_core.Reference_get_is_setup(*args)
5543 
5544  @staticmethod
5545  def get_reference_key():
5546  r"""get_reference_key() -> ParticleIndexKey"""
5547  return _IMP_core.Reference_get_reference_key()
5548 
5549  def add_attribute(self, *args):
5550  r"""
5551  add_attribute(Reference self, FloatKey k, IMP::Float v, bool opt)
5552  add_attribute(Reference self, FloatKey a0, IMP::Float a1)
5553  add_attribute(Reference self, IntKey a0, IMP::Int a1)
5554  add_attribute(Reference self, FloatsKey a0, IMP::Floats a1)
5555  add_attribute(Reference self, IntsKey a0, IMP::Ints a1)
5556  add_attribute(Reference self, StringKey a0, IMP::String a1)
5557  add_attribute(Reference self, ParticleIndexKey a0, Particle a1)
5558  add_attribute(Reference self, ObjectKey a0, Object a1)
5559  add_attribute(Reference self, SparseFloatKey a0, IMP::Float a1)
5560  add_attribute(Reference self, SparseIntKey a0, IMP::Int a1)
5561  add_attribute(Reference self, SparseStringKey a0, IMP::String a1)
5562  add_attribute(Reference self, SparseParticleIndexKey a0, ParticleIndex a1)
5563  """
5564  return _IMP_core.Reference_add_attribute(self, *args)
5565 
5566  def get_value(self, *args):
5567  r"""
5568  get_value(Reference self, FloatKey a0) -> IMP::Float
5569  get_value(Reference self, IntKey a0) -> IMP::Int
5570  get_value(Reference self, FloatsKey a0) -> IMP::Floats
5571  get_value(Reference self, IntsKey a0) -> IMP::Ints
5572  get_value(Reference self, StringKey a0) -> IMP::String
5573  get_value(Reference self, ParticleIndexKey a0) -> Particle
5574  get_value(Reference self, ObjectKey a0) -> Object
5575  get_value(Reference self, SparseFloatKey a0) -> IMP::Float
5576  get_value(Reference self, SparseIntKey a0) -> IMP::Int
5577  get_value(Reference self, SparseStringKey a0) -> IMP::String
5578  get_value(Reference self, SparseParticleIndexKey a0) -> ParticleIndex
5579  """
5580  return _IMP_core.Reference_get_value(self, *args)
5581 
5582  def set_value(self, *args):
5583  r"""
5584  set_value(Reference self, FloatKey a0, IMP::Float a1)
5585  set_value(Reference self, IntKey a0, IMP::Int a1)
5586  set_value(Reference self, FloatsKey a0, IMP::Floats a1)
5587  set_value(Reference self, IntsKey a0, IMP::Ints a1)
5588  set_value(Reference self, StringKey a0, IMP::String a1)
5589  set_value(Reference self, ParticleIndexKey a0, Particle a1)
5590  set_value(Reference self, ObjectKey a0, Object a1)
5591  set_value(Reference self, SparseFloatKey a0, IMP::Float a1)
5592  set_value(Reference self, SparseIntKey a0, IMP::Int a1)
5593  set_value(Reference self, SparseStringKey a0, IMP::String a1)
5594  set_value(Reference self, SparseParticleIndexKey a0, ParticleIndex a1)
5595  """
5596  return _IMP_core.Reference_set_value(self, *args)
5597 
5598  def remove_attribute(self, *args):
5599  r"""
5600  remove_attribute(Reference self, FloatKey a0)
5601  remove_attribute(Reference self, IntKey a0)
5602  remove_attribute(Reference self, FloatsKey a0)
5603  remove_attribute(Reference self, IntsKey a0)
5604  remove_attribute(Reference self, StringKey a0)
5605  remove_attribute(Reference self, ParticleIndexKey a0)
5606  remove_attribute(Reference self, ObjectKey a0)
5607  remove_attribute(Reference self, SparseFloatKey a0)
5608  remove_attribute(Reference self, SparseIntKey a0)
5609  remove_attribute(Reference self, SparseStringKey a0)
5610  remove_attribute(Reference self, SparseParticleIndexKey a0)
5611  """
5612  return _IMP_core.Reference_remove_attribute(self, *args)
5613 
5614  def has_attribute(self, *args):
5615  r"""
5616  has_attribute(Reference self, FloatKey a0) -> bool
5617  has_attribute(Reference self, IntKey a0) -> bool
5618  has_attribute(Reference self, FloatsKey a0) -> bool
5619  has_attribute(Reference self, IntsKey a0) -> bool
5620  has_attribute(Reference self, StringKey a0) -> bool
5621  has_attribute(Reference self, ParticleIndexKey a0) -> bool
5622  has_attribute(Reference self, ObjectKey a0) -> bool
5623  has_attribute(Reference self, SparseFloatKey a0) -> bool
5624  has_attribute(Reference self, SparseIntKey a0) -> bool
5625  has_attribute(Reference self, SparseStringKey a0) -> bool
5626  has_attribute(Reference self, SparseParticleIndexKey a0) -> bool
5627  """
5628  return _IMP_core.Reference_has_attribute(self, *args)
5629 
5630  def get_derivative(self, a0):
5631  r"""get_derivative(Reference self, FloatKey a0) -> double"""
5632  return _IMP_core.Reference_get_derivative(self, a0)
5633 
5634  def get_name(self):
5635  r"""get_name(Reference self) -> std::string"""
5636  return _IMP_core.Reference_get_name(self)
5637 
5638  def clear_caches(self):
5639  r"""clear_caches(Reference self)"""
5640  return _IMP_core.Reference_clear_caches(self)
5641 
5642  def set_name(self, a0):
5643  r"""set_name(Reference self, std::string a0)"""
5644  return _IMP_core.Reference_set_name(self, a0)
5645 
5646  def set_check_level(self, a0):
5647  r"""set_check_level(Reference self, IMP::CheckLevel a0)"""
5648  return _IMP_core.Reference_set_check_level(self, a0)
5649 
5650  def add_to_derivative(self, a0, a1, a2):
5651  r"""add_to_derivative(Reference self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
5652  return _IMP_core.Reference_add_to_derivative(self, a0, a1, a2)
5653 
5654  def set_is_optimized(self, a0, a1):
5655  r"""set_is_optimized(Reference self, FloatKey a0, bool a1)"""
5656  return _IMP_core.Reference_set_is_optimized(self, a0, a1)
5657 
5658  def get_is_optimized(self, a0):
5659  r"""get_is_optimized(Reference self, FloatKey a0) -> bool"""
5660  return _IMP_core.Reference_get_is_optimized(self, a0)
5661 
5662  def get_check_level(self):
5663  r"""get_check_level(Reference self) -> IMP::CheckLevel"""
5664  return _IMP_core.Reference_get_check_level(self)
5665 
5666  def __eq__(self, *args):
5667  r"""
5668  __eq__(Reference self, Reference o) -> bool
5669  __eq__(Reference self, Particle d) -> bool
5670  """
5671  return _IMP_core.Reference___eq__(self, *args)
5672 
5673  def __ne__(self, *args):
5674  r"""
5675  __ne__(Reference self, Reference o) -> bool
5676  __ne__(Reference self, Particle d) -> bool
5677  """
5678  return _IMP_core.Reference___ne__(self, *args)
5679 
5680  def __le__(self, *args):
5681  r"""
5682  __le__(Reference self, Reference o) -> bool
5683  __le__(Reference self, Particle d) -> bool
5684  """
5685  return _IMP_core.Reference___le__(self, *args)
5686 
5687  def __lt__(self, *args):
5688  r"""
5689  __lt__(Reference self, Reference o) -> bool
5690  __lt__(Reference self, Particle d) -> bool
5691  """
5692  return _IMP_core.Reference___lt__(self, *args)
5693 
5694  def __ge__(self, *args):
5695  r"""
5696  __ge__(Reference self, Reference o) -> bool
5697  __ge__(Reference self, Particle d) -> bool
5698  """
5699  return _IMP_core.Reference___ge__(self, *args)
5700 
5701  def __gt__(self, *args):
5702  r"""
5703  __gt__(Reference self, Reference o) -> bool
5704  __gt__(Reference self, Particle d) -> bool
5705  """
5706  return _IMP_core.Reference___gt__(self, *args)
5707 
5708  def __hash__(self):
5709  r"""__hash__(Reference self) -> std::size_t"""
5710  return _IMP_core.Reference___hash__(self)
5711 
5712  def __str__(self):
5713  r"""__str__(Reference self) -> std::string"""
5714  return _IMP_core.Reference___str__(self)
5715 
5716  def __repr__(self):
5717  r"""__repr__(Reference self) -> std::string"""
5718  return _IMP_core.Reference___repr__(self)
5719 
5720  def _get_as_binary(self):
5721  r"""_get_as_binary(Reference self) -> PyObject *"""
5722  return _IMP_core.Reference__get_as_binary(self)
5723 
5724  def _set_from_binary(self, p):
5725  r"""_set_from_binary(Reference self, PyObject * p)"""
5726  return _IMP_core.Reference__set_from_binary(self, p)
5727 
5728  def __getstate__(self):
5729  p = self._get_as_binary()
5730  if len(self.__dict__) > 1:
5731  d = self.__dict__.copy()
5732  del d['this']
5733  p = (d, p)
5734  return p
5735 
5736  def __setstate__(self, p):
5737  if not hasattr(self, 'this'):
5738  self.__init__()
5739  if isinstance(p, tuple):
5740  d, p = p
5741  self.__dict__.update(d)
5742  return self._set_from_binary(p)
5743 
5744  __swig_destroy__ = _IMP_core.delete_Reference
5745 
5746 # Register Reference in _IMP_core:
5747 _IMP_core.Reference_swigregister(Reference)
5748 class TransformationAndReflectionSymmetry(IMP.SingletonModifier):
5749  r"""Proxy of C++ IMP::core::TransformationAndReflectionSymmetry class."""
5750 
5751  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5752 
5753  def __init__(self, t, r):
5754  r"""__init__(TransformationAndReflectionSymmetry self, Transformation3D t, Reflection3D r) -> TransformationAndReflectionSymmetry"""
5755  _IMP_core.TransformationAndReflectionSymmetry_swiginit(self, _IMP_core.new_TransformationAndReflectionSymmetry(t, r))
5756 
5757  def do_get_inputs(self, m, pis):
5758  r"""do_get_inputs(TransformationAndReflectionSymmetry self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5759  return _IMP_core.TransformationAndReflectionSymmetry_do_get_inputs(self, m, pis)
5760 
5761  def do_get_outputs(self, m, pis):
5762  r"""do_get_outputs(TransformationAndReflectionSymmetry self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5763  return _IMP_core.TransformationAndReflectionSymmetry_do_get_outputs(self, m, pis)
5764 
5765  def get_version_info(self):
5766  r"""get_version_info(TransformationAndReflectionSymmetry self) -> VersionInfo"""
5767  return _IMP_core.TransformationAndReflectionSymmetry_get_version_info(self)
5768  __swig_destroy__ = _IMP_core.delete_TransformationAndReflectionSymmetry
5769 
5770  def __str__(self):
5771  r"""__str__(TransformationAndReflectionSymmetry self) -> std::string"""
5772  return _IMP_core.TransformationAndReflectionSymmetry___str__(self)
5773 
5774  def __repr__(self):
5775  r"""__repr__(TransformationAndReflectionSymmetry self) -> std::string"""
5776  return _IMP_core.TransformationAndReflectionSymmetry___repr__(self)
5777 
5778  @staticmethod
5779  def get_from(o):
5780  return _object_cast_to_TransformationAndReflectionSymmetry(o)
5781 
5782 
5783 # Register TransformationAndReflectionSymmetry in _IMP_core:
5784 _IMP_core.TransformationAndReflectionSymmetry_swigregister(TransformationAndReflectionSymmetry)
5785 class TransformationSymmetry(IMP.SingletonModifier):
5786  r"""Proxy of C++ IMP::core::TransformationSymmetry class."""
5787 
5788  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5789 
5790  def __init__(self, *args):
5791  r"""
5792  __init__(TransformationSymmetry self, Transformation3D t) -> TransformationSymmetry
5793  __init__(TransformationSymmetry self, ParticleIndex rb_pi) -> TransformationSymmetry
5794  """
5795  _IMP_core.TransformationSymmetry_swiginit(self, _IMP_core.new_TransformationSymmetry(*args))
5796 
5797  def get_transformation(self):
5798  r"""get_transformation(TransformationSymmetry self) -> Transformation3D"""
5799  return _IMP_core.TransformationSymmetry_get_transformation(self)
5800 
5801  def set_transformation(self, t):
5802  r"""set_transformation(TransformationSymmetry self, Transformation3D t)"""
5803  return _IMP_core.TransformationSymmetry_set_transformation(self, t)
5804 
5805  def do_get_inputs(self, m, pis):
5806  r"""do_get_inputs(TransformationSymmetry self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5807  return _IMP_core.TransformationSymmetry_do_get_inputs(self, m, pis)
5808 
5809  def do_get_outputs(self, m, pis):
5810  r"""do_get_outputs(TransformationSymmetry self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5811  return _IMP_core.TransformationSymmetry_do_get_outputs(self, m, pis)
5812 
5813  def get_version_info(self):
5814  r"""get_version_info(TransformationSymmetry self) -> VersionInfo"""
5815  return _IMP_core.TransformationSymmetry_get_version_info(self)
5816  __swig_destroy__ = _IMP_core.delete_TransformationSymmetry
5817 
5818  def __str__(self):
5819  r"""__str__(TransformationSymmetry self) -> std::string"""
5820  return _IMP_core.TransformationSymmetry___str__(self)
5821 
5822  def __repr__(self):
5823  r"""__repr__(TransformationSymmetry self) -> std::string"""
5824  return _IMP_core.TransformationSymmetry___repr__(self)
5825 
5826  @staticmethod
5827  def get_from(o):
5828  return _object_cast_to_TransformationSymmetry(o)
5829 
5830 
5831 # Register TransformationSymmetry in _IMP_core:
5832 _IMP_core.TransformationSymmetry_swigregister(TransformationSymmetry)
5833 class TransformationSymmetryMover(MonteCarloMover):
5834  r"""Proxy of C++ IMP::core::TransformationSymmetryMover class."""
5835 
5836  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5837 
5838  def __init__(self, m, symm, pivot, max_translation, max_rotation):
5839  r"""__init__(TransformationSymmetryMover self, Model m, TransformationSymmetry symm, ParticleIndex pivot, IMP::Float max_translation, IMP::Float max_rotation) -> TransformationSymmetryMover"""
5840  _IMP_core.TransformationSymmetryMover_swiginit(self, _IMP_core.new_TransformationSymmetryMover(m, symm, pivot, max_translation, max_rotation))
5841 
5842  def set_maximum_translation(self, mt):
5843  r"""set_maximum_translation(TransformationSymmetryMover self, IMP::Float mt)"""
5844  return _IMP_core.TransformationSymmetryMover_set_maximum_translation(self, mt)
5845 
5846  def set_maximum_rotation(self, mr):
5847  r"""set_maximum_rotation(TransformationSymmetryMover self, IMP::Float mr)"""
5848  return _IMP_core.TransformationSymmetryMover_set_maximum_rotation(self, mr)
5849 
5850  def get_maximum_translation(self):
5851  r"""get_maximum_translation(TransformationSymmetryMover self) -> IMP::Float"""
5852  return _IMP_core.TransformationSymmetryMover_get_maximum_translation(self)
5853 
5854  def get_maximum_rotation(self):
5855  r"""get_maximum_rotation(TransformationSymmetryMover self) -> IMP::Float"""
5856  return _IMP_core.TransformationSymmetryMover_get_maximum_rotation(self)
5857 
5858  def get_version_info(self):
5859  r"""get_version_info(TransformationSymmetryMover self) -> VersionInfo"""
5860  return _IMP_core.TransformationSymmetryMover_get_version_info(self)
5861  __swig_destroy__ = _IMP_core.delete_TransformationSymmetryMover
5862 
5863  def __str__(self):
5864  r"""__str__(TransformationSymmetryMover self) -> std::string"""
5865  return _IMP_core.TransformationSymmetryMover___str__(self)
5866 
5867  def __repr__(self):
5868  r"""__repr__(TransformationSymmetryMover self) -> std::string"""
5869  return _IMP_core.TransformationSymmetryMover___repr__(self)
5870 
5871  @staticmethod
5872  def get_from(o):
5873  return _object_cast_to_TransformationSymmetryMover(o)
5874 
5875 
5876 # Register TransformationSymmetryMover in _IMP_core:
5877 _IMP_core.TransformationSymmetryMover_swigregister(TransformationSymmetryMover)
5878 class DihedralRestraint(IMP.Restraint):
5879  r"""Proxy of C++ IMP::core::DihedralRestraint class."""
5880 
5881  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5882 
5883  def __init__(self, m, score_func, p1, p2, p3, p4):
5884  r"""__init__(DihedralRestraint self, Model m, UnaryFunction score_func, _ParticleIndexAdaptor p1, _ParticleIndexAdaptor p2, _ParticleIndexAdaptor p3, _ParticleIndexAdaptor p4) -> DihedralRestraint"""
5885  _IMP_core.DihedralRestraint_swiginit(self, _IMP_core.new_DihedralRestraint(m, score_func, p1, p2, p3, p4))
5886 
5887  def do_get_inputs(self):
5888  r"""do_get_inputs(DihedralRestraint self) -> IMP::ModelObjectsTemp"""
5889  return _IMP_core.DihedralRestraint_do_get_inputs(self)
5890 
5891  def get_version_info(self):
5892  r"""get_version_info(DihedralRestraint self) -> VersionInfo"""
5893  return _IMP_core.DihedralRestraint_get_version_info(self)
5894  __swig_destroy__ = _IMP_core.delete_DihedralRestraint
5895 
5896  def __str__(self):
5897  r"""__str__(DihedralRestraint self) -> std::string"""
5898  return _IMP_core.DihedralRestraint___str__(self)
5899 
5900  def __repr__(self):
5901  r"""__repr__(DihedralRestraint self) -> std::string"""
5902  return _IMP_core.DihedralRestraint___repr__(self)
5903 
5904  @staticmethod
5905  def get_from(o):
5906  return _object_cast_to_DihedralRestraint(o)
5907 
5908 
5909 # Register DihedralRestraint in _IMP_core:
5910 _IMP_core.DihedralRestraint_swigregister(DihedralRestraint)
5911 class DistancePairScore(IMP.PairScore):
5912  r"""Proxy of C++ IMP::core::DistancePairScore class."""
5913 
5914  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5915 
5916  def __init__(self, *args):
5917  r"""
5918  __init__(DistancePairScore self, UnaryFunction uf, std::string name="DistancePairScore%1%") -> DistancePairScore
5919  __init__(DistancePairScore self) -> DistancePairScore
5920  """
5921  _IMP_core.DistancePairScore_swiginit(self, _IMP_core.new_DistancePairScore(*args))
5922 
5923  def do_get_inputs(self, m, pis):
5924  r"""do_get_inputs(DistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5925  return _IMP_core.DistancePairScore_do_get_inputs(self, m, pis)
5926 
5927  def get_version_info(self):
5928  r"""get_version_info(DistancePairScore self) -> VersionInfo"""
5929  return _IMP_core.DistancePairScore_get_version_info(self)
5930  __swig_destroy__ = _IMP_core.delete_DistancePairScore
5931 
5932  def __str__(self):
5933  r"""__str__(DistancePairScore self) -> std::string"""
5934  return _IMP_core.DistancePairScore___str__(self)
5935 
5936  def __repr__(self):
5937  r"""__repr__(DistancePairScore self) -> std::string"""
5938  return _IMP_core.DistancePairScore___repr__(self)
5939 
5940  @staticmethod
5941  def get_from(o):
5942  return _object_cast_to_DistancePairScore(o)
5943 
5944 
5945  def _get_as_binary(self):
5946  r"""_get_as_binary(DistancePairScore self) -> PyObject *"""
5947  return _IMP_core.DistancePairScore__get_as_binary(self)
5948 
5949  def _set_from_binary(self, p):
5950  r"""_set_from_binary(DistancePairScore self, PyObject * p)"""
5951  return _IMP_core.DistancePairScore__set_from_binary(self, p)
5952 
5953  def __getstate__(self):
5954  p = self._get_as_binary()
5955  if len(self.__dict__) > 1:
5956  d = self.__dict__.copy()
5957  del d['this']
5958  p = (d, p)
5959  return p
5960 
5961  def __setstate__(self, p):
5962  if not hasattr(self, 'this'):
5963  self.__init__()
5964  if isinstance(p, tuple):
5965  d, p = p
5966  self.__dict__.update(d)
5967  return self._set_from_binary(p)
5968 
5969 
5970 # Register DistancePairScore in _IMP_core:
5971 _IMP_core.DistancePairScore_swigregister(DistancePairScore)
5972 class HarmonicDistancePairScore(IMP.PairScore):
5973  r"""Proxy of C++ IMP::core::HarmonicDistancePairScore class."""
5974 
5975  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5976 
5977  def __init__(self, *args):
5978  r"""
5979  __init__(HarmonicDistancePairScore self, double x0, double k, std::string name="HarmonicDistancePairScore%1%") -> HarmonicDistancePairScore
5980  __init__(HarmonicDistancePairScore self) -> HarmonicDistancePairScore
5981  """
5982  _IMP_core.HarmonicDistancePairScore_swiginit(self, _IMP_core.new_HarmonicDistancePairScore(*args))
5983 
5984  def do_get_inputs(self, m, pis):
5985  r"""do_get_inputs(HarmonicDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5986  return _IMP_core.HarmonicDistancePairScore_do_get_inputs(self, m, pis)
5987 
5988  def get_x0(self):
5989  r"""get_x0(HarmonicDistancePairScore self) -> double"""
5990  return _IMP_core.HarmonicDistancePairScore_get_x0(self)
5991 
5992  def get_k(self):
5993  r"""get_k(HarmonicDistancePairScore self) -> double"""
5994  return _IMP_core.HarmonicDistancePairScore_get_k(self)
5995 
5996  def get_version_info(self):
5997  r"""get_version_info(HarmonicDistancePairScore self) -> VersionInfo"""
5998  return _IMP_core.HarmonicDistancePairScore_get_version_info(self)
5999  __swig_destroy__ = _IMP_core.delete_HarmonicDistancePairScore
6000 
6001  def __str__(self):
6002  r"""__str__(HarmonicDistancePairScore self) -> std::string"""
6003  return _IMP_core.HarmonicDistancePairScore___str__(self)
6004 
6005  def __repr__(self):
6006  r"""__repr__(HarmonicDistancePairScore self) -> std::string"""
6007  return _IMP_core.HarmonicDistancePairScore___repr__(self)
6008 
6009  @staticmethod
6010  def get_from(o):
6011  return _object_cast_to_HarmonicDistancePairScore(o)
6012 
6013 
6014  def _get_as_binary(self):
6015  r"""_get_as_binary(HarmonicDistancePairScore self) -> PyObject *"""
6016  return _IMP_core.HarmonicDistancePairScore__get_as_binary(self)
6017 
6018  def _set_from_binary(self, p):
6019  r"""_set_from_binary(HarmonicDistancePairScore self, PyObject * p)"""
6020  return _IMP_core.HarmonicDistancePairScore__set_from_binary(self, p)
6021 
6022  def __getstate__(self):
6023  p = self._get_as_binary()
6024  if len(self.__dict__) > 1:
6025  d = self.__dict__.copy()
6026  del d['this']
6027  p = (d, p)
6028  return p
6029 
6030  def __setstate__(self, p):
6031  if not hasattr(self, 'this'):
6032  self.__init__()
6033  if isinstance(p, tuple):
6034  d, p = p
6035  self.__dict__.update(d)
6036  return self._set_from_binary(p)
6037 
6038 
6039  def _get_jax(self):
6040  import jax.numpy as jnp
6041  import functools
6042  def jax_harmonic_distance_pair_score(jm, indexes, d, k):
6043  xyzs = jm['xyz'][indexes]
6044  diff = xyzs[:,0] - xyzs[:,1]
6045  drs = jnp.linalg.norm(diff, axis=1)
6046  return 0.5 * k * (d - drs)**2
6047  f = functools.partial(jax_harmonic_distance_pair_score,
6048  d=self.get_x0(), k=self.get_k())
6049  return self._wrap_jax(f)
6050 
6051 
6052 # Register HarmonicDistancePairScore in _IMP_core:
6053 _IMP_core.HarmonicDistancePairScore_swigregister(HarmonicDistancePairScore)
6054 class DistanceRestraint(IMP.Restraint):
6055  r"""Proxy of C++ IMP::core::DistanceRestraint class."""
6056 
6057  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6058 
6059  def __init__(self, *args):
6060  r"""
6061  __init__(DistanceRestraint self, Model m, UnaryFunction score_func, _ParticleIndexAdaptor a, _ParticleIndexAdaptor b, std::string name="DistanceRestraint %1%") -> DistanceRestraint
6062  __init__(DistanceRestraint self) -> DistanceRestraint
6063  """
6064  _IMP_core.DistanceRestraint_swiginit(self, _IMP_core.new_DistanceRestraint(*args))
6065 
6066  def get_version_info(self):
6067  r"""get_version_info(DistanceRestraint self) -> VersionInfo"""
6068  return _IMP_core.DistanceRestraint_get_version_info(self)
6069  __swig_destroy__ = _IMP_core.delete_DistanceRestraint
6070 
6071  def __str__(self):
6072  r"""__str__(DistanceRestraint self) -> std::string"""
6073  return _IMP_core.DistanceRestraint___str__(self)
6074 
6075  def __repr__(self):
6076  r"""__repr__(DistanceRestraint self) -> std::string"""
6077  return _IMP_core.DistanceRestraint___repr__(self)
6078 
6079  @staticmethod
6080  def get_from(o):
6081  return _object_cast_to_DistanceRestraint(o)
6082 
6083 
6084  def _get_as_binary(self):
6085  r"""_get_as_binary(DistanceRestraint self) -> PyObject *"""
6086  return _IMP_core.DistanceRestraint__get_as_binary(self)
6087 
6088  def _set_from_binary(self, p):
6089  r"""_set_from_binary(DistanceRestraint self, PyObject * p)"""
6090  return _IMP_core.DistanceRestraint__set_from_binary(self, p)
6091 
6092  def __getstate__(self):
6093  p = self._get_as_binary()
6094  if len(self.__dict__) > 1:
6095  d = self.__dict__.copy()
6096  del d['this']
6097  p = (d, p)
6098  return p
6099 
6100  def __setstate__(self, p):
6101  if not hasattr(self, 'this'):
6102  self.__init__()
6103  if isinstance(p, tuple):
6104  d, p = p
6105  self.__dict__.update(d)
6106  return self._set_from_binary(p)
6107 
6108 
6109 # Register DistanceRestraint in _IMP_core:
6110 _IMP_core.DistanceRestraint_swigregister(DistanceRestraint)
6111 class SphereDistanceToSingletonScore(IMP.SingletonScore):
6112  r"""Proxy of C++ IMP::core::SphereDistanceToSingletonScore class."""
6113 
6114  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6115 
6116  def __init__(self, f, pt):
6117  r"""__init__(SphereDistanceToSingletonScore self, UnaryFunction f, Vector3D pt) -> SphereDistanceToSingletonScore"""
6118  _IMP_core.SphereDistanceToSingletonScore_swiginit(self, _IMP_core.new_SphereDistanceToSingletonScore(f, pt))
6119 
6120  def do_get_inputs(self, m, pis):
6121  r"""do_get_inputs(SphereDistanceToSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6122  return _IMP_core.SphereDistanceToSingletonScore_do_get_inputs(self, m, pis)
6123 
6124  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
6125  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"""
6126  return _IMP_core.SphereDistanceToSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
6127 
6128  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
6129  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"""
6130  return _IMP_core.SphereDistanceToSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
6131 
6132  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
6133  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"""
6134  return _IMP_core.SphereDistanceToSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
6135 
6136  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
6137  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"""
6138  return _IMP_core.SphereDistanceToSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
6139 
6140  def get_version_info(self):
6141  r"""get_version_info(SphereDistanceToSingletonScore self) -> VersionInfo"""
6142  return _IMP_core.SphereDistanceToSingletonScore_get_version_info(self)
6143  __swig_destroy__ = _IMP_core.delete_SphereDistanceToSingletonScore
6144 
6145  def __str__(self):
6146  r"""__str__(SphereDistanceToSingletonScore self) -> std::string"""
6147  return _IMP_core.SphereDistanceToSingletonScore___str__(self)
6148 
6149  def __repr__(self):
6150  r"""__repr__(SphereDistanceToSingletonScore self) -> std::string"""
6151  return _IMP_core.SphereDistanceToSingletonScore___repr__(self)
6152 
6153  @staticmethod
6154  def get_from(o):
6155  return _object_cast_to_SphereDistanceToSingletonScore(o)
6156 
6157 
6158 # Register SphereDistanceToSingletonScore in _IMP_core:
6159 _IMP_core.SphereDistanceToSingletonScore_swigregister(SphereDistanceToSingletonScore)
6160 class ExcludedVolumeRestraint(IMP.Restraint):
6161  r"""Proxy of C++ IMP::core::ExcludedVolumeRestraint class."""
6162 
6163  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6164 
6165  def __init__(self, *args):
6166  r"""__init__(ExcludedVolumeRestraint self, _SingletonContainerAdaptor sc, double k=1, double slack=10, std::string name="ExcludedVolumeRestraint%1%") -> ExcludedVolumeRestraint"""
6167  _IMP_core.ExcludedVolumeRestraint_swiginit(self, _IMP_core.new_ExcludedVolumeRestraint(*args))
6168 
6169  def do_get_inputs(self):
6170  r"""do_get_inputs(ExcludedVolumeRestraint self) -> IMP::ModelObjectsTemp"""
6171  return _IMP_core.ExcludedVolumeRestraint_do_get_inputs(self)
6172 
6173  def get_version_info(self):
6174  r"""get_version_info(ExcludedVolumeRestraint self) -> VersionInfo"""
6175  return _IMP_core.ExcludedVolumeRestraint_get_version_info(self)
6176  __swig_destroy__ = _IMP_core.delete_ExcludedVolumeRestraint
6177 
6178  def do_create_decomposition(self):
6179  r"""do_create_decomposition(ExcludedVolumeRestraint self) -> IMP::Restraints"""
6180  return _IMP_core.ExcludedVolumeRestraint_do_create_decomposition(self)
6181 
6182  def do_create_current_decomposition(self):
6183  r"""do_create_current_decomposition(ExcludedVolumeRestraint self) -> IMP::Restraints"""
6184  return _IMP_core.ExcludedVolumeRestraint_do_create_current_decomposition(self)
6185 
6186  def get_indexes(self):
6187  r"""get_indexes(ExcludedVolumeRestraint self) -> IMP::ParticleIndexPairs const &"""
6188  return _IMP_core.ExcludedVolumeRestraint_get_indexes(self)
6189  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)
6190  def __set_pair_filters(self, obj): IMP._list_util.set_varlist(self.pair_filters, obj)
6191  def __del_pair_filters(self): IMP._list_util.del_varlist(self.pair_filters)
6192  pair_filters = property(__get_pair_filters, __set_pair_filters, __del_pair_filters, doc="List of ##ucnames")
6193 
6194  def remove_pair_filter(self, d):
6195  r"""remove_pair_filter(ExcludedVolumeRestraint self, PairPredicate d)"""
6196  return _IMP_core.ExcludedVolumeRestraint_remove_pair_filter(self, d)
6197 
6198  def _python_index_pair_filter(self, d, start, stop):
6199  r"""_python_index_pair_filter(ExcludedVolumeRestraint self, PairPredicate d, unsigned int start, unsigned int stop) -> unsigned int"""
6200  return _IMP_core.ExcludedVolumeRestraint__python_index_pair_filter(self, d, start, stop)
6201 
6202  def remove_pair_filters(self, d):
6203  r"""remove_pair_filters(ExcludedVolumeRestraint self, IMP::PairPredicates const & d)"""
6204  return _IMP_core.ExcludedVolumeRestraint_remove_pair_filters(self, d)
6205 
6206  def set_pair_filters(self, ps):
6207  r"""set_pair_filters(ExcludedVolumeRestraint self, IMP::PairPredicates const & ps)"""
6208  return _IMP_core.ExcludedVolumeRestraint_set_pair_filters(self, ps)
6209 
6210  def set_pair_filters_order(self, objs):
6211  r"""set_pair_filters_order(ExcludedVolumeRestraint self, IMP::PairPredicates const & objs)"""
6212  return _IMP_core.ExcludedVolumeRestraint_set_pair_filters_order(self, objs)
6213 
6214  def add_pair_filter(self, obj):
6215  r"""add_pair_filter(ExcludedVolumeRestraint self, PairPredicate obj) -> unsigned int"""
6216  return _IMP_core.ExcludedVolumeRestraint_add_pair_filter(self, obj)
6217 
6218  def add_pair_filters(self, objs):
6219  r"""add_pair_filters(ExcludedVolumeRestraint self, IMP::PairPredicates const & objs)"""
6220  return _IMP_core.ExcludedVolumeRestraint_add_pair_filters(self, objs)
6221 
6222  def clear_pair_filters(self):
6223  r"""clear_pair_filters(ExcludedVolumeRestraint self)"""
6224  return _IMP_core.ExcludedVolumeRestraint_clear_pair_filters(self)
6225 
6226  def get_number_of_pair_filters(self):
6227  r"""get_number_of_pair_filters(ExcludedVolumeRestraint self) -> unsigned int"""
6228  return _IMP_core.ExcludedVolumeRestraint_get_number_of_pair_filters(self)
6229 
6230  def get_has_pair_filters(self):
6231  r"""get_has_pair_filters(ExcludedVolumeRestraint self) -> bool"""
6232  return _IMP_core.ExcludedVolumeRestraint_get_has_pair_filters(self)
6233 
6234  def get_pair_filter(self, i):
6235  r"""get_pair_filter(ExcludedVolumeRestraint self, unsigned int i) -> PairPredicate"""
6236  return _IMP_core.ExcludedVolumeRestraint_get_pair_filter(self, i)
6237 
6238  def get_pair_filters(self):
6239  r"""get_pair_filters(ExcludedVolumeRestraint self) -> IMP::PairPredicates"""
6240  return _IMP_core.ExcludedVolumeRestraint_get_pair_filters(self)
6241 
6242  def erase_pair_filter(self, i):
6243  r"""erase_pair_filter(ExcludedVolumeRestraint self, unsigned int i)"""
6244  return _IMP_core.ExcludedVolumeRestraint_erase_pair_filter(self, i)
6245 
6246  def reserve_pair_filters(self, sz):
6247  r"""reserve_pair_filters(ExcludedVolumeRestraint self, unsigned int sz)"""
6248  return _IMP_core.ExcludedVolumeRestraint_reserve_pair_filters(self, sz)
6249 
6250  def __str__(self):
6251  r"""__str__(ExcludedVolumeRestraint self) -> std::string"""
6252  return _IMP_core.ExcludedVolumeRestraint___str__(self)
6253 
6254  def __repr__(self):
6255  r"""__repr__(ExcludedVolumeRestraint self) -> std::string"""
6256  return _IMP_core.ExcludedVolumeRestraint___repr__(self)
6257 
6258  @staticmethod
6259  def get_from(o):
6260  return _object_cast_to_ExcludedVolumeRestraint(o)
6261 
6262 
6263 # Register ExcludedVolumeRestraint in _IMP_core:
6264 _IMP_core.ExcludedVolumeRestraint_swigregister(ExcludedVolumeRestraint)
6265 class FixedRefiner(IMP.Refiner):
6266  r"""Proxy of C++ IMP::core::FixedRefiner class."""
6267 
6268  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6269 
6270  def __init__(self, *args):
6271  r"""
6272  __init__(FixedRefiner self, IMP::ParticlesTemp const & ps) -> FixedRefiner
6273  __init__(FixedRefiner self, Model m, IMP::ParticleIndexes const & pis) -> FixedRefiner
6274  """
6275  _IMP_core.FixedRefiner_swiginit(self, _IMP_core.new_FixedRefiner(*args))
6276 
6277  def do_get_inputs(self, m, pis):
6278  r"""do_get_inputs(FixedRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6279  return _IMP_core.FixedRefiner_do_get_inputs(self, m, pis)
6280 
6281  def get_version_info(self):
6282  r"""get_version_info(FixedRefiner self) -> VersionInfo"""
6283  return _IMP_core.FixedRefiner_get_version_info(self)
6284  __swig_destroy__ = _IMP_core.delete_FixedRefiner
6285 
6286  def __str__(self):
6287  r"""__str__(FixedRefiner self) -> std::string"""
6288  return _IMP_core.FixedRefiner___str__(self)
6289 
6290  def __repr__(self):
6291  r"""__repr__(FixedRefiner self) -> std::string"""
6292  return _IMP_core.FixedRefiner___repr__(self)
6293 
6294  @staticmethod
6295  def get_from(o):
6296  return _object_cast_to_FixedRefiner(o)
6297 
6298 
6299 # Register FixedRefiner in _IMP_core:
6300 _IMP_core.FixedRefiner_swigregister(FixedRefiner)
6301 class GridClosePairsFinder(ClosePairsFinder):
6302  r"""Proxy of C++ IMP::core::GridClosePairsFinder class."""
6303 
6304  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6305 
6306  def __init__(self):
6307  r"""__init__(GridClosePairsFinder self) -> GridClosePairsFinder"""
6308  _IMP_core.GridClosePairsFinder_swiginit(self, _IMP_core.new_GridClosePairsFinder())
6309 
6310  def get_close_pairs(self, *args):
6311  r"""
6312  get_close_pairs(GridClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
6313  get_close_pairs(GridClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bas, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
6314  get_close_pairs(GridClosePairsFinder self, Model m, IMP::ParticleIndexes const & pc) -> IMP::ParticleIndexPairs
6315  get_close_pairs(GridClosePairsFinder self, Model m, IMP::ParticleIndexes const & pca, IMP::ParticleIndexes const & pcb) -> IMP::ParticleIndexPairs
6316  """
6317  return _IMP_core.GridClosePairsFinder_get_close_pairs(self, *args)
6318 
6319  def do_get_inputs(self, m, pis):
6320  r"""do_get_inputs(GridClosePairsFinder self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6321  return _IMP_core.GridClosePairsFinder_do_get_inputs(self, m, pis)
6322 
6323  def get_version_info(self):
6324  r"""get_version_info(GridClosePairsFinder self) -> VersionInfo"""
6325  return _IMP_core.GridClosePairsFinder_get_version_info(self)
6326  __swig_destroy__ = _IMP_core.delete_GridClosePairsFinder
6327 
6328  def __str__(self):
6329  r"""__str__(GridClosePairsFinder self) -> std::string"""
6330  return _IMP_core.GridClosePairsFinder___str__(self)
6331 
6332  def __repr__(self):
6333  r"""__repr__(GridClosePairsFinder self) -> std::string"""
6334  return _IMP_core.GridClosePairsFinder___repr__(self)
6335 
6336  @staticmethod
6337  def get_from(o):
6338  return _object_cast_to_GridClosePairsFinder(o)
6339 
6340 
6341  def _get_as_binary(self):
6342  r"""_get_as_binary(GridClosePairsFinder self) -> PyObject *"""
6343  return _IMP_core.GridClosePairsFinder__get_as_binary(self)
6344 
6345  def _set_from_binary(self, p):
6346  r"""_set_from_binary(GridClosePairsFinder self, PyObject * p)"""
6347  return _IMP_core.GridClosePairsFinder__set_from_binary(self, p)
6348 
6349  def __getstate__(self):
6350  p = self._get_as_binary()
6351  if len(self.__dict__) > 1:
6352  d = self.__dict__.copy()
6353  del d['this']
6354  p = (d, p)
6355  return p
6356 
6357  def __setstate__(self, p):
6358  if not hasattr(self, 'this'):
6359  self.__init__()
6360  if isinstance(p, tuple):
6361  d, p = p
6362  self.__dict__.update(d)
6363  return self._set_from_binary(p)
6364 
6365 
6366 # Register GridClosePairsFinder in _IMP_core:
6367 _IMP_core.GridClosePairsFinder_swigregister(GridClosePairsFinder)
6368 class Harmonic(IMP.UnaryFunction):
6369  r"""Proxy of C++ IMP::core::Harmonic class."""
6370 
6371  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6372 
6373  def __init__(self, *args):
6374  r"""
6375  __init__(Harmonic self, IMP::Float mean, IMP::Float k) -> Harmonic
6376  __init__(Harmonic self) -> Harmonic
6377  """
6378  _IMP_core.Harmonic_swiginit(self, _IMP_core.new_Harmonic(*args))
6379 
6380  def get_version_info(self):
6381  r"""get_version_info(Harmonic self) -> VersionInfo"""
6382  return _IMP_core.Harmonic_get_version_info(self)
6383  __swig_destroy__ = _IMP_core.delete_Harmonic
6384 
6385  def get_mean(self):
6386  r"""get_mean(Harmonic self) -> IMP::Float"""
6387  return _IMP_core.Harmonic_get_mean(self)
6388 
6389  def get_k(self):
6390  r"""get_k(Harmonic self) -> IMP::Float"""
6391  return _IMP_core.Harmonic_get_k(self)
6392 
6393  def set_mean(self, mean):
6394  r"""set_mean(Harmonic self, IMP::Float mean)"""
6395  return _IMP_core.Harmonic_set_mean(self, mean)
6396 
6397  def set_k(self, k):
6398  r"""set_k(Harmonic self, IMP::Float k)"""
6399  return _IMP_core.Harmonic_set_k(self, k)
6400 
6401  @staticmethod
6402  def get_k_from_standard_deviation(sd, t=297.15):
6403  r"""get_k_from_standard_deviation(IMP::Float sd, IMP::Float t=297.15) -> IMP::Float"""
6404  return _IMP_core.Harmonic_get_k_from_standard_deviation(sd, t)
6405 
6406  def __str__(self):
6407  r"""__str__(Harmonic self) -> std::string"""
6408  return _IMP_core.Harmonic___str__(self)
6409 
6410  def __repr__(self):
6411  r"""__repr__(Harmonic self) -> std::string"""
6412  return _IMP_core.Harmonic___repr__(self)
6413 
6414  @staticmethod
6415  def get_from(o):
6416  return _object_cast_to_Harmonic(o)
6417 
6418 
6419  def _get_as_binary(self):
6420  r"""_get_as_binary(Harmonic self) -> PyObject *"""
6421  return _IMP_core.Harmonic__get_as_binary(self)
6422 
6423  def _set_from_binary(self, p):
6424  r"""_set_from_binary(Harmonic self, PyObject * p)"""
6425  return _IMP_core.Harmonic__set_from_binary(self, p)
6426 
6427  def __getstate__(self):
6428  p = self._get_as_binary()
6429  if len(self.__dict__) > 1:
6430  d = self.__dict__.copy()
6431  del d['this']
6432  p = (d, p)
6433  return p
6434 
6435  def __setstate__(self, p):
6436  if not hasattr(self, 'this'):
6437  self.__init__()
6438  if isinstance(p, tuple):
6439  d, p = p
6440  self.__dict__.update(d)
6441  return self._set_from_binary(p)
6442 
6443 
6444  def _get_jax(self):
6445  import functools
6446  def score(val, mean, k):
6447  return 0.5 * k * (mean - val) ** 2
6448  return functools.partial(score, mean=self.get_mean(), k=self.get_k())
6449 
6450 
6451 # Register Harmonic in _IMP_core:
6452 _IMP_core.Harmonic_swigregister(Harmonic)
6453 class HarmonicWell(IMP.UnaryFunction):
6454  r"""Proxy of C++ IMP::core::HarmonicWell class."""
6455 
6456  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6457 
6458  def __init__(self, well, k):
6459  r"""__init__(HarmonicWell self, IMP::FloatRange const & well, double k) -> HarmonicWell"""
6460  _IMP_core.HarmonicWell_swiginit(self, _IMP_core.new_HarmonicWell(well, k))
6461 
6462  def get_version_info(self):
6463  r"""get_version_info(HarmonicWell self) -> VersionInfo"""
6464  return _IMP_core.HarmonicWell_get_version_info(self)
6465  __swig_destroy__ = _IMP_core.delete_HarmonicWell
6466 
6467  def __str__(self):
6468  r"""__str__(HarmonicWell self) -> std::string"""
6469  return _IMP_core.HarmonicWell___str__(self)
6470 
6471  def __repr__(self):
6472  r"""__repr__(HarmonicWell self) -> std::string"""
6473  return _IMP_core.HarmonicWell___repr__(self)
6474 
6475  @staticmethod
6476  def get_from(o):
6477  return _object_cast_to_HarmonicWell(o)
6478 
6479 
6480 # Register HarmonicWell in _IMP_core:
6481 _IMP_core.HarmonicWell_swigregister(HarmonicWell)
6482 class HarmonicLowerBound(Harmonic):
6483  r"""Proxy of C++ IMP::core::HarmonicLowerBound class."""
6484 
6485  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6486 
6487  def __init__(self, *args):
6488  r"""
6489  __init__(HarmonicLowerBound self, IMP::Float mean, IMP::Float k) -> HarmonicLowerBound
6490  __init__(HarmonicLowerBound self) -> HarmonicLowerBound
6491  """
6492  _IMP_core.HarmonicLowerBound_swiginit(self, _IMP_core.new_HarmonicLowerBound(*args))
6493  __swig_destroy__ = _IMP_core.delete_HarmonicLowerBound
6494 
6495  def __str__(self):
6496  r"""__str__(HarmonicLowerBound self) -> std::string"""
6497  return _IMP_core.HarmonicLowerBound___str__(self)
6498 
6499  def __repr__(self):
6500  r"""__repr__(HarmonicLowerBound self) -> std::string"""
6501  return _IMP_core.HarmonicLowerBound___repr__(self)
6502 
6503  @staticmethod
6504  def get_from(o):
6505  return _object_cast_to_HarmonicLowerBound(o)
6506 
6507 
6508  def _get_as_binary(self):
6509  r"""_get_as_binary(HarmonicLowerBound self) -> PyObject *"""
6510  return _IMP_core.HarmonicLowerBound__get_as_binary(self)
6511 
6512  def _set_from_binary(self, p):
6513  r"""_set_from_binary(HarmonicLowerBound self, PyObject * p)"""
6514  return _IMP_core.HarmonicLowerBound__set_from_binary(self, p)
6515 
6516  def __getstate__(self):
6517  p = self._get_as_binary()
6518  if len(self.__dict__) > 1:
6519  d = self.__dict__.copy()
6520  del d['this']
6521  p = (d, p)
6522  return p
6523 
6524  def __setstate__(self, p):
6525  if not hasattr(self, 'this'):
6526  self.__init__()
6527  if isinstance(p, tuple):
6528  d, p = p
6529  self.__dict__.update(d)
6530  return self._set_from_binary(p)
6531 
6532 
6533  def _get_jax(self):
6534  import functools
6535  import jax.lax
6536  def score(val, mean, k):
6537  return 0.5 * k * jax.lax.max(mean - val, 0.0) ** 2
6538  return functools.partial(score, mean=self.get_mean(), k=self.get_k())
6539 
6540 
6541 # Register HarmonicLowerBound in _IMP_core:
6542 _IMP_core.HarmonicLowerBound_swigregister(HarmonicLowerBound)
6543 class HarmonicUpperBound(Harmonic):
6544  r"""Proxy of C++ IMP::core::HarmonicUpperBound class."""
6545 
6546  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6547 
6548  def __init__(self, *args):
6549  r"""
6550  __init__(HarmonicUpperBound self, IMP::Float mean, IMP::Float k) -> HarmonicUpperBound
6551  __init__(HarmonicUpperBound self) -> HarmonicUpperBound
6552  """
6553  _IMP_core.HarmonicUpperBound_swiginit(self, _IMP_core.new_HarmonicUpperBound(*args))
6554  __swig_destroy__ = _IMP_core.delete_HarmonicUpperBound
6555 
6556  def __str__(self):
6557  r"""__str__(HarmonicUpperBound self) -> std::string"""
6558  return _IMP_core.HarmonicUpperBound___str__(self)
6559 
6560  def __repr__(self):
6561  r"""__repr__(HarmonicUpperBound self) -> std::string"""
6562  return _IMP_core.HarmonicUpperBound___repr__(self)
6563 
6564  @staticmethod
6565  def get_from(o):
6566  return _object_cast_to_HarmonicUpperBound(o)
6567 
6568 
6569  def _get_as_binary(self):
6570  r"""_get_as_binary(HarmonicUpperBound self) -> PyObject *"""
6571  return _IMP_core.HarmonicUpperBound__get_as_binary(self)
6572 
6573  def _set_from_binary(self, p):
6574  r"""_set_from_binary(HarmonicUpperBound self, PyObject * p)"""
6575  return _IMP_core.HarmonicUpperBound__set_from_binary(self, p)
6576 
6577  def __getstate__(self):
6578  p = self._get_as_binary()
6579  if len(self.__dict__) > 1:
6580  d = self.__dict__.copy()
6581  del d['this']
6582  p = (d, p)
6583  return p
6584 
6585  def __setstate__(self, p):
6586  if not hasattr(self, 'this'):
6587  self.__init__()
6588  if isinstance(p, tuple):
6589  d, p = p
6590  self.__dict__.update(d)
6591  return self._set_from_binary(p)
6592 
6593 
6594  def _get_jax(self):
6595  import functools
6596  import jax.lax
6597  def score(val, mean, k):
6598  return 0.5 * k * jax.lax.min(mean - val, 0.0) ** 2
6599  return functools.partial(score, mean=self.get_mean(), k=self.get_k())
6600 
6601 
6602 # Register HarmonicUpperBound in _IMP_core:
6603 _IMP_core.HarmonicUpperBound_swigregister(HarmonicUpperBound)
6604 class WeightedSum(IMP.UnaryFunction):
6605  r"""Proxy of C++ IMP::core::WeightedSum class."""
6606 
6607  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6608 
6609  def __init__(self, funcs, weights):
6610  r"""__init__(WeightedSum self, IMP::UnaryFunctions funcs, IMP::Floats weights) -> WeightedSum"""
6611  _IMP_core.WeightedSum_swiginit(self, _IMP_core.new_WeightedSum(funcs, weights))
6612 
6613  def get_function_number(self):
6614  r"""get_function_number(WeightedSum self) -> unsigned int"""
6615  return _IMP_core.WeightedSum_get_function_number(self)
6616 
6617  def set_weights(self, weights):
6618  r"""set_weights(WeightedSum self, IMP::Floats weights)"""
6619  return _IMP_core.WeightedSum_set_weights(self, weights)
6620 
6621  def get_weights(self):
6622  r"""get_weights(WeightedSum self) -> IMP::Floats"""
6623  return _IMP_core.WeightedSum_get_weights(self)
6624 
6625  def get_weight(self, i):
6626  r"""get_weight(WeightedSum self, unsigned int i) -> double"""
6627  return _IMP_core.WeightedSum_get_weight(self, i)
6628 
6629  def get_function(self, i):
6630  r"""get_function(WeightedSum self, unsigned int i) -> UnaryFunction"""
6631  return _IMP_core.WeightedSum_get_function(self, i)
6632 
6633  def get_version_info(self):
6634  r"""get_version_info(WeightedSum self) -> VersionInfo"""
6635  return _IMP_core.WeightedSum_get_version_info(self)
6636  __swig_destroy__ = _IMP_core.delete_WeightedSum
6637 
6638  def __str__(self):
6639  r"""__str__(WeightedSum self) -> std::string"""
6640  return _IMP_core.WeightedSum___str__(self)
6641 
6642  def __repr__(self):
6643  r"""__repr__(WeightedSum self) -> std::string"""
6644  return _IMP_core.WeightedSum___repr__(self)
6645 
6646  @staticmethod
6647  def get_from(o):
6648  return _object_cast_to_WeightedSum(o)
6649 
6650 
6651 # Register WeightedSum in _IMP_core:
6652 _IMP_core.WeightedSum_swigregister(WeightedSum)
6653 class WeightedSumOfExponential(IMP.UnaryFunction):
6654  r"""Proxy of C++ IMP::core::WeightedSumOfExponential class."""
6655 
6656  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6657 
6658  def __init__(self, funcs, weights, denom=1.0):
6659  r"""__init__(WeightedSumOfExponential self, IMP::UnaryFunctions funcs, IMP::Floats weights, IMP::Float denom=1.0) -> WeightedSumOfExponential"""
6660  _IMP_core.WeightedSumOfExponential_swiginit(self, _IMP_core.new_WeightedSumOfExponential(funcs, weights, denom))
6661 
6662  def get_function_number(self):
6663  r"""get_function_number(WeightedSumOfExponential self) -> unsigned int"""
6664  return _IMP_core.WeightedSumOfExponential_get_function_number(self)
6665 
6666  def set_weights(self, weights):
6667  r"""set_weights(WeightedSumOfExponential self, IMP::Floats weights)"""
6668  return _IMP_core.WeightedSumOfExponential_set_weights(self, weights)
6669 
6670  def get_weights(self):
6671  r"""get_weights(WeightedSumOfExponential self) -> IMP::Floats"""
6672  return _IMP_core.WeightedSumOfExponential_get_weights(self)
6673 
6674  def get_weight(self, i):
6675  r"""get_weight(WeightedSumOfExponential self, unsigned int i) -> double"""
6676  return _IMP_core.WeightedSumOfExponential_get_weight(self, i)
6677 
6678  def get_function(self, i):
6679  r"""get_function(WeightedSumOfExponential self, unsigned int i) -> UnaryFunction"""
6680  return _IMP_core.WeightedSumOfExponential_get_function(self, i)
6681 
6682  def set_denominator(self, denom):
6683  r"""set_denominator(WeightedSumOfExponential self, double denom)"""
6684  return _IMP_core.WeightedSumOfExponential_set_denominator(self, denom)
6685 
6686  def get_denominator(self):
6687  r"""get_denominator(WeightedSumOfExponential self) -> double"""
6688  return _IMP_core.WeightedSumOfExponential_get_denominator(self)
6689 
6690  def get_version_info(self):
6691  r"""get_version_info(WeightedSumOfExponential self) -> VersionInfo"""
6692  return _IMP_core.WeightedSumOfExponential_get_version_info(self)
6693  __swig_destroy__ = _IMP_core.delete_WeightedSumOfExponential
6694 
6695  def __str__(self):
6696  r"""__str__(WeightedSumOfExponential self) -> std::string"""
6697  return _IMP_core.WeightedSumOfExponential___str__(self)
6698 
6699  def __repr__(self):
6700  r"""__repr__(WeightedSumOfExponential self) -> std::string"""
6701  return _IMP_core.WeightedSumOfExponential___repr__(self)
6702 
6703  @staticmethod
6704  def get_from(o):
6705  return _object_cast_to_WeightedSumOfExponential(o)
6706 
6707 
6708 # Register WeightedSumOfExponential in _IMP_core:
6709 _IMP_core.WeightedSumOfExponential_swigregister(WeightedSumOfExponential)
6710 class MSConnectivityRestraint(IMP.Restraint):
6711  r"""Proxy of C++ IMP::core::MSConnectivityRestraint class."""
6712 
6713  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6714 
6715  def __init__(self, m, ps, eps=0.1):
6716  r"""__init__(MSConnectivityRestraint self, Model m, PairScore ps, double eps=0.1) -> MSConnectivityRestraint"""
6717  _IMP_core.MSConnectivityRestraint_swiginit(self, _IMP_core.new_MSConnectivityRestraint(m, ps, eps))
6718 
6719  def add_type(self, ps):
6720  r"""add_type(MSConnectivityRestraint self, IMP::ParticlesTemp const & ps) -> unsigned int"""
6721  return _IMP_core.MSConnectivityRestraint_add_type(self, ps)
6722 
6723  def add_composite(self, *args):
6724  r"""
6725  add_composite(MSConnectivityRestraint self, IMP::Ints const & components) -> unsigned int
6726  add_composite(MSConnectivityRestraint self, IMP::Ints const & components, unsigned int parent) -> unsigned int
6727  """
6728  return _IMP_core.MSConnectivityRestraint_add_composite(self, *args)
6729 
6730  def get_connected_pairs(self):
6731  r"""get_connected_pairs(MSConnectivityRestraint self) -> IMP::ParticlePairsTemp"""
6732  return _IMP_core.MSConnectivityRestraint_get_connected_pairs(self)
6733 
6734  def get_pair_score(self):
6735  r"""get_pair_score(MSConnectivityRestraint self) -> PairScore"""
6736  return _IMP_core.MSConnectivityRestraint_get_pair_score(self)
6737 
6738  def do_create_current_decomposition(self):
6739  r"""do_create_current_decomposition(MSConnectivityRestraint self) -> IMP::Restraints"""
6740  return _IMP_core.MSConnectivityRestraint_do_create_current_decomposition(self)
6741 
6742  def do_get_inputs(self):
6743  r"""do_get_inputs(MSConnectivityRestraint self) -> IMP::ModelObjectsTemp"""
6744  return _IMP_core.MSConnectivityRestraint_do_get_inputs(self)
6745 
6746  def get_version_info(self):
6747  r"""get_version_info(MSConnectivityRestraint self) -> VersionInfo"""
6748  return _IMP_core.MSConnectivityRestraint_get_version_info(self)
6749  __swig_destroy__ = _IMP_core.delete_MSConnectivityRestraint
6750 
6751  def __str__(self):
6752  r"""__str__(MSConnectivityRestraint self) -> std::string"""
6753  return _IMP_core.MSConnectivityRestraint___str__(self)
6754 
6755  def __repr__(self):
6756  r"""__repr__(MSConnectivityRestraint self) -> std::string"""
6757  return _IMP_core.MSConnectivityRestraint___repr__(self)
6758 
6759  @staticmethod
6760  def get_from(o):
6761  return _object_cast_to_MSConnectivityRestraint(o)
6762 
6763 
6764 # Register MSConnectivityRestraint in _IMP_core:
6765 _IMP_core.MSConnectivityRestraint_swigregister(MSConnectivityRestraint)
6766 class HierarchyTraits(object):
6767  r"""Proxy of C++ IMP::core::HierarchyTraits class."""
6768 
6769  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6770 
6771  def __init__(self, *args):
6772  r"""
6773  __init__(HierarchyTraits self) -> HierarchyTraits
6774  __init__(HierarchyTraits self, std::string name) -> HierarchyTraits
6775  """
6776  _IMP_core.HierarchyTraits_swiginit(self, _IMP_core.new_HierarchyTraits(*args))
6777 
6778  def get_children_key(self):
6779  r"""get_children_key(HierarchyTraits self) -> ParticleIndexesKey"""
6780  return _IMP_core.HierarchyTraits_get_children_key(self)
6781 
6782  def get_parent_key(self):
6783  r"""get_parent_key(HierarchyTraits self) -> ParticleIndexKey"""
6784  return _IMP_core.HierarchyTraits_get_parent_key(self)
6785 
6786  def __eq__(self, o):
6787  r"""__eq__(HierarchyTraits self, HierarchyTraits o) -> bool"""
6788  return _IMP_core.HierarchyTraits___eq__(self, o)
6789 
6790  def show(self, *args):
6791  r"""show(HierarchyTraits self, _ostream out=std::cout)"""
6792  return _IMP_core.HierarchyTraits_show(self, *args)
6793 
6794  def __str__(self):
6795  r"""__str__(HierarchyTraits self) -> std::string"""
6796  return _IMP_core.HierarchyTraits___str__(self)
6797 
6798  def __repr__(self):
6799  r"""__repr__(HierarchyTraits self) -> std::string"""
6800  return _IMP_core.HierarchyTraits___repr__(self)
6801  __swig_destroy__ = _IMP_core.delete_HierarchyTraits
6802 
6803 # Register HierarchyTraits in _IMP_core:
6804 _IMP_core.HierarchyTraits_swigregister(HierarchyTraits)
6805 class Hierarchy(IMP.Decorator):
6806  r"""Proxy of C++ IMP::core::Hierarchy class."""
6807 
6808  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6809 
6810  def get_decorator_traits(self):
6811  r"""get_decorator_traits(Hierarchy self) -> HierarchyTraits"""
6812  return _IMP_core.Hierarchy_get_decorator_traits(self)
6813 
6814  @staticmethod
6815  def get_default_decorator_traits():
6816  r"""get_default_decorator_traits() -> HierarchyTraits"""
6817  return _IMP_core.Hierarchy_get_default_decorator_traits()
6818 
6819  def __init__(self, *args):
6820  r"""
6821  __init__(Hierarchy self) -> Hierarchy
6822  __init__(Hierarchy self, Model m, ParticleIndex id, HierarchyTraits tr=get_default_traits()) -> Hierarchy
6823  __init__(Hierarchy self, _ParticleAdaptor d, HierarchyTraits tr=get_default_traits()) -> Hierarchy
6824  """
6825  _IMP_core.Hierarchy_swiginit(self, _IMP_core.new_Hierarchy(*args))
6826 
6827  def show(self, *args):
6828  r"""show(Hierarchy self, _ostream out=std::cout)"""
6829  return _IMP_core.Hierarchy_show(self, *args)
6830 
6831  @staticmethod
6832  def setup_particle(*args):
6833  r"""
6834  setup_particle(Model m, ParticleIndex pi, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6835  setup_particle(_ParticleAdaptor d, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6836  setup_particle(Model m, ParticleIndex pi, IMP::ParticleIndexes children, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6837  setup_particle(_ParticleAdaptor d, IMP::ParticleIndexes children, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6838  setup_particle(Model m, ParticleIndex pi, IMP::ParticlesTemp children, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6839  setup_particle(_ParticleAdaptor d, IMP::ParticlesTemp children, HierarchyTraits tr=IMP::core::Hierarchy::get_default_decorator_traits()) -> Hierarchy
6840  """
6841  return _IMP_core.Hierarchy_setup_particle(*args)
6842 
6843  @staticmethod
6844  def get_is_setup(*args):
6845  r"""
6846  get_is_setup(_ParticleAdaptor p, HierarchyTraits tr=get_default_traits()) -> bool
6847  get_is_setup(Model arg1, ParticleIndex arg2, HierarchyTraits arg3=Hierarchy::get_default_traits()) -> bool
6848  """
6849  return _IMP_core.Hierarchy_get_is_setup(*args)
6850 
6851  @staticmethod
6852  def get_changed_key():
6853  r"""get_changed_key() -> TriggerKey"""
6854  return _IMP_core.Hierarchy_get_changed_key()
6855 
6856  def get_parent(self):
6857  r"""get_parent(Hierarchy self) -> Hierarchy"""
6858  return _IMP_core.Hierarchy_get_parent(self)
6859 
6860  def get_number_of_children(self):
6861  r"""get_number_of_children(Hierarchy self) -> unsigned int"""
6862  return _IMP_core.Hierarchy_get_number_of_children(self)
6863 
6864  def get_child(self, i):
6865  r"""get_child(Hierarchy self, unsigned int i) -> Hierarchy"""
6866  return _IMP_core.Hierarchy_get_child(self, i)
6867 
6868  def get_children_indexes(self):
6869  r"""get_children_indexes(Hierarchy self) -> IMP::ParticleIndexes"""
6870  return _IMP_core.Hierarchy_get_children_indexes(self)
6871 
6872  def get_children(self):
6873  r"""get_children(Hierarchy self) -> IMP::core::GenericHierarchies"""
6874  return _IMP_core.Hierarchy_get_children(self)
6875 
6876  def remove_child(self, *args):
6877  r"""
6878  remove_child(Hierarchy self, unsigned int i)
6879  remove_child(Hierarchy self, Hierarchy h)
6880  """
6881  return _IMP_core.Hierarchy_remove_child(self, *args)
6882 
6883  def clear_children(self):
6884  r"""clear_children(Hierarchy self)"""
6885  return _IMP_core.Hierarchy_clear_children(self)
6886 
6887  def add_child(self, h):
6888  r"""add_child(Hierarchy self, Hierarchy h)"""
6889  return _IMP_core.Hierarchy_add_child(self, h)
6890 
6891  def add_child_at(self, h, pos):
6892  r"""add_child_at(Hierarchy self, Hierarchy h, unsigned int pos)"""
6893  return _IMP_core.Hierarchy_add_child_at(self, h, pos)
6894 
6895  def get_child_index(self, *args):
6896  r"""
6897  get_child_index(Hierarchy self, unsigned int i) -> ParticleIndex
6898  get_child_index(Hierarchy self) -> int
6899  """
6900  return _IMP_core.Hierarchy_get_child_index(self, *args)
6901 
6902  @staticmethod
6903  def get_default_traits():
6904  r"""get_default_traits() -> HierarchyTraits"""
6905  return _IMP_core.Hierarchy_get_default_traits()
6906 
6907  def get_traits(self):
6908  r"""get_traits(Hierarchy self) -> HierarchyTraits"""
6909  return _IMP_core.Hierarchy_get_traits(self)
6910 
6911  def add_attribute(self, *args):
6912  r"""
6913  add_attribute(Hierarchy self, FloatKey k, IMP::Float v, bool opt)
6914  add_attribute(Hierarchy self, FloatKey a0, IMP::Float a1)
6915  add_attribute(Hierarchy self, IntKey a0, IMP::Int a1)
6916  add_attribute(Hierarchy self, FloatsKey a0, IMP::Floats a1)
6917  add_attribute(Hierarchy self, IntsKey a0, IMP::Ints a1)
6918  add_attribute(Hierarchy self, StringKey a0, IMP::String a1)
6919  add_attribute(Hierarchy self, ParticleIndexKey a0, Particle a1)
6920  add_attribute(Hierarchy self, ObjectKey a0, Object a1)
6921  add_attribute(Hierarchy self, SparseFloatKey a0, IMP::Float a1)
6922  add_attribute(Hierarchy self, SparseIntKey a0, IMP::Int a1)
6923  add_attribute(Hierarchy self, SparseStringKey a0, IMP::String a1)
6924  add_attribute(Hierarchy self, SparseParticleIndexKey a0, ParticleIndex a1)
6925  """
6926  return _IMP_core.Hierarchy_add_attribute(self, *args)
6927 
6928  def get_value(self, *args):
6929  r"""
6930  get_value(Hierarchy self, FloatKey a0) -> IMP::Float
6931  get_value(Hierarchy self, IntKey a0) -> IMP::Int
6932  get_value(Hierarchy self, FloatsKey a0) -> IMP::Floats
6933  get_value(Hierarchy self, IntsKey a0) -> IMP::Ints
6934  get_value(Hierarchy self, StringKey a0) -> IMP::String
6935  get_value(Hierarchy self, ParticleIndexKey a0) -> Particle
6936  get_value(Hierarchy self, ObjectKey a0) -> Object
6937  get_value(Hierarchy self, SparseFloatKey a0) -> IMP::Float
6938  get_value(Hierarchy self, SparseIntKey a0) -> IMP::Int
6939  get_value(Hierarchy self, SparseStringKey a0) -> IMP::String
6940  get_value(Hierarchy self, SparseParticleIndexKey a0) -> ParticleIndex
6941  """
6942  return _IMP_core.Hierarchy_get_value(self, *args)
6943 
6944  def set_value(self, *args):
6945  r"""
6946  set_value(Hierarchy self, FloatKey a0, IMP::Float a1)
6947  set_value(Hierarchy self, IntKey a0, IMP::Int a1)
6948  set_value(Hierarchy self, FloatsKey a0, IMP::Floats a1)
6949  set_value(Hierarchy self, IntsKey a0, IMP::Ints a1)
6950  set_value(Hierarchy self, StringKey a0, IMP::String a1)
6951  set_value(Hierarchy self, ParticleIndexKey a0, Particle a1)
6952  set_value(Hierarchy self, ObjectKey a0, Object a1)
6953  set_value(Hierarchy self, SparseFloatKey a0, IMP::Float a1)
6954  set_value(Hierarchy self, SparseIntKey a0, IMP::Int a1)
6955  set_value(Hierarchy self, SparseStringKey a0, IMP::String a1)
6956  set_value(Hierarchy self, SparseParticleIndexKey a0, ParticleIndex a1)
6957  """
6958  return _IMP_core.Hierarchy_set_value(self, *args)
6959 
6960  def remove_attribute(self, *args):
6961  r"""
6962  remove_attribute(Hierarchy self, FloatKey a0)
6963  remove_attribute(Hierarchy self, IntKey a0)
6964  remove_attribute(Hierarchy self, FloatsKey a0)
6965  remove_attribute(Hierarchy self, IntsKey a0)
6966  remove_attribute(Hierarchy self, StringKey a0)
6967  remove_attribute(Hierarchy self, ParticleIndexKey a0)
6968  remove_attribute(Hierarchy self, ObjectKey a0)
6969  remove_attribute(Hierarchy self, SparseFloatKey a0)
6970  remove_attribute(Hierarchy self, SparseIntKey a0)
6971  remove_attribute(Hierarchy self, SparseStringKey a0)
6972  remove_attribute(Hierarchy self, SparseParticleIndexKey a0)
6973  """
6974  return _IMP_core.Hierarchy_remove_attribute(self, *args)
6975 
6976  def has_attribute(self, *args):
6977  r"""
6978  has_attribute(Hierarchy self, FloatKey a0) -> bool
6979  has_attribute(Hierarchy self, IntKey a0) -> bool
6980  has_attribute(Hierarchy self, FloatsKey a0) -> bool
6981  has_attribute(Hierarchy self, IntsKey a0) -> bool
6982  has_attribute(Hierarchy self, StringKey a0) -> bool
6983  has_attribute(Hierarchy self, ParticleIndexKey a0) -> bool
6984  has_attribute(Hierarchy self, ObjectKey a0) -> bool
6985  has_attribute(Hierarchy self, SparseFloatKey a0) -> bool
6986  has_attribute(Hierarchy self, SparseIntKey a0) -> bool
6987  has_attribute(Hierarchy self, SparseStringKey a0) -> bool
6988  has_attribute(Hierarchy self, SparseParticleIndexKey a0) -> bool
6989  """
6990  return _IMP_core.Hierarchy_has_attribute(self, *args)
6991 
6992  def get_derivative(self, a0):
6993  r"""get_derivative(Hierarchy self, FloatKey a0) -> double"""
6994  return _IMP_core.Hierarchy_get_derivative(self, a0)
6995 
6996  def get_name(self):
6997  r"""get_name(Hierarchy self) -> std::string"""
6998  return _IMP_core.Hierarchy_get_name(self)
6999 
7000  def clear_caches(self):
7001  r"""clear_caches(Hierarchy self)"""
7002  return _IMP_core.Hierarchy_clear_caches(self)
7003 
7004  def set_name(self, a0):
7005  r"""set_name(Hierarchy self, std::string a0)"""
7006  return _IMP_core.Hierarchy_set_name(self, a0)
7007 
7008  def set_check_level(self, a0):
7009  r"""set_check_level(Hierarchy self, IMP::CheckLevel a0)"""
7010  return _IMP_core.Hierarchy_set_check_level(self, a0)
7011 
7012  def add_to_derivative(self, a0, a1, a2):
7013  r"""add_to_derivative(Hierarchy self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
7014  return _IMP_core.Hierarchy_add_to_derivative(self, a0, a1, a2)
7015 
7016  def set_is_optimized(self, a0, a1):
7017  r"""set_is_optimized(Hierarchy self, FloatKey a0, bool a1)"""
7018  return _IMP_core.Hierarchy_set_is_optimized(self, a0, a1)
7019 
7020  def get_is_optimized(self, a0):
7021  r"""get_is_optimized(Hierarchy self, FloatKey a0) -> bool"""
7022  return _IMP_core.Hierarchy_get_is_optimized(self, a0)
7023 
7024  def get_check_level(self):
7025  r"""get_check_level(Hierarchy self) -> IMP::CheckLevel"""
7026  return _IMP_core.Hierarchy_get_check_level(self)
7027 
7028  def __eq__(self, *args):
7029  r"""
7030  __eq__(Hierarchy self, Hierarchy o) -> bool
7031  __eq__(Hierarchy self, Particle d) -> bool
7032  """
7033  return _IMP_core.Hierarchy___eq__(self, *args)
7034 
7035  def __ne__(self, *args):
7036  r"""
7037  __ne__(Hierarchy self, Hierarchy o) -> bool
7038  __ne__(Hierarchy self, Particle d) -> bool
7039  """
7040  return _IMP_core.Hierarchy___ne__(self, *args)
7041 
7042  def __le__(self, *args):
7043  r"""
7044  __le__(Hierarchy self, Hierarchy o) -> bool
7045  __le__(Hierarchy self, Particle d) -> bool
7046  """
7047  return _IMP_core.Hierarchy___le__(self, *args)
7048 
7049  def __lt__(self, *args):
7050  r"""
7051  __lt__(Hierarchy self, Hierarchy o) -> bool
7052  __lt__(Hierarchy self, Particle d) -> bool
7053  """
7054  return _IMP_core.Hierarchy___lt__(self, *args)
7055 
7056  def __ge__(self, *args):
7057  r"""
7058  __ge__(Hierarchy self, Hierarchy o) -> bool
7059  __ge__(Hierarchy self, Particle d) -> bool
7060  """
7061  return _IMP_core.Hierarchy___ge__(self, *args)
7062 
7063  def __gt__(self, *args):
7064  r"""
7065  __gt__(Hierarchy self, Hierarchy o) -> bool
7066  __gt__(Hierarchy self, Particle d) -> bool
7067  """
7068  return _IMP_core.Hierarchy___gt__(self, *args)
7069 
7070  def __hash__(self):
7071  r"""__hash__(Hierarchy self) -> std::size_t"""
7072  return _IMP_core.Hierarchy___hash__(self)
7073 
7074  def __str__(self):
7075  r"""__str__(Hierarchy self) -> std::string"""
7076  return _IMP_core.Hierarchy___str__(self)
7077 
7078  def __repr__(self):
7079  r"""__repr__(Hierarchy self) -> std::string"""
7080  return _IMP_core.Hierarchy___repr__(self)
7081  __swig_destroy__ = _IMP_core.delete_Hierarchy
7082 
7083 # Register Hierarchy in _IMP_core:
7084 _IMP_core.Hierarchy_swigregister(Hierarchy)
7085 class HierarchyVisitor(object):
7086  r"""Proxy of C++ IMP::core::HierarchyVisitor class."""
7087 
7088  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7089  __repr__ = _swig_repr
7090 
7091  def __init__(self):
7092  r"""__init__(HierarchyVisitor self) -> HierarchyVisitor"""
7093  if self.__class__ == HierarchyVisitor:
7094  _self = None
7095  else:
7096  _self = self
7097  _IMP_core.HierarchyVisitor_swiginit(self, _IMP_core.new_HierarchyVisitor(_self, ))
7098 
7099  if self.__class__ != HierarchyVisitor:
7100  _director_objects.register(self)
7101 
7102 
7103 
7104 
7105  def __call__(self, p):
7106  r"""__call__(HierarchyVisitor self, Hierarchy p) -> bool"""
7107  return _IMP_core.HierarchyVisitor___call__(self, p)
7108  __swig_destroy__ = _IMP_core.delete_HierarchyVisitor
7109  def __disown__(self):
7110  self.this.disown()
7111  _IMP_core.disown_HierarchyVisitor(self)
7112  return weakref.proxy(self)
7113 
7114 # Register HierarchyVisitor in _IMP_core:
7115 _IMP_core.HierarchyVisitor_swigregister(HierarchyVisitor)
7116 class ModifierVisitor(HierarchyVisitor):
7117  r"""Proxy of C++ IMP::core::ModifierVisitor class."""
7118 
7119  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7120  __repr__ = _swig_repr
7121 
7122  def __init__(self, sm):
7123  r"""__init__(ModifierVisitor self, SingletonModifier sm) -> ModifierVisitor"""
7124  _IMP_core.ModifierVisitor_swiginit(self, _IMP_core.new_ModifierVisitor(sm))
7125  __swig_destroy__ = _IMP_core.delete_ModifierVisitor
7126 
7127 # Register ModifierVisitor in _IMP_core:
7128 _IMP_core.ModifierVisitor_swigregister(ModifierVisitor)
7129 class HierarchyCounter(HierarchyVisitor):
7130  r"""Proxy of C++ IMP::core::HierarchyCounter class."""
7131 
7132  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7133 
7134  def __init__(self):
7135  r"""__init__(HierarchyCounter self) -> HierarchyCounter"""
7136  _IMP_core.HierarchyCounter_swiginit(self, _IMP_core.new_HierarchyCounter())
7137 
7138  def get_count(self):
7139  r"""get_count(HierarchyCounter self) -> unsigned int"""
7140  return _IMP_core.HierarchyCounter_get_count(self)
7141 
7142  def show(self, *args):
7143  r"""show(HierarchyCounter self, _ostream out=std::cout)"""
7144  return _IMP_core.HierarchyCounter_show(self, *args)
7145 
7146  def __str__(self):
7147  r"""__str__(HierarchyCounter self) -> std::string"""
7148  return _IMP_core.HierarchyCounter___str__(self)
7149 
7150  def __repr__(self):
7151  r"""__repr__(HierarchyCounter self) -> std::string"""
7152  return _IMP_core.HierarchyCounter___repr__(self)
7153 
7154  def _get_as_binary(self):
7155  r"""_get_as_binary(HierarchyCounter self) -> PyObject *"""
7156  return _IMP_core.HierarchyCounter__get_as_binary(self)
7157 
7158  def _set_from_binary(self, p):
7159  r"""_set_from_binary(HierarchyCounter self, PyObject * p)"""
7160  return _IMP_core.HierarchyCounter__set_from_binary(self, p)
7161 
7162  def __getstate__(self):
7163  p = self._get_as_binary()
7164  if len(self.__dict__) > 1:
7165  d = self.__dict__.copy()
7166  del d['this']
7167  p = (d, p)
7168  return p
7169 
7170  def __setstate__(self, p):
7171  if not hasattr(self, 'this'):
7172  self.__init__()
7173  if isinstance(p, tuple):
7174  d, p = p
7175  self.__dict__.update(d)
7176  return self._set_from_binary(p)
7177 
7178  __swig_destroy__ = _IMP_core.delete_HierarchyCounter
7179 
7180 # Register HierarchyCounter in _IMP_core:
7181 _IMP_core.HierarchyCounter_swigregister(HierarchyCounter)
7182 
7183 def get_leaves(mhd):
7184  r"""get_leaves(Hierarchy mhd) -> IMP::core::GenericHierarchies"""
7185  return _IMP_core.get_leaves(mhd)
7186 
7187 def get_internal(mhd):
7188  r"""get_internal(Hierarchy mhd) -> IMP::core::GenericHierarchies"""
7189  return _IMP_core.get_internal(mhd)
7190 
7191 def get_all_descendants(mhd):
7192  r"""get_all_descendants(Hierarchy mhd) -> IMP::core::GenericHierarchies"""
7193  return _IMP_core.get_all_descendants(mhd)
7194 
7195 def get_root(h):
7196  r"""get_root(Hierarchy h) -> Hierarchy"""
7197  return _IMP_core.get_root(h)
7198 
7199 def visit_breadth_first(d, f):
7200  r"""visit_breadth_first(Hierarchy d, HierarchyVisitor f)"""
7201  return _IMP_core.visit_breadth_first(d, f)
7202 
7203 def visit_depth_first(d, f):
7204  r"""visit_depth_first(Hierarchy d, HierarchyVisitor f)"""
7205  return _IMP_core.visit_depth_first(d, f)
7206 class LeavesRefiner(IMP.Refiner):
7207  r"""Proxy of C++ IMP::core::LeavesRefiner class."""
7208 
7209  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7210 
7211  def __init__(self, tr):
7212  r"""__init__(LeavesRefiner self, HierarchyTraits tr) -> LeavesRefiner"""
7213  _IMP_core.LeavesRefiner_swiginit(self, _IMP_core.new_LeavesRefiner(tr))
7214 
7215  def do_get_inputs(self, m, pis):
7216  r"""do_get_inputs(LeavesRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7217  return _IMP_core.LeavesRefiner_do_get_inputs(self, m, pis)
7218 
7219  def get_version_info(self):
7220  r"""get_version_info(LeavesRefiner self) -> VersionInfo"""
7221  return _IMP_core.LeavesRefiner_get_version_info(self)
7222  __swig_destroy__ = _IMP_core.delete_LeavesRefiner
7223 
7224  def __str__(self):
7225  r"""__str__(LeavesRefiner self) -> std::string"""
7226  return _IMP_core.LeavesRefiner___str__(self)
7227 
7228  def __repr__(self):
7229  r"""__repr__(LeavesRefiner self) -> std::string"""
7230  return _IMP_core.LeavesRefiner___repr__(self)
7231 
7232  @staticmethod
7233  def get_from(o):
7234  return _object_cast_to_LeavesRefiner(o)
7235 
7236 
7237 # Register LeavesRefiner in _IMP_core:
7238 _IMP_core.LeavesRefiner_swigregister(LeavesRefiner)
7239 class Linear(IMP.UnaryFunction):
7240  r"""Proxy of C++ IMP::core::Linear 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, *args):
7245  r"""
7246  __init__(Linear self, double offset, double slope) -> Linear
7247  __init__(Linear self) -> Linear
7248  """
7249  _IMP_core.Linear_swiginit(self, _IMP_core.new_Linear(*args))
7250 
7251  def set_slope(self, f):
7252  r"""set_slope(Linear self, double f)"""
7253  return _IMP_core.Linear_set_slope(self, f)
7254 
7255  def get_slope(self):
7256  r"""get_slope(Linear self) -> double"""
7257  return _IMP_core.Linear_get_slope(self)
7258 
7259  def set_offset(self, f):
7260  r"""set_offset(Linear self, double f)"""
7261  return _IMP_core.Linear_set_offset(self, f)
7262 
7263  def get_offset(self):
7264  r"""get_offset(Linear self) -> double"""
7265  return _IMP_core.Linear_get_offset(self)
7266 
7267  def get_version_info(self):
7268  r"""get_version_info(Linear self) -> VersionInfo"""
7269  return _IMP_core.Linear_get_version_info(self)
7270  __swig_destroy__ = _IMP_core.delete_Linear
7271 
7272  def __str__(self):
7273  r"""__str__(Linear self) -> std::string"""
7274  return _IMP_core.Linear___str__(self)
7275 
7276  def __repr__(self):
7277  r"""__repr__(Linear self) -> std::string"""
7278  return _IMP_core.Linear___repr__(self)
7279 
7280  @staticmethod
7281  def get_from(o):
7282  return _object_cast_to_Linear(o)
7283 
7284 
7285  def _get_as_binary(self):
7286  r"""_get_as_binary(Linear self) -> PyObject *"""
7287  return _IMP_core.Linear__get_as_binary(self)
7288 
7289  def _set_from_binary(self, p):
7290  r"""_set_from_binary(Linear self, PyObject * p)"""
7291  return _IMP_core.Linear__set_from_binary(self, p)
7292 
7293  def __getstate__(self):
7294  p = self._get_as_binary()
7295  if len(self.__dict__) > 1:
7296  d = self.__dict__.copy()
7297  del d['this']
7298  p = (d, p)
7299  return p
7300 
7301  def __setstate__(self, p):
7302  if not hasattr(self, 'this'):
7303  self.__init__()
7304  if isinstance(p, tuple):
7305  d, p = p
7306  self.__dict__.update(d)
7307  return self._set_from_binary(p)
7308 
7309 
7310  def _get_jax(self):
7311  import functools
7312  def score(val, slope, offset):
7313  return (val - offset) * slope
7314  return functools.partial(score, slope=self.get_slope(),
7315  offset=self.get_offset())
7316 
7317 
7318 # Register Linear in _IMP_core:
7319 _IMP_core.Linear_swigregister(Linear)
7320 class LogNormalMover(MonteCarloMover):
7321  r"""Proxy of C++ IMP::core::LogNormalMover class."""
7322 
7323  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7324 
7325  def __init__(self, *args):
7326  r"""
7327  __init__(LogNormalMover self, Model m, ParticleIndex pi, IMP::FloatKeys const & vars, double stddev) -> LogNormalMover
7328  __init__(LogNormalMover self, Model m, ParticleIndex pi, double stddev) -> LogNormalMover
7329  __init__(LogNormalMover self, IMP::ParticlesTemp const & sc, IMP::FloatKeys const & vars, IMP::Float sigma) -> LogNormalMover
7330  __init__(LogNormalMover self, IMP::ParticlesTemp const & sc, IMP::Float radius) -> LogNormalMover
7331  __init__(LogNormalMover self) -> LogNormalMover
7332  """
7333  _IMP_core.LogNormalMover_swiginit(self, _IMP_core.new_LogNormalMover(*args))
7334 
7335  def set_sigma(self, sigma):
7336  r"""set_sigma(LogNormalMover self, IMP::Float sigma)"""
7337  return _IMP_core.LogNormalMover_set_sigma(self, sigma)
7338 
7339  def get_sigma(self):
7340  r"""get_sigma(LogNormalMover self) -> IMP::Float"""
7341  return _IMP_core.LogNormalMover_get_sigma(self)
7342 
7343  def get_version_info(self):
7344  r"""get_version_info(LogNormalMover self) -> VersionInfo"""
7345  return _IMP_core.LogNormalMover_get_version_info(self)
7346  __swig_destroy__ = _IMP_core.delete_LogNormalMover
7347 
7348  def __str__(self):
7349  r"""__str__(LogNormalMover self) -> std::string"""
7350  return _IMP_core.LogNormalMover___str__(self)
7351 
7352  def __repr__(self):
7353  r"""__repr__(LogNormalMover self) -> std::string"""
7354  return _IMP_core.LogNormalMover___repr__(self)
7355 
7356  @staticmethod
7357  def get_from(o):
7358  return _object_cast_to_LogNormalMover(o)
7359 
7360 
7361  def _get_as_binary(self):
7362  r"""_get_as_binary(LogNormalMover self) -> PyObject *"""
7363  return _IMP_core.LogNormalMover__get_as_binary(self)
7364 
7365  def _set_from_binary(self, p):
7366  r"""_set_from_binary(LogNormalMover self, PyObject * p)"""
7367  return _IMP_core.LogNormalMover__set_from_binary(self, p)
7368 
7369  def __getstate__(self):
7370  p = self._get_as_binary()
7371  if len(self.__dict__) > 1:
7372  d = self.__dict__.copy()
7373  del d['this']
7374  p = (d, p)
7375  return p
7376 
7377  def __setstate__(self, p):
7378  if not hasattr(self, 'this'):
7379  self.__init__()
7380  if isinstance(p, tuple):
7381  d, p = p
7382  self.__dict__.update(d)
7383  return self._set_from_binary(p)
7384 
7385 
7386 # Register LogNormalMover in _IMP_core:
7387 _IMP_core.LogNormalMover_swigregister(LogNormalMover)
7388 IMP_CORE_HAS_MONTE_CARLO_MOVER = _IMP_core.IMP_CORE_HAS_MONTE_CARLO_MOVER
7389 
7390 class MonteCarlo(IMP.Optimizer):
7391  r"""Proxy of C++ IMP::core::MonteCarlo class."""
7392 
7393  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7394 
7395  def __init__(self, m):
7396  r"""__init__(MonteCarlo self, Model m) -> MonteCarlo"""
7397  _IMP_core.MonteCarlo_swiginit(self, _IMP_core.new_MonteCarlo(m))
7398 
7399  def get_version_info(self):
7400  r"""get_version_info(MonteCarlo self) -> VersionInfo"""
7401  return _IMP_core.MonteCarlo_get_version_info(self)
7402  __swig_destroy__ = _IMP_core.delete_MonteCarlo
7403 
7404  def set_return_best(self, tf):
7405  r"""set_return_best(MonteCarlo self, bool tf)"""
7406  return _IMP_core.MonteCarlo_set_return_best(self, tf)
7407 
7408  def get_return_best(self):
7409  r"""get_return_best(MonteCarlo self) -> bool"""
7410  return _IMP_core.MonteCarlo_get_return_best(self)
7411 
7412  def set_score_moved(self, mv):
7413  r"""set_score_moved(MonteCarlo self, bool mv)"""
7414  return _IMP_core.MonteCarlo_set_score_moved(self, mv)
7415 
7416  def set_kt(self, t):
7417  r"""set_kt(MonteCarlo self, IMP::Float t)"""
7418  return _IMP_core.MonteCarlo_set_kt(self, t)
7419 
7420  def get_kt(self):
7421  r"""get_kt(MonteCarlo self) -> IMP::Float"""
7422  return _IMP_core.MonteCarlo_get_kt(self)
7423 
7424  def get_last_accepted_energy(self):
7425  r"""get_last_accepted_energy(MonteCarlo self) -> double"""
7426  return _IMP_core.MonteCarlo_get_last_accepted_energy(self)
7427 
7428  def set_last_accepted_energy(self, energy):
7429  r"""set_last_accepted_energy(MonteCarlo self, double energy)"""
7430  return _IMP_core.MonteCarlo_set_last_accepted_energy(self, energy)
7431 
7432  def get_best_accepted_energy(self):
7433  r"""get_best_accepted_energy(MonteCarlo self) -> double"""
7434  return _IMP_core.MonteCarlo_get_best_accepted_energy(self)
7435 
7436  def set_best_accepted_energy(self, energy):
7437  r"""set_best_accepted_energy(MonteCarlo self, double energy)"""
7438  return _IMP_core.MonteCarlo_set_best_accepted_energy(self, energy)
7439 
7440  def get_number_of_downward_steps(self):
7441  r"""get_number_of_downward_steps(MonteCarlo self) -> unsigned int"""
7442  return _IMP_core.MonteCarlo_get_number_of_downward_steps(self)
7443 
7444  def get_number_of_upward_steps(self):
7445  r"""get_number_of_upward_steps(MonteCarlo self) -> unsigned int"""
7446  return _IMP_core.MonteCarlo_get_number_of_upward_steps(self)
7447 
7448  def get_number_of_proposed_steps(self):
7449  r"""get_number_of_proposed_steps(MonteCarlo self) -> unsigned int"""
7450  return _IMP_core.MonteCarlo_get_number_of_proposed_steps(self)
7451 
7452  def get_number_of_accepted_steps(self):
7453  r"""get_number_of_accepted_steps(MonteCarlo self) -> unsigned int"""
7454  return _IMP_core.MonteCarlo_get_number_of_accepted_steps(self)
7455 
7456  def set_number_of_downward_steps(self, nsteps):
7457  r"""set_number_of_downward_steps(MonteCarlo self, unsigned int nsteps)"""
7458  return _IMP_core.MonteCarlo_set_number_of_downward_steps(self, nsteps)
7459 
7460  def set_number_of_upward_steps(self, nsteps):
7461  r"""set_number_of_upward_steps(MonteCarlo self, unsigned int nsteps)"""
7462  return _IMP_core.MonteCarlo_set_number_of_upward_steps(self, nsteps)
7463 
7464  def set_number_of_rejected_steps(self, nsteps):
7465  r"""set_number_of_rejected_steps(MonteCarlo self, unsigned int nsteps)"""
7466  return _IMP_core.MonteCarlo_set_number_of_rejected_steps(self, nsteps)
7467 
7468  def reset_statistics(self):
7469  r"""reset_statistics(MonteCarlo self)"""
7470  return _IMP_core.MonteCarlo_reset_statistics(self)
7471 
7472  def set_score_threshold(self, s):
7473  r"""set_score_threshold(MonteCarlo self, double s)"""
7474  return _IMP_core.MonteCarlo_set_score_threshold(self, s)
7475 
7476  def get_score_threshold(self):
7477  r"""get_score_threshold(MonteCarlo self) -> double"""
7478  return _IMP_core.MonteCarlo_get_score_threshold(self)
7479 
7480  def set_maximum_difference(self, d):
7481  r"""set_maximum_difference(MonteCarlo self, double d)"""
7482  return _IMP_core.MonteCarlo_set_maximum_difference(self, d)
7483 
7484  def get_maximum_difference(self):
7485  r"""get_maximum_difference(MonteCarlo self) -> double"""
7486  return _IMP_core.MonteCarlo_get_maximum_difference(self)
7487  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)
7488  def __set_movers(self, obj): IMP._list_util.set_varlist(self.movers, obj)
7489  def __del_movers(self): IMP._list_util.del_varlist(self.movers)
7490  movers = property(__get_movers, __set_movers, __del_movers, doc="List of ##ucnames")
7491 
7492  def remove_mover(self, d):
7493  r"""remove_mover(MonteCarlo self, MonteCarloMover d)"""
7494  return _IMP_core.MonteCarlo_remove_mover(self, d)
7495 
7496  def _python_index_mover(self, d, start, stop):
7497  r"""_python_index_mover(MonteCarlo self, MonteCarloMover d, unsigned int start, unsigned int stop) -> unsigned int"""
7498  return _IMP_core.MonteCarlo__python_index_mover(self, d, start, stop)
7499 
7500  def remove_movers(self, d):
7501  r"""remove_movers(MonteCarlo self, IMP::core::MonteCarloMovers const & d)"""
7502  return _IMP_core.MonteCarlo_remove_movers(self, d)
7503 
7504  def set_movers(self, ps):
7505  r"""set_movers(MonteCarlo self, IMP::core::MonteCarloMovers const & ps)"""
7506  return _IMP_core.MonteCarlo_set_movers(self, ps)
7507 
7508  def set_movers_order(self, objs):
7509  r"""set_movers_order(MonteCarlo self, IMP::core::MonteCarloMovers const & objs)"""
7510  return _IMP_core.MonteCarlo_set_movers_order(self, objs)
7511 
7512  def add_mover(self, obj):
7513  r"""add_mover(MonteCarlo self, MonteCarloMover obj) -> unsigned int"""
7514  return _IMP_core.MonteCarlo_add_mover(self, obj)
7515 
7516  def add_movers(self, objs):
7517  r"""add_movers(MonteCarlo self, IMP::core::MonteCarloMovers const & objs)"""
7518  return _IMP_core.MonteCarlo_add_movers(self, objs)
7519 
7520  def clear_movers(self):
7521  r"""clear_movers(MonteCarlo self)"""
7522  return _IMP_core.MonteCarlo_clear_movers(self)
7523 
7524  def get_number_of_movers(self):
7525  r"""get_number_of_movers(MonteCarlo self) -> unsigned int"""
7526  return _IMP_core.MonteCarlo_get_number_of_movers(self)
7527 
7528  def get_has_movers(self):
7529  r"""get_has_movers(MonteCarlo self) -> bool"""
7530  return _IMP_core.MonteCarlo_get_has_movers(self)
7531 
7532  def get_mover(self, i):
7533  r"""get_mover(MonteCarlo self, unsigned int i) -> MonteCarloMover"""
7534  return _IMP_core.MonteCarlo_get_mover(self, i)
7535 
7536  def get_movers(self):
7537  r"""get_movers(MonteCarlo self) -> IMP::core::MonteCarloMovers"""
7538  return _IMP_core.MonteCarlo_get_movers(self)
7539 
7540  def erase_mover(self, i):
7541  r"""erase_mover(MonteCarlo self, unsigned int i)"""
7542  return _IMP_core.MonteCarlo_erase_mover(self, i)
7543 
7544  def reserve_movers(self, sz):
7545  r"""reserve_movers(MonteCarlo self, unsigned int sz)"""
7546  return _IMP_core.MonteCarlo_reserve_movers(self, sz)
7547 
7548  def __str__(self):
7549  r"""__str__(MonteCarlo self) -> std::string"""
7550  return _IMP_core.MonteCarlo___str__(self)
7551 
7552  def __repr__(self):
7553  r"""__repr__(MonteCarlo self) -> std::string"""
7554  return _IMP_core.MonteCarlo___repr__(self)
7555 
7556  @staticmethod
7557  def get_from(o):
7558  return _object_cast_to_MonteCarlo(o)
7559 
7560 
7561  def _get_jax(self):
7562  from IMP.core._jax_util import _MCJAXInfo
7563  return _MCJAXInfo(self)
7564 
7565  def _optimize_jax(self, max_steps):
7566  import IMP.core._jax_util
7567  return IMP.core._jax_util._mc_optimize(self, max_steps)
7568 
7569 
7570 # Register MonteCarlo in _IMP_core:
7571 _IMP_core.MonteCarlo_swigregister(MonteCarlo)
7572 class MonteCarloWithLocalOptimization(MonteCarlo):
7573  r"""Proxy of C++ IMP::core::MonteCarloWithLocalOptimization class."""
7574 
7575  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7576 
7577  def __init__(self, opt, steps):
7578  r"""__init__(MonteCarloWithLocalOptimization self, Optimizer opt, unsigned int steps) -> MonteCarloWithLocalOptimization"""
7579  _IMP_core.MonteCarloWithLocalOptimization_swiginit(self, _IMP_core.new_MonteCarloWithLocalOptimization(opt, steps))
7580 
7581  def get_number_of_steps(self):
7582  r"""get_number_of_steps(MonteCarloWithLocalOptimization self) -> unsigned int"""
7583  return _IMP_core.MonteCarloWithLocalOptimization_get_number_of_steps(self)
7584 
7585  def get_local_optimizer(self):
7586  r"""get_local_optimizer(MonteCarloWithLocalOptimization self) -> Optimizer"""
7587  return _IMP_core.MonteCarloWithLocalOptimization_get_local_optimizer(self)
7588  __swig_destroy__ = _IMP_core.delete_MonteCarloWithLocalOptimization
7589 
7590  def __str__(self):
7591  r"""__str__(MonteCarloWithLocalOptimization self) -> std::string"""
7592  return _IMP_core.MonteCarloWithLocalOptimization___str__(self)
7593 
7594  def __repr__(self):
7595  r"""__repr__(MonteCarloWithLocalOptimization self) -> std::string"""
7596  return _IMP_core.MonteCarloWithLocalOptimization___repr__(self)
7597 
7598  @staticmethod
7599  def get_from(o):
7600  return _object_cast_to_MonteCarloWithLocalOptimization(o)
7601 
7602 
7603 # Register MonteCarloWithLocalOptimization in _IMP_core:
7604 _IMP_core.MonteCarloWithLocalOptimization_swigregister(MonteCarloWithLocalOptimization)
7605 class MonteCarloWithBasinHopping(MonteCarloWithLocalOptimization):
7606  r"""Proxy of C++ IMP::core::MonteCarloWithBasinHopping class."""
7607 
7608  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7609 
7610  def __init__(self, opt, ns):
7611  r"""__init__(MonteCarloWithBasinHopping self, Optimizer opt, unsigned int ns) -> MonteCarloWithBasinHopping"""
7612  _IMP_core.MonteCarloWithBasinHopping_swiginit(self, _IMP_core.new_MonteCarloWithBasinHopping(opt, ns))
7613  __swig_destroy__ = _IMP_core.delete_MonteCarloWithBasinHopping
7614 
7615  def __str__(self):
7616  r"""__str__(MonteCarloWithBasinHopping self) -> std::string"""
7617  return _IMP_core.MonteCarloWithBasinHopping___str__(self)
7618 
7619  def __repr__(self):
7620  r"""__repr__(MonteCarloWithBasinHopping self) -> std::string"""
7621  return _IMP_core.MonteCarloWithBasinHopping___repr__(self)
7622 
7623  @staticmethod
7624  def get_from(o):
7625  return _object_cast_to_MonteCarloWithBasinHopping(o)
7626 
7627 
7628 # Register MonteCarloWithBasinHopping in _IMP_core:
7629 _IMP_core.MonteCarloWithBasinHopping_swigregister(MonteCarloWithBasinHopping)
7630 class NeighborsTable(IMP.ScoreState):
7631  r"""Proxy of C++ IMP::core::NeighborsTable class."""
7632 
7633  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7634 
7635  def __init__(self, *args):
7636  r"""__init__(NeighborsTable self, PairContainer input, std::string name="CloseNeighborsTable%1%") -> NeighborsTable"""
7637  _IMP_core.NeighborsTable_swiginit(self, _IMP_core.new_NeighborsTable(*args))
7638 
7639  def get_neighbors(self, pi):
7640  r"""get_neighbors(NeighborsTable self, ParticleIndex pi) -> IMP::ParticleIndexes const &"""
7641  return _IMP_core.NeighborsTable_get_neighbors(self, pi)
7642 
7643  def get_version_info(self):
7644  r"""get_version_info(NeighborsTable self) -> VersionInfo"""
7645  return _IMP_core.NeighborsTable_get_version_info(self)
7646  __swig_destroy__ = _IMP_core.delete_NeighborsTable
7647 
7648  def __str__(self):
7649  r"""__str__(NeighborsTable self) -> std::string"""
7650  return _IMP_core.NeighborsTable___str__(self)
7651 
7652  def __repr__(self):
7653  r"""__repr__(NeighborsTable self) -> std::string"""
7654  return _IMP_core.NeighborsTable___repr__(self)
7655 
7656  @staticmethod
7657  def get_from(o):
7658  return _object_cast_to_NeighborsTable(o)
7659 
7660 
7661 # Register NeighborsTable in _IMP_core:
7662 _IMP_core.NeighborsTable_swigregister(NeighborsTable)
7663 class NormalMover(MonteCarloMover):
7664  r"""Proxy of C++ IMP::core::NormalMover class."""
7665 
7666  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7667 
7668  def __init__(self, *args):
7669  r"""
7670  __init__(NormalMover self, Model m, ParticleIndex pi, IMP::FloatKeys const & vars, double stddev) -> NormalMover
7671  __init__(NormalMover self, Model m, ParticleIndex pi, double stddev) -> NormalMover
7672  __init__(NormalMover self, IMP::ParticlesTemp const & sc, IMP::FloatKeys const & vars, IMP::Float sigma) -> NormalMover
7673  __init__(NormalMover self, IMP::ParticlesTemp const & sc, IMP::Float radius) -> NormalMover
7674  __init__(NormalMover self) -> NormalMover
7675  """
7676  _IMP_core.NormalMover_swiginit(self, _IMP_core.new_NormalMover(*args))
7677 
7678  def set_sigma(self, sigma):
7679  r"""set_sigma(NormalMover self, IMP::Float sigma)"""
7680  return _IMP_core.NormalMover_set_sigma(self, sigma)
7681 
7682  def get_sigma(self):
7683  r"""get_sigma(NormalMover self) -> IMP::Float"""
7684  return _IMP_core.NormalMover_get_sigma(self)
7685 
7686  def get_version_info(self):
7687  r"""get_version_info(NormalMover self) -> VersionInfo"""
7688  return _IMP_core.NormalMover_get_version_info(self)
7689  __swig_destroy__ = _IMP_core.delete_NormalMover
7690 
7691  def __str__(self):
7692  r"""__str__(NormalMover self) -> std::string"""
7693  return _IMP_core.NormalMover___str__(self)
7694 
7695  def __repr__(self):
7696  r"""__repr__(NormalMover self) -> std::string"""
7697  return _IMP_core.NormalMover___repr__(self)
7698 
7699  @staticmethod
7700  def get_from(o):
7701  return _object_cast_to_NormalMover(o)
7702 
7703 
7704  def _get_as_binary(self):
7705  r"""_get_as_binary(NormalMover self) -> PyObject *"""
7706  return _IMP_core.NormalMover__get_as_binary(self)
7707 
7708  def _set_from_binary(self, p):
7709  r"""_set_from_binary(NormalMover self, PyObject * p)"""
7710  return _IMP_core.NormalMover__set_from_binary(self, p)
7711 
7712  def __getstate__(self):
7713  p = self._get_as_binary()
7714  if len(self.__dict__) > 1:
7715  d = self.__dict__.copy()
7716  del d['this']
7717  p = (d, p)
7718  return p
7719 
7720  def __setstate__(self, p):
7721  if not hasattr(self, 'this'):
7722  self.__init__()
7723  if isinstance(p, tuple):
7724  d, p = p
7725  self.__dict__.update(d)
7726  return self._set_from_binary(p)
7727 
7728 
7729 # Register NormalMover in _IMP_core:
7730 _IMP_core.NormalMover_swigregister(NormalMover)
7731 class OpenCubicSpline(_OpenCubicSplineBase):
7732  r"""Proxy of C++ IMP::core::OpenCubicSpline class."""
7733 
7734  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7735 
7736  def __init__(self, values, minrange, spacing, extend=False):
7737  r"""__init__(OpenCubicSpline self, IMP::Floats const & values, IMP::Float minrange, IMP::Float spacing, bool extend=False) -> OpenCubicSpline"""
7738  _IMP_core.OpenCubicSpline_swiginit(self, _IMP_core.new_OpenCubicSpline(values, minrange, spacing, extend))
7739 
7740  def __str__(self):
7741  r"""__str__(OpenCubicSpline self) -> std::string"""
7742  return _IMP_core.OpenCubicSpline___str__(self)
7743 
7744  def __repr__(self):
7745  r"""__repr__(OpenCubicSpline self) -> std::string"""
7746  return _IMP_core.OpenCubicSpline___repr__(self)
7747 
7748  @staticmethod
7749  def get_from(o):
7750  return _object_cast_to_OpenCubicSpline(o)
7751 
7752  __swig_destroy__ = _IMP_core.delete_OpenCubicSpline
7753 
7754 # Register OpenCubicSpline in _IMP_core:
7755 _IMP_core.OpenCubicSpline_swigregister(OpenCubicSpline)
7756 class QuadraticClosePairsFinder(ClosePairsFinder):
7757  r"""Proxy of C++ IMP::core::QuadraticClosePairsFinder class."""
7758 
7759  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7760 
7761  def __init__(self):
7762  r"""__init__(QuadraticClosePairsFinder self) -> QuadraticClosePairsFinder"""
7763  _IMP_core.QuadraticClosePairsFinder_swiginit(self, _IMP_core.new_QuadraticClosePairsFinder())
7764 
7765  def get_are_close_and_filtered(self, *args):
7766  r"""
7767  get_are_close_and_filtered(QuadraticClosePairsFinder self, Particle a, Particle b) -> bool
7768  get_are_close_and_filtered(QuadraticClosePairsFinder self, Model m, ParticleIndex a, ParticleIndex b) -> bool
7769  """
7770  return _IMP_core.QuadraticClosePairsFinder_get_are_close_and_filtered(self, *args)
7771 
7772  def get_close_pairs(self, *args):
7773  r"""
7774  get_close_pairs(QuadraticClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
7775  get_close_pairs(QuadraticClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bas, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
7776  get_close_pairs(QuadraticClosePairsFinder self, Model m, IMP::ParticleIndexes const & pc) -> IMP::ParticleIndexPairs
7777  get_close_pairs(QuadraticClosePairsFinder self, Model m, IMP::ParticleIndexes const & pca, IMP::ParticleIndexes const & pcb) -> IMP::ParticleIndexPairs
7778  """
7779  return _IMP_core.QuadraticClosePairsFinder_get_close_pairs(self, *args)
7780 
7781  def do_get_inputs(self, m, pis):
7782  r"""do_get_inputs(QuadraticClosePairsFinder self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7783  return _IMP_core.QuadraticClosePairsFinder_do_get_inputs(self, m, pis)
7784 
7785  def get_version_info(self):
7786  r"""get_version_info(QuadraticClosePairsFinder self) -> VersionInfo"""
7787  return _IMP_core.QuadraticClosePairsFinder_get_version_info(self)
7788  __swig_destroy__ = _IMP_core.delete_QuadraticClosePairsFinder
7789 
7790  def __str__(self):
7791  r"""__str__(QuadraticClosePairsFinder self) -> std::string"""
7792  return _IMP_core.QuadraticClosePairsFinder___str__(self)
7793 
7794  def __repr__(self):
7795  r"""__repr__(QuadraticClosePairsFinder self) -> std::string"""
7796  return _IMP_core.QuadraticClosePairsFinder___repr__(self)
7797 
7798  @staticmethod
7799  def get_from(o):
7800  return _object_cast_to_QuadraticClosePairsFinder(o)
7801 
7802 
7803 # Register QuadraticClosePairsFinder in _IMP_core:
7804 _IMP_core.QuadraticClosePairsFinder_swigregister(QuadraticClosePairsFinder)
7805 class RefinedPairsPairScore(IMP.PairScore):
7806  r"""Proxy of C++ IMP::core::RefinedPairsPairScore class."""
7807 
7808  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7809 
7810  def __init__(self, r, f):
7811  r"""__init__(RefinedPairsPairScore self, Refiner r, PairScore f) -> RefinedPairsPairScore"""
7812  _IMP_core.RefinedPairsPairScore_swiginit(self, _IMP_core.new_RefinedPairsPairScore(r, f))
7813 
7814  def do_get_inputs(self, m, pis):
7815  r"""do_get_inputs(RefinedPairsPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7816  return _IMP_core.RefinedPairsPairScore_do_get_inputs(self, m, pis)
7817 
7818  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
7819  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"""
7820  return _IMP_core.RefinedPairsPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
7821 
7822  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
7823  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"""
7824  return _IMP_core.RefinedPairsPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
7825 
7826  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
7827  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"""
7828  return _IMP_core.RefinedPairsPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
7829 
7830  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
7831  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"""
7832  return _IMP_core.RefinedPairsPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
7833 
7834  def get_version_info(self):
7835  r"""get_version_info(RefinedPairsPairScore self) -> VersionInfo"""
7836  return _IMP_core.RefinedPairsPairScore_get_version_info(self)
7837  __swig_destroy__ = _IMP_core.delete_RefinedPairsPairScore
7838 
7839  def __str__(self):
7840  r"""__str__(RefinedPairsPairScore self) -> std::string"""
7841  return _IMP_core.RefinedPairsPairScore___str__(self)
7842 
7843  def __repr__(self):
7844  r"""__repr__(RefinedPairsPairScore self) -> std::string"""
7845  return _IMP_core.RefinedPairsPairScore___repr__(self)
7846 
7847  @staticmethod
7848  def get_from(o):
7849  return _object_cast_to_RefinedPairsPairScore(o)
7850 
7851 
7852 # Register RefinedPairsPairScore in _IMP_core:
7853 _IMP_core.RefinedPairsPairScore_swigregister(RefinedPairsPairScore)
7854 class RigidBody(XYZ):
7855  r"""Proxy of C++ IMP::core::RigidBody class."""
7856 
7857  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7858 
7859  def get_rigid_members(self):
7860  r"""get_rigid_members(RigidBody self) -> IMP::core::RigidMembers"""
7861  return _IMP_core.RigidBody_get_rigid_members(self)
7862 
7863  @staticmethod
7864  def get_rotation_keys():
7865  r"""get_rotation_keys() -> IMP::FloatKeys"""
7866  return _IMP_core.RigidBody_get_rotation_keys()
7867 
7868  def get_member_particle_indexes(self):
7869  r"""get_member_particle_indexes(RigidBody self) -> IMP::ParticleIndexes const &"""
7870  return _IMP_core.RigidBody_get_member_particle_indexes(self)
7871 
7872  def get_body_member_particle_indexes(self):
7873  r"""get_body_member_particle_indexes(RigidBody self) -> IMP::ParticleIndexes const &"""
7874  return _IMP_core.RigidBody_get_body_member_particle_indexes(self)
7875 
7876  def get_member_indexes(self):
7877  r"""get_member_indexes(RigidBody self) -> IMP::ParticleIndexes"""
7878  return _IMP_core.RigidBody_get_member_indexes(self)
7879 
7880  def show(self, *args):
7881  r"""show(RigidBody self, _ostream out=std::cout)"""
7882  return _IMP_core.RigidBody_show(self, *args)
7883 
7884  @staticmethod
7885  def setup_particle(*args):
7886  r"""
7887  setup_particle(Model m, ParticleIndex pi, _ParticleIndexesAdaptor ps) -> RigidBody
7888  setup_particle(_ParticleAdaptor pa, _ParticleIndexesAdaptor ps) -> RigidBody
7889  setup_particle(Model m, ParticleIndex pi, ReferenceFrame3D rf) -> RigidBody
7890  setup_particle(_ParticleAdaptor pa, ReferenceFrame3D rf) -> RigidBody
7891  """
7892  return _IMP_core.RigidBody_setup_particle(*args)
7893 
7894  @staticmethod
7895  def teardown_particle(rb):
7896  r"""teardown_particle(RigidBody rb)"""
7897  return _IMP_core.RigidBody_teardown_particle(rb)
7898 
7899  def __init__(self, *args):
7900  r"""
7901  __init__(RigidBody self) -> RigidBody
7902  __init__(RigidBody self, Model m, ParticleIndex id) -> RigidBody
7903  __init__(RigidBody self, _ParticleAdaptor d) -> RigidBody
7904  __init__(RigidBody self, RigidBody arg2) -> RigidBody
7905  """
7906  _IMP_core.RigidBody_swiginit(self, _IMP_core.new_RigidBody(*args))
7907  __swig_destroy__ = _IMP_core.delete_RigidBody
7908 
7909  @staticmethod
7910  def get_is_setup(*args):
7911  r"""
7912  get_is_setup(_ParticleAdaptor p) -> bool
7913  get_is_setup(Model m, ParticleIndex pi) -> bool
7914  """
7915  return _IMP_core.RigidBody_get_is_setup(*args)
7916 
7917  def get_coordinates(self):
7918  r"""get_coordinates(RigidBody self) -> Vector3D"""
7919  return _IMP_core.RigidBody_get_coordinates(self)
7920 
7921  def get_rotation(self):
7922  r"""get_rotation(RigidBody self) -> Rotation3D"""
7923  return _IMP_core.RigidBody_get_rotation(self)
7924 
7925  def get_reference_frame(self):
7926  r"""get_reference_frame(RigidBody self) -> ReferenceFrame3D"""
7927  return _IMP_core.RigidBody_get_reference_frame(self)
7928 
7929  def set_reference_frame(self, tr):
7930  r"""set_reference_frame(RigidBody self, ReferenceFrame3D tr)"""
7931  return _IMP_core.RigidBody_set_reference_frame(self, tr)
7932 
7933  def set_reference_frame_lazy(self, tr):
7934  r"""set_reference_frame_lazy(RigidBody self, ReferenceFrame3D tr)"""
7935  return _IMP_core.RigidBody_set_reference_frame_lazy(self, tr)
7936 
7937  def set_reference_frame_from_members(self, members):
7938  r"""set_reference_frame_from_members(RigidBody self, IMP::ParticleIndexes const & members)"""
7939  return _IMP_core.RigidBody_set_reference_frame_from_members(self, members)
7940 
7941  def pull_back_members_adjoints(self, da):
7942  r"""pull_back_members_adjoints(RigidBody self, DerivativeAccumulator da)"""
7943  return _IMP_core.RigidBody_pull_back_members_adjoints(self, da)
7944 
7945  def pull_back_member_adjoints(self, pi, da):
7946  r"""pull_back_member_adjoints(RigidBody self, ParticleIndex pi, DerivativeAccumulator da)"""
7947  return _IMP_core.RigidBody_pull_back_member_adjoints(self, pi, da)
7948 
7949  def pull_back_body_member_adjoints(self, pi, da):
7950  r"""pull_back_body_member_adjoints(RigidBody self, ParticleIndex pi, DerivativeAccumulator da)"""
7951  return _IMP_core.RigidBody_pull_back_body_member_adjoints(self, pi, da)
7952 
7953  def add_to_derivatives(self, *args):
7954  r"""
7955  add_to_derivatives(RigidBody self, Vector3D local_derivative, Vector3D local_location, DerivativeAccumulator da)
7956  add_to_derivatives(RigidBody self, Vector3D local_derivative, Vector3D global_derivative, Vector3D local_location, Rotation3D rot_local_to_global, DerivativeAccumulator da)
7957  """
7958  return _IMP_core.RigidBody_add_to_derivatives(self, *args)
7959 
7960  def add_to_rotational_derivatives(self, *args):
7961  r"""
7962  add_to_rotational_derivatives(RigidBody self, Vector4D other_qderiv, Rotation3D rot_other_to_local, Rotation3D rot_local_to_global, DerivativeAccumulator da)
7963  add_to_rotational_derivatives(RigidBody self, Vector4D qderiv, DerivativeAccumulator da)
7964  """
7965  return _IMP_core.RigidBody_add_to_rotational_derivatives(self, *args)
7966 
7967  def add_to_torque(self, torque_local, da):
7968  r"""add_to_torque(RigidBody self, Vector3D torque_local, DerivativeAccumulator da)"""
7969  return _IMP_core.RigidBody_add_to_torque(self, torque_local, da)
7970 
7971  def get_torque(self):
7972  r"""get_torque(RigidBody self) -> Vector3D"""
7973  return _IMP_core.RigidBody_get_torque(self)
7974 
7975  def get_coordinates_are_optimized(self):
7976  r"""get_coordinates_are_optimized(RigidBody self) -> bool"""
7977  return _IMP_core.RigidBody_get_coordinates_are_optimized(self)
7978 
7979  def set_coordinates_are_optimized(self, tf):
7980  r"""set_coordinates_are_optimized(RigidBody self, bool tf)"""
7981  return _IMP_core.RigidBody_set_coordinates_are_optimized(self, tf)
7982 
7983  def normalize_rotation(self):
7984  r"""normalize_rotation(RigidBody self)"""
7985  return _IMP_core.RigidBody_normalize_rotation(self)
7986 
7987  def update_members(self):
7988  r"""update_members(RigidBody self)"""
7989  return _IMP_core.RigidBody_update_members(self)
7990 
7991  def get_rotational_derivatives(self):
7992  r"""get_rotational_derivatives(RigidBody self) -> Vector4D"""
7993  return _IMP_core.RigidBody_get_rotational_derivatives(self)
7994 
7995  def get_number_of_members(self):
7996  r"""get_number_of_members(RigidBody self) -> unsigned int"""
7997  return _IMP_core.RigidBody_get_number_of_members(self)
7998 
7999  def get_member(self, i):
8000  r"""get_member(RigidBody self, unsigned int i) -> RigidBodyMember"""
8001  return _IMP_core.RigidBody_get_member(self, i)
8002 
8003  def add_member(self, p):
8004  r"""add_member(RigidBody self, _ParticleIndexAdaptor p)"""
8005  return _IMP_core.RigidBody_add_member(self, p)
8006 
8007  def add_non_rigid_member(self, p):
8008  r"""add_non_rigid_member(RigidBody self, _ParticleIndexAdaptor p)"""
8009  return _IMP_core.RigidBody_add_non_rigid_member(self, p)
8010 
8011  def set_is_rigid_member(self, pi, tf):
8012  r"""set_is_rigid_member(RigidBody self, ParticleIndex pi, bool tf)"""
8013  return _IMP_core.RigidBody_set_is_rigid_member(self, pi, tf)
8014 
8015  def remove_member(self, p):
8016  r"""remove_member(RigidBody self, _ParticleIndexAdaptor p)"""
8017  return _IMP_core.RigidBody_remove_member(self, p)
8018 
8019  def add_attribute(self, *args):
8020  r"""
8021  add_attribute(RigidBody self, FloatKey k, IMP::Float v, bool opt)
8022  add_attribute(RigidBody self, FloatKey a0, IMP::Float a1)
8023  add_attribute(RigidBody self, IntKey a0, IMP::Int a1)
8024  add_attribute(RigidBody self, FloatsKey a0, IMP::Floats a1)
8025  add_attribute(RigidBody self, IntsKey a0, IMP::Ints a1)
8026  add_attribute(RigidBody self, StringKey a0, IMP::String a1)
8027  add_attribute(RigidBody self, ParticleIndexKey a0, Particle a1)
8028  add_attribute(RigidBody self, ObjectKey a0, Object a1)
8029  add_attribute(RigidBody self, SparseFloatKey a0, IMP::Float a1)
8030  add_attribute(RigidBody self, SparseIntKey a0, IMP::Int a1)
8031  add_attribute(RigidBody self, SparseStringKey a0, IMP::String a1)
8032  add_attribute(RigidBody self, SparseParticleIndexKey a0, ParticleIndex a1)
8033  """
8034  return _IMP_core.RigidBody_add_attribute(self, *args)
8035 
8036  def get_value(self, *args):
8037  r"""
8038  get_value(RigidBody self, FloatKey a0) -> IMP::Float
8039  get_value(RigidBody self, IntKey a0) -> IMP::Int
8040  get_value(RigidBody self, FloatsKey a0) -> IMP::Floats
8041  get_value(RigidBody self, IntsKey a0) -> IMP::Ints
8042  get_value(RigidBody self, StringKey a0) -> IMP::String
8043  get_value(RigidBody self, ParticleIndexKey a0) -> Particle
8044  get_value(RigidBody self, ObjectKey a0) -> Object
8045  get_value(RigidBody self, SparseFloatKey a0) -> IMP::Float
8046  get_value(RigidBody self, SparseIntKey a0) -> IMP::Int
8047  get_value(RigidBody self, SparseStringKey a0) -> IMP::String
8048  get_value(RigidBody self, SparseParticleIndexKey a0) -> ParticleIndex
8049  """
8050  return _IMP_core.RigidBody_get_value(self, *args)
8051 
8052  def set_value(self, *args):
8053  r"""
8054  set_value(RigidBody self, FloatKey a0, IMP::Float a1)
8055  set_value(RigidBody self, IntKey a0, IMP::Int a1)
8056  set_value(RigidBody self, FloatsKey a0, IMP::Floats a1)
8057  set_value(RigidBody self, IntsKey a0, IMP::Ints a1)
8058  set_value(RigidBody self, StringKey a0, IMP::String a1)
8059  set_value(RigidBody self, ParticleIndexKey a0, Particle a1)
8060  set_value(RigidBody self, ObjectKey a0, Object a1)
8061  set_value(RigidBody self, SparseFloatKey a0, IMP::Float a1)
8062  set_value(RigidBody self, SparseIntKey a0, IMP::Int a1)
8063  set_value(RigidBody self, SparseStringKey a0, IMP::String a1)
8064  set_value(RigidBody self, SparseParticleIndexKey a0, ParticleIndex a1)
8065  """
8066  return _IMP_core.RigidBody_set_value(self, *args)
8067 
8068  def remove_attribute(self, *args):
8069  r"""
8070  remove_attribute(RigidBody self, FloatKey a0)
8071  remove_attribute(RigidBody self, IntKey a0)
8072  remove_attribute(RigidBody self, FloatsKey a0)
8073  remove_attribute(RigidBody self, IntsKey a0)
8074  remove_attribute(RigidBody self, StringKey a0)
8075  remove_attribute(RigidBody self, ParticleIndexKey a0)
8076  remove_attribute(RigidBody self, ObjectKey a0)
8077  remove_attribute(RigidBody self, SparseFloatKey a0)
8078  remove_attribute(RigidBody self, SparseIntKey a0)
8079  remove_attribute(RigidBody self, SparseStringKey a0)
8080  remove_attribute(RigidBody self, SparseParticleIndexKey a0)
8081  """
8082  return _IMP_core.RigidBody_remove_attribute(self, *args)
8083 
8084  def has_attribute(self, *args):
8085  r"""
8086  has_attribute(RigidBody self, FloatKey a0) -> bool
8087  has_attribute(RigidBody self, IntKey a0) -> bool
8088  has_attribute(RigidBody self, FloatsKey a0) -> bool
8089  has_attribute(RigidBody self, IntsKey a0) -> bool
8090  has_attribute(RigidBody self, StringKey a0) -> bool
8091  has_attribute(RigidBody self, ParticleIndexKey a0) -> bool
8092  has_attribute(RigidBody self, ObjectKey a0) -> bool
8093  has_attribute(RigidBody self, SparseFloatKey a0) -> bool
8094  has_attribute(RigidBody self, SparseIntKey a0) -> bool
8095  has_attribute(RigidBody self, SparseStringKey a0) -> bool
8096  has_attribute(RigidBody self, SparseParticleIndexKey a0) -> bool
8097  """
8098  return _IMP_core.RigidBody_has_attribute(self, *args)
8099 
8100  def get_derivative(self, a0):
8101  r"""get_derivative(RigidBody self, FloatKey a0) -> double"""
8102  return _IMP_core.RigidBody_get_derivative(self, a0)
8103 
8104  def get_name(self):
8105  r"""get_name(RigidBody self) -> std::string"""
8106  return _IMP_core.RigidBody_get_name(self)
8107 
8108  def clear_caches(self):
8109  r"""clear_caches(RigidBody self)"""
8110  return _IMP_core.RigidBody_clear_caches(self)
8111 
8112  def set_name(self, a0):
8113  r"""set_name(RigidBody self, std::string a0)"""
8114  return _IMP_core.RigidBody_set_name(self, a0)
8115 
8116  def set_check_level(self, a0):
8117  r"""set_check_level(RigidBody self, IMP::CheckLevel a0)"""
8118  return _IMP_core.RigidBody_set_check_level(self, a0)
8119 
8120  def add_to_derivative(self, a0, a1, a2):
8121  r"""add_to_derivative(RigidBody self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8122  return _IMP_core.RigidBody_add_to_derivative(self, a0, a1, a2)
8123 
8124  def set_is_optimized(self, a0, a1):
8125  r"""set_is_optimized(RigidBody self, FloatKey a0, bool a1)"""
8126  return _IMP_core.RigidBody_set_is_optimized(self, a0, a1)
8127 
8128  def get_is_optimized(self, a0):
8129  r"""get_is_optimized(RigidBody self, FloatKey a0) -> bool"""
8130  return _IMP_core.RigidBody_get_is_optimized(self, a0)
8131 
8132  def get_check_level(self):
8133  r"""get_check_level(RigidBody self) -> IMP::CheckLevel"""
8134  return _IMP_core.RigidBody_get_check_level(self)
8135 
8136  def __eq__(self, *args):
8137  r"""
8138  __eq__(RigidBody self, RigidBody o) -> bool
8139  __eq__(RigidBody self, Particle d) -> bool
8140  """
8141  return _IMP_core.RigidBody___eq__(self, *args)
8142 
8143  def __ne__(self, *args):
8144  r"""
8145  __ne__(RigidBody self, RigidBody o) -> bool
8146  __ne__(RigidBody self, Particle d) -> bool
8147  """
8148  return _IMP_core.RigidBody___ne__(self, *args)
8149 
8150  def __le__(self, *args):
8151  r"""
8152  __le__(RigidBody self, RigidBody o) -> bool
8153  __le__(RigidBody self, Particle d) -> bool
8154  """
8155  return _IMP_core.RigidBody___le__(self, *args)
8156 
8157  def __lt__(self, *args):
8158  r"""
8159  __lt__(RigidBody self, RigidBody o) -> bool
8160  __lt__(RigidBody self, Particle d) -> bool
8161  """
8162  return _IMP_core.RigidBody___lt__(self, *args)
8163 
8164  def __ge__(self, *args):
8165  r"""
8166  __ge__(RigidBody self, RigidBody o) -> bool
8167  __ge__(RigidBody self, Particle d) -> bool
8168  """
8169  return _IMP_core.RigidBody___ge__(self, *args)
8170 
8171  def __gt__(self, *args):
8172  r"""
8173  __gt__(RigidBody self, RigidBody o) -> bool
8174  __gt__(RigidBody self, Particle d) -> bool
8175  """
8176  return _IMP_core.RigidBody___gt__(self, *args)
8177 
8178  def __hash__(self):
8179  r"""__hash__(RigidBody self) -> std::size_t"""
8180  return _IMP_core.RigidBody___hash__(self)
8181 
8182  def __str__(self):
8183  r"""__str__(RigidBody self) -> std::string"""
8184  return _IMP_core.RigidBody___str__(self)
8185 
8186  def __repr__(self):
8187  r"""__repr__(RigidBody self) -> std::string"""
8188  return _IMP_core.RigidBody___repr__(self)
8189 
8190  def _get_as_binary(self):
8191  r"""_get_as_binary(RigidBody self) -> PyObject *"""
8192  return _IMP_core.RigidBody__get_as_binary(self)
8193 
8194  def _set_from_binary(self, p):
8195  r"""_set_from_binary(RigidBody self, PyObject * p)"""
8196  return _IMP_core.RigidBody__set_from_binary(self, p)
8197 
8198  def __getstate__(self):
8199  p = self._get_as_binary()
8200  if len(self.__dict__) > 1:
8201  d = self.__dict__.copy()
8202  del d['this']
8203  p = (d, p)
8204  return p
8205 
8206  def __setstate__(self, p):
8207  if not hasattr(self, 'this'):
8208  self.__init__()
8209  if isinstance(p, tuple):
8210  d, p = p
8211  self.__dict__.update(d)
8212  return self._set_from_binary(p)
8213 
8214 
8215 # Register RigidBody in _IMP_core:
8216 _IMP_core.RigidBody_swigregister(RigidBody)
8217 
8219  r"""add_rigid_body_cache_key(ObjectKey k)"""
8220  return _IMP_core.add_rigid_body_cache_key(k)
8221 class RigidBodyMember(XYZ):
8222  r"""Proxy of C++ IMP::core::RigidBodyMember class."""
8223 
8224  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8225 
8226  def show(self, *args):
8227  r"""show(RigidBodyMember self, _ostream out=std::cout)"""
8228  return _IMP_core.RigidBodyMember_show(self, *args)
8229 
8230  def get_rigid_body(self):
8231  r"""get_rigid_body(RigidBodyMember self) -> RigidBody"""
8232  return _IMP_core.RigidBodyMember_get_rigid_body(self)
8233 
8234  def get_internal_coordinates(self):
8235  r"""get_internal_coordinates(RigidBodyMember self) -> Vector3D"""
8236  return _IMP_core.RigidBodyMember_get_internal_coordinates(self)
8237 
8238  def set_internal_coordinates(self, v):
8239  r"""set_internal_coordinates(RigidBodyMember self, Vector3D v)"""
8240  return _IMP_core.RigidBodyMember_set_internal_coordinates(self, v)
8241 
8242  def set_internal_transformation(self, v):
8243  r"""set_internal_transformation(RigidBodyMember self, Transformation3D v)"""
8244  return _IMP_core.RigidBodyMember_set_internal_transformation(self, v)
8245 
8246  def get_internal_transformation(self):
8247  r"""get_internal_transformation(RigidBodyMember self) -> Transformation3D"""
8248  return _IMP_core.RigidBodyMember_get_internal_transformation(self)
8249  __swig_destroy__ = _IMP_core.delete_RigidBodyMember
8250 
8251  def set_coordinates(self, *args):
8252  r"""
8253  set_coordinates(RigidBodyMember self, Vector3D center)
8254  set_coordinates(RigidBodyMember self, Transformation3D tr)
8255  """
8256  return _IMP_core.RigidBodyMember_set_coordinates(self, *args)
8257 
8258  def __init__(self, *args):
8259  r"""
8260  __init__(RigidBodyMember self) -> RigidBodyMember
8261  __init__(RigidBodyMember self, Model m, ParticleIndex id) -> RigidBodyMember
8262  __init__(RigidBodyMember self, _ParticleAdaptor d) -> RigidBodyMember
8263  __init__(RigidBodyMember self, RigidBodyMember arg2) -> RigidBodyMember
8264  """
8265  _IMP_core.RigidBodyMember_swiginit(self, _IMP_core.new_RigidBodyMember(*args))
8266 
8267  @staticmethod
8268  def get_is_setup(*args):
8269  r"""
8270  get_is_setup(_ParticleAdaptor p) -> bool
8271  get_is_setup(Model m, _ParticleIndexAdaptor p) -> bool
8272  """
8273  return _IMP_core.RigidBodyMember_get_is_setup(*args)
8274 
8275  @staticmethod
8276  def get_internal_coordinate_keys():
8277  r"""get_internal_coordinate_keys() -> IMP::FloatKeys"""
8278  return _IMP_core.RigidBodyMember_get_internal_coordinate_keys()
8279 
8280  @staticmethod
8281  def get_internal_rotation_keys():
8282  r"""get_internal_rotation_keys() -> IMP::FloatKeys"""
8283  return _IMP_core.RigidBodyMember_get_internal_rotation_keys()
8284 
8285  def add_attribute(self, *args):
8286  r"""
8287  add_attribute(RigidBodyMember self, FloatKey k, IMP::Float v, bool opt)
8288  add_attribute(RigidBodyMember self, FloatKey a0, IMP::Float a1)
8289  add_attribute(RigidBodyMember self, IntKey a0, IMP::Int a1)
8290  add_attribute(RigidBodyMember self, FloatsKey a0, IMP::Floats a1)
8291  add_attribute(RigidBodyMember self, IntsKey a0, IMP::Ints a1)
8292  add_attribute(RigidBodyMember self, StringKey a0, IMP::String a1)
8293  add_attribute(RigidBodyMember self, ParticleIndexKey a0, Particle a1)
8294  add_attribute(RigidBodyMember self, ObjectKey a0, Object a1)
8295  add_attribute(RigidBodyMember self, SparseFloatKey a0, IMP::Float a1)
8296  add_attribute(RigidBodyMember self, SparseIntKey a0, IMP::Int a1)
8297  add_attribute(RigidBodyMember self, SparseStringKey a0, IMP::String a1)
8298  add_attribute(RigidBodyMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8299  """
8300  return _IMP_core.RigidBodyMember_add_attribute(self, *args)
8301 
8302  def get_value(self, *args):
8303  r"""
8304  get_value(RigidBodyMember self, FloatKey a0) -> IMP::Float
8305  get_value(RigidBodyMember self, IntKey a0) -> IMP::Int
8306  get_value(RigidBodyMember self, FloatsKey a0) -> IMP::Floats
8307  get_value(RigidBodyMember self, IntsKey a0) -> IMP::Ints
8308  get_value(RigidBodyMember self, StringKey a0) -> IMP::String
8309  get_value(RigidBodyMember self, ParticleIndexKey a0) -> Particle
8310  get_value(RigidBodyMember self, ObjectKey a0) -> Object
8311  get_value(RigidBodyMember self, SparseFloatKey a0) -> IMP::Float
8312  get_value(RigidBodyMember self, SparseIntKey a0) -> IMP::Int
8313  get_value(RigidBodyMember self, SparseStringKey a0) -> IMP::String
8314  get_value(RigidBodyMember self, SparseParticleIndexKey a0) -> ParticleIndex
8315  """
8316  return _IMP_core.RigidBodyMember_get_value(self, *args)
8317 
8318  def set_value(self, *args):
8319  r"""
8320  set_value(RigidBodyMember self, FloatKey a0, IMP::Float a1)
8321  set_value(RigidBodyMember self, IntKey a0, IMP::Int a1)
8322  set_value(RigidBodyMember self, FloatsKey a0, IMP::Floats a1)
8323  set_value(RigidBodyMember self, IntsKey a0, IMP::Ints a1)
8324  set_value(RigidBodyMember self, StringKey a0, IMP::String a1)
8325  set_value(RigidBodyMember self, ParticleIndexKey a0, Particle a1)
8326  set_value(RigidBodyMember self, ObjectKey a0, Object a1)
8327  set_value(RigidBodyMember self, SparseFloatKey a0, IMP::Float a1)
8328  set_value(RigidBodyMember self, SparseIntKey a0, IMP::Int a1)
8329  set_value(RigidBodyMember self, SparseStringKey a0, IMP::String a1)
8330  set_value(RigidBodyMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8331  """
8332  return _IMP_core.RigidBodyMember_set_value(self, *args)
8333 
8334  def remove_attribute(self, *args):
8335  r"""
8336  remove_attribute(RigidBodyMember self, FloatKey a0)
8337  remove_attribute(RigidBodyMember self, IntKey a0)
8338  remove_attribute(RigidBodyMember self, FloatsKey a0)
8339  remove_attribute(RigidBodyMember self, IntsKey a0)
8340  remove_attribute(RigidBodyMember self, StringKey a0)
8341  remove_attribute(RigidBodyMember self, ParticleIndexKey a0)
8342  remove_attribute(RigidBodyMember self, ObjectKey a0)
8343  remove_attribute(RigidBodyMember self, SparseFloatKey a0)
8344  remove_attribute(RigidBodyMember self, SparseIntKey a0)
8345  remove_attribute(RigidBodyMember self, SparseStringKey a0)
8346  remove_attribute(RigidBodyMember self, SparseParticleIndexKey a0)
8347  """
8348  return _IMP_core.RigidBodyMember_remove_attribute(self, *args)
8349 
8350  def has_attribute(self, *args):
8351  r"""
8352  has_attribute(RigidBodyMember self, FloatKey a0) -> bool
8353  has_attribute(RigidBodyMember self, IntKey a0) -> bool
8354  has_attribute(RigidBodyMember self, FloatsKey a0) -> bool
8355  has_attribute(RigidBodyMember self, IntsKey a0) -> bool
8356  has_attribute(RigidBodyMember self, StringKey a0) -> bool
8357  has_attribute(RigidBodyMember self, ParticleIndexKey a0) -> bool
8358  has_attribute(RigidBodyMember self, ObjectKey a0) -> bool
8359  has_attribute(RigidBodyMember self, SparseFloatKey a0) -> bool
8360  has_attribute(RigidBodyMember self, SparseIntKey a0) -> bool
8361  has_attribute(RigidBodyMember self, SparseStringKey a0) -> bool
8362  has_attribute(RigidBodyMember self, SparseParticleIndexKey a0) -> bool
8363  """
8364  return _IMP_core.RigidBodyMember_has_attribute(self, *args)
8365 
8366  def get_derivative(self, a0):
8367  r"""get_derivative(RigidBodyMember self, FloatKey a0) -> double"""
8368  return _IMP_core.RigidBodyMember_get_derivative(self, a0)
8369 
8370  def get_name(self):
8371  r"""get_name(RigidBodyMember self) -> std::string"""
8372  return _IMP_core.RigidBodyMember_get_name(self)
8373 
8374  def clear_caches(self):
8375  r"""clear_caches(RigidBodyMember self)"""
8376  return _IMP_core.RigidBodyMember_clear_caches(self)
8377 
8378  def set_name(self, a0):
8379  r"""set_name(RigidBodyMember self, std::string a0)"""
8380  return _IMP_core.RigidBodyMember_set_name(self, a0)
8381 
8382  def set_check_level(self, a0):
8383  r"""set_check_level(RigidBodyMember self, IMP::CheckLevel a0)"""
8384  return _IMP_core.RigidBodyMember_set_check_level(self, a0)
8385 
8386  def add_to_derivative(self, a0, a1, a2):
8387  r"""add_to_derivative(RigidBodyMember self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8388  return _IMP_core.RigidBodyMember_add_to_derivative(self, a0, a1, a2)
8389 
8390  def set_is_optimized(self, a0, a1):
8391  r"""set_is_optimized(RigidBodyMember self, FloatKey a0, bool a1)"""
8392  return _IMP_core.RigidBodyMember_set_is_optimized(self, a0, a1)
8393 
8394  def get_is_optimized(self, a0):
8395  r"""get_is_optimized(RigidBodyMember self, FloatKey a0) -> bool"""
8396  return _IMP_core.RigidBodyMember_get_is_optimized(self, a0)
8397 
8398  def get_check_level(self):
8399  r"""get_check_level(RigidBodyMember self) -> IMP::CheckLevel"""
8400  return _IMP_core.RigidBodyMember_get_check_level(self)
8401 
8402  def __eq__(self, *args):
8403  r"""
8404  __eq__(RigidBodyMember self, RigidBodyMember o) -> bool
8405  __eq__(RigidBodyMember self, Particle d) -> bool
8406  """
8407  return _IMP_core.RigidBodyMember___eq__(self, *args)
8408 
8409  def __ne__(self, *args):
8410  r"""
8411  __ne__(RigidBodyMember self, RigidBodyMember o) -> bool
8412  __ne__(RigidBodyMember self, Particle d) -> bool
8413  """
8414  return _IMP_core.RigidBodyMember___ne__(self, *args)
8415 
8416  def __le__(self, *args):
8417  r"""
8418  __le__(RigidBodyMember self, RigidBodyMember o) -> bool
8419  __le__(RigidBodyMember self, Particle d) -> bool
8420  """
8421  return _IMP_core.RigidBodyMember___le__(self, *args)
8422 
8423  def __lt__(self, *args):
8424  r"""
8425  __lt__(RigidBodyMember self, RigidBodyMember o) -> bool
8426  __lt__(RigidBodyMember self, Particle d) -> bool
8427  """
8428  return _IMP_core.RigidBodyMember___lt__(self, *args)
8429 
8430  def __ge__(self, *args):
8431  r"""
8432  __ge__(RigidBodyMember self, RigidBodyMember o) -> bool
8433  __ge__(RigidBodyMember self, Particle d) -> bool
8434  """
8435  return _IMP_core.RigidBodyMember___ge__(self, *args)
8436 
8437  def __gt__(self, *args):
8438  r"""
8439  __gt__(RigidBodyMember self, RigidBodyMember o) -> bool
8440  __gt__(RigidBodyMember self, Particle d) -> bool
8441  """
8442  return _IMP_core.RigidBodyMember___gt__(self, *args)
8443 
8444  def __hash__(self):
8445  r"""__hash__(RigidBodyMember self) -> std::size_t"""
8446  return _IMP_core.RigidBodyMember___hash__(self)
8447 
8448  def __str__(self):
8449  r"""__str__(RigidBodyMember self) -> std::string"""
8450  return _IMP_core.RigidBodyMember___str__(self)
8451 
8452  def __repr__(self):
8453  r"""__repr__(RigidBodyMember self) -> std::string"""
8454  return _IMP_core.RigidBodyMember___repr__(self)
8455 
8456  def _get_as_binary(self):
8457  r"""_get_as_binary(RigidBodyMember self) -> PyObject *"""
8458  return _IMP_core.RigidBodyMember__get_as_binary(self)
8459 
8460  def _set_from_binary(self, p):
8461  r"""_set_from_binary(RigidBodyMember self, PyObject * p)"""
8462  return _IMP_core.RigidBodyMember__set_from_binary(self, p)
8463 
8464  def __getstate__(self):
8465  p = self._get_as_binary()
8466  if len(self.__dict__) > 1:
8467  d = self.__dict__.copy()
8468  del d['this']
8469  p = (d, p)
8470  return p
8471 
8472  def __setstate__(self, p):
8473  if not hasattr(self, 'this'):
8474  self.__init__()
8475  if isinstance(p, tuple):
8476  d, p = p
8477  self.__dict__.update(d)
8478  return self._set_from_binary(p)
8479 
8480 
8481 # Register RigidBodyMember in _IMP_core:
8482 _IMP_core.RigidBodyMember_swigregister(RigidBodyMember)
8483 class RigidMember(RigidBodyMember):
8484  r"""Proxy of C++ IMP::core::RigidMember class."""
8485 
8486  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8487 
8488  def show(self, *args):
8489  r"""show(RigidMember self, _ostream out=std::cout)"""
8490  return _IMP_core.RigidMember_show(self, *args)
8491 
8492  def __init__(self, *args):
8493  r"""
8494  __init__(RigidMember self) -> RigidMember
8495  __init__(RigidMember self, Model m, ParticleIndex id) -> RigidMember
8496  __init__(RigidMember self, _ParticleAdaptor d) -> RigidMember
8497  __init__(RigidMember self, RigidMember arg2) -> RigidMember
8498  """
8499  _IMP_core.RigidMember_swiginit(self, _IMP_core.new_RigidMember(*args))
8500  __swig_destroy__ = _IMP_core.delete_RigidMember
8501 
8502  @staticmethod
8503  def get_is_setup(*args):
8504  r"""
8505  get_is_setup(_ParticleAdaptor p) -> bool
8506  get_is_setup(Model m, _ParticleIndexAdaptor p) -> bool
8507  """
8508  return _IMP_core.RigidMember_get_is_setup(*args)
8509 
8510  def add_attribute(self, *args):
8511  r"""
8512  add_attribute(RigidMember self, FloatKey k, IMP::Float v, bool opt)
8513  add_attribute(RigidMember self, FloatKey a0, IMP::Float a1)
8514  add_attribute(RigidMember self, IntKey a0, IMP::Int a1)
8515  add_attribute(RigidMember self, FloatsKey a0, IMP::Floats a1)
8516  add_attribute(RigidMember self, IntsKey a0, IMP::Ints a1)
8517  add_attribute(RigidMember self, StringKey a0, IMP::String a1)
8518  add_attribute(RigidMember self, ParticleIndexKey a0, Particle a1)
8519  add_attribute(RigidMember self, ObjectKey a0, Object a1)
8520  add_attribute(RigidMember self, SparseFloatKey a0, IMP::Float a1)
8521  add_attribute(RigidMember self, SparseIntKey a0, IMP::Int a1)
8522  add_attribute(RigidMember self, SparseStringKey a0, IMP::String a1)
8523  add_attribute(RigidMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8524  """
8525  return _IMP_core.RigidMember_add_attribute(self, *args)
8526 
8527  def get_value(self, *args):
8528  r"""
8529  get_value(RigidMember self, FloatKey a0) -> IMP::Float
8530  get_value(RigidMember self, IntKey a0) -> IMP::Int
8531  get_value(RigidMember self, FloatsKey a0) -> IMP::Floats
8532  get_value(RigidMember self, IntsKey a0) -> IMP::Ints
8533  get_value(RigidMember self, StringKey a0) -> IMP::String
8534  get_value(RigidMember self, ParticleIndexKey a0) -> Particle
8535  get_value(RigidMember self, ObjectKey a0) -> Object
8536  get_value(RigidMember self, SparseFloatKey a0) -> IMP::Float
8537  get_value(RigidMember self, SparseIntKey a0) -> IMP::Int
8538  get_value(RigidMember self, SparseStringKey a0) -> IMP::String
8539  get_value(RigidMember self, SparseParticleIndexKey a0) -> ParticleIndex
8540  """
8541  return _IMP_core.RigidMember_get_value(self, *args)
8542 
8543  def set_value(self, *args):
8544  r"""
8545  set_value(RigidMember self, FloatKey a0, IMP::Float a1)
8546  set_value(RigidMember self, IntKey a0, IMP::Int a1)
8547  set_value(RigidMember self, FloatsKey a0, IMP::Floats a1)
8548  set_value(RigidMember self, IntsKey a0, IMP::Ints a1)
8549  set_value(RigidMember self, StringKey a0, IMP::String a1)
8550  set_value(RigidMember self, ParticleIndexKey a0, Particle a1)
8551  set_value(RigidMember self, ObjectKey a0, Object a1)
8552  set_value(RigidMember self, SparseFloatKey a0, IMP::Float a1)
8553  set_value(RigidMember self, SparseIntKey a0, IMP::Int a1)
8554  set_value(RigidMember self, SparseStringKey a0, IMP::String a1)
8555  set_value(RigidMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8556  """
8557  return _IMP_core.RigidMember_set_value(self, *args)
8558 
8559  def remove_attribute(self, *args):
8560  r"""
8561  remove_attribute(RigidMember self, FloatKey a0)
8562  remove_attribute(RigidMember self, IntKey a0)
8563  remove_attribute(RigidMember self, FloatsKey a0)
8564  remove_attribute(RigidMember self, IntsKey a0)
8565  remove_attribute(RigidMember self, StringKey a0)
8566  remove_attribute(RigidMember self, ParticleIndexKey a0)
8567  remove_attribute(RigidMember self, ObjectKey a0)
8568  remove_attribute(RigidMember self, SparseFloatKey a0)
8569  remove_attribute(RigidMember self, SparseIntKey a0)
8570  remove_attribute(RigidMember self, SparseStringKey a0)
8571  remove_attribute(RigidMember self, SparseParticleIndexKey a0)
8572  """
8573  return _IMP_core.RigidMember_remove_attribute(self, *args)
8574 
8575  def has_attribute(self, *args):
8576  r"""
8577  has_attribute(RigidMember self, FloatKey a0) -> bool
8578  has_attribute(RigidMember self, IntKey a0) -> bool
8579  has_attribute(RigidMember self, FloatsKey a0) -> bool
8580  has_attribute(RigidMember self, IntsKey a0) -> bool
8581  has_attribute(RigidMember self, StringKey a0) -> bool
8582  has_attribute(RigidMember self, ParticleIndexKey a0) -> bool
8583  has_attribute(RigidMember self, ObjectKey a0) -> bool
8584  has_attribute(RigidMember self, SparseFloatKey a0) -> bool
8585  has_attribute(RigidMember self, SparseIntKey a0) -> bool
8586  has_attribute(RigidMember self, SparseStringKey a0) -> bool
8587  has_attribute(RigidMember self, SparseParticleIndexKey a0) -> bool
8588  """
8589  return _IMP_core.RigidMember_has_attribute(self, *args)
8590 
8591  def get_derivative(self, a0):
8592  r"""get_derivative(RigidMember self, FloatKey a0) -> double"""
8593  return _IMP_core.RigidMember_get_derivative(self, a0)
8594 
8595  def get_name(self):
8596  r"""get_name(RigidMember self) -> std::string"""
8597  return _IMP_core.RigidMember_get_name(self)
8598 
8599  def clear_caches(self):
8600  r"""clear_caches(RigidMember self)"""
8601  return _IMP_core.RigidMember_clear_caches(self)
8602 
8603  def set_name(self, a0):
8604  r"""set_name(RigidMember self, std::string a0)"""
8605  return _IMP_core.RigidMember_set_name(self, a0)
8606 
8607  def set_check_level(self, a0):
8608  r"""set_check_level(RigidMember self, IMP::CheckLevel a0)"""
8609  return _IMP_core.RigidMember_set_check_level(self, a0)
8610 
8611  def add_to_derivative(self, a0, a1, a2):
8612  r"""add_to_derivative(RigidMember self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8613  return _IMP_core.RigidMember_add_to_derivative(self, a0, a1, a2)
8614 
8615  def set_is_optimized(self, a0, a1):
8616  r"""set_is_optimized(RigidMember self, FloatKey a0, bool a1)"""
8617  return _IMP_core.RigidMember_set_is_optimized(self, a0, a1)
8618 
8619  def get_is_optimized(self, a0):
8620  r"""get_is_optimized(RigidMember self, FloatKey a0) -> bool"""
8621  return _IMP_core.RigidMember_get_is_optimized(self, a0)
8622 
8623  def get_check_level(self):
8624  r"""get_check_level(RigidMember self) -> IMP::CheckLevel"""
8625  return _IMP_core.RigidMember_get_check_level(self)
8626 
8627  def __eq__(self, *args):
8628  r"""
8629  __eq__(RigidMember self, RigidMember o) -> bool
8630  __eq__(RigidMember self, Particle d) -> bool
8631  """
8632  return _IMP_core.RigidMember___eq__(self, *args)
8633 
8634  def __ne__(self, *args):
8635  r"""
8636  __ne__(RigidMember self, RigidMember o) -> bool
8637  __ne__(RigidMember self, Particle d) -> bool
8638  """
8639  return _IMP_core.RigidMember___ne__(self, *args)
8640 
8641  def __le__(self, *args):
8642  r"""
8643  __le__(RigidMember self, RigidMember o) -> bool
8644  __le__(RigidMember self, Particle d) -> bool
8645  """
8646  return _IMP_core.RigidMember___le__(self, *args)
8647 
8648  def __lt__(self, *args):
8649  r"""
8650  __lt__(RigidMember self, RigidMember o) -> bool
8651  __lt__(RigidMember self, Particle d) -> bool
8652  """
8653  return _IMP_core.RigidMember___lt__(self, *args)
8654 
8655  def __ge__(self, *args):
8656  r"""
8657  __ge__(RigidMember self, RigidMember o) -> bool
8658  __ge__(RigidMember self, Particle d) -> bool
8659  """
8660  return _IMP_core.RigidMember___ge__(self, *args)
8661 
8662  def __gt__(self, *args):
8663  r"""
8664  __gt__(RigidMember self, RigidMember o) -> bool
8665  __gt__(RigidMember self, Particle d) -> bool
8666  """
8667  return _IMP_core.RigidMember___gt__(self, *args)
8668 
8669  def __hash__(self):
8670  r"""__hash__(RigidMember self) -> std::size_t"""
8671  return _IMP_core.RigidMember___hash__(self)
8672 
8673  def __str__(self):
8674  r"""__str__(RigidMember self) -> std::string"""
8675  return _IMP_core.RigidMember___str__(self)
8676 
8677  def __repr__(self):
8678  r"""__repr__(RigidMember self) -> std::string"""
8679  return _IMP_core.RigidMember___repr__(self)
8680 
8681  def _get_as_binary(self):
8682  r"""_get_as_binary(RigidMember self) -> PyObject *"""
8683  return _IMP_core.RigidMember__get_as_binary(self)
8684 
8685  def _set_from_binary(self, p):
8686  r"""_set_from_binary(RigidMember self, PyObject * p)"""
8687  return _IMP_core.RigidMember__set_from_binary(self, p)
8688 
8689  def __getstate__(self):
8690  p = self._get_as_binary()
8691  if len(self.__dict__) > 1:
8692  d = self.__dict__.copy()
8693  del d['this']
8694  p = (d, p)
8695  return p
8696 
8697  def __setstate__(self, p):
8698  if not hasattr(self, 'this'):
8699  self.__init__()
8700  if isinstance(p, tuple):
8701  d, p = p
8702  self.__dict__.update(d)
8703  return self._set_from_binary(p)
8704 
8705 
8706 # Register RigidMember in _IMP_core:
8707 _IMP_core.RigidMember_swigregister(RigidMember)
8708 class NonRigidMember(RigidBodyMember):
8709  r"""Proxy of C++ IMP::core::NonRigidMember class."""
8710 
8711  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8712 
8713  def show(self, *args):
8714  r"""show(NonRigidMember self, _ostream out=std::cout)"""
8715  return _IMP_core.NonRigidMember_show(self, *args)
8716 
8717  def __init__(self, *args):
8718  r"""
8719  __init__(NonRigidMember self) -> NonRigidMember
8720  __init__(NonRigidMember self, Model m, ParticleIndex id) -> NonRigidMember
8721  __init__(NonRigidMember self, _ParticleAdaptor d) -> NonRigidMember
8722  __init__(NonRigidMember self, NonRigidMember arg2) -> NonRigidMember
8723  """
8724  _IMP_core.NonRigidMember_swiginit(self, _IMP_core.new_NonRigidMember(*args))
8725  __swig_destroy__ = _IMP_core.delete_NonRigidMember
8726 
8727  @staticmethod
8728  def get_is_setup(*args):
8729  r"""
8730  get_is_setup(_ParticleAdaptor p) -> bool
8731  get_is_setup(Model m, ParticleIndex p) -> bool
8732  """
8733  return _IMP_core.NonRigidMember_get_is_setup(*args)
8734 
8735  def add_to_internal_derivatives(self, deriv_parent, da):
8736  r"""add_to_internal_derivatives(NonRigidMember self, Vector3D deriv_parent, DerivativeAccumulator da)"""
8737  return _IMP_core.NonRigidMember_add_to_internal_derivatives(self, deriv_parent, da)
8738 
8739  def add_to_internal_rotational_derivatives(self, *args):
8740  r"""
8741  add_to_internal_rotational_derivatives(NonRigidMember self, Vector4D local_qderiv, Rotation3D rot_local_to_parent, Rotation3D rot_parent_to_global, DerivativeAccumulator da)
8742  add_to_internal_rotational_derivatives(NonRigidMember self, Vector4D qderiv, DerivativeAccumulator da)
8743  """
8744  return _IMP_core.NonRigidMember_add_to_internal_rotational_derivatives(self, *args)
8745 
8746  def get_internal_derivatives(self):
8747  r"""get_internal_derivatives(NonRigidMember self) -> Vector3D"""
8748  return _IMP_core.NonRigidMember_get_internal_derivatives(self)
8749 
8750  def get_internal_rotational_derivatives(self):
8751  r"""get_internal_rotational_derivatives(NonRigidMember self) -> Vector4D"""
8752  return _IMP_core.NonRigidMember_get_internal_rotational_derivatives(self)
8753 
8754  def add_attribute(self, *args):
8755  r"""
8756  add_attribute(NonRigidMember self, FloatKey k, IMP::Float v, bool opt)
8757  add_attribute(NonRigidMember self, FloatKey a0, IMP::Float a1)
8758  add_attribute(NonRigidMember self, IntKey a0, IMP::Int a1)
8759  add_attribute(NonRigidMember self, FloatsKey a0, IMP::Floats a1)
8760  add_attribute(NonRigidMember self, IntsKey a0, IMP::Ints a1)
8761  add_attribute(NonRigidMember self, StringKey a0, IMP::String a1)
8762  add_attribute(NonRigidMember self, ParticleIndexKey a0, Particle a1)
8763  add_attribute(NonRigidMember self, ObjectKey a0, Object a1)
8764  add_attribute(NonRigidMember self, SparseFloatKey a0, IMP::Float a1)
8765  add_attribute(NonRigidMember self, SparseIntKey a0, IMP::Int a1)
8766  add_attribute(NonRigidMember self, SparseStringKey a0, IMP::String a1)
8767  add_attribute(NonRigidMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8768  """
8769  return _IMP_core.NonRigidMember_add_attribute(self, *args)
8770 
8771  def get_value(self, *args):
8772  r"""
8773  get_value(NonRigidMember self, FloatKey a0) -> IMP::Float
8774  get_value(NonRigidMember self, IntKey a0) -> IMP::Int
8775  get_value(NonRigidMember self, FloatsKey a0) -> IMP::Floats
8776  get_value(NonRigidMember self, IntsKey a0) -> IMP::Ints
8777  get_value(NonRigidMember self, StringKey a0) -> IMP::String
8778  get_value(NonRigidMember self, ParticleIndexKey a0) -> Particle
8779  get_value(NonRigidMember self, ObjectKey a0) -> Object
8780  get_value(NonRigidMember self, SparseFloatKey a0) -> IMP::Float
8781  get_value(NonRigidMember self, SparseIntKey a0) -> IMP::Int
8782  get_value(NonRigidMember self, SparseStringKey a0) -> IMP::String
8783  get_value(NonRigidMember self, SparseParticleIndexKey a0) -> ParticleIndex
8784  """
8785  return _IMP_core.NonRigidMember_get_value(self, *args)
8786 
8787  def set_value(self, *args):
8788  r"""
8789  set_value(NonRigidMember self, FloatKey a0, IMP::Float a1)
8790  set_value(NonRigidMember self, IntKey a0, IMP::Int a1)
8791  set_value(NonRigidMember self, FloatsKey a0, IMP::Floats a1)
8792  set_value(NonRigidMember self, IntsKey a0, IMP::Ints a1)
8793  set_value(NonRigidMember self, StringKey a0, IMP::String a1)
8794  set_value(NonRigidMember self, ParticleIndexKey a0, Particle a1)
8795  set_value(NonRigidMember self, ObjectKey a0, Object a1)
8796  set_value(NonRigidMember self, SparseFloatKey a0, IMP::Float a1)
8797  set_value(NonRigidMember self, SparseIntKey a0, IMP::Int a1)
8798  set_value(NonRigidMember self, SparseStringKey a0, IMP::String a1)
8799  set_value(NonRigidMember self, SparseParticleIndexKey a0, ParticleIndex a1)
8800  """
8801  return _IMP_core.NonRigidMember_set_value(self, *args)
8802 
8803  def remove_attribute(self, *args):
8804  r"""
8805  remove_attribute(NonRigidMember self, FloatKey a0)
8806  remove_attribute(NonRigidMember self, IntKey a0)
8807  remove_attribute(NonRigidMember self, FloatsKey a0)
8808  remove_attribute(NonRigidMember self, IntsKey a0)
8809  remove_attribute(NonRigidMember self, StringKey a0)
8810  remove_attribute(NonRigidMember self, ParticleIndexKey a0)
8811  remove_attribute(NonRigidMember self, ObjectKey a0)
8812  remove_attribute(NonRigidMember self, SparseFloatKey a0)
8813  remove_attribute(NonRigidMember self, SparseIntKey a0)
8814  remove_attribute(NonRigidMember self, SparseStringKey a0)
8815  remove_attribute(NonRigidMember self, SparseParticleIndexKey a0)
8816  """
8817  return _IMP_core.NonRigidMember_remove_attribute(self, *args)
8818 
8819  def has_attribute(self, *args):
8820  r"""
8821  has_attribute(NonRigidMember self, FloatKey a0) -> bool
8822  has_attribute(NonRigidMember self, IntKey a0) -> bool
8823  has_attribute(NonRigidMember self, FloatsKey a0) -> bool
8824  has_attribute(NonRigidMember self, IntsKey a0) -> bool
8825  has_attribute(NonRigidMember self, StringKey a0) -> bool
8826  has_attribute(NonRigidMember self, ParticleIndexKey a0) -> bool
8827  has_attribute(NonRigidMember self, ObjectKey a0) -> bool
8828  has_attribute(NonRigidMember self, SparseFloatKey a0) -> bool
8829  has_attribute(NonRigidMember self, SparseIntKey a0) -> bool
8830  has_attribute(NonRigidMember self, SparseStringKey a0) -> bool
8831  has_attribute(NonRigidMember self, SparseParticleIndexKey a0) -> bool
8832  """
8833  return _IMP_core.NonRigidMember_has_attribute(self, *args)
8834 
8835  def get_derivative(self, a0):
8836  r"""get_derivative(NonRigidMember self, FloatKey a0) -> double"""
8837  return _IMP_core.NonRigidMember_get_derivative(self, a0)
8838 
8839  def get_name(self):
8840  r"""get_name(NonRigidMember self) -> std::string"""
8841  return _IMP_core.NonRigidMember_get_name(self)
8842 
8843  def clear_caches(self):
8844  r"""clear_caches(NonRigidMember self)"""
8845  return _IMP_core.NonRigidMember_clear_caches(self)
8846 
8847  def set_name(self, a0):
8848  r"""set_name(NonRigidMember self, std::string a0)"""
8849  return _IMP_core.NonRigidMember_set_name(self, a0)
8850 
8851  def set_check_level(self, a0):
8852  r"""set_check_level(NonRigidMember self, IMP::CheckLevel a0)"""
8853  return _IMP_core.NonRigidMember_set_check_level(self, a0)
8854 
8855  def add_to_derivative(self, a0, a1, a2):
8856  r"""add_to_derivative(NonRigidMember self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8857  return _IMP_core.NonRigidMember_add_to_derivative(self, a0, a1, a2)
8858 
8859  def set_is_optimized(self, a0, a1):
8860  r"""set_is_optimized(NonRigidMember self, FloatKey a0, bool a1)"""
8861  return _IMP_core.NonRigidMember_set_is_optimized(self, a0, a1)
8862 
8863  def get_is_optimized(self, a0):
8864  r"""get_is_optimized(NonRigidMember self, FloatKey a0) -> bool"""
8865  return _IMP_core.NonRigidMember_get_is_optimized(self, a0)
8866 
8867  def get_check_level(self):
8868  r"""get_check_level(NonRigidMember self) -> IMP::CheckLevel"""
8869  return _IMP_core.NonRigidMember_get_check_level(self)
8870 
8871  def __eq__(self, *args):
8872  r"""
8873  __eq__(NonRigidMember self, NonRigidMember o) -> bool
8874  __eq__(NonRigidMember self, Particle d) -> bool
8875  """
8876  return _IMP_core.NonRigidMember___eq__(self, *args)
8877 
8878  def __ne__(self, *args):
8879  r"""
8880  __ne__(NonRigidMember self, NonRigidMember o) -> bool
8881  __ne__(NonRigidMember self, Particle d) -> bool
8882  """
8883  return _IMP_core.NonRigidMember___ne__(self, *args)
8884 
8885  def __le__(self, *args):
8886  r"""
8887  __le__(NonRigidMember self, NonRigidMember o) -> bool
8888  __le__(NonRigidMember self, Particle d) -> bool
8889  """
8890  return _IMP_core.NonRigidMember___le__(self, *args)
8891 
8892  def __lt__(self, *args):
8893  r"""
8894  __lt__(NonRigidMember self, NonRigidMember o) -> bool
8895  __lt__(NonRigidMember self, Particle d) -> bool
8896  """
8897  return _IMP_core.NonRigidMember___lt__(self, *args)
8898 
8899  def __ge__(self, *args):
8900  r"""
8901  __ge__(NonRigidMember self, NonRigidMember o) -> bool
8902  __ge__(NonRigidMember self, Particle d) -> bool
8903  """
8904  return _IMP_core.NonRigidMember___ge__(self, *args)
8905 
8906  def __gt__(self, *args):
8907  r"""
8908  __gt__(NonRigidMember self, NonRigidMember o) -> bool
8909  __gt__(NonRigidMember self, Particle d) -> bool
8910  """
8911  return _IMP_core.NonRigidMember___gt__(self, *args)
8912 
8913  def __hash__(self):
8914  r"""__hash__(NonRigidMember self) -> std::size_t"""
8915  return _IMP_core.NonRigidMember___hash__(self)
8916 
8917  def __str__(self):
8918  r"""__str__(NonRigidMember self) -> std::string"""
8919  return _IMP_core.NonRigidMember___str__(self)
8920 
8921  def __repr__(self):
8922  r"""__repr__(NonRigidMember self) -> std::string"""
8923  return _IMP_core.NonRigidMember___repr__(self)
8924 
8925  def _get_as_binary(self):
8926  r"""_get_as_binary(NonRigidMember self) -> PyObject *"""
8927  return _IMP_core.NonRigidMember__get_as_binary(self)
8928 
8929  def _set_from_binary(self, p):
8930  r"""_set_from_binary(NonRigidMember self, PyObject * p)"""
8931  return _IMP_core.NonRigidMember__set_from_binary(self, p)
8932 
8933  def __getstate__(self):
8934  p = self._get_as_binary()
8935  if len(self.__dict__) > 1:
8936  d = self.__dict__.copy()
8937  del d['this']
8938  p = (d, p)
8939  return p
8940 
8941  def __setstate__(self, p):
8942  if not hasattr(self, 'this'):
8943  self.__init__()
8944  if isinstance(p, tuple):
8945  d, p = p
8946  self.__dict__.update(d)
8947  return self._set_from_binary(p)
8948 
8949 
8950 # Register NonRigidMember in _IMP_core:
8951 _IMP_core.NonRigidMember_swigregister(NonRigidMember)
8952 class RigidMembersRefiner(IMP.Refiner):
8953  r"""Proxy of C++ IMP::core::RigidMembersRefiner class."""
8954 
8955  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8956 
8957  def __init__(self, *args):
8958  r"""__init__(RigidMembersRefiner self, std::string name="RigidMembersRefiner%d") -> RigidMembersRefiner"""
8959  _IMP_core.RigidMembersRefiner_swiginit(self, _IMP_core.new_RigidMembersRefiner(*args))
8960 
8961  def do_get_inputs(self, m, pis):
8962  r"""do_get_inputs(RigidMembersRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
8963  return _IMP_core.RigidMembersRefiner_do_get_inputs(self, m, pis)
8964 
8965  def get_version_info(self):
8966  r"""get_version_info(RigidMembersRefiner self) -> VersionInfo"""
8967  return _IMP_core.RigidMembersRefiner_get_version_info(self)
8968  __swig_destroy__ = _IMP_core.delete_RigidMembersRefiner
8969 
8970  def __str__(self):
8971  r"""__str__(RigidMembersRefiner self) -> std::string"""
8972  return _IMP_core.RigidMembersRefiner___str__(self)
8973 
8974  def __repr__(self):
8975  r"""__repr__(RigidMembersRefiner self) -> std::string"""
8976  return _IMP_core.RigidMembersRefiner___repr__(self)
8977 
8978  @staticmethod
8979  def get_from(o):
8980  return _object_cast_to_RigidMembersRefiner(o)
8981 
8982 
8983 # Register RigidMembersRefiner in _IMP_core:
8984 _IMP_core.RigidMembersRefiner_swigregister(RigidMembersRefiner)
8985 
8986 def get_rigid_members_refiner():
8987  r"""get_rigid_members_refiner() -> RigidMembersRefiner"""
8988  return _IMP_core.get_rigid_members_refiner()
8989 
8990 def transform(*args):
8991  r"""
8992  transform(XYZ a, Transformation3D tr)
8993  transform(RigidBody a, Transformation3D tr)
8994  """
8995  return _IMP_core.transform(*args)
8996 
8997 def get_initial_reference_frame(*args):
8998  r"""
8999  get_initial_reference_frame(Model m, IMP::ParticleIndexes const & pis) -> ReferenceFrame3D
9000  get_initial_reference_frame(IMP::ParticlesTemp const & ps) -> ReferenceFrame3D
9001  """
9002  return _IMP_core.get_initial_reference_frame(*args)
9003 
9004 def create_rigid_bodies(m, n, no_members=False):
9005  r"""create_rigid_bodies(Model m, unsigned int n, bool no_members=False) -> IMP::ParticlesTemp"""
9006  return _IMP_core.create_rigid_bodies(m, n, no_members)
9007 
9008 def show_rigid_body_hierarchy(*args):
9009  r"""show_rigid_body_hierarchy(RigidBody rb, TextOutput out=IMP::TextOutput(std::cout))"""
9010  return _IMP_core.show_rigid_body_hierarchy(*args)
9011 
9012 def get_root_rigid_body(m):
9013  r"""get_root_rigid_body(RigidMember m) -> ParticleIndex"""
9014  return _IMP_core.get_root_rigid_body(m)
9015 class RigidBodyHierarchyGeometry(IMP.display.SingletonGeometry):
9016  r"""Proxy of C++ IMP::core::RigidBodyHierarchyGeometry class."""
9017 
9018  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9019 
9020  def __init__(self, rb, constituents):
9021  r"""__init__(RigidBodyHierarchyGeometry self, RigidBody rb, IMP::ParticlesTemp const & constituents) -> RigidBodyHierarchyGeometry"""
9022  _IMP_core.RigidBodyHierarchyGeometry_swiginit(self, _IMP_core.new_RigidBodyHierarchyGeometry(rb, constituents))
9023 
9024  def get_version_info(self):
9025  r"""get_version_info(RigidBodyHierarchyGeometry self) -> VersionInfo"""
9026  return _IMP_core.RigidBodyHierarchyGeometry_get_version_info(self)
9027  __swig_destroy__ = _IMP_core.delete_RigidBodyHierarchyGeometry
9028 
9029  def __str__(self):
9030  r"""__str__(RigidBodyHierarchyGeometry self) -> std::string"""
9031  return _IMP_core.RigidBodyHierarchyGeometry___str__(self)
9032 
9033  def __repr__(self):
9034  r"""__repr__(RigidBodyHierarchyGeometry self) -> std::string"""
9035  return _IMP_core.RigidBodyHierarchyGeometry___repr__(self)
9036 
9037  @staticmethod
9038  def get_from(o):
9039  return _object_cast_to_RigidBodyHierarchyGeometry(o)
9040 
9041 
9042 # Register RigidBodyHierarchyGeometry in _IMP_core:
9043 _IMP_core.RigidBodyHierarchyGeometry_swigregister(RigidBodyHierarchyGeometry)
9044 class RigidBodyDerivativeGeometry(IMP.display.SingletonGeometry):
9045  r"""Proxy of C++ IMP::core::RigidBodyDerivativeGeometry class."""
9046 
9047  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9048 
9049  def __init__(self, *args):
9050  r"""
9051  __init__(RigidBodyDerivativeGeometry self, Particle p) -> RigidBodyDerivativeGeometry
9052  __init__(RigidBodyDerivativeGeometry self, RigidBody d) -> RigidBodyDerivativeGeometry
9053  """
9054  _IMP_core.RigidBodyDerivativeGeometry_swiginit(self, _IMP_core.new_RigidBodyDerivativeGeometry(*args))
9055 
9056  def get_version_info(self):
9057  r"""get_version_info(RigidBodyDerivativeGeometry self) -> VersionInfo"""
9058  return _IMP_core.RigidBodyDerivativeGeometry_get_version_info(self)
9059  __swig_destroy__ = _IMP_core.delete_RigidBodyDerivativeGeometry
9060 
9061  def __str__(self):
9062  r"""__str__(RigidBodyDerivativeGeometry self) -> std::string"""
9063  return _IMP_core.RigidBodyDerivativeGeometry___str__(self)
9064 
9065  def __repr__(self):
9066  r"""__repr__(RigidBodyDerivativeGeometry self) -> std::string"""
9067  return _IMP_core.RigidBodyDerivativeGeometry___repr__(self)
9068 
9069  @staticmethod
9070  def get_from(o):
9071  return _object_cast_to_RigidBodyDerivativeGeometry(o)
9072 
9073 
9074 # Register RigidBodyDerivativeGeometry in _IMP_core:
9075 _IMP_core.RigidBodyDerivativeGeometry_swigregister(RigidBodyDerivativeGeometry)
9076 class RigidBodyDerivativesGeometry(IMP.display.SingletonsGeometry):
9077  r"""Proxy of C++ IMP::core::RigidBodyDerivativesGeometry class."""
9078 
9079  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9080 
9081  def __init__(self, sc):
9082  r"""__init__(RigidBodyDerivativesGeometry self, SingletonContainer sc) -> RigidBodyDerivativesGeometry"""
9083  _IMP_core.RigidBodyDerivativesGeometry_swiginit(self, _IMP_core.new_RigidBodyDerivativesGeometry(sc))
9084 
9085  def get_version_info(self):
9086  r"""get_version_info(RigidBodyDerivativesGeometry self) -> VersionInfo"""
9087  return _IMP_core.RigidBodyDerivativesGeometry_get_version_info(self)
9088  __swig_destroy__ = _IMP_core.delete_RigidBodyDerivativesGeometry
9089 
9090  def __str__(self):
9091  r"""__str__(RigidBodyDerivativesGeometry self) -> std::string"""
9092  return _IMP_core.RigidBodyDerivativesGeometry___str__(self)
9093 
9094  def __repr__(self):
9095  r"""__repr__(RigidBodyDerivativesGeometry self) -> std::string"""
9096  return _IMP_core.RigidBodyDerivativesGeometry___repr__(self)
9097 
9098  @staticmethod
9099  def get_from(o):
9100  return _object_cast_to_RigidBodyDerivativesGeometry(o)
9101 
9102 
9103 # Register RigidBodyDerivativesGeometry in _IMP_core:
9104 _IMP_core.RigidBodyDerivativesGeometry_swigregister(RigidBodyDerivativesGeometry)
9105 class RigidBodyFrameGeometry(IMP.display.SingletonGeometry):
9106  r"""Proxy of C++ IMP::core::RigidBodyFrameGeometry class."""
9107 
9108  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9109 
9110  def __init__(self, *args):
9111  r"""
9112  __init__(RigidBodyFrameGeometry self, Particle p) -> RigidBodyFrameGeometry
9113  __init__(RigidBodyFrameGeometry self, RigidBody d) -> RigidBodyFrameGeometry
9114  """
9115  _IMP_core.RigidBodyFrameGeometry_swiginit(self, _IMP_core.new_RigidBodyFrameGeometry(*args))
9116 
9117  def get_version_info(self):
9118  r"""get_version_info(RigidBodyFrameGeometry self) -> VersionInfo"""
9119  return _IMP_core.RigidBodyFrameGeometry_get_version_info(self)
9120  __swig_destroy__ = _IMP_core.delete_RigidBodyFrameGeometry
9121 
9122  def __str__(self):
9123  r"""__str__(RigidBodyFrameGeometry self) -> std::string"""
9124  return _IMP_core.RigidBodyFrameGeometry___str__(self)
9125 
9126  def __repr__(self):
9127  r"""__repr__(RigidBodyFrameGeometry self) -> std::string"""
9128  return _IMP_core.RigidBodyFrameGeometry___repr__(self)
9129 
9130  @staticmethod
9131  def get_from(o):
9132  return _object_cast_to_RigidBodyFrameGeometry(o)
9133 
9134 
9135 # Register RigidBodyFrameGeometry in _IMP_core:
9136 _IMP_core.RigidBodyFrameGeometry_swigregister(RigidBodyFrameGeometry)
9137 class RigidBodyFramesGeometry(IMP.display.SingletonsGeometry):
9138  r"""Proxy of C++ IMP::core::RigidBodyFramesGeometry class."""
9139 
9140  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9141 
9142  def __init__(self, sc):
9143  r"""__init__(RigidBodyFramesGeometry self, SingletonContainer sc) -> RigidBodyFramesGeometry"""
9144  _IMP_core.RigidBodyFramesGeometry_swiginit(self, _IMP_core.new_RigidBodyFramesGeometry(sc))
9145 
9146  def get_version_info(self):
9147  r"""get_version_info(RigidBodyFramesGeometry self) -> VersionInfo"""
9148  return _IMP_core.RigidBodyFramesGeometry_get_version_info(self)
9149  __swig_destroy__ = _IMP_core.delete_RigidBodyFramesGeometry
9150 
9151  def __str__(self):
9152  r"""__str__(RigidBodyFramesGeometry self) -> std::string"""
9153  return _IMP_core.RigidBodyFramesGeometry___str__(self)
9154 
9155  def __repr__(self):
9156  r"""__repr__(RigidBodyFramesGeometry self) -> std::string"""
9157  return _IMP_core.RigidBodyFramesGeometry___repr__(self)
9158 
9159  @staticmethod
9160  def get_from(o):
9161  return _object_cast_to_RigidBodyFramesGeometry(o)
9162 
9163 
9164 # Register RigidBodyFramesGeometry in _IMP_core:
9165 _IMP_core.RigidBodyFramesGeometry_swigregister(RigidBodyFramesGeometry)
9166 class RigidBodyTorque(IMP.display.SegmentGeometry):
9167  r"""Proxy of C++ IMP::core::RigidBodyTorque class."""
9168 
9169  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9170 
9171  def __init__(self, p):
9172  r"""__init__(RigidBodyTorque self, Particle p) -> RigidBodyTorque"""
9173  _IMP_core.RigidBodyTorque_swiginit(self, _IMP_core.new_RigidBodyTorque(p))
9174 
9175  def __str__(self):
9176  r"""__str__(RigidBodyTorque self) -> std::string"""
9177  return _IMP_core.RigidBodyTorque___str__(self)
9178 
9179  def __repr__(self):
9180  r"""__repr__(RigidBodyTorque self) -> std::string"""
9181  return _IMP_core.RigidBodyTorque___repr__(self)
9182 
9183  @staticmethod
9184  def get_from(o):
9185  return _object_cast_to_RigidBodyTorque(o)
9186 
9187  __swig_destroy__ = _IMP_core.delete_RigidBodyTorque
9188 
9189 # Register RigidBodyTorque in _IMP_core:
9190 _IMP_core.RigidBodyTorque_swigregister(RigidBodyTorque)
9191 class NearestNeighborsClosePairsFinder(ClosePairsFinder):
9192  r"""Proxy of C++ IMP::core::NearestNeighborsClosePairsFinder class."""
9193 
9194  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9195 
9196  def __init__(self):
9197  r"""__init__(NearestNeighborsClosePairsFinder self) -> NearestNeighborsClosePairsFinder"""
9198  _IMP_core.NearestNeighborsClosePairsFinder_swiginit(self, _IMP_core.new_NearestNeighborsClosePairsFinder())
9199 
9200  def get_close_pairs(self, *args):
9201  r"""
9202  get_close_pairs(NearestNeighborsClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
9203  get_close_pairs(NearestNeighborsClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bas, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
9204  get_close_pairs(NearestNeighborsClosePairsFinder self, Model m, IMP::ParticleIndexes const & pc) -> IMP::ParticleIndexPairs
9205  get_close_pairs(NearestNeighborsClosePairsFinder self, Model m, IMP::ParticleIndexes const & pca, IMP::ParticleIndexes const & pcb) -> IMP::ParticleIndexPairs
9206  """
9207  return _IMP_core.NearestNeighborsClosePairsFinder_get_close_pairs(self, *args)
9208 
9209  def do_get_inputs(self, m, pis):
9210  r"""do_get_inputs(NearestNeighborsClosePairsFinder self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9211  return _IMP_core.NearestNeighborsClosePairsFinder_do_get_inputs(self, m, pis)
9212 
9213  def get_version_info(self):
9214  r"""get_version_info(NearestNeighborsClosePairsFinder self) -> VersionInfo"""
9215  return _IMP_core.NearestNeighborsClosePairsFinder_get_version_info(self)
9216  __swig_destroy__ = _IMP_core.delete_NearestNeighborsClosePairsFinder
9217 
9218  def __str__(self):
9219  r"""__str__(NearestNeighborsClosePairsFinder self) -> std::string"""
9220  return _IMP_core.NearestNeighborsClosePairsFinder___str__(self)
9221 
9222  def __repr__(self):
9223  r"""__repr__(NearestNeighborsClosePairsFinder self) -> std::string"""
9224  return _IMP_core.NearestNeighborsClosePairsFinder___repr__(self)
9225 
9226  @staticmethod
9227  def get_from(o):
9228  return _object_cast_to_NearestNeighborsClosePairsFinder(o)
9229 
9230 
9231 # Register NearestNeighborsClosePairsFinder in _IMP_core:
9232 _IMP_core.NearestNeighborsClosePairsFinder_swigregister(NearestNeighborsClosePairsFinder)
9233 class RestraintsScoringFunction(IMP.ScoringFunction):
9234  r"""Proxy of C++ IMP::core::RestraintsScoringFunction class."""
9235 
9236  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9237 
9238  def __init__(self, *args):
9239  r"""
9240  __init__(RestraintsScoringFunction self, _RestraintsAdaptor rs, double weight=1.0, double max=NO_MAX, std::string name="RestraintsScoringFunction%1%") -> RestraintsScoringFunction
9241  __init__(RestraintsScoringFunction self, _RestraintsAdaptor rs, std::string name) -> RestraintsScoringFunction
9242  __init__(RestraintsScoringFunction self) -> RestraintsScoringFunction
9243  """
9244  _IMP_core.RestraintsScoringFunction_swiginit(self, _IMP_core.new_RestraintsScoringFunction(*args))
9245 
9246  def do_add_score_and_derivatives(self, sa, ss):
9247  r"""do_add_score_and_derivatives(RestraintsScoringFunction self, ScoreAccumulator sa, IMP::ScoreStatesTemp const & ss)"""
9248  return _IMP_core.RestraintsScoringFunction_do_add_score_and_derivatives(self, sa, ss)
9249 
9250  def do_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis, ss):
9251  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)"""
9252  return _IMP_core.RestraintsScoringFunction_do_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis, ss)
9253 
9254  def do_get_inputs(self):
9255  r"""do_get_inputs(RestraintsScoringFunction self) -> IMP::ModelObjectsTemp"""
9256  return _IMP_core.RestraintsScoringFunction_do_get_inputs(self)
9257 
9258  def get_restraints(self):
9259  r"""get_restraints(RestraintsScoringFunction self) -> IMP::Restraints"""
9260  return _IMP_core.RestraintsScoringFunction_get_restraints(self)
9261 
9262  def set_restraints(self, d):
9263  r"""set_restraints(RestraintsScoringFunction self, IMP::Restraints const & d)"""
9264  return _IMP_core.RestraintsScoringFunction_set_restraints(self, d)
9265 
9266  def get_number_of_restraints(self):
9267  r"""get_number_of_restraints(RestraintsScoringFunction self) -> unsigned int"""
9268  return _IMP_core.RestraintsScoringFunction_get_number_of_restraints(self)
9269 
9270  def clear_restraints(self):
9271  r"""clear_restraints(RestraintsScoringFunction self)"""
9272  return _IMP_core.RestraintsScoringFunction_clear_restraints(self)
9273 
9274  def get_restraint(self, i):
9275  r"""get_restraint(RestraintsScoringFunction self, unsigned int i) -> Restraint"""
9276  return _IMP_core.RestraintsScoringFunction_get_restraint(self, i)
9277 
9278  def erase_restraint(self, i):
9279  r"""erase_restraint(RestraintsScoringFunction self, unsigned int i)"""
9280  return _IMP_core.RestraintsScoringFunction_erase_restraint(self, i)
9281 
9282  def add_restraint(self, d):
9283  r"""add_restraint(RestraintsScoringFunction self, Restraint d) -> unsigned int"""
9284  return _IMP_core.RestraintsScoringFunction_add_restraint(self, d)
9285 
9286  def add_restraints(self, d):
9287  r"""add_restraints(RestraintsScoringFunction self, IMP::Restraints const & d)"""
9288  return _IMP_core.RestraintsScoringFunction_add_restraints(self, d)
9289 
9290  def _python_index_restraint(self, r, start, stop):
9291  r"""_python_index_restraint(RestraintsScoringFunction self, Restraint r, unsigned int start, unsigned int stop) -> unsigned int"""
9292  return _IMP_core.RestraintsScoringFunction__python_index_restraint(self, r, start, stop)
9293  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)
9294  def __set_restraints(self, obj): IMP._list_util.set_varlist(self.restraints, obj)
9295  def __del_restraints(self): IMP._list_util.del_varlist(self.restraints)
9296  restraints = property(__get_restraints, __set_restraints, __del_restraints, doc="List of ##Restraints")
9297 
9298  def get_version_info(self):
9299  r"""get_version_info(RestraintsScoringFunction self) -> VersionInfo"""
9300  return _IMP_core.RestraintsScoringFunction_get_version_info(self)
9301  __swig_destroy__ = _IMP_core.delete_RestraintsScoringFunction
9302 
9303  def __str__(self):
9304  r"""__str__(RestraintsScoringFunction self) -> std::string"""
9305  return _IMP_core.RestraintsScoringFunction___str__(self)
9306 
9307  def __repr__(self):
9308  r"""__repr__(RestraintsScoringFunction self) -> std::string"""
9309  return _IMP_core.RestraintsScoringFunction___repr__(self)
9310 
9311  @staticmethod
9312  def get_from(o):
9313  return _object_cast_to_RestraintsScoringFunction(o)
9314 
9315 
9316  def _get_as_binary(self):
9317  r"""_get_as_binary(RestraintsScoringFunction self) -> PyObject *"""
9318  return _IMP_core.RestraintsScoringFunction__get_as_binary(self)
9319 
9320  def _set_from_binary(self, p):
9321  r"""_set_from_binary(RestraintsScoringFunction self, PyObject * p)"""
9322  return _IMP_core.RestraintsScoringFunction__set_from_binary(self, p)
9323 
9324  def __getstate__(self):
9325  p = self._get_as_binary()
9326  if len(self.__dict__) > 1:
9327  d = self.__dict__.copy()
9328  del d['this']
9329  p = (d, p)
9330  return p
9331 
9332  def __setstate__(self, p):
9333  if not hasattr(self, 'this'):
9334  self.__init__()
9335  if isinstance(p, tuple):
9336  d, p = p
9337  self.__dict__.update(d)
9338  return self._set_from_binary(p)
9339 
9340 
9341  def _get_jax(self):
9342  import IMP._jax_util
9343  jis = [r.get_derived_object()._get_jax() for r in self.restraints]
9344  funcs = [j.score_func for j in jis]
9345  keys = frozenset(x for j in jis for x in j._keys)
9346  def jax_sf(jm):
9347  return sum(f(jm) for f in funcs)
9348  return IMP._jax_util.JAXRestraintInfo(
9349  m=self.get_model(), score_func=jax_sf, weight=1.0, keys=keys)
9350 
9351 
9352 # Register RestraintsScoringFunction in _IMP_core:
9353 _IMP_core.RestraintsScoringFunction_swigregister(RestraintsScoringFunction)
9354 class RigidClosePairsFinder(ClosePairsFinder):
9355  r"""Proxy of C++ IMP::core::RigidClosePairsFinder class."""
9356 
9357  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9358 
9359  def __init__(self, cpf=None):
9360  r"""__init__(RigidClosePairsFinder self, ClosePairsFinder cpf=None) -> RigidClosePairsFinder"""
9361  _IMP_core.RigidClosePairsFinder_swiginit(self, _IMP_core.new_RigidClosePairsFinder(cpf))
9362 
9363  def do_get_inputs(self, m, pis):
9364  r"""do_get_inputs(RigidClosePairsFinder self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9365  return _IMP_core.RigidClosePairsFinder_do_get_inputs(self, m, pis)
9366 
9367  def get_close_pairs(self, *args):
9368  r"""
9369  get_close_pairs(RigidClosePairsFinder self, Model m, ParticleIndex a, ParticleIndex b, IMP::ParticleIndexes const & pa, IMP::ParticleIndexes const & pb) -> IMP::ParticleIndexPairs
9370  get_close_pairs(RigidClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
9371  get_close_pairs(RigidClosePairsFinder self, IMP::algebra::BoundingBox3Ds const & bas, IMP::algebra::BoundingBox3Ds const & bbs) -> IMP::IntPairs
9372  get_close_pairs(RigidClosePairsFinder self, Model m, IMP::ParticleIndexes const & pc) -> IMP::ParticleIndexPairs
9373  get_close_pairs(RigidClosePairsFinder self, Model m, IMP::ParticleIndexes const & pca, IMP::ParticleIndexes const & pcb) -> IMP::ParticleIndexPairs
9374  """
9375  return _IMP_core.RigidClosePairsFinder_get_close_pairs(self, *args)
9376 
9377  def get_version_info(self):
9378  r"""get_version_info(RigidClosePairsFinder self) -> VersionInfo"""
9379  return _IMP_core.RigidClosePairsFinder_get_version_info(self)
9380  __swig_destroy__ = _IMP_core.delete_RigidClosePairsFinder
9381 
9382  def __str__(self):
9383  r"""__str__(RigidClosePairsFinder self) -> std::string"""
9384  return _IMP_core.RigidClosePairsFinder___str__(self)
9385 
9386  def __repr__(self):
9387  r"""__repr__(RigidClosePairsFinder self) -> std::string"""
9388  return _IMP_core.RigidClosePairsFinder___repr__(self)
9389 
9390  @staticmethod
9391  def get_from(o):
9392  return _object_cast_to_RigidClosePairsFinder(o)
9393 
9394 
9395  def _get_as_binary(self):
9396  r"""_get_as_binary(RigidClosePairsFinder self) -> PyObject *"""
9397  return _IMP_core.RigidClosePairsFinder__get_as_binary(self)
9398 
9399  def _set_from_binary(self, p):
9400  r"""_set_from_binary(RigidClosePairsFinder self, PyObject * p)"""
9401  return _IMP_core.RigidClosePairsFinder__set_from_binary(self, p)
9402 
9403  def __getstate__(self):
9404  p = self._get_as_binary()
9405  if len(self.__dict__) > 1:
9406  d = self.__dict__.copy()
9407  del d['this']
9408  p = (d, p)
9409  return p
9410 
9411  def __setstate__(self, p):
9412  if not hasattr(self, 'this'):
9413  self.__init__()
9414  if isinstance(p, tuple):
9415  d, p = p
9416  self.__dict__.update(d)
9417  return self._set_from_binary(p)
9418 
9419 
9420 # Register RigidClosePairsFinder in _IMP_core:
9421 _IMP_core.RigidClosePairsFinder_swigregister(RigidClosePairsFinder)
9422 class _SphereDistancePairScore(IMP.PairScore):
9423  r"""Proxy of C++ IMP::core::SphereDistancePairScore class."""
9424 
9425  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9426  __repr__ = _swig_repr
9427 
9428  def __init__(self, *args):
9429  r"""
9430  SphereDistancePairScore(UnaryFunction uf, std::string name="SphereDistancePairScore%1%") -> _SphereDistancePairScore
9431  __init__(_SphereDistancePairScore self) -> _SphereDistancePairScore
9432  """
9433  _IMP_core._SphereDistancePairScore_swiginit(self, _IMP_core.new__SphereDistancePairScore(*args))
9434 
9435  def do_get_inputs(self, m, pis):
9436  r"""do_get_inputs(_SphereDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9437  return _IMP_core._SphereDistancePairScore_do_get_inputs(self, m, pis)
9438 
9439  def get_version_info(self):
9440  r"""get_version_info(_SphereDistancePairScore self) -> VersionInfo"""
9441  return _IMP_core._SphereDistancePairScore_get_version_info(self)
9442  __swig_destroy__ = _IMP_core.delete__SphereDistancePairScore
9443 
9444  @staticmethod
9445  def get_from(o):
9446  return _object_cast_to__SphereDistancePairScore(o)
9447 
9448 
9449  def _get_as_binary(self):
9450  r"""_get_as_binary(_SphereDistancePairScore self) -> PyObject *"""
9451  return _IMP_core._SphereDistancePairScore__get_as_binary(self)
9452 
9453  def _set_from_binary(self, p):
9454  r"""_set_from_binary(_SphereDistancePairScore self, PyObject * p)"""
9455  return _IMP_core._SphereDistancePairScore__set_from_binary(self, p)
9456 
9457  def __getstate__(self):
9458  p = self._get_as_binary()
9459  if len(self.__dict__) > 1:
9460  d = self.__dict__.copy()
9461  del d['this']
9462  p = (d, p)
9463  return p
9464 
9465  def __setstate__(self, p):
9466  if not hasattr(self, 'this'):
9467  self.__init__()
9468  if isinstance(p, tuple):
9469  d, p = p
9470  self.__dict__.update(d)
9471  return self._set_from_binary(p)
9472 
9473 
9474 # Register _SphereDistancePairScore in _IMP_core:
9475 _IMP_core._SphereDistancePairScore_swigregister(_SphereDistancePairScore)
9476 class HarmonicUpperBoundSphereDistancePairScore(IMP.PairScore):
9477  r"""Proxy of C++ IMP::core::HarmonicUpperBoundSphereDistancePairScore class."""
9478 
9479  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9480 
9481  def __init__(self, *args):
9482  r"""
9483  __init__(HarmonicUpperBoundSphereDistancePairScore self, double x0, double k, std::string name="HarmonicUpperBoundSphereDistancePairScore%1%") -> HarmonicUpperBoundSphereDistancePairScore
9484  __init__(HarmonicUpperBoundSphereDistancePairScore self) -> HarmonicUpperBoundSphereDistancePairScore
9485  """
9486  _IMP_core.HarmonicUpperBoundSphereDistancePairScore_swiginit(self, _IMP_core.new_HarmonicUpperBoundSphereDistancePairScore(*args))
9487 
9488  def do_get_inputs(self, m, pis):
9489  r"""do_get_inputs(HarmonicUpperBoundSphereDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9490  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore_do_get_inputs(self, m, pis)
9491 
9492  def get_version_info(self):
9493  r"""get_version_info(HarmonicUpperBoundSphereDistancePairScore self) -> VersionInfo"""
9494  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore_get_version_info(self)
9495  __swig_destroy__ = _IMP_core.delete_HarmonicUpperBoundSphereDistancePairScore
9496 
9497  def __str__(self):
9498  r"""__str__(HarmonicUpperBoundSphereDistancePairScore self) -> std::string"""
9499  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore___str__(self)
9500 
9501  def __repr__(self):
9502  r"""__repr__(HarmonicUpperBoundSphereDistancePairScore self) -> std::string"""
9503  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore___repr__(self)
9504 
9505  @staticmethod
9506  def get_from(o):
9507  return _object_cast_to_HarmonicUpperBoundSphereDistancePairScore(o)
9508 
9509 
9510  def _get_as_binary(self):
9511  r"""_get_as_binary(HarmonicUpperBoundSphereDistancePairScore self) -> PyObject *"""
9512  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore__get_as_binary(self)
9513 
9514  def _set_from_binary(self, p):
9515  r"""_set_from_binary(HarmonicUpperBoundSphereDistancePairScore self, PyObject * p)"""
9516  return _IMP_core.HarmonicUpperBoundSphereDistancePairScore__set_from_binary(self, p)
9517 
9518  def __getstate__(self):
9519  p = self._get_as_binary()
9520  if len(self.__dict__) > 1:
9521  d = self.__dict__.copy()
9522  del d['this']
9523  p = (d, p)
9524  return p
9525 
9526  def __setstate__(self, p):
9527  if not hasattr(self, 'this'):
9528  self.__init__()
9529  if isinstance(p, tuple):
9530  d, p = p
9531  self.__dict__.update(d)
9532  return self._set_from_binary(p)
9533 
9534 
9535 # Register HarmonicUpperBoundSphereDistancePairScore in _IMP_core:
9536 _IMP_core.HarmonicUpperBoundSphereDistancePairScore_swigregister(HarmonicUpperBoundSphereDistancePairScore)
9537 class HarmonicUpperBoundSphereDiameterPairScore(IMP.PairScore):
9538  r"""Proxy of C++ IMP::core::HarmonicUpperBoundSphereDiameterPairScore class."""
9539 
9540  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9541 
9542  def __init__(self, d0, k):
9543  r"""__init__(HarmonicUpperBoundSphereDiameterPairScore self, double d0, double k) -> HarmonicUpperBoundSphereDiameterPairScore"""
9544  _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_swiginit(self, _IMP_core.new_HarmonicUpperBoundSphereDiameterPairScore(d0, k))
9545 
9546  def get_rest_length(self):
9547  r"""get_rest_length(HarmonicUpperBoundSphereDiameterPairScore self) -> double"""
9548  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_get_rest_length(self)
9549 
9550  def get_stiffness(self):
9551  r"""get_stiffness(HarmonicUpperBoundSphereDiameterPairScore self) -> double"""
9552  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_get_stiffness(self)
9553 
9554  def do_get_inputs(self, m, pis):
9555  r"""do_get_inputs(HarmonicUpperBoundSphereDiameterPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9556  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_do_get_inputs(self, m, pis)
9557 
9558  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
9559  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"""
9560  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
9561 
9562  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
9563  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"""
9564  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
9565 
9566  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
9567  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"""
9568  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
9569 
9570  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
9571  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"""
9572  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
9573 
9574  def get_version_info(self):
9575  r"""get_version_info(HarmonicUpperBoundSphereDiameterPairScore self) -> VersionInfo"""
9576  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_get_version_info(self)
9577  __swig_destroy__ = _IMP_core.delete_HarmonicUpperBoundSphereDiameterPairScore
9578 
9579  def __str__(self):
9580  r"""__str__(HarmonicUpperBoundSphereDiameterPairScore self) -> std::string"""
9581  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore___str__(self)
9582 
9583  def __repr__(self):
9584  r"""__repr__(HarmonicUpperBoundSphereDiameterPairScore self) -> std::string"""
9585  return _IMP_core.HarmonicUpperBoundSphereDiameterPairScore___repr__(self)
9586 
9587  @staticmethod
9588  def get_from(o):
9589  return _object_cast_to_HarmonicUpperBoundSphereDiameterPairScore(o)
9590 
9591 
9592 # Register HarmonicUpperBoundSphereDiameterPairScore in _IMP_core:
9593 _IMP_core.HarmonicUpperBoundSphereDiameterPairScore_swigregister(HarmonicUpperBoundSphereDiameterPairScore)
9594 class HarmonicSphereDistancePairScore(IMP.PairScore):
9595  r"""Proxy of C++ IMP::core::HarmonicSphereDistancePairScore class."""
9596 
9597  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9598 
9599  def __init__(self, *args):
9600  r"""
9601  __init__(HarmonicSphereDistancePairScore self, double x0, double k, std::string name="HarmonicSphereDistancePairScore%1%") -> HarmonicSphereDistancePairScore
9602  __init__(HarmonicSphereDistancePairScore self) -> HarmonicSphereDistancePairScore
9603  """
9604  _IMP_core.HarmonicSphereDistancePairScore_swiginit(self, _IMP_core.new_HarmonicSphereDistancePairScore(*args))
9605 
9606  def do_get_inputs(self, m, pis):
9607  r"""do_get_inputs(HarmonicSphereDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9608  return _IMP_core.HarmonicSphereDistancePairScore_do_get_inputs(self, m, pis)
9609 
9610  def get_x0(self):
9611  r"""get_x0(HarmonicSphereDistancePairScore self) -> double"""
9612  return _IMP_core.HarmonicSphereDistancePairScore_get_x0(self)
9613 
9614  def get_k(self):
9615  r"""get_k(HarmonicSphereDistancePairScore self) -> double"""
9616  return _IMP_core.HarmonicSphereDistancePairScore_get_k(self)
9617 
9618  def get_version_info(self):
9619  r"""get_version_info(HarmonicSphereDistancePairScore self) -> VersionInfo"""
9620  return _IMP_core.HarmonicSphereDistancePairScore_get_version_info(self)
9621  __swig_destroy__ = _IMP_core.delete_HarmonicSphereDistancePairScore
9622 
9623  def __str__(self):
9624  r"""__str__(HarmonicSphereDistancePairScore self) -> std::string"""
9625  return _IMP_core.HarmonicSphereDistancePairScore___str__(self)
9626 
9627  def __repr__(self):
9628  r"""__repr__(HarmonicSphereDistancePairScore self) -> std::string"""
9629  return _IMP_core.HarmonicSphereDistancePairScore___repr__(self)
9630 
9631  @staticmethod
9632  def get_from(o):
9633  return _object_cast_to_HarmonicSphereDistancePairScore(o)
9634 
9635 
9636  def _get_as_binary(self):
9637  r"""_get_as_binary(HarmonicSphereDistancePairScore self) -> PyObject *"""
9638  return _IMP_core.HarmonicSphereDistancePairScore__get_as_binary(self)
9639 
9640  def _set_from_binary(self, p):
9641  r"""_set_from_binary(HarmonicSphereDistancePairScore self, PyObject * p)"""
9642  return _IMP_core.HarmonicSphereDistancePairScore__set_from_binary(self, p)
9643 
9644  def __getstate__(self):
9645  p = self._get_as_binary()
9646  if len(self.__dict__) > 1:
9647  d = self.__dict__.copy()
9648  del d['this']
9649  p = (d, p)
9650  return p
9651 
9652  def __setstate__(self, p):
9653  if not hasattr(self, 'this'):
9654  self.__init__()
9655  if isinstance(p, tuple):
9656  d, p = p
9657  self.__dict__.update(d)
9658  return self._set_from_binary(p)
9659 
9660 
9661  def _get_jax(self):
9662  import jax.numpy as jnp
9663  import functools
9664  def jax_score(jm, indexes, d, k):
9665  xyzs = jm['xyz'][indexes]
9666  rs = jm['r'][indexes]
9667  diff = xyzs[:,0] - xyzs[:,1]
9668  drs = jnp.linalg.norm(diff, axis=1) - rs.sum(axis=1)
9669  return 0.5 * k * (d - drs)**2
9670  f = functools.partial(jax_score, d=self.get_x0(), k=self.get_k())
9671  return self._wrap_jax(f)
9672 
9673 
9674 # Register HarmonicSphereDistancePairScore in _IMP_core:
9675 _IMP_core.HarmonicSphereDistancePairScore_swigregister(HarmonicSphereDistancePairScore)
9676 class NormalizedSphereDistancePairScore(IMP.PairScore):
9677  r"""Proxy of C++ IMP::core::NormalizedSphereDistancePairScore class."""
9678 
9679  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9680 
9681  def __init__(self, *args):
9682  r"""__init__(NormalizedSphereDistancePairScore self, UnaryFunction f, FloatKey radius=IMP::FloatKey("radius")) -> NormalizedSphereDistancePairScore"""
9683  _IMP_core.NormalizedSphereDistancePairScore_swiginit(self, _IMP_core.new_NormalizedSphereDistancePairScore(*args))
9684 
9685  def do_get_inputs(self, m, pis):
9686  r"""do_get_inputs(NormalizedSphereDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9687  return _IMP_core.NormalizedSphereDistancePairScore_do_get_inputs(self, m, pis)
9688 
9689  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
9690  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"""
9691  return _IMP_core.NormalizedSphereDistancePairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
9692 
9693  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
9694  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"""
9695  return _IMP_core.NormalizedSphereDistancePairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
9696 
9697  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
9698  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"""
9699  return _IMP_core.NormalizedSphereDistancePairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
9700 
9701  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
9702  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"""
9703  return _IMP_core.NormalizedSphereDistancePairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
9704 
9705  def get_version_info(self):
9706  r"""get_version_info(NormalizedSphereDistancePairScore self) -> VersionInfo"""
9707  return _IMP_core.NormalizedSphereDistancePairScore_get_version_info(self)
9708  __swig_destroy__ = _IMP_core.delete_NormalizedSphereDistancePairScore
9709 
9710  def __str__(self):
9711  r"""__str__(NormalizedSphereDistancePairScore self) -> std::string"""
9712  return _IMP_core.NormalizedSphereDistancePairScore___str__(self)
9713 
9714  def __repr__(self):
9715  r"""__repr__(NormalizedSphereDistancePairScore self) -> std::string"""
9716  return _IMP_core.NormalizedSphereDistancePairScore___repr__(self)
9717 
9718  @staticmethod
9719  def get_from(o):
9720  return _object_cast_to_NormalizedSphereDistancePairScore(o)
9721 
9722 
9723 # Register NormalizedSphereDistancePairScore in _IMP_core:
9724 _IMP_core.NormalizedSphereDistancePairScore_swigregister(NormalizedSphereDistancePairScore)
9725 class WeightedSphereDistancePairScore(IMP.PairScore):
9726  r"""Proxy of C++ IMP::core::WeightedSphereDistancePairScore class."""
9727 
9728  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9729 
9730  def __init__(self, *args):
9731  r"""__init__(WeightedSphereDistancePairScore self, UnaryFunction f, FloatKey weight, FloatKey radius=IMP::FloatKey("radius")) -> WeightedSphereDistancePairScore"""
9732  _IMP_core.WeightedSphereDistancePairScore_swiginit(self, _IMP_core.new_WeightedSphereDistancePairScore(*args))
9733 
9734  def do_get_inputs(self, m, pis):
9735  r"""do_get_inputs(WeightedSphereDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9736  return _IMP_core.WeightedSphereDistancePairScore_do_get_inputs(self, m, pis)
9737 
9738  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
9739  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"""
9740  return _IMP_core.WeightedSphereDistancePairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
9741 
9742  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
9743  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"""
9744  return _IMP_core.WeightedSphereDistancePairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
9745 
9746  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
9747  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"""
9748  return _IMP_core.WeightedSphereDistancePairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
9749 
9750  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
9751  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"""
9752  return _IMP_core.WeightedSphereDistancePairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
9753 
9754  def get_version_info(self):
9755  r"""get_version_info(WeightedSphereDistancePairScore self) -> VersionInfo"""
9756  return _IMP_core.WeightedSphereDistancePairScore_get_version_info(self)
9757  __swig_destroy__ = _IMP_core.delete_WeightedSphereDistancePairScore
9758 
9759  def __str__(self):
9760  r"""__str__(WeightedSphereDistancePairScore self) -> std::string"""
9761  return _IMP_core.WeightedSphereDistancePairScore___str__(self)
9762 
9763  def __repr__(self):
9764  r"""__repr__(WeightedSphereDistancePairScore self) -> std::string"""
9765  return _IMP_core.WeightedSphereDistancePairScore___repr__(self)
9766 
9767  @staticmethod
9768  def get_from(o):
9769  return _object_cast_to_WeightedSphereDistancePairScore(o)
9770 
9771 
9772 # Register WeightedSphereDistancePairScore in _IMP_core:
9773 _IMP_core.WeightedSphereDistancePairScore_swigregister(WeightedSphereDistancePairScore)
9774 class SoftSpherePairScore(IMP.PairScore):
9775  r"""Proxy of C++ IMP::core::SoftSpherePairScore class."""
9776 
9777  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9778 
9779  def __init__(self, *args):
9780  r"""
9781  __init__(SoftSpherePairScore self, double k, std::string name="SoftSpherePairScore%1%") -> SoftSpherePairScore
9782  __init__(SoftSpherePairScore self) -> SoftSpherePairScore
9783  """
9784  _IMP_core.SoftSpherePairScore_swiginit(self, _IMP_core.new_SoftSpherePairScore(*args))
9785 
9786  def do_get_inputs(self, m, pis):
9787  r"""do_get_inputs(SoftSpherePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9788  return _IMP_core.SoftSpherePairScore_do_get_inputs(self, m, pis)
9789 
9790  def get_version_info(self):
9791  r"""get_version_info(SoftSpherePairScore self) -> VersionInfo"""
9792  return _IMP_core.SoftSpherePairScore_get_version_info(self)
9793  __swig_destroy__ = _IMP_core.delete_SoftSpherePairScore
9794 
9795  def __str__(self):
9796  r"""__str__(SoftSpherePairScore self) -> std::string"""
9797  return _IMP_core.SoftSpherePairScore___str__(self)
9798 
9799  def __repr__(self):
9800  r"""__repr__(SoftSpherePairScore self) -> std::string"""
9801  return _IMP_core.SoftSpherePairScore___repr__(self)
9802 
9803  @staticmethod
9804  def get_from(o):
9805  return _object_cast_to_SoftSpherePairScore(o)
9806 
9807 
9808  def _get_as_binary(self):
9809  r"""_get_as_binary(SoftSpherePairScore self) -> PyObject *"""
9810  return _IMP_core.SoftSpherePairScore__get_as_binary(self)
9811 
9812  def _set_from_binary(self, p):
9813  r"""_set_from_binary(SoftSpherePairScore self, PyObject * p)"""
9814  return _IMP_core.SoftSpherePairScore__set_from_binary(self, p)
9815 
9816  def __getstate__(self):
9817  p = self._get_as_binary()
9818  if len(self.__dict__) > 1:
9819  d = self.__dict__.copy()
9820  del d['this']
9821  p = (d, p)
9822  return p
9823 
9824  def __setstate__(self, p):
9825  if not hasattr(self, 'this'):
9826  self.__init__()
9827  if isinstance(p, tuple):
9828  d, p = p
9829  self.__dict__.update(d)
9830  return self._set_from_binary(p)
9831 
9832 
9833 # Register SoftSpherePairScore in _IMP_core:
9834 _IMP_core.SoftSpherePairScore_swigregister(SoftSpherePairScore)
9835 class SurfaceDistancePairScore(IMP.PairScore):
9836  r"""Proxy of C++ IMP::core::SurfaceDistancePairScore class."""
9837 
9838  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9839 
9840  def __init__(self, *args):
9841  r"""__init__(SurfaceDistancePairScore self, UnaryFunction uf, std::string name="SurfaceDistancePairScore%1%") -> SurfaceDistancePairScore"""
9842  _IMP_core.SurfaceDistancePairScore_swiginit(self, _IMP_core.new_SurfaceDistancePairScore(*args))
9843 
9844  def do_get_inputs(self, m, pis):
9845  r"""do_get_inputs(SurfaceDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9846  return _IMP_core.SurfaceDistancePairScore_do_get_inputs(self, m, pis)
9847 
9848  def get_version_info(self):
9849  r"""get_version_info(SurfaceDistancePairScore self) -> VersionInfo"""
9850  return _IMP_core.SurfaceDistancePairScore_get_version_info(self)
9851  __swig_destroy__ = _IMP_core.delete_SurfaceDistancePairScore
9852 
9853  def __str__(self):
9854  r"""__str__(SurfaceDistancePairScore self) -> std::string"""
9855  return _IMP_core.SurfaceDistancePairScore___str__(self)
9856 
9857  def __repr__(self):
9858  r"""__repr__(SurfaceDistancePairScore self) -> std::string"""
9859  return _IMP_core.SurfaceDistancePairScore___repr__(self)
9860 
9861  @staticmethod
9862  def get_from(o):
9863  return _object_cast_to_SurfaceDistancePairScore(o)
9864 
9865 
9866 # Register SurfaceDistancePairScore in _IMP_core:
9867 _IMP_core.SurfaceDistancePairScore_swigregister(SurfaceDistancePairScore)
9868 class SurfaceHeightPairScore(IMP.PairScore):
9869  r"""Proxy of C++ IMP::core::SurfaceHeightPairScore class."""
9870 
9871  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9872 
9873  def __init__(self, *args):
9874  r"""__init__(SurfaceHeightPairScore self, UnaryFunction uf, std::string name="SurfaceHeightPairScore%1%") -> SurfaceHeightPairScore"""
9875  _IMP_core.SurfaceHeightPairScore_swiginit(self, _IMP_core.new_SurfaceHeightPairScore(*args))
9876 
9877  def do_get_inputs(self, m, pis):
9878  r"""do_get_inputs(SurfaceHeightPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9879  return _IMP_core.SurfaceHeightPairScore_do_get_inputs(self, m, pis)
9880 
9881  def get_version_info(self):
9882  r"""get_version_info(SurfaceHeightPairScore self) -> VersionInfo"""
9883  return _IMP_core.SurfaceHeightPairScore_get_version_info(self)
9884  __swig_destroy__ = _IMP_core.delete_SurfaceHeightPairScore
9885 
9886  def __str__(self):
9887  r"""__str__(SurfaceHeightPairScore self) -> std::string"""
9888  return _IMP_core.SurfaceHeightPairScore___str__(self)
9889 
9890  def __repr__(self):
9891  r"""__repr__(SurfaceHeightPairScore self) -> std::string"""
9892  return _IMP_core.SurfaceHeightPairScore___repr__(self)
9893 
9894  @staticmethod
9895  def get_from(o):
9896  return _object_cast_to_SurfaceHeightPairScore(o)
9897 
9898 
9899 # Register SurfaceHeightPairScore in _IMP_core:
9900 _IMP_core.SurfaceHeightPairScore_swigregister(SurfaceHeightPairScore)
9901 class SurfaceDepthPairScore(IMP.PairScore):
9902  r"""Proxy of C++ IMP::core::SurfaceDepthPairScore class."""
9903 
9904  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9905 
9906  def __init__(self, *args):
9907  r"""__init__(SurfaceDepthPairScore self, UnaryFunction uf, std::string name="SurfaceDepthPairScore%1%") -> SurfaceDepthPairScore"""
9908  _IMP_core.SurfaceDepthPairScore_swiginit(self, _IMP_core.new_SurfaceDepthPairScore(*args))
9909 
9910  def do_get_inputs(self, m, pis):
9911  r"""do_get_inputs(SurfaceDepthPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9912  return _IMP_core.SurfaceDepthPairScore_do_get_inputs(self, m, pis)
9913 
9914  def get_version_info(self):
9915  r"""get_version_info(SurfaceDepthPairScore self) -> VersionInfo"""
9916  return _IMP_core.SurfaceDepthPairScore_get_version_info(self)
9917  __swig_destroy__ = _IMP_core.delete_SurfaceDepthPairScore
9918 
9919  def __str__(self):
9920  r"""__str__(SurfaceDepthPairScore self) -> std::string"""
9921  return _IMP_core.SurfaceDepthPairScore___str__(self)
9922 
9923  def __repr__(self):
9924  r"""__repr__(SurfaceDepthPairScore self) -> std::string"""
9925  return _IMP_core.SurfaceDepthPairScore___repr__(self)
9926 
9927  @staticmethod
9928  def get_from(o):
9929  return _object_cast_to_SurfaceDepthPairScore(o)
9930 
9931 
9932 # Register SurfaceDepthPairScore in _IMP_core:
9933 _IMP_core.SurfaceDepthPairScore_swigregister(SurfaceDepthPairScore)
9934 class HarmonicSurfaceDistancePairScore(IMP.PairScore):
9935  r"""Proxy of C++ IMP::core::HarmonicSurfaceDistancePairScore class."""
9936 
9937  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9938 
9939  def __init__(self, *args):
9940  r"""__init__(HarmonicSurfaceDistancePairScore self, double x0, double k, std::string name="HarmonicSurfaceDistancePairScore%1%") -> HarmonicSurfaceDistancePairScore"""
9941  _IMP_core.HarmonicSurfaceDistancePairScore_swiginit(self, _IMP_core.new_HarmonicSurfaceDistancePairScore(*args))
9942 
9943  def do_get_inputs(self, m, pis):
9944  r"""do_get_inputs(HarmonicSurfaceDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9945  return _IMP_core.HarmonicSurfaceDistancePairScore_do_get_inputs(self, m, pis)
9946 
9947  def get_version_info(self):
9948  r"""get_version_info(HarmonicSurfaceDistancePairScore self) -> VersionInfo"""
9949  return _IMP_core.HarmonicSurfaceDistancePairScore_get_version_info(self)
9950  __swig_destroy__ = _IMP_core.delete_HarmonicSurfaceDistancePairScore
9951 
9952  def __str__(self):
9953  r"""__str__(HarmonicSurfaceDistancePairScore self) -> std::string"""
9954  return _IMP_core.HarmonicSurfaceDistancePairScore___str__(self)
9955 
9956  def __repr__(self):
9957  r"""__repr__(HarmonicSurfaceDistancePairScore self) -> std::string"""
9958  return _IMP_core.HarmonicSurfaceDistancePairScore___repr__(self)
9959 
9960  @staticmethod
9961  def get_from(o):
9962  return _object_cast_to_HarmonicSurfaceDistancePairScore(o)
9963 
9964 
9965 # Register HarmonicSurfaceDistancePairScore in _IMP_core:
9966 _IMP_core.HarmonicSurfaceDistancePairScore_swigregister(HarmonicSurfaceDistancePairScore)
9967 class HarmonicSurfaceHeightPairScore(IMP.PairScore):
9968  r"""Proxy of C++ IMP::core::HarmonicSurfaceHeightPairScore class."""
9969 
9970  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9971 
9972  def __init__(self, *args):
9973  r"""__init__(HarmonicSurfaceHeightPairScore self, double x0, double k, std::string name="HarmonicSurfaceHeightPairScore%1%") -> HarmonicSurfaceHeightPairScore"""
9974  _IMP_core.HarmonicSurfaceHeightPairScore_swiginit(self, _IMP_core.new_HarmonicSurfaceHeightPairScore(*args))
9975 
9976  def do_get_inputs(self, m, pis):
9977  r"""do_get_inputs(HarmonicSurfaceHeightPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
9978  return _IMP_core.HarmonicSurfaceHeightPairScore_do_get_inputs(self, m, pis)
9979 
9980  def get_version_info(self):
9981  r"""get_version_info(HarmonicSurfaceHeightPairScore self) -> VersionInfo"""
9982  return _IMP_core.HarmonicSurfaceHeightPairScore_get_version_info(self)
9983  __swig_destroy__ = _IMP_core.delete_HarmonicSurfaceHeightPairScore
9984 
9985  def __str__(self):
9986  r"""__str__(HarmonicSurfaceHeightPairScore self) -> std::string"""
9987  return _IMP_core.HarmonicSurfaceHeightPairScore___str__(self)
9988 
9989  def __repr__(self):
9990  r"""__repr__(HarmonicSurfaceHeightPairScore self) -> std::string"""
9991  return _IMP_core.HarmonicSurfaceHeightPairScore___repr__(self)
9992 
9993  @staticmethod
9994  def get_from(o):
9995  return _object_cast_to_HarmonicSurfaceHeightPairScore(o)
9996 
9997 
9998 # Register HarmonicSurfaceHeightPairScore in _IMP_core:
9999 _IMP_core.HarmonicSurfaceHeightPairScore_swigregister(HarmonicSurfaceHeightPairScore)
10000 class HarmonicSurfaceDepthPairScore(IMP.PairScore):
10001  r"""Proxy of C++ IMP::core::HarmonicSurfaceDepthPairScore class."""
10002 
10003  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10004 
10005  def __init__(self, *args):
10006  r"""__init__(HarmonicSurfaceDepthPairScore self, double x0, double k, std::string name="HarmonicSurfaceDepthPairScore%1%") -> HarmonicSurfaceDepthPairScore"""
10007  _IMP_core.HarmonicSurfaceDepthPairScore_swiginit(self, _IMP_core.new_HarmonicSurfaceDepthPairScore(*args))
10008 
10009  def do_get_inputs(self, m, pis):
10010  r"""do_get_inputs(HarmonicSurfaceDepthPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10011  return _IMP_core.HarmonicSurfaceDepthPairScore_do_get_inputs(self, m, pis)
10012 
10013  def get_version_info(self):
10014  r"""get_version_info(HarmonicSurfaceDepthPairScore self) -> VersionInfo"""
10015  return _IMP_core.HarmonicSurfaceDepthPairScore_get_version_info(self)
10016  __swig_destroy__ = _IMP_core.delete_HarmonicSurfaceDepthPairScore
10017 
10018  def __str__(self):
10019  r"""__str__(HarmonicSurfaceDepthPairScore self) -> std::string"""
10020  return _IMP_core.HarmonicSurfaceDepthPairScore___str__(self)
10021 
10022  def __repr__(self):
10023  r"""__repr__(HarmonicSurfaceDepthPairScore self) -> std::string"""
10024  return _IMP_core.HarmonicSurfaceDepthPairScore___repr__(self)
10025 
10026  @staticmethod
10027  def get_from(o):
10028  return _object_cast_to_HarmonicSurfaceDepthPairScore(o)
10029 
10030 
10031 # Register HarmonicSurfaceDepthPairScore in _IMP_core:
10032 _IMP_core.HarmonicSurfaceDepthPairScore_swigregister(HarmonicSurfaceDepthPairScore)
10033 class SoftSuperSurfacePairScore(IMP.PairScore):
10034  r"""Proxy of C++ IMP::core::SoftSuperSurfacePairScore class."""
10035 
10036  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10037 
10038  def __init__(self, *args):
10039  r"""__init__(SoftSuperSurfacePairScore self, double k, std::string name="SoftSuperSurfacePairScore%1%") -> SoftSuperSurfacePairScore"""
10040  _IMP_core.SoftSuperSurfacePairScore_swiginit(self, _IMP_core.new_SoftSuperSurfacePairScore(*args))
10041 
10042  def do_get_inputs(self, m, pis):
10043  r"""do_get_inputs(SoftSuperSurfacePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10044  return _IMP_core.SoftSuperSurfacePairScore_do_get_inputs(self, m, pis)
10045 
10046  def get_version_info(self):
10047  r"""get_version_info(SoftSuperSurfacePairScore self) -> VersionInfo"""
10048  return _IMP_core.SoftSuperSurfacePairScore_get_version_info(self)
10049  __swig_destroy__ = _IMP_core.delete_SoftSuperSurfacePairScore
10050 
10051  def __str__(self):
10052  r"""__str__(SoftSuperSurfacePairScore self) -> std::string"""
10053  return _IMP_core.SoftSuperSurfacePairScore___str__(self)
10054 
10055  def __repr__(self):
10056  r"""__repr__(SoftSuperSurfacePairScore self) -> std::string"""
10057  return _IMP_core.SoftSuperSurfacePairScore___repr__(self)
10058 
10059  @staticmethod
10060  def get_from(o):
10061  return _object_cast_to_SoftSuperSurfacePairScore(o)
10062 
10063 
10064 # Register SoftSuperSurfacePairScore in _IMP_core:
10065 _IMP_core.SoftSuperSurfacePairScore_swigregister(SoftSuperSurfacePairScore)
10066 class SoftSubSurfacePairScore(IMP.PairScore):
10067  r"""Proxy of C++ IMP::core::SoftSubSurfacePairScore class."""
10068 
10069  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10070 
10071  def __init__(self, *args):
10072  r"""__init__(SoftSubSurfacePairScore self, double k, std::string name="SoftSubSurfacePairScore%1%") -> SoftSubSurfacePairScore"""
10073  _IMP_core.SoftSubSurfacePairScore_swiginit(self, _IMP_core.new_SoftSubSurfacePairScore(*args))
10074 
10075  def do_get_inputs(self, m, pis):
10076  r"""do_get_inputs(SoftSubSurfacePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10077  return _IMP_core.SoftSubSurfacePairScore_do_get_inputs(self, m, pis)
10078 
10079  def get_version_info(self):
10080  r"""get_version_info(SoftSubSurfacePairScore self) -> VersionInfo"""
10081  return _IMP_core.SoftSubSurfacePairScore_get_version_info(self)
10082  __swig_destroy__ = _IMP_core.delete_SoftSubSurfacePairScore
10083 
10084  def __str__(self):
10085  r"""__str__(SoftSubSurfacePairScore self) -> std::string"""
10086  return _IMP_core.SoftSubSurfacePairScore___str__(self)
10087 
10088  def __repr__(self):
10089  r"""__repr__(SoftSubSurfacePairScore self) -> std::string"""
10090  return _IMP_core.SoftSubSurfacePairScore___repr__(self)
10091 
10092  @staticmethod
10093  def get_from(o):
10094  return _object_cast_to_SoftSubSurfacePairScore(o)
10095 
10096 
10097 # Register SoftSubSurfacePairScore in _IMP_core:
10098 _IMP_core.SoftSubSurfacePairScore_swigregister(SoftSubSurfacePairScore)
10099 class SurfaceTetheredChain(IMP.UnaryFunction):
10100  r"""Proxy of C++ IMP::core::SurfaceTetheredChain class."""
10101 
10102  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10103 
10104  def __init__(self, link_num, link_length):
10105  r"""__init__(SurfaceTetheredChain self, int link_num, double link_length) -> SurfaceTetheredChain"""
10106  _IMP_core.SurfaceTetheredChain_swiginit(self, _IMP_core.new_SurfaceTetheredChain(link_num, link_length))
10107 
10108  def get_version_info(self):
10109  r"""get_version_info(SurfaceTetheredChain self) -> VersionInfo"""
10110  return _IMP_core.SurfaceTetheredChain_get_version_info(self)
10111  __swig_destroy__ = _IMP_core.delete_SurfaceTetheredChain
10112 
10113  def get_link_number(self):
10114  r"""get_link_number(SurfaceTetheredChain self) -> int"""
10115  return _IMP_core.SurfaceTetheredChain_get_link_number(self)
10116 
10117  def get_link_length(self):
10118  r"""get_link_length(SurfaceTetheredChain self) -> double"""
10119  return _IMP_core.SurfaceTetheredChain_get_link_length(self)
10120 
10121  def set_link_number(self, N):
10122  r"""set_link_number(SurfaceTetheredChain self, int N)"""
10123  return _IMP_core.SurfaceTetheredChain_set_link_number(self, N)
10124 
10125  def set_link_length(self, b):
10126  r"""set_link_length(SurfaceTetheredChain self, double b)"""
10127  return _IMP_core.SurfaceTetheredChain_set_link_length(self, b)
10128 
10129  def get_distance_at_minimum(self):
10130  r"""get_distance_at_minimum(SurfaceTetheredChain self) -> double"""
10131  return _IMP_core.SurfaceTetheredChain_get_distance_at_minimum(self)
10132 
10133  def get_average_distance(self):
10134  r"""get_average_distance(SurfaceTetheredChain self) -> double"""
10135  return _IMP_core.SurfaceTetheredChain_get_average_distance(self)
10136 
10137  def __str__(self):
10138  r"""__str__(SurfaceTetheredChain self) -> std::string"""
10139  return _IMP_core.SurfaceTetheredChain___str__(self)
10140 
10141  def __repr__(self):
10142  r"""__repr__(SurfaceTetheredChain self) -> std::string"""
10143  return _IMP_core.SurfaceTetheredChain___repr__(self)
10144 
10145  @staticmethod
10146  def get_from(o):
10147  return _object_cast_to_SurfaceTetheredChain(o)
10148 
10149 
10150 # Register SurfaceTetheredChain in _IMP_core:
10151 _IMP_core.SurfaceTetheredChain_swigregister(SurfaceTetheredChain)
10152 class SurfaceSymmetryConstraint(IMP.Constraint):
10153  r"""Proxy of C++ IMP::core::SurfaceSymmetryConstraint class."""
10154 
10155  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10156 
10157  def __init__(self, m, ss, rbs):
10158  r"""__init__(SurfaceSymmetryConstraint self, Model m, IMP::ParticleIndexPair const & ss, IMP::ParticleIndexPair const & rbs) -> SurfaceSymmetryConstraint"""
10159  _IMP_core.SurfaceSymmetryConstraint_swiginit(self, _IMP_core.new_SurfaceSymmetryConstraint(m, ss, rbs))
10160 
10161  def do_get_inputs(self):
10162  r"""do_get_inputs(SurfaceSymmetryConstraint self) -> IMP::ModelObjectsTemp"""
10163  return _IMP_core.SurfaceSymmetryConstraint_do_get_inputs(self)
10164 
10165  def do_get_outputs(self):
10166  r"""do_get_outputs(SurfaceSymmetryConstraint self) -> IMP::ModelObjectsTemp"""
10167  return _IMP_core.SurfaceSymmetryConstraint_do_get_outputs(self)
10168 
10169  def get_version_info(self):
10170  r"""get_version_info(SurfaceSymmetryConstraint self) -> VersionInfo"""
10171  return _IMP_core.SurfaceSymmetryConstraint_get_version_info(self)
10172  __swig_destroy__ = _IMP_core.delete_SurfaceSymmetryConstraint
10173 
10174  def __str__(self):
10175  r"""__str__(SurfaceSymmetryConstraint self) -> std::string"""
10176  return _IMP_core.SurfaceSymmetryConstraint___str__(self)
10177 
10178  def __repr__(self):
10179  r"""__repr__(SurfaceSymmetryConstraint self) -> std::string"""
10180  return _IMP_core.SurfaceSymmetryConstraint___repr__(self)
10181 
10182  @staticmethod
10183  def get_from(o):
10184  return _object_cast_to_SurfaceSymmetryConstraint(o)
10185 
10186 
10187 # Register SurfaceSymmetryConstraint in _IMP_core:
10188 _IMP_core.SurfaceSymmetryConstraint_swigregister(SurfaceSymmetryConstraint)
10189 class SteepestDescent(IMP.AttributeOptimizer):
10190  r"""Proxy of C++ IMP::core::SteepestDescent class."""
10191 
10192  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10193 
10194  def __init__(self, *args):
10195  r"""__init__(SteepestDescent self, Model m, std::string name="SteepestDescent%1%") -> SteepestDescent"""
10196  _IMP_core.SteepestDescent_swiginit(self, _IMP_core.new_SteepestDescent(*args))
10197 
10198  def do_optimize(self, max_steps):
10199  r"""do_optimize(SteepestDescent self, unsigned int max_steps) -> IMP::Float"""
10200  return _IMP_core.SteepestDescent_do_optimize(self, max_steps)
10201 
10202  def get_version_info(self):
10203  r"""get_version_info(SteepestDescent self) -> VersionInfo"""
10204  return _IMP_core.SteepestDescent_get_version_info(self)
10205  __swig_destroy__ = _IMP_core.delete_SteepestDescent
10206 
10207  def set_threshold(self, t):
10208  r"""set_threshold(SteepestDescent self, IMP::Float t)"""
10209  return _IMP_core.SteepestDescent_set_threshold(self, t)
10210 
10211  def set_step_size(self, t):
10212  r"""set_step_size(SteepestDescent self, IMP::Float t)"""
10213  return _IMP_core.SteepestDescent_set_step_size(self, t)
10214 
10215  def set_maximum_step_size(self, t):
10216  r"""set_maximum_step_size(SteepestDescent self, IMP::Float t)"""
10217  return _IMP_core.SteepestDescent_set_maximum_step_size(self, t)
10218 
10219  def __str__(self):
10220  r"""__str__(SteepestDescent self) -> std::string"""
10221  return _IMP_core.SteepestDescent___str__(self)
10222 
10223  def __repr__(self):
10224  r"""__repr__(SteepestDescent self) -> std::string"""
10225  return _IMP_core.SteepestDescent___repr__(self)
10226 
10227  @staticmethod
10228  def get_from(o):
10229  return _object_cast_to_SteepestDescent(o)
10230 
10231 
10232 # Register SteepestDescent in _IMP_core:
10233 _IMP_core.SteepestDescent_swigregister(SteepestDescent)
10234 class TransformedDistancePairScore(IMP.PairScore):
10235  r"""Proxy of C++ IMP::core::TransformedDistancePairScore class."""
10236 
10237  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10238 
10239  def __init__(self, f, transformation):
10240  r"""__init__(TransformedDistancePairScore self, UnaryFunction f, Transformation3D transformation) -> TransformedDistancePairScore"""
10241  _IMP_core.TransformedDistancePairScore_swiginit(self, _IMP_core.new_TransformedDistancePairScore(f, transformation))
10242 
10243  def set_transformation(self, rot):
10244  r"""set_transformation(TransformedDistancePairScore self, Transformation3D rot)"""
10245  return _IMP_core.TransformedDistancePairScore_set_transformation(self, rot)
10246 
10247  def do_get_inputs(self, m, pis):
10248  r"""do_get_inputs(TransformedDistancePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10249  return _IMP_core.TransformedDistancePairScore_do_get_inputs(self, m, pis)
10250 
10251  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
10252  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"""
10253  return _IMP_core.TransformedDistancePairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
10254 
10255  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
10256  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"""
10257  return _IMP_core.TransformedDistancePairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
10258 
10259  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
10260  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"""
10261  return _IMP_core.TransformedDistancePairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
10262 
10263  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
10264  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"""
10265  return _IMP_core.TransformedDistancePairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
10266 
10267  def get_version_info(self):
10268  r"""get_version_info(TransformedDistancePairScore self) -> VersionInfo"""
10269  return _IMP_core.TransformedDistancePairScore_get_version_info(self)
10270  __swig_destroy__ = _IMP_core.delete_TransformedDistancePairScore
10271 
10272  def __str__(self):
10273  r"""__str__(TransformedDistancePairScore self) -> std::string"""
10274  return _IMP_core.TransformedDistancePairScore___str__(self)
10275 
10276  def __repr__(self):
10277  r"""__repr__(TransformedDistancePairScore self) -> std::string"""
10278  return _IMP_core.TransformedDistancePairScore___repr__(self)
10279 
10280  @staticmethod
10281  def get_from(o):
10282  return _object_cast_to_TransformedDistancePairScore(o)
10283 
10284 
10285 # Register TransformedDistancePairScore in _IMP_core:
10286 _IMP_core.TransformedDistancePairScore_swigregister(TransformedDistancePairScore)
10287 class TypedPairScore(IMP.PairScore):
10288  r"""Proxy of C++ IMP::core::TypedPairScore class."""
10289 
10290  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10291 
10292  def __init__(self, typekey, allow_invalid_types=True):
10293  r"""__init__(TypedPairScore self, IntKey typekey, bool allow_invalid_types=True) -> TypedPairScore"""
10294  _IMP_core.TypedPairScore_swiginit(self, _IMP_core.new_TypedPairScore(typekey, allow_invalid_types))
10295 
10296  def set_particle_type(self, arg2):
10297  r"""set_particle_type(TypedPairScore self, Particle arg2)"""
10298  return _IMP_core.TypedPairScore_set_particle_type(self, arg2)
10299 
10300  def set_pair_score(self, ps, atype, btype):
10301  r"""set_pair_score(TypedPairScore self, PairScore ps, IMP::Int atype, IMP::Int btype)"""
10302  return _IMP_core.TypedPairScore_set_pair_score(self, ps, atype, btype)
10303 
10304  def do_get_inputs(self, m, pis):
10305  r"""do_get_inputs(TypedPairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10306  return _IMP_core.TypedPairScore_do_get_inputs(self, m, pis)
10307 
10308  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
10309  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"""
10310  return _IMP_core.TypedPairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
10311 
10312  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
10313  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"""
10314  return _IMP_core.TypedPairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
10315 
10316  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
10317  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"""
10318  return _IMP_core.TypedPairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
10319 
10320  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
10321  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"""
10322  return _IMP_core.TypedPairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
10323 
10324  def get_version_info(self):
10325  r"""get_version_info(TypedPairScore self) -> VersionInfo"""
10326  return _IMP_core.TypedPairScore_get_version_info(self)
10327  __swig_destroy__ = _IMP_core.delete_TypedPairScore
10328 
10329  def __str__(self):
10330  r"""__str__(TypedPairScore self) -> std::string"""
10331  return _IMP_core.TypedPairScore___str__(self)
10332 
10333  def __repr__(self):
10334  r"""__repr__(TypedPairScore self) -> std::string"""
10335  return _IMP_core.TypedPairScore___repr__(self)
10336 
10337  @staticmethod
10338  def get_from(o):
10339  return _object_cast_to_TypedPairScore(o)
10340 
10341 
10342 # Register TypedPairScore in _IMP_core:
10343 _IMP_core.TypedPairScore_swigregister(TypedPairScore)
10344 class RigidBodyDistancePairScore(KClosePairsPairScore):
10345  r"""Proxy of C++ IMP::core::RigidBodyDistancePairScore class."""
10346 
10347  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10348 
10349  def __init__(self, ps, r):
10350  r"""__init__(RigidBodyDistancePairScore self, PairScore ps, Refiner r) -> RigidBodyDistancePairScore"""
10351  _IMP_core.RigidBodyDistancePairScore_swiginit(self, _IMP_core.new_RigidBodyDistancePairScore(ps, r))
10352 
10353  def __str__(self):
10354  r"""__str__(RigidBodyDistancePairScore self) -> std::string"""
10355  return _IMP_core.RigidBodyDistancePairScore___str__(self)
10356 
10357  def __repr__(self):
10358  r"""__repr__(RigidBodyDistancePairScore self) -> std::string"""
10359  return _IMP_core.RigidBodyDistancePairScore___repr__(self)
10360 
10361  @staticmethod
10362  def get_from(o):
10363  return _object_cast_to_RigidBodyDistancePairScore(o)
10364 
10365  __swig_destroy__ = _IMP_core.delete_RigidBodyDistancePairScore
10366 
10367 # Register RigidBodyDistancePairScore in _IMP_core:
10368 _IMP_core.RigidBodyDistancePairScore_swigregister(RigidBodyDistancePairScore)
10369 class RigidBodyAnglePairScore(IMP.PairScore):
10370  r"""Proxy of C++ IMP::core::RigidBodyAnglePairScore class."""
10371 
10372  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10373 
10374  def __init__(self, f):
10375  r"""__init__(RigidBodyAnglePairScore self, UnaryFunction f) -> RigidBodyAnglePairScore"""
10376  _IMP_core.RigidBodyAnglePairScore_swiginit(self, _IMP_core.new_RigidBodyAnglePairScore(f))
10377 
10378  def do_get_inputs(self, m, pis):
10379  r"""do_get_inputs(RigidBodyAnglePairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10380  return _IMP_core.RigidBodyAnglePairScore_do_get_inputs(self, m, pis)
10381 
10382  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
10383  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"""
10384  return _IMP_core.RigidBodyAnglePairScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
10385 
10386  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
10387  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"""
10388  return _IMP_core.RigidBodyAnglePairScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
10389 
10390  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
10391  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"""
10392  return _IMP_core.RigidBodyAnglePairScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
10393 
10394  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
10395  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"""
10396  return _IMP_core.RigidBodyAnglePairScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
10397 
10398  def get_version_info(self):
10399  r"""get_version_info(RigidBodyAnglePairScore self) -> VersionInfo"""
10400  return _IMP_core.RigidBodyAnglePairScore_get_version_info(self)
10401  __swig_destroy__ = _IMP_core.delete_RigidBodyAnglePairScore
10402 
10403  def __str__(self):
10404  r"""__str__(RigidBodyAnglePairScore self) -> std::string"""
10405  return _IMP_core.RigidBodyAnglePairScore___str__(self)
10406 
10407  def __repr__(self):
10408  r"""__repr__(RigidBodyAnglePairScore self) -> std::string"""
10409  return _IMP_core.RigidBodyAnglePairScore___repr__(self)
10410 
10411  @staticmethod
10412  def get_from(o):
10413  return _object_cast_to_RigidBodyAnglePairScore(o)
10414 
10415 
10416 # Register RigidBodyAnglePairScore in _IMP_core:
10417 _IMP_core.RigidBodyAnglePairScore_swigregister(RigidBodyAnglePairScore)
10418 class TableRefiner(IMP.Refiner):
10419  r"""Proxy of C++ IMP::core::TableRefiner class."""
10420 
10421  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10422 
10423  def __init__(self):
10424  r"""__init__(TableRefiner self) -> TableRefiner"""
10425  _IMP_core.TableRefiner_swiginit(self, _IMP_core.new_TableRefiner())
10426 
10427  def add_particle(self, p, ps):
10428  r"""add_particle(TableRefiner self, Particle p, IMP::ParticlesTemp const & ps)"""
10429  return _IMP_core.TableRefiner_add_particle(self, p, ps)
10430 
10431  def remove_particle(self, p):
10432  r"""remove_particle(TableRefiner self, Particle p)"""
10433  return _IMP_core.TableRefiner_remove_particle(self, p)
10434 
10435  def set_particle(self, p, ps):
10436  r"""set_particle(TableRefiner self, Particle p, IMP::ParticlesTemp const & ps)"""
10437  return _IMP_core.TableRefiner_set_particle(self, p, ps)
10438 
10439  def do_get_inputs(self, m, pis):
10440  r"""do_get_inputs(TableRefiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
10441  return _IMP_core.TableRefiner_do_get_inputs(self, m, pis)
10442 
10443  def get_version_info(self):
10444  r"""get_version_info(TableRefiner self) -> VersionInfo"""
10445  return _IMP_core.TableRefiner_get_version_info(self)
10446  __swig_destroy__ = _IMP_core.delete_TableRefiner
10447 
10448  def __str__(self):
10449  r"""__str__(TableRefiner self) -> std::string"""
10450  return _IMP_core.TableRefiner___str__(self)
10451 
10452  def __repr__(self):
10453  r"""__repr__(TableRefiner self) -> std::string"""
10454  return _IMP_core.TableRefiner___repr__(self)
10455 
10456  @staticmethod
10457  def get_from(o):
10458  return _object_cast_to_TableRefiner(o)
10459 
10460 
10461 # Register TableRefiner in _IMP_core:
10462 _IMP_core.TableRefiner_swigregister(TableRefiner)
10463 LOWER = _IMP_core.LOWER
10464 
10465 BOTH = _IMP_core.BOTH
10466 
10467 UPPER = _IMP_core.UPPER
10468 
10469 class MCCGSampler(IMP.Sampler):
10470  r"""Proxy of C++ IMP::core::MCCGSampler class."""
10471 
10472  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10473 
10474  def __init__(self, *args):
10475  r"""__init__(MCCGSampler self, Model m, std::string name="MCCG Sampler %1%") -> MCCGSampler"""
10476  _IMP_core.MCCGSampler_swiginit(self, _IMP_core.new_MCCGSampler(*args))
10477 
10478  def set_bounding_box(self, bb):
10479  r"""set_bounding_box(MCCGSampler self, BoundingBox3D bb)"""
10480  return _IMP_core.MCCGSampler_set_bounding_box(self, bb)
10481 
10482  def set_number_of_attempts(self, att):
10483  r"""set_number_of_attempts(MCCGSampler self, unsigned int att)"""
10484  return _IMP_core.MCCGSampler_set_number_of_attempts(self, att)
10485 
10486  def set_number_of_monte_carlo_steps(self, cg):
10487  r"""set_number_of_monte_carlo_steps(MCCGSampler self, unsigned int cg)"""
10488  return _IMP_core.MCCGSampler_set_number_of_monte_carlo_steps(self, cg)
10489 
10490  def set_number_of_conjugate_gradient_steps(self, cg):
10491  r"""set_number_of_conjugate_gradient_steps(MCCGSampler self, unsigned int cg)"""
10492  return _IMP_core.MCCGSampler_set_number_of_conjugate_gradient_steps(self, cg)
10493 
10494  def set_max_monte_carlo_step_size(self, *args):
10495  r"""
10496  set_max_monte_carlo_step_size(MCCGSampler self, double d)
10497  set_max_monte_carlo_step_size(MCCGSampler self, FloatKey k, double d)
10498  """
10499  return _IMP_core.MCCGSampler_set_max_monte_carlo_step_size(self, *args)
10500 
10501  def set_is_refining(self, tf):
10502  r"""set_is_refining(MCCGSampler self, bool tf)"""
10503  return _IMP_core.MCCGSampler_set_is_refining(self, tf)
10504 
10505  def set_local_optimizer(self, opt):
10506  r"""set_local_optimizer(MCCGSampler self, Optimizer opt)"""
10507  return _IMP_core.MCCGSampler_set_local_optimizer(self, opt)
10508 
10509  def set_save_rejected_configurations(self, tf):
10510  r"""set_save_rejected_configurations(MCCGSampler self, bool tf)"""
10511  return _IMP_core.MCCGSampler_set_save_rejected_configurations(self, tf)
10512 
10513  def get_rejected_configurations(self):
10514  r"""get_rejected_configurations(MCCGSampler self) -> ConfigurationSet"""
10515  return _IMP_core.MCCGSampler_get_rejected_configurations(self)
10516  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)
10517  def __set_optimizer_states(self, obj): IMP._list_util.set_varlist(self.optimizer_states, obj)
10518  def __del_optimizer_states(self): IMP._list_util.del_varlist(self.optimizer_states)
10519  optimizer_states = property(__get_optimizer_states, __set_optimizer_states, __del_optimizer_states, doc="List of ##ucnames")
10520 
10521  def remove_optimizer_state(self, d):
10522  r"""remove_optimizer_state(MCCGSampler self, OptimizerState d)"""
10523  return _IMP_core.MCCGSampler_remove_optimizer_state(self, d)
10524 
10525  def _python_index_optimizer_state(self, d, start, stop):
10526  r"""_python_index_optimizer_state(MCCGSampler self, OptimizerState d, unsigned int start, unsigned int stop) -> unsigned int"""
10527  return _IMP_core.MCCGSampler__python_index_optimizer_state(self, d, start, stop)
10528 
10529  def remove_optimizer_states(self, d):
10530  r"""remove_optimizer_states(MCCGSampler self, IMP::OptimizerStates const & d)"""
10531  return _IMP_core.MCCGSampler_remove_optimizer_states(self, d)
10532 
10533  def set_optimizer_states(self, ps):
10534  r"""set_optimizer_states(MCCGSampler self, IMP::OptimizerStates const & ps)"""
10535  return _IMP_core.MCCGSampler_set_optimizer_states(self, ps)
10536 
10537  def set_optimizer_states_order(self, objs):
10538  r"""set_optimizer_states_order(MCCGSampler self, IMP::OptimizerStates const & objs)"""
10539  return _IMP_core.MCCGSampler_set_optimizer_states_order(self, objs)
10540 
10541  def add_optimizer_state(self, obj):
10542  r"""add_optimizer_state(MCCGSampler self, OptimizerState obj) -> unsigned int"""
10543  return _IMP_core.MCCGSampler_add_optimizer_state(self, obj)
10544 
10545  def add_optimizer_states(self, objs):
10546  r"""add_optimizer_states(MCCGSampler self, IMP::OptimizerStates const & objs)"""
10547  return _IMP_core.MCCGSampler_add_optimizer_states(self, objs)
10548 
10549  def clear_optimizer_states(self):
10550  r"""clear_optimizer_states(MCCGSampler self)"""
10551  return _IMP_core.MCCGSampler_clear_optimizer_states(self)
10552 
10553  def get_number_of_optimizer_states(self):
10554  r"""get_number_of_optimizer_states(MCCGSampler self) -> unsigned int"""
10555  return _IMP_core.MCCGSampler_get_number_of_optimizer_states(self)
10556 
10557  def get_has_optimizer_states(self):
10558  r"""get_has_optimizer_states(MCCGSampler self) -> bool"""
10559  return _IMP_core.MCCGSampler_get_has_optimizer_states(self)
10560 
10561  def get_optimizer_state(self, i):
10562  r"""get_optimizer_state(MCCGSampler self, unsigned int i) -> OptimizerState"""
10563  return _IMP_core.MCCGSampler_get_optimizer_state(self, i)
10564 
10565  def get_optimizer_states(self):
10566  r"""get_optimizer_states(MCCGSampler self) -> IMP::OptimizerStates"""
10567  return _IMP_core.MCCGSampler_get_optimizer_states(self)
10568 
10569  def erase_optimizer_state(self, i):
10570  r"""erase_optimizer_state(MCCGSampler self, unsigned int i)"""
10571  return _IMP_core.MCCGSampler_erase_optimizer_state(self, i)
10572 
10573  def reserve_optimizer_states(self, sz):
10574  r"""reserve_optimizer_states(MCCGSampler self, unsigned int sz)"""
10575  return _IMP_core.MCCGSampler_reserve_optimizer_states(self, sz)
10576 
10577  def do_sample(self):
10578  r"""do_sample(MCCGSampler self) -> ConfigurationSet"""
10579  return _IMP_core.MCCGSampler_do_sample(self)
10580 
10581  def get_version_info(self):
10582  r"""get_version_info(MCCGSampler self) -> VersionInfo"""
10583  return _IMP_core.MCCGSampler_get_version_info(self)
10584  __swig_destroy__ = _IMP_core.delete_MCCGSampler
10585 
10586  def __str__(self):
10587  r"""__str__(MCCGSampler self) -> std::string"""
10588  return _IMP_core.MCCGSampler___str__(self)
10589 
10590  def __repr__(self):
10591  r"""__repr__(MCCGSampler self) -> std::string"""
10592  return _IMP_core.MCCGSampler___repr__(self)
10593 
10594  @staticmethod
10595  def get_from(o):
10596  return _object_cast_to_MCCGSampler(o)
10597 
10598 
10599 # Register MCCGSampler in _IMP_core:
10600 _IMP_core.MCCGSampler_swigregister(MCCGSampler)
10601 class MinimumRestraint(IMP.Restraint):
10602  r"""Proxy of C++ IMP::core::MinimumRestraint class."""
10603 
10604  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10605 
10606  def __init__(self, *args):
10607  r"""__init__(MinimumRestraint self, unsigned int num, IMP::Restraints const & rs=IMP::Restraints(), std::string name="MinimumRestraint %1%") -> MinimumRestraint"""
10608  _IMP_core.MinimumRestraint_swiginit(self, _IMP_core.new_MinimumRestraint(*args))
10609 
10610  def do_get_inputs(self):
10611  r"""do_get_inputs(MinimumRestraint self) -> IMP::ModelObjectsTemp"""
10612  return _IMP_core.MinimumRestraint_do_get_inputs(self)
10613 
10614  def get_version_info(self):
10615  r"""get_version_info(MinimumRestraint self) -> VersionInfo"""
10616  return _IMP_core.MinimumRestraint_get_version_info(self)
10617  __swig_destroy__ = _IMP_core.delete_MinimumRestraint
10618  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)
10619  def __set_restraints(self, obj): IMP._list_util.set_varlist(self.restraints, obj)
10620  def __del_restraints(self): IMP._list_util.del_varlist(self.restraints)
10621  restraints = property(__get_restraints, __set_restraints, __del_restraints, doc="List of ##ucnames")
10622 
10623  def remove_restraint(self, d):
10624  r"""remove_restraint(MinimumRestraint self, Restraint d)"""
10625  return _IMP_core.MinimumRestraint_remove_restraint(self, d)
10626 
10627  def _python_index_restraint(self, d, start, stop):
10628  r"""_python_index_restraint(MinimumRestraint self, Restraint d, unsigned int start, unsigned int stop) -> unsigned int"""
10629  return _IMP_core.MinimumRestraint__python_index_restraint(self, d, start, stop)
10630 
10631  def remove_restraints(self, d):
10632  r"""remove_restraints(MinimumRestraint self, IMP::Restraints const & d)"""
10633  return _IMP_core.MinimumRestraint_remove_restraints(self, d)
10634 
10635  def set_restraints(self, ps):
10636  r"""set_restraints(MinimumRestraint self, IMP::Restraints const & ps)"""
10637  return _IMP_core.MinimumRestraint_set_restraints(self, ps)
10638 
10639  def set_restraints_order(self, objs):
10640  r"""set_restraints_order(MinimumRestraint self, IMP::Restraints const & objs)"""
10641  return _IMP_core.MinimumRestraint_set_restraints_order(self, objs)
10642 
10643  def add_restraint(self, obj):
10644  r"""add_restraint(MinimumRestraint self, Restraint obj) -> unsigned int"""
10645  return _IMP_core.MinimumRestraint_add_restraint(self, obj)
10646 
10647  def add_restraints(self, objs):
10648  r"""add_restraints(MinimumRestraint self, IMP::Restraints const & objs)"""
10649  return _IMP_core.MinimumRestraint_add_restraints(self, objs)
10650 
10651  def clear_restraints(self):
10652  r"""clear_restraints(MinimumRestraint self)"""
10653  return _IMP_core.MinimumRestraint_clear_restraints(self)
10654 
10655  def get_number_of_restraints(self):
10656  r"""get_number_of_restraints(MinimumRestraint self) -> unsigned int"""
10657  return _IMP_core.MinimumRestraint_get_number_of_restraints(self)
10658 
10659  def get_has_restraints(self):
10660  r"""get_has_restraints(MinimumRestraint self) -> bool"""
10661  return _IMP_core.MinimumRestraint_get_has_restraints(self)
10662 
10663  def get_restraint(self, i):
10664  r"""get_restraint(MinimumRestraint self, unsigned int i) -> Restraint"""
10665  return _IMP_core.MinimumRestraint_get_restraint(self, i)
10666 
10667  def get_restraints(self):
10668  r"""get_restraints(MinimumRestraint self) -> IMP::Restraints"""
10669  return _IMP_core.MinimumRestraint_get_restraints(self)
10670 
10671  def erase_restraint(self, i):
10672  r"""erase_restraint(MinimumRestraint self, unsigned int i)"""
10673  return _IMP_core.MinimumRestraint_erase_restraint(self, i)
10674 
10675  def reserve_restraints(self, sz):
10676  r"""reserve_restraints(MinimumRestraint self, unsigned int sz)"""
10677  return _IMP_core.MinimumRestraint_reserve_restraints(self, sz)
10678 
10679  def __str__(self):
10680  r"""__str__(MinimumRestraint self) -> std::string"""
10681  return _IMP_core.MinimumRestraint___str__(self)
10682 
10683  def __repr__(self):
10684  r"""__repr__(MinimumRestraint self) -> std::string"""
10685  return _IMP_core.MinimumRestraint___repr__(self)
10686 
10687  @staticmethod
10688  def get_from(o):
10689  return _object_cast_to_MinimumRestraint(o)
10690 
10691 
10692 # Register MinimumRestraint in _IMP_core:
10693 _IMP_core.MinimumRestraint_swigregister(MinimumRestraint)
10694 class Gaussian(RigidBody):
10695  r"""Proxy of C++ IMP::core::Gaussian class."""
10696 
10697  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10698 
10699  def __init__(self, *args):
10700  r"""
10701  __init__(Gaussian self) -> Gaussian
10702  __init__(Gaussian self, Model m, ParticleIndex id) -> Gaussian
10703  __init__(Gaussian self, _ParticleAdaptor d) -> Gaussian
10704  """
10705  _IMP_core.Gaussian_swiginit(self, _IMP_core.new_Gaussian(*args))
10706 
10707  def show(self, *args):
10708  r"""show(Gaussian self, _ostream out=std::cout)"""
10709  return _IMP_core.Gaussian_show(self, *args)
10710 
10711  @staticmethod
10712  def setup_particle(*args):
10713  r"""
10714  setup_particle(Model m, ParticleIndex pi) -> Gaussian
10715  setup_particle(_ParticleAdaptor pa) -> Gaussian
10716  setup_particle(Model m, ParticleIndex pi, Gaussian3D g) -> Gaussian
10717  setup_particle(_ParticleAdaptor pa, Gaussian3D g) -> Gaussian
10718  """
10719  return _IMP_core.Gaussian_setup_particle(*args)
10720 
10721  @staticmethod
10722  def get_local_covariance_key():
10723  r"""get_local_covariance_key() -> ObjectKey"""
10724  return _IMP_core.Gaussian_get_local_covariance_key()
10725 
10726  @staticmethod
10727  def get_global_covariance_key():
10728  r"""get_global_covariance_key() -> ObjectKey"""
10729  return _IMP_core.Gaussian_get_global_covariance_key()
10730 
10731  @staticmethod
10732  def get_is_setup(*args):
10733  r"""
10734  get_is_setup(_ParticleAdaptor p) -> bool
10735  get_is_setup(Model m, ParticleIndex pi) -> bool
10736  """
10737  return _IMP_core.Gaussian_get_is_setup(*args)
10738 
10739  def get_local_covariance(self):
10740  r"""get_local_covariance(Gaussian self) -> Eigen::Matrix3d"""
10741  return _IMP_core.Gaussian_get_local_covariance(self)
10742 
10743  def get_variances(self):
10744  r"""get_variances(Gaussian self) -> Vector3D"""
10745  return _IMP_core.Gaussian_get_variances(self)
10746 
10747  def get_global_covariance(self):
10748  r"""get_global_covariance(Gaussian self) -> Eigen::Matrix3d"""
10749  return _IMP_core.Gaussian_get_global_covariance(self)
10750 
10751  def get_gaussian(self):
10752  r"""get_gaussian(Gaussian self) -> Gaussian3D"""
10753  return _IMP_core.Gaussian_get_gaussian(self)
10754 
10755  def set_gaussian(self, g):
10756  r"""set_gaussian(Gaussian self, Gaussian3D g)"""
10757  return _IMP_core.Gaussian_set_gaussian(self, g)
10758 
10759  def set_local_covariance(self, covar):
10760  r"""set_local_covariance(Gaussian self, Eigen::Vector3d const covar)"""
10761  return _IMP_core.Gaussian_set_local_covariance(self, covar)
10762 
10763  def set_variances(self, v):
10764  r"""set_variances(Gaussian self, Vector3D v)"""
10765  return _IMP_core.Gaussian_set_variances(self, v)
10766 
10767  def set_global_covariance(self, covar):
10768  r"""set_global_covariance(Gaussian self, Eigen::Matrix3d covar)"""
10769  return _IMP_core.Gaussian_set_global_covariance(self, covar)
10770 
10771  def update_global_covariance(self):
10772  r"""update_global_covariance(Gaussian self)"""
10773  return _IMP_core.Gaussian_update_global_covariance(self)
10774 
10775  def add_attribute(self, *args):
10776  r"""
10777  add_attribute(Gaussian self, FloatKey k, IMP::Float v, bool opt)
10778  add_attribute(Gaussian self, FloatKey a0, IMP::Float a1)
10779  add_attribute(Gaussian self, IntKey a0, IMP::Int a1)
10780  add_attribute(Gaussian self, FloatsKey a0, IMP::Floats a1)
10781  add_attribute(Gaussian self, IntsKey a0, IMP::Ints a1)
10782  add_attribute(Gaussian self, StringKey a0, IMP::String a1)
10783  add_attribute(Gaussian self, ParticleIndexKey a0, Particle a1)
10784  add_attribute(Gaussian self, ObjectKey a0, Object a1)
10785  add_attribute(Gaussian self, SparseFloatKey a0, IMP::Float a1)
10786  add_attribute(Gaussian self, SparseIntKey a0, IMP::Int a1)
10787  add_attribute(Gaussian self, SparseStringKey a0, IMP::String a1)
10788  add_attribute(Gaussian self, SparseParticleIndexKey a0, ParticleIndex a1)
10789  """
10790  return _IMP_core.Gaussian_add_attribute(self, *args)
10791 
10792  def get_value(self, *args):
10793  r"""
10794  get_value(Gaussian self, FloatKey a0) -> IMP::Float
10795  get_value(Gaussian self, IntKey a0) -> IMP::Int
10796  get_value(Gaussian self, FloatsKey a0) -> IMP::Floats
10797  get_value(Gaussian self, IntsKey a0) -> IMP::Ints
10798  get_value(Gaussian self, StringKey a0) -> IMP::String
10799  get_value(Gaussian self, ParticleIndexKey a0) -> Particle
10800  get_value(Gaussian self, ObjectKey a0) -> Object
10801  get_value(Gaussian self, SparseFloatKey a0) -> IMP::Float
10802  get_value(Gaussian self, SparseIntKey a0) -> IMP::Int
10803  get_value(Gaussian self, SparseStringKey a0) -> IMP::String
10804  get_value(Gaussian self, SparseParticleIndexKey a0) -> ParticleIndex
10805  """
10806  return _IMP_core.Gaussian_get_value(self, *args)
10807 
10808  def set_value(self, *args):
10809  r"""
10810  set_value(Gaussian self, FloatKey a0, IMP::Float a1)
10811  set_value(Gaussian self, IntKey a0, IMP::Int a1)
10812  set_value(Gaussian self, FloatsKey a0, IMP::Floats a1)
10813  set_value(Gaussian self, IntsKey a0, IMP::Ints a1)
10814  set_value(Gaussian self, StringKey a0, IMP::String a1)
10815  set_value(Gaussian self, ParticleIndexKey a0, Particle a1)
10816  set_value(Gaussian self, ObjectKey a0, Object a1)
10817  set_value(Gaussian self, SparseFloatKey a0, IMP::Float a1)
10818  set_value(Gaussian self, SparseIntKey a0, IMP::Int a1)
10819  set_value(Gaussian self, SparseStringKey a0, IMP::String a1)
10820  set_value(Gaussian self, SparseParticleIndexKey a0, ParticleIndex a1)
10821  """
10822  return _IMP_core.Gaussian_set_value(self, *args)
10823 
10824  def remove_attribute(self, *args):
10825  r"""
10826  remove_attribute(Gaussian self, FloatKey a0)
10827  remove_attribute(Gaussian self, IntKey a0)
10828  remove_attribute(Gaussian self, FloatsKey a0)
10829  remove_attribute(Gaussian self, IntsKey a0)
10830  remove_attribute(Gaussian self, StringKey a0)
10831  remove_attribute(Gaussian self, ParticleIndexKey a0)
10832  remove_attribute(Gaussian self, ObjectKey a0)
10833  remove_attribute(Gaussian self, SparseFloatKey a0)
10834  remove_attribute(Gaussian self, SparseIntKey a0)
10835  remove_attribute(Gaussian self, SparseStringKey a0)
10836  remove_attribute(Gaussian self, SparseParticleIndexKey a0)
10837  """
10838  return _IMP_core.Gaussian_remove_attribute(self, *args)
10839 
10840  def has_attribute(self, *args):
10841  r"""
10842  has_attribute(Gaussian self, FloatKey a0) -> bool
10843  has_attribute(Gaussian self, IntKey a0) -> bool
10844  has_attribute(Gaussian self, FloatsKey a0) -> bool
10845  has_attribute(Gaussian self, IntsKey a0) -> bool
10846  has_attribute(Gaussian self, StringKey a0) -> bool
10847  has_attribute(Gaussian self, ParticleIndexKey a0) -> bool
10848  has_attribute(Gaussian self, ObjectKey a0) -> bool
10849  has_attribute(Gaussian self, SparseFloatKey a0) -> bool
10850  has_attribute(Gaussian self, SparseIntKey a0) -> bool
10851  has_attribute(Gaussian self, SparseStringKey a0) -> bool
10852  has_attribute(Gaussian self, SparseParticleIndexKey a0) -> bool
10853  """
10854  return _IMP_core.Gaussian_has_attribute(self, *args)
10855 
10856  def get_derivative(self, a0):
10857  r"""get_derivative(Gaussian self, FloatKey a0) -> double"""
10858  return _IMP_core.Gaussian_get_derivative(self, a0)
10859 
10860  def get_name(self):
10861  r"""get_name(Gaussian self) -> std::string"""
10862  return _IMP_core.Gaussian_get_name(self)
10863 
10864  def clear_caches(self):
10865  r"""clear_caches(Gaussian self)"""
10866  return _IMP_core.Gaussian_clear_caches(self)
10867 
10868  def set_name(self, a0):
10869  r"""set_name(Gaussian self, std::string a0)"""
10870  return _IMP_core.Gaussian_set_name(self, a0)
10871 
10872  def set_check_level(self, a0):
10873  r"""set_check_level(Gaussian self, IMP::CheckLevel a0)"""
10874  return _IMP_core.Gaussian_set_check_level(self, a0)
10875 
10876  def add_to_derivative(self, a0, a1, a2):
10877  r"""add_to_derivative(Gaussian self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
10878  return _IMP_core.Gaussian_add_to_derivative(self, a0, a1, a2)
10879 
10880  def set_is_optimized(self, a0, a1):
10881  r"""set_is_optimized(Gaussian self, FloatKey a0, bool a1)"""
10882  return _IMP_core.Gaussian_set_is_optimized(self, a0, a1)
10883 
10884  def get_is_optimized(self, a0):
10885  r"""get_is_optimized(Gaussian self, FloatKey a0) -> bool"""
10886  return _IMP_core.Gaussian_get_is_optimized(self, a0)
10887 
10888  def get_check_level(self):
10889  r"""get_check_level(Gaussian self) -> IMP::CheckLevel"""
10890  return _IMP_core.Gaussian_get_check_level(self)
10891 
10892  def __eq__(self, *args):
10893  r"""
10894  __eq__(Gaussian self, Gaussian o) -> bool
10895  __eq__(Gaussian self, Particle d) -> bool
10896  """
10897  return _IMP_core.Gaussian___eq__(self, *args)
10898 
10899  def __ne__(self, *args):
10900  r"""
10901  __ne__(Gaussian self, Gaussian o) -> bool
10902  __ne__(Gaussian self, Particle d) -> bool
10903  """
10904  return _IMP_core.Gaussian___ne__(self, *args)
10905 
10906  def __le__(self, *args):
10907  r"""
10908  __le__(Gaussian self, Gaussian o) -> bool
10909  __le__(Gaussian self, Particle d) -> bool
10910  """
10911  return _IMP_core.Gaussian___le__(self, *args)
10912 
10913  def __lt__(self, *args):
10914  r"""
10915  __lt__(Gaussian self, Gaussian o) -> bool
10916  __lt__(Gaussian self, Particle d) -> bool
10917  """
10918  return _IMP_core.Gaussian___lt__(self, *args)
10919 
10920  def __ge__(self, *args):
10921  r"""
10922  __ge__(Gaussian self, Gaussian o) -> bool
10923  __ge__(Gaussian self, Particle d) -> bool
10924  """
10925  return _IMP_core.Gaussian___ge__(self, *args)
10926 
10927  def __gt__(self, *args):
10928  r"""
10929  __gt__(Gaussian self, Gaussian o) -> bool
10930  __gt__(Gaussian self, Particle d) -> bool
10931  """
10932  return _IMP_core.Gaussian___gt__(self, *args)
10933 
10934  def __hash__(self):
10935  r"""__hash__(Gaussian self) -> std::size_t"""
10936  return _IMP_core.Gaussian___hash__(self)
10937 
10938  def __str__(self):
10939  r"""__str__(Gaussian self) -> std::string"""
10940  return _IMP_core.Gaussian___str__(self)
10941 
10942  def __repr__(self):
10943  r"""__repr__(Gaussian self) -> std::string"""
10944  return _IMP_core.Gaussian___repr__(self)
10945 
10946  def _get_as_binary(self):
10947  r"""_get_as_binary(Gaussian self) -> PyObject *"""
10948  return _IMP_core.Gaussian__get_as_binary(self)
10949 
10950  def _set_from_binary(self, p):
10951  r"""_set_from_binary(Gaussian self, PyObject * p)"""
10952  return _IMP_core.Gaussian__set_from_binary(self, p)
10953 
10954  def __getstate__(self):
10955  p = self._get_as_binary()
10956  if len(self.__dict__) > 1:
10957  d = self.__dict__.copy()
10958  del d['this']
10959  p = (d, p)
10960  return p
10961 
10962  def __setstate__(self, p):
10963  if not hasattr(self, 'this'):
10964  self.__init__()
10965  if isinstance(p, tuple):
10966  d, p = p
10967  self.__dict__.update(d)
10968  return self._set_from_binary(p)
10969 
10970  __swig_destroy__ = _IMP_core.delete_Gaussian
10971 
10972 # Register Gaussian in _IMP_core:
10973 _IMP_core.Gaussian_swigregister(Gaussian)
10974 class PairRestraint(IMP.Restraint):
10975  r"""Proxy of C++ IMP::core::PairRestraint class."""
10976 
10977  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
10978 
10979  def __init__(self, *args):
10980  r"""
10981  __init__(PairRestraint self, Model m, PairScore ss, IMP::ParticleIndexPair const & vt, std::string name="PairRestraint %1%") -> PairRestraint
10982  __init__(PairRestraint self) -> PairRestraint
10983  """
10984  _IMP_core.PairRestraint_swiginit(self, _IMP_core.new_PairRestraint(*args))
10985 
10986  def get_score_object(self):
10987  r"""get_score_object(PairRestraint self) -> PairScore"""
10988  return _IMP_core.PairRestraint_get_score_object(self)
10989 
10990  def get_index(self):
10991  r"""get_index(PairRestraint self) -> IMP::PairScore::IndexArgument"""
10992  return _IMP_core.PairRestraint_get_index(self)
10993 
10994  def get_version_info(self):
10995  r"""get_version_info(PairRestraint self) -> VersionInfo"""
10996  return _IMP_core.PairRestraint_get_version_info(self)
10997  __swig_destroy__ = _IMP_core.delete_PairRestraint
10998 
10999  def __str__(self):
11000  r"""__str__(PairRestraint self) -> std::string"""
11001  return _IMP_core.PairRestraint___str__(self)
11002 
11003  def __repr__(self):
11004  r"""__repr__(PairRestraint self) -> std::string"""
11005  return _IMP_core.PairRestraint___repr__(self)
11006 
11007  @staticmethod
11008  def get_from(o):
11009  return _object_cast_to_PairRestraint(o)
11010 
11011 
11012  def _get_as_binary(self):
11013  r"""_get_as_binary(PairRestraint self) -> PyObject *"""
11014  return _IMP_core.PairRestraint__get_as_binary(self)
11015 
11016  def _set_from_binary(self, p):
11017  r"""_set_from_binary(PairRestraint self, PyObject * p)"""
11018  return _IMP_core.PairRestraint__set_from_binary(self, p)
11019 
11020  def __getstate__(self):
11021  p = self._get_as_binary()
11022  if len(self.__dict__) > 1:
11023  d = self.__dict__.copy()
11024  del d['this']
11025  p = (d, p)
11026  return p
11027 
11028  def __setstate__(self, p):
11029  if not hasattr(self, 'this'):
11030  self.__init__()
11031  if isinstance(p, tuple):
11032  d, p = p
11033  self.__dict__.update(d)
11034  return self._set_from_binary(p)
11035 
11036 
11037  def _get_jax(self):
11038  from . import _jax_util
11039  return _jax_util._get_jax_restraint(self)
11040 
11041 
11042 # Register PairRestraint in _IMP_core:
11043 _IMP_core.PairRestraint_swigregister(PairRestraint)
11044 class SingletonRestraint(IMP.Restraint):
11045  r"""Proxy of C++ IMP::core::SingletonRestraint class."""
11046 
11047  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11048 
11049  def __init__(self, *args):
11050  r"""
11051  __init__(SingletonRestraint self, Model m, SingletonScore ss, ParticleIndex vt, std::string name="SingletonRestraint %1%") -> SingletonRestraint
11052  __init__(SingletonRestraint self) -> SingletonRestraint
11053  """
11054  _IMP_core.SingletonRestraint_swiginit(self, _IMP_core.new_SingletonRestraint(*args))
11055 
11056  def get_score_object(self):
11057  r"""get_score_object(SingletonRestraint self) -> SingletonScore"""
11058  return _IMP_core.SingletonRestraint_get_score_object(self)
11059 
11060  def get_index(self):
11061  r"""get_index(SingletonRestraint self) -> ParticleIndex"""
11062  return _IMP_core.SingletonRestraint_get_index(self)
11063 
11064  def get_version_info(self):
11065  r"""get_version_info(SingletonRestraint self) -> VersionInfo"""
11066  return _IMP_core.SingletonRestraint_get_version_info(self)
11067  __swig_destroy__ = _IMP_core.delete_SingletonRestraint
11068 
11069  def __str__(self):
11070  r"""__str__(SingletonRestraint self) -> std::string"""
11071  return _IMP_core.SingletonRestraint___str__(self)
11072 
11073  def __repr__(self):
11074  r"""__repr__(SingletonRestraint self) -> std::string"""
11075  return _IMP_core.SingletonRestraint___repr__(self)
11076 
11077  @staticmethod
11078  def get_from(o):
11079  return _object_cast_to_SingletonRestraint(o)
11080 
11081 
11082  def _get_as_binary(self):
11083  r"""_get_as_binary(SingletonRestraint self) -> PyObject *"""
11084  return _IMP_core.SingletonRestraint__get_as_binary(self)
11085 
11086  def _set_from_binary(self, p):
11087  r"""_set_from_binary(SingletonRestraint self, PyObject * p)"""
11088  return _IMP_core.SingletonRestraint__set_from_binary(self, p)
11089 
11090  def __getstate__(self):
11091  p = self._get_as_binary()
11092  if len(self.__dict__) > 1:
11093  d = self.__dict__.copy()
11094  del d['this']
11095  p = (d, p)
11096  return p
11097 
11098  def __setstate__(self, p):
11099  if not hasattr(self, 'this'):
11100  self.__init__()
11101  if isinstance(p, tuple):
11102  d, p = p
11103  self.__dict__.update(d)
11104  return self._set_from_binary(p)
11105 
11106 
11107  def _get_jax(self):
11108  from . import _jax_util
11109  return _jax_util._get_jax_restraint(self)
11110 
11111 
11112 # Register SingletonRestraint in _IMP_core:
11113 _IMP_core.SingletonRestraint_swigregister(SingletonRestraint)
11114 class TripletRestraint(IMP.Restraint):
11115  r"""Proxy of C++ IMP::core::TripletRestraint class."""
11116 
11117  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11118 
11119  def __init__(self, *args):
11120  r"""
11121  __init__(TripletRestraint self, Model m, TripletScore ss, IMP::ParticleIndexTriplet const & vt, std::string name="TripletRestraint %1%") -> TripletRestraint
11122  __init__(TripletRestraint self) -> TripletRestraint
11123  """
11124  _IMP_core.TripletRestraint_swiginit(self, _IMP_core.new_TripletRestraint(*args))
11125 
11126  def get_score_object(self):
11127  r"""get_score_object(TripletRestraint self) -> TripletScore"""
11128  return _IMP_core.TripletRestraint_get_score_object(self)
11129 
11130  def get_index(self):
11131  r"""get_index(TripletRestraint self) -> IMP::TripletScore::IndexArgument"""
11132  return _IMP_core.TripletRestraint_get_index(self)
11133 
11134  def get_version_info(self):
11135  r"""get_version_info(TripletRestraint self) -> VersionInfo"""
11136  return _IMP_core.TripletRestraint_get_version_info(self)
11137  __swig_destroy__ = _IMP_core.delete_TripletRestraint
11138 
11139  def __str__(self):
11140  r"""__str__(TripletRestraint self) -> std::string"""
11141  return _IMP_core.TripletRestraint___str__(self)
11142 
11143  def __repr__(self):
11144  r"""__repr__(TripletRestraint self) -> std::string"""
11145  return _IMP_core.TripletRestraint___repr__(self)
11146 
11147  @staticmethod
11148  def get_from(o):
11149  return _object_cast_to_TripletRestraint(o)
11150 
11151 
11152  def _get_as_binary(self):
11153  r"""_get_as_binary(TripletRestraint self) -> PyObject *"""
11154  return _IMP_core.TripletRestraint__get_as_binary(self)
11155 
11156  def _set_from_binary(self, p):
11157  r"""_set_from_binary(TripletRestraint self, PyObject * p)"""
11158  return _IMP_core.TripletRestraint__set_from_binary(self, p)
11159 
11160  def __getstate__(self):
11161  p = self._get_as_binary()
11162  if len(self.__dict__) > 1:
11163  d = self.__dict__.copy()
11164  del d['this']
11165  p = (d, p)
11166  return p
11167 
11168  def __setstate__(self, p):
11169  if not hasattr(self, 'this'):
11170  self.__init__()
11171  if isinstance(p, tuple):
11172  d, p = p
11173  self.__dict__.update(d)
11174  return self._set_from_binary(p)
11175 
11176 
11177 # Register TripletRestraint in _IMP_core:
11178 _IMP_core.TripletRestraint_swigregister(TripletRestraint)
11179 class QuadRestraint(IMP.Restraint):
11180  r"""Proxy of C++ IMP::core::QuadRestraint class."""
11181 
11182  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11183 
11184  def __init__(self, *args):
11185  r"""
11186  __init__(QuadRestraint self, Model m, QuadScore ss, IMP::ParticleIndexQuad const & vt, std::string name="QuadRestraint %1%") -> QuadRestraint
11187  __init__(QuadRestraint self) -> QuadRestraint
11188  """
11189  _IMP_core.QuadRestraint_swiginit(self, _IMP_core.new_QuadRestraint(*args))
11190 
11191  def get_score_object(self):
11192  r"""get_score_object(QuadRestraint self) -> QuadScore"""
11193  return _IMP_core.QuadRestraint_get_score_object(self)
11194 
11195  def get_index(self):
11196  r"""get_index(QuadRestraint self) -> IMP::QuadScore::IndexArgument"""
11197  return _IMP_core.QuadRestraint_get_index(self)
11198 
11199  def get_version_info(self):
11200  r"""get_version_info(QuadRestraint self) -> VersionInfo"""
11201  return _IMP_core.QuadRestraint_get_version_info(self)
11202  __swig_destroy__ = _IMP_core.delete_QuadRestraint
11203 
11204  def __str__(self):
11205  r"""__str__(QuadRestraint self) -> std::string"""
11206  return _IMP_core.QuadRestraint___str__(self)
11207 
11208  def __repr__(self):
11209  r"""__repr__(QuadRestraint self) -> std::string"""
11210  return _IMP_core.QuadRestraint___repr__(self)
11211 
11212  @staticmethod
11213  def get_from(o):
11214  return _object_cast_to_QuadRestraint(o)
11215 
11216 
11217  def _get_as_binary(self):
11218  r"""_get_as_binary(QuadRestraint self) -> PyObject *"""
11219  return _IMP_core.QuadRestraint__get_as_binary(self)
11220 
11221  def _set_from_binary(self, p):
11222  r"""_set_from_binary(QuadRestraint self, PyObject * p)"""
11223  return _IMP_core.QuadRestraint__set_from_binary(self, p)
11224 
11225  def __getstate__(self):
11226  p = self._get_as_binary()
11227  if len(self.__dict__) > 1:
11228  d = self.__dict__.copy()
11229  del d['this']
11230  p = (d, p)
11231  return p
11232 
11233  def __setstate__(self, p):
11234  if not hasattr(self, 'this'):
11235  self.__init__()
11236  if isinstance(p, tuple):
11237  d, p = p
11238  self.__dict__.update(d)
11239  return self._set_from_binary(p)
11240 
11241 
11242 # Register QuadRestraint in _IMP_core:
11243 _IMP_core.QuadRestraint_swigregister(QuadRestraint)
11244 class SingletonConstraint(IMP.Constraint):
11245  r"""Proxy of C++ IMP::core::SingletonConstraint class."""
11246 
11247  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11248 
11249  def __init__(self, *args):
11250  r"""
11251  __init__(SingletonConstraint self, SingletonModifier before, SingletonModifier after, Model m, ParticleIndex vt, std::string name="SingletonConstraint %1%", bool can_skip=False) -> SingletonConstraint
11252  __init__(SingletonConstraint self) -> SingletonConstraint
11253  """
11254  _IMP_core.SingletonConstraint_swiginit(self, _IMP_core.new_SingletonConstraint(*args))
11255 
11256  def get_before_modifier(self):
11257  r"""get_before_modifier(SingletonConstraint self) -> SingletonModifier"""
11258  return _IMP_core.SingletonConstraint_get_before_modifier(self)
11259 
11260  def get_index(self):
11261  r"""get_index(SingletonConstraint self) -> ParticleIndex"""
11262  return _IMP_core.SingletonConstraint_get_index(self)
11263 
11264  def get_version_info(self):
11265  r"""get_version_info(SingletonConstraint self) -> VersionInfo"""
11266  return _IMP_core.SingletonConstraint_get_version_info(self)
11267  __swig_destroy__ = _IMP_core.delete_SingletonConstraint
11268 
11269  def __str__(self):
11270  r"""__str__(SingletonConstraint self) -> std::string"""
11271  return _IMP_core.SingletonConstraint___str__(self)
11272 
11273  def __repr__(self):
11274  r"""__repr__(SingletonConstraint self) -> std::string"""
11275  return _IMP_core.SingletonConstraint___repr__(self)
11276 
11277  @staticmethod
11278  def get_from(o):
11279  return _object_cast_to_SingletonConstraint(o)
11280 
11281 
11282  def _get_as_binary(self):
11283  r"""_get_as_binary(SingletonConstraint self) -> PyObject *"""
11284  return _IMP_core.SingletonConstraint__get_as_binary(self)
11285 
11286  def _set_from_binary(self, p):
11287  r"""_set_from_binary(SingletonConstraint self, PyObject * p)"""
11288  return _IMP_core.SingletonConstraint__set_from_binary(self, p)
11289 
11290  def __getstate__(self):
11291  p = self._get_as_binary()
11292  if len(self.__dict__) > 1:
11293  d = self.__dict__.copy()
11294  del d['this']
11295  p = (d, p)
11296  return p
11297 
11298  def __setstate__(self, p):
11299  if not hasattr(self, 'this'):
11300  self.__init__()
11301  if isinstance(p, tuple):
11302  d, p = p
11303  self.__dict__.update(d)
11304  return self._set_from_binary(p)
11305 
11306 
11307  def _get_jax(self):
11308  import functools
11309  index = self.get_index()
11310  mod = self.get_before_modifier().get_derived_object()
11311  ji = mod._get_jax(self.get_model(), index)
11312  return self._wrap_jax(
11313  functools.partial(ji.apply_func, indexes=index),
11314  keys=ji._keys)
11315 
11316 
11317 # Register SingletonConstraint in _IMP_core:
11318 _IMP_core.SingletonConstraint_swigregister(SingletonConstraint)
11319 class PairConstraint(IMP.Constraint):
11320  r"""Proxy of C++ IMP::core::PairConstraint class."""
11321 
11322  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11323 
11324  def __init__(self, *args):
11325  r"""
11326  __init__(PairConstraint self, PairModifier before, PairModifier after, Model m, IMP::ParticleIndexPair const & vt, std::string name="PairConstraint %1%", bool can_skip=False) -> PairConstraint
11327  __init__(PairConstraint self) -> PairConstraint
11328  """
11329  _IMP_core.PairConstraint_swiginit(self, _IMP_core.new_PairConstraint(*args))
11330 
11331  def get_before_modifier(self):
11332  r"""get_before_modifier(PairConstraint self) -> PairModifier"""
11333  return _IMP_core.PairConstraint_get_before_modifier(self)
11334 
11335  def get_index(self):
11336  r"""get_index(PairConstraint self) -> IMP::PairModifier::IndexArgument"""
11337  return _IMP_core.PairConstraint_get_index(self)
11338 
11339  def get_version_info(self):
11340  r"""get_version_info(PairConstraint self) -> VersionInfo"""
11341  return _IMP_core.PairConstraint_get_version_info(self)
11342  __swig_destroy__ = _IMP_core.delete_PairConstraint
11343 
11344  def __str__(self):
11345  r"""__str__(PairConstraint self) -> std::string"""
11346  return _IMP_core.PairConstraint___str__(self)
11347 
11348  def __repr__(self):
11349  r"""__repr__(PairConstraint self) -> std::string"""
11350  return _IMP_core.PairConstraint___repr__(self)
11351 
11352  @staticmethod
11353  def get_from(o):
11354  return _object_cast_to_PairConstraint(o)
11355 
11356 
11357  def _get_as_binary(self):
11358  r"""_get_as_binary(PairConstraint self) -> PyObject *"""
11359  return _IMP_core.PairConstraint__get_as_binary(self)
11360 
11361  def _set_from_binary(self, p):
11362  r"""_set_from_binary(PairConstraint self, PyObject * p)"""
11363  return _IMP_core.PairConstraint__set_from_binary(self, p)
11364 
11365  def __getstate__(self):
11366  p = self._get_as_binary()
11367  if len(self.__dict__) > 1:
11368  d = self.__dict__.copy()
11369  del d['this']
11370  p = (d, p)
11371  return p
11372 
11373  def __setstate__(self, p):
11374  if not hasattr(self, 'this'):
11375  self.__init__()
11376  if isinstance(p, tuple):
11377  d, p = p
11378  self.__dict__.update(d)
11379  return self._set_from_binary(p)
11380 
11381 
11382 # Register PairConstraint in _IMP_core:
11383 _IMP_core.PairConstraint_swigregister(PairConstraint)
11384 class TripletConstraint(IMP.Constraint):
11385  r"""Proxy of C++ IMP::core::TripletConstraint class."""
11386 
11387  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11388 
11389  def __init__(self, *args):
11390  r"""
11391  __init__(TripletConstraint self, TripletModifier before, TripletModifier after, Model m, IMP::ParticleIndexTriplet const & vt, std::string name="TripletConstraint %1%", bool can_skip=False) -> TripletConstraint
11392  __init__(TripletConstraint self) -> TripletConstraint
11393  """
11394  _IMP_core.TripletConstraint_swiginit(self, _IMP_core.new_TripletConstraint(*args))
11395 
11396  def get_before_modifier(self):
11397  r"""get_before_modifier(TripletConstraint self) -> TripletModifier"""
11398  return _IMP_core.TripletConstraint_get_before_modifier(self)
11399 
11400  def get_index(self):
11401  r"""get_index(TripletConstraint self) -> IMP::TripletModifier::IndexArgument"""
11402  return _IMP_core.TripletConstraint_get_index(self)
11403 
11404  def get_version_info(self):
11405  r"""get_version_info(TripletConstraint self) -> VersionInfo"""
11406  return _IMP_core.TripletConstraint_get_version_info(self)
11407  __swig_destroy__ = _IMP_core.delete_TripletConstraint
11408 
11409  def __str__(self):
11410  r"""__str__(TripletConstraint self) -> std::string"""
11411  return _IMP_core.TripletConstraint___str__(self)
11412 
11413  def __repr__(self):
11414  r"""__repr__(TripletConstraint self) -> std::string"""
11415  return _IMP_core.TripletConstraint___repr__(self)
11416 
11417  @staticmethod
11418  def get_from(o):
11419  return _object_cast_to_TripletConstraint(o)
11420 
11421 
11422  def _get_as_binary(self):
11423  r"""_get_as_binary(TripletConstraint self) -> PyObject *"""
11424  return _IMP_core.TripletConstraint__get_as_binary(self)
11425 
11426  def _set_from_binary(self, p):
11427  r"""_set_from_binary(TripletConstraint self, PyObject * p)"""
11428  return _IMP_core.TripletConstraint__set_from_binary(self, p)
11429 
11430  def __getstate__(self):
11431  p = self._get_as_binary()
11432  if len(self.__dict__) > 1:
11433  d = self.__dict__.copy()
11434  del d['this']
11435  p = (d, p)
11436  return p
11437 
11438  def __setstate__(self, p):
11439  if not hasattr(self, 'this'):
11440  self.__init__()
11441  if isinstance(p, tuple):
11442  d, p = p
11443  self.__dict__.update(d)
11444  return self._set_from_binary(p)
11445 
11446 
11447 # Register TripletConstraint in _IMP_core:
11448 _IMP_core.TripletConstraint_swigregister(TripletConstraint)
11449 class QuadConstraint(IMP.Constraint):
11450  r"""Proxy of C++ IMP::core::QuadConstraint class."""
11451 
11452  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11453 
11454  def __init__(self, *args):
11455  r"""
11456  __init__(QuadConstraint self, QuadModifier before, QuadModifier after, Model m, IMP::ParticleIndexQuad const & vt, std::string name="QuadConstraint %1%", bool can_skip=False) -> QuadConstraint
11457  __init__(QuadConstraint self) -> QuadConstraint
11458  """
11459  _IMP_core.QuadConstraint_swiginit(self, _IMP_core.new_QuadConstraint(*args))
11460 
11461  def get_before_modifier(self):
11462  r"""get_before_modifier(QuadConstraint self) -> QuadModifier"""
11463  return _IMP_core.QuadConstraint_get_before_modifier(self)
11464 
11465  def get_index(self):
11466  r"""get_index(QuadConstraint self) -> IMP::QuadModifier::IndexArgument"""
11467  return _IMP_core.QuadConstraint_get_index(self)
11468 
11469  def get_version_info(self):
11470  r"""get_version_info(QuadConstraint self) -> VersionInfo"""
11471  return _IMP_core.QuadConstraint_get_version_info(self)
11472  __swig_destroy__ = _IMP_core.delete_QuadConstraint
11473 
11474  def __str__(self):
11475  r"""__str__(QuadConstraint self) -> std::string"""
11476  return _IMP_core.QuadConstraint___str__(self)
11477 
11478  def __repr__(self):
11479  r"""__repr__(QuadConstraint self) -> std::string"""
11480  return _IMP_core.QuadConstraint___repr__(self)
11481 
11482  @staticmethod
11483  def get_from(o):
11484  return _object_cast_to_QuadConstraint(o)
11485 
11486 
11487  def _get_as_binary(self):
11488  r"""_get_as_binary(QuadConstraint self) -> PyObject *"""
11489  return _IMP_core.QuadConstraint__get_as_binary(self)
11490 
11491  def _set_from_binary(self, p):
11492  r"""_set_from_binary(QuadConstraint self, PyObject * p)"""
11493  return _IMP_core.QuadConstraint__set_from_binary(self, p)
11494 
11495  def __getstate__(self):
11496  p = self._get_as_binary()
11497  if len(self.__dict__) > 1:
11498  d = self.__dict__.copy()
11499  del d['this']
11500  p = (d, p)
11501  return p
11502 
11503  def __setstate__(self, p):
11504  if not hasattr(self, 'this'):
11505  self.__init__()
11506  if isinstance(p, tuple):
11507  d, p = p
11508  self.__dict__.update(d)
11509  return self._set_from_binary(p)
11510 
11511 
11512 # Register QuadConstraint in _IMP_core:
11513 _IMP_core.QuadConstraint_swigregister(QuadConstraint)
11514 class ConstantSingletonPredicate(IMP.SingletonPredicate):
11515  r"""Proxy of C++ IMP::core::ConstantSingletonPredicate class."""
11516 
11517  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11518 
11519  def __init__(self, *args):
11520  r"""
11521  __init__(ConstantSingletonPredicate self, int v, std::string name="ConstSingletonPredicate%1%") -> ConstantSingletonPredicate
11522  __init__(ConstantSingletonPredicate self) -> ConstantSingletonPredicate
11523  """
11524  _IMP_core.ConstantSingletonPredicate_swiginit(self, _IMP_core.new_ConstantSingletonPredicate(*args))
11525 
11526  def do_get_inputs(self, arg2, arg3):
11527  r"""do_get_inputs(ConstantSingletonPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
11528  return _IMP_core.ConstantSingletonPredicate_do_get_inputs(self, arg2, arg3)
11529 
11530  def get_value(self, *args):
11531  r"""
11532  get_value(ConstantSingletonPredicate self, Particle a) -> int
11533  get_value(ConstantSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
11534  """
11535  return _IMP_core.ConstantSingletonPredicate_get_value(self, *args)
11536 
11537  def get_value_index(self, *args):
11538  r"""
11539  get_value_index(ConstantSingletonPredicate self, Model arg2, ParticleIndex arg3) -> int
11540  get_value_index(ConstantSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
11541  """
11542  return _IMP_core.ConstantSingletonPredicate_get_value_index(self, *args)
11543 
11544  def get_version_info(self):
11545  r"""get_version_info(ConstantSingletonPredicate self) -> VersionInfo"""
11546  return _IMP_core.ConstantSingletonPredicate_get_version_info(self)
11547  __swig_destroy__ = _IMP_core.delete_ConstantSingletonPredicate
11548 
11549  def __str__(self):
11550  r"""__str__(ConstantSingletonPredicate self) -> std::string"""
11551  return _IMP_core.ConstantSingletonPredicate___str__(self)
11552 
11553  def __repr__(self):
11554  r"""__repr__(ConstantSingletonPredicate self) -> std::string"""
11555  return _IMP_core.ConstantSingletonPredicate___repr__(self)
11556 
11557  @staticmethod
11558  def get_from(o):
11559  return _object_cast_to_ConstantSingletonPredicate(o)
11560 
11561 
11562  def _get_as_binary(self):
11563  r"""_get_as_binary(ConstantSingletonPredicate self) -> PyObject *"""
11564  return _IMP_core.ConstantSingletonPredicate__get_as_binary(self)
11565 
11566  def _set_from_binary(self, p):
11567  r"""_set_from_binary(ConstantSingletonPredicate self, PyObject * p)"""
11568  return _IMP_core.ConstantSingletonPredicate__set_from_binary(self, p)
11569 
11570  def __getstate__(self):
11571  p = self._get_as_binary()
11572  if len(self.__dict__) > 1:
11573  d = self.__dict__.copy()
11574  del d['this']
11575  p = (d, p)
11576  return p
11577 
11578  def __setstate__(self, p):
11579  if not hasattr(self, 'this'):
11580  self.__init__()
11581  if isinstance(p, tuple):
11582  d, p = p
11583  self.__dict__.update(d)
11584  return self._set_from_binary(p)
11585 
11586 
11587 # Register ConstantSingletonPredicate in _IMP_core:
11588 _IMP_core.ConstantSingletonPredicate_swigregister(ConstantSingletonPredicate)
11589 class UnorderedTypeSingletonPredicate(IMP.SingletonPredicate):
11590  r"""Proxy of C++ IMP::core::UnorderedTypeSingletonPredicate class."""
11591 
11592  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11593 
11594  def __init__(self, *args):
11595  r"""__init__(UnorderedTypeSingletonPredicate self, std::string name="UnorderedTypeSingletonPredicate%1%") -> UnorderedTypeSingletonPredicate"""
11596  _IMP_core.UnorderedTypeSingletonPredicate_swiginit(self, _IMP_core.new_UnorderedTypeSingletonPredicate(*args))
11597 
11598  def do_get_inputs(self, m, pis):
11599  r"""do_get_inputs(UnorderedTypeSingletonPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
11600  return _IMP_core.UnorderedTypeSingletonPredicate_do_get_inputs(self, m, pis)
11601 
11602  def get_value(self, *args):
11603  r"""
11604  get_value(UnorderedTypeSingletonPredicate self, Particle a) -> int
11605  get_value(UnorderedTypeSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
11606  """
11607  return _IMP_core.UnorderedTypeSingletonPredicate_get_value(self, *args)
11608 
11609  def get_value_index(self, *args):
11610  r"""
11611  get_value_index(UnorderedTypeSingletonPredicate self, Model m, ParticleIndex pi) -> int
11612  get_value_index(UnorderedTypeSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
11613  """
11614  return _IMP_core.UnorderedTypeSingletonPredicate_get_value_index(self, *args)
11615 
11616  def get_version_info(self):
11617  r"""get_version_info(UnorderedTypeSingletonPredicate self) -> VersionInfo"""
11618  return _IMP_core.UnorderedTypeSingletonPredicate_get_version_info(self)
11619  __swig_destroy__ = _IMP_core.delete_UnorderedTypeSingletonPredicate
11620 
11621  def __str__(self):
11622  r"""__str__(UnorderedTypeSingletonPredicate self) -> std::string"""
11623  return _IMP_core.UnorderedTypeSingletonPredicate___str__(self)
11624 
11625  def __repr__(self):
11626  r"""__repr__(UnorderedTypeSingletonPredicate self) -> std::string"""
11627  return _IMP_core.UnorderedTypeSingletonPredicate___repr__(self)
11628 
11629  @staticmethod
11630  def get_from(o):
11631  return _object_cast_to_UnorderedTypeSingletonPredicate(o)
11632 
11633 
11634  def _get_as_binary(self):
11635  r"""_get_as_binary(UnorderedTypeSingletonPredicate self) -> PyObject *"""
11636  return _IMP_core.UnorderedTypeSingletonPredicate__get_as_binary(self)
11637 
11638  def _set_from_binary(self, p):
11639  r"""_set_from_binary(UnorderedTypeSingletonPredicate self, PyObject * p)"""
11640  return _IMP_core.UnorderedTypeSingletonPredicate__set_from_binary(self, p)
11641 
11642  def __getstate__(self):
11643  p = self._get_as_binary()
11644  if len(self.__dict__) > 1:
11645  d = self.__dict__.copy()
11646  del d['this']
11647  p = (d, p)
11648  return p
11649 
11650  def __setstate__(self, p):
11651  if not hasattr(self, 'this'):
11652  self.__init__()
11653  if isinstance(p, tuple):
11654  d, p = p
11655  self.__dict__.update(d)
11656  return self._set_from_binary(p)
11657 
11658 
11659 # Register UnorderedTypeSingletonPredicate in _IMP_core:
11660 _IMP_core.UnorderedTypeSingletonPredicate_swigregister(UnorderedTypeSingletonPredicate)
11661 class OrderedTypeSingletonPredicate(IMP.SingletonPredicate):
11662  r"""Proxy of C++ IMP::core::OrderedTypeSingletonPredicate class."""
11663 
11664  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11665 
11666  def __init__(self, *args):
11667  r"""__init__(OrderedTypeSingletonPredicate self, std::string name="OrderedTypeSingletonPredicate%1%") -> OrderedTypeSingletonPredicate"""
11668  _IMP_core.OrderedTypeSingletonPredicate_swiginit(self, _IMP_core.new_OrderedTypeSingletonPredicate(*args))
11669 
11670  def do_get_inputs(self, m, pis):
11671  r"""do_get_inputs(OrderedTypeSingletonPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
11672  return _IMP_core.OrderedTypeSingletonPredicate_do_get_inputs(self, m, pis)
11673 
11674  def get_value(self, *args):
11675  r"""
11676  get_value(OrderedTypeSingletonPredicate self, IMP::core::ParticleTypes const & types) -> int
11677  get_value(OrderedTypeSingletonPredicate self, Particle a) -> int
11678  get_value(OrderedTypeSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
11679  """
11680  return _IMP_core.OrderedTypeSingletonPredicate_get_value(self, *args)
11681 
11682  def get_value_index(self, *args):
11683  r"""
11684  get_value_index(OrderedTypeSingletonPredicate self, Model m, ParticleIndex pi) -> int
11685  get_value_index(OrderedTypeSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
11686  """
11687  return _IMP_core.OrderedTypeSingletonPredicate_get_value_index(self, *args)
11688 
11689  def get_version_info(self):
11690  r"""get_version_info(OrderedTypeSingletonPredicate self) -> VersionInfo"""
11691  return _IMP_core.OrderedTypeSingletonPredicate_get_version_info(self)
11692  __swig_destroy__ = _IMP_core.delete_OrderedTypeSingletonPredicate
11693 
11694  def __str__(self):
11695  r"""__str__(OrderedTypeSingletonPredicate self) -> std::string"""
11696  return _IMP_core.OrderedTypeSingletonPredicate___str__(self)
11697 
11698  def __repr__(self):
11699  r"""__repr__(OrderedTypeSingletonPredicate self) -> std::string"""
11700  return _IMP_core.OrderedTypeSingletonPredicate___repr__(self)
11701 
11702  @staticmethod
11703  def get_from(o):
11704  return _object_cast_to_OrderedTypeSingletonPredicate(o)
11705 
11706 
11707 # Register OrderedTypeSingletonPredicate in _IMP_core:
11708 _IMP_core.OrderedTypeSingletonPredicate_swigregister(OrderedTypeSingletonPredicate)
11709 class AllSameSingletonPredicate(IMP.SingletonPredicate):
11710  r"""Proxy of C++ IMP::core::AllSameSingletonPredicate class."""
11711 
11712  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11713 
11714  def __init__(self, *args):
11715  r"""__init__(AllSameSingletonPredicate self, std::string name="AllSameSingletonPredicate%1%") -> AllSameSingletonPredicate"""
11716  _IMP_core.AllSameSingletonPredicate_swiginit(self, _IMP_core.new_AllSameSingletonPredicate(*args))
11717 
11718  def do_get_inputs(self, arg2, arg3):
11719  r"""do_get_inputs(AllSameSingletonPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
11720  return _IMP_core.AllSameSingletonPredicate_do_get_inputs(self, arg2, arg3)
11721 
11722  def get_value(self, *args):
11723  r"""
11724  get_value(AllSameSingletonPredicate self, Particle a) -> int
11725  get_value(AllSameSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
11726  """
11727  return _IMP_core.AllSameSingletonPredicate_get_value(self, *args)
11728 
11729  def get_value_index(self, *args):
11730  r"""
11731  get_value_index(AllSameSingletonPredicate self, Model m, ParticleIndex pi) -> int
11732  get_value_index(AllSameSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
11733  """
11734  return _IMP_core.AllSameSingletonPredicate_get_value_index(self, *args)
11735 
11736  def get_version_info(self):
11737  r"""get_version_info(AllSameSingletonPredicate self) -> VersionInfo"""
11738  return _IMP_core.AllSameSingletonPredicate_get_version_info(self)
11739  __swig_destroy__ = _IMP_core.delete_AllSameSingletonPredicate
11740 
11741  def __str__(self):
11742  r"""__str__(AllSameSingletonPredicate self) -> std::string"""
11743  return _IMP_core.AllSameSingletonPredicate___str__(self)
11744 
11745  def __repr__(self):
11746  r"""__repr__(AllSameSingletonPredicate self) -> std::string"""
11747  return _IMP_core.AllSameSingletonPredicate___repr__(self)
11748 
11749  @staticmethod
11750  def get_from(o):
11751  return _object_cast_to_AllSameSingletonPredicate(o)
11752 
11753 
11754  def _get_as_binary(self):
11755  r"""_get_as_binary(AllSameSingletonPredicate self) -> PyObject *"""
11756  return _IMP_core.AllSameSingletonPredicate__get_as_binary(self)
11757 
11758  def _set_from_binary(self, p):
11759  r"""_set_from_binary(AllSameSingletonPredicate self, PyObject * p)"""
11760  return _IMP_core.AllSameSingletonPredicate__set_from_binary(self, p)
11761 
11762  def __getstate__(self):
11763  p = self._get_as_binary()
11764  if len(self.__dict__) > 1:
11765  d = self.__dict__.copy()
11766  del d['this']
11767  p = (d, p)
11768  return p
11769 
11770  def __setstate__(self, p):
11771  if not hasattr(self, 'this'):
11772  self.__init__()
11773  if isinstance(p, tuple):
11774  d, p = p
11775  self.__dict__.update(d)
11776  return self._set_from_binary(p)
11777 
11778 
11779 # Register AllSameSingletonPredicate in _IMP_core:
11780 _IMP_core.AllSameSingletonPredicate_swigregister(AllSameSingletonPredicate)
11781 class CoinFlipSingletonPredicate(IMP.SingletonPredicate):
11782  r"""Proxy of C++ IMP::core::CoinFlipSingletonPredicate class."""
11783 
11784  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11785 
11786  def __init__(self, *args):
11787  r"""__init__(CoinFlipSingletonPredicate self, double p, std::string name="CoinFlipSingletonPredicate%1%") -> CoinFlipSingletonPredicate"""
11788  _IMP_core.CoinFlipSingletonPredicate_swiginit(self, _IMP_core.new_CoinFlipSingletonPredicate(*args))
11789 
11790  def do_get_inputs(self, arg2, arg3):
11791  r"""do_get_inputs(CoinFlipSingletonPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
11792  return _IMP_core.CoinFlipSingletonPredicate_do_get_inputs(self, arg2, arg3)
11793 
11794  def get_value(self, *args):
11795  r"""
11796  get_value(CoinFlipSingletonPredicate self, Particle a) -> int
11797  get_value(CoinFlipSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
11798  """
11799  return _IMP_core.CoinFlipSingletonPredicate_get_value(self, *args)
11800 
11801  def get_value_index(self, *args):
11802  r"""
11803  get_value_index(CoinFlipSingletonPredicate self, Model arg2, ParticleIndex arg3) -> int
11804  get_value_index(CoinFlipSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
11805  """
11806  return _IMP_core.CoinFlipSingletonPredicate_get_value_index(self, *args)
11807 
11808  def get_version_info(self):
11809  r"""get_version_info(CoinFlipSingletonPredicate self) -> VersionInfo"""
11810  return _IMP_core.CoinFlipSingletonPredicate_get_version_info(self)
11811  __swig_destroy__ = _IMP_core.delete_CoinFlipSingletonPredicate
11812 
11813  def __str__(self):
11814  r"""__str__(CoinFlipSingletonPredicate self) -> std::string"""
11815  return _IMP_core.CoinFlipSingletonPredicate___str__(self)
11816 
11817  def __repr__(self):
11818  r"""__repr__(CoinFlipSingletonPredicate self) -> std::string"""
11819  return _IMP_core.CoinFlipSingletonPredicate___repr__(self)
11820 
11821  @staticmethod
11822  def get_from(o):
11823  return _object_cast_to_CoinFlipSingletonPredicate(o)
11824 
11825 
11826 # Register CoinFlipSingletonPredicate in _IMP_core:
11827 _IMP_core.CoinFlipSingletonPredicate_swigregister(CoinFlipSingletonPredicate)
11828 class ConstantPairPredicate(IMP.PairPredicate):
11829  r"""Proxy of C++ IMP::core::ConstantPairPredicate class."""
11830 
11831  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11832 
11833  def __init__(self, *args):
11834  r"""
11835  __init__(ConstantPairPredicate self, int v, std::string name="ConstPairPredicate%1%") -> ConstantPairPredicate
11836  __init__(ConstantPairPredicate self) -> ConstantPairPredicate
11837  """
11838  _IMP_core.ConstantPairPredicate_swiginit(self, _IMP_core.new_ConstantPairPredicate(*args))
11839 
11840  def do_get_inputs(self, arg2, arg3):
11841  r"""do_get_inputs(ConstantPairPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
11842  return _IMP_core.ConstantPairPredicate_do_get_inputs(self, arg2, arg3)
11843 
11844  def get_value(self, *args):
11845  r"""
11846  get_value(ConstantPairPredicate self, IMP::ParticlePair const & a) -> int
11847  get_value(ConstantPairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
11848  """
11849  return _IMP_core.ConstantPairPredicate_get_value(self, *args)
11850 
11851  def get_value_index(self, *args):
11852  r"""
11853  get_value_index(ConstantPairPredicate self, Model arg2, IMP::ParticleIndexPair const & arg3) -> int
11854  get_value_index(ConstantPairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
11855  """
11856  return _IMP_core.ConstantPairPredicate_get_value_index(self, *args)
11857 
11858  def get_version_info(self):
11859  r"""get_version_info(ConstantPairPredicate self) -> VersionInfo"""
11860  return _IMP_core.ConstantPairPredicate_get_version_info(self)
11861  __swig_destroy__ = _IMP_core.delete_ConstantPairPredicate
11862 
11863  def __str__(self):
11864  r"""__str__(ConstantPairPredicate self) -> std::string"""
11865  return _IMP_core.ConstantPairPredicate___str__(self)
11866 
11867  def __repr__(self):
11868  r"""__repr__(ConstantPairPredicate self) -> std::string"""
11869  return _IMP_core.ConstantPairPredicate___repr__(self)
11870 
11871  @staticmethod
11872  def get_from(o):
11873  return _object_cast_to_ConstantPairPredicate(o)
11874 
11875 
11876  def _get_as_binary(self):
11877  r"""_get_as_binary(ConstantPairPredicate self) -> PyObject *"""
11878  return _IMP_core.ConstantPairPredicate__get_as_binary(self)
11879 
11880  def _set_from_binary(self, p):
11881  r"""_set_from_binary(ConstantPairPredicate self, PyObject * p)"""
11882  return _IMP_core.ConstantPairPredicate__set_from_binary(self, p)
11883 
11884  def __getstate__(self):
11885  p = self._get_as_binary()
11886  if len(self.__dict__) > 1:
11887  d = self.__dict__.copy()
11888  del d['this']
11889  p = (d, p)
11890  return p
11891 
11892  def __setstate__(self, p):
11893  if not hasattr(self, 'this'):
11894  self.__init__()
11895  if isinstance(p, tuple):
11896  d, p = p
11897  self.__dict__.update(d)
11898  return self._set_from_binary(p)
11899 
11900 
11901 # Register ConstantPairPredicate in _IMP_core:
11902 _IMP_core.ConstantPairPredicate_swigregister(ConstantPairPredicate)
11903 class UnorderedTypePairPredicate(IMP.PairPredicate):
11904  r"""Proxy of C++ IMP::core::UnorderedTypePairPredicate class."""
11905 
11906  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11907 
11908  def __init__(self, *args):
11909  r"""__init__(UnorderedTypePairPredicate self, std::string name="UnorderedTypePairPredicate%1%") -> UnorderedTypePairPredicate"""
11910  _IMP_core.UnorderedTypePairPredicate_swiginit(self, _IMP_core.new_UnorderedTypePairPredicate(*args))
11911 
11912  def do_get_inputs(self, m, pis):
11913  r"""do_get_inputs(UnorderedTypePairPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
11914  return _IMP_core.UnorderedTypePairPredicate_do_get_inputs(self, m, pis)
11915 
11916  def get_value(self, *args):
11917  r"""
11918  get_value(UnorderedTypePairPredicate self, IMP::ParticlePair const & a) -> int
11919  get_value(UnorderedTypePairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
11920  """
11921  return _IMP_core.UnorderedTypePairPredicate_get_value(self, *args)
11922 
11923  def get_value_index(self, *args):
11924  r"""
11925  get_value_index(UnorderedTypePairPredicate self, Model m, IMP::ParticleIndexPair const & pi) -> int
11926  get_value_index(UnorderedTypePairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
11927  """
11928  return _IMP_core.UnorderedTypePairPredicate_get_value_index(self, *args)
11929 
11930  def get_version_info(self):
11931  r"""get_version_info(UnorderedTypePairPredicate self) -> VersionInfo"""
11932  return _IMP_core.UnorderedTypePairPredicate_get_version_info(self)
11933  __swig_destroy__ = _IMP_core.delete_UnorderedTypePairPredicate
11934 
11935  def __str__(self):
11936  r"""__str__(UnorderedTypePairPredicate self) -> std::string"""
11937  return _IMP_core.UnorderedTypePairPredicate___str__(self)
11938 
11939  def __repr__(self):
11940  r"""__repr__(UnorderedTypePairPredicate self) -> std::string"""
11941  return _IMP_core.UnorderedTypePairPredicate___repr__(self)
11942 
11943  @staticmethod
11944  def get_from(o):
11945  return _object_cast_to_UnorderedTypePairPredicate(o)
11946 
11947 
11948  def _get_as_binary(self):
11949  r"""_get_as_binary(UnorderedTypePairPredicate self) -> PyObject *"""
11950  return _IMP_core.UnorderedTypePairPredicate__get_as_binary(self)
11951 
11952  def _set_from_binary(self, p):
11953  r"""_set_from_binary(UnorderedTypePairPredicate self, PyObject * p)"""
11954  return _IMP_core.UnorderedTypePairPredicate__set_from_binary(self, p)
11955 
11956  def __getstate__(self):
11957  p = self._get_as_binary()
11958  if len(self.__dict__) > 1:
11959  d = self.__dict__.copy()
11960  del d['this']
11961  p = (d, p)
11962  return p
11963 
11964  def __setstate__(self, p):
11965  if not hasattr(self, 'this'):
11966  self.__init__()
11967  if isinstance(p, tuple):
11968  d, p = p
11969  self.__dict__.update(d)
11970  return self._set_from_binary(p)
11971 
11972 
11973 # Register UnorderedTypePairPredicate in _IMP_core:
11974 _IMP_core.UnorderedTypePairPredicate_swigregister(UnorderedTypePairPredicate)
11975 class OrderedTypePairPredicate(IMP.PairPredicate):
11976  r"""Proxy of C++ IMP::core::OrderedTypePairPredicate class."""
11977 
11978  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
11979 
11980  def __init__(self, *args):
11981  r"""__init__(OrderedTypePairPredicate self, std::string name="OrderedTypePairPredicate%1%") -> OrderedTypePairPredicate"""
11982  _IMP_core.OrderedTypePairPredicate_swiginit(self, _IMP_core.new_OrderedTypePairPredicate(*args))
11983 
11984  def do_get_inputs(self, m, pis):
11985  r"""do_get_inputs(OrderedTypePairPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
11986  return _IMP_core.OrderedTypePairPredicate_do_get_inputs(self, m, pis)
11987 
11988  def get_value(self, *args):
11989  r"""
11990  get_value(OrderedTypePairPredicate self, IMP::core::ParticleTypes const & types) -> int
11991  get_value(OrderedTypePairPredicate self, IMP::ParticlePair const & a) -> int
11992  get_value(OrderedTypePairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
11993  """
11994  return _IMP_core.OrderedTypePairPredicate_get_value(self, *args)
11995 
11996  def get_value_index(self, *args):
11997  r"""
11998  get_value_index(OrderedTypePairPredicate self, Model m, IMP::ParticleIndexPair const & pi) -> int
11999  get_value_index(OrderedTypePairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
12000  """
12001  return _IMP_core.OrderedTypePairPredicate_get_value_index(self, *args)
12002 
12003  def get_version_info(self):
12004  r"""get_version_info(OrderedTypePairPredicate self) -> VersionInfo"""
12005  return _IMP_core.OrderedTypePairPredicate_get_version_info(self)
12006  __swig_destroy__ = _IMP_core.delete_OrderedTypePairPredicate
12007 
12008  def __str__(self):
12009  r"""__str__(OrderedTypePairPredicate self) -> std::string"""
12010  return _IMP_core.OrderedTypePairPredicate___str__(self)
12011 
12012  def __repr__(self):
12013  r"""__repr__(OrderedTypePairPredicate self) -> std::string"""
12014  return _IMP_core.OrderedTypePairPredicate___repr__(self)
12015 
12016  @staticmethod
12017  def get_from(o):
12018  return _object_cast_to_OrderedTypePairPredicate(o)
12019 
12020 
12021 # Register OrderedTypePairPredicate in _IMP_core:
12022 _IMP_core.OrderedTypePairPredicate_swigregister(OrderedTypePairPredicate)
12023 class AllSamePairPredicate(IMP.PairPredicate):
12024  r"""Proxy of C++ IMP::core::AllSamePairPredicate class."""
12025 
12026  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12027 
12028  def __init__(self, *args):
12029  r"""__init__(AllSamePairPredicate self, std::string name="AllSamePairPredicate%1%") -> AllSamePairPredicate"""
12030  _IMP_core.AllSamePairPredicate_swiginit(self, _IMP_core.new_AllSamePairPredicate(*args))
12031 
12032  def do_get_inputs(self, arg2, arg3):
12033  r"""do_get_inputs(AllSamePairPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12034  return _IMP_core.AllSamePairPredicate_do_get_inputs(self, arg2, arg3)
12035 
12036  def get_value(self, *args):
12037  r"""
12038  get_value(AllSamePairPredicate self, IMP::ParticlePair const & a) -> int
12039  get_value(AllSamePairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
12040  """
12041  return _IMP_core.AllSamePairPredicate_get_value(self, *args)
12042 
12043  def get_value_index(self, *args):
12044  r"""
12045  get_value_index(AllSamePairPredicate self, Model m, IMP::ParticleIndexPair const & pi) -> int
12046  get_value_index(AllSamePairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
12047  """
12048  return _IMP_core.AllSamePairPredicate_get_value_index(self, *args)
12049 
12050  def get_version_info(self):
12051  r"""get_version_info(AllSamePairPredicate self) -> VersionInfo"""
12052  return _IMP_core.AllSamePairPredicate_get_version_info(self)
12053  __swig_destroy__ = _IMP_core.delete_AllSamePairPredicate
12054 
12055  def __str__(self):
12056  r"""__str__(AllSamePairPredicate self) -> std::string"""
12057  return _IMP_core.AllSamePairPredicate___str__(self)
12058 
12059  def __repr__(self):
12060  r"""__repr__(AllSamePairPredicate self) -> std::string"""
12061  return _IMP_core.AllSamePairPredicate___repr__(self)
12062 
12063  @staticmethod
12064  def get_from(o):
12065  return _object_cast_to_AllSamePairPredicate(o)
12066 
12067 
12068  def _get_as_binary(self):
12069  r"""_get_as_binary(AllSamePairPredicate self) -> PyObject *"""
12070  return _IMP_core.AllSamePairPredicate__get_as_binary(self)
12071 
12072  def _set_from_binary(self, p):
12073  r"""_set_from_binary(AllSamePairPredicate self, PyObject * p)"""
12074  return _IMP_core.AllSamePairPredicate__set_from_binary(self, p)
12075 
12076  def __getstate__(self):
12077  p = self._get_as_binary()
12078  if len(self.__dict__) > 1:
12079  d = self.__dict__.copy()
12080  del d['this']
12081  p = (d, p)
12082  return p
12083 
12084  def __setstate__(self, p):
12085  if not hasattr(self, 'this'):
12086  self.__init__()
12087  if isinstance(p, tuple):
12088  d, p = p
12089  self.__dict__.update(d)
12090  return self._set_from_binary(p)
12091 
12092 
12093 # Register AllSamePairPredicate in _IMP_core:
12094 _IMP_core.AllSamePairPredicate_swigregister(AllSamePairPredicate)
12095 class CoinFlipPairPredicate(IMP.PairPredicate):
12096  r"""Proxy of C++ IMP::core::CoinFlipPairPredicate class."""
12097 
12098  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12099 
12100  def __init__(self, *args):
12101  r"""__init__(CoinFlipPairPredicate self, double p, std::string name="CoinFlipPairPredicate%1%") -> CoinFlipPairPredicate"""
12102  _IMP_core.CoinFlipPairPredicate_swiginit(self, _IMP_core.new_CoinFlipPairPredicate(*args))
12103 
12104  def do_get_inputs(self, arg2, arg3):
12105  r"""do_get_inputs(CoinFlipPairPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12106  return _IMP_core.CoinFlipPairPredicate_do_get_inputs(self, arg2, arg3)
12107 
12108  def get_value(self, *args):
12109  r"""
12110  get_value(CoinFlipPairPredicate self, IMP::ParticlePair const & a) -> int
12111  get_value(CoinFlipPairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
12112  """
12113  return _IMP_core.CoinFlipPairPredicate_get_value(self, *args)
12114 
12115  def get_value_index(self, *args):
12116  r"""
12117  get_value_index(CoinFlipPairPredicate self, Model arg2, IMP::ParticleIndexPair const & arg3) -> int
12118  get_value_index(CoinFlipPairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
12119  """
12120  return _IMP_core.CoinFlipPairPredicate_get_value_index(self, *args)
12121 
12122  def get_version_info(self):
12123  r"""get_version_info(CoinFlipPairPredicate self) -> VersionInfo"""
12124  return _IMP_core.CoinFlipPairPredicate_get_version_info(self)
12125  __swig_destroy__ = _IMP_core.delete_CoinFlipPairPredicate
12126 
12127  def __str__(self):
12128  r"""__str__(CoinFlipPairPredicate self) -> std::string"""
12129  return _IMP_core.CoinFlipPairPredicate___str__(self)
12130 
12131  def __repr__(self):
12132  r"""__repr__(CoinFlipPairPredicate self) -> std::string"""
12133  return _IMP_core.CoinFlipPairPredicate___repr__(self)
12134 
12135  @staticmethod
12136  def get_from(o):
12137  return _object_cast_to_CoinFlipPairPredicate(o)
12138 
12139 
12140 # Register CoinFlipPairPredicate in _IMP_core:
12141 _IMP_core.CoinFlipPairPredicate_swigregister(CoinFlipPairPredicate)
12142 class ConstantTripletPredicate(IMP.TripletPredicate):
12143  r"""Proxy of C++ IMP::core::ConstantTripletPredicate class."""
12144 
12145  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12146 
12147  def __init__(self, *args):
12148  r"""
12149  __init__(ConstantTripletPredicate self, int v, std::string name="ConstTripletPredicate%1%") -> ConstantTripletPredicate
12150  __init__(ConstantTripletPredicate self) -> ConstantTripletPredicate
12151  """
12152  _IMP_core.ConstantTripletPredicate_swiginit(self, _IMP_core.new_ConstantTripletPredicate(*args))
12153 
12154  def do_get_inputs(self, arg2, arg3):
12155  r"""do_get_inputs(ConstantTripletPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12156  return _IMP_core.ConstantTripletPredicate_do_get_inputs(self, arg2, arg3)
12157 
12158  def get_value(self, *args):
12159  r"""
12160  get_value(ConstantTripletPredicate self, IMP::ParticleTriplet const & a) -> int
12161  get_value(ConstantTripletPredicate self, IMP::ParticleTripletsTemp const & o) -> IMP::Ints
12162  """
12163  return _IMP_core.ConstantTripletPredicate_get_value(self, *args)
12164 
12165  def get_value_index(self, *args):
12166  r"""
12167  get_value_index(ConstantTripletPredicate self, Model arg2, IMP::ParticleIndexTriplet const & arg3) -> int
12168  get_value_index(ConstantTripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
12169  """
12170  return _IMP_core.ConstantTripletPredicate_get_value_index(self, *args)
12171 
12172  def get_version_info(self):
12173  r"""get_version_info(ConstantTripletPredicate self) -> VersionInfo"""
12174  return _IMP_core.ConstantTripletPredicate_get_version_info(self)
12175  __swig_destroy__ = _IMP_core.delete_ConstantTripletPredicate
12176 
12177  def __str__(self):
12178  r"""__str__(ConstantTripletPredicate self) -> std::string"""
12179  return _IMP_core.ConstantTripletPredicate___str__(self)
12180 
12181  def __repr__(self):
12182  r"""__repr__(ConstantTripletPredicate self) -> std::string"""
12183  return _IMP_core.ConstantTripletPredicate___repr__(self)
12184 
12185  @staticmethod
12186  def get_from(o):
12187  return _object_cast_to_ConstantTripletPredicate(o)
12188 
12189 
12190  def _get_as_binary(self):
12191  r"""_get_as_binary(ConstantTripletPredicate self) -> PyObject *"""
12192  return _IMP_core.ConstantTripletPredicate__get_as_binary(self)
12193 
12194  def _set_from_binary(self, p):
12195  r"""_set_from_binary(ConstantTripletPredicate self, PyObject * p)"""
12196  return _IMP_core.ConstantTripletPredicate__set_from_binary(self, p)
12197 
12198  def __getstate__(self):
12199  p = self._get_as_binary()
12200  if len(self.__dict__) > 1:
12201  d = self.__dict__.copy()
12202  del d['this']
12203  p = (d, p)
12204  return p
12205 
12206  def __setstate__(self, p):
12207  if not hasattr(self, 'this'):
12208  self.__init__()
12209  if isinstance(p, tuple):
12210  d, p = p
12211  self.__dict__.update(d)
12212  return self._set_from_binary(p)
12213 
12214 
12215 # Register ConstantTripletPredicate in _IMP_core:
12216 _IMP_core.ConstantTripletPredicate_swigregister(ConstantTripletPredicate)
12217 class UnorderedTypeTripletPredicate(IMP.TripletPredicate):
12218  r"""Proxy of C++ IMP::core::UnorderedTypeTripletPredicate class."""
12219 
12220  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12221 
12222  def __init__(self, *args):
12223  r"""__init__(UnorderedTypeTripletPredicate self, std::string name="UnorderedTypeTripletPredicate%1%") -> UnorderedTypeTripletPredicate"""
12224  _IMP_core.UnorderedTypeTripletPredicate_swiginit(self, _IMP_core.new_UnorderedTypeTripletPredicate(*args))
12225 
12226  def do_get_inputs(self, m, pis):
12227  r"""do_get_inputs(UnorderedTypeTripletPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
12228  return _IMP_core.UnorderedTypeTripletPredicate_do_get_inputs(self, m, pis)
12229 
12230  def get_value(self, *args):
12231  r"""
12232  get_value(UnorderedTypeTripletPredicate self, IMP::ParticleTriplet const & a) -> int
12233  get_value(UnorderedTypeTripletPredicate self, IMP::ParticleTripletsTemp const & o) -> IMP::Ints
12234  """
12235  return _IMP_core.UnorderedTypeTripletPredicate_get_value(self, *args)
12236 
12237  def get_value_index(self, *args):
12238  r"""
12239  get_value_index(UnorderedTypeTripletPredicate self, Model m, IMP::ParticleIndexTriplet const & pi) -> int
12240  get_value_index(UnorderedTypeTripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
12241  """
12242  return _IMP_core.UnorderedTypeTripletPredicate_get_value_index(self, *args)
12243 
12244  def get_version_info(self):
12245  r"""get_version_info(UnorderedTypeTripletPredicate self) -> VersionInfo"""
12246  return _IMP_core.UnorderedTypeTripletPredicate_get_version_info(self)
12247  __swig_destroy__ = _IMP_core.delete_UnorderedTypeTripletPredicate
12248 
12249  def __str__(self):
12250  r"""__str__(UnorderedTypeTripletPredicate self) -> std::string"""
12251  return _IMP_core.UnorderedTypeTripletPredicate___str__(self)
12252 
12253  def __repr__(self):
12254  r"""__repr__(UnorderedTypeTripletPredicate self) -> std::string"""
12255  return _IMP_core.UnorderedTypeTripletPredicate___repr__(self)
12256 
12257  @staticmethod
12258  def get_from(o):
12259  return _object_cast_to_UnorderedTypeTripletPredicate(o)
12260 
12261 
12262  def _get_as_binary(self):
12263  r"""_get_as_binary(UnorderedTypeTripletPredicate self) -> PyObject *"""
12264  return _IMP_core.UnorderedTypeTripletPredicate__get_as_binary(self)
12265 
12266  def _set_from_binary(self, p):
12267  r"""_set_from_binary(UnorderedTypeTripletPredicate self, PyObject * p)"""
12268  return _IMP_core.UnorderedTypeTripletPredicate__set_from_binary(self, p)
12269 
12270  def __getstate__(self):
12271  p = self._get_as_binary()
12272  if len(self.__dict__) > 1:
12273  d = self.__dict__.copy()
12274  del d['this']
12275  p = (d, p)
12276  return p
12277 
12278  def __setstate__(self, p):
12279  if not hasattr(self, 'this'):
12280  self.__init__()
12281  if isinstance(p, tuple):
12282  d, p = p
12283  self.__dict__.update(d)
12284  return self._set_from_binary(p)
12285 
12286 
12287 # Register UnorderedTypeTripletPredicate in _IMP_core:
12288 _IMP_core.UnorderedTypeTripletPredicate_swigregister(UnorderedTypeTripletPredicate)
12289 class OrderedTypeTripletPredicate(IMP.TripletPredicate):
12290  r"""Proxy of C++ IMP::core::OrderedTypeTripletPredicate class."""
12291 
12292  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12293 
12294  def __init__(self, *args):
12295  r"""__init__(OrderedTypeTripletPredicate self, std::string name="OrderedTypeTripletPredicate%1%") -> OrderedTypeTripletPredicate"""
12296  _IMP_core.OrderedTypeTripletPredicate_swiginit(self, _IMP_core.new_OrderedTypeTripletPredicate(*args))
12297 
12298  def do_get_inputs(self, m, pis):
12299  r"""do_get_inputs(OrderedTypeTripletPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
12300  return _IMP_core.OrderedTypeTripletPredicate_do_get_inputs(self, m, pis)
12301 
12302  def get_value(self, *args):
12303  r"""
12304  get_value(OrderedTypeTripletPredicate self, IMP::core::ParticleTypes const & types) -> int
12305  get_value(OrderedTypeTripletPredicate self, IMP::ParticleTriplet const & a) -> int
12306  get_value(OrderedTypeTripletPredicate self, IMP::ParticleTripletsTemp const & o) -> IMP::Ints
12307  """
12308  return _IMP_core.OrderedTypeTripletPredicate_get_value(self, *args)
12309 
12310  def get_value_index(self, *args):
12311  r"""
12312  get_value_index(OrderedTypeTripletPredicate self, Model m, IMP::ParticleIndexTriplet const & pi) -> int
12313  get_value_index(OrderedTypeTripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
12314  """
12315  return _IMP_core.OrderedTypeTripletPredicate_get_value_index(self, *args)
12316 
12317  def get_version_info(self):
12318  r"""get_version_info(OrderedTypeTripletPredicate self) -> VersionInfo"""
12319  return _IMP_core.OrderedTypeTripletPredicate_get_version_info(self)
12320  __swig_destroy__ = _IMP_core.delete_OrderedTypeTripletPredicate
12321 
12322  def __str__(self):
12323  r"""__str__(OrderedTypeTripletPredicate self) -> std::string"""
12324  return _IMP_core.OrderedTypeTripletPredicate___str__(self)
12325 
12326  def __repr__(self):
12327  r"""__repr__(OrderedTypeTripletPredicate self) -> std::string"""
12328  return _IMP_core.OrderedTypeTripletPredicate___repr__(self)
12329 
12330  @staticmethod
12331  def get_from(o):
12332  return _object_cast_to_OrderedTypeTripletPredicate(o)
12333 
12334 
12335 # Register OrderedTypeTripletPredicate in _IMP_core:
12336 _IMP_core.OrderedTypeTripletPredicate_swigregister(OrderedTypeTripletPredicate)
12337 class AllSameTripletPredicate(IMP.TripletPredicate):
12338  r"""Proxy of C++ IMP::core::AllSameTripletPredicate class."""
12339 
12340  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12341 
12342  def __init__(self, *args):
12343  r"""__init__(AllSameTripletPredicate self, std::string name="AllSameTripletPredicate%1%") -> AllSameTripletPredicate"""
12344  _IMP_core.AllSameTripletPredicate_swiginit(self, _IMP_core.new_AllSameTripletPredicate(*args))
12345 
12346  def do_get_inputs(self, arg2, arg3):
12347  r"""do_get_inputs(AllSameTripletPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12348  return _IMP_core.AllSameTripletPredicate_do_get_inputs(self, arg2, arg3)
12349 
12350  def get_value(self, *args):
12351  r"""
12352  get_value(AllSameTripletPredicate self, IMP::ParticleTriplet const & a) -> int
12353  get_value(AllSameTripletPredicate self, IMP::ParticleTripletsTemp const & o) -> IMP::Ints
12354  """
12355  return _IMP_core.AllSameTripletPredicate_get_value(self, *args)
12356 
12357  def get_value_index(self, *args):
12358  r"""
12359  get_value_index(AllSameTripletPredicate self, Model m, IMP::ParticleIndexTriplet const & pi) -> int
12360  get_value_index(AllSameTripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
12361  """
12362  return _IMP_core.AllSameTripletPredicate_get_value_index(self, *args)
12363 
12364  def get_version_info(self):
12365  r"""get_version_info(AllSameTripletPredicate self) -> VersionInfo"""
12366  return _IMP_core.AllSameTripletPredicate_get_version_info(self)
12367  __swig_destroy__ = _IMP_core.delete_AllSameTripletPredicate
12368 
12369  def __str__(self):
12370  r"""__str__(AllSameTripletPredicate self) -> std::string"""
12371  return _IMP_core.AllSameTripletPredicate___str__(self)
12372 
12373  def __repr__(self):
12374  r"""__repr__(AllSameTripletPredicate self) -> std::string"""
12375  return _IMP_core.AllSameTripletPredicate___repr__(self)
12376 
12377  @staticmethod
12378  def get_from(o):
12379  return _object_cast_to_AllSameTripletPredicate(o)
12380 
12381 
12382  def _get_as_binary(self):
12383  r"""_get_as_binary(AllSameTripletPredicate self) -> PyObject *"""
12384  return _IMP_core.AllSameTripletPredicate__get_as_binary(self)
12385 
12386  def _set_from_binary(self, p):
12387  r"""_set_from_binary(AllSameTripletPredicate self, PyObject * p)"""
12388  return _IMP_core.AllSameTripletPredicate__set_from_binary(self, p)
12389 
12390  def __getstate__(self):
12391  p = self._get_as_binary()
12392  if len(self.__dict__) > 1:
12393  d = self.__dict__.copy()
12394  del d['this']
12395  p = (d, p)
12396  return p
12397 
12398  def __setstate__(self, p):
12399  if not hasattr(self, 'this'):
12400  self.__init__()
12401  if isinstance(p, tuple):
12402  d, p = p
12403  self.__dict__.update(d)
12404  return self._set_from_binary(p)
12405 
12406 
12407 # Register AllSameTripletPredicate in _IMP_core:
12408 _IMP_core.AllSameTripletPredicate_swigregister(AllSameTripletPredicate)
12409 class CoinFlipTripletPredicate(IMP.TripletPredicate):
12410  r"""Proxy of C++ IMP::core::CoinFlipTripletPredicate class."""
12411 
12412  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12413 
12414  def __init__(self, *args):
12415  r"""__init__(CoinFlipTripletPredicate self, double p, std::string name="CoinFlipTripletPredicate%1%") -> CoinFlipTripletPredicate"""
12416  _IMP_core.CoinFlipTripletPredicate_swiginit(self, _IMP_core.new_CoinFlipTripletPredicate(*args))
12417 
12418  def do_get_inputs(self, arg2, arg3):
12419  r"""do_get_inputs(CoinFlipTripletPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12420  return _IMP_core.CoinFlipTripletPredicate_do_get_inputs(self, arg2, arg3)
12421 
12422  def get_value(self, *args):
12423  r"""
12424  get_value(CoinFlipTripletPredicate self, IMP::ParticleTriplet const & a) -> int
12425  get_value(CoinFlipTripletPredicate self, IMP::ParticleTripletsTemp const & o) -> IMP::Ints
12426  """
12427  return _IMP_core.CoinFlipTripletPredicate_get_value(self, *args)
12428 
12429  def get_value_index(self, *args):
12430  r"""
12431  get_value_index(CoinFlipTripletPredicate self, Model arg2, IMP::ParticleIndexTriplet const & arg3) -> int
12432  get_value_index(CoinFlipTripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
12433  """
12434  return _IMP_core.CoinFlipTripletPredicate_get_value_index(self, *args)
12435 
12436  def get_version_info(self):
12437  r"""get_version_info(CoinFlipTripletPredicate self) -> VersionInfo"""
12438  return _IMP_core.CoinFlipTripletPredicate_get_version_info(self)
12439  __swig_destroy__ = _IMP_core.delete_CoinFlipTripletPredicate
12440 
12441  def __str__(self):
12442  r"""__str__(CoinFlipTripletPredicate self) -> std::string"""
12443  return _IMP_core.CoinFlipTripletPredicate___str__(self)
12444 
12445  def __repr__(self):
12446  r"""__repr__(CoinFlipTripletPredicate self) -> std::string"""
12447  return _IMP_core.CoinFlipTripletPredicate___repr__(self)
12448 
12449  @staticmethod
12450  def get_from(o):
12451  return _object_cast_to_CoinFlipTripletPredicate(o)
12452 
12453 
12454 # Register CoinFlipTripletPredicate in _IMP_core:
12455 _IMP_core.CoinFlipTripletPredicate_swigregister(CoinFlipTripletPredicate)
12456 class ConstantQuadPredicate(IMP.QuadPredicate):
12457  r"""Proxy of C++ IMP::core::ConstantQuadPredicate class."""
12458 
12459  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12460 
12461  def __init__(self, *args):
12462  r"""
12463  __init__(ConstantQuadPredicate self, int v, std::string name="ConstQuadPredicate%1%") -> ConstantQuadPredicate
12464  __init__(ConstantQuadPredicate self) -> ConstantQuadPredicate
12465  """
12466  _IMP_core.ConstantQuadPredicate_swiginit(self, _IMP_core.new_ConstantQuadPredicate(*args))
12467 
12468  def do_get_inputs(self, arg2, arg3):
12469  r"""do_get_inputs(ConstantQuadPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12470  return _IMP_core.ConstantQuadPredicate_do_get_inputs(self, arg2, arg3)
12471 
12472  def get_value(self, *args):
12473  r"""
12474  get_value(ConstantQuadPredicate self, IMP::ParticleQuad const & a) -> int
12475  get_value(ConstantQuadPredicate self, IMP::ParticleQuadsTemp const & o) -> IMP::Ints
12476  """
12477  return _IMP_core.ConstantQuadPredicate_get_value(self, *args)
12478 
12479  def get_value_index(self, *args):
12480  r"""
12481  get_value_index(ConstantQuadPredicate self, Model arg2, IMP::ParticleIndexQuad const & arg3) -> int
12482  get_value_index(ConstantQuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
12483  """
12484  return _IMP_core.ConstantQuadPredicate_get_value_index(self, *args)
12485 
12486  def get_version_info(self):
12487  r"""get_version_info(ConstantQuadPredicate self) -> VersionInfo"""
12488  return _IMP_core.ConstantQuadPredicate_get_version_info(self)
12489  __swig_destroy__ = _IMP_core.delete_ConstantQuadPredicate
12490 
12491  def __str__(self):
12492  r"""__str__(ConstantQuadPredicate self) -> std::string"""
12493  return _IMP_core.ConstantQuadPredicate___str__(self)
12494 
12495  def __repr__(self):
12496  r"""__repr__(ConstantQuadPredicate self) -> std::string"""
12497  return _IMP_core.ConstantQuadPredicate___repr__(self)
12498 
12499  @staticmethod
12500  def get_from(o):
12501  return _object_cast_to_ConstantQuadPredicate(o)
12502 
12503 
12504  def _get_as_binary(self):
12505  r"""_get_as_binary(ConstantQuadPredicate self) -> PyObject *"""
12506  return _IMP_core.ConstantQuadPredicate__get_as_binary(self)
12507 
12508  def _set_from_binary(self, p):
12509  r"""_set_from_binary(ConstantQuadPredicate self, PyObject * p)"""
12510  return _IMP_core.ConstantQuadPredicate__set_from_binary(self, p)
12511 
12512  def __getstate__(self):
12513  p = self._get_as_binary()
12514  if len(self.__dict__) > 1:
12515  d = self.__dict__.copy()
12516  del d['this']
12517  p = (d, p)
12518  return p
12519 
12520  def __setstate__(self, p):
12521  if not hasattr(self, 'this'):
12522  self.__init__()
12523  if isinstance(p, tuple):
12524  d, p = p
12525  self.__dict__.update(d)
12526  return self._set_from_binary(p)
12527 
12528 
12529 # Register ConstantQuadPredicate in _IMP_core:
12530 _IMP_core.ConstantQuadPredicate_swigregister(ConstantQuadPredicate)
12531 class UnorderedTypeQuadPredicate(IMP.QuadPredicate):
12532  r"""Proxy of C++ IMP::core::UnorderedTypeQuadPredicate class."""
12533 
12534  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12535 
12536  def __init__(self, *args):
12537  r"""__init__(UnorderedTypeQuadPredicate self, std::string name="UnorderedTypeQuadPredicate%1%") -> UnorderedTypeQuadPredicate"""
12538  _IMP_core.UnorderedTypeQuadPredicate_swiginit(self, _IMP_core.new_UnorderedTypeQuadPredicate(*args))
12539 
12540  def do_get_inputs(self, m, pis):
12541  r"""do_get_inputs(UnorderedTypeQuadPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
12542  return _IMP_core.UnorderedTypeQuadPredicate_do_get_inputs(self, m, pis)
12543 
12544  def get_value(self, *args):
12545  r"""
12546  get_value(UnorderedTypeQuadPredicate self, IMP::ParticleQuad const & a) -> int
12547  get_value(UnorderedTypeQuadPredicate self, IMP::ParticleQuadsTemp const & o) -> IMP::Ints
12548  """
12549  return _IMP_core.UnorderedTypeQuadPredicate_get_value(self, *args)
12550 
12551  def get_value_index(self, *args):
12552  r"""
12553  get_value_index(UnorderedTypeQuadPredicate self, Model m, IMP::ParticleIndexQuad const & pi) -> int
12554  get_value_index(UnorderedTypeQuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
12555  """
12556  return _IMP_core.UnorderedTypeQuadPredicate_get_value_index(self, *args)
12557 
12558  def get_version_info(self):
12559  r"""get_version_info(UnorderedTypeQuadPredicate self) -> VersionInfo"""
12560  return _IMP_core.UnorderedTypeQuadPredicate_get_version_info(self)
12561  __swig_destroy__ = _IMP_core.delete_UnorderedTypeQuadPredicate
12562 
12563  def __str__(self):
12564  r"""__str__(UnorderedTypeQuadPredicate self) -> std::string"""
12565  return _IMP_core.UnorderedTypeQuadPredicate___str__(self)
12566 
12567  def __repr__(self):
12568  r"""__repr__(UnorderedTypeQuadPredicate self) -> std::string"""
12569  return _IMP_core.UnorderedTypeQuadPredicate___repr__(self)
12570 
12571  @staticmethod
12572  def get_from(o):
12573  return _object_cast_to_UnorderedTypeQuadPredicate(o)
12574 
12575 
12576  def _get_as_binary(self):
12577  r"""_get_as_binary(UnorderedTypeQuadPredicate self) -> PyObject *"""
12578  return _IMP_core.UnorderedTypeQuadPredicate__get_as_binary(self)
12579 
12580  def _set_from_binary(self, p):
12581  r"""_set_from_binary(UnorderedTypeQuadPredicate self, PyObject * p)"""
12582  return _IMP_core.UnorderedTypeQuadPredicate__set_from_binary(self, p)
12583 
12584  def __getstate__(self):
12585  p = self._get_as_binary()
12586  if len(self.__dict__) > 1:
12587  d = self.__dict__.copy()
12588  del d['this']
12589  p = (d, p)
12590  return p
12591 
12592  def __setstate__(self, p):
12593  if not hasattr(self, 'this'):
12594  self.__init__()
12595  if isinstance(p, tuple):
12596  d, p = p
12597  self.__dict__.update(d)
12598  return self._set_from_binary(p)
12599 
12600 
12601 # Register UnorderedTypeQuadPredicate in _IMP_core:
12602 _IMP_core.UnorderedTypeQuadPredicate_swigregister(UnorderedTypeQuadPredicate)
12603 class OrderedTypeQuadPredicate(IMP.QuadPredicate):
12604  r"""Proxy of C++ IMP::core::OrderedTypeQuadPredicate class."""
12605 
12606  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12607 
12608  def __init__(self, *args):
12609  r"""__init__(OrderedTypeQuadPredicate self, std::string name="OrderedTypeQuadPredicate%1%") -> OrderedTypeQuadPredicate"""
12610  _IMP_core.OrderedTypeQuadPredicate_swiginit(self, _IMP_core.new_OrderedTypeQuadPredicate(*args))
12611 
12612  def do_get_inputs(self, m, pis):
12613  r"""do_get_inputs(OrderedTypeQuadPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
12614  return _IMP_core.OrderedTypeQuadPredicate_do_get_inputs(self, m, pis)
12615 
12616  def get_value(self, *args):
12617  r"""
12618  get_value(OrderedTypeQuadPredicate self, IMP::core::ParticleTypes const & types) -> int
12619  get_value(OrderedTypeQuadPredicate self, IMP::ParticleQuad const & a) -> int
12620  get_value(OrderedTypeQuadPredicate self, IMP::ParticleQuadsTemp const & o) -> IMP::Ints
12621  """
12622  return _IMP_core.OrderedTypeQuadPredicate_get_value(self, *args)
12623 
12624  def get_value_index(self, *args):
12625  r"""
12626  get_value_index(OrderedTypeQuadPredicate self, Model m, IMP::ParticleIndexQuad const & pi) -> int
12627  get_value_index(OrderedTypeQuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
12628  """
12629  return _IMP_core.OrderedTypeQuadPredicate_get_value_index(self, *args)
12630 
12631  def get_version_info(self):
12632  r"""get_version_info(OrderedTypeQuadPredicate self) -> VersionInfo"""
12633  return _IMP_core.OrderedTypeQuadPredicate_get_version_info(self)
12634  __swig_destroy__ = _IMP_core.delete_OrderedTypeQuadPredicate
12635 
12636  def __str__(self):
12637  r"""__str__(OrderedTypeQuadPredicate self) -> std::string"""
12638  return _IMP_core.OrderedTypeQuadPredicate___str__(self)
12639 
12640  def __repr__(self):
12641  r"""__repr__(OrderedTypeQuadPredicate self) -> std::string"""
12642  return _IMP_core.OrderedTypeQuadPredicate___repr__(self)
12643 
12644  @staticmethod
12645  def get_from(o):
12646  return _object_cast_to_OrderedTypeQuadPredicate(o)
12647 
12648 
12649 # Register OrderedTypeQuadPredicate in _IMP_core:
12650 _IMP_core.OrderedTypeQuadPredicate_swigregister(OrderedTypeQuadPredicate)
12651 class AllSameQuadPredicate(IMP.QuadPredicate):
12652  r"""Proxy of C++ IMP::core::AllSameQuadPredicate class."""
12653 
12654  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12655 
12656  def __init__(self, *args):
12657  r"""__init__(AllSameQuadPredicate self, std::string name="AllSameQuadPredicate%1%") -> AllSameQuadPredicate"""
12658  _IMP_core.AllSameQuadPredicate_swiginit(self, _IMP_core.new_AllSameQuadPredicate(*args))
12659 
12660  def do_get_inputs(self, arg2, arg3):
12661  r"""do_get_inputs(AllSameQuadPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12662  return _IMP_core.AllSameQuadPredicate_do_get_inputs(self, arg2, arg3)
12663 
12664  def get_value(self, *args):
12665  r"""
12666  get_value(AllSameQuadPredicate self, IMP::ParticleQuad const & a) -> int
12667  get_value(AllSameQuadPredicate self, IMP::ParticleQuadsTemp const & o) -> IMP::Ints
12668  """
12669  return _IMP_core.AllSameQuadPredicate_get_value(self, *args)
12670 
12671  def get_value_index(self, *args):
12672  r"""
12673  get_value_index(AllSameQuadPredicate self, Model m, IMP::ParticleIndexQuad const & pi) -> int
12674  get_value_index(AllSameQuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
12675  """
12676  return _IMP_core.AllSameQuadPredicate_get_value_index(self, *args)
12677 
12678  def get_version_info(self):
12679  r"""get_version_info(AllSameQuadPredicate self) -> VersionInfo"""
12680  return _IMP_core.AllSameQuadPredicate_get_version_info(self)
12681  __swig_destroy__ = _IMP_core.delete_AllSameQuadPredicate
12682 
12683  def __str__(self):
12684  r"""__str__(AllSameQuadPredicate self) -> std::string"""
12685  return _IMP_core.AllSameQuadPredicate___str__(self)
12686 
12687  def __repr__(self):
12688  r"""__repr__(AllSameQuadPredicate self) -> std::string"""
12689  return _IMP_core.AllSameQuadPredicate___repr__(self)
12690 
12691  @staticmethod
12692  def get_from(o):
12693  return _object_cast_to_AllSameQuadPredicate(o)
12694 
12695 
12696  def _get_as_binary(self):
12697  r"""_get_as_binary(AllSameQuadPredicate self) -> PyObject *"""
12698  return _IMP_core.AllSameQuadPredicate__get_as_binary(self)
12699 
12700  def _set_from_binary(self, p):
12701  r"""_set_from_binary(AllSameQuadPredicate self, PyObject * p)"""
12702  return _IMP_core.AllSameQuadPredicate__set_from_binary(self, p)
12703 
12704  def __getstate__(self):
12705  p = self._get_as_binary()
12706  if len(self.__dict__) > 1:
12707  d = self.__dict__.copy()
12708  del d['this']
12709  p = (d, p)
12710  return p
12711 
12712  def __setstate__(self, p):
12713  if not hasattr(self, 'this'):
12714  self.__init__()
12715  if isinstance(p, tuple):
12716  d, p = p
12717  self.__dict__.update(d)
12718  return self._set_from_binary(p)
12719 
12720 
12721 # Register AllSameQuadPredicate in _IMP_core:
12722 _IMP_core.AllSameQuadPredicate_swigregister(AllSameQuadPredicate)
12723 class CoinFlipQuadPredicate(IMP.QuadPredicate):
12724  r"""Proxy of C++ IMP::core::CoinFlipQuadPredicate class."""
12725 
12726  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12727 
12728  def __init__(self, *args):
12729  r"""__init__(CoinFlipQuadPredicate self, double p, std::string name="CoinFlipQuadPredicate%1%") -> CoinFlipQuadPredicate"""
12730  _IMP_core.CoinFlipQuadPredicate_swiginit(self, _IMP_core.new_CoinFlipQuadPredicate(*args))
12731 
12732  def do_get_inputs(self, arg2, arg3):
12733  r"""do_get_inputs(CoinFlipQuadPredicate self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
12734  return _IMP_core.CoinFlipQuadPredicate_do_get_inputs(self, arg2, arg3)
12735 
12736  def get_value(self, *args):
12737  r"""
12738  get_value(CoinFlipQuadPredicate self, IMP::ParticleQuad const & a) -> int
12739  get_value(CoinFlipQuadPredicate self, IMP::ParticleQuadsTemp const & o) -> IMP::Ints
12740  """
12741  return _IMP_core.CoinFlipQuadPredicate_get_value(self, *args)
12742 
12743  def get_value_index(self, *args):
12744  r"""
12745  get_value_index(CoinFlipQuadPredicate self, Model arg2, IMP::ParticleIndexQuad const & arg3) -> int
12746  get_value_index(CoinFlipQuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
12747  """
12748  return _IMP_core.CoinFlipQuadPredicate_get_value_index(self, *args)
12749 
12750  def get_version_info(self):
12751  r"""get_version_info(CoinFlipQuadPredicate self) -> VersionInfo"""
12752  return _IMP_core.CoinFlipQuadPredicate_get_version_info(self)
12753  __swig_destroy__ = _IMP_core.delete_CoinFlipQuadPredicate
12754 
12755  def __str__(self):
12756  r"""__str__(CoinFlipQuadPredicate self) -> std::string"""
12757  return _IMP_core.CoinFlipQuadPredicate___str__(self)
12758 
12759  def __repr__(self):
12760  r"""__repr__(CoinFlipQuadPredicate self) -> std::string"""
12761  return _IMP_core.CoinFlipQuadPredicate___repr__(self)
12762 
12763  @staticmethod
12764  def get_from(o):
12765  return _object_cast_to_CoinFlipQuadPredicate(o)
12766 
12767 
12768 # Register CoinFlipQuadPredicate in _IMP_core:
12769 _IMP_core.CoinFlipQuadPredicate_swigregister(CoinFlipQuadPredicate)
12770 class InBoundingBox3DSingletonPredicate(IMP.SingletonPredicate):
12771  r"""Proxy of C++ IMP::core::InBoundingBox3DSingletonPredicate class."""
12772 
12773  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12774 
12775  def __init__(self, *args):
12776  r"""__init__(InBoundingBox3DSingletonPredicate self, BoundingBox3D bb, std::string name="InBoundingBox3DSingletonPredicate%1%") -> InBoundingBox3DSingletonPredicate"""
12777  _IMP_core.InBoundingBox3DSingletonPredicate_swiginit(self, _IMP_core.new_InBoundingBox3DSingletonPredicate(*args))
12778 
12779  def do_get_inputs(self, m, pi):
12780  r"""do_get_inputs(InBoundingBox3DSingletonPredicate self, Model m, IMP::ParticleIndexes const & pi) -> IMP::ModelObjectsTemp"""
12781  return _IMP_core.InBoundingBox3DSingletonPredicate_do_get_inputs(self, m, pi)
12782 
12783  def get_value(self, *args):
12784  r"""
12785  get_value(InBoundingBox3DSingletonPredicate self, Particle a) -> int
12786  get_value(InBoundingBox3DSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
12787  """
12788  return _IMP_core.InBoundingBox3DSingletonPredicate_get_value(self, *args)
12789 
12790  def get_value_index(self, *args):
12791  r"""
12792  get_value_index(InBoundingBox3DSingletonPredicate self, Model m, ParticleIndex pi) -> int
12793  get_value_index(InBoundingBox3DSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
12794  """
12795  return _IMP_core.InBoundingBox3DSingletonPredicate_get_value_index(self, *args)
12796 
12797  def get_version_info(self):
12798  r"""get_version_info(InBoundingBox3DSingletonPredicate self) -> VersionInfo"""
12799  return _IMP_core.InBoundingBox3DSingletonPredicate_get_version_info(self)
12800  __swig_destroy__ = _IMP_core.delete_InBoundingBox3DSingletonPredicate
12801 
12802  def __str__(self):
12803  r"""__str__(InBoundingBox3DSingletonPredicate self) -> std::string"""
12804  return _IMP_core.InBoundingBox3DSingletonPredicate___str__(self)
12805 
12806  def __repr__(self):
12807  r"""__repr__(InBoundingBox3DSingletonPredicate self) -> std::string"""
12808  return _IMP_core.InBoundingBox3DSingletonPredicate___repr__(self)
12809 
12810  @staticmethod
12811  def get_from(o):
12812  return _object_cast_to_InBoundingBox3DSingletonPredicate(o)
12813 
12814 
12815 # Register InBoundingBox3DSingletonPredicate in _IMP_core:
12816 _IMP_core.InBoundingBox3DSingletonPredicate_swigregister(InBoundingBox3DSingletonPredicate)
12817 class AttributeSingletonPredicate(IMP.SingletonPredicate):
12818  r"""Proxy of C++ IMP::core::AttributeSingletonPredicate class."""
12819 
12820  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12821 
12822  def __init__(self, *args):
12823  r"""__init__(AttributeSingletonPredicate self, IntKey bb, std::string name="AttributeSingletonPredicate%1%") -> AttributeSingletonPredicate"""
12824  _IMP_core.AttributeSingletonPredicate_swiginit(self, _IMP_core.new_AttributeSingletonPredicate(*args))
12825 
12826  def do_get_inputs(self, m, pi):
12827  r"""do_get_inputs(AttributeSingletonPredicate self, Model m, IMP::ParticleIndexes const & pi) -> IMP::ModelObjectsTemp"""
12828  return _IMP_core.AttributeSingletonPredicate_do_get_inputs(self, m, pi)
12829 
12830  def get_value(self, *args):
12831  r"""
12832  get_value(AttributeSingletonPredicate self, Particle a) -> int
12833  get_value(AttributeSingletonPredicate self, IMP::ParticlesTemp const & o) -> IMP::Ints
12834  """
12835  return _IMP_core.AttributeSingletonPredicate_get_value(self, *args)
12836 
12837  def get_value_index(self, *args):
12838  r"""
12839  get_value_index(AttributeSingletonPredicate self, Model m, ParticleIndex pi) -> int
12840  get_value_index(AttributeSingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
12841  """
12842  return _IMP_core.AttributeSingletonPredicate_get_value_index(self, *args)
12843 
12844  def get_version_info(self):
12845  r"""get_version_info(AttributeSingletonPredicate self) -> VersionInfo"""
12846  return _IMP_core.AttributeSingletonPredicate_get_version_info(self)
12847  __swig_destroy__ = _IMP_core.delete_AttributeSingletonPredicate
12848 
12849  def __str__(self):
12850  r"""__str__(AttributeSingletonPredicate self) -> std::string"""
12851  return _IMP_core.AttributeSingletonPredicate___str__(self)
12852 
12853  def __repr__(self):
12854  r"""__repr__(AttributeSingletonPredicate self) -> std::string"""
12855  return _IMP_core.AttributeSingletonPredicate___repr__(self)
12856 
12857  @staticmethod
12858  def get_from(o):
12859  return _object_cast_to_AttributeSingletonPredicate(o)
12860 
12861 
12862 # Register AttributeSingletonPredicate in _IMP_core:
12863 _IMP_core.AttributeSingletonPredicate_swigregister(AttributeSingletonPredicate)
12864 class IsCollisionPairPredicate(IMP.PairPredicate):
12865  r"""Proxy of C++ IMP::core::IsCollisionPairPredicate class."""
12866 
12867  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12868 
12869  def __init__(self, *args):
12870  r"""__init__(IsCollisionPairPredicate self, std::string name="CollisionPairPredicate%1%") -> IsCollisionPairPredicate"""
12871  _IMP_core.IsCollisionPairPredicate_swiginit(self, _IMP_core.new_IsCollisionPairPredicate(*args))
12872 
12873  def do_get_inputs(self, m, pi):
12874  r"""do_get_inputs(IsCollisionPairPredicate self, Model m, IMP::ParticleIndexes const & pi) -> IMP::ModelObjectsTemp"""
12875  return _IMP_core.IsCollisionPairPredicate_do_get_inputs(self, m, pi)
12876 
12877  def get_value(self, *args):
12878  r"""
12879  get_value(IsCollisionPairPredicate self, IMP::ParticlePair const & a) -> int
12880  get_value(IsCollisionPairPredicate self, IMP::ParticlePairsTemp const & o) -> IMP::Ints
12881  """
12882  return _IMP_core.IsCollisionPairPredicate_get_value(self, *args)
12883 
12884  def get_value_index(self, *args):
12885  r"""
12886  get_value_index(IsCollisionPairPredicate self, Model m, IMP::ParticleIndexPair const & pi) -> int
12887  get_value_index(IsCollisionPairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
12888  """
12889  return _IMP_core.IsCollisionPairPredicate_get_value_index(self, *args)
12890 
12891  def get_version_info(self):
12892  r"""get_version_info(IsCollisionPairPredicate self) -> VersionInfo"""
12893  return _IMP_core.IsCollisionPairPredicate_get_version_info(self)
12894  __swig_destroy__ = _IMP_core.delete_IsCollisionPairPredicate
12895 
12896  def __str__(self):
12897  r"""__str__(IsCollisionPairPredicate self) -> std::string"""
12898  return _IMP_core.IsCollisionPairPredicate___str__(self)
12899 
12900  def __repr__(self):
12901  r"""__repr__(IsCollisionPairPredicate self) -> std::string"""
12902  return _IMP_core.IsCollisionPairPredicate___repr__(self)
12903 
12904  @staticmethod
12905  def get_from(o):
12906  return _object_cast_to_IsCollisionPairPredicate(o)
12907 
12908 
12909 # Register IsCollisionPairPredicate in _IMP_core:
12910 _IMP_core.IsCollisionPairPredicate_swigregister(IsCollisionPairPredicate)
12911 class AngleRestraint(TripletRestraint):
12912  r"""Proxy of C++ IMP::core::AngleRestraint class."""
12913 
12914  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12915 
12916  def __init__(self, *args):
12917  r"""
12918  __init__(AngleRestraint self, Model m, UnaryFunction score_func, _ParticleIndexAdaptor p1, _ParticleIndexAdaptor p2, _ParticleIndexAdaptor p3) -> AngleRestraint
12919  __init__(AngleRestraint self) -> AngleRestraint
12920  """
12921  _IMP_core.AngleRestraint_swiginit(self, _IMP_core.new_AngleRestraint(*args))
12922  __swig_destroy__ = _IMP_core.delete_AngleRestraint
12923 
12924  def __str__(self):
12925  r"""__str__(AngleRestraint self) -> std::string"""
12926  return _IMP_core.AngleRestraint___str__(self)
12927 
12928  def __repr__(self):
12929  r"""__repr__(AngleRestraint self) -> std::string"""
12930  return _IMP_core.AngleRestraint___repr__(self)
12931 
12932  @staticmethod
12933  def get_from(o):
12934  return _object_cast_to_AngleRestraint(o)
12935 
12936 
12937  def _get_as_binary(self):
12938  r"""_get_as_binary(AngleRestraint self) -> PyObject *"""
12939  return _IMP_core.AngleRestraint__get_as_binary(self)
12940 
12941  def _set_from_binary(self, p):
12942  r"""_set_from_binary(AngleRestraint self, PyObject * p)"""
12943  return _IMP_core.AngleRestraint__set_from_binary(self, p)
12944 
12945  def __getstate__(self):
12946  p = self._get_as_binary()
12947  if len(self.__dict__) > 1:
12948  d = self.__dict__.copy()
12949  del d['this']
12950  p = (d, p)
12951  return p
12952 
12953  def __setstate__(self, p):
12954  if not hasattr(self, 'this'):
12955  self.__init__()
12956  if isinstance(p, tuple):
12957  d, p = p
12958  self.__dict__.update(d)
12959  return self._set_from_binary(p)
12960 
12961 
12962 # Register AngleRestraint in _IMP_core:
12963 _IMP_core.AngleRestraint_swigregister(AngleRestraint)
12964 class RigidBodyMover(MonteCarloMover):
12965  r"""Proxy of C++ IMP::core::RigidBodyMover class."""
12966 
12967  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
12968 
12969  def __init__(self, *args):
12970  r"""
12971  __init__(RigidBodyMover self, Model m, ParticleIndex pi, IMP::Float max_translation, IMP::Float max_rotation) -> RigidBodyMover
12972  __init__(RigidBodyMover self) -> RigidBodyMover
12973  """
12974  _IMP_core.RigidBodyMover_swiginit(self, _IMP_core.new_RigidBodyMover(*args))
12975 
12976  def set_maximum_translation(self, mt):
12977  r"""set_maximum_translation(RigidBodyMover self, IMP::Float mt)"""
12978  return _IMP_core.RigidBodyMover_set_maximum_translation(self, mt)
12979 
12980  def set_maximum_rotation(self, mr):
12981  r"""set_maximum_rotation(RigidBodyMover self, IMP::Float mr)"""
12982  return _IMP_core.RigidBodyMover_set_maximum_rotation(self, mr)
12983 
12984  def get_maximum_translation(self):
12985  r"""get_maximum_translation(RigidBodyMover self) -> IMP::Float"""
12986  return _IMP_core.RigidBodyMover_get_maximum_translation(self)
12987 
12988  def get_maximum_rotation(self):
12989  r"""get_maximum_rotation(RigidBodyMover self) -> IMP::Float"""
12990  return _IMP_core.RigidBodyMover_get_maximum_rotation(self)
12991 
12992  def get_version_info(self):
12993  r"""get_version_info(RigidBodyMover self) -> VersionInfo"""
12994  return _IMP_core.RigidBodyMover_get_version_info(self)
12995  __swig_destroy__ = _IMP_core.delete_RigidBodyMover
12996 
12997  def __str__(self):
12998  r"""__str__(RigidBodyMover self) -> std::string"""
12999  return _IMP_core.RigidBodyMover___str__(self)
13000 
13001  def __repr__(self):
13002  r"""__repr__(RigidBodyMover self) -> std::string"""
13003  return _IMP_core.RigidBodyMover___repr__(self)
13004 
13005  @staticmethod
13006  def get_from(o):
13007  return _object_cast_to_RigidBodyMover(o)
13008 
13009 
13010  def _get_as_binary(self):
13011  r"""_get_as_binary(RigidBodyMover self) -> PyObject *"""
13012  return _IMP_core.RigidBodyMover__get_as_binary(self)
13013 
13014  def _set_from_binary(self, p):
13015  r"""_set_from_binary(RigidBodyMover self, PyObject * p)"""
13016  return _IMP_core.RigidBodyMover__set_from_binary(self, p)
13017 
13018  def __getstate__(self):
13019  p = self._get_as_binary()
13020  if len(self.__dict__) > 1:
13021  d = self.__dict__.copy()
13022  del d['this']
13023  p = (d, p)
13024  return p
13025 
13026  def __setstate__(self, p):
13027  if not hasattr(self, 'this'):
13028  self.__init__()
13029  if isinstance(p, tuple):
13030  d, p = p
13031  self.__dict__.update(d)
13032  return self._set_from_binary(p)
13033 
13034 
13035 # Register RigidBodyMover in _IMP_core:
13036 _IMP_core.RigidBodyMover_swigregister(RigidBodyMover)
13037 class RigidBodyTunneler(MonteCarloMover):
13038  r"""Proxy of C++ IMP::core::RigidBodyTunneler class."""
13039 
13040  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13041 
13042  def __init__(self, m, pis, ref, k, move_probability=1.):
13043  r"""__init__(RigidBodyTunneler self, Model m, IMP::ParticleIndexes pis, ParticleIndex ref, double k, double move_probability=1.) -> RigidBodyTunneler"""
13044  _IMP_core.RigidBodyTunneler_swiginit(self, _IMP_core.new_RigidBodyTunneler(m, pis, ref, k, move_probability))
13045 
13046  def add_entry_point(self, fl):
13047  r"""add_entry_point(RigidBodyTunneler self, IMP::Floats fl)"""
13048  return _IMP_core.RigidBodyTunneler_add_entry_point(self, fl)
13049 
13050  def reset_stats(self):
13051  r"""reset_stats(RigidBodyTunneler self)"""
13052  return _IMP_core.RigidBodyTunneler_reset_stats(self)
13053 
13054  def get_number_of_rejected_moves(self):
13055  r"""get_number_of_rejected_moves(RigidBodyTunneler self) -> unsigned int"""
13056  return _IMP_core.RigidBodyTunneler_get_number_of_rejected_moves(self)
13057 
13058  def get_number_of_proposed_moves(self):
13059  r"""get_number_of_proposed_moves(RigidBodyTunneler self) -> unsigned int"""
13060  return _IMP_core.RigidBodyTunneler_get_number_of_proposed_moves(self)
13061 
13062  def get_number_of_impossible_moves(self):
13063  r"""get_number_of_impossible_moves(RigidBodyTunneler self) -> unsigned int"""
13064  return _IMP_core.RigidBodyTunneler_get_number_of_impossible_moves(self)
13065 
13066  def get_number_of_calls(self):
13067  r"""get_number_of_calls(RigidBodyTunneler self) -> unsigned int"""
13068  return _IMP_core.RigidBodyTunneler_get_number_of_calls(self)
13069 
13070  @staticmethod
13071  def get_reduced_coordinates(*args):
13072  r"""
13073  get_reduced_coordinates(Model m, ParticleIndex target, ParticleIndex ref) -> IMP::Floats
13074  get_reduced_coordinates(Model m, ParticleIndex pi) -> IMP::Floats
13075  """
13076  return _IMP_core.RigidBodyTunneler_get_reduced_coordinates(*args)
13077 
13078  @staticmethod
13079  def set_reduced_coordinates(m, target, ref, coords):
13080  r"""set_reduced_coordinates(Model m, ParticleIndex target, ParticleIndex ref, IMP::Floats coords)"""
13081  return _IMP_core.RigidBodyTunneler_set_reduced_coordinates(m, target, ref, coords)
13082 
13083  def get_version_info(self):
13084  r"""get_version_info(RigidBodyTunneler self) -> VersionInfo"""
13085  return _IMP_core.RigidBodyTunneler_get_version_info(self)
13086  __swig_destroy__ = _IMP_core.delete_RigidBodyTunneler
13087 
13088  def __str__(self):
13089  r"""__str__(RigidBodyTunneler self) -> std::string"""
13090  return _IMP_core.RigidBodyTunneler___str__(self)
13091 
13092  def __repr__(self):
13093  r"""__repr__(RigidBodyTunneler self) -> std::string"""
13094  return _IMP_core.RigidBodyTunneler___repr__(self)
13095 
13096  @staticmethod
13097  def get_from(o):
13098  return _object_cast_to_RigidBodyTunneler(o)
13099 
13100 
13101 # Register RigidBodyTunneler in _IMP_core:
13102 _IMP_core.RigidBodyTunneler_swigregister(RigidBodyTunneler)
13103 class RigidBodyUmbrella(IMP.Restraint):
13104  r"""Proxy of C++ IMP::core::RigidBodyUmbrella class."""
13105 
13106  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13107 
13108  def __init__(self, *args):
13109  r"""
13110  __init__(RigidBodyUmbrella self, Model m, ParticleIndex pi, ParticleIndex ref, IMP::Floats x0, double alpha, double k, std::string name="RigidBodyUmbrella %1%") -> RigidBodyUmbrella
13111  __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
13112  """
13113  _IMP_core.RigidBodyUmbrella_swiginit(self, _IMP_core.new_RigidBodyUmbrella(*args))
13114 
13115  def set_x0(self, *args):
13116  r"""
13117  set_x0(RigidBodyUmbrella self, IMP::Floats x0)
13118  set_x0(RigidBodyUmbrella self, double _lambda, IMP::Floats x1, IMP::Floats x2)
13119  """
13120  return _IMP_core.RigidBodyUmbrella_set_x0(self, *args)
13121 
13122  def get_x0(self):
13123  r"""get_x0(RigidBodyUmbrella self) -> IMP::Floats"""
13124  return _IMP_core.RigidBodyUmbrella_get_x0(self)
13125 
13126  def get_x(self):
13127  r"""get_x(RigidBodyUmbrella self) -> IMP::Floats"""
13128  return _IMP_core.RigidBodyUmbrella_get_x(self)
13129 
13130  def set_alpha(self, alpha):
13131  r"""set_alpha(RigidBodyUmbrella self, double alpha)"""
13132  return _IMP_core.RigidBodyUmbrella_set_alpha(self, alpha)
13133 
13134  def set_k(self, k):
13135  r"""set_k(RigidBodyUmbrella self, double k)"""
13136  return _IMP_core.RigidBodyUmbrella_set_k(self, k)
13137 
13138  def get_version_info(self):
13139  r"""get_version_info(RigidBodyUmbrella self) -> VersionInfo"""
13140  return _IMP_core.RigidBodyUmbrella_get_version_info(self)
13141  __swig_destroy__ = _IMP_core.delete_RigidBodyUmbrella
13142 
13143  def __str__(self):
13144  r"""__str__(RigidBodyUmbrella self) -> std::string"""
13145  return _IMP_core.RigidBodyUmbrella___str__(self)
13146 
13147  def __repr__(self):
13148  r"""__repr__(RigidBodyUmbrella self) -> std::string"""
13149  return _IMP_core.RigidBodyUmbrella___repr__(self)
13150 
13151  @staticmethod
13152  def get_from(o):
13153  return _object_cast_to_RigidBodyUmbrella(o)
13154 
13155 
13156 # Register RigidBodyUmbrella in _IMP_core:
13157 _IMP_core.RigidBodyUmbrella_swigregister(RigidBodyUmbrella)
13158 class VolumeRestraint(IMP.Restraint):
13159  r"""Proxy of C++ IMP::core::VolumeRestraint class."""
13160 
13161  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13162 
13163  def __init__(self, f, sc, volume):
13164  r"""__init__(VolumeRestraint self, UnaryFunction f, SingletonContainer sc, double volume) -> VolumeRestraint"""
13165  _IMP_core.VolumeRestraint_swiginit(self, _IMP_core.new_VolumeRestraint(f, sc, volume))
13166 
13167  def do_get_inputs(self):
13168  r"""do_get_inputs(VolumeRestraint self) -> IMP::ModelObjectsTemp"""
13169  return _IMP_core.VolumeRestraint_do_get_inputs(self)
13170 
13171  def get_version_info(self):
13172  r"""get_version_info(VolumeRestraint self) -> VersionInfo"""
13173  return _IMP_core.VolumeRestraint_get_version_info(self)
13174  __swig_destroy__ = _IMP_core.delete_VolumeRestraint
13175 
13176  def __str__(self):
13177  r"""__str__(VolumeRestraint self) -> std::string"""
13178  return _IMP_core.VolumeRestraint___str__(self)
13179 
13180  def __repr__(self):
13181  r"""__repr__(VolumeRestraint self) -> std::string"""
13182  return _IMP_core.VolumeRestraint___repr__(self)
13183 
13184  @staticmethod
13185  def get_from(o):
13186  return _object_cast_to_VolumeRestraint(o)
13187 
13188 
13189 # Register VolumeRestraint in _IMP_core:
13190 _IMP_core.VolumeRestraint_swigregister(VolumeRestraint)
13191 
13192 def get_centroid(ps):
13193  r"""get_centroid(IMP::core::XYZs const & ps) -> Vector3D"""
13194  return _IMP_core.get_centroid(ps)
13195 
13196 def get_bounding_box(ps):
13197  r"""get_bounding_box(IMP::core::XYZRs const & ps) -> BoundingBox3D"""
13198  return _IMP_core.get_bounding_box(ps)
13199 class MoveStatisticsScoreState(IMP.ScoreState):
13200  r"""Proxy of C++ IMP::core::MoveStatisticsScoreState class."""
13201 
13202  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13203 
13204  def __init__(self, ps):
13205  r"""__init__(MoveStatisticsScoreState self, IMP::ParticlesTemp const & ps) -> MoveStatisticsScoreState"""
13206  _IMP_core.MoveStatisticsScoreState_swiginit(self, _IMP_core.new_MoveStatisticsScoreState(ps))
13207 
13208  def show_statistics(self, *args):
13209  r"""show_statistics(MoveStatisticsScoreState self, _ostream out=std::cout)"""
13210  return _IMP_core.MoveStatisticsScoreState_show_statistics(self, *args)
13211 
13212  def reset(self):
13213  r"""reset(MoveStatisticsScoreState self)"""
13214  return _IMP_core.MoveStatisticsScoreState_reset(self)
13215 
13216  def do_before_evaluate(self):
13217  r"""do_before_evaluate(MoveStatisticsScoreState self)"""
13218  return _IMP_core.MoveStatisticsScoreState_do_before_evaluate(self)
13219 
13220  def do_after_evaluate(self, da):
13221  r"""do_after_evaluate(MoveStatisticsScoreState self, DerivativeAccumulator da)"""
13222  return _IMP_core.MoveStatisticsScoreState_do_after_evaluate(self, da)
13223 
13224  def do_get_inputs(self):
13225  r"""do_get_inputs(MoveStatisticsScoreState self) -> IMP::ModelObjectsTemp"""
13226  return _IMP_core.MoveStatisticsScoreState_do_get_inputs(self)
13227 
13228  def do_get_outputs(self):
13229  r"""do_get_outputs(MoveStatisticsScoreState self) -> IMP::ModelObjectsTemp"""
13230  return _IMP_core.MoveStatisticsScoreState_do_get_outputs(self)
13231 
13232  def get_version_info(self):
13233  r"""get_version_info(MoveStatisticsScoreState self) -> VersionInfo"""
13234  return _IMP_core.MoveStatisticsScoreState_get_version_info(self)
13235  __swig_destroy__ = _IMP_core.delete_MoveStatisticsScoreState
13236 
13237  def __str__(self):
13238  r"""__str__(MoveStatisticsScoreState self) -> std::string"""
13239  return _IMP_core.MoveStatisticsScoreState___str__(self)
13240 
13241  def __repr__(self):
13242  r"""__repr__(MoveStatisticsScoreState self) -> std::string"""
13243  return _IMP_core.MoveStatisticsScoreState___repr__(self)
13244 
13245  @staticmethod
13246  def get_from(o):
13247  return _object_cast_to_MoveStatisticsScoreState(o)
13248 
13249 
13250 # Register MoveStatisticsScoreState in _IMP_core:
13251 _IMP_core.MoveStatisticsScoreState_swigregister(MoveStatisticsScoreState)
13252 IMP_PARTICLE_TYPE_INDEX = _IMP_core.IMP_PARTICLE_TYPE_INDEX
13253 
13254 class Typed(IMP.Decorator):
13255  r"""Proxy of C++ IMP::core::Typed class."""
13256 
13257  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13258 
13259  @staticmethod
13260  def get_type_key():
13261  r"""get_type_key() -> IntKey"""
13262  return _IMP_core.Typed_get_type_key()
13263 
13264  def __init__(self, *args):
13265  r"""
13266  __init__(Typed self) -> Typed
13267  __init__(Typed self, Model m, ParticleIndex id) -> Typed
13268  __init__(Typed self, _ParticleAdaptor d) -> Typed
13269  """
13270  _IMP_core.Typed_swiginit(self, _IMP_core.new_Typed(*args))
13271 
13272  def show(self, *args):
13273  r"""show(Typed self, _ostream out=std::cout)"""
13274  return _IMP_core.Typed_show(self, *args)
13275 
13276  @staticmethod
13277  def setup_particle(*args):
13278  r"""
13279  setup_particle(Model m, ParticleIndex pi, ParticleType t) -> Typed
13280  setup_particle(_ParticleAdaptor pa, ParticleType t) -> Typed
13281  """
13282  return _IMP_core.Typed_setup_particle(*args)
13283 
13284  @staticmethod
13285  def get_is_setup(*args):
13286  r"""
13287  get_is_setup(_ParticleAdaptor p) -> bool
13288  get_is_setup(Model m, ParticleIndex pi) -> bool
13289  """
13290  return _IMP_core.Typed_get_is_setup(*args)
13291 
13292  def get_type(self):
13293  r"""get_type(Typed self) -> ParticleType"""
13294  return _IMP_core.Typed_get_type(self)
13295 
13296  def set_type(self, pt):
13297  r"""set_type(Typed self, ParticleType pt)"""
13298  return _IMP_core.Typed_set_type(self, pt)
13299 
13300  def add_attribute(self, *args):
13301  r"""
13302  add_attribute(Typed self, FloatKey k, IMP::Float v, bool opt)
13303  add_attribute(Typed self, FloatKey a0, IMP::Float a1)
13304  add_attribute(Typed self, IntKey a0, IMP::Int a1)
13305  add_attribute(Typed self, FloatsKey a0, IMP::Floats a1)
13306  add_attribute(Typed self, IntsKey a0, IMP::Ints a1)
13307  add_attribute(Typed self, StringKey a0, IMP::String a1)
13308  add_attribute(Typed self, ParticleIndexKey a0, Particle a1)
13309  add_attribute(Typed self, ObjectKey a0, Object a1)
13310  add_attribute(Typed self, SparseFloatKey a0, IMP::Float a1)
13311  add_attribute(Typed self, SparseIntKey a0, IMP::Int a1)
13312  add_attribute(Typed self, SparseStringKey a0, IMP::String a1)
13313  add_attribute(Typed self, SparseParticleIndexKey a0, ParticleIndex a1)
13314  """
13315  return _IMP_core.Typed_add_attribute(self, *args)
13316 
13317  def get_value(self, *args):
13318  r"""
13319  get_value(Typed self, FloatKey a0) -> IMP::Float
13320  get_value(Typed self, IntKey a0) -> IMP::Int
13321  get_value(Typed self, FloatsKey a0) -> IMP::Floats
13322  get_value(Typed self, IntsKey a0) -> IMP::Ints
13323  get_value(Typed self, StringKey a0) -> IMP::String
13324  get_value(Typed self, ParticleIndexKey a0) -> Particle
13325  get_value(Typed self, ObjectKey a0) -> Object
13326  get_value(Typed self, SparseFloatKey a0) -> IMP::Float
13327  get_value(Typed self, SparseIntKey a0) -> IMP::Int
13328  get_value(Typed self, SparseStringKey a0) -> IMP::String
13329  get_value(Typed self, SparseParticleIndexKey a0) -> ParticleIndex
13330  """
13331  return _IMP_core.Typed_get_value(self, *args)
13332 
13333  def set_value(self, *args):
13334  r"""
13335  set_value(Typed self, FloatKey a0, IMP::Float a1)
13336  set_value(Typed self, IntKey a0, IMP::Int a1)
13337  set_value(Typed self, FloatsKey a0, IMP::Floats a1)
13338  set_value(Typed self, IntsKey a0, IMP::Ints a1)
13339  set_value(Typed self, StringKey a0, IMP::String a1)
13340  set_value(Typed self, ParticleIndexKey a0, Particle a1)
13341  set_value(Typed self, ObjectKey a0, Object a1)
13342  set_value(Typed self, SparseFloatKey a0, IMP::Float a1)
13343  set_value(Typed self, SparseIntKey a0, IMP::Int a1)
13344  set_value(Typed self, SparseStringKey a0, IMP::String a1)
13345  set_value(Typed self, SparseParticleIndexKey a0, ParticleIndex a1)
13346  """
13347  return _IMP_core.Typed_set_value(self, *args)
13348 
13349  def remove_attribute(self, *args):
13350  r"""
13351  remove_attribute(Typed self, FloatKey a0)
13352  remove_attribute(Typed self, IntKey a0)
13353  remove_attribute(Typed self, FloatsKey a0)
13354  remove_attribute(Typed self, IntsKey a0)
13355  remove_attribute(Typed self, StringKey a0)
13356  remove_attribute(Typed self, ParticleIndexKey a0)
13357  remove_attribute(Typed self, ObjectKey a0)
13358  remove_attribute(Typed self, SparseFloatKey a0)
13359  remove_attribute(Typed self, SparseIntKey a0)
13360  remove_attribute(Typed self, SparseStringKey a0)
13361  remove_attribute(Typed self, SparseParticleIndexKey a0)
13362  """
13363  return _IMP_core.Typed_remove_attribute(self, *args)
13364 
13365  def has_attribute(self, *args):
13366  r"""
13367  has_attribute(Typed self, FloatKey a0) -> bool
13368  has_attribute(Typed self, IntKey a0) -> bool
13369  has_attribute(Typed self, FloatsKey a0) -> bool
13370  has_attribute(Typed self, IntsKey a0) -> bool
13371  has_attribute(Typed self, StringKey a0) -> bool
13372  has_attribute(Typed self, ParticleIndexKey a0) -> bool
13373  has_attribute(Typed self, ObjectKey a0) -> bool
13374  has_attribute(Typed self, SparseFloatKey a0) -> bool
13375  has_attribute(Typed self, SparseIntKey a0) -> bool
13376  has_attribute(Typed self, SparseStringKey a0) -> bool
13377  has_attribute(Typed self, SparseParticleIndexKey a0) -> bool
13378  """
13379  return _IMP_core.Typed_has_attribute(self, *args)
13380 
13381  def get_derivative(self, a0):
13382  r"""get_derivative(Typed self, FloatKey a0) -> double"""
13383  return _IMP_core.Typed_get_derivative(self, a0)
13384 
13385  def get_name(self):
13386  r"""get_name(Typed self) -> std::string"""
13387  return _IMP_core.Typed_get_name(self)
13388 
13389  def clear_caches(self):
13390  r"""clear_caches(Typed self)"""
13391  return _IMP_core.Typed_clear_caches(self)
13392 
13393  def set_name(self, a0):
13394  r"""set_name(Typed self, std::string a0)"""
13395  return _IMP_core.Typed_set_name(self, a0)
13396 
13397  def set_check_level(self, a0):
13398  r"""set_check_level(Typed self, IMP::CheckLevel a0)"""
13399  return _IMP_core.Typed_set_check_level(self, a0)
13400 
13401  def add_to_derivative(self, a0, a1, a2):
13402  r"""add_to_derivative(Typed self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
13403  return _IMP_core.Typed_add_to_derivative(self, a0, a1, a2)
13404 
13405  def set_is_optimized(self, a0, a1):
13406  r"""set_is_optimized(Typed self, FloatKey a0, bool a1)"""
13407  return _IMP_core.Typed_set_is_optimized(self, a0, a1)
13408 
13409  def get_is_optimized(self, a0):
13410  r"""get_is_optimized(Typed self, FloatKey a0) -> bool"""
13411  return _IMP_core.Typed_get_is_optimized(self, a0)
13412 
13413  def get_check_level(self):
13414  r"""get_check_level(Typed self) -> IMP::CheckLevel"""
13415  return _IMP_core.Typed_get_check_level(self)
13416 
13417  def __eq__(self, *args):
13418  r"""
13419  __eq__(Typed self, Typed o) -> bool
13420  __eq__(Typed self, Particle d) -> bool
13421  """
13422  return _IMP_core.Typed___eq__(self, *args)
13423 
13424  def __ne__(self, *args):
13425  r"""
13426  __ne__(Typed self, Typed o) -> bool
13427  __ne__(Typed self, Particle d) -> bool
13428  """
13429  return _IMP_core.Typed___ne__(self, *args)
13430 
13431  def __le__(self, *args):
13432  r"""
13433  __le__(Typed self, Typed o) -> bool
13434  __le__(Typed self, Particle d) -> bool
13435  """
13436  return _IMP_core.Typed___le__(self, *args)
13437 
13438  def __lt__(self, *args):
13439  r"""
13440  __lt__(Typed self, Typed o) -> bool
13441  __lt__(Typed self, Particle d) -> bool
13442  """
13443  return _IMP_core.Typed___lt__(self, *args)
13444 
13445  def __ge__(self, *args):
13446  r"""
13447  __ge__(Typed self, Typed o) -> bool
13448  __ge__(Typed self, Particle d) -> bool
13449  """
13450  return _IMP_core.Typed___ge__(self, *args)
13451 
13452  def __gt__(self, *args):
13453  r"""
13454  __gt__(Typed self, Typed o) -> bool
13455  __gt__(Typed self, Particle d) -> bool
13456  """
13457  return _IMP_core.Typed___gt__(self, *args)
13458 
13459  def __hash__(self):
13460  r"""__hash__(Typed self) -> std::size_t"""
13461  return _IMP_core.Typed___hash__(self)
13462 
13463  def __str__(self):
13464  r"""__str__(Typed self) -> std::string"""
13465  return _IMP_core.Typed___str__(self)
13466 
13467  def __repr__(self):
13468  r"""__repr__(Typed self) -> std::string"""
13469  return _IMP_core.Typed___repr__(self)
13470 
13471  def _get_as_binary(self):
13472  r"""_get_as_binary(Typed self) -> PyObject *"""
13473  return _IMP_core.Typed__get_as_binary(self)
13474 
13475  def _set_from_binary(self, p):
13476  r"""_set_from_binary(Typed self, PyObject * p)"""
13477  return _IMP_core.Typed__set_from_binary(self, p)
13478 
13479  def __getstate__(self):
13480  p = self._get_as_binary()
13481  if len(self.__dict__) > 1:
13482  d = self.__dict__.copy()
13483  del d['this']
13484  p = (d, p)
13485  return p
13486 
13487  def __setstate__(self, p):
13488  if not hasattr(self, 'this'):
13489  self.__init__()
13490  if isinstance(p, tuple):
13491  d, p = p
13492  self.__dict__.update(d)
13493  return self._set_from_binary(p)
13494 
13495  __swig_destroy__ = _IMP_core.delete_Typed
13496 
13497 # Register Typed in _IMP_core:
13498 _IMP_core.Typed_swigregister(Typed)
13499 
13500 def __lshift__(*args):
13501  r"""
13502  __lshift__(_ostream out, XYZ n) -> _ostream
13503  __lshift__(_ostream out, XYZR n) -> _ostream
13504  __lshift__(_ostream out, Direction n) -> _ostream
13505  __lshift__(_ostream out, DirectionAngle n) -> _ostream
13506  __lshift__(_ostream out, Surface n) -> _ostream
13507  __lshift__(_ostream out, Centroid n) -> _ostream
13508  __lshift__(_ostream out, Cover n) -> _ostream
13509  __lshift__(_ostream out, Reference n) -> _ostream
13510  __lshift__(_ostream out, RigidMember n) -> _ostream
13511  __lshift__(_ostream out, RigidBody n) -> _ostream
13512  __lshift__(_ostream out, Gaussian n) -> _ostream
13513  __lshift__(_ostream out, Typed n) -> _ostream
13514  """
13515  return _IMP_core.__lshift__(*args)
13516 class WriteRestraintScoresOptimizerState(IMP.OptimizerState):
13517  r"""Proxy of C++ IMP::core::WriteRestraintScoresOptimizerState class."""
13518 
13519  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13520 
13521  def __init__(self, rs, out):
13522  r"""__init__(WriteRestraintScoresOptimizerState self, IMP::Restraints const & rs, TextOutput out) -> WriteRestraintScoresOptimizerState"""
13523  _IMP_core.WriteRestraintScoresOptimizerState_swiginit(self, _IMP_core.new_WriteRestraintScoresOptimizerState(rs, out))
13524 
13525  def get_version_info(self):
13526  r"""get_version_info(WriteRestraintScoresOptimizerState self) -> VersionInfo"""
13527  return _IMP_core.WriteRestraintScoresOptimizerState_get_version_info(self)
13528  __swig_destroy__ = _IMP_core.delete_WriteRestraintScoresOptimizerState
13529 
13530  def __str__(self):
13531  r"""__str__(WriteRestraintScoresOptimizerState self) -> std::string"""
13532  return _IMP_core.WriteRestraintScoresOptimizerState___str__(self)
13533 
13534  def __repr__(self):
13535  r"""__repr__(WriteRestraintScoresOptimizerState self) -> std::string"""
13536  return _IMP_core.WriteRestraintScoresOptimizerState___repr__(self)
13537 
13538  @staticmethod
13539  def get_from(o):
13540  return _object_cast_to_WriteRestraintScoresOptimizerState(o)
13541 
13542 
13543 # Register WriteRestraintScoresOptimizerState in _IMP_core:
13544 _IMP_core.WriteRestraintScoresOptimizerState_swigregister(WriteRestraintScoresOptimizerState)
13545 
13546 def assign_blame(rs, ps, attribute):
13547  r"""assign_blame(IMP::RestraintsTemp const & rs, IMP::ParticlesTemp const & ps, FloatKey attribute)"""
13548  return _IMP_core.assign_blame(rs, ps, attribute)
13549 
13550 def create_blame_geometries(*args):
13551  r"""create_blame_geometries(IMP::RestraintsTemp const & rs, IMP::ParticlesTemp const & ps, double max=NO_MAX, std::string name=std::string()) -> IMP::display::Geometries"""
13552  return _IMP_core.create_blame_geometries(*args)
13553 class MultipleBinormalRestraint(IMP.Restraint):
13554  r"""Proxy of C++ IMP::core::MultipleBinormalRestraint class."""
13555 
13556  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13557 
13558  def __init__(self, m, q1, q2):
13559  r"""__init__(MultipleBinormalRestraint self, Model m, IMP::ParticleIndexQuad const & q1, IMP::ParticleIndexQuad const & q2) -> MultipleBinormalRestraint"""
13560  _IMP_core.MultipleBinormalRestraint_swiginit(self, _IMP_core.new_MultipleBinormalRestraint(m, q1, q2))
13561 
13562  def add_term(self, term):
13563  r"""add_term(MultipleBinormalRestraint self, BinormalTerm term)"""
13564  return _IMP_core.MultipleBinormalRestraint_add_term(self, term)
13565 
13566  def do_get_inputs(self):
13567  r"""do_get_inputs(MultipleBinormalRestraint self) -> IMP::ModelObjectsTemp"""
13568  return _IMP_core.MultipleBinormalRestraint_do_get_inputs(self)
13569 
13570  def get_version_info(self):
13571  r"""get_version_info(MultipleBinormalRestraint self) -> VersionInfo"""
13572  return _IMP_core.MultipleBinormalRestraint_get_version_info(self)
13573  __swig_destroy__ = _IMP_core.delete_MultipleBinormalRestraint
13574 
13575  def __str__(self):
13576  r"""__str__(MultipleBinormalRestraint self) -> std::string"""
13577  return _IMP_core.MultipleBinormalRestraint___str__(self)
13578 
13579  def __repr__(self):
13580  r"""__repr__(MultipleBinormalRestraint self) -> std::string"""
13581  return _IMP_core.MultipleBinormalRestraint___repr__(self)
13582 
13583  @staticmethod
13584  def get_from(o):
13585  return _object_cast_to_MultipleBinormalRestraint(o)
13586 
13587 
13588 # Register MultipleBinormalRestraint in _IMP_core:
13589 _IMP_core.MultipleBinormalRestraint_swigregister(MultipleBinormalRestraint)
13590 class BinormalTerm(object):
13591  r"""Proxy of C++ IMP::core::BinormalTerm class."""
13592 
13593  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13594 
13595  def __init__(self):
13596  r"""__init__(BinormalTerm self) -> BinormalTerm"""
13597  _IMP_core.BinormalTerm_swiginit(self, _IMP_core.new_BinormalTerm())
13598 
13599  def set_correlation(self, correlation):
13600  r"""set_correlation(BinormalTerm self, double correlation)"""
13601  return _IMP_core.BinormalTerm_set_correlation(self, correlation)
13602 
13603  def set_weight(self, weight):
13604  r"""set_weight(BinormalTerm self, double weight)"""
13605  return _IMP_core.BinormalTerm_set_weight(self, weight)
13606 
13607  def set_means(self, means):
13608  r"""set_means(BinormalTerm self, IMP::FloatPair means)"""
13609  return _IMP_core.BinormalTerm_set_means(self, means)
13610 
13611  def set_standard_deviations(self, stdevs):
13612  r"""set_standard_deviations(BinormalTerm self, IMP::FloatPair stdevs)"""
13613  return _IMP_core.BinormalTerm_set_standard_deviations(self, stdevs)
13614 
13615  def show(self, *args):
13616  r"""show(BinormalTerm self, _ostream out=std::cout)"""
13617  return _IMP_core.BinormalTerm_show(self, *args)
13618 
13619  def __str__(self):
13620  r"""__str__(BinormalTerm self) -> std::string"""
13621  return _IMP_core.BinormalTerm___str__(self)
13622 
13623  def __repr__(self):
13624  r"""__repr__(BinormalTerm self) -> std::string"""
13625  return _IMP_core.BinormalTerm___repr__(self)
13626 
13627  def _get_as_binary(self):
13628  r"""_get_as_binary(BinormalTerm self) -> PyObject *"""
13629  return _IMP_core.BinormalTerm__get_as_binary(self)
13630 
13631  def _set_from_binary(self, p):
13632  r"""_set_from_binary(BinormalTerm self, PyObject * p)"""
13633  return _IMP_core.BinormalTerm__set_from_binary(self, p)
13634 
13635  def __getstate__(self):
13636  p = self._get_as_binary()
13637  if len(self.__dict__) > 1:
13638  d = self.__dict__.copy()
13639  del d['this']
13640  p = (d, p)
13641  return p
13642 
13643  def __setstate__(self, p):
13644  if not hasattr(self, 'this'):
13645  self.__init__()
13646  if isinstance(p, tuple):
13647  d, p = p
13648  self.__dict__.update(d)
13649  return self._set_from_binary(p)
13650 
13651  __swig_destroy__ = _IMP_core.delete_BinormalTerm
13652 
13653 # Register BinormalTerm in _IMP_core:
13654 _IMP_core.BinormalTerm_swigregister(BinormalTerm)
13655 class Provenance(IMP.Decorator):
13656  r"""Proxy of C++ IMP::core::Provenance class."""
13657 
13658  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13659 
13660  def get_previous(self):
13661  r"""get_previous(Provenance self) -> Provenance"""
13662  return _IMP_core.Provenance_get_previous(self)
13663 
13664  def set_previous(self, p):
13665  r"""set_previous(Provenance self, Provenance p)"""
13666  return _IMP_core.Provenance_set_previous(self, p)
13667 
13668  def __init__(self, *args):
13669  r"""
13670  __init__(Provenance self) -> Provenance
13671  __init__(Provenance self, Model m, ParticleIndex id) -> Provenance
13672  __init__(Provenance self, _ParticleAdaptor d) -> Provenance
13673  """
13674  _IMP_core.Provenance_swiginit(self, _IMP_core.new_Provenance(*args))
13675 
13676  @staticmethod
13677  def get_is_setup(*args):
13678  r"""
13679  get_is_setup(Model m, ParticleIndex pi) -> bool
13680  get_is_setup(_ParticleAdaptor p) -> bool
13681  """
13682  return _IMP_core.Provenance_get_is_setup(*args)
13683 
13684  def show(self, *args):
13685  r"""show(Provenance self, _ostream out=std::cout)"""
13686  return _IMP_core.Provenance_show(self, *args)
13687 
13688  @staticmethod
13689  def setup_particle(*args):
13690  r"""
13691  setup_particle(Model m, ParticleIndex pi) -> Provenance
13692  setup_particle(_ParticleAdaptor pa) -> Provenance
13693  """
13694  return _IMP_core.Provenance_setup_particle(*args)
13695 
13696  def add_attribute(self, *args):
13697  r"""
13698  add_attribute(Provenance self, FloatKey k, IMP::Float v, bool opt)
13699  add_attribute(Provenance self, FloatKey a0, IMP::Float a1)
13700  add_attribute(Provenance self, IntKey a0, IMP::Int a1)
13701  add_attribute(Provenance self, FloatsKey a0, IMP::Floats a1)
13702  add_attribute(Provenance self, IntsKey a0, IMP::Ints a1)
13703  add_attribute(Provenance self, StringKey a0, IMP::String a1)
13704  add_attribute(Provenance self, ParticleIndexKey a0, Particle a1)
13705  add_attribute(Provenance self, ObjectKey a0, Object a1)
13706  add_attribute(Provenance self, SparseFloatKey a0, IMP::Float a1)
13707  add_attribute(Provenance self, SparseIntKey a0, IMP::Int a1)
13708  add_attribute(Provenance self, SparseStringKey a0, IMP::String a1)
13709  add_attribute(Provenance self, SparseParticleIndexKey a0, ParticleIndex a1)
13710  """
13711  return _IMP_core.Provenance_add_attribute(self, *args)
13712 
13713  def get_value(self, *args):
13714  r"""
13715  get_value(Provenance self, FloatKey a0) -> IMP::Float
13716  get_value(Provenance self, IntKey a0) -> IMP::Int
13717  get_value(Provenance self, FloatsKey a0) -> IMP::Floats
13718  get_value(Provenance self, IntsKey a0) -> IMP::Ints
13719  get_value(Provenance self, StringKey a0) -> IMP::String
13720  get_value(Provenance self, ParticleIndexKey a0) -> Particle
13721  get_value(Provenance self, ObjectKey a0) -> Object
13722  get_value(Provenance self, SparseFloatKey a0) -> IMP::Float
13723  get_value(Provenance self, SparseIntKey a0) -> IMP::Int
13724  get_value(Provenance self, SparseStringKey a0) -> IMP::String
13725  get_value(Provenance self, SparseParticleIndexKey a0) -> ParticleIndex
13726  """
13727  return _IMP_core.Provenance_get_value(self, *args)
13728 
13729  def set_value(self, *args):
13730  r"""
13731  set_value(Provenance self, FloatKey a0, IMP::Float a1)
13732  set_value(Provenance self, IntKey a0, IMP::Int a1)
13733  set_value(Provenance self, FloatsKey a0, IMP::Floats a1)
13734  set_value(Provenance self, IntsKey a0, IMP::Ints a1)
13735  set_value(Provenance self, StringKey a0, IMP::String a1)
13736  set_value(Provenance self, ParticleIndexKey a0, Particle a1)
13737  set_value(Provenance self, ObjectKey a0, Object a1)
13738  set_value(Provenance self, SparseFloatKey a0, IMP::Float a1)
13739  set_value(Provenance self, SparseIntKey a0, IMP::Int a1)
13740  set_value(Provenance self, SparseStringKey a0, IMP::String a1)
13741  set_value(Provenance self, SparseParticleIndexKey a0, ParticleIndex a1)
13742  """
13743  return _IMP_core.Provenance_set_value(self, *args)
13744 
13745  def remove_attribute(self, *args):
13746  r"""
13747  remove_attribute(Provenance self, FloatKey a0)
13748  remove_attribute(Provenance self, IntKey a0)
13749  remove_attribute(Provenance self, FloatsKey a0)
13750  remove_attribute(Provenance self, IntsKey a0)
13751  remove_attribute(Provenance self, StringKey a0)
13752  remove_attribute(Provenance self, ParticleIndexKey a0)
13753  remove_attribute(Provenance self, ObjectKey a0)
13754  remove_attribute(Provenance self, SparseFloatKey a0)
13755  remove_attribute(Provenance self, SparseIntKey a0)
13756  remove_attribute(Provenance self, SparseStringKey a0)
13757  remove_attribute(Provenance self, SparseParticleIndexKey a0)
13758  """
13759  return _IMP_core.Provenance_remove_attribute(self, *args)
13760 
13761  def has_attribute(self, *args):
13762  r"""
13763  has_attribute(Provenance self, FloatKey a0) -> bool
13764  has_attribute(Provenance self, IntKey a0) -> bool
13765  has_attribute(Provenance self, FloatsKey a0) -> bool
13766  has_attribute(Provenance self, IntsKey a0) -> bool
13767  has_attribute(Provenance self, StringKey a0) -> bool
13768  has_attribute(Provenance self, ParticleIndexKey a0) -> bool
13769  has_attribute(Provenance self, ObjectKey a0) -> bool
13770  has_attribute(Provenance self, SparseFloatKey a0) -> bool
13771  has_attribute(Provenance self, SparseIntKey a0) -> bool
13772  has_attribute(Provenance self, SparseStringKey a0) -> bool
13773  has_attribute(Provenance self, SparseParticleIndexKey a0) -> bool
13774  """
13775  return _IMP_core.Provenance_has_attribute(self, *args)
13776 
13777  def get_derivative(self, a0):
13778  r"""get_derivative(Provenance self, FloatKey a0) -> double"""
13779  return _IMP_core.Provenance_get_derivative(self, a0)
13780 
13781  def get_name(self):
13782  r"""get_name(Provenance self) -> std::string"""
13783  return _IMP_core.Provenance_get_name(self)
13784 
13785  def clear_caches(self):
13786  r"""clear_caches(Provenance self)"""
13787  return _IMP_core.Provenance_clear_caches(self)
13788 
13789  def set_name(self, a0):
13790  r"""set_name(Provenance self, std::string a0)"""
13791  return _IMP_core.Provenance_set_name(self, a0)
13792 
13793  def set_check_level(self, a0):
13794  r"""set_check_level(Provenance self, IMP::CheckLevel a0)"""
13795  return _IMP_core.Provenance_set_check_level(self, a0)
13796 
13797  def add_to_derivative(self, a0, a1, a2):
13798  r"""add_to_derivative(Provenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
13799  return _IMP_core.Provenance_add_to_derivative(self, a0, a1, a2)
13800 
13801  def set_is_optimized(self, a0, a1):
13802  r"""set_is_optimized(Provenance self, FloatKey a0, bool a1)"""
13803  return _IMP_core.Provenance_set_is_optimized(self, a0, a1)
13804 
13805  def get_is_optimized(self, a0):
13806  r"""get_is_optimized(Provenance self, FloatKey a0) -> bool"""
13807  return _IMP_core.Provenance_get_is_optimized(self, a0)
13808 
13809  def get_check_level(self):
13810  r"""get_check_level(Provenance self) -> IMP::CheckLevel"""
13811  return _IMP_core.Provenance_get_check_level(self)
13812 
13813  def __eq__(self, *args):
13814  r"""
13815  __eq__(Provenance self, Provenance o) -> bool
13816  __eq__(Provenance self, Particle d) -> bool
13817  """
13818  return _IMP_core.Provenance___eq__(self, *args)
13819 
13820  def __ne__(self, *args):
13821  r"""
13822  __ne__(Provenance self, Provenance o) -> bool
13823  __ne__(Provenance self, Particle d) -> bool
13824  """
13825  return _IMP_core.Provenance___ne__(self, *args)
13826 
13827  def __le__(self, *args):
13828  r"""
13829  __le__(Provenance self, Provenance o) -> bool
13830  __le__(Provenance self, Particle d) -> bool
13831  """
13832  return _IMP_core.Provenance___le__(self, *args)
13833 
13834  def __lt__(self, *args):
13835  r"""
13836  __lt__(Provenance self, Provenance o) -> bool
13837  __lt__(Provenance self, Particle d) -> bool
13838  """
13839  return _IMP_core.Provenance___lt__(self, *args)
13840 
13841  def __ge__(self, *args):
13842  r"""
13843  __ge__(Provenance self, Provenance o) -> bool
13844  __ge__(Provenance self, Particle d) -> bool
13845  """
13846  return _IMP_core.Provenance___ge__(self, *args)
13847 
13848  def __gt__(self, *args):
13849  r"""
13850  __gt__(Provenance self, Provenance o) -> bool
13851  __gt__(Provenance self, Particle d) -> bool
13852  """
13853  return _IMP_core.Provenance___gt__(self, *args)
13854 
13855  def __hash__(self):
13856  r"""__hash__(Provenance self) -> std::size_t"""
13857  return _IMP_core.Provenance___hash__(self)
13858 
13859  def __str__(self):
13860  r"""__str__(Provenance self) -> std::string"""
13861  return _IMP_core.Provenance___str__(self)
13862 
13863  def __repr__(self):
13864  r"""__repr__(Provenance self) -> std::string"""
13865  return _IMP_core.Provenance___repr__(self)
13866 
13867  def _get_as_binary(self):
13868  r"""_get_as_binary(Provenance self) -> PyObject *"""
13869  return _IMP_core.Provenance__get_as_binary(self)
13870 
13871  def _set_from_binary(self, p):
13872  r"""_set_from_binary(Provenance self, PyObject * p)"""
13873  return _IMP_core.Provenance__set_from_binary(self, p)
13874 
13875  def __getstate__(self):
13876  p = self._get_as_binary()
13877  if len(self.__dict__) > 1:
13878  d = self.__dict__.copy()
13879  del d['this']
13880  p = (d, p)
13881  return p
13882 
13883  def __setstate__(self, p):
13884  if not hasattr(self, 'this'):
13885  self.__init__()
13886  if isinstance(p, tuple):
13887  d, p = p
13888  self.__dict__.update(d)
13889  return self._set_from_binary(p)
13890 
13891  __swig_destroy__ = _IMP_core.delete_Provenance
13892 
13893 # Register Provenance in _IMP_core:
13894 _IMP_core.Provenance_swigregister(Provenance)
13895 class StructureProvenance(Provenance):
13896  r"""Proxy of C++ IMP::core::StructureProvenance class."""
13897 
13898  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
13899 
13900  def set_filename(self, filename):
13901  r"""set_filename(StructureProvenance self, std::string filename)"""
13902  return _IMP_core.StructureProvenance_set_filename(self, filename)
13903 
13904  def get_filename(self):
13905  r"""get_filename(StructureProvenance self) -> std::string"""
13906  return _IMP_core.StructureProvenance_get_filename(self)
13907 
13908  def set_chain_id(self, chain_id):
13909  r"""set_chain_id(StructureProvenance self, std::string chain_id)"""
13910  return _IMP_core.StructureProvenance_set_chain_id(self, chain_id)
13911 
13912  def get_chain_id(self):
13913  r"""get_chain_id(StructureProvenance self) -> std::string"""
13914  return _IMP_core.StructureProvenance_get_chain_id(self)
13915 
13916  def set_residue_offset(self, residue_offset):
13917  r"""set_residue_offset(StructureProvenance self, int residue_offset)"""
13918  return _IMP_core.StructureProvenance_set_residue_offset(self, residue_offset)
13919 
13920  def get_residue_offset(self):
13921  r"""get_residue_offset(StructureProvenance self) -> int"""
13922  return _IMP_core.StructureProvenance_get_residue_offset(self)
13923 
13924  def __init__(self, *args):
13925  r"""
13926  __init__(StructureProvenance self) -> StructureProvenance
13927  __init__(StructureProvenance self, Model m, ParticleIndex id) -> StructureProvenance
13928  __init__(StructureProvenance self, _ParticleAdaptor d) -> StructureProvenance
13929  """
13930  _IMP_core.StructureProvenance_swiginit(self, _IMP_core.new_StructureProvenance(*args))
13931 
13932  @staticmethod
13933  def get_is_setup(*args):
13934  r"""
13935  get_is_setup(Model m, ParticleIndex pi) -> bool
13936  get_is_setup(_ParticleAdaptor p) -> bool
13937  """
13938  return _IMP_core.StructureProvenance_get_is_setup(*args)
13939 
13940  def show(self, *args):
13941  r"""show(StructureProvenance self, _ostream out=std::cout)"""
13942  return _IMP_core.StructureProvenance_show(self, *args)
13943 
13944  @staticmethod
13945  def setup_particle(*args):
13946  r"""
13947  setup_particle(Model m, ParticleIndex pi, std::string filename, std::string chain_id, int residue_offset) -> StructureProvenance
13948  setup_particle(_ParticleAdaptor pa, std::string filename, std::string chain_id, int residue_offset) -> StructureProvenance
13949  setup_particle(Model m, ParticleIndex pi, std::string filename, std::string chain_id) -> StructureProvenance
13950  setup_particle(_ParticleAdaptor pa, std::string filename, std::string chain_id) -> StructureProvenance
13951  setup_particle(Model m, ParticleIndex pi, StructureProvenance o) -> StructureProvenance
13952  setup_particle(_ParticleAdaptor pa, StructureProvenance o) -> StructureProvenance
13953  """
13954  return _IMP_core.StructureProvenance_setup_particle(*args)
13955 
13956  def add_attribute(self, *args):
13957  r"""
13958  add_attribute(StructureProvenance self, FloatKey k, IMP::Float v, bool opt)
13959  add_attribute(StructureProvenance self, FloatKey a0, IMP::Float a1)
13960  add_attribute(StructureProvenance self, IntKey a0, IMP::Int a1)
13961  add_attribute(StructureProvenance self, FloatsKey a0, IMP::Floats a1)
13962  add_attribute(StructureProvenance self, IntsKey a0, IMP::Ints a1)
13963  add_attribute(StructureProvenance self, StringKey a0, IMP::String a1)
13964  add_attribute(StructureProvenance self, ParticleIndexKey a0, Particle a1)
13965  add_attribute(StructureProvenance self, ObjectKey a0, Object a1)
13966  add_attribute(StructureProvenance self, SparseFloatKey a0, IMP::Float a1)
13967  add_attribute(StructureProvenance self, SparseIntKey a0, IMP::Int a1)
13968  add_attribute(StructureProvenance self, SparseStringKey a0, IMP::String a1)
13969  add_attribute(StructureProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
13970  """
13971  return _IMP_core.StructureProvenance_add_attribute(self, *args)
13972 
13973  def get_value(self, *args):
13974  r"""
13975  get_value(StructureProvenance self, FloatKey a0) -> IMP::Float
13976  get_value(StructureProvenance self, IntKey a0) -> IMP::Int
13977  get_value(StructureProvenance self, FloatsKey a0) -> IMP::Floats
13978  get_value(StructureProvenance self, IntsKey a0) -> IMP::Ints
13979  get_value(StructureProvenance self, StringKey a0) -> IMP::String
13980  get_value(StructureProvenance self, ParticleIndexKey a0) -> Particle
13981  get_value(StructureProvenance self, ObjectKey a0) -> Object
13982  get_value(StructureProvenance self, SparseFloatKey a0) -> IMP::Float
13983  get_value(StructureProvenance self, SparseIntKey a0) -> IMP::Int
13984  get_value(StructureProvenance self, SparseStringKey a0) -> IMP::String
13985  get_value(StructureProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
13986  """
13987  return _IMP_core.StructureProvenance_get_value(self, *args)
13988 
13989  def set_value(self, *args):
13990  r"""
13991  set_value(StructureProvenance self, FloatKey a0, IMP::Float a1)
13992  set_value(StructureProvenance self, IntKey a0, IMP::Int a1)
13993  set_value(StructureProvenance self, FloatsKey a0, IMP::Floats a1)
13994  set_value(StructureProvenance self, IntsKey a0, IMP::Ints a1)
13995  set_value(StructureProvenance self, StringKey a0, IMP::String a1)
13996  set_value(StructureProvenance self, ParticleIndexKey a0, Particle a1)
13997  set_value(StructureProvenance self, ObjectKey a0, Object a1)
13998  set_value(StructureProvenance self, SparseFloatKey a0, IMP::Float a1)
13999  set_value(StructureProvenance self, SparseIntKey a0, IMP::Int a1)
14000  set_value(StructureProvenance self, SparseStringKey a0, IMP::String a1)
14001  set_value(StructureProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14002  """
14003  return _IMP_core.StructureProvenance_set_value(self, *args)
14004 
14005  def remove_attribute(self, *args):
14006  r"""
14007  remove_attribute(StructureProvenance self, FloatKey a0)
14008  remove_attribute(StructureProvenance self, IntKey a0)
14009  remove_attribute(StructureProvenance self, FloatsKey a0)
14010  remove_attribute(StructureProvenance self, IntsKey a0)
14011  remove_attribute(StructureProvenance self, StringKey a0)
14012  remove_attribute(StructureProvenance self, ParticleIndexKey a0)
14013  remove_attribute(StructureProvenance self, ObjectKey a0)
14014  remove_attribute(StructureProvenance self, SparseFloatKey a0)
14015  remove_attribute(StructureProvenance self, SparseIntKey a0)
14016  remove_attribute(StructureProvenance self, SparseStringKey a0)
14017  remove_attribute(StructureProvenance self, SparseParticleIndexKey a0)
14018  """
14019  return _IMP_core.StructureProvenance_remove_attribute(self, *args)
14020 
14021  def has_attribute(self, *args):
14022  r"""
14023  has_attribute(StructureProvenance self, FloatKey a0) -> bool
14024  has_attribute(StructureProvenance self, IntKey a0) -> bool
14025  has_attribute(StructureProvenance self, FloatsKey a0) -> bool
14026  has_attribute(StructureProvenance self, IntsKey a0) -> bool
14027  has_attribute(StructureProvenance self, StringKey a0) -> bool
14028  has_attribute(StructureProvenance self, ParticleIndexKey a0) -> bool
14029  has_attribute(StructureProvenance self, ObjectKey a0) -> bool
14030  has_attribute(StructureProvenance self, SparseFloatKey a0) -> bool
14031  has_attribute(StructureProvenance self, SparseIntKey a0) -> bool
14032  has_attribute(StructureProvenance self, SparseStringKey a0) -> bool
14033  has_attribute(StructureProvenance self, SparseParticleIndexKey a0) -> bool
14034  """
14035  return _IMP_core.StructureProvenance_has_attribute(self, *args)
14036 
14037  def get_derivative(self, a0):
14038  r"""get_derivative(StructureProvenance self, FloatKey a0) -> double"""
14039  return _IMP_core.StructureProvenance_get_derivative(self, a0)
14040 
14041  def get_name(self):
14042  r"""get_name(StructureProvenance self) -> std::string"""
14043  return _IMP_core.StructureProvenance_get_name(self)
14044 
14045  def clear_caches(self):
14046  r"""clear_caches(StructureProvenance self)"""
14047  return _IMP_core.StructureProvenance_clear_caches(self)
14048 
14049  def set_name(self, a0):
14050  r"""set_name(StructureProvenance self, std::string a0)"""
14051  return _IMP_core.StructureProvenance_set_name(self, a0)
14052 
14053  def set_check_level(self, a0):
14054  r"""set_check_level(StructureProvenance self, IMP::CheckLevel a0)"""
14055  return _IMP_core.StructureProvenance_set_check_level(self, a0)
14056 
14057  def add_to_derivative(self, a0, a1, a2):
14058  r"""add_to_derivative(StructureProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
14059  return _IMP_core.StructureProvenance_add_to_derivative(self, a0, a1, a2)
14060 
14061  def set_is_optimized(self, a0, a1):
14062  r"""set_is_optimized(StructureProvenance self, FloatKey a0, bool a1)"""
14063  return _IMP_core.StructureProvenance_set_is_optimized(self, a0, a1)
14064 
14065  def get_is_optimized(self, a0):
14066  r"""get_is_optimized(StructureProvenance self, FloatKey a0) -> bool"""
14067  return _IMP_core.StructureProvenance_get_is_optimized(self, a0)
14068 
14069  def get_check_level(self):
14070  r"""get_check_level(StructureProvenance self) -> IMP::CheckLevel"""
14071  return _IMP_core.StructureProvenance_get_check_level(self)
14072 
14073  def __eq__(self, *args):
14074  r"""
14075  __eq__(StructureProvenance self, StructureProvenance o) -> bool
14076  __eq__(StructureProvenance self, Particle d) -> bool
14077  """
14078  return _IMP_core.StructureProvenance___eq__(self, *args)
14079 
14080  def __ne__(self, *args):
14081  r"""
14082  __ne__(StructureProvenance self, StructureProvenance o) -> bool
14083  __ne__(StructureProvenance self, Particle d) -> bool
14084  """
14085  return _IMP_core.StructureProvenance___ne__(self, *args)
14086 
14087  def __le__(self, *args):
14088  r"""
14089  __le__(StructureProvenance self, StructureProvenance o) -> bool
14090  __le__(StructureProvenance self, Particle d) -> bool
14091  """
14092  return _IMP_core.StructureProvenance___le__(self, *args)
14093 
14094  def __lt__(self, *args):
14095  r"""
14096  __lt__(StructureProvenance self, StructureProvenance o) -> bool
14097  __lt__(StructureProvenance self, Particle d) -> bool
14098  """
14099  return _IMP_core.StructureProvenance___lt__(self, *args)
14100 
14101  def __ge__(self, *args):
14102  r"""
14103  __ge__(StructureProvenance self, StructureProvenance o) -> bool
14104  __ge__(StructureProvenance self, Particle d) -> bool
14105  """
14106  return _IMP_core.StructureProvenance___ge__(self, *args)
14107 
14108  def __gt__(self, *args):
14109  r"""
14110  __gt__(StructureProvenance self, StructureProvenance o) -> bool
14111  __gt__(StructureProvenance self, Particle d) -> bool
14112  """
14113  return _IMP_core.StructureProvenance___gt__(self, *args)
14114 
14115  def __hash__(self):
14116  r"""__hash__(StructureProvenance self) -> std::size_t"""
14117  return _IMP_core.StructureProvenance___hash__(self)
14118 
14119  def __str__(self):
14120  r"""__str__(StructureProvenance self) -> std::string"""
14121  return _IMP_core.StructureProvenance___str__(self)
14122 
14123  def __repr__(self):
14124  r"""__repr__(StructureProvenance self) -> std::string"""
14125  return _IMP_core.StructureProvenance___repr__(self)
14126 
14127  def _get_as_binary(self):
14128  r"""_get_as_binary(StructureProvenance self) -> PyObject *"""
14129  return _IMP_core.StructureProvenance__get_as_binary(self)
14130 
14131  def _set_from_binary(self, p):
14132  r"""_set_from_binary(StructureProvenance self, PyObject * p)"""
14133  return _IMP_core.StructureProvenance__set_from_binary(self, p)
14134 
14135  def __getstate__(self):
14136  p = self._get_as_binary()
14137  if len(self.__dict__) > 1:
14138  d = self.__dict__.copy()
14139  del d['this']
14140  p = (d, p)
14141  return p
14142 
14143  def __setstate__(self, p):
14144  if not hasattr(self, 'this'):
14145  self.__init__()
14146  if isinstance(p, tuple):
14147  d, p = p
14148  self.__dict__.update(d)
14149  return self._set_from_binary(p)
14150 
14151  __swig_destroy__ = _IMP_core.delete_StructureProvenance
14152 
14153 # Register StructureProvenance in _IMP_core:
14154 _IMP_core.StructureProvenance_swigregister(StructureProvenance)
14155 class SampleProvenance(Provenance):
14156  r"""Proxy of C++ IMP::core::SampleProvenance class."""
14157 
14158  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
14159 
14160  def set_method(self, method):
14161  r"""set_method(SampleProvenance self, std::string method)"""
14162  return _IMP_core.SampleProvenance_set_method(self, method)
14163 
14164  def get_method(self):
14165  r"""get_method(SampleProvenance self) -> std::string"""
14166  return _IMP_core.SampleProvenance_get_method(self)
14167 
14168  def set_number_of_frames(self, frames):
14169  r"""set_number_of_frames(SampleProvenance self, int frames)"""
14170  return _IMP_core.SampleProvenance_set_number_of_frames(self, frames)
14171 
14172  def get_number_of_frames(self):
14173  r"""get_number_of_frames(SampleProvenance self) -> int"""
14174  return _IMP_core.SampleProvenance_get_number_of_frames(self)
14175 
14176  def set_number_of_iterations(self, iterations):
14177  r"""set_number_of_iterations(SampleProvenance self, int iterations)"""
14178  return _IMP_core.SampleProvenance_set_number_of_iterations(self, iterations)
14179 
14180  def get_number_of_iterations(self):
14181  r"""get_number_of_iterations(SampleProvenance self) -> int"""
14182  return _IMP_core.SampleProvenance_get_number_of_iterations(self)
14183 
14184  def set_number_of_replicas(self, replicas):
14185  r"""set_number_of_replicas(SampleProvenance self, int replicas)"""
14186  return _IMP_core.SampleProvenance_set_number_of_replicas(self, replicas)
14187 
14188  def get_number_of_replicas(self):
14189  r"""get_number_of_replicas(SampleProvenance self) -> int"""
14190  return _IMP_core.SampleProvenance_get_number_of_replicas(self)
14191 
14192  def __init__(self, *args):
14193  r"""
14194  __init__(SampleProvenance self) -> SampleProvenance
14195  __init__(SampleProvenance self, Model m, ParticleIndex id) -> SampleProvenance
14196  __init__(SampleProvenance self, _ParticleAdaptor d) -> SampleProvenance
14197  """
14198  _IMP_core.SampleProvenance_swiginit(self, _IMP_core.new_SampleProvenance(*args))
14199 
14200  @staticmethod
14201  def get_is_setup(*args):
14202  r"""
14203  get_is_setup(Model m, ParticleIndex pi) -> bool
14204  get_is_setup(_ParticleAdaptor p) -> bool
14205  """
14206  return _IMP_core.SampleProvenance_get_is_setup(*args)
14207 
14208  def show(self, *args):
14209  r"""show(SampleProvenance self, _ostream out=std::cout)"""
14210  return _IMP_core.SampleProvenance_show(self, *args)
14211 
14212  @staticmethod
14213  def setup_particle(*args):
14214  r"""
14215  setup_particle(Model m, ParticleIndex pi, std::string method, int frames, int iterations, int replicas) -> SampleProvenance
14216  setup_particle(_ParticleAdaptor pa, std::string method, int frames, int iterations, int replicas) -> SampleProvenance
14217  setup_particle(Model m, ParticleIndex pi, std::string method, int frames, int iterations) -> SampleProvenance
14218  setup_particle(_ParticleAdaptor pa, std::string method, int frames, int iterations) -> SampleProvenance
14219  setup_particle(Model m, ParticleIndex pi, SampleProvenance o) -> SampleProvenance
14220  setup_particle(_ParticleAdaptor pa, SampleProvenance o) -> SampleProvenance
14221  """
14222  return _IMP_core.SampleProvenance_setup_particle(*args)
14223 
14224  def add_attribute(self, *args):
14225  r"""
14226  add_attribute(SampleProvenance self, FloatKey k, IMP::Float v, bool opt)
14227  add_attribute(SampleProvenance self, FloatKey a0, IMP::Float a1)
14228  add_attribute(SampleProvenance self, IntKey a0, IMP::Int a1)
14229  add_attribute(SampleProvenance self, FloatsKey a0, IMP::Floats a1)
14230  add_attribute(SampleProvenance self, IntsKey a0, IMP::Ints a1)
14231  add_attribute(SampleProvenance self, StringKey a0, IMP::String a1)
14232  add_attribute(SampleProvenance self, ParticleIndexKey a0, Particle a1)
14233  add_attribute(SampleProvenance self, ObjectKey a0, Object a1)
14234  add_attribute(SampleProvenance self, SparseFloatKey a0, IMP::Float a1)
14235  add_attribute(SampleProvenance self, SparseIntKey a0, IMP::Int a1)
14236  add_attribute(SampleProvenance self, SparseStringKey a0, IMP::String a1)
14237  add_attribute(SampleProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14238  """
14239  return _IMP_core.SampleProvenance_add_attribute(self, *args)
14240 
14241  def get_value(self, *args):
14242  r"""
14243  get_value(SampleProvenance self, FloatKey a0) -> IMP::Float
14244  get_value(SampleProvenance self, IntKey a0) -> IMP::Int
14245  get_value(SampleProvenance self, FloatsKey a0) -> IMP::Floats
14246  get_value(SampleProvenance self, IntsKey a0) -> IMP::Ints
14247  get_value(SampleProvenance self, StringKey a0) -> IMP::String
14248  get_value(SampleProvenance self, ParticleIndexKey a0) -> Particle
14249  get_value(SampleProvenance self, ObjectKey a0) -> Object
14250  get_value(SampleProvenance self, SparseFloatKey a0) -> IMP::Float
14251  get_value(SampleProvenance self, SparseIntKey a0) -> IMP::Int
14252  get_value(SampleProvenance self, SparseStringKey a0) -> IMP::String
14253  get_value(SampleProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
14254  """
14255  return _IMP_core.SampleProvenance_get_value(self, *args)
14256 
14257  def set_value(self, *args):
14258  r"""
14259  set_value(SampleProvenance self, FloatKey a0, IMP::Float a1)
14260  set_value(SampleProvenance self, IntKey a0, IMP::Int a1)
14261  set_value(SampleProvenance self, FloatsKey a0, IMP::Floats a1)
14262  set_value(SampleProvenance self, IntsKey a0, IMP::Ints a1)
14263  set_value(SampleProvenance self, StringKey a0, IMP::String a1)
14264  set_value(SampleProvenance self, ParticleIndexKey a0, Particle a1)
14265  set_value(SampleProvenance self, ObjectKey a0, Object a1)
14266  set_value(SampleProvenance self, SparseFloatKey a0, IMP::Float a1)
14267  set_value(SampleProvenance self, SparseIntKey a0, IMP::Int a1)
14268  set_value(SampleProvenance self, SparseStringKey a0, IMP::String a1)
14269  set_value(SampleProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14270  """
14271  return _IMP_core.SampleProvenance_set_value(self, *args)
14272 
14273  def remove_attribute(self, *args):
14274  r"""
14275  remove_attribute(SampleProvenance self, FloatKey a0)
14276  remove_attribute(SampleProvenance self, IntKey a0)
14277  remove_attribute(SampleProvenance self, FloatsKey a0)
14278  remove_attribute(SampleProvenance self, IntsKey a0)
14279  remove_attribute(SampleProvenance self, StringKey a0)
14280  remove_attribute(SampleProvenance self, ParticleIndexKey a0)
14281  remove_attribute(SampleProvenance self, ObjectKey a0)
14282  remove_attribute(SampleProvenance self, SparseFloatKey a0)
14283  remove_attribute(SampleProvenance self, SparseIntKey a0)
14284  remove_attribute(SampleProvenance self, SparseStringKey a0)
14285  remove_attribute(SampleProvenance self, SparseParticleIndexKey a0)
14286  """
14287  return _IMP_core.SampleProvenance_remove_attribute(self, *args)
14288 
14289  def has_attribute(self, *args):
14290  r"""
14291  has_attribute(SampleProvenance self, FloatKey a0) -> bool
14292  has_attribute(SampleProvenance self, IntKey a0) -> bool
14293  has_attribute(SampleProvenance self, FloatsKey a0) -> bool
14294  has_attribute(SampleProvenance self, IntsKey a0) -> bool
14295  has_attribute(SampleProvenance self, StringKey a0) -> bool
14296  has_attribute(SampleProvenance self, ParticleIndexKey a0) -> bool
14297  has_attribute(SampleProvenance self, ObjectKey a0) -> bool
14298  has_attribute(SampleProvenance self, SparseFloatKey a0) -> bool
14299  has_attribute(SampleProvenance self, SparseIntKey a0) -> bool
14300  has_attribute(SampleProvenance self, SparseStringKey a0) -> bool
14301  has_attribute(SampleProvenance self, SparseParticleIndexKey a0) -> bool
14302  """
14303  return _IMP_core.SampleProvenance_has_attribute(self, *args)
14304 
14305  def get_derivative(self, a0):
14306  r"""get_derivative(SampleProvenance self, FloatKey a0) -> double"""
14307  return _IMP_core.SampleProvenance_get_derivative(self, a0)
14308 
14309  def get_name(self):
14310  r"""get_name(SampleProvenance self) -> std::string"""
14311  return _IMP_core.SampleProvenance_get_name(self)
14312 
14313  def clear_caches(self):
14314  r"""clear_caches(SampleProvenance self)"""
14315  return _IMP_core.SampleProvenance_clear_caches(self)
14316 
14317  def set_name(self, a0):
14318  r"""set_name(SampleProvenance self, std::string a0)"""
14319  return _IMP_core.SampleProvenance_set_name(self, a0)
14320 
14321  def set_check_level(self, a0):
14322  r"""set_check_level(SampleProvenance self, IMP::CheckLevel a0)"""
14323  return _IMP_core.SampleProvenance_set_check_level(self, a0)
14324 
14325  def add_to_derivative(self, a0, a1, a2):
14326  r"""add_to_derivative(SampleProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
14327  return _IMP_core.SampleProvenance_add_to_derivative(self, a0, a1, a2)
14328 
14329  def set_is_optimized(self, a0, a1):
14330  r"""set_is_optimized(SampleProvenance self, FloatKey a0, bool a1)"""
14331  return _IMP_core.SampleProvenance_set_is_optimized(self, a0, a1)
14332 
14333  def get_is_optimized(self, a0):
14334  r"""get_is_optimized(SampleProvenance self, FloatKey a0) -> bool"""
14335  return _IMP_core.SampleProvenance_get_is_optimized(self, a0)
14336 
14337  def get_check_level(self):
14338  r"""get_check_level(SampleProvenance self) -> IMP::CheckLevel"""
14339  return _IMP_core.SampleProvenance_get_check_level(self)
14340 
14341  def __eq__(self, *args):
14342  r"""
14343  __eq__(SampleProvenance self, SampleProvenance o) -> bool
14344  __eq__(SampleProvenance self, Particle d) -> bool
14345  """
14346  return _IMP_core.SampleProvenance___eq__(self, *args)
14347 
14348  def __ne__(self, *args):
14349  r"""
14350  __ne__(SampleProvenance self, SampleProvenance o) -> bool
14351  __ne__(SampleProvenance self, Particle d) -> bool
14352  """
14353  return _IMP_core.SampleProvenance___ne__(self, *args)
14354 
14355  def __le__(self, *args):
14356  r"""
14357  __le__(SampleProvenance self, SampleProvenance o) -> bool
14358  __le__(SampleProvenance self, Particle d) -> bool
14359  """
14360  return _IMP_core.SampleProvenance___le__(self, *args)
14361 
14362  def __lt__(self, *args):
14363  r"""
14364  __lt__(SampleProvenance self, SampleProvenance o) -> bool
14365  __lt__(SampleProvenance self, Particle d) -> bool
14366  """
14367  return _IMP_core.SampleProvenance___lt__(self, *args)
14368 
14369  def __ge__(self, *args):
14370  r"""
14371  __ge__(SampleProvenance self, SampleProvenance o) -> bool
14372  __ge__(SampleProvenance self, Particle d) -> bool
14373  """
14374  return _IMP_core.SampleProvenance___ge__(self, *args)
14375 
14376  def __gt__(self, *args):
14377  r"""
14378  __gt__(SampleProvenance self, SampleProvenance o) -> bool
14379  __gt__(SampleProvenance self, Particle d) -> bool
14380  """
14381  return _IMP_core.SampleProvenance___gt__(self, *args)
14382 
14383  def __hash__(self):
14384  r"""__hash__(SampleProvenance self) -> std::size_t"""
14385  return _IMP_core.SampleProvenance___hash__(self)
14386 
14387  def __str__(self):
14388  r"""__str__(SampleProvenance self) -> std::string"""
14389  return _IMP_core.SampleProvenance___str__(self)
14390 
14391  def __repr__(self):
14392  r"""__repr__(SampleProvenance self) -> std::string"""
14393  return _IMP_core.SampleProvenance___repr__(self)
14394 
14395  def _get_as_binary(self):
14396  r"""_get_as_binary(SampleProvenance self) -> PyObject *"""
14397  return _IMP_core.SampleProvenance__get_as_binary(self)
14398 
14399  def _set_from_binary(self, p):
14400  r"""_set_from_binary(SampleProvenance self, PyObject * p)"""
14401  return _IMP_core.SampleProvenance__set_from_binary(self, p)
14402 
14403  def __getstate__(self):
14404  p = self._get_as_binary()
14405  if len(self.__dict__) > 1:
14406  d = self.__dict__.copy()
14407  del d['this']
14408  p = (d, p)
14409  return p
14410 
14411  def __setstate__(self, p):
14412  if not hasattr(self, 'this'):
14413  self.__init__()
14414  if isinstance(p, tuple):
14415  d, p = p
14416  self.__dict__.update(d)
14417  return self._set_from_binary(p)
14418 
14419  __swig_destroy__ = _IMP_core.delete_SampleProvenance
14420 
14421 # Register SampleProvenance in _IMP_core:
14422 _IMP_core.SampleProvenance_swigregister(SampleProvenance)
14423 class CombineProvenance(Provenance):
14424  r"""Proxy of C++ IMP::core::CombineProvenance class."""
14425 
14426  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
14427 
14428  def set_number_of_frames(self, frames):
14429  r"""set_number_of_frames(CombineProvenance self, int frames)"""
14430  return _IMP_core.CombineProvenance_set_number_of_frames(self, frames)
14431 
14432  def get_number_of_frames(self):
14433  r"""get_number_of_frames(CombineProvenance self) -> int"""
14434  return _IMP_core.CombineProvenance_get_number_of_frames(self)
14435 
14436  def set_number_of_runs(self, runs):
14437  r"""set_number_of_runs(CombineProvenance self, int runs)"""
14438  return _IMP_core.CombineProvenance_set_number_of_runs(self, runs)
14439 
14440  def get_number_of_runs(self):
14441  r"""get_number_of_runs(CombineProvenance self) -> int"""
14442  return _IMP_core.CombineProvenance_get_number_of_runs(self)
14443 
14444  def __init__(self, *args):
14445  r"""
14446  __init__(CombineProvenance self) -> CombineProvenance
14447  __init__(CombineProvenance self, Model m, ParticleIndex id) -> CombineProvenance
14448  __init__(CombineProvenance self, _ParticleAdaptor d) -> CombineProvenance
14449  """
14450  _IMP_core.CombineProvenance_swiginit(self, _IMP_core.new_CombineProvenance(*args))
14451 
14452  @staticmethod
14453  def get_is_setup(*args):
14454  r"""
14455  get_is_setup(Model m, ParticleIndex pi) -> bool
14456  get_is_setup(_ParticleAdaptor p) -> bool
14457  """
14458  return _IMP_core.CombineProvenance_get_is_setup(*args)
14459 
14460  def show(self, *args):
14461  r"""show(CombineProvenance self, _ostream out=std::cout)"""
14462  return _IMP_core.CombineProvenance_show(self, *args)
14463 
14464  @staticmethod
14465  def setup_particle(*args):
14466  r"""
14467  setup_particle(Model m, ParticleIndex pi, int runs, int frames) -> CombineProvenance
14468  setup_particle(_ParticleAdaptor pa, int runs, int frames) -> CombineProvenance
14469  setup_particle(Model m, ParticleIndex pi, CombineProvenance o) -> CombineProvenance
14470  setup_particle(_ParticleAdaptor pa, CombineProvenance o) -> CombineProvenance
14471  """
14472  return _IMP_core.CombineProvenance_setup_particle(*args)
14473 
14474  def add_attribute(self, *args):
14475  r"""
14476  add_attribute(CombineProvenance self, FloatKey k, IMP::Float v, bool opt)
14477  add_attribute(CombineProvenance self, FloatKey a0, IMP::Float a1)
14478  add_attribute(CombineProvenance self, IntKey a0, IMP::Int a1)
14479  add_attribute(CombineProvenance self, FloatsKey a0, IMP::Floats a1)
14480  add_attribute(CombineProvenance self, IntsKey a0, IMP::Ints a1)
14481  add_attribute(CombineProvenance self, StringKey a0, IMP::String a1)
14482  add_attribute(CombineProvenance self, ParticleIndexKey a0, Particle a1)
14483  add_attribute(CombineProvenance self, ObjectKey a0, Object a1)
14484  add_attribute(CombineProvenance self, SparseFloatKey a0, IMP::Float a1)
14485  add_attribute(CombineProvenance self, SparseIntKey a0, IMP::Int a1)
14486  add_attribute(CombineProvenance self, SparseStringKey a0, IMP::String a1)
14487  add_attribute(CombineProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14488  """
14489  return _IMP_core.CombineProvenance_add_attribute(self, *args)
14490 
14491  def get_value(self, *args):
14492  r"""
14493  get_value(CombineProvenance self, FloatKey a0) -> IMP::Float
14494  get_value(CombineProvenance self, IntKey a0) -> IMP::Int
14495  get_value(CombineProvenance self, FloatsKey a0) -> IMP::Floats
14496  get_value(CombineProvenance self, IntsKey a0) -> IMP::Ints
14497  get_value(CombineProvenance self, StringKey a0) -> IMP::String
14498  get_value(CombineProvenance self, ParticleIndexKey a0) -> Particle
14499  get_value(CombineProvenance self, ObjectKey a0) -> Object
14500  get_value(CombineProvenance self, SparseFloatKey a0) -> IMP::Float
14501  get_value(CombineProvenance self, SparseIntKey a0) -> IMP::Int
14502  get_value(CombineProvenance self, SparseStringKey a0) -> IMP::String
14503  get_value(CombineProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
14504  """
14505  return _IMP_core.CombineProvenance_get_value(self, *args)
14506 
14507  def set_value(self, *args):
14508  r"""
14509  set_value(CombineProvenance self, FloatKey a0, IMP::Float a1)
14510  set_value(CombineProvenance self, IntKey a0, IMP::Int a1)
14511  set_value(CombineProvenance self, FloatsKey a0, IMP::Floats a1)
14512  set_value(CombineProvenance self, IntsKey a0, IMP::Ints a1)
14513  set_value(CombineProvenance self, StringKey a0, IMP::String a1)
14514  set_value(CombineProvenance self, ParticleIndexKey a0, Particle a1)
14515  set_value(CombineProvenance self, ObjectKey a0, Object a1)
14516  set_value(CombineProvenance self, SparseFloatKey a0, IMP::Float a1)
14517  set_value(CombineProvenance self, SparseIntKey a0, IMP::Int a1)
14518  set_value(CombineProvenance self, SparseStringKey a0, IMP::String a1)
14519  set_value(CombineProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14520  """
14521  return _IMP_core.CombineProvenance_set_value(self, *args)
14522 
14523  def remove_attribute(self, *args):
14524  r"""
14525  remove_attribute(CombineProvenance self, FloatKey a0)
14526  remove_attribute(CombineProvenance self, IntKey a0)
14527  remove_attribute(CombineProvenance self, FloatsKey a0)
14528  remove_attribute(CombineProvenance self, IntsKey a0)
14529  remove_attribute(CombineProvenance self, StringKey a0)
14530  remove_attribute(CombineProvenance self, ParticleIndexKey a0)
14531  remove_attribute(CombineProvenance self, ObjectKey a0)
14532  remove_attribute(CombineProvenance self, SparseFloatKey a0)
14533  remove_attribute(CombineProvenance self, SparseIntKey a0)
14534  remove_attribute(CombineProvenance self, SparseStringKey a0)
14535  remove_attribute(CombineProvenance self, SparseParticleIndexKey a0)
14536  """
14537  return _IMP_core.CombineProvenance_remove_attribute(self, *args)
14538 
14539  def has_attribute(self, *args):
14540  r"""
14541  has_attribute(CombineProvenance self, FloatKey a0) -> bool
14542  has_attribute(CombineProvenance self, IntKey a0) -> bool
14543  has_attribute(CombineProvenance self, FloatsKey a0) -> bool
14544  has_attribute(CombineProvenance self, IntsKey a0) -> bool
14545  has_attribute(CombineProvenance self, StringKey a0) -> bool
14546  has_attribute(CombineProvenance self, ParticleIndexKey a0) -> bool
14547  has_attribute(CombineProvenance self, ObjectKey a0) -> bool
14548  has_attribute(CombineProvenance self, SparseFloatKey a0) -> bool
14549  has_attribute(CombineProvenance self, SparseIntKey a0) -> bool
14550  has_attribute(CombineProvenance self, SparseStringKey a0) -> bool
14551  has_attribute(CombineProvenance self, SparseParticleIndexKey a0) -> bool
14552  """
14553  return _IMP_core.CombineProvenance_has_attribute(self, *args)
14554 
14555  def get_derivative(self, a0):
14556  r"""get_derivative(CombineProvenance self, FloatKey a0) -> double"""
14557  return _IMP_core.CombineProvenance_get_derivative(self, a0)
14558 
14559  def get_name(self):
14560  r"""get_name(CombineProvenance self) -> std::string"""
14561  return _IMP_core.CombineProvenance_get_name(self)
14562 
14563  def clear_caches(self):
14564  r"""clear_caches(CombineProvenance self)"""
14565  return _IMP_core.CombineProvenance_clear_caches(self)
14566 
14567  def set_name(self, a0):
14568  r"""set_name(CombineProvenance self, std::string a0)"""
14569  return _IMP_core.CombineProvenance_set_name(self, a0)
14570 
14571  def set_check_level(self, a0):
14572  r"""set_check_level(CombineProvenance self, IMP::CheckLevel a0)"""
14573  return _IMP_core.CombineProvenance_set_check_level(self, a0)
14574 
14575  def add_to_derivative(self, a0, a1, a2):
14576  r"""add_to_derivative(CombineProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
14577  return _IMP_core.CombineProvenance_add_to_derivative(self, a0, a1, a2)
14578 
14579  def set_is_optimized(self, a0, a1):
14580  r"""set_is_optimized(CombineProvenance self, FloatKey a0, bool a1)"""
14581  return _IMP_core.CombineProvenance_set_is_optimized(self, a0, a1)
14582 
14583  def get_is_optimized(self, a0):
14584  r"""get_is_optimized(CombineProvenance self, FloatKey a0) -> bool"""
14585  return _IMP_core.CombineProvenance_get_is_optimized(self, a0)
14586 
14587  def get_check_level(self):
14588  r"""get_check_level(CombineProvenance self) -> IMP::CheckLevel"""
14589  return _IMP_core.CombineProvenance_get_check_level(self)
14590 
14591  def __eq__(self, *args):
14592  r"""
14593  __eq__(CombineProvenance self, CombineProvenance o) -> bool
14594  __eq__(CombineProvenance self, Particle d) -> bool
14595  """
14596  return _IMP_core.CombineProvenance___eq__(self, *args)
14597 
14598  def __ne__(self, *args):
14599  r"""
14600  __ne__(CombineProvenance self, CombineProvenance o) -> bool
14601  __ne__(CombineProvenance self, Particle d) -> bool
14602  """
14603  return _IMP_core.CombineProvenance___ne__(self, *args)
14604 
14605  def __le__(self, *args):
14606  r"""
14607  __le__(CombineProvenance self, CombineProvenance o) -> bool
14608  __le__(CombineProvenance self, Particle d) -> bool
14609  """
14610  return _IMP_core.CombineProvenance___le__(self, *args)
14611 
14612  def __lt__(self, *args):
14613  r"""
14614  __lt__(CombineProvenance self, CombineProvenance o) -> bool
14615  __lt__(CombineProvenance self, Particle d) -> bool
14616  """
14617  return _IMP_core.CombineProvenance___lt__(self, *args)
14618 
14619  def __ge__(self, *args):
14620  r"""
14621  __ge__(CombineProvenance self, CombineProvenance o) -> bool
14622  __ge__(CombineProvenance self, Particle d) -> bool
14623  """
14624  return _IMP_core.CombineProvenance___ge__(self, *args)
14625 
14626  def __gt__(self, *args):
14627  r"""
14628  __gt__(CombineProvenance self, CombineProvenance o) -> bool
14629  __gt__(CombineProvenance self, Particle d) -> bool
14630  """
14631  return _IMP_core.CombineProvenance___gt__(self, *args)
14632 
14633  def __hash__(self):
14634  r"""__hash__(CombineProvenance self) -> std::size_t"""
14635  return _IMP_core.CombineProvenance___hash__(self)
14636 
14637  def __str__(self):
14638  r"""__str__(CombineProvenance self) -> std::string"""
14639  return _IMP_core.CombineProvenance___str__(self)
14640 
14641  def __repr__(self):
14642  r"""__repr__(CombineProvenance self) -> std::string"""
14643  return _IMP_core.CombineProvenance___repr__(self)
14644 
14645  def _get_as_binary(self):
14646  r"""_get_as_binary(CombineProvenance self) -> PyObject *"""
14647  return _IMP_core.CombineProvenance__get_as_binary(self)
14648 
14649  def _set_from_binary(self, p):
14650  r"""_set_from_binary(CombineProvenance self, PyObject * p)"""
14651  return _IMP_core.CombineProvenance__set_from_binary(self, p)
14652 
14653  def __getstate__(self):
14654  p = self._get_as_binary()
14655  if len(self.__dict__) > 1:
14656  d = self.__dict__.copy()
14657  del d['this']
14658  p = (d, p)
14659  return p
14660 
14661  def __setstate__(self, p):
14662  if not hasattr(self, 'this'):
14663  self.__init__()
14664  if isinstance(p, tuple):
14665  d, p = p
14666  self.__dict__.update(d)
14667  return self._set_from_binary(p)
14668 
14669  __swig_destroy__ = _IMP_core.delete_CombineProvenance
14670 
14671 # Register CombineProvenance in _IMP_core:
14672 _IMP_core.CombineProvenance_swigregister(CombineProvenance)
14673 class FilterProvenance(Provenance):
14674  r"""Proxy of C++ IMP::core::FilterProvenance class."""
14675 
14676  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
14677 
14678  def set_method(self, method):
14679  r"""set_method(FilterProvenance self, std::string method)"""
14680  return _IMP_core.FilterProvenance_set_method(self, method)
14681 
14682  def get_method(self):
14683  r"""get_method(FilterProvenance self) -> std::string"""
14684  return _IMP_core.FilterProvenance_get_method(self)
14685 
14686  def set_number_of_frames(self, frames):
14687  r"""set_number_of_frames(FilterProvenance self, int frames)"""
14688  return _IMP_core.FilterProvenance_set_number_of_frames(self, frames)
14689 
14690  def get_number_of_frames(self):
14691  r"""get_number_of_frames(FilterProvenance self) -> int"""
14692  return _IMP_core.FilterProvenance_get_number_of_frames(self)
14693 
14694  def set_threshold(self, threshold):
14695  r"""set_threshold(FilterProvenance self, double threshold)"""
14696  return _IMP_core.FilterProvenance_set_threshold(self, threshold)
14697 
14698  def get_threshold(self):
14699  r"""get_threshold(FilterProvenance self) -> double"""
14700  return _IMP_core.FilterProvenance_get_threshold(self)
14701 
14702  def __init__(self, *args):
14703  r"""
14704  __init__(FilterProvenance self) -> FilterProvenance
14705  __init__(FilterProvenance self, Model m, ParticleIndex id) -> FilterProvenance
14706  __init__(FilterProvenance self, _ParticleAdaptor d) -> FilterProvenance
14707  """
14708  _IMP_core.FilterProvenance_swiginit(self, _IMP_core.new_FilterProvenance(*args))
14709 
14710  @staticmethod
14711  def get_is_setup(*args):
14712  r"""
14713  get_is_setup(Model m, ParticleIndex pi) -> bool
14714  get_is_setup(_ParticleAdaptor p) -> bool
14715  """
14716  return _IMP_core.FilterProvenance_get_is_setup(*args)
14717 
14718  def show(self, *args):
14719  r"""show(FilterProvenance self, _ostream out=std::cout)"""
14720  return _IMP_core.FilterProvenance_show(self, *args)
14721 
14722  @staticmethod
14723  def setup_particle(*args):
14724  r"""
14725  setup_particle(Model m, ParticleIndex pi, std::string method, double threshold, int frames) -> FilterProvenance
14726  setup_particle(_ParticleAdaptor pa, std::string method, double threshold, int frames) -> FilterProvenance
14727  setup_particle(Model m, ParticleIndex pi, FilterProvenance o) -> FilterProvenance
14728  setup_particle(_ParticleAdaptor pa, FilterProvenance o) -> FilterProvenance
14729  """
14730  return _IMP_core.FilterProvenance_setup_particle(*args)
14731 
14732  def add_attribute(self, *args):
14733  r"""
14734  add_attribute(FilterProvenance self, FloatKey k, IMP::Float v, bool opt)
14735  add_attribute(FilterProvenance self, FloatKey a0, IMP::Float a1)
14736  add_attribute(FilterProvenance self, IntKey a0, IMP::Int a1)
14737  add_attribute(FilterProvenance self, FloatsKey a0, IMP::Floats a1)
14738  add_attribute(FilterProvenance self, IntsKey a0, IMP::Ints a1)
14739  add_attribute(FilterProvenance self, StringKey a0, IMP::String a1)
14740  add_attribute(FilterProvenance self, ParticleIndexKey a0, Particle a1)
14741  add_attribute(FilterProvenance self, ObjectKey a0, Object a1)
14742  add_attribute(FilterProvenance self, SparseFloatKey a0, IMP::Float a1)
14743  add_attribute(FilterProvenance self, SparseIntKey a0, IMP::Int a1)
14744  add_attribute(FilterProvenance self, SparseStringKey a0, IMP::String a1)
14745  add_attribute(FilterProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14746  """
14747  return _IMP_core.FilterProvenance_add_attribute(self, *args)
14748 
14749  def get_value(self, *args):
14750  r"""
14751  get_value(FilterProvenance self, FloatKey a0) -> IMP::Float
14752  get_value(FilterProvenance self, IntKey a0) -> IMP::Int
14753  get_value(FilterProvenance self, FloatsKey a0) -> IMP::Floats
14754  get_value(FilterProvenance self, IntsKey a0) -> IMP::Ints
14755  get_value(FilterProvenance self, StringKey a0) -> IMP::String
14756  get_value(FilterProvenance self, ParticleIndexKey a0) -> Particle
14757  get_value(FilterProvenance self, ObjectKey a0) -> Object
14758  get_value(FilterProvenance self, SparseFloatKey a0) -> IMP::Float
14759  get_value(FilterProvenance self, SparseIntKey a0) -> IMP::Int
14760  get_value(FilterProvenance self, SparseStringKey a0) -> IMP::String
14761  get_value(FilterProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
14762  """
14763  return _IMP_core.FilterProvenance_get_value(self, *args)
14764 
14765  def set_value(self, *args):
14766  r"""
14767  set_value(FilterProvenance self, FloatKey a0, IMP::Float a1)
14768  set_value(FilterProvenance self, IntKey a0, IMP::Int a1)
14769  set_value(FilterProvenance self, FloatsKey a0, IMP::Floats a1)
14770  set_value(FilterProvenance self, IntsKey a0, IMP::Ints a1)
14771  set_value(FilterProvenance self, StringKey a0, IMP::String a1)
14772  set_value(FilterProvenance self, ParticleIndexKey a0, Particle a1)
14773  set_value(FilterProvenance self, ObjectKey a0, Object a1)
14774  set_value(FilterProvenance self, SparseFloatKey a0, IMP::Float a1)
14775  set_value(FilterProvenance self, SparseIntKey a0, IMP::Int a1)
14776  set_value(FilterProvenance self, SparseStringKey a0, IMP::String a1)
14777  set_value(FilterProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
14778  """
14779  return _IMP_core.FilterProvenance_set_value(self, *args)
14780 
14781  def remove_attribute(self, *args):
14782  r"""
14783  remove_attribute(FilterProvenance self, FloatKey a0)
14784  remove_attribute(FilterProvenance self, IntKey a0)
14785  remove_attribute(FilterProvenance self, FloatsKey a0)
14786  remove_attribute(FilterProvenance self, IntsKey a0)
14787  remove_attribute(FilterProvenance self, StringKey a0)
14788  remove_attribute(FilterProvenance self, ParticleIndexKey a0)
14789  remove_attribute(FilterProvenance self, ObjectKey a0)
14790  remove_attribute(FilterProvenance self, SparseFloatKey a0)
14791  remove_attribute(FilterProvenance self, SparseIntKey a0)
14792  remove_attribute(FilterProvenance self, SparseStringKey a0)
14793  remove_attribute(FilterProvenance self, SparseParticleIndexKey a0)
14794  """
14795  return _IMP_core.FilterProvenance_remove_attribute(self, *args)
14796 
14797  def has_attribute(self, *args):
14798  r"""
14799  has_attribute(FilterProvenance self, FloatKey a0) -> bool
14800  has_attribute(FilterProvenance self, IntKey a0) -> bool
14801  has_attribute(FilterProvenance self, FloatsKey a0) -> bool
14802  has_attribute(FilterProvenance self, IntsKey a0) -> bool
14803  has_attribute(FilterProvenance self, StringKey a0) -> bool
14804  has_attribute(FilterProvenance self, ParticleIndexKey a0) -> bool
14805  has_attribute(FilterProvenance self, ObjectKey a0) -> bool
14806  has_attribute(FilterProvenance self, SparseFloatKey a0) -> bool
14807  has_attribute(FilterProvenance self, SparseIntKey a0) -> bool
14808  has_attribute(FilterProvenance self, SparseStringKey a0) -> bool
14809  has_attribute(FilterProvenance self, SparseParticleIndexKey a0) -> bool
14810  """
14811  return _IMP_core.FilterProvenance_has_attribute(self, *args)
14812 
14813  def get_derivative(self, a0):
14814  r"""get_derivative(FilterProvenance self, FloatKey a0) -> double"""
14815  return _IMP_core.FilterProvenance_get_derivative(self, a0)
14816 
14817  def get_name(self):
14818  r"""get_name(FilterProvenance self) -> std::string"""
14819  return _IMP_core.FilterProvenance_get_name(self)
14820 
14821  def clear_caches(self):
14822  r"""clear_caches(FilterProvenance self)"""
14823  return _IMP_core.FilterProvenance_clear_caches(self)
14824 
14825  def set_name(self, a0):
14826  r"""set_name(FilterProvenance self, std::string a0)"""
14827  return _IMP_core.FilterProvenance_set_name(self, a0)
14828 
14829  def set_check_level(self, a0):
14830  r"""set_check_level(FilterProvenance self, IMP::CheckLevel a0)"""
14831  return _IMP_core.FilterProvenance_set_check_level(self, a0)
14832 
14833  def add_to_derivative(self, a0, a1, a2):
14834  r"""add_to_derivative(FilterProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
14835  return _IMP_core.FilterProvenance_add_to_derivative(self, a0, a1, a2)
14836 
14837  def set_is_optimized(self, a0, a1):
14838  r"""set_is_optimized(FilterProvenance self, FloatKey a0, bool a1)"""
14839  return _IMP_core.FilterProvenance_set_is_optimized(self, a0, a1)
14840 
14841  def get_is_optimized(self, a0):
14842  r"""get_is_optimized(FilterProvenance self, FloatKey a0) -> bool"""
14843  return _IMP_core.FilterProvenance_get_is_optimized(self, a0)
14844 
14845  def get_check_level(self):
14846  r"""get_check_level(FilterProvenance self) -> IMP::CheckLevel"""
14847  return _IMP_core.FilterProvenance_get_check_level(self)
14848 
14849  def __eq__(self, *args):
14850  r"""
14851  __eq__(FilterProvenance self, FilterProvenance o) -> bool
14852  __eq__(FilterProvenance self, Particle d) -> bool
14853  """
14854  return _IMP_core.FilterProvenance___eq__(self, *args)
14855 
14856  def __ne__(self, *args):
14857  r"""
14858  __ne__(FilterProvenance self, FilterProvenance o) -> bool
14859  __ne__(FilterProvenance self, Particle d) -> bool
14860  """
14861  return _IMP_core.FilterProvenance___ne__(self, *args)
14862 
14863  def __le__(self, *args):
14864  r"""
14865  __le__(FilterProvenance self, FilterProvenance o) -> bool
14866  __le__(FilterProvenance self, Particle d) -> bool
14867  """
14868  return _IMP_core.FilterProvenance___le__(self, *args)
14869 
14870  def __lt__(self, *args):
14871  r"""
14872  __lt__(FilterProvenance self, FilterProvenance o) -> bool
14873  __lt__(FilterProvenance self, Particle d) -> bool
14874  """
14875  return _IMP_core.FilterProvenance___lt__(self, *args)
14876 
14877  def __ge__(self, *args):
14878  r"""
14879  __ge__(FilterProvenance self, FilterProvenance o) -> bool
14880  __ge__(FilterProvenance self, Particle d) -> bool
14881  """
14882  return _IMP_core.FilterProvenance___ge__(self, *args)
14883 
14884  def __gt__(self, *args):
14885  r"""
14886  __gt__(FilterProvenance self, FilterProvenance o) -> bool
14887  __gt__(FilterProvenance self, Particle d) -> bool
14888  """
14889  return _IMP_core.FilterProvenance___gt__(self, *args)
14890 
14891  def __hash__(self):
14892  r"""__hash__(FilterProvenance self) -> std::size_t"""
14893  return _IMP_core.FilterProvenance___hash__(self)
14894 
14895  def __str__(self):
14896  r"""__str__(FilterProvenance self) -> std::string"""
14897  return _IMP_core.FilterProvenance___str__(self)
14898 
14899  def __repr__(self):
14900  r"""__repr__(FilterProvenance self) -> std::string"""
14901  return _IMP_core.FilterProvenance___repr__(self)
14902 
14903  def _get_as_binary(self):
14904  r"""_get_as_binary(FilterProvenance self) -> PyObject *"""
14905  return _IMP_core.FilterProvenance__get_as_binary(self)
14906 
14907  def _set_from_binary(self, p):
14908  r"""_set_from_binary(FilterProvenance self, PyObject * p)"""
14909  return _IMP_core.FilterProvenance__set_from_binary(self, p)
14910 
14911  def __getstate__(self):
14912  p = self._get_as_binary()
14913  if len(self.__dict__) > 1:
14914  d = self.__dict__.copy()
14915  del d['this']
14916  p = (d, p)
14917  return p
14918 
14919  def __setstate__(self, p):
14920  if not hasattr(self, 'this'):
14921  self.__init__()
14922  if isinstance(p, tuple):
14923  d, p = p
14924  self.__dict__.update(d)
14925  return self._set_from_binary(p)
14926 
14927  __swig_destroy__ = _IMP_core.delete_FilterProvenance
14928 
14929 # Register FilterProvenance in _IMP_core:
14930 _IMP_core.FilterProvenance_swigregister(FilterProvenance)
14931 class ClusterProvenance(Provenance):
14932  r"""Proxy of C++ IMP::core::ClusterProvenance class."""
14933 
14934  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
14935 
14936  def set_number_of_members(self, members):
14937  r"""set_number_of_members(ClusterProvenance self, int members)"""
14938  return _IMP_core.ClusterProvenance_set_number_of_members(self, members)
14939 
14940  def get_number_of_members(self):
14941  r"""get_number_of_members(ClusterProvenance self) -> int"""
14942  return _IMP_core.ClusterProvenance_get_number_of_members(self)
14943 
14944  def set_precision(self, precision):
14945  r"""set_precision(ClusterProvenance self, double precision)"""
14946  return _IMP_core.ClusterProvenance_set_precision(self, precision)
14947 
14948  def get_precision(self):
14949  r"""get_precision(ClusterProvenance self) -> double"""
14950  return _IMP_core.ClusterProvenance_get_precision(self)
14951 
14952  def set_density(self, density):
14953  r"""set_density(ClusterProvenance self, std::string density)"""
14954  return _IMP_core.ClusterProvenance_set_density(self, density)
14955 
14956  def get_density(self):
14957  r"""get_density(ClusterProvenance self) -> std::string"""
14958  return _IMP_core.ClusterProvenance_get_density(self)
14959 
14960  def __init__(self, *args):
14961  r"""
14962  __init__(ClusterProvenance self) -> ClusterProvenance
14963  __init__(ClusterProvenance self, Model m, ParticleIndex id) -> ClusterProvenance
14964  __init__(ClusterProvenance self, _ParticleAdaptor d) -> ClusterProvenance
14965  """
14966  _IMP_core.ClusterProvenance_swiginit(self, _IMP_core.new_ClusterProvenance(*args))
14967 
14968  @staticmethod
14969  def get_is_setup(*args):
14970  r"""
14971  get_is_setup(Model m, ParticleIndex pi) -> bool
14972  get_is_setup(_ParticleAdaptor p) -> bool
14973  """
14974  return _IMP_core.ClusterProvenance_get_is_setup(*args)
14975 
14976  def show(self, *args):
14977  r"""show(ClusterProvenance self, _ostream out=std::cout)"""
14978  return _IMP_core.ClusterProvenance_show(self, *args)
14979 
14980  @staticmethod
14981  def setup_particle(*args):
14982  r"""
14983  setup_particle(Model m, ParticleIndex pi, int members) -> ClusterProvenance
14984  setup_particle(_ParticleAdaptor pa, int members) -> ClusterProvenance
14985  setup_particle(Model m, ParticleIndex pi, int members, double precision) -> ClusterProvenance
14986  setup_particle(_ParticleAdaptor pa, int members, double precision) -> ClusterProvenance
14987  setup_particle(Model m, ParticleIndex pi, int members, double precision, std::string density) -> ClusterProvenance
14988  setup_particle(_ParticleAdaptor pa, int members, double precision, std::string density) -> ClusterProvenance
14989  setup_particle(Model m, ParticleIndex pi, ClusterProvenance o) -> ClusterProvenance
14990  setup_particle(_ParticleAdaptor pa, ClusterProvenance o) -> ClusterProvenance
14991  """
14992  return _IMP_core.ClusterProvenance_setup_particle(*args)
14993 
14994  def add_attribute(self, *args):
14995  r"""
14996  add_attribute(ClusterProvenance self, FloatKey k, IMP::Float v, bool opt)
14997  add_attribute(ClusterProvenance self, FloatKey a0, IMP::Float a1)
14998  add_attribute(ClusterProvenance self, IntKey a0, IMP::Int a1)
14999  add_attribute(ClusterProvenance self, FloatsKey a0, IMP::Floats a1)
15000  add_attribute(ClusterProvenance self, IntsKey a0, IMP::Ints a1)
15001  add_attribute(ClusterProvenance self, StringKey a0, IMP::String a1)
15002  add_attribute(ClusterProvenance self, ParticleIndexKey a0, Particle a1)
15003  add_attribute(ClusterProvenance self, ObjectKey a0, Object a1)
15004  add_attribute(ClusterProvenance self, SparseFloatKey a0, IMP::Float a1)
15005  add_attribute(ClusterProvenance self, SparseIntKey a0, IMP::Int a1)
15006  add_attribute(ClusterProvenance self, SparseStringKey a0, IMP::String a1)
15007  add_attribute(ClusterProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15008  """
15009  return _IMP_core.ClusterProvenance_add_attribute(self, *args)
15010 
15011  def get_value(self, *args):
15012  r"""
15013  get_value(ClusterProvenance self, FloatKey a0) -> IMP::Float
15014  get_value(ClusterProvenance self, IntKey a0) -> IMP::Int
15015  get_value(ClusterProvenance self, FloatsKey a0) -> IMP::Floats
15016  get_value(ClusterProvenance self, IntsKey a0) -> IMP::Ints
15017  get_value(ClusterProvenance self, StringKey a0) -> IMP::String
15018  get_value(ClusterProvenance self, ParticleIndexKey a0) -> Particle
15019  get_value(ClusterProvenance self, ObjectKey a0) -> Object
15020  get_value(ClusterProvenance self, SparseFloatKey a0) -> IMP::Float
15021  get_value(ClusterProvenance self, SparseIntKey a0) -> IMP::Int
15022  get_value(ClusterProvenance self, SparseStringKey a0) -> IMP::String
15023  get_value(ClusterProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
15024  """
15025  return _IMP_core.ClusterProvenance_get_value(self, *args)
15026 
15027  def set_value(self, *args):
15028  r"""
15029  set_value(ClusterProvenance self, FloatKey a0, IMP::Float a1)
15030  set_value(ClusterProvenance self, IntKey a0, IMP::Int a1)
15031  set_value(ClusterProvenance self, FloatsKey a0, IMP::Floats a1)
15032  set_value(ClusterProvenance self, IntsKey a0, IMP::Ints a1)
15033  set_value(ClusterProvenance self, StringKey a0, IMP::String a1)
15034  set_value(ClusterProvenance self, ParticleIndexKey a0, Particle a1)
15035  set_value(ClusterProvenance self, ObjectKey a0, Object a1)
15036  set_value(ClusterProvenance self, SparseFloatKey a0, IMP::Float a1)
15037  set_value(ClusterProvenance self, SparseIntKey a0, IMP::Int a1)
15038  set_value(ClusterProvenance self, SparseStringKey a0, IMP::String a1)
15039  set_value(ClusterProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15040  """
15041  return _IMP_core.ClusterProvenance_set_value(self, *args)
15042 
15043  def remove_attribute(self, *args):
15044  r"""
15045  remove_attribute(ClusterProvenance self, FloatKey a0)
15046  remove_attribute(ClusterProvenance self, IntKey a0)
15047  remove_attribute(ClusterProvenance self, FloatsKey a0)
15048  remove_attribute(ClusterProvenance self, IntsKey a0)
15049  remove_attribute(ClusterProvenance self, StringKey a0)
15050  remove_attribute(ClusterProvenance self, ParticleIndexKey a0)
15051  remove_attribute(ClusterProvenance self, ObjectKey a0)
15052  remove_attribute(ClusterProvenance self, SparseFloatKey a0)
15053  remove_attribute(ClusterProvenance self, SparseIntKey a0)
15054  remove_attribute(ClusterProvenance self, SparseStringKey a0)
15055  remove_attribute(ClusterProvenance self, SparseParticleIndexKey a0)
15056  """
15057  return _IMP_core.ClusterProvenance_remove_attribute(self, *args)
15058 
15059  def has_attribute(self, *args):
15060  r"""
15061  has_attribute(ClusterProvenance self, FloatKey a0) -> bool
15062  has_attribute(ClusterProvenance self, IntKey a0) -> bool
15063  has_attribute(ClusterProvenance self, FloatsKey a0) -> bool
15064  has_attribute(ClusterProvenance self, IntsKey a0) -> bool
15065  has_attribute(ClusterProvenance self, StringKey a0) -> bool
15066  has_attribute(ClusterProvenance self, ParticleIndexKey a0) -> bool
15067  has_attribute(ClusterProvenance self, ObjectKey a0) -> bool
15068  has_attribute(ClusterProvenance self, SparseFloatKey a0) -> bool
15069  has_attribute(ClusterProvenance self, SparseIntKey a0) -> bool
15070  has_attribute(ClusterProvenance self, SparseStringKey a0) -> bool
15071  has_attribute(ClusterProvenance self, SparseParticleIndexKey a0) -> bool
15072  """
15073  return _IMP_core.ClusterProvenance_has_attribute(self, *args)
15074 
15075  def get_derivative(self, a0):
15076  r"""get_derivative(ClusterProvenance self, FloatKey a0) -> double"""
15077  return _IMP_core.ClusterProvenance_get_derivative(self, a0)
15078 
15079  def get_name(self):
15080  r"""get_name(ClusterProvenance self) -> std::string"""
15081  return _IMP_core.ClusterProvenance_get_name(self)
15082 
15083  def clear_caches(self):
15084  r"""clear_caches(ClusterProvenance self)"""
15085  return _IMP_core.ClusterProvenance_clear_caches(self)
15086 
15087  def set_name(self, a0):
15088  r"""set_name(ClusterProvenance self, std::string a0)"""
15089  return _IMP_core.ClusterProvenance_set_name(self, a0)
15090 
15091  def set_check_level(self, a0):
15092  r"""set_check_level(ClusterProvenance self, IMP::CheckLevel a0)"""
15093  return _IMP_core.ClusterProvenance_set_check_level(self, a0)
15094 
15095  def add_to_derivative(self, a0, a1, a2):
15096  r"""add_to_derivative(ClusterProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
15097  return _IMP_core.ClusterProvenance_add_to_derivative(self, a0, a1, a2)
15098 
15099  def set_is_optimized(self, a0, a1):
15100  r"""set_is_optimized(ClusterProvenance self, FloatKey a0, bool a1)"""
15101  return _IMP_core.ClusterProvenance_set_is_optimized(self, a0, a1)
15102 
15103  def get_is_optimized(self, a0):
15104  r"""get_is_optimized(ClusterProvenance self, FloatKey a0) -> bool"""
15105  return _IMP_core.ClusterProvenance_get_is_optimized(self, a0)
15106 
15107  def get_check_level(self):
15108  r"""get_check_level(ClusterProvenance self) -> IMP::CheckLevel"""
15109  return _IMP_core.ClusterProvenance_get_check_level(self)
15110 
15111  def __eq__(self, *args):
15112  r"""
15113  __eq__(ClusterProvenance self, ClusterProvenance o) -> bool
15114  __eq__(ClusterProvenance self, Particle d) -> bool
15115  """
15116  return _IMP_core.ClusterProvenance___eq__(self, *args)
15117 
15118  def __ne__(self, *args):
15119  r"""
15120  __ne__(ClusterProvenance self, ClusterProvenance o) -> bool
15121  __ne__(ClusterProvenance self, Particle d) -> bool
15122  """
15123  return _IMP_core.ClusterProvenance___ne__(self, *args)
15124 
15125  def __le__(self, *args):
15126  r"""
15127  __le__(ClusterProvenance self, ClusterProvenance o) -> bool
15128  __le__(ClusterProvenance self, Particle d) -> bool
15129  """
15130  return _IMP_core.ClusterProvenance___le__(self, *args)
15131 
15132  def __lt__(self, *args):
15133  r"""
15134  __lt__(ClusterProvenance self, ClusterProvenance o) -> bool
15135  __lt__(ClusterProvenance self, Particle d) -> bool
15136  """
15137  return _IMP_core.ClusterProvenance___lt__(self, *args)
15138 
15139  def __ge__(self, *args):
15140  r"""
15141  __ge__(ClusterProvenance self, ClusterProvenance o) -> bool
15142  __ge__(ClusterProvenance self, Particle d) -> bool
15143  """
15144  return _IMP_core.ClusterProvenance___ge__(self, *args)
15145 
15146  def __gt__(self, *args):
15147  r"""
15148  __gt__(ClusterProvenance self, ClusterProvenance o) -> bool
15149  __gt__(ClusterProvenance self, Particle d) -> bool
15150  """
15151  return _IMP_core.ClusterProvenance___gt__(self, *args)
15152 
15153  def __hash__(self):
15154  r"""__hash__(ClusterProvenance self) -> std::size_t"""
15155  return _IMP_core.ClusterProvenance___hash__(self)
15156 
15157  def __str__(self):
15158  r"""__str__(ClusterProvenance self) -> std::string"""
15159  return _IMP_core.ClusterProvenance___str__(self)
15160 
15161  def __repr__(self):
15162  r"""__repr__(ClusterProvenance self) -> std::string"""
15163  return _IMP_core.ClusterProvenance___repr__(self)
15164 
15165  def _get_as_binary(self):
15166  r"""_get_as_binary(ClusterProvenance self) -> PyObject *"""
15167  return _IMP_core.ClusterProvenance__get_as_binary(self)
15168 
15169  def _set_from_binary(self, p):
15170  r"""_set_from_binary(ClusterProvenance self, PyObject * p)"""
15171  return _IMP_core.ClusterProvenance__set_from_binary(self, p)
15172 
15173  def __getstate__(self):
15174  p = self._get_as_binary()
15175  if len(self.__dict__) > 1:
15176  d = self.__dict__.copy()
15177  del d['this']
15178  p = (d, p)
15179  return p
15180 
15181  def __setstate__(self, p):
15182  if not hasattr(self, 'this'):
15183  self.__init__()
15184  if isinstance(p, tuple):
15185  d, p = p
15186  self.__dict__.update(d)
15187  return self._set_from_binary(p)
15188 
15189  __swig_destroy__ = _IMP_core.delete_ClusterProvenance
15190 
15191 # Register ClusterProvenance in _IMP_core:
15192 _IMP_core.ClusterProvenance_swigregister(ClusterProvenance)
15193 class ScriptProvenance(Provenance):
15194  r"""Proxy of C++ IMP::core::ScriptProvenance class."""
15195 
15196  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
15197 
15198  def set_filename(self, filename):
15199  r"""set_filename(ScriptProvenance self, std::string filename)"""
15200  return _IMP_core.ScriptProvenance_set_filename(self, filename)
15201 
15202  def get_filename(self):
15203  r"""get_filename(ScriptProvenance self) -> std::string"""
15204  return _IMP_core.ScriptProvenance_get_filename(self)
15205 
15206  def __init__(self, *args):
15207  r"""
15208  __init__(ScriptProvenance self) -> ScriptProvenance
15209  __init__(ScriptProvenance self, Model m, ParticleIndex id) -> ScriptProvenance
15210  __init__(ScriptProvenance self, _ParticleAdaptor d) -> ScriptProvenance
15211  """
15212  _IMP_core.ScriptProvenance_swiginit(self, _IMP_core.new_ScriptProvenance(*args))
15213 
15214  @staticmethod
15215  def get_is_setup(*args):
15216  r"""
15217  get_is_setup(Model m, ParticleIndex pi) -> bool
15218  get_is_setup(_ParticleAdaptor p) -> bool
15219  """
15220  return _IMP_core.ScriptProvenance_get_is_setup(*args)
15221 
15222  def show(self, *args):
15223  r"""show(ScriptProvenance self, _ostream out=std::cout)"""
15224  return _IMP_core.ScriptProvenance_show(self, *args)
15225 
15226  @staticmethod
15227  def setup_particle(*args):
15228  r"""
15229  setup_particle(Model m, ParticleIndex pi, std::string filename) -> ScriptProvenance
15230  setup_particle(_ParticleAdaptor pa, std::string filename) -> ScriptProvenance
15231  setup_particle(Model m, ParticleIndex pi, ScriptProvenance o) -> ScriptProvenance
15232  setup_particle(_ParticleAdaptor pa, ScriptProvenance o) -> ScriptProvenance
15233  """
15234  return _IMP_core.ScriptProvenance_setup_particle(*args)
15235 
15236  def add_attribute(self, *args):
15237  r"""
15238  add_attribute(ScriptProvenance self, FloatKey k, IMP::Float v, bool opt)
15239  add_attribute(ScriptProvenance self, FloatKey a0, IMP::Float a1)
15240  add_attribute(ScriptProvenance self, IntKey a0, IMP::Int a1)
15241  add_attribute(ScriptProvenance self, FloatsKey a0, IMP::Floats a1)
15242  add_attribute(ScriptProvenance self, IntsKey a0, IMP::Ints a1)
15243  add_attribute(ScriptProvenance self, StringKey a0, IMP::String a1)
15244  add_attribute(ScriptProvenance self, ParticleIndexKey a0, Particle a1)
15245  add_attribute(ScriptProvenance self, ObjectKey a0, Object a1)
15246  add_attribute(ScriptProvenance self, SparseFloatKey a0, IMP::Float a1)
15247  add_attribute(ScriptProvenance self, SparseIntKey a0, IMP::Int a1)
15248  add_attribute(ScriptProvenance self, SparseStringKey a0, IMP::String a1)
15249  add_attribute(ScriptProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15250  """
15251  return _IMP_core.ScriptProvenance_add_attribute(self, *args)
15252 
15253  def get_value(self, *args):
15254  r"""
15255  get_value(ScriptProvenance self, FloatKey a0) -> IMP::Float
15256  get_value(ScriptProvenance self, IntKey a0) -> IMP::Int
15257  get_value(ScriptProvenance self, FloatsKey a0) -> IMP::Floats
15258  get_value(ScriptProvenance self, IntsKey a0) -> IMP::Ints
15259  get_value(ScriptProvenance self, StringKey a0) -> IMP::String
15260  get_value(ScriptProvenance self, ParticleIndexKey a0) -> Particle
15261  get_value(ScriptProvenance self, ObjectKey a0) -> Object
15262  get_value(ScriptProvenance self, SparseFloatKey a0) -> IMP::Float
15263  get_value(ScriptProvenance self, SparseIntKey a0) -> IMP::Int
15264  get_value(ScriptProvenance self, SparseStringKey a0) -> IMP::String
15265  get_value(ScriptProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
15266  """
15267  return _IMP_core.ScriptProvenance_get_value(self, *args)
15268 
15269  def set_value(self, *args):
15270  r"""
15271  set_value(ScriptProvenance self, FloatKey a0, IMP::Float a1)
15272  set_value(ScriptProvenance self, IntKey a0, IMP::Int a1)
15273  set_value(ScriptProvenance self, FloatsKey a0, IMP::Floats a1)
15274  set_value(ScriptProvenance self, IntsKey a0, IMP::Ints a1)
15275  set_value(ScriptProvenance self, StringKey a0, IMP::String a1)
15276  set_value(ScriptProvenance self, ParticleIndexKey a0, Particle a1)
15277  set_value(ScriptProvenance self, ObjectKey a0, Object a1)
15278  set_value(ScriptProvenance self, SparseFloatKey a0, IMP::Float a1)
15279  set_value(ScriptProvenance self, SparseIntKey a0, IMP::Int a1)
15280  set_value(ScriptProvenance self, SparseStringKey a0, IMP::String a1)
15281  set_value(ScriptProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15282  """
15283  return _IMP_core.ScriptProvenance_set_value(self, *args)
15284 
15285  def remove_attribute(self, *args):
15286  r"""
15287  remove_attribute(ScriptProvenance self, FloatKey a0)
15288  remove_attribute(ScriptProvenance self, IntKey a0)
15289  remove_attribute(ScriptProvenance self, FloatsKey a0)
15290  remove_attribute(ScriptProvenance self, IntsKey a0)
15291  remove_attribute(ScriptProvenance self, StringKey a0)
15292  remove_attribute(ScriptProvenance self, ParticleIndexKey a0)
15293  remove_attribute(ScriptProvenance self, ObjectKey a0)
15294  remove_attribute(ScriptProvenance self, SparseFloatKey a0)
15295  remove_attribute(ScriptProvenance self, SparseIntKey a0)
15296  remove_attribute(ScriptProvenance self, SparseStringKey a0)
15297  remove_attribute(ScriptProvenance self, SparseParticleIndexKey a0)
15298  """
15299  return _IMP_core.ScriptProvenance_remove_attribute(self, *args)
15300 
15301  def has_attribute(self, *args):
15302  r"""
15303  has_attribute(ScriptProvenance self, FloatKey a0) -> bool
15304  has_attribute(ScriptProvenance self, IntKey a0) -> bool
15305  has_attribute(ScriptProvenance self, FloatsKey a0) -> bool
15306  has_attribute(ScriptProvenance self, IntsKey a0) -> bool
15307  has_attribute(ScriptProvenance self, StringKey a0) -> bool
15308  has_attribute(ScriptProvenance self, ParticleIndexKey a0) -> bool
15309  has_attribute(ScriptProvenance self, ObjectKey a0) -> bool
15310  has_attribute(ScriptProvenance self, SparseFloatKey a0) -> bool
15311  has_attribute(ScriptProvenance self, SparseIntKey a0) -> bool
15312  has_attribute(ScriptProvenance self, SparseStringKey a0) -> bool
15313  has_attribute(ScriptProvenance self, SparseParticleIndexKey a0) -> bool
15314  """
15315  return _IMP_core.ScriptProvenance_has_attribute(self, *args)
15316 
15317  def get_derivative(self, a0):
15318  r"""get_derivative(ScriptProvenance self, FloatKey a0) -> double"""
15319  return _IMP_core.ScriptProvenance_get_derivative(self, a0)
15320 
15321  def get_name(self):
15322  r"""get_name(ScriptProvenance self) -> std::string"""
15323  return _IMP_core.ScriptProvenance_get_name(self)
15324 
15325  def clear_caches(self):
15326  r"""clear_caches(ScriptProvenance self)"""
15327  return _IMP_core.ScriptProvenance_clear_caches(self)
15328 
15329  def set_name(self, a0):
15330  r"""set_name(ScriptProvenance self, std::string a0)"""
15331  return _IMP_core.ScriptProvenance_set_name(self, a0)
15332 
15333  def set_check_level(self, a0):
15334  r"""set_check_level(ScriptProvenance self, IMP::CheckLevel a0)"""
15335  return _IMP_core.ScriptProvenance_set_check_level(self, a0)
15336 
15337  def add_to_derivative(self, a0, a1, a2):
15338  r"""add_to_derivative(ScriptProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
15339  return _IMP_core.ScriptProvenance_add_to_derivative(self, a0, a1, a2)
15340 
15341  def set_is_optimized(self, a0, a1):
15342  r"""set_is_optimized(ScriptProvenance self, FloatKey a0, bool a1)"""
15343  return _IMP_core.ScriptProvenance_set_is_optimized(self, a0, a1)
15344 
15345  def get_is_optimized(self, a0):
15346  r"""get_is_optimized(ScriptProvenance self, FloatKey a0) -> bool"""
15347  return _IMP_core.ScriptProvenance_get_is_optimized(self, a0)
15348 
15349  def get_check_level(self):
15350  r"""get_check_level(ScriptProvenance self) -> IMP::CheckLevel"""
15351  return _IMP_core.ScriptProvenance_get_check_level(self)
15352 
15353  def __eq__(self, *args):
15354  r"""
15355  __eq__(ScriptProvenance self, ScriptProvenance o) -> bool
15356  __eq__(ScriptProvenance self, Particle d) -> bool
15357  """
15358  return _IMP_core.ScriptProvenance___eq__(self, *args)
15359 
15360  def __ne__(self, *args):
15361  r"""
15362  __ne__(ScriptProvenance self, ScriptProvenance o) -> bool
15363  __ne__(ScriptProvenance self, Particle d) -> bool
15364  """
15365  return _IMP_core.ScriptProvenance___ne__(self, *args)
15366 
15367  def __le__(self, *args):
15368  r"""
15369  __le__(ScriptProvenance self, ScriptProvenance o) -> bool
15370  __le__(ScriptProvenance self, Particle d) -> bool
15371  """
15372  return _IMP_core.ScriptProvenance___le__(self, *args)
15373 
15374  def __lt__(self, *args):
15375  r"""
15376  __lt__(ScriptProvenance self, ScriptProvenance o) -> bool
15377  __lt__(ScriptProvenance self, Particle d) -> bool
15378  """
15379  return _IMP_core.ScriptProvenance___lt__(self, *args)
15380 
15381  def __ge__(self, *args):
15382  r"""
15383  __ge__(ScriptProvenance self, ScriptProvenance o) -> bool
15384  __ge__(ScriptProvenance self, Particle d) -> bool
15385  """
15386  return _IMP_core.ScriptProvenance___ge__(self, *args)
15387 
15388  def __gt__(self, *args):
15389  r"""
15390  __gt__(ScriptProvenance self, ScriptProvenance o) -> bool
15391  __gt__(ScriptProvenance self, Particle d) -> bool
15392  """
15393  return _IMP_core.ScriptProvenance___gt__(self, *args)
15394 
15395  def __hash__(self):
15396  r"""__hash__(ScriptProvenance self) -> std::size_t"""
15397  return _IMP_core.ScriptProvenance___hash__(self)
15398 
15399  def __str__(self):
15400  r"""__str__(ScriptProvenance self) -> std::string"""
15401  return _IMP_core.ScriptProvenance___str__(self)
15402 
15403  def __repr__(self):
15404  r"""__repr__(ScriptProvenance self) -> std::string"""
15405  return _IMP_core.ScriptProvenance___repr__(self)
15406 
15407  def _get_as_binary(self):
15408  r"""_get_as_binary(ScriptProvenance self) -> PyObject *"""
15409  return _IMP_core.ScriptProvenance__get_as_binary(self)
15410 
15411  def _set_from_binary(self, p):
15412  r"""_set_from_binary(ScriptProvenance self, PyObject * p)"""
15413  return _IMP_core.ScriptProvenance__set_from_binary(self, p)
15414 
15415  def __getstate__(self):
15416  p = self._get_as_binary()
15417  if len(self.__dict__) > 1:
15418  d = self.__dict__.copy()
15419  del d['this']
15420  p = (d, p)
15421  return p
15422 
15423  def __setstate__(self, p):
15424  if not hasattr(self, 'this'):
15425  self.__init__()
15426  if isinstance(p, tuple):
15427  d, p = p
15428  self.__dict__.update(d)
15429  return self._set_from_binary(p)
15430 
15431  __swig_destroy__ = _IMP_core.delete_ScriptProvenance
15432 
15433 # Register ScriptProvenance in _IMP_core:
15434 _IMP_core.ScriptProvenance_swigregister(ScriptProvenance)
15435 class SoftwareProvenance(Provenance):
15436  r"""Proxy of C++ IMP::core::SoftwareProvenance class."""
15437 
15438  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
15439 
15440  def set_software_name(self, name):
15441  r"""set_software_name(SoftwareProvenance self, std::string name)"""
15442  return _IMP_core.SoftwareProvenance_set_software_name(self, name)
15443 
15444  def get_software_name(self):
15445  r"""get_software_name(SoftwareProvenance self) -> std::string"""
15446  return _IMP_core.SoftwareProvenance_get_software_name(self)
15447 
15448  def set_version(self, version):
15449  r"""set_version(SoftwareProvenance self, std::string version)"""
15450  return _IMP_core.SoftwareProvenance_set_version(self, version)
15451 
15452  def get_version(self):
15453  r"""get_version(SoftwareProvenance self) -> std::string"""
15454  return _IMP_core.SoftwareProvenance_get_version(self)
15455 
15456  def set_location(self, location):
15457  r"""set_location(SoftwareProvenance self, std::string location)"""
15458  return _IMP_core.SoftwareProvenance_set_location(self, location)
15459 
15460  def get_location(self):
15461  r"""get_location(SoftwareProvenance self) -> std::string"""
15462  return _IMP_core.SoftwareProvenance_get_location(self)
15463 
15464  def __init__(self, *args):
15465  r"""
15466  __init__(SoftwareProvenance self) -> SoftwareProvenance
15467  __init__(SoftwareProvenance self, Model m, ParticleIndex id) -> SoftwareProvenance
15468  __init__(SoftwareProvenance self, _ParticleAdaptor d) -> SoftwareProvenance
15469  """
15470  _IMP_core.SoftwareProvenance_swiginit(self, _IMP_core.new_SoftwareProvenance(*args))
15471 
15472  @staticmethod
15473  def get_is_setup(*args):
15474  r"""
15475  get_is_setup(Model m, ParticleIndex pi) -> bool
15476  get_is_setup(_ParticleAdaptor p) -> bool
15477  """
15478  return _IMP_core.SoftwareProvenance_get_is_setup(*args)
15479 
15480  def show(self, *args):
15481  r"""show(SoftwareProvenance self, _ostream out=std::cout)"""
15482  return _IMP_core.SoftwareProvenance_show(self, *args)
15483 
15484  @staticmethod
15485  def setup_particle(*args):
15486  r"""
15487  setup_particle(Model m, ParticleIndex pi, std::string name, std::string version, std::string location) -> SoftwareProvenance
15488  setup_particle(_ParticleAdaptor pa, std::string name, std::string version, std::string location) -> SoftwareProvenance
15489  setup_particle(Model m, ParticleIndex pi, SoftwareProvenance o) -> SoftwareProvenance
15490  setup_particle(_ParticleAdaptor pa, SoftwareProvenance o) -> SoftwareProvenance
15491  """
15492  return _IMP_core.SoftwareProvenance_setup_particle(*args)
15493 
15494  def add_attribute(self, *args):
15495  r"""
15496  add_attribute(SoftwareProvenance self, FloatKey k, IMP::Float v, bool opt)
15497  add_attribute(SoftwareProvenance self, FloatKey a0, IMP::Float a1)
15498  add_attribute(SoftwareProvenance self, IntKey a0, IMP::Int a1)
15499  add_attribute(SoftwareProvenance self, FloatsKey a0, IMP::Floats a1)
15500  add_attribute(SoftwareProvenance self, IntsKey a0, IMP::Ints a1)
15501  add_attribute(SoftwareProvenance self, StringKey a0, IMP::String a1)
15502  add_attribute(SoftwareProvenance self, ParticleIndexKey a0, Particle a1)
15503  add_attribute(SoftwareProvenance self, ObjectKey a0, Object a1)
15504  add_attribute(SoftwareProvenance self, SparseFloatKey a0, IMP::Float a1)
15505  add_attribute(SoftwareProvenance self, SparseIntKey a0, IMP::Int a1)
15506  add_attribute(SoftwareProvenance self, SparseStringKey a0, IMP::String a1)
15507  add_attribute(SoftwareProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15508  """
15509  return _IMP_core.SoftwareProvenance_add_attribute(self, *args)
15510 
15511  def get_value(self, *args):
15512  r"""
15513  get_value(SoftwareProvenance self, FloatKey a0) -> IMP::Float
15514  get_value(SoftwareProvenance self, IntKey a0) -> IMP::Int
15515  get_value(SoftwareProvenance self, FloatsKey a0) -> IMP::Floats
15516  get_value(SoftwareProvenance self, IntsKey a0) -> IMP::Ints
15517  get_value(SoftwareProvenance self, StringKey a0) -> IMP::String
15518  get_value(SoftwareProvenance self, ParticleIndexKey a0) -> Particle
15519  get_value(SoftwareProvenance self, ObjectKey a0) -> Object
15520  get_value(SoftwareProvenance self, SparseFloatKey a0) -> IMP::Float
15521  get_value(SoftwareProvenance self, SparseIntKey a0) -> IMP::Int
15522  get_value(SoftwareProvenance self, SparseStringKey a0) -> IMP::String
15523  get_value(SoftwareProvenance self, SparseParticleIndexKey a0) -> ParticleIndex
15524  """
15525  return _IMP_core.SoftwareProvenance_get_value(self, *args)
15526 
15527  def set_value(self, *args):
15528  r"""
15529  set_value(SoftwareProvenance self, FloatKey a0, IMP::Float a1)
15530  set_value(SoftwareProvenance self, IntKey a0, IMP::Int a1)
15531  set_value(SoftwareProvenance self, FloatsKey a0, IMP::Floats a1)
15532  set_value(SoftwareProvenance self, IntsKey a0, IMP::Ints a1)
15533  set_value(SoftwareProvenance self, StringKey a0, IMP::String a1)
15534  set_value(SoftwareProvenance self, ParticleIndexKey a0, Particle a1)
15535  set_value(SoftwareProvenance self, ObjectKey a0, Object a1)
15536  set_value(SoftwareProvenance self, SparseFloatKey a0, IMP::Float a1)
15537  set_value(SoftwareProvenance self, SparseIntKey a0, IMP::Int a1)
15538  set_value(SoftwareProvenance self, SparseStringKey a0, IMP::String a1)
15539  set_value(SoftwareProvenance self, SparseParticleIndexKey a0, ParticleIndex a1)
15540  """
15541  return _IMP_core.SoftwareProvenance_set_value(self, *args)
15542 
15543  def remove_attribute(self, *args):
15544  r"""
15545  remove_attribute(SoftwareProvenance self, FloatKey a0)
15546  remove_attribute(SoftwareProvenance self, IntKey a0)
15547  remove_attribute(SoftwareProvenance self, FloatsKey a0)
15548  remove_attribute(SoftwareProvenance self, IntsKey a0)
15549  remove_attribute(SoftwareProvenance self, StringKey a0)
15550  remove_attribute(SoftwareProvenance self, ParticleIndexKey a0)
15551  remove_attribute(SoftwareProvenance self, ObjectKey a0)
15552  remove_attribute(SoftwareProvenance self, SparseFloatKey a0)
15553  remove_attribute(SoftwareProvenance self, SparseIntKey a0)
15554  remove_attribute(SoftwareProvenance self, SparseStringKey a0)
15555  remove_attribute(SoftwareProvenance self, SparseParticleIndexKey a0)
15556  """
15557  return _IMP_core.SoftwareProvenance_remove_attribute(self, *args)
15558 
15559  def has_attribute(self, *args):
15560  r"""
15561  has_attribute(SoftwareProvenance self, FloatKey a0) -> bool
15562  has_attribute(SoftwareProvenance self, IntKey a0) -> bool
15563  has_attribute(SoftwareProvenance self, FloatsKey a0) -> bool
15564  has_attribute(SoftwareProvenance self, IntsKey a0) -> bool
15565  has_attribute(SoftwareProvenance self, StringKey a0) -> bool
15566  has_attribute(SoftwareProvenance self, ParticleIndexKey a0) -> bool
15567  has_attribute(SoftwareProvenance self, ObjectKey a0) -> bool
15568  has_attribute(SoftwareProvenance self, SparseFloatKey a0) -> bool
15569  has_attribute(SoftwareProvenance self, SparseIntKey a0) -> bool
15570  has_attribute(SoftwareProvenance self, SparseStringKey a0) -> bool
15571  has_attribute(SoftwareProvenance self, SparseParticleIndexKey a0) -> bool
15572  """
15573  return _IMP_core.SoftwareProvenance_has_attribute(self, *args)
15574 
15575  def get_derivative(self, a0):
15576  r"""get_derivative(SoftwareProvenance self, FloatKey a0) -> double"""
15577  return _IMP_core.SoftwareProvenance_get_derivative(self, a0)
15578 
15579  def get_name(self):
15580  r"""get_name(SoftwareProvenance self) -> std::string"""
15581  return _IMP_core.SoftwareProvenance_get_name(self)
15582 
15583  def clear_caches(self):
15584  r"""clear_caches(SoftwareProvenance self)"""
15585  return _IMP_core.SoftwareProvenance_clear_caches(self)
15586 
15587  def set_name(self, a0):
15588  r"""set_name(SoftwareProvenance self, std::string a0)"""
15589  return _IMP_core.SoftwareProvenance_set_name(self, a0)
15590 
15591  def set_check_level(self, a0):
15592  r"""set_check_level(SoftwareProvenance self, IMP::CheckLevel a0)"""
15593  return _IMP_core.SoftwareProvenance_set_check_level(self, a0)
15594 
15595  def add_to_derivative(self, a0, a1, a2):
15596  r"""add_to_derivative(SoftwareProvenance self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
15597  return _IMP_core.SoftwareProvenance_add_to_derivative(self, a0, a1, a2)
15598 
15599  def set_is_optimized(self, a0, a1):
15600  r"""set_is_optimized(SoftwareProvenance self, FloatKey a0, bool a1)"""
15601  return _IMP_core.SoftwareProvenance_set_is_optimized(self, a0, a1)
15602 
15603  def get_is_optimized(self, a0):
15604  r"""get_is_optimized(SoftwareProvenance self, FloatKey a0) -> bool"""
15605  return _IMP_core.SoftwareProvenance_get_is_optimized(self, a0)
15606 
15607  def get_check_level(self):
15608  r"""get_check_level(SoftwareProvenance self) -> IMP::CheckLevel"""
15609  return _IMP_core.SoftwareProvenance_get_check_level(self)
15610 
15611  def __eq__(self, *args):
15612  r"""
15613  __eq__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15614  __eq__(SoftwareProvenance self, Particle d) -> bool
15615  """
15616  return _IMP_core.SoftwareProvenance___eq__(self, *args)
15617 
15618  def __ne__(self, *args):
15619  r"""
15620  __ne__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15621  __ne__(SoftwareProvenance self, Particle d) -> bool
15622  """
15623  return _IMP_core.SoftwareProvenance___ne__(self, *args)
15624 
15625  def __le__(self, *args):
15626  r"""
15627  __le__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15628  __le__(SoftwareProvenance self, Particle d) -> bool
15629  """
15630  return _IMP_core.SoftwareProvenance___le__(self, *args)
15631 
15632  def __lt__(self, *args):
15633  r"""
15634  __lt__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15635  __lt__(SoftwareProvenance self, Particle d) -> bool
15636  """
15637  return _IMP_core.SoftwareProvenance___lt__(self, *args)
15638 
15639  def __ge__(self, *args):
15640  r"""
15641  __ge__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15642  __ge__(SoftwareProvenance self, Particle d) -> bool
15643  """
15644  return _IMP_core.SoftwareProvenance___ge__(self, *args)
15645 
15646  def __gt__(self, *args):
15647  r"""
15648  __gt__(SoftwareProvenance self, SoftwareProvenance o) -> bool
15649  __gt__(SoftwareProvenance self, Particle d) -> bool
15650  """
15651  return _IMP_core.SoftwareProvenance___gt__(self, *args)
15652 
15653  def __hash__(self):
15654  r"""__hash__(SoftwareProvenance self) -> std::size_t"""
15655  return _IMP_core.SoftwareProvenance___hash__(self)
15656 
15657  def __str__(self):
15658  r"""__str__(SoftwareProvenance self) -> std::string"""
15659  return _IMP_core.SoftwareProvenance___str__(self)
15660 
15661  def __repr__(self):
15662  r"""__repr__(SoftwareProvenance self) -> std::string"""
15663  return _IMP_core.SoftwareProvenance___repr__(self)
15664 
15665  def _get_as_binary(self):
15666  r"""_get_as_binary(SoftwareProvenance self) -> PyObject *"""
15667  return _IMP_core.SoftwareProvenance__get_as_binary(self)
15668 
15669  def _set_from_binary(self, p):
15670  r"""_set_from_binary(SoftwareProvenance self, PyObject * p)"""
15671  return _IMP_core.SoftwareProvenance__set_from_binary(self, p)
15672 
15673  def __getstate__(self):
15674  p = self._get_as_binary()
15675  if len(self.__dict__) > 1:
15676  d = self.__dict__.copy()
15677  del d['this']
15678  p = (d, p)
15679  return p
15680 
15681  def __setstate__(self, p):
15682  if not hasattr(self, 'this'):
15683  self.__init__()
15684  if isinstance(p, tuple):
15685  d, p = p
15686  self.__dict__.update(d)
15687  return self._set_from_binary(p)
15688 
15689  __swig_destroy__ = _IMP_core.delete_SoftwareProvenance
15690 
15691 # Register SoftwareProvenance in _IMP_core:
15692 _IMP_core.SoftwareProvenance_swigregister(SoftwareProvenance)
15693 class Provenanced(IMP.Decorator):
15694  r"""Proxy of C++ IMP::core::Provenanced class."""
15695 
15696  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
15697 
15698  def get_provenance(self):
15699  r"""get_provenance(Provenanced self) -> Provenance"""
15700  return _IMP_core.Provenanced_get_provenance(self)
15701 
15702  def set_provenance(self, p):
15703  r"""set_provenance(Provenanced self, Provenance p)"""
15704  return _IMP_core.Provenanced_set_provenance(self, p)
15705 
15706  def __init__(self, *args):
15707  r"""
15708  __init__(Provenanced self) -> Provenanced
15709  __init__(Provenanced self, Model m, ParticleIndex id) -> Provenanced
15710  __init__(Provenanced self, _ParticleAdaptor d) -> Provenanced
15711  """
15712  _IMP_core.Provenanced_swiginit(self, _IMP_core.new_Provenanced(*args))
15713 
15714  @staticmethod
15715  def get_is_setup(*args):
15716  r"""
15717  get_is_setup(Model m, ParticleIndex pi) -> bool
15718  get_is_setup(_ParticleAdaptor p) -> bool
15719  """
15720  return _IMP_core.Provenanced_get_is_setup(*args)
15721 
15722  def show(self, *args):
15723  r"""show(Provenanced self, _ostream out=std::cout)"""
15724  return _IMP_core.Provenanced_show(self, *args)
15725 
15726  @staticmethod
15727  def setup_particle(*args):
15728  r"""
15729  setup_particle(Model m, ParticleIndex pi, Provenance p) -> Provenanced
15730  setup_particle(_ParticleAdaptor pa, Provenance p) -> Provenanced
15731  """
15732  return _IMP_core.Provenanced_setup_particle(*args)
15733 
15734  def add_attribute(self, *args):
15735  r"""
15736  add_attribute(Provenanced self, FloatKey k, IMP::Float v, bool opt)
15737  add_attribute(Provenanced self, FloatKey a0, IMP::Float a1)
15738  add_attribute(Provenanced self, IntKey a0, IMP::Int a1)
15739  add_attribute(Provenanced self, FloatsKey a0, IMP::Floats a1)
15740  add_attribute(Provenanced self, IntsKey a0, IMP::Ints a1)
15741  add_attribute(Provenanced self, StringKey a0, IMP::String a1)
15742  add_attribute(Provenanced self, ParticleIndexKey a0, Particle a1)
15743  add_attribute(Provenanced self, ObjectKey a0, Object a1)
15744  add_attribute(Provenanced self, SparseFloatKey a0, IMP::Float a1)
15745  add_attribute(Provenanced self, SparseIntKey a0, IMP::Int a1)
15746  add_attribute(Provenanced self, SparseStringKey a0, IMP::String a1)
15747  add_attribute(Provenanced self, SparseParticleIndexKey a0, ParticleIndex a1)
15748  """
15749  return _IMP_core.Provenanced_add_attribute(self, *args)
15750 
15751  def get_value(self, *args):
15752  r"""
15753  get_value(Provenanced self, FloatKey a0) -> IMP::Float
15754  get_value(Provenanced self, IntKey a0) -> IMP::Int
15755  get_value(Provenanced self, FloatsKey a0) -> IMP::Floats
15756  get_value(Provenanced self, IntsKey a0) -> IMP::Ints
15757  get_value(Provenanced self, StringKey a0) -> IMP::String
15758  get_value(Provenanced self, ParticleIndexKey a0) -> Particle
15759  get_value(Provenanced self, ObjectKey a0) -> Object
15760  get_value(Provenanced self, SparseFloatKey a0) -> IMP::Float
15761  get_value(Provenanced self, SparseIntKey a0) -> IMP::Int
15762  get_value(Provenanced self, SparseStringKey a0) -> IMP::String
15763  get_value(Provenanced self, SparseParticleIndexKey a0) -> ParticleIndex
15764  """
15765  return _IMP_core.Provenanced_get_value(self, *args)
15766 
15767  def set_value(self, *args):
15768  r"""
15769  set_value(Provenanced self, FloatKey a0, IMP::Float a1)
15770  set_value(Provenanced self, IntKey a0, IMP::Int a1)
15771  set_value(Provenanced self, FloatsKey a0, IMP::Floats a1)
15772  set_value(Provenanced self, IntsKey a0, IMP::Ints a1)
15773  set_value(Provenanced self, StringKey a0, IMP::String a1)
15774  set_value(Provenanced self, ParticleIndexKey a0, Particle a1)
15775  set_value(Provenanced self, ObjectKey a0, Object a1)
15776  set_value(Provenanced self, SparseFloatKey a0, IMP::Float a1)
15777  set_value(Provenanced self, SparseIntKey a0, IMP::Int a1)
15778  set_value(Provenanced self, SparseStringKey a0, IMP::String a1)
15779  set_value(Provenanced self, SparseParticleIndexKey a0, ParticleIndex a1)
15780  """
15781  return _IMP_core.Provenanced_set_value(self, *args)
15782 
15783  def remove_attribute(self, *args):
15784  r"""
15785  remove_attribute(Provenanced self, FloatKey a0)
15786  remove_attribute(Provenanced self, IntKey a0)
15787  remove_attribute(Provenanced self, FloatsKey a0)
15788  remove_attribute(Provenanced self, IntsKey a0)
15789  remove_attribute(Provenanced self, StringKey a0)
15790  remove_attribute(Provenanced self, ParticleIndexKey a0)
15791  remove_attribute(Provenanced self, ObjectKey a0)
15792  remove_attribute(Provenanced self, SparseFloatKey a0)
15793  remove_attribute(Provenanced self, SparseIntKey a0)
15794  remove_attribute(Provenanced self, SparseStringKey a0)
15795  remove_attribute(Provenanced self, SparseParticleIndexKey a0)
15796  """
15797  return _IMP_core.Provenanced_remove_attribute(self, *args)
15798 
15799  def has_attribute(self, *args):
15800  r"""
15801  has_attribute(Provenanced self, FloatKey a0) -> bool
15802  has_attribute(Provenanced self, IntKey a0) -> bool
15803  has_attribute(Provenanced self, FloatsKey a0) -> bool
15804  has_attribute(Provenanced self, IntsKey a0) -> bool
15805  has_attribute(Provenanced self, StringKey a0) -> bool
15806  has_attribute(Provenanced self, ParticleIndexKey a0) -> bool
15807  has_attribute(Provenanced self, ObjectKey a0) -> bool
15808  has_attribute(Provenanced self, SparseFloatKey a0) -> bool
15809  has_attribute(Provenanced self, SparseIntKey a0) -> bool
15810  has_attribute(Provenanced self, SparseStringKey a0) -> bool
15811  has_attribute(Provenanced self, SparseParticleIndexKey a0) -> bool
15812  """
15813  return _IMP_core.Provenanced_has_attribute(self, *args)
15814 
15815  def get_derivative(self, a0):
15816  r"""get_derivative(Provenanced self, FloatKey a0) -> double"""
15817  return _IMP_core.Provenanced_get_derivative(self, a0)
15818 
15819  def get_name(self):
15820  r"""get_name(Provenanced self) -> std::string"""
15821  return _IMP_core.Provenanced_get_name(self)
15822 
15823  def clear_caches(self):
15824  r"""clear_caches(Provenanced self)"""
15825  return _IMP_core.Provenanced_clear_caches(self)
15826 
15827  def set_name(self, a0):
15828  r"""set_name(Provenanced self, std::string a0)"""
15829  return _IMP_core.Provenanced_set_name(self, a0)
15830 
15831  def set_check_level(self, a0):
15832  r"""set_check_level(Provenanced self, IMP::CheckLevel a0)"""
15833  return _IMP_core.Provenanced_set_check_level(self, a0)
15834 
15835  def add_to_derivative(self, a0, a1, a2):
15836  r"""add_to_derivative(Provenanced self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
15837  return _IMP_core.Provenanced_add_to_derivative(self, a0, a1, a2)
15838 
15839  def set_is_optimized(self, a0, a1):
15840  r"""set_is_optimized(Provenanced self, FloatKey a0, bool a1)"""
15841  return _IMP_core.Provenanced_set_is_optimized(self, a0, a1)
15842 
15843  def get_is_optimized(self, a0):
15844  r"""get_is_optimized(Provenanced self, FloatKey a0) -> bool"""
15845  return _IMP_core.Provenanced_get_is_optimized(self, a0)
15846 
15847  def get_check_level(self):
15848  r"""get_check_level(Provenanced self) -> IMP::CheckLevel"""
15849  return _IMP_core.Provenanced_get_check_level(self)
15850 
15851  def __eq__(self, *args):
15852  r"""
15853  __eq__(Provenanced self, Provenanced o) -> bool
15854  __eq__(Provenanced self, Particle d) -> bool
15855  """
15856  return _IMP_core.Provenanced___eq__(self, *args)
15857 
15858  def __ne__(self, *args):
15859  r"""
15860  __ne__(Provenanced self, Provenanced o) -> bool
15861  __ne__(Provenanced self, Particle d) -> bool
15862  """
15863  return _IMP_core.Provenanced___ne__(self, *args)
15864 
15865  def __le__(self, *args):
15866  r"""
15867  __le__(Provenanced self, Provenanced o) -> bool
15868  __le__(Provenanced self, Particle d) -> bool
15869  """
15870  return _IMP_core.Provenanced___le__(self, *args)
15871 
15872  def __lt__(self, *args):
15873  r"""
15874  __lt__(Provenanced self, Provenanced o) -> bool
15875  __lt__(Provenanced self, Particle d) -> bool
15876  """
15877  return _IMP_core.Provenanced___lt__(self, *args)
15878 
15879  def __ge__(self, *args):
15880  r"""
15881  __ge__(Provenanced self, Provenanced o) -> bool
15882  __ge__(Provenanced self, Particle d) -> bool
15883  """
15884  return _IMP_core.Provenanced___ge__(self, *args)
15885 
15886  def __gt__(self, *args):
15887  r"""
15888  __gt__(Provenanced self, Provenanced o) -> bool
15889  __gt__(Provenanced self, Particle d) -> bool
15890  """
15891  return _IMP_core.Provenanced___gt__(self, *args)
15892 
15893  def __hash__(self):
15894  r"""__hash__(Provenanced self) -> std::size_t"""
15895  return _IMP_core.Provenanced___hash__(self)
15896 
15897  def __str__(self):
15898  r"""__str__(Provenanced self) -> std::string"""
15899  return _IMP_core.Provenanced___str__(self)
15900 
15901  def __repr__(self):
15902  r"""__repr__(Provenanced self) -> std::string"""
15903  return _IMP_core.Provenanced___repr__(self)
15904 
15905  def _get_as_binary(self):
15906  r"""_get_as_binary(Provenanced self) -> PyObject *"""
15907  return _IMP_core.Provenanced__get_as_binary(self)
15908 
15909  def _set_from_binary(self, p):
15910  r"""_set_from_binary(Provenanced self, PyObject * p)"""
15911  return _IMP_core.Provenanced__set_from_binary(self, p)
15912 
15913  def __getstate__(self):
15914  p = self._get_as_binary()
15915  if len(self.__dict__) > 1:
15916  d = self.__dict__.copy()
15917  del d['this']
15918  p = (d, p)
15919  return p
15920 
15921  def __setstate__(self, p):
15922  if not hasattr(self, 'this'):
15923  self.__init__()
15924  if isinstance(p, tuple):
15925  d, p = p
15926  self.__dict__.update(d)
15927  return self._set_from_binary(p)
15928 
15929  __swig_destroy__ = _IMP_core.delete_Provenanced
15930 
15931 # Register Provenanced in _IMP_core:
15932 _IMP_core.Provenanced_swigregister(Provenanced)
15933 
15934 def add_provenance(m, pi, p):
15935  r"""add_provenance(Model m, ParticleIndex pi, Provenance p)"""
15936  return _IMP_core.add_provenance(m, pi, p)
15937 
15938 def create_clone(p):
15939  r"""create_clone(Provenance p) -> Provenance"""
15940  return _IMP_core.create_clone(p)
15941 
15943  r"""
15944  get_transformation_aligning_first_to_second(IMP::ParticlesTemp const & a, IMP::ParticlesTemp const & b) -> Transformation3D
15945  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
15946  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
15947  """
15948  return _IMP_core.get_transformation_aligning_first_to_second(*args)
15949 
15950 def create_restraint(ps, pp):
15951  r"""create_restraint(PairScore ps, IMP::ParticlePair pp) -> Restraint"""
15952  return _IMP_core.create_restraint(ps, pp)
15954  r"""Proxy of C++ IMP::core::TruncatedHarmonic< IMP::core::LOWER > class."""
15955 
15956  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
15957 
15958  def __init__(self, *args):
15959  r"""
15960  __init__(TruncatedHarmonicLowerBound self, IMP::Float center, IMP::Float k, IMP::Float threshold, IMP::Float limit) -> TruncatedHarmonicLowerBound
15961  __init__(TruncatedHarmonicLowerBound self, IMP::Float center, IMP::Float k, IMP::Float threshold) -> TruncatedHarmonicLowerBound
15962  """
15963  _IMP_core.TruncatedHarmonicLowerBound_swiginit(self, _IMP_core.new_TruncatedHarmonicLowerBound(*args))
15964 
15965  def get_version_info(self):
15966  r"""get_version_info(TruncatedHarmonicLowerBound self) -> VersionInfo"""
15967  return _IMP_core.TruncatedHarmonicLowerBound_get_version_info(self)
15968  __swig_destroy__ = _IMP_core.delete_TruncatedHarmonicLowerBound
15969 
15970  def __str__(self):
15971  r"""__str__(TruncatedHarmonicLowerBound self) -> std::string"""
15972  return _IMP_core.TruncatedHarmonicLowerBound___str__(self)
15973 
15974  def __repr__(self):
15975  r"""__repr__(TruncatedHarmonicLowerBound self) -> std::string"""
15976  return _IMP_core.TruncatedHarmonicLowerBound___repr__(self)
15977 
15978  @staticmethod
15979  def get_from(o):
15980  return _object_cast_to_TruncatedHarmonic(o)
15981 
15982 
15983 # Register TruncatedHarmonicLowerBound in _IMP_core:
15984 _IMP_core.TruncatedHarmonicLowerBound_swigregister(TruncatedHarmonicLowerBound)
15986  r"""Proxy of C++ IMP::core::TruncatedHarmonic< IMP::core::UPPER > class."""
15987 
15988  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
15989 
15990  def __init__(self, *args):
15991  r"""
15992  __init__(TruncatedHarmonicUpperBound self, IMP::Float center, IMP::Float k, IMP::Float threshold, IMP::Float limit) -> TruncatedHarmonicUpperBound
15993  __init__(TruncatedHarmonicUpperBound self, IMP::Float center, IMP::Float k, IMP::Float threshold) -> TruncatedHarmonicUpperBound
15994  """
15995  _IMP_core.TruncatedHarmonicUpperBound_swiginit(self, _IMP_core.new_TruncatedHarmonicUpperBound(*args))
15996 
15997  def get_version_info(self):
15998  r"""get_version_info(TruncatedHarmonicUpperBound self) -> VersionInfo"""
15999  return _IMP_core.TruncatedHarmonicUpperBound_get_version_info(self)
16000  __swig_destroy__ = _IMP_core.delete_TruncatedHarmonicUpperBound
16001 
16002  def __str__(self):
16003  r"""__str__(TruncatedHarmonicUpperBound self) -> std::string"""
16004  return _IMP_core.TruncatedHarmonicUpperBound___str__(self)
16005 
16006  def __repr__(self):
16007  r"""__repr__(TruncatedHarmonicUpperBound self) -> std::string"""
16008  return _IMP_core.TruncatedHarmonicUpperBound___repr__(self)
16009 
16010  @staticmethod
16011  def get_from(o):
16012  return _object_cast_to_TruncatedHarmonic(o)
16013 
16014 
16015 # Register TruncatedHarmonicUpperBound in _IMP_core:
16016 _IMP_core.TruncatedHarmonicUpperBound_swigregister(TruncatedHarmonicUpperBound)
16018  r"""Proxy of C++ IMP::core::TruncatedHarmonic< IMP::core::BOTH > class."""
16019 
16020  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16021 
16022  def __init__(self, *args):
16023  r"""
16024  __init__(TruncatedHarmonicBound self, IMP::Float center, IMP::Float k, IMP::Float threshold, IMP::Float limit) -> TruncatedHarmonicBound
16025  __init__(TruncatedHarmonicBound self, IMP::Float center, IMP::Float k, IMP::Float threshold) -> TruncatedHarmonicBound
16026  """
16027  _IMP_core.TruncatedHarmonicBound_swiginit(self, _IMP_core.new_TruncatedHarmonicBound(*args))
16028 
16029  def get_version_info(self):
16030  r"""get_version_info(TruncatedHarmonicBound self) -> VersionInfo"""
16031  return _IMP_core.TruncatedHarmonicBound_get_version_info(self)
16032  __swig_destroy__ = _IMP_core.delete_TruncatedHarmonicBound
16033 
16034  def __str__(self):
16035  r"""__str__(TruncatedHarmonicBound self) -> std::string"""
16036  return _IMP_core.TruncatedHarmonicBound___str__(self)
16037 
16038  def __repr__(self):
16039  r"""__repr__(TruncatedHarmonicBound self) -> std::string"""
16040  return _IMP_core.TruncatedHarmonicBound___repr__(self)
16041 
16042  @staticmethod
16043  def get_from(o):
16044  return _object_cast_to_TruncatedHarmonic(o)
16045 
16046 
16047 # Register TruncatedHarmonicBound in _IMP_core:
16048 _IMP_core.TruncatedHarmonicBound_swigregister(TruncatedHarmonicBound)
16049 class ParticleType(IMP._Value):
16050  r"""Proxy of C++ IMP::Key< 34897493 > class."""
16051 
16052  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16053 
16054  def __init__(self, *args):
16055  r"""
16056  __init__(ParticleType self) -> ParticleType
16057  __init__(ParticleType self, std::string const & c, bool is_implicit_add_permitted=True) -> ParticleType
16058  __init__(ParticleType self, unsigned int i) -> ParticleType
16059  """
16060  _IMP_core.ParticleType_swiginit(self, _IMP_core.new_ParticleType(*args))
16061 
16062  @staticmethod
16063  def add_key(sc):
16064  r"""add_key(std::string sc) -> unsigned int"""
16065  return _IMP_core.ParticleType_add_key(sc)
16066 
16067  @staticmethod
16068  def get_key_exists(sc):
16069  r"""get_key_exists(std::string sc) -> bool"""
16070  return _IMP_core.ParticleType_get_key_exists(sc)
16071 
16072  def get_string(self):
16073  r"""get_string(ParticleType self) -> std::string const"""
16074  return _IMP_core.ParticleType_get_string(self)
16075 
16076  def __cmp__(self, o):
16077  r"""__cmp__(ParticleType self, ParticleType o) -> int"""
16078  return _IMP_core.ParticleType___cmp__(self, o)
16079 
16080  def __eq__(self, o):
16081  r"""__eq__(ParticleType self, ParticleType o) -> bool"""
16082  return _IMP_core.ParticleType___eq__(self, o)
16083 
16084  def __ne__(self, o):
16085  r"""__ne__(ParticleType self, ParticleType o) -> bool"""
16086  return _IMP_core.ParticleType___ne__(self, o)
16087 
16088  def __lt__(self, o):
16089  r"""__lt__(ParticleType self, ParticleType o) -> bool"""
16090  return _IMP_core.ParticleType___lt__(self, o)
16091 
16092  def __gt__(self, o):
16093  r"""__gt__(ParticleType self, ParticleType o) -> bool"""
16094  return _IMP_core.ParticleType___gt__(self, o)
16095 
16096  def __ge__(self, o):
16097  r"""__ge__(ParticleType self, ParticleType o) -> bool"""
16098  return _IMP_core.ParticleType___ge__(self, o)
16099 
16100  def __le__(self, o):
16101  r"""__le__(ParticleType self, ParticleType o) -> bool"""
16102  return _IMP_core.ParticleType___le__(self, o)
16103 
16104  def __hash__(self):
16105  r"""__hash__(ParticleType self) -> std::size_t"""
16106  return _IMP_core.ParticleType___hash__(self)
16107 
16108  def show(self, *args):
16109  r"""show(ParticleType self, _ostream out=std::cout)"""
16110  return _IMP_core.ParticleType_show(self, *args)
16111 
16112  @staticmethod
16113  def add_alias(old_key, new_name):
16114  r"""add_alias(ParticleType old_key, std::string new_name) -> ParticleType"""
16115  return _IMP_core.ParticleType_add_alias(old_key, new_name)
16116 
16117  @staticmethod
16118  def get_number_of_keys():
16119  r"""get_number_of_keys() -> unsigned int"""
16120  return _IMP_core.ParticleType_get_number_of_keys()
16121 
16122  def get_index(self):
16123  r"""get_index(ParticleType self) -> unsigned int"""
16124  return _IMP_core.ParticleType_get_index(self)
16125 
16126  @staticmethod
16127  def show_all(out):
16128  r"""show_all(_ostream out)"""
16129  return _IMP_core.ParticleType_show_all(out)
16130 
16131  @staticmethod
16132  def get_all_strings():
16133  r"""get_all_strings() -> IMP::Vector< std::string >"""
16134  return _IMP_core.ParticleType_get_all_strings()
16135 
16136  @staticmethod
16137  def get_number_unique():
16138  r"""get_number_unique() -> unsigned int"""
16139  return _IMP_core.ParticleType_get_number_unique()
16140 
16141  def __str__(self):
16142  r"""__str__(ParticleType self) -> std::string"""
16143  return _IMP_core.ParticleType___str__(self)
16144 
16145  def __repr__(self):
16146  r"""__repr__(ParticleType self) -> std::string"""
16147  return _IMP_core.ParticleType___repr__(self)
16148  __swig_destroy__ = _IMP_core.delete_ParticleType
16149 
16150 # Register ParticleType in _IMP_core:
16151 _IMP_core.ParticleType_swigregister(ParticleType)
16153  r"""Proxy of C++ IMP::core::GenericAttributeSingletonScore< UnaryFunction > class."""
16154 
16155  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16156  __repr__ = _swig_repr
16157 
16158  def __init__(self, f, k):
16159  r"""__init__(AttributeSingletonScore self, UnaryFunction f, FloatKey k) -> AttributeSingletonScore"""
16160  _IMP_core.AttributeSingletonScore_swiginit(self, _IMP_core.new_AttributeSingletonScore(f, k))
16161 
16162  def do_get_inputs(self, m, pis):
16163  r"""do_get_inputs(AttributeSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
16164  return _IMP_core.AttributeSingletonScore_do_get_inputs(self, m, pis)
16165 
16166  def get_unary_function(self):
16167  r"""get_unary_function(AttributeSingletonScore self) -> UnaryFunction"""
16168  return _IMP_core.AttributeSingletonScore_get_unary_function(self)
16169 
16170  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
16171  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"""
16172  return _IMP_core.AttributeSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
16173 
16174  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
16175  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"""
16176  return _IMP_core.AttributeSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
16177 
16178  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
16179  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"""
16180  return _IMP_core.AttributeSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
16181 
16182  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
16183  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"""
16184  return _IMP_core.AttributeSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
16185 
16186  def get_version_info(self):
16187  r"""get_version_info(AttributeSingletonScore self) -> VersionInfo"""
16188  return _IMP_core.AttributeSingletonScore_get_version_info(self)
16189  __swig_destroy__ = _IMP_core.delete_AttributeSingletonScore
16190 
16191  @staticmethod
16192  def get_from(o):
16193  return _object_cast_to_AttributeSingletonScore(o)
16194 
16195 
16196 # Register AttributeSingletonScore in _IMP_core:
16197 _IMP_core.AttributeSingletonScore_swigregister(AttributeSingletonScore)
16198 
16200  r"""create_generic_attribute_singleton_score(UnaryFunction uf, FloatKey k) -> AttributeSingletonScore"""
16201  return _IMP_core.create_generic_attribute_singleton_score(uf, k)
16203  r"""Proxy of C++ IMP::core::GenericBoundingBox3DSingletonScore< UnaryFunction > class."""
16204 
16205  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16206  __repr__ = _swig_repr
16207 
16208  def __init__(self, f, bb):
16209  r"""__init__(BoundingBox3DSingletonScore self, UnaryFunction f, BoundingBox3D bb) -> BoundingBox3DSingletonScore"""
16210  _IMP_core.BoundingBox3DSingletonScore_swiginit(self, _IMP_core.new_BoundingBox3DSingletonScore(f, bb))
16211 
16212  def get_unary_function(self):
16213  r"""get_unary_function(BoundingBox3DSingletonScore self) -> UnaryFunction"""
16214  return _IMP_core.BoundingBox3DSingletonScore_get_unary_function(self)
16215 
16216  def get_bounding_box(self):
16217  r"""get_bounding_box(BoundingBox3DSingletonScore self) -> BoundingBox3D"""
16218  return _IMP_core.BoundingBox3DSingletonScore_get_bounding_box(self)
16219 
16220  def do_get_inputs(self, m, pis):
16221  r"""do_get_inputs(BoundingBox3DSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
16222  return _IMP_core.BoundingBox3DSingletonScore_do_get_inputs(self, m, pis)
16223 
16224  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
16225  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"""
16226  return _IMP_core.BoundingBox3DSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
16227 
16228  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
16229  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"""
16230  return _IMP_core.BoundingBox3DSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
16231 
16232  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
16233  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"""
16234  return _IMP_core.BoundingBox3DSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
16235 
16236  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
16237  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"""
16238  return _IMP_core.BoundingBox3DSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
16239 
16240  def get_version_info(self):
16241  r"""get_version_info(BoundingBox3DSingletonScore self) -> VersionInfo"""
16242  return _IMP_core.BoundingBox3DSingletonScore_get_version_info(self)
16243  __swig_destroy__ = _IMP_core.delete_BoundingBox3DSingletonScore
16244 
16245  @staticmethod
16246  def get_from(o):
16247  return _object_cast_to_BoundingBox3DSingletonScore(o)
16248 
16249 
16250  def _get_jax(self):
16251  import jax.numpy as jnp
16252  import functools
16253  def score(jm, indexes, box_min, box_max, uf):
16254  xyzs = jm['xyz'][indexes]
16255  # This calculates the distance and the score for every point,
16256  # even those inside the box. IMP just returns zero for points
16257  # inside the box, skipping the distance calculation.
16258  # The implementation here is *probably* faster on a GPU since
16259  # we reduce the use of conditionals, and JAX will likely skip
16260  # the sqrt if uf is a harmonic, but this should be benchmarked.
16261  drs = jnp.linalg.norm(
16262  xyzs - jnp.clip(xyzs, box_min, box_max), axis=1)
16263  return uf(drs)
16264  uf = self.get_unary_function().get_derived_object()
16265  bb = self.get_bounding_box()
16266  f = functools.partial(score, box_min=jnp.asarray(bb.get_corner(0)),
16267  box_max=jnp.asarray(bb.get_corner(1)),
16268  uf=uf._get_jax())
16269  return self._wrap_jax(f)
16270 
16271 
16272 # Register BoundingBox3DSingletonScore in _IMP_core:
16273 _IMP_core.BoundingBox3DSingletonScore_swigregister(BoundingBox3DSingletonScore)
16274 
16275 def create_bounding_box_3d_singleton_score(f, bb):
16276  r"""create_bounding_box_3d_singleton_score(UnaryFunction f, BoundingBox3D bb) -> BoundingBox3DSingletonScore"""
16277  return _IMP_core.create_bounding_box_3d_singleton_score(f, bb)
16279  r"""Proxy of C++ IMP::core::GenericBoundingSphere3DSingletonScore< UnaryFunction > class."""
16280 
16281  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16282  __repr__ = _swig_repr
16283 
16284  def __init__(self, f, sphere):
16285  r"""__init__(BoundingSphere3DSingletonScore self, UnaryFunction f, Sphere3D sphere) -> BoundingSphere3DSingletonScore"""
16286  _IMP_core.BoundingSphere3DSingletonScore_swiginit(self, _IMP_core.new_BoundingSphere3DSingletonScore(f, sphere))
16287 
16288  def do_get_inputs(self, m, pis):
16289  r"""do_get_inputs(BoundingSphere3DSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
16290  return _IMP_core.BoundingSphere3DSingletonScore_do_get_inputs(self, m, pis)
16291 
16292  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
16293  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"""
16294  return _IMP_core.BoundingSphere3DSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
16295 
16296  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
16297  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"""
16298  return _IMP_core.BoundingSphere3DSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
16299 
16300  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
16301  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"""
16302  return _IMP_core.BoundingSphere3DSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
16303 
16304  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
16305  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"""
16306  return _IMP_core.BoundingSphere3DSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
16307 
16308  def get_version_info(self):
16309  r"""get_version_info(BoundingSphere3DSingletonScore self) -> VersionInfo"""
16310  return _IMP_core.BoundingSphere3DSingletonScore_get_version_info(self)
16311  __swig_destroy__ = _IMP_core.delete_BoundingSphere3DSingletonScore
16312 
16313  @staticmethod
16314  def get_from(o):
16315  return _object_cast_to_BoundingSphere3DSingletonScore(o)
16316 
16317 
16318 # Register BoundingSphere3DSingletonScore in _IMP_core:
16319 _IMP_core.BoundingSphere3DSingletonScore_swigregister(BoundingSphere3DSingletonScore)
16320 
16321 def create_bounding_sphere_3d_singleton_score(f, sphere):
16322  r"""create_bounding_sphere_3d_singleton_score(UnaryFunction f, Sphere3D sphere) -> BoundingSphere3DSingletonScore"""
16323  return _IMP_core.create_bounding_sphere_3d_singleton_score(f, sphere)
16325  r"""Proxy of C++ IMP::core::GenericDistanceToSingletonScore< UnaryFunction > class."""
16326 
16327  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
16328  __repr__ = _swig_repr
16329 
16330  def __init__(self, *args):
16331  r"""
16332  __init__(DistanceToSingletonScore self, UnaryFunction f, Vector3D pt) -> DistanceToSingletonScore
16333  __init__(DistanceToSingletonScore self) -> DistanceToSingletonScore
16334  """
16335  _IMP_core.DistanceToSingletonScore_swiginit(self, _IMP_core.new_DistanceToSingletonScore(*args))
16336 
16337  def do_get_inputs(self, m, pis):
16338  r"""do_get_inputs(DistanceToSingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
16339  return _IMP_core.DistanceToSingletonScore_do_get_inputs(self, m, pis)
16340 
16341  def get_unary_function(self):
16342  r"""get_unary_function(DistanceToSingletonScore self) -> UnaryFunction"""
16343  return _IMP_core.DistanceToSingletonScore_get_unary_function(self)
16344 
16345  def get_point(self):
16346  r"""get_point(DistanceToSingletonScore self) -> Vector3D"""
16347  return _IMP_core.DistanceToSingletonScore_get_point(self)
16348 
16349  def evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked=False):
16350  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"""
16351  return _IMP_core.DistanceToSingletonScore_evaluate_indexes(self, m, p, da, lower_bound, upper_bound, all_indexes_checked)
16352 
16353  def evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked=False):
16354  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"""
16355  return _IMP_core.DistanceToSingletonScore_evaluate_indexes_scores(self, m, p, da, lower_bound, upper_bound, score, all_indexes_checked)
16356 
16357  def evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked=False):
16358  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"""
16359  return _IMP_core.DistanceToSingletonScore_evaluate_indexes_delta(self, m, p, da, indexes, score, all_indexes_checked)
16360 
16361  def evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked=False):
16362  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"""
16363  return _IMP_core.DistanceToSingletonScore_evaluate_if_good_indexes(self, m, p, da, max, lower_bound, upper_bound, all_indexes_checked)
16364 
16365  def get_version_info(self):
16366  r"""get_version_info(DistanceToSingletonScore self) -> VersionInfo"""
16367  return _IMP_core.DistanceToSingletonScore_get_version_info(self)
16368  __swig_destroy__ = _IMP_core.delete_DistanceToSingletonScore
16369 
16370  @staticmethod
16371  def get_from(o):
16372  return _object_cast_to_DistanceToSingletonScore(o)
16373 
16374 
16375  def _get_as_binary(self):
16376  r"""_get_as_binary(DistanceToSingletonScore self) -> PyObject *"""
16377  return _IMP_core.DistanceToSingletonScore__get_as_binary(self)
16378 
16379  def _set_from_binary(self, p):
16380  r"""_set_from_binary(DistanceToSingletonScore self, PyObject * p)"""
16381  return _IMP_core.DistanceToSingletonScore__set_from_binary(self, p)
16382 
16383  def __getstate__(self):
16384  p = self._get_as_binary()
16385  if len(self.__dict__) > 1:
16386  d = self.__dict__.copy()
16387  del d['this']
16388  p = (d, p)
16389  return p
16390 
16391  def __setstate__(self, p):
16392  if not hasattr(self, 'this'):
16393  self.__init__()
16394  if isinstance(p, tuple):
16395  d, p = p
16396  self.__dict__.update(d)
16397  return self._set_from_binary(p)
16398 
16399 
16400  def _get_jax(self):
16401  import jax.numpy as jnp
16402  import functools
16403  def score(jm, indexes, point, uf):
16404  xyzs = jm['xyz'][indexes]
16405  drs = jnp.linalg.norm(xyzs - point, axis=1)
16406  return uf(drs)
16407  uf = self.get_unary_function().get_derived_object()
16408  f = functools.partial(score, point=jnp.array(self.get_point()),
16409  uf=uf._get_jax())
16410  return self._wrap_jax(f)
16411 
16412 
16413 # Register DistanceToSingletonScore in _IMP_core:
16414 _IMP_core.DistanceToSingletonScore_swigregister(DistanceToSingletonScore)
16415 
16416 def create_distance_to_singleton_score(f, pt):
16417  r"""create_distance_to_singleton_score(UnaryFunction f, Vector3D pt) -> DistanceToSingletonScore"""
16418  return _IMP_core.create_distance_to_singleton_score(f, pt)
16419 
16420 class SphereDistancePairScore(_SphereDistancePairScore.__bases__[0]):
16421  def __init__(self, uf):
16422  if isinstance(uf, HarmonicUpperBound):
16423  p = HarmonicUpperBoundSphereDistancePairScore(
16424  uf.get_mean(), uf.get_k())
16425  elif isinstance(uf, HarmonicLowerBound):
16426  if uf.get_mean() == 0.0:
16427  p = SoftSpherePairScore(uf.get_k())
16428  else:
16429  p = _SphereDistancePairScore(uf)
16430  elif isinstance(uf, Harmonic):
16431  p = HarmonicSphereDistancePairScore(
16432  uf.get_mean(), uf.get_k())
16433  else:
16434  p = _SphereDistancePairScore(uf)
16435  self.__dict__['_proxied'] = p
16436  def __getattr__(self, key):
16437  return getattr(self._proxied, key)
16438  def __setattr__(self, key, val):
16439  return setattr(self._proxied, key, val)
16440 
16441  def __getstate__(self):
16442  return self.__dict__['_proxied']
16443 
16444  def __setstate__(self, p):
16445  self.__dict__['_proxied'] = p
16446 
16447  @staticmethod
16448  def get_from(o):
16449  try:
16450  p = HarmonicUpperBoundSphereDistancePairScore.get_from(o)
16451  except ValueError:
16452  try:
16453  p = HarmonicSphereDistancePairScore.get_from(o)
16454  except ValueError:
16455  try:
16456  p = SoftSpherePairScore.get_from(o)
16457  except ValueError:
16458  p = _SphereDistancePairScore.get_from(o)
16459  obj = object.__new__(SphereDistancePairScore)
16460  obj.__dict__['_proxied'] = p
16461  return obj
16462 
16463 
16464 
16465 def get_all_provenance(p, types=[StructureProvenance, SampleProvenance,
16466  CombineProvenance, FilterProvenance,
16467  ClusterProvenance, ScriptProvenance,
16468  SoftwareProvenance]):
16469  """Yield all provenance decorators of the given types for the particle.
16470  By default, all provenance types are returned. Provenance is returned
16471  in order, most recent first. If the particle has no provenance
16472  information, an empty generator is returned."""
16473  if Provenanced.get_is_setup(p):
16474  prov = Provenanced(p).get_provenance()
16475  while prov:
16476  for c in types:
16477  if c.get_is_setup(prov):
16478  yield c(prov)
16479  prov = prov.get_previous()
16480 
16482  """Tag the given particle with the current Python script.
16483  This is a noop if the particle is already so tagged."""
16484  main = sys.modules['__main__']
16485 # Can't do anything if running from an interactive interpreter
16486  if not hasattr(main, '__file__'):
16487  return
16488  f = IMP.get_absolute_path(main.__file__)
16489  for prov in get_all_provenance(p, types=[ScriptProvenance]):
16490  if prov.get_filename() == f:
16491  return
16492  m = p.get_model()
16493  provp = IMP.Particle(m)
16494  provp.set_name('script')
16495  prov = ScriptProvenance.setup_particle(provp, f)
16496  add_provenance(m, p, prov)
16497 
16498 def add_software_provenance(p, name, version, location):
16499  """Tag the given particle with the software used to create it.
16500  This is a noop if the particle is already so tagged."""
16501  for prov in get_all_provenance(p, types=[SoftwareProvenance]):
16502  if prov.get_software_name() == name and prov.get_version() == version \
16503  and prov.get_location() == location:
16504  return
16505  m = p.get_model()
16506  provp = IMP.Particle(m)
16507  provp.set_name('software')
16508  prov = SoftwareProvenance.setup_particle(provp, name, version, location)
16509  add_provenance(m, p, prov)
16510 
16512  """Tag the given particle as being created by the current version of IMP."""
16513  add_software_provenance(p, name="Integrative Modeling Platform (IMP)",
16514  version=IMP.get_module_version(),
16515  location="https://integrativemodeling.org")
16516 
16517 
16518 def get_module_name():
16519  r"""get_module_name() -> std::string const"""
16520  return _IMP_core.get_module_name()
16521 
16522 def get_module_version():
16523  r"""get_module_version() -> std::string const"""
16524  return _IMP_core.get_module_version()
16525 
16526 def get_example_path(fname):
16527  r"""get_example_path(std::string fname) -> std::string"""
16528  return _IMP_core.get_example_path(fname)
16529 
16530 def get_data_path(fname):
16531  r"""get_data_path(std::string fname) -> std::string"""
16532  return _IMP_core.get_data_path(fname)
16533 
16534 from . import _version_check
16535 _version_check.check_version(get_module_version())
16536 __version__ = get_module_version()
16537 
16538 
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