IMP logo
IMP Reference Guide  develop.345e71cb9a,2026/08/10
The Integrative Modeling Platform
kinematics/__init__.py
1 # This file was automatically generated by SWIG (https://www.swig.org).
2 # Version 4.5.0
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 import typing
15 import _IMP_kinematics
16 
17 import builtins as __builtin__
18 
19 def _swig_repr(self):
20  try:
21  strthis = "proxy of " + self.this.__repr__()
22  except __builtin__.Exception:
23  strthis = ""
24  return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
25 
26 
27 def _swig_setattr_nondynamic_instance_variable(set):
28  def set_instance_attr(self, name, value):
29  if name == "this":
30  set(self, name, value)
31  elif name == "thisown":
32  self.this.own(value)
33  elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
34  set(self, name, value)
35  else:
36  raise AttributeError("You cannot add instance attributes to %s" % self)
37  return set_instance_attr
38 
39 
40 def _swig_setattr_nondynamic_class_variable(set):
41  def set_class_attr(cls, name, value):
42  if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
43  set(cls, name, value)
44  else:
45  raise AttributeError("You cannot add class attributes to %s" % cls)
46  return set_class_attr
47 
48 
49 class _SwigNonDynamicMeta(type):
50  """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
51  __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)
52 
53 
54 import weakref
55 
56 class IMP_KINEMATICS_SwigPyIterator(object):
57  r"""Proxy of C++ swig::IMP_KINEMATICS_SwigPyIterator class."""
58 
59  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
60 
61  def __init__(self, *args, **kwargs):
62  raise AttributeError("No constructor defined - class is abstract")
63  __repr__ = _swig_repr
64  __swig_destroy__ = _IMP_kinematics.delete_IMP_KINEMATICS_SwigPyIterator
65 
66  def value(self):
67  r"""value(IMP_KINEMATICS_SwigPyIterator self) -> PyObject *"""
68  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator_value(self)
69 
70  def incr(self, n=1):
71  r"""incr(IMP_KINEMATICS_SwigPyIterator self, size_t n=1) -> IMP_KINEMATICS_SwigPyIterator"""
72  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator_incr(self, n)
73 
74  def decr(self, n=1):
75  r"""decr(IMP_KINEMATICS_SwigPyIterator self, size_t n=1) -> IMP_KINEMATICS_SwigPyIterator"""
76  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator_decr(self, n)
77 
78  def distance(self, x):
79  r"""distance(IMP_KINEMATICS_SwigPyIterator self, IMP_KINEMATICS_SwigPyIterator x) -> ptrdiff_t"""
80  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator_distance(self, x)
81 
82  def equal(self, x):
83  r"""equal(IMP_KINEMATICS_SwigPyIterator self, IMP_KINEMATICS_SwigPyIterator x) -> bool"""
84  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator_equal(self, x)
85 
86  def copy(self):
87  r"""copy(IMP_KINEMATICS_SwigPyIterator self) -> IMP_KINEMATICS_SwigPyIterator"""
88  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator_copy(self)
89 
90  def __next__(self):
91  r"""__next__(IMP_KINEMATICS_SwigPyIterator self) -> PyObject *"""
92  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator___next__(self)
93 
94  def previous(self):
95  r"""previous(IMP_KINEMATICS_SwigPyIterator self) -> PyObject *"""
96  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator_previous(self)
97 
98  def advance(self, n):
99  r"""advance(IMP_KINEMATICS_SwigPyIterator self, ptrdiff_t n) -> IMP_KINEMATICS_SwigPyIterator"""
100  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator_advance(self, n)
101 
102  def __eq__(self, x):
103  r"""__eq__(IMP_KINEMATICS_SwigPyIterator self, IMP_KINEMATICS_SwigPyIterator x) -> bool"""
104  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator___eq__(self, x)
105 
106  def __ne__(self, x):
107  r"""__ne__(IMP_KINEMATICS_SwigPyIterator self, IMP_KINEMATICS_SwigPyIterator x) -> bool"""
108  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator___ne__(self, x)
109 
110  def __iadd__(self, n):
111  r"""__iadd__(IMP_KINEMATICS_SwigPyIterator self, ptrdiff_t n) -> IMP_KINEMATICS_SwigPyIterator"""
112  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator___iadd__(self, n)
113 
114  def __isub__(self, n):
115  r"""__isub__(IMP_KINEMATICS_SwigPyIterator self, ptrdiff_t n) -> IMP_KINEMATICS_SwigPyIterator"""
116  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator___isub__(self, n)
117 
118  def __add__(self, n):
119  r"""__add__(IMP_KINEMATICS_SwigPyIterator self, ptrdiff_t n) -> IMP_KINEMATICS_SwigPyIterator"""
120  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator___add__(self, n)
121 
122  def __sub__(self, *args):
123  r"""
124  __sub__(IMP_KINEMATICS_SwigPyIterator self, ptrdiff_t n) -> IMP_KINEMATICS_SwigPyIterator
125  __sub__(IMP_KINEMATICS_SwigPyIterator self, IMP_KINEMATICS_SwigPyIterator x) -> ptrdiff_t
126  """
127  return _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator___sub__(self, *args)
128  def __iter__(self):
129  return self
130 
131 # Register IMP_KINEMATICS_SwigPyIterator in _IMP_kinematics:
132 _IMP_kinematics.IMP_KINEMATICS_SwigPyIterator_swigregister(IMP_KINEMATICS_SwigPyIterator)
133 
134 _value_types=[]
135 _object_types=[]
136 _raii_types=[]
137 _plural_types=[]
138 
139 IMP_DEBUG = _IMP_kinematics.IMP_DEBUG
140 
141 IMP_RELEASE = _IMP_kinematics.IMP_RELEASE
142 
143 IMP_SILENT = _IMP_kinematics.IMP_SILENT
144 
145 IMP_PROGRESS = _IMP_kinematics.IMP_PROGRESS
146 
147 IMP_TERSE = _IMP_kinematics.IMP_TERSE
148 
149 IMP_VERBOSE = _IMP_kinematics.IMP_VERBOSE
150 
151 IMP_MEMORY = _IMP_kinematics.IMP_MEMORY
152 
153 IMP_NONE = _IMP_kinematics.IMP_NONE
154 
155 IMP_USAGE = _IMP_kinematics.IMP_USAGE
156 
157 IMP_INTERNAL = _IMP_kinematics.IMP_INTERNAL
158 
159 IMP_KERNEL_HAS_LOG4CXX = _IMP_kinematics.IMP_KERNEL_HAS_LOG4CXX
160 
161 IMP_COMPILER_HAS_CEREAL_RAW_POINTER = _IMP_kinematics.IMP_COMPILER_HAS_CEREAL_RAW_POINTER
162 
163 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_kinematics.IMP_COMPILER_HAS_DEBUG_VECTOR
164 
165 IMP_COMPILER_HAS_RANDOM_SHUFFLE = _IMP_kinematics.IMP_COMPILER_HAS_RANDOM_SHUFFLE
166 
167 IMP_COMPILER_HAS_THREE_WAY = _IMP_kinematics.IMP_COMPILER_HAS_THREE_WAY
168 
169 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_kinematics.IMP_KERNEL_HAS_BOOST_RANDOM
170 
171 IMP_KERNEL_HAS_NUMPY = _IMP_kinematics.IMP_KERNEL_HAS_NUMPY
172 
173 IMP_KERNEL_HAS_BOOST_SYSTEM = _IMP_kinematics.IMP_KERNEL_HAS_BOOST_SYSTEM
174 
175 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_kinematics.IMP_KERNEL_HAS_GPERFTOOLS
176 
177 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_kinematics.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
178 
179 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_kinematics.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
180 
181 IMPKERNEL_SHOW_WARNINGS = _IMP_kinematics.IMPKERNEL_SHOW_WARNINGS
182 
183 
184 import sys
185 class _DirectorObjects:
186  """@internal Simple class to keep references to director objects
187  to prevent premature deletion."""
188  def __init__(self):
189  self._objects = []
190  def register(self, obj):
191  """Take a reference to a director object; will only work for
192  refcounted C++ classes"""
193  if hasattr(obj, 'get_ref_count'):
194  self._objects.append(obj)
195  def cleanup(self):
196  """Only drop our reference and allow cleanup by Python if no other
197  Python references exist (we hold 3 references: one in self._objects,
198  one in x, and one in the argument list for getrefcount) *and* no
199  other C++ references exist (the Python object always holds one)"""
200  objs = [x for x in self._objects if sys.getrefcount(x) > 3 \
201  or x.get_ref_count() > 1]
202 # Do in two steps so the references are kept until the end of the
203 # function (deleting references may trigger a fresh call to this method)
204  self._objects = objs
205  def get_object_count(self):
206  """Get number of director objects (useful for testing only)"""
207  return len(self._objects)
208 _director_objects = _DirectorObjects()
209 
210 class _ostream(object):
211  r"""Proxy of C++ std::ostream class."""
212 
213  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
214 
215  def __init__(self, *args, **kwargs):
216  raise AttributeError("No constructor defined")
217  __repr__ = _swig_repr
218 
219  def write(self, osa_buf):
220  r"""write(_ostream self, char const * osa_buf)"""
221  return _IMP_kinematics._ostream_write(self, osa_buf)
222 
223 # Register _ostream in _IMP_kinematics:
224 _IMP_kinematics._ostream_swigregister(_ostream)
225 IMP_C_OPEN_BINARY = _IMP_kinematics.IMP_C_OPEN_BINARY
226 
227 import IMP
228 IMP_CGAL_HAS_BOOST_FILESYSTEM = _IMP_kinematics.IMP_CGAL_HAS_BOOST_FILESYSTEM
229 
230 IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS = _IMP_kinematics.IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS
231 
232 IMP_CGAL_HAS_BOOST_RANDOM = _IMP_kinematics.IMP_CGAL_HAS_BOOST_RANDOM
233 
234 IMP_CGAL_HAS_NUMPY = _IMP_kinematics.IMP_CGAL_HAS_NUMPY
235 
236 IMPCGAL_SHOW_WARNINGS = _IMP_kinematics.IMPCGAL_SHOW_WARNINGS
237 
238 import IMP.cgal
239 IMP_ALGEBRA_HAS_IMP_CGAL = _IMP_kinematics.IMP_ALGEBRA_HAS_IMP_CGAL
240 
241 IMP_ALGEBRA_HAS_BOOST_FILESYSTEM = _IMP_kinematics.IMP_ALGEBRA_HAS_BOOST_FILESYSTEM
242 
243 IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS = _IMP_kinematics.IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS
244 
245 IMP_ALGEBRA_HAS_BOOST_RANDOM = _IMP_kinematics.IMP_ALGEBRA_HAS_BOOST_RANDOM
246 
247 IMP_ALGEBRA_HAS_CGAL = _IMP_kinematics.IMP_ALGEBRA_HAS_CGAL
248 
249 IMP_ALGEBRA_HAS_NUMPY = _IMP_kinematics.IMP_ALGEBRA_HAS_NUMPY
250 
251 IMP_ALGEBRA_HAS_ANN = _IMP_kinematics.IMP_ALGEBRA_HAS_ANN
252 
253 IMPALGEBRA_SHOW_WARNINGS = _IMP_kinematics.IMPALGEBRA_SHOW_WARNINGS
254 
255 import IMP.algebra
256 IMP_DISPLAY_HAS_IMP_CGAL = _IMP_kinematics.IMP_DISPLAY_HAS_IMP_CGAL
257 
258 IMP_DISPLAY_HAS_BOOST_FILESYSTEM = _IMP_kinematics.IMP_DISPLAY_HAS_BOOST_FILESYSTEM
259 
260 IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS = _IMP_kinematics.IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS
261 
262 IMP_DISPLAY_HAS_BOOST_RANDOM = _IMP_kinematics.IMP_DISPLAY_HAS_BOOST_RANDOM
263 
264 IMP_DISPLAY_HAS_CGAL = _IMP_kinematics.IMP_DISPLAY_HAS_CGAL
265 
266 IMP_DISPLAY_HAS_NUMPY = _IMP_kinematics.IMP_DISPLAY_HAS_NUMPY
267 
268 IMPDISPLAY_SHOW_WARNINGS = _IMP_kinematics.IMPDISPLAY_SHOW_WARNINGS
269 
270 import IMP.display
271 IMP_SCORE_FUNCTOR_HAS_IMP_CGAL = _IMP_kinematics.IMP_SCORE_FUNCTOR_HAS_IMP_CGAL
272 
273 IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM = _IMP_kinematics.IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM
274 
275 IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS = _IMP_kinematics.IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS
276 
277 IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM = _IMP_kinematics.IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM
278 
279 IMP_SCORE_FUNCTOR_HAS_CGAL = _IMP_kinematics.IMP_SCORE_FUNCTOR_HAS_CGAL
280 
281 IMP_SCORE_FUNCTOR_HAS_HDF5 = _IMP_kinematics.IMP_SCORE_FUNCTOR_HAS_HDF5
282 
283 IMP_SCORE_FUNCTOR_HAS_NUMPY = _IMP_kinematics.IMP_SCORE_FUNCTOR_HAS_NUMPY
284 
285 IMPSCOREFUNCTOR_SHOW_WARNINGS = _IMP_kinematics.IMPSCOREFUNCTOR_SHOW_WARNINGS
286 
287 import IMP.score_functor
288 IMP_CORE_HAS_IMP_CGAL = _IMP_kinematics.IMP_CORE_HAS_IMP_CGAL
289 
290 IMP_CORE_HAS_IMP_KERNEL = _IMP_kinematics.IMP_CORE_HAS_IMP_KERNEL
291 
292 IMP_CORE_HAS_BOOST_FILESYSTEM = _IMP_kinematics.IMP_CORE_HAS_BOOST_FILESYSTEM
293 
294 IMP_CORE_HAS_BOOST_PROGRAMOPTIONS = _IMP_kinematics.IMP_CORE_HAS_BOOST_PROGRAMOPTIONS
295 
296 IMP_CORE_HAS_BOOST_RANDOM = _IMP_kinematics.IMP_CORE_HAS_BOOST_RANDOM
297 
298 IMP_CORE_HAS_CGAL = _IMP_kinematics.IMP_CORE_HAS_CGAL
299 
300 IMP_CORE_HAS_HDF5 = _IMP_kinematics.IMP_CORE_HAS_HDF5
301 
302 IMP_CORE_HAS_NUMPY = _IMP_kinematics.IMP_CORE_HAS_NUMPY
303 
304 IMPCORE_SHOW_WARNINGS = _IMP_kinematics.IMPCORE_SHOW_WARNINGS
305 
306 import IMP.core
307 IMP_CONTAINER_HAS_IMP_ALGEBRA = _IMP_kinematics.IMP_CONTAINER_HAS_IMP_ALGEBRA
308 
309 IMP_CONTAINER_HAS_IMP_CGAL = _IMP_kinematics.IMP_CONTAINER_HAS_IMP_CGAL
310 
311 IMP_CONTAINER_HAS_IMP_DISPLAY = _IMP_kinematics.IMP_CONTAINER_HAS_IMP_DISPLAY
312 
313 IMP_CONTAINER_HAS_IMP_KERNEL = _IMP_kinematics.IMP_CONTAINER_HAS_IMP_KERNEL
314 
315 IMP_CONTAINER_HAS_IMP_SCORE_FUNCTOR = _IMP_kinematics.IMP_CONTAINER_HAS_IMP_SCORE_FUNCTOR
316 
317 IMP_CONTAINER_HAS_BOOST_FILESYSTEM = _IMP_kinematics.IMP_CONTAINER_HAS_BOOST_FILESYSTEM
318 
319 IMP_CONTAINER_HAS_BOOST_PROGRAMOPTIONS = _IMP_kinematics.IMP_CONTAINER_HAS_BOOST_PROGRAMOPTIONS
320 
321 IMP_CONTAINER_HAS_BOOST_RANDOM = _IMP_kinematics.IMP_CONTAINER_HAS_BOOST_RANDOM
322 
323 IMP_CONTAINER_HAS_CGAL = _IMP_kinematics.IMP_CONTAINER_HAS_CGAL
324 
325 IMP_CONTAINER_HAS_HDF5 = _IMP_kinematics.IMP_CONTAINER_HAS_HDF5
326 
327 IMP_CONTAINER_HAS_NUMPY = _IMP_kinematics.IMP_CONTAINER_HAS_NUMPY
328 
329 IMP_CONTAINER_HAS_PYTHON_IHM = _IMP_kinematics.IMP_CONTAINER_HAS_PYTHON_IHM
330 
331 IMP_CONTAINER_HAS_GOOGLE_DENSE_HASH_MAP = _IMP_kinematics.IMP_CONTAINER_HAS_GOOGLE_DENSE_HASH_MAP
332 
333 IMP_CONTAINER_HAS_ROBIN_MAP = _IMP_kinematics.IMP_CONTAINER_HAS_ROBIN_MAP
334 
335 IMPCONTAINER_SHOW_WARNINGS = _IMP_kinematics.IMPCONTAINER_SHOW_WARNINGS
336 
337 import IMP.container
338 IMP_ATOM_HAS_IMP_CGAL = _IMP_kinematics.IMP_ATOM_HAS_IMP_CGAL
339 
340 IMP_ATOM_HAS_IMP_KERNEL = _IMP_kinematics.IMP_ATOM_HAS_IMP_KERNEL
341 
342 IMP_ATOM_HAS_IMP_SCORE_FUNCTOR = _IMP_kinematics.IMP_ATOM_HAS_IMP_SCORE_FUNCTOR
343 
344 IMP_ATOM_HAS_BOOST_PROGRAMOPTIONS = _IMP_kinematics.IMP_ATOM_HAS_BOOST_PROGRAMOPTIONS
345 
346 IMP_ATOM_HAS_BOOST_RANDOM = _IMP_kinematics.IMP_ATOM_HAS_BOOST_RANDOM
347 
348 IMP_ATOM_HAS_BOOST_REGEX = _IMP_kinematics.IMP_ATOM_HAS_BOOST_REGEX
349 
350 IMP_ATOM_HAS_CGAL = _IMP_kinematics.IMP_ATOM_HAS_CGAL
351 
352 IMP_ATOM_HAS_HDF5 = _IMP_kinematics.IMP_ATOM_HAS_HDF5
353 
354 IMP_ATOM_HAS_NUMPY = _IMP_kinematics.IMP_ATOM_HAS_NUMPY
355 
356 IMP_ATOM_HAS_PYTHON_IHM = _IMP_kinematics.IMP_ATOM_HAS_PYTHON_IHM
357 
358 IMPATOM_SHOW_WARNINGS = _IMP_kinematics.IMPATOM_SHOW_WARNINGS
359 
360 IMP_ATOM_TYPE_INDEX = _IMP_kinematics.IMP_ATOM_TYPE_INDEX
361 
362 IMP_RESIDUE_TYPE_INDEX = _IMP_kinematics.IMP_RESIDUE_TYPE_INDEX
363 
364 IMP_HIERARCHY_TYPE_INDEX = _IMP_kinematics.IMP_HIERARCHY_TYPE_INDEX
365 
366 IMP_CHAIN_TYPE_INDEX = _IMP_kinematics.IMP_CHAIN_TYPE_INDEX
367 
368 import IMP.atom
369 IMP_SAXS_HAS_IMP_CGAL = _IMP_kinematics.IMP_SAXS_HAS_IMP_CGAL
370 
371 IMP_SAXS_HAS_IMP_CONTAINER = _IMP_kinematics.IMP_SAXS_HAS_IMP_CONTAINER
372 
373 IMP_SAXS_HAS_IMP_DISPLAY = _IMP_kinematics.IMP_SAXS_HAS_IMP_DISPLAY
374 
375 IMP_SAXS_HAS_IMP_KERNEL = _IMP_kinematics.IMP_SAXS_HAS_IMP_KERNEL
376 
377 IMP_SAXS_HAS_IMP_SCORE_FUNCTOR = _IMP_kinematics.IMP_SAXS_HAS_IMP_SCORE_FUNCTOR
378 
379 IMP_SAXS_HAS_BOOST_FILESYSTEM = _IMP_kinematics.IMP_SAXS_HAS_BOOST_FILESYSTEM
380 
381 IMP_SAXS_HAS_BOOST_PROGRAMOPTIONS = _IMP_kinematics.IMP_SAXS_HAS_BOOST_PROGRAMOPTIONS
382 
383 IMP_SAXS_HAS_BOOST_RANDOM = _IMP_kinematics.IMP_SAXS_HAS_BOOST_RANDOM
384 
385 IMP_SAXS_HAS_BOOST_REGEX = _IMP_kinematics.IMP_SAXS_HAS_BOOST_REGEX
386 
387 IMP_SAXS_HAS_CGAL = _IMP_kinematics.IMP_SAXS_HAS_CGAL
388 
389 IMP_SAXS_HAS_HDF5 = _IMP_kinematics.IMP_SAXS_HAS_HDF5
390 
391 IMP_SAXS_HAS_NUMPY = _IMP_kinematics.IMP_SAXS_HAS_NUMPY
392 
393 IMP_SAXS_HAS_PYTHON_IHM = _IMP_kinematics.IMP_SAXS_HAS_PYTHON_IHM
394 
395 IMPSAXS_SHOW_WARNINGS = _IMP_kinematics.IMPSAXS_SHOW_WARNINGS
396 
397 import IMP.saxs
398 IMP_KINEMATICS_HAS_IMP_CGAL = _IMP_kinematics.IMP_KINEMATICS_HAS_IMP_CGAL
399 
400 IMP_KINEMATICS_HAS_IMP_DISPLAY = _IMP_kinematics.IMP_KINEMATICS_HAS_IMP_DISPLAY
401 
402 IMP_KINEMATICS_HAS_IMP_SCORE_FUNCTOR = _IMP_kinematics.IMP_KINEMATICS_HAS_IMP_SCORE_FUNCTOR
403 
404 IMP_KINEMATICS_HAS_BOOST_FILESYSTEM = _IMP_kinematics.IMP_KINEMATICS_HAS_BOOST_FILESYSTEM
405 
406 IMP_KINEMATICS_HAS_BOOST_PROGRAMOPTIONS = _IMP_kinematics.IMP_KINEMATICS_HAS_BOOST_PROGRAMOPTIONS
407 
408 IMP_KINEMATICS_HAS_BOOST_RANDOM = _IMP_kinematics.IMP_KINEMATICS_HAS_BOOST_RANDOM
409 
410 IMP_KINEMATICS_HAS_BOOST_REGEX = _IMP_kinematics.IMP_KINEMATICS_HAS_BOOST_REGEX
411 
412 IMP_KINEMATICS_HAS_CGAL = _IMP_kinematics.IMP_KINEMATICS_HAS_CGAL
413 
414 IMP_KINEMATICS_HAS_HDF5 = _IMP_kinematics.IMP_KINEMATICS_HAS_HDF5
415 
416 IMP_KINEMATICS_HAS_NUMPY = _IMP_kinematics.IMP_KINEMATICS_HAS_NUMPY
417 
418 IMP_KINEMATICS_HAS_PYTHON_IHM = _IMP_kinematics.IMP_KINEMATICS_HAS_PYTHON_IHM
419 
420 IMPKINEMATICS_SHOW_WARNINGS = _IMP_kinematics.IMPKINEMATICS_SHOW_WARNINGS
421 
422 
423 _object_types.append("Joint")
424 
425 
426 def _object_cast_to_Joint(o):
427  r"""_object_cast_to_Joint(Object o) -> Joint"""
428  return _IMP_kinematics._object_cast_to_Joint(o)
429 
430 _object_types.append("TransformationJoint")
431 
432 
433 def _object_cast_to_TransformationJoint(o):
434  r"""_object_cast_to_TransformationJoint(Object o) -> TransformationJoint"""
435  return _IMP_kinematics._object_cast_to_TransformationJoint(o)
436 
437 _object_types.append("RevoluteJoint")
438 
439 
440 def _object_cast_to_RevoluteJoint(o):
441  r"""_object_cast_to_RevoluteJoint(Object o) -> RevoluteJoint"""
442  return _IMP_kinematics._object_cast_to_RevoluteJoint(o)
443 
444 _object_types.append("DihedralAngleRevoluteJoint")
445 
446 
447 def _object_cast_to_DihedralAngleRevoluteJoint(o):
448  r"""_object_cast_to_DihedralAngleRevoluteJoint(Object o) -> DihedralAngleRevoluteJoint"""
449  return _IMP_kinematics._object_cast_to_DihedralAngleRevoluteJoint(o)
450 
451 _object_types.append("BondAngleRevoluteJoint")
452 
453 
454 def _object_cast_to_BondAngleRevoluteJoint(o):
455  r"""_object_cast_to_BondAngleRevoluteJoint(Object o) -> BondAngleRevoluteJoint"""
456  return _IMP_kinematics._object_cast_to_BondAngleRevoluteJoint(o)
457 
458 _object_types.append("PrismaticJoint")
459 
460 
461 def _object_cast_to_PrismaticJoint(o):
462  r"""_object_cast_to_PrismaticJoint(Object o) -> PrismaticJoint"""
463  return _IMP_kinematics._object_cast_to_PrismaticJoint(o)
464 
465 _object_types.append("KinematicForest")
466 
467 
468 def _object_cast_to_KinematicForest(o):
469  r"""_object_cast_to_KinematicForest(Object o) -> KinematicForest"""
470  return _IMP_kinematics._object_cast_to_KinematicForest(o)
471 
472 _object_types.append("KinematicForestScoreState")
473 
474 
475 def _object_cast_to_KinematicForestScoreState(o):
476  r"""_object_cast_to_KinematicForestScoreState(Object o) -> KinematicForestScoreState"""
477  return _IMP_kinematics._object_cast_to_KinematicForestScoreState(o)
478 
479 _object_types.append("CompositeJoint")
480 
481 
482 def _object_cast_to_CompositeJoint(o):
483  r"""_object_cast_to_CompositeJoint(Object o) -> CompositeJoint"""
484  return _IMP_kinematics._object_cast_to_CompositeJoint(o)
485 
486 _object_types.append("RevoluteJointMover")
487 
488 
489 def _object_cast_to_RevoluteJointMover(o):
490  r"""_object_cast_to_RevoluteJointMover(Object o) -> RevoluteJointMover"""
491  return _IMP_kinematics._object_cast_to_RevoluteJointMover(o)
492 
493 _object_types.append("DihedralMover")
494 
495 
496 def _object_cast_to_DihedralMover(o):
497  r"""_object_cast_to_DihedralMover(Object o) -> DihedralMover"""
498  return _IMP_kinematics._object_cast_to_DihedralMover(o)
499 
500 _object_types.append("DOF")
501 
502 
503 def _object_cast_to_DOF(o):
504  r"""_object_cast_to_DOF(Object o) -> DOF"""
505  return _IMP_kinematics._object_cast_to_DOF(o)
506 
507 DOFValuesList=list
508 _plural_types.append("DOFValuesList")
509 _value_types.append("DOFValues")
510 
511 
512 _object_types.append("DirectionalDOF")
513 
514 
515 def _object_cast_to_DirectionalDOF(o):
516  r"""_object_cast_to_DirectionalDOF(Object o) -> DirectionalDOF"""
517  return _IMP_kinematics._object_cast_to_DirectionalDOF(o)
518 
519 _object_types.append("DOFsSampler")
520 
521 
522 def _object_cast_to_DOFsSampler(o):
523  r"""_object_cast_to_DOFsSampler(Object o) -> DOFsSampler"""
524  return _IMP_kinematics._object_cast_to_DOFsSampler(o)
525 
526 _object_types.append("UniformBackboneSampler")
527 
528 
529 def _object_cast_to_UniformBackboneSampler(o):
530  r"""_object_cast_to_UniformBackboneSampler(Object o) -> UniformBackboneSampler"""
531  return _IMP_kinematics._object_cast_to_UniformBackboneSampler(o)
532 
533 _object_types.append("FibrilSampler")
534 
535 
536 def _object_cast_to_FibrilSampler(o):
537  r"""_object_cast_to_FibrilSampler(Object o) -> FibrilSampler"""
538  return _IMP_kinematics._object_cast_to_FibrilSampler(o)
539 
540 _object_types.append("ProteinKinematics")
541 
542 
543 def _object_cast_to_ProteinKinematics(o):
544  r"""_object_cast_to_ProteinKinematics(Object o) -> ProteinKinematics"""
545  return _IMP_kinematics._object_cast_to_ProteinKinematics(o)
546 
547 _object_types.append("LocalPlanner")
548 
549 
550 def _object_cast_to_LocalPlanner(o):
551  r"""_object_cast_to_LocalPlanner(Object o) -> LocalPlanner"""
552  return _IMP_kinematics._object_cast_to_LocalPlanner(o)
553 
554 _object_types.append("PathLocalPlanner")
555 
556 
557 def _object_cast_to_PathLocalPlanner(o):
558  r"""_object_cast_to_PathLocalPlanner(Object o) -> PathLocalPlanner"""
559  return _IMP_kinematics._object_cast_to_PathLocalPlanner(o)
560 
561 _object_types.append("RRT")
562 
563 
564 def _object_cast_to_RRT(o):
565  r"""_object_cast_to_RRT(Object o) -> RRT"""
566  return _IMP_kinematics._object_cast_to_RRT(o)
567 class Joint(IMP.Object):
568  r"""Proxy of C++ IMP::kinematics::Joint class."""
569 
570  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
571 
572  def get_version_info(self):
573  r"""get_version_info(Joint self) -> VersionInfo"""
574  return _IMP_kinematics.Joint_get_version_info(self)
575  __swig_destroy__ = _IMP_kinematics.delete_Joint
576 
577  def __init__(self, parent, child):
578  r"""__init__(Joint self, RigidBody parent, RigidBody child) -> Joint"""
579  _IMP_kinematics.Joint_swiginit(self, _IMP_kinematics.new_Joint(parent, child))
580 
581  def get_owner_kf(self):
582  r"""get_owner_kf(Joint self) -> KinematicForest"""
583  return _IMP_kinematics.Joint_get_owner_kf(self)
584 
585  def get_transformation_child_to_parent(self):
586  r"""get_transformation_child_to_parent(Joint self) -> Transformation3D"""
587  return _IMP_kinematics.Joint_get_transformation_child_to_parent(self)
588 
589  def get_parent_node(self):
590  r"""get_parent_node(Joint self) -> RigidBody"""
591  return _IMP_kinematics.Joint_get_parent_node(self)
592 
593  def get_child_node(self):
594  r"""get_child_node(Joint self) -> RigidBody"""
595  return _IMP_kinematics.Joint_get_child_node(self)
596 
597  def __str__(self):
598  r"""__str__(Joint self) -> std::string"""
599  return _IMP_kinematics.Joint___str__(self)
600 
601  def __repr__(self):
602  r"""__repr__(Joint self) -> std::string"""
603  return _IMP_kinematics.Joint___repr__(self)
604 
605  @staticmethod
606  def get_from(o):
607  return _object_cast_to_Joint(o)
608 
609 
610 # Register Joint in _IMP_kinematics:
611 _IMP_kinematics.Joint_swigregister(Joint)
612 class TransformationJoint(Joint):
613  r"""Proxy of C++ IMP::kinematics::TransformationJoint class."""
614 
615  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
616 
617  def __init__(self, parent, child):
618  r"""__init__(TransformationJoint self, RigidBody parent, RigidBody child) -> TransformationJoint"""
619  _IMP_kinematics.TransformationJoint_swiginit(self, _IMP_kinematics.new_TransformationJoint(parent, child))
620 
621  def set_transformation_child_to_parent(self, transformation):
622  r"""set_transformation_child_to_parent(TransformationJoint self, Transformation3D transformation)"""
623  return _IMP_kinematics.TransformationJoint_set_transformation_child_to_parent(self, transformation)
624 
625  def __str__(self):
626  r"""__str__(TransformationJoint self) -> std::string"""
627  return _IMP_kinematics.TransformationJoint___str__(self)
628 
629  def __repr__(self):
630  r"""__repr__(TransformationJoint self) -> std::string"""
631  return _IMP_kinematics.TransformationJoint___repr__(self)
632 
633  @staticmethod
634  def get_from(o):
635  return _object_cast_to_TransformationJoint(o)
636 
637  __swig_destroy__ = _IMP_kinematics.delete_TransformationJoint
638 
639 # Register TransformationJoint in _IMP_kinematics:
640 _IMP_kinematics.TransformationJoint_swigregister(TransformationJoint)
641 class PrismaticJoint(Joint):
642  r"""Proxy of C++ IMP::kinematics::PrismaticJoint class."""
643 
644  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
645 
646  def __init__(self, *args):
647  r"""
648  __init__(PrismaticJoint self, RigidBody parent, RigidBody child, XYZ a, XYZ b) -> PrismaticJoint
649  __init__(PrismaticJoint self, RigidBody parent, RigidBody child) -> PrismaticJoint
650  """
651  _IMP_kinematics.PrismaticJoint_swiginit(self, _IMP_kinematics.new_PrismaticJoint(*args))
652 
653  def get_length(self):
654  r"""get_length(PrismaticJoint self) -> double"""
655  return _IMP_kinematics.PrismaticJoint_get_length(self)
656 
657  def set_length(self, l):
658  r"""set_length(PrismaticJoint self, double l)"""
659  return _IMP_kinematics.PrismaticJoint_set_length(self, l)
660 
661  def __str__(self):
662  r"""__str__(PrismaticJoint self) -> std::string"""
663  return _IMP_kinematics.PrismaticJoint___str__(self)
664 
665  def __repr__(self):
666  r"""__repr__(PrismaticJoint self) -> std::string"""
667  return _IMP_kinematics.PrismaticJoint___repr__(self)
668 
669  @staticmethod
670  def get_from(o):
671  return _object_cast_to_PrismaticJoint(o)
672 
673  __swig_destroy__ = _IMP_kinematics.delete_PrismaticJoint
674 
675 # Register PrismaticJoint in _IMP_kinematics:
676 _IMP_kinematics.PrismaticJoint_swigregister(PrismaticJoint)
677 class CompositeJoint(Joint):
678  r"""Proxy of C++ IMP::kinematics::CompositeJoint class."""
679 
680  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
681 
682  def __init__(self, *args):
683  r"""__init__(CompositeJoint self, RigidBody parent, RigidBody child, IMP::kinematics::Joints joints=IMP::kinematics::Joints()) -> CompositeJoint"""
684  _IMP_kinematics.CompositeJoint_swiginit(self, _IMP_kinematics.new_CompositeJoint(*args))
685 
686  def add_downstream_joint(self, j):
687  r"""add_downstream_joint(CompositeJoint self, Joint j)"""
688  return _IMP_kinematics.CompositeJoint_add_downstream_joint(self, j)
689 
690  def add_upstream_joint(self, j):
691  r"""add_upstream_joint(CompositeJoint self, Joint j)"""
692  return _IMP_kinematics.CompositeJoint_add_upstream_joint(self, j)
693 
694  def set_joints(self, joints):
695  r"""set_joints(CompositeJoint self, IMP::kinematics::Joints joints)"""
696  return _IMP_kinematics.CompositeJoint_set_joints(self, joints)
697 
698  def get_inner_joints(self):
699  r"""get_inner_joints(CompositeJoint self) -> IMP::kinematics::Joints const &"""
700  return _IMP_kinematics.CompositeJoint_get_inner_joints(self)
701 
702  def __str__(self):
703  r"""__str__(CompositeJoint self) -> std::string"""
704  return _IMP_kinematics.CompositeJoint___str__(self)
705 
706  def __repr__(self):
707  r"""__repr__(CompositeJoint self) -> std::string"""
708  return _IMP_kinematics.CompositeJoint___repr__(self)
709 
710  @staticmethod
711  def get_from(o):
712  return _object_cast_to_CompositeJoint(o)
713 
714  __swig_destroy__ = _IMP_kinematics.delete_CompositeJoint
715 
716 # Register CompositeJoint in _IMP_kinematics:
717 _IMP_kinematics.CompositeJoint_swigregister(CompositeJoint)
718 class RevoluteJoint(Joint):
719  r"""Proxy of C++ IMP::kinematics::RevoluteJoint class."""
720 
721  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
722 
723  def __init__(self, parent, child):
724  r"""__init__(RevoluteJoint self, RigidBody parent, RigidBody child) -> RevoluteJoint"""
725  if self.__class__ == RevoluteJoint:
726  _self = None
727  else:
728  _self = self
729  _IMP_kinematics.RevoluteJoint_swiginit(self, _IMP_kinematics.new_RevoluteJoint(_self, parent, child))
730 
731  if self.__class__ != RevoluteJoint:
732  _director_objects.register(self)
733 
734 
735 
736  __swig_destroy__ = _IMP_kinematics.delete_RevoluteJoint
737 
738  def set_angle(self, angle):
739  r"""set_angle(RevoluteJoint self, double angle)"""
740  return _IMP_kinematics.RevoluteJoint_set_angle(self, angle)
741 
742  def get_angle(self):
743  r"""get_angle(RevoluteJoint self) -> double"""
744  return _IMP_kinematics.RevoluteJoint_get_angle(self)
745 
746  def get_rot_axis_origin(self):
747  r"""get_rot_axis_origin(RevoluteJoint self) -> Vector3D"""
748  return _IMP_kinematics.RevoluteJoint_get_rot_axis_origin(self)
749 
750  def get_rot_axis_unit_vector(self):
751  r"""get_rot_axis_unit_vector(RevoluteJoint self) -> Vector3D"""
752  return _IMP_kinematics.RevoluteJoint_get_rot_axis_unit_vector(self)
753 
754  def update_child_node_reference_frame(self):
755  r"""update_child_node_reference_frame(RevoluteJoint self)"""
756  return _IMP_kinematics.RevoluteJoint_update_child_node_reference_frame(self)
757 
758  def update_axis_of_rotation_from_cartesian_witnesses(self):
759  r"""update_axis_of_rotation_from_cartesian_witnesses(RevoluteJoint self)"""
760  return _IMP_kinematics.RevoluteJoint_update_axis_of_rotation_from_cartesian_witnesses(self)
761 
762  def get_current_angle_from_cartesian_witnesses(self):
763  r"""get_current_angle_from_cartesian_witnesses(RevoluteJoint self) -> double"""
764  return _IMP_kinematics.RevoluteJoint_get_current_angle_from_cartesian_witnesses(self)
765 
766  def update_joint_from_cartesian_witnesses(self):
767  r"""update_joint_from_cartesian_witnesses(RevoluteJoint self)"""
768  return _IMP_kinematics.RevoluteJoint_update_joint_from_cartesian_witnesses(self)
769 
770  def get_rotation_about_joint_in_parent_coordinates(self):
771  r"""get_rotation_about_joint_in_parent_coordinates(RevoluteJoint self) -> Transformation3D"""
772  return _IMP_kinematics.RevoluteJoint_get_rotation_about_joint_in_parent_coordinates(self)
773  angle_ = property(_IMP_kinematics.RevoluteJoint_angle__get, _IMP_kinematics.RevoluteJoint_angle__set, doc=r"""angle_ : double""")
774  last_updated_angle_ = property(_IMP_kinematics.RevoluteJoint_last_updated_angle__get, _IMP_kinematics.RevoluteJoint_last_updated_angle__set, doc=r"""last_updated_angle_ : double""")
775  rot_axis_unit_vector_ = property(_IMP_kinematics.RevoluteJoint_rot_axis_unit_vector__get, _IMP_kinematics.RevoluteJoint_rot_axis_unit_vector__set, doc=r"""rot_axis_unit_vector_ : IMP::algebra::Vector3D""")
776  rot_axis_origin_ = property(_IMP_kinematics.RevoluteJoint_rot_axis_origin__get, _IMP_kinematics.RevoluteJoint_rot_axis_origin__set, doc=r"""rot_axis_origin_ : IMP::algebra::Vector3D""")
777 
778  def __str__(self):
779  r"""__str__(RevoluteJoint self) -> std::string"""
780  return _IMP_kinematics.RevoluteJoint___str__(self)
781 
782  def __repr__(self):
783  r"""__repr__(RevoluteJoint self) -> std::string"""
784  return _IMP_kinematics.RevoluteJoint___repr__(self)
785 
786  @staticmethod
787  def get_from(o):
788  return _object_cast_to_RevoluteJoint(o)
789 
790 
791  def do_show(self, out):
792  pass
793 
794  @staticmethod
795  def get_from(o):
796  return _object_cast_to_RevoluteJoint(o)
797 
798  def __disown__(self):
799  self.this.disown()
800  _IMP_kinematics.disown_RevoluteJoint(self)
801  return weakref.proxy(self)
802 
803  def do_destroy(self):
804  r"""do_destroy(RevoluteJoint self)"""
805  return _IMP_kinematics.RevoluteJoint_do_destroy(self)
806 
807 # Register RevoluteJoint in _IMP_kinematics:
808 _IMP_kinematics.RevoluteJoint_swigregister(RevoluteJoint)
809 class DihedralAngleRevoluteJoint(RevoluteJoint):
810  r"""Proxy of C++ IMP::kinematics::DihedralAngleRevoluteJoint class."""
811 
812  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
813 
814  def __init__(self, parent, child, a, b, c, d):
815  r"""__init__(DihedralAngleRevoluteJoint self, RigidBody parent, RigidBody child, XYZ a, XYZ b, XYZ c, XYZ d) -> DihedralAngleRevoluteJoint"""
816  _IMP_kinematics.DihedralAngleRevoluteJoint_swiginit(self, _IMP_kinematics.new_DihedralAngleRevoluteJoint(parent, child, a, b, c, d))
817 
818  def get_a(self):
819  r"""get_a(DihedralAngleRevoluteJoint self) -> XYZ"""
820  return _IMP_kinematics.DihedralAngleRevoluteJoint_get_a(self)
821 
822  def get_b(self):
823  r"""get_b(DihedralAngleRevoluteJoint self) -> XYZ"""
824  return _IMP_kinematics.DihedralAngleRevoluteJoint_get_b(self)
825 
826  def get_c(self):
827  r"""get_c(DihedralAngleRevoluteJoint self) -> XYZ"""
828  return _IMP_kinematics.DihedralAngleRevoluteJoint_get_c(self)
829 
830  def get_d(self):
831  r"""get_d(DihedralAngleRevoluteJoint self) -> XYZ"""
832  return _IMP_kinematics.DihedralAngleRevoluteJoint_get_d(self)
833 
834  def __str__(self):
835  r"""__str__(DihedralAngleRevoluteJoint self) -> std::string"""
836  return _IMP_kinematics.DihedralAngleRevoluteJoint___str__(self)
837 
838  def __repr__(self):
839  r"""__repr__(DihedralAngleRevoluteJoint self) -> std::string"""
840  return _IMP_kinematics.DihedralAngleRevoluteJoint___repr__(self)
841 
842  @staticmethod
843  def get_from(o):
844  return _object_cast_to_DihedralAngleRevoluteJoint(o)
845 
846  __swig_destroy__ = _IMP_kinematics.delete_DihedralAngleRevoluteJoint
847 
848 # Register DihedralAngleRevoluteJoint in _IMP_kinematics:
849 _IMP_kinematics.DihedralAngleRevoluteJoint_swigregister(DihedralAngleRevoluteJoint)
850 class BondAngleRevoluteJoint(RevoluteJoint):
851  r"""Proxy of C++ IMP::kinematics::BondAngleRevoluteJoint class."""
852 
853  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
854 
855  def __init__(self, parent, child, a, b, c):
856  r"""__init__(BondAngleRevoluteJoint self, RigidBody parent, RigidBody child, XYZ a, XYZ b, XYZ c) -> BondAngleRevoluteJoint"""
857  _IMP_kinematics.BondAngleRevoluteJoint_swiginit(self, _IMP_kinematics.new_BondAngleRevoluteJoint(parent, child, a, b, c))
858 
859  def __str__(self):
860  r"""__str__(BondAngleRevoluteJoint self) -> std::string"""
861  return _IMP_kinematics.BondAngleRevoluteJoint___str__(self)
862 
863  def __repr__(self):
864  r"""__repr__(BondAngleRevoluteJoint self) -> std::string"""
865  return _IMP_kinematics.BondAngleRevoluteJoint___repr__(self)
866 
867  @staticmethod
868  def get_from(o):
869  return _object_cast_to_BondAngleRevoluteJoint(o)
870 
871  __swig_destroy__ = _IMP_kinematics.delete_BondAngleRevoluteJoint
872 
873 # Register BondAngleRevoluteJoint in _IMP_kinematics:
874 _IMP_kinematics.BondAngleRevoluteJoint_swigregister(BondAngleRevoluteJoint)
875 class RevoluteJointMover(IMP.core.MonteCarloMover):
876  r"""Proxy of C++ IMP::kinematics::RevoluteJointMover class."""
877 
878  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
879 
880  def __init__(self, m, joints, stddev=0.01):
881  r"""__init__(RevoluteJointMover self, Model m, IMP::kinematics::RevoluteJoints const & joints, double const stddev=0.01) -> RevoluteJointMover"""
882  _IMP_kinematics.RevoluteJointMover_swiginit(self, _IMP_kinematics.new_RevoluteJointMover(m, joints, stddev))
883 
884  def set_sigma(self, sigma):
885  r"""set_sigma(RevoluteJointMover self, IMP::Float sigma)"""
886  return _IMP_kinematics.RevoluteJointMover_set_sigma(self, sigma)
887 
888  def get_sigma(self):
889  r"""get_sigma(RevoluteJointMover self) -> IMP::Float"""
890  return _IMP_kinematics.RevoluteJointMover_get_sigma(self)
891 
892  def get_version_info(self):
893  r"""get_version_info(RevoluteJointMover self) -> VersionInfo"""
894  return _IMP_kinematics.RevoluteJointMover_get_version_info(self)
895  __swig_destroy__ = _IMP_kinematics.delete_RevoluteJointMover
896 
897  def __str__(self):
898  r"""__str__(RevoluteJointMover self) -> std::string"""
899  return _IMP_kinematics.RevoluteJointMover___str__(self)
900 
901  def __repr__(self):
902  r"""__repr__(RevoluteJointMover self) -> std::string"""
903  return _IMP_kinematics.RevoluteJointMover___repr__(self)
904 
905  @staticmethod
906  def get_from(o):
907  return _object_cast_to_RevoluteJointMover(o)
908 
909 
910 # Register RevoluteJointMover in _IMP_kinematics:
911 _IMP_kinematics.RevoluteJointMover_swigregister(RevoluteJointMover)
912 class DihedralMover(IMP.core.MonteCarloMover):
913  r"""Proxy of C++ IMP::kinematics::DihedralMover class."""
914 
915  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
916 
917  def __init__(self, m, joints, max_rot=0.1):
918  r"""__init__(DihedralMover self, Model m, IMP::kinematics::RevoluteJoints const & joints, double const max_rot=0.1) -> DihedralMover"""
919  _IMP_kinematics.DihedralMover_swiginit(self, _IMP_kinematics.new_DihedralMover(m, joints, max_rot))
920 
921  def get_version_info(self):
922  r"""get_version_info(DihedralMover self) -> VersionInfo"""
923  return _IMP_kinematics.DihedralMover_get_version_info(self)
924  __swig_destroy__ = _IMP_kinematics.delete_DihedralMover
925 
926  def __str__(self):
927  r"""__str__(DihedralMover self) -> std::string"""
928  return _IMP_kinematics.DihedralMover___str__(self)
929 
930  def __repr__(self):
931  r"""__repr__(DihedralMover self) -> std::string"""
932  return _IMP_kinematics.DihedralMover___repr__(self)
933 
934  @staticmethod
935  def get_from(o):
936  return _object_cast_to_DihedralMover(o)
937 
938 
939 # Register DihedralMover in _IMP_kinematics:
940 _IMP_kinematics.DihedralMover_swigregister(DihedralMover)
941 class KinematicForest(IMP.Object):
942  r"""Proxy of C++ IMP::kinematics::KinematicForest class."""
943 
944  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
945 
946  def get_version_info(self):
947  r"""get_version_info(KinematicForest self) -> VersionInfo"""
948  return _IMP_kinematics.KinematicForest_get_version_info(self)
949  __swig_destroy__ = _IMP_kinematics.delete_KinematicForest
950 
951  def __init__(self, *args):
952  r"""
953  __init__(KinematicForest self, Model m) -> KinematicForest
954  __init__(KinematicForest self, Model m, Hierarchy hierarchy) -> KinematicForest
955  """
956  _IMP_kinematics.KinematicForest_swiginit(self, _IMP_kinematics.new_KinematicForest(*args))
957 
958  def add_edge(self, *args):
959  r"""
960  add_edge(KinematicForest self, RigidBody parent, RigidBody child) -> Joint
961  add_edge(KinematicForest self, Joint joint)
962  """
963  return _IMP_kinematics.KinematicForest_add_edge(self, *args)
964 
965  def add_rigid_bodies_in_chain(self, rbs):
966  r"""add_rigid_bodies_in_chain(KinematicForest self, IMP::core::RigidBodies rbs)"""
967  return _IMP_kinematics.KinematicForest_add_rigid_bodies_in_chain(self, rbs)
968 
969  def reset_root(self, new_root):
970  r"""reset_root(KinematicForest self, Particle new_root)"""
971  return _IMP_kinematics.KinematicForest_reset_root(self, new_root)
972 
973  def update_all_internal_coordinates(self):
974  r"""update_all_internal_coordinates(KinematicForest self)"""
975  return _IMP_kinematics.KinematicForest_update_all_internal_coordinates(self)
976 
977  def update_all_external_coordinates(self):
978  r"""update_all_external_coordinates(KinematicForest self)"""
979  return _IMP_kinematics.KinematicForest_update_all_external_coordinates(self)
980 
981  def get_ordered_joints(self):
982  r"""get_ordered_joints(KinematicForest self) -> IMP::kinematics::Joints"""
983  return _IMP_kinematics.KinematicForest_get_ordered_joints(self)
984 
985  def transform_safe(self, tr):
986  r"""transform_safe(KinematicForest self, Transformation3D tr)"""
987  return _IMP_kinematics.KinematicForest_transform_safe(self, tr)
988 
989  def mark_internal_coordinates_changed(self):
990  r"""mark_internal_coordinates_changed(KinematicForest self)"""
991  return _IMP_kinematics.KinematicForest_mark_internal_coordinates_changed(self)
992 
993  def mark_external_coordinates_changed(self):
994  r"""mark_external_coordinates_changed(KinematicForest self)"""
995  return _IMP_kinematics.KinematicForest_mark_external_coordinates_changed(self)
996 
997  def set_coordinates_safe(self, rb, c):
998  r"""set_coordinates_safe(KinematicForest self, RigidBody rb, Vector3D c)"""
999  return _IMP_kinematics.KinematicForest_set_coordinates_safe(self, rb, c)
1000 
1001  def get_coordinates_safe(self, rb):
1002  r"""get_coordinates_safe(KinematicForest self, RigidBody rb) -> Vector3D"""
1003  return _IMP_kinematics.KinematicForest_get_coordinates_safe(self, rb)
1004 
1005  def get_is_member(self, rb):
1006  r"""get_is_member(KinematicForest self, RigidBody rb) -> bool"""
1007  return _IMP_kinematics.KinematicForest_get_is_member(self, rb)
1008 
1009  def get_reference_frame_safe(self, rb):
1010  r"""get_reference_frame_safe(KinematicForest self, RigidBody rb) -> ReferenceFrame3D"""
1011  return _IMP_kinematics.KinematicForest_get_reference_frame_safe(self, rb)
1012 
1013  def set_reference_frame_safe(self, rb, r):
1014  r"""set_reference_frame_safe(KinematicForest self, RigidBody rb, ReferenceFrame3D r)"""
1015  return _IMP_kinematics.KinematicForest_set_reference_frame_safe(self, rb, r)
1016 
1017  def apply_transform_safely(self, tr):
1018  r"""apply_transform_safely(KinematicForest self, Transformation3D tr)"""
1019  return _IMP_kinematics.KinematicForest_apply_transform_safely(self, tr)
1020 
1021  def __str__(self):
1022  r"""__str__(KinematicForest self) -> std::string"""
1023  return _IMP_kinematics.KinematicForest___str__(self)
1024 
1025  def __repr__(self):
1026  r"""__repr__(KinematicForest self) -> std::string"""
1027  return _IMP_kinematics.KinematicForest___repr__(self)
1028 
1029  @staticmethod
1030  def get_from(o):
1031  return _object_cast_to_KinematicForest(o)
1032 
1033 
1034 # Register KinematicForest in _IMP_kinematics:
1035 _IMP_kinematics.KinematicForest_swigregister(KinematicForest)
1036 class KinematicForestScoreState(IMP.ScoreState):
1037  r"""Proxy of C++ IMP::kinematics::KinematicForestScoreState class."""
1038 
1039  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1040 
1041  def get_version_info(self):
1042  r"""get_version_info(KinematicForestScoreState self) -> VersionInfo"""
1043  return _IMP_kinematics.KinematicForestScoreState_get_version_info(self)
1044  __swig_destroy__ = _IMP_kinematics.delete_KinematicForestScoreState
1045 
1046  def __init__(self, kf, rbs, atoms):
1047  r"""__init__(KinematicForestScoreState self, KinematicForest kf, IMP::core::RigidBodies rbs, IMP::ParticlesTemp atoms) -> KinematicForestScoreState"""
1048  _IMP_kinematics.KinematicForestScoreState_swiginit(self, _IMP_kinematics.new_KinematicForestScoreState(kf, rbs, atoms))
1049 
1050  def do_before_evaluate(self):
1051  r"""do_before_evaluate(KinematicForestScoreState self)"""
1052  return _IMP_kinematics.KinematicForestScoreState_do_before_evaluate(self)
1053 
1054  def do_after_evaluate(self, da):
1055  r"""do_after_evaluate(KinematicForestScoreState self, DerivativeAccumulator da)"""
1056  return _IMP_kinematics.KinematicForestScoreState_do_after_evaluate(self, da)
1057 
1058  def do_get_inputs(self):
1059  r"""do_get_inputs(KinematicForestScoreState self) -> IMP::ModelObjectsTemp"""
1060  return _IMP_kinematics.KinematicForestScoreState_do_get_inputs(self)
1061 
1062  def do_get_outputs(self):
1063  r"""do_get_outputs(KinematicForestScoreState self) -> IMP::ModelObjectsTemp"""
1064  return _IMP_kinematics.KinematicForestScoreState_do_get_outputs(self)
1065 
1066  def __str__(self):
1067  r"""__str__(KinematicForestScoreState self) -> std::string"""
1068  return _IMP_kinematics.KinematicForestScoreState___str__(self)
1069 
1070  def __repr__(self):
1071  r"""__repr__(KinematicForestScoreState self) -> std::string"""
1072  return _IMP_kinematics.KinematicForestScoreState___repr__(self)
1073 
1074  @staticmethod
1075  def get_from(o):
1076  return _object_cast_to_KinematicForestScoreState(o)
1077 
1078 
1079 # Register KinematicForestScoreState in _IMP_kinematics:
1080 _IMP_kinematics.KinematicForestScoreState_swigregister(KinematicForestScoreState)
1081 class DOF(IMP.Object):
1082  r"""Proxy of C++ IMP::kinematics::DOF class."""
1083 
1084  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1085 
1086  def get_version_info(self):
1087  r"""get_version_info(DOF self) -> VersionInfo"""
1088  return _IMP_kinematics.DOF_get_version_info(self)
1089  __swig_destroy__ = _IMP_kinematics.delete_DOF
1090 
1091  def __init__(self, *args):
1092  r"""
1093  __init__(DOF self, double v) -> DOF
1094  __init__(DOF self, double v, double min, double max, double step_size) -> DOF
1095  """
1096  _IMP_kinematics.DOF_swiginit(self, _IMP_kinematics.new_DOF(*args))
1097 
1098  def get_value(self):
1099  r"""get_value(DOF self) -> double"""
1100  return _IMP_kinematics.DOF_get_value(self)
1101 
1102  def set_value(self, v):
1103  r"""set_value(DOF self, double v)"""
1104  return _IMP_kinematics.DOF_set_value(self, v)
1105 
1106  def get_range(self):
1107  r"""get_range(DOF self) -> std::pair< double,double >"""
1108  return _IMP_kinematics.DOF_get_range(self)
1109 
1110  def set_range(self, range):
1111  r"""set_range(DOF self, std::pair< double,double > range)"""
1112  return _IMP_kinematics.DOF_set_range(self, range)
1113 
1114  def get_step_size(self):
1115  r"""get_step_size(DOF self) -> double"""
1116  return _IMP_kinematics.DOF_get_step_size(self)
1117 
1118  def set_step_size(self, step_size):
1119  r"""set_step_size(DOF self, double step_size)"""
1120  return _IMP_kinematics.DOF_set_step_size(self, step_size)
1121 
1122  def get_number_of_steps(self, *args):
1123  r"""
1124  get_number_of_steps(DOF self, double value) -> int
1125  get_number_of_steps(DOF self, double value1, double value2) -> int
1126  """
1127  return _IMP_kinematics.DOF_get_number_of_steps(self, *args)
1128 
1129  def __str__(self):
1130  r"""__str__(DOF self) -> std::string"""
1131  return _IMP_kinematics.DOF___str__(self)
1132 
1133  def __repr__(self):
1134  r"""__repr__(DOF self) -> std::string"""
1135  return _IMP_kinematics.DOF___repr__(self)
1136 
1137  @staticmethod
1138  def get_from(o):
1139  return _object_cast_to_DOF(o)
1140 
1141 
1142 # Register DOF in _IMP_kinematics:
1143 _IMP_kinematics.DOF_swigregister(DOF)
1144 class DOFValues(IMP.saxs.DistBase):
1145  r"""Proxy of C++ IMP::kinematics::DOFValues class."""
1146 
1147  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1148 
1149  def __init__(self, *args):
1150  r"""
1151  __init__(DOFValues self, IMP::kinematics::DOFs const & dofs) -> DOFValues
1152  __init__(DOFValues self) -> DOFValues
1153  """
1154  _IMP_kinematics.DOFValues_swiginit(self, _IMP_kinematics.new_DOFValues(*args))
1155 
1156  def get_distance2(self, *args):
1157  r"""
1158  get_distance2(DOFValues self, DOFValues other_dof_values) -> double
1159  get_distance2(DOFValues self, DOFValues other_dof_values, std::vector< bool,std::allocator< bool > > const & active_dofs) -> double
1160  """
1161  return _IMP_kinematics.DOFValues_get_distance2(self, *args)
1162 
1163  def get_distance(self, *args):
1164  r"""
1165  get_distance(DOFValues self, DOFValues other_dof_values) -> double
1166  get_distance(DOFValues self, DOFValues other_dof_values, std::vector< bool,std::allocator< bool > > const & active_dofs) -> double
1167  """
1168  return _IMP_kinematics.DOFValues_get_distance(self, *args)
1169 
1170  def show(self, *args):
1171  r"""show(DOFValues self, _ostream out=std::cout)"""
1172  return _IMP_kinematics.DOFValues_show(self, *args)
1173 
1174  def __str__(self):
1175  r"""__str__(DOFValues self) -> std::string"""
1176  return _IMP_kinematics.DOFValues___str__(self)
1177 
1178  def __repr__(self):
1179  r"""__repr__(DOFValues self) -> std::string"""
1180  return _IMP_kinematics.DOFValues___repr__(self)
1181 
1182  def _get_as_binary(self):
1183  r"""_get_as_binary(DOFValues self) -> PyObject *"""
1184  return _IMP_kinematics.DOFValues__get_as_binary(self)
1185 
1186  def _set_from_binary(self, p):
1187  r"""_set_from_binary(DOFValues self, PyObject * p)"""
1188  return _IMP_kinematics.DOFValues__set_from_binary(self, p)
1189 
1190  def __getstate__(self):
1191  p = self._get_as_binary()
1192  if len(self.__dict__) > 1:
1193  d = self.__dict__.copy()
1194  del d['this']
1195  p = (d, p)
1196  return p
1197 
1198  def __setstate__(self, p):
1199  if not hasattr(self, 'this'):
1200  self.__init__()
1201  if isinstance(p, tuple):
1202  d, p = p
1203  self.__dict__.update(d)
1204  return self._set_from_binary(p)
1205 
1206  __swig_destroy__ = _IMP_kinematics.delete_DOFValues
1207 
1208 # Register DOFValues in _IMP_kinematics:
1209 _IMP_kinematics.DOFValues_swigregister(DOFValues)
1210 class DirectionalDOF(IMP.Object):
1211  r"""Proxy of C++ IMP::kinematics::DirectionalDOF class."""
1212 
1213  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1214 
1215  def __init__(self, dofs):
1216  r"""__init__(DirectionalDOF self, IMP::kinematics::DOFs const & dofs) -> DirectionalDOF"""
1217  _IMP_kinematics.DirectionalDOF_swiginit(self, _IMP_kinematics.new_DirectionalDOF(dofs))
1218 
1219  def set_end_points(self, q1, q2):
1220  r"""set_end_points(DirectionalDOF self, DOFValues q1, DOFValues q2)"""
1221  return _IMP_kinematics.DirectionalDOF_set_end_points(self, q1, q2)
1222 
1223  def get_dofs_values(self):
1224  r"""get_dofs_values(DirectionalDOF self) -> DOFValues"""
1225  return _IMP_kinematics.DirectionalDOF_get_dofs_values(self)
1226 
1227  def get_value(self):
1228  r"""get_value(DirectionalDOF self) -> double"""
1229  return _IMP_kinematics.DirectionalDOF_get_value(self)
1230 
1231  def get_version_info(self):
1232  r"""get_version_info(DirectionalDOF self) -> VersionInfo"""
1233  return _IMP_kinematics.DirectionalDOF_get_version_info(self)
1234  __swig_destroy__ = _IMP_kinematics.delete_DirectionalDOF
1235 
1236  def __str__(self):
1237  r"""__str__(DirectionalDOF self) -> std::string"""
1238  return _IMP_kinematics.DirectionalDOF___str__(self)
1239 
1240  def __repr__(self):
1241  r"""__repr__(DirectionalDOF self) -> std::string"""
1242  return _IMP_kinematics.DirectionalDOF___repr__(self)
1243 
1244  @staticmethod
1245  def get_from(o):
1246  return _object_cast_to_DirectionalDOF(o)
1247 
1248 
1249 # Register DirectionalDOF in _IMP_kinematics:
1250 _IMP_kinematics.DirectionalDOF_swigregister(DirectionalDOF)
1251 class DOFsSampler(IMP.Object):
1252  r"""Proxy of C++ IMP::kinematics::DOFsSampler class."""
1253 
1254  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1255 
1256  def get_type_name(self):
1257  r"""get_type_name(DOFsSampler self) -> std::string"""
1258  return _IMP_kinematics.DOFsSampler_get_type_name(self)
1259 
1260  def get_version_info(self):
1261  r"""get_version_info(DOFsSampler self) -> VersionInfo"""
1262  return _IMP_kinematics.DOFsSampler_get_version_info(self)
1263  __swig_destroy__ = _IMP_kinematics.delete_DOFsSampler
1264 
1265  def __init__(self, dofs):
1266  r"""__init__(DOFsSampler self, IMP::kinematics::DOFs dofs) -> DOFsSampler"""
1267  if self.__class__ == DOFsSampler:
1268  _self = None
1269  else:
1270  _self = self
1271  _IMP_kinematics.DOFsSampler_swiginit(self, _IMP_kinematics.new_DOFsSampler(_self, dofs))
1272 
1273  if self.__class__ != DOFsSampler:
1274  _director_objects.register(self)
1275 
1276 
1277 
1278 
1279  def get_sample(self):
1280  r"""get_sample(DOFsSampler self) -> DOFValues"""
1281  return _IMP_kinematics.DOFsSampler_get_sample(self)
1282 
1283  def apply(self, values):
1284  r"""apply(DOFsSampler self, DOFValues values)"""
1285  return _IMP_kinematics.DOFsSampler_apply(self, values)
1286 
1287  def apply_last_sample(self):
1288  r"""apply_last_sample(DOFsSampler self)"""
1289  return _IMP_kinematics.DOFsSampler_apply_last_sample(self)
1290 
1291  def sample_and_apply(self):
1292  r"""sample_and_apply(DOFsSampler self)"""
1293  return _IMP_kinematics.DOFsSampler_sample_and_apply(self)
1294 
1295  def get_dofs(self):
1296  r"""get_dofs(DOFsSampler self) -> IMP::kinematics::DOFs const &"""
1297  return _IMP_kinematics.DOFsSampler_get_dofs(self)
1298 
1299  def get_dof(self, i):
1300  r"""get_dof(DOFsSampler self, unsigned int i) -> DOF"""
1301  return _IMP_kinematics.DOFsSampler_get_dof(self, i)
1302 
1303  def get_number_of_dofs(self):
1304  r"""get_number_of_dofs(DOFsSampler self) -> unsigned int"""
1305  return _IMP_kinematics.DOFsSampler_get_number_of_dofs(self)
1306 
1307  def do_get_sample(self):
1308  r"""do_get_sample(DOFsSampler self) -> DOFValues"""
1309  return _IMP_kinematics.DOFsSampler_do_get_sample(self)
1310 
1311  def __str__(self):
1312  r"""__str__(DOFsSampler self) -> std::string"""
1313  return _IMP_kinematics.DOFsSampler___str__(self)
1314 
1315  def __repr__(self):
1316  r"""__repr__(DOFsSampler self) -> std::string"""
1317  return _IMP_kinematics.DOFsSampler___repr__(self)
1318 
1319  @staticmethod
1320  def get_from(o):
1321  return _object_cast_to_DOFsSampler(o)
1322 
1323 
1324  def do_show(self, out):
1325  pass
1326 
1327  @staticmethod
1328  def get_from(o):
1329  return _object_cast_to_DOFsSampler(o)
1330 
1331  def __disown__(self):
1332  self.this.disown()
1333  _IMP_kinematics.disown_DOFsSampler(self)
1334  return weakref.proxy(self)
1335 
1336  def do_destroy(self):
1337  r"""do_destroy(DOFsSampler self)"""
1338  return _IMP_kinematics.DOFsSampler_do_destroy(self)
1339 
1340 # Register DOFsSampler in _IMP_kinematics:
1341 _IMP_kinematics.DOFsSampler_swigregister(DOFsSampler)
1342 class FibrilSampler(DOFsSampler):
1343  r"""Proxy of C++ IMP::kinematics::FibrilSampler class."""
1344 
1345  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1346 
1347  def __init__(self, trans_joint, dihedral_joints, dofs):
1348  r"""__init__(FibrilSampler self, IMP::kinematics::TransformationJoints trans_joint, IMP::kinematics::DihedralAngleRevoluteJoints dihedral_joints, IMP::kinematics::DOFs dofs) -> FibrilSampler"""
1349  _IMP_kinematics.FibrilSampler_swiginit(self, _IMP_kinematics.new_FibrilSampler(trans_joint, dihedral_joints, dofs))
1350 
1351  def apply_floats(self, values):
1352  r"""apply_floats(FibrilSampler self, IMP::Floats const & values)"""
1353  return _IMP_kinematics.FibrilSampler_apply_floats(self, values)
1354 
1355  def get_dihedral_joints(self):
1356  r"""get_dihedral_joints(FibrilSampler self) -> IMP::kinematics::DihedralAngleRevoluteJoints"""
1357  return _IMP_kinematics.FibrilSampler_get_dihedral_joints(self)
1358 
1359  def get_transformation_joint(self):
1360  r"""get_transformation_joint(FibrilSampler self) -> IMP::kinematics::TransformationJoints"""
1361  return _IMP_kinematics.FibrilSampler_get_transformation_joint(self)
1362 
1363  def __str__(self):
1364  r"""__str__(FibrilSampler self) -> std::string"""
1365  return _IMP_kinematics.FibrilSampler___str__(self)
1366 
1367  def __repr__(self):
1368  r"""__repr__(FibrilSampler self) -> std::string"""
1369  return _IMP_kinematics.FibrilSampler___repr__(self)
1370 
1371  @staticmethod
1372  def get_from(o):
1373  return _object_cast_to_FibrilSampler(o)
1374 
1375  __swig_destroy__ = _IMP_kinematics.delete_FibrilSampler
1376 
1377 # Register FibrilSampler in _IMP_kinematics:
1378 _IMP_kinematics.FibrilSampler_swigregister(FibrilSampler)
1379 class UniformBackboneSampler(DOFsSampler):
1380  r"""Proxy of C++ IMP::kinematics::UniformBackboneSampler class."""
1381 
1382  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1383 
1384  def __init__(self, joints, dofs):
1385  r"""__init__(UniformBackboneSampler self, IMP::kinematics::DihedralAngleRevoluteJoints joints, IMP::kinematics::DOFs dofs) -> UniformBackboneSampler"""
1386  _IMP_kinematics.UniformBackboneSampler_swiginit(self, _IMP_kinematics.new_UniformBackboneSampler(joints, dofs))
1387 
1388  def apply_floats(self, values):
1389  r"""apply_floats(UniformBackboneSampler self, IMP::Floats const & values)"""
1390  return _IMP_kinematics.UniformBackboneSampler_apply_floats(self, values)
1391 
1392  def get_joints(self):
1393  r"""get_joints(UniformBackboneSampler self) -> IMP::kinematics::DihedralAngleRevoluteJoints"""
1394  return _IMP_kinematics.UniformBackboneSampler_get_joints(self)
1395 
1396  def __str__(self):
1397  r"""__str__(UniformBackboneSampler self) -> std::string"""
1398  return _IMP_kinematics.UniformBackboneSampler___str__(self)
1399 
1400  def __repr__(self):
1401  r"""__repr__(UniformBackboneSampler self) -> std::string"""
1402  return _IMP_kinematics.UniformBackboneSampler___repr__(self)
1403 
1404  @staticmethod
1405  def get_from(o):
1406  return _object_cast_to_UniformBackboneSampler(o)
1407 
1408  __swig_destroy__ = _IMP_kinematics.delete_UniformBackboneSampler
1409 
1410 # Register UniformBackboneSampler in _IMP_kinematics:
1411 _IMP_kinematics.UniformBackboneSampler_swigregister(UniformBackboneSampler)
1412 PHI = _IMP_kinematics.PHI
1413 
1414 PSI = _IMP_kinematics.PSI
1415 
1416 CHI = _IMP_kinematics.CHI
1417 
1418 CHI1 = _IMP_kinematics.CHI1
1419 
1420 CHI2 = _IMP_kinematics.CHI2
1421 
1422 CHI3 = _IMP_kinematics.CHI3
1423 
1424 CHI4 = _IMP_kinematics.CHI4
1425 
1426 CHI5 = _IMP_kinematics.CHI5
1427 
1428 OTHER = _IMP_kinematics.OTHER
1429 
1430 OTHER2 = _IMP_kinematics.OTHER2
1431 
1432 OTHER3 = _IMP_kinematics.OTHER3
1433 
1434 OTHER4 = _IMP_kinematics.OTHER4
1435 
1436 OTHER5 = _IMP_kinematics.OTHER5
1437 
1438 TOTAL = _IMP_kinematics.TOTAL
1439 
1440 class ProteinKinematics(IMP.Object):
1441  r"""Proxy of C++ IMP::kinematics::ProteinKinematics class."""
1442 
1443  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1444 
1445  def __init__(self, *args):
1446  r"""
1447  __init__(ProteinKinematics self, Hierarchy mhd, bool flexible_backbone=True, bool flexible_side_chains=False) -> ProteinKinematics
1448  __init__(ProteinKinematics self, Hierarchy mhd, IMP::atom::Residues const & flexible_residues, IMP::ParticleIndexQuads const custom_dihedral_angles, IMP::atom::Atoms open_loop_bond_atoms=IMP::atom::Atoms(), bool flexible_backbone=True, bool flexible_side_chains=False) -> ProteinKinematics
1449  __init__(ProteinKinematics self, Hierarchy mhd, IMP::atom::Residues const & flexible_residues, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & custom_dihedral_atoms, IMP::atom::Atoms open_loop_bond_atoms=IMP::atom::Atoms(), bool flexible_backbone=True, bool flexible_side_chains=False) -> ProteinKinematics
1450  __init__(ProteinKinematics self, Hierarchy mhd, IMP::atom::Residues const & flexible_residues, IMP::ParticleIndexQuads const custom_dihedral_angles, std::vector< IMP::kinematics::ProteinAngleType,std::allocator< IMP::kinematics::ProteinAngleType > > const & custom_dihedral_angle_types, IMP::atom::Atoms open_loop_bond_atoms=IMP::atom::Atoms(), bool flexible_backbone=True, bool flexible_side_chains=False) -> ProteinKinematics
1451  """
1452  _IMP_kinematics.ProteinKinematics_swiginit(self, _IMP_kinematics.new_ProteinKinematics(*args))
1453 
1454  def get_phi(self, r):
1455  r"""get_phi(ProteinKinematics self, Residue r) -> double"""
1456  return _IMP_kinematics.ProteinKinematics_get_phi(self, r)
1457 
1458  def get_psi(self, r):
1459  r"""get_psi(ProteinKinematics self, Residue r) -> double"""
1460  return _IMP_kinematics.ProteinKinematics_get_psi(self, r)
1461 
1462  def get_joints(self):
1463  r"""get_joints(ProteinKinematics self) -> IMP::kinematics::DihedralAngleRevoluteJoints"""
1464  return _IMP_kinematics.ProteinKinematics_get_joints(self)
1465 
1466  def get_loop_joints(self):
1467  r"""get_loop_joints(ProteinKinematics self) -> IMP::kinematics::DihedralAngleRevoluteJoints"""
1468  return _IMP_kinematics.ProteinKinematics_get_loop_joints(self)
1469 
1470  def get_ordered_joints(self):
1471  r"""get_ordered_joints(ProteinKinematics self) -> IMP::kinematics::DihedralAngleRevoluteJoints"""
1472  return _IMP_kinematics.ProteinKinematics_get_ordered_joints(self)
1473 
1474  def get_kinematic_forest(self):
1475  r"""get_kinematic_forest(ProteinKinematics self) -> KinematicForest"""
1476  return _IMP_kinematics.ProteinKinematics_get_kinematic_forest(self)
1477 
1478  def get_rigid_bodies(self):
1479  r"""get_rigid_bodies(ProteinKinematics self) -> IMP::core::RigidBodies"""
1480  return _IMP_kinematics.ProteinKinematics_get_rigid_bodies(self)
1481 
1482  def set_phi(self, r, angle):
1483  r"""set_phi(ProteinKinematics self, Residue r, double angle)"""
1484  return _IMP_kinematics.ProteinKinematics_set_phi(self, r, angle)
1485 
1486  def set_psi(self, r, angle):
1487  r"""set_psi(ProteinKinematics self, Residue r, double angle)"""
1488  return _IMP_kinematics.ProteinKinematics_set_psi(self, r, angle)
1489 
1490  def get_version_info(self):
1491  r"""get_version_info(ProteinKinematics self) -> VersionInfo"""
1492  return _IMP_kinematics.ProteinKinematics_get_version_info(self)
1493  __swig_destroy__ = _IMP_kinematics.delete_ProteinKinematics
1494 
1495  def build_topology_graph(self):
1496  r"""build_topology_graph(ProteinKinematics self)"""
1497  return _IMP_kinematics.ProteinKinematics_build_topology_graph(self)
1498 
1499  def order_rigid_bodies(self, dihedral_angles, phi_angles, psi_angles, chi1_angles, chi2_angles, chi3_angles, chi4_angles, chi5_angles, open_loop_bond_atoms):
1500  r"""order_rigid_bodies(ProteinKinematics self, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & dihedral_angles, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & phi_angles, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & psi_angles, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & chi1_angles, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & chi2_angles, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & chi3_angles, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & chi4_angles, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & chi5_angles, IMP::atom::Atoms open_loop_bond_atoms)"""
1501  return _IMP_kinematics.ProteinKinematics_order_rigid_bodies(self, dihedral_angles, phi_angles, psi_angles, chi1_angles, chi2_angles, chi3_angles, chi4_angles, chi5_angles, open_loop_bond_atoms)
1502 
1503  def mark_rotatable_angles(self, dihedral_angles):
1504  r"""mark_rotatable_angles(ProteinKinematics self, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & dihedral_angles)"""
1505  return _IMP_kinematics.ProteinKinematics_mark_rotatable_angles(self, dihedral_angles)
1506 
1507  def mark_rotatable_angle(self, dihedral_angle):
1508  r"""mark_rotatable_angle(ProteinKinematics self, std::vector< IMP::atom::Atom,std::allocator< IMP::atom::Atom > > const & dihedral_angle)"""
1509  return _IMP_kinematics.ProteinKinematics_mark_rotatable_angle(self, dihedral_angle)
1510 
1511  def build_rigid_bodies(self):
1512  r"""build_rigid_bodies(ProteinKinematics self)"""
1513  return _IMP_kinematics.ProteinKinematics_build_rigid_bodies(self)
1514 
1515  def add_dihedral_joints(self, residues, angle_type, dihedral_angles):
1516  r"""add_dihedral_joints(ProteinKinematics self, std::vector< IMP::atom::Residue,std::allocator< IMP::atom::Residue > > const & residues, IMP::kinematics::ProteinAngleType angle_type, std::vector< IMP::atom::Atoms,std::allocator< IMP::atom::Atoms > > const & dihedral_angles)"""
1517  return _IMP_kinematics.ProteinKinematics_add_dihedral_joints(self, residues, angle_type, dihedral_angles)
1518 
1519  def add_dihedral_joint(self, r, angle_type, atoms):
1520  r"""add_dihedral_joint(ProteinKinematics self, Residue r, IMP::kinematics::ProteinAngleType angle_type, IMP::atom::Atoms const & atoms)"""
1521  return _IMP_kinematics.ProteinKinematics_add_dihedral_joint(self, r, angle_type, atoms)
1522 
1523  def open_loop(self, open_loop_bond_atoms):
1524  r"""open_loop(ProteinKinematics self, IMP::atom::Atoms open_loop_bond_atoms)"""
1525  return _IMP_kinematics.ProteinKinematics_open_loop(self, open_loop_bond_atoms)
1526 
1527  def get_phi_joint(self, r):
1528  r"""get_phi_joint(ProteinKinematics self, Residue r) -> DihedralAngleRevoluteJoint"""
1529  return _IMP_kinematics.ProteinKinematics_get_phi_joint(self, r)
1530 
1531  def get_psi_joint(self, r):
1532  r"""get_psi_joint(ProteinKinematics self, Residue r) -> DihedralAngleRevoluteJoint"""
1533  return _IMP_kinematics.ProteinKinematics_get_psi_joint(self, r)
1534 
1535  def get_other_joint(self, r):
1536  r"""get_other_joint(ProteinKinematics self, Residue r) -> DihedralAngleRevoluteJoint"""
1537  return _IMP_kinematics.ProteinKinematics_get_other_joint(self, r)
1538 
1539  def get_chi1_joint(self, r):
1540  r"""get_chi1_joint(ProteinKinematics self, Residue r) -> DihedralAngleRevoluteJoint"""
1541  return _IMP_kinematics.ProteinKinematics_get_chi1_joint(self, r)
1542 
1543  def get_chi2_joint(self, r):
1544  r"""get_chi2_joint(ProteinKinematics self, Residue r) -> DihedralAngleRevoluteJoint"""
1545  return _IMP_kinematics.ProteinKinematics_get_chi2_joint(self, r)
1546 
1547  def get_chi3_joint(self, r):
1548  r"""get_chi3_joint(ProteinKinematics self, Residue r) -> DihedralAngleRevoluteJoint"""
1549  return _IMP_kinematics.ProteinKinematics_get_chi3_joint(self, r)
1550 
1551  def get_chi4_joint(self, r):
1552  r"""get_chi4_joint(ProteinKinematics self, Residue r) -> DihedralAngleRevoluteJoint"""
1553  return _IMP_kinematics.ProteinKinematics_get_chi4_joint(self, r)
1554 
1555  def get_chi5_joint(self, r):
1556  r"""get_chi5_joint(ProteinKinematics self, Residue r) -> DihedralAngleRevoluteJoint"""
1557  return _IMP_kinematics.ProteinKinematics_get_chi5_joint(self, r)
1558 
1559  def get_joint(self, r, angle):
1560  r"""get_joint(ProteinKinematics self, Residue r, IMP::kinematics::ProteinAngleType angle) -> DihedralAngleRevoluteJoint"""
1561  return _IMP_kinematics.ProteinKinematics_get_joint(self, r, angle)
1562 
1563  def __str__(self):
1564  r"""__str__(ProteinKinematics self) -> std::string"""
1565  return _IMP_kinematics.ProteinKinematics___str__(self)
1566 
1567  def __repr__(self):
1568  r"""__repr__(ProteinKinematics self) -> std::string"""
1569  return _IMP_kinematics.ProteinKinematics___repr__(self)
1570 
1571  @staticmethod
1572  def get_from(o):
1573  return _object_cast_to_ProteinKinematics(o)
1574 
1575 
1576 # Register ProteinKinematics in _IMP_kinematics:
1577 _IMP_kinematics.ProteinKinematics_swigregister(ProteinKinematics)
1578 class LocalPlanner(IMP.Object):
1579  r"""Proxy of C++ IMP::kinematics::LocalPlanner class."""
1580 
1581  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1582 
1583  def __init__(self, *args, **kwargs):
1584  raise AttributeError("No constructor defined - class is abstract")
1585 
1586  def get_version_info(self):
1587  r"""get_version_info(LocalPlanner self) -> VersionInfo"""
1588  return _IMP_kinematics.LocalPlanner_get_version_info(self)
1589  __swig_destroy__ = _IMP_kinematics.delete_LocalPlanner
1590 
1591  def plan(self, q_near, q_rand, sf):
1592  r"""plan(LocalPlanner self, DOFValues q_near, DOFValues q_rand, ScoringFunction sf) -> std::vector< IMP::kinematics::DOFValues,std::allocator< IMP::kinematics::DOFValues > >"""
1593  return _IMP_kinematics.LocalPlanner_plan(self, q_near, q_rand, sf)
1594 
1595  def is_valid(self, values, sf):
1596  r"""is_valid(LocalPlanner self, DOFValues values, ScoringFunction sf) -> bool"""
1597  return _IMP_kinematics.LocalPlanner_is_valid(self, values, sf)
1598 
1599  def __str__(self):
1600  r"""__str__(LocalPlanner self) -> std::string"""
1601  return _IMP_kinematics.LocalPlanner___str__(self)
1602 
1603  def __repr__(self):
1604  r"""__repr__(LocalPlanner self) -> std::string"""
1605  return _IMP_kinematics.LocalPlanner___repr__(self)
1606 
1607  @staticmethod
1608  def get_from(o):
1609  return _object_cast_to_LocalPlanner(o)
1610 
1611 
1612 # Register LocalPlanner in _IMP_kinematics:
1613 _IMP_kinematics.LocalPlanner_swigregister(LocalPlanner)
1614 class PathLocalPlanner(LocalPlanner):
1615  r"""Proxy of C++ IMP::kinematics::PathLocalPlanner class."""
1616 
1617  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1618 
1619  def __init__(self, model, dofs_sampler, directional_dof, save_step_interval=1):
1620  r"""__init__(PathLocalPlanner self, Model model, DOFsSampler dofs_sampler, DirectionalDOF directional_dof, int save_step_interval=1) -> PathLocalPlanner"""
1621  _IMP_kinematics.PathLocalPlanner_swiginit(self, _IMP_kinematics.new_PathLocalPlanner(model, dofs_sampler, directional_dof, save_step_interval))
1622 
1623  def __str__(self):
1624  r"""__str__(PathLocalPlanner self) -> std::string"""
1625  return _IMP_kinematics.PathLocalPlanner___str__(self)
1626 
1627  def __repr__(self):
1628  r"""__repr__(PathLocalPlanner self) -> std::string"""
1629  return _IMP_kinematics.PathLocalPlanner___repr__(self)
1630 
1631  @staticmethod
1632  def get_from(o):
1633  return _object_cast_to_PathLocalPlanner(o)
1634 
1635  __swig_destroy__ = _IMP_kinematics.delete_PathLocalPlanner
1636 
1637 # Register PathLocalPlanner in _IMP_kinematics:
1638 _IMP_kinematics.PathLocalPlanner_swigregister(PathLocalPlanner)
1639 class RRT(IMP.Sampler):
1640  r"""Proxy of C++ IMP::kinematics::RRT class."""
1641 
1642  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1643 
1644  def get_version_info(self):
1645  r"""get_version_info(RRT self) -> VersionInfo"""
1646  return _IMP_kinematics.RRT_get_version_info(self)
1647  __swig_destroy__ = _IMP_kinematics.delete_RRT
1648 
1649  def __init__(self, m, sampler, planner, cspace_dofs, iteration_number=1000, tree_size=100, number_of_sampled_dofs=0):
1650  r"""__init__(RRT self, Model m, DOFsSampler sampler, LocalPlanner planner, IMP::kinematics::DOFs const & cspace_dofs, unsigned int iteration_number=1000, unsigned int tree_size=100, unsigned int number_of_sampled_dofs=0) -> RRT"""
1651  _IMP_kinematics.RRT_swiginit(self, _IMP_kinematics.new_RRT(m, sampler, planner, cspace_dofs, iteration_number, tree_size, number_of_sampled_dofs))
1652 
1653  def do_sample(self):
1654  r"""do_sample(RRT self) -> ConfigurationSet"""
1655  return _IMP_kinematics.RRT_do_sample(self)
1656 
1657  def run(self, number_of_iterations=0):
1658  r"""run(RRT self, unsigned int number_of_iterations=0) -> bool"""
1659  return _IMP_kinematics.RRT_run(self, number_of_iterations)
1660 
1661  def get_DOFValuesList(self):
1662  r"""get_DOFValuesList(RRT self) -> IMP::kinematics::DOFValuesList"""
1663  return _IMP_kinematics.RRT_get_DOFValuesList(self)
1664 
1665  def set_number_of_iterations(self, num):
1666  r"""set_number_of_iterations(RRT self, unsigned int num)"""
1667  return _IMP_kinematics.RRT_set_number_of_iterations(self, num)
1668 
1669  def set_tree_size(self, num):
1670  r"""set_tree_size(RRT self, unsigned int num)"""
1671  return _IMP_kinematics.RRT_set_tree_size(self, num)
1672 
1673  def set_actual_tree_size(self, num):
1674  r"""set_actual_tree_size(RRT self, unsigned int num)"""
1675  return _IMP_kinematics.RRT_set_actual_tree_size(self, num)
1676 
1677  def set_number_of_collisions(self, num):
1678  r"""set_number_of_collisions(RRT self, unsigned int num)"""
1679  return _IMP_kinematics.RRT_set_number_of_collisions(self, num)
1680 
1681  def check_initial_configuration(self, sf):
1682  r"""check_initial_configuration(RRT self, ScoringFunction sf)"""
1683  return _IMP_kinematics.RRT_check_initial_configuration(self, sf)
1684 
1685  def __str__(self):
1686  r"""__str__(RRT self) -> std::string"""
1687  return _IMP_kinematics.RRT___str__(self)
1688 
1689  def __repr__(self):
1690  r"""__repr__(RRT self) -> std::string"""
1691  return _IMP_kinematics.RRT___repr__(self)
1692 
1693  @staticmethod
1694  def get_from(o):
1695  return _object_cast_to_RRT(o)
1696 
1697 
1698 # Register RRT in _IMP_kinematics:
1699 _IMP_kinematics.RRT_swigregister(RRT)
1700 
1701 def get_module_name():
1702  r"""get_module_name() -> std::string const"""
1703  return _IMP_kinematics.get_module_name()
1704 
1705 def get_module_version():
1706  r"""get_module_version() -> std::string const"""
1707  return _IMP_kinematics.get_module_version()
1708 
1709 def get_example_path(fname):
1710  r"""get_example_path(std::string fname) -> std::string"""
1711  return _IMP_kinematics.get_example_path(fname)
1712 
1713 def get_data_path(fname):
1714  r"""get_data_path(std::string fname) -> std::string"""
1715  return _IMP_kinematics.get_data_path(fname)
1716 
1717 from . import _version_check
1718 _version_check.check_version(get_module_version())
1719 __version__ = get_module_version()
1720 
1721 
Various classes to hold sets of particles.
Make CGAL functionality available to IMP.
Base class for all samplers.
Definition: Sampler.h:31
virtual ModelObjectsTemp do_get_outputs(Model *m, const ParticleIndexes &pis) const =0
Overload this method to specify the outputs.
Composable functors to implement scores via compile-time composition.
double get_angle(const Line3D &a, const Line3D &b)
Get angle in radians between two lines around their closest points.
virtual void do_destroy()
Definition: Object.h:274
Common base class for heavy weight IMP objects.
Definition: Object.h:111
ScoreStates maintain invariants in the Model.
Definition: ScoreState.h:56
A base class for classes which perturb particles.
virtual ModelObjectsTemp do_get_inputs(Model *m, const ParticleIndexes &pis) const =0
Overload this method to specify the inputs.
double get_distance(const VectorD< D > &v1, const VectorD< D > &v2)
Compute the distance between two vectors.
Definition: VectorD.h:195
Basic functionality that is expected to be used by a wide variety of IMP users.
General purpose algebraic and geometric methods that are expected to be used by a wide variety of IMP...
std::string get_module_version()
Return the version of this module, as a string.
virtual VersionInfo get_version_info() const
Get information about the module and version of the object.
Definition: Object.h:206
std::string get_example_path(std::string file_name)
Return the full path to one of this module's example files.
Output IMP model data in various file formats.
Functionality for loading, creating, manipulating and scoring atomic structures.
std::string get_data_path(std::string file_name)
Return the full path to one of this module's data files.
Support for small angle X-ray scattering (SAXS) data.