11 from __future__
import print_function, division, absolute_import
15 from sys
import version_info
as _swig_python_version_info
19 import builtins
as __builtin__
25 strthis =
"proxy of " + self.this.__repr__()
26 except __builtin__.Exception:
28 return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
31 def _swig_setattr_nondynamic_instance_variable(set):
32 def set_instance_attr(self, name, value):
34 set(self, name, value)
35 elif name ==
"thisown":
37 elif hasattr(self, name)
and isinstance(getattr(type(self), name), property):
38 set(self, name, value)
40 raise AttributeError(
"You cannot add instance attributes to %s" % self)
41 return set_instance_attr
44 def _swig_setattr_nondynamic_class_variable(set):
45 def set_class_attr(cls, name, value):
46 if hasattr(cls, name)
and not isinstance(getattr(cls, name), property):
49 raise AttributeError(
"You cannot add class attributes to %s" % cls)
53 def _swig_add_metaclass(metaclass):
54 """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
56 return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
60 class _SwigNonDynamicMeta(type):
61 """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
62 __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)
67 class IMP_GSL_SwigPyIterator(object):
68 r"""Proxy of C++ swig::IMP_GSL_SwigPyIterator class."""
70 thisown = property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
"The membership flag")
72 def __init__(self, *args, **kwargs):
73 raise AttributeError(
"No constructor defined - class is abstract")
75 __swig_destroy__ = _IMP_gsl.delete_IMP_GSL_SwigPyIterator
78 r"""value(IMP_GSL_SwigPyIterator self) -> PyObject *"""
79 return _IMP_gsl.IMP_GSL_SwigPyIterator_value(self)
82 r"""incr(IMP_GSL_SwigPyIterator self, size_t n=1) -> IMP_GSL_SwigPyIterator"""
83 return _IMP_gsl.IMP_GSL_SwigPyIterator_incr(self, n)
86 r"""decr(IMP_GSL_SwigPyIterator self, size_t n=1) -> IMP_GSL_SwigPyIterator"""
87 return _IMP_gsl.IMP_GSL_SwigPyIterator_decr(self, n)
89 def distance(self, x):
90 r"""distance(IMP_GSL_SwigPyIterator self, IMP_GSL_SwigPyIterator x) -> ptrdiff_t"""
91 return _IMP_gsl.IMP_GSL_SwigPyIterator_distance(self, x)
94 r"""equal(IMP_GSL_SwigPyIterator self, IMP_GSL_SwigPyIterator x) -> bool"""
95 return _IMP_gsl.IMP_GSL_SwigPyIterator_equal(self, x)
98 r"""copy(IMP_GSL_SwigPyIterator self) -> IMP_GSL_SwigPyIterator"""
99 return _IMP_gsl.IMP_GSL_SwigPyIterator_copy(self)
102 r"""next(IMP_GSL_SwigPyIterator self) -> PyObject *"""
103 return _IMP_gsl.IMP_GSL_SwigPyIterator_next(self)
106 r"""__next__(IMP_GSL_SwigPyIterator self) -> PyObject *"""
107 return _IMP_gsl.IMP_GSL_SwigPyIterator___next__(self)
110 r"""previous(IMP_GSL_SwigPyIterator self) -> PyObject *"""
111 return _IMP_gsl.IMP_GSL_SwigPyIterator_previous(self)
113 def advance(self, n):
114 r"""advance(IMP_GSL_SwigPyIterator self, ptrdiff_t n) -> IMP_GSL_SwigPyIterator"""
115 return _IMP_gsl.IMP_GSL_SwigPyIterator_advance(self, n)
118 r"""__eq__(IMP_GSL_SwigPyIterator self, IMP_GSL_SwigPyIterator x) -> bool"""
119 return _IMP_gsl.IMP_GSL_SwigPyIterator___eq__(self, x)
122 r"""__ne__(IMP_GSL_SwigPyIterator self, IMP_GSL_SwigPyIterator x) -> bool"""
123 return _IMP_gsl.IMP_GSL_SwigPyIterator___ne__(self, x)
125 def __iadd__(self, n):
126 r"""__iadd__(IMP_GSL_SwigPyIterator self, ptrdiff_t n) -> IMP_GSL_SwigPyIterator"""
127 return _IMP_gsl.IMP_GSL_SwigPyIterator___iadd__(self, n)
129 def __isub__(self, n):
130 r"""__isub__(IMP_GSL_SwigPyIterator self, ptrdiff_t n) -> IMP_GSL_SwigPyIterator"""
131 return _IMP_gsl.IMP_GSL_SwigPyIterator___isub__(self, n)
133 def __add__(self, n):
134 r"""__add__(IMP_GSL_SwigPyIterator self, ptrdiff_t n) -> IMP_GSL_SwigPyIterator"""
135 return _IMP_gsl.IMP_GSL_SwigPyIterator___add__(self, n)
137 def __sub__(self, *args):
139 __sub__(IMP_GSL_SwigPyIterator self, ptrdiff_t n) -> IMP_GSL_SwigPyIterator
140 __sub__(IMP_GSL_SwigPyIterator self, IMP_GSL_SwigPyIterator x) -> ptrdiff_t
142 return _IMP_gsl.IMP_GSL_SwigPyIterator___sub__(self, *args)
147 _IMP_gsl.IMP_GSL_SwigPyIterator_swigregister(IMP_GSL_SwigPyIterator)
154 IMP_DEBUG = _IMP_gsl.IMP_DEBUG
156 IMP_RELEASE = _IMP_gsl.IMP_RELEASE
158 IMP_SILENT = _IMP_gsl.IMP_SILENT
160 IMP_PROGRESS = _IMP_gsl.IMP_PROGRESS
162 IMP_TERSE = _IMP_gsl.IMP_TERSE
164 IMP_VERBOSE = _IMP_gsl.IMP_VERBOSE
166 IMP_MEMORY = _IMP_gsl.IMP_MEMORY
168 IMP_NONE = _IMP_gsl.IMP_NONE
170 IMP_USAGE = _IMP_gsl.IMP_USAGE
172 IMP_INTERNAL = _IMP_gsl.IMP_INTERNAL
174 IMP_KERNEL_HAS_LOG4CXX = _IMP_gsl.IMP_KERNEL_HAS_LOG4CXX
176 IMP_COMPILER_HAS_CEREAL_RAW_POINTER = _IMP_gsl.IMP_COMPILER_HAS_CEREAL_RAW_POINTER
178 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_gsl.IMP_COMPILER_HAS_DEBUG_VECTOR
180 IMP_COMPILER_HAS_RANDOM_SHUFFLE = _IMP_gsl.IMP_COMPILER_HAS_RANDOM_SHUFFLE
182 IMP_COMPILER_HAS_THREE_WAY = _IMP_gsl.IMP_COMPILER_HAS_THREE_WAY
184 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_gsl.IMP_KERNEL_HAS_BOOST_RANDOM
186 IMP_KERNEL_HAS_NUMPY = _IMP_gsl.IMP_KERNEL_HAS_NUMPY
188 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_gsl.IMP_KERNEL_HAS_GPERFTOOLS
190 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_gsl.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
192 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_gsl.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
194 IMPKERNEL_SHOW_WARNINGS = _IMP_gsl.IMPKERNEL_SHOW_WARNINGS
198 class _DirectorObjects(object):
199 """@internal Simple class to keep references to director objects
200 to prevent premature deletion."""
203 def register(self, obj):
204 """Take a reference to a director object; will only work for
205 refcounted C++ classes"""
206 if hasattr(obj,
'get_ref_count'):
207 self._objects.append(obj)
209 """Only drop our reference and allow cleanup by Python if no other
210 Python references exist (we hold 3 references: one in self._objects,
211 one in x, and one in the argument list for getrefcount) *and* no
212 other C++ references exist (the Python object always holds one)"""
213 objs = [x
for x
in self._objects
if sys.getrefcount(x) > 3 \
214 or x.get_ref_count() > 1]
218 def get_object_count(self):
219 """Get number of director objects (useful for testing only)"""
220 return len(self._objects)
221 _director_objects = _DirectorObjects()
223 class _ostream(object):
224 r"""Proxy of C++ std::ostream class."""
226 thisown = property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
"The membership flag")
228 def __init__(self, *args, **kwargs):
229 raise AttributeError(
"No constructor defined")
230 __repr__ = _swig_repr
232 def write(self, osa_buf):
233 r"""write(_ostream self, char const * osa_buf)"""
234 return _IMP_gsl._ostream_write(self, osa_buf)
237 _IMP_gsl._ostream_swigregister(_ostream)
238 IMP_C_OPEN_BINARY = _IMP_gsl.IMP_C_OPEN_BINARY
241 IMP_CGAL_HAS_BOOST_FILESYSTEM = _IMP_gsl.IMP_CGAL_HAS_BOOST_FILESYSTEM
243 IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS = _IMP_gsl.IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS
245 IMP_CGAL_HAS_BOOST_RANDOM = _IMP_gsl.IMP_CGAL_HAS_BOOST_RANDOM
247 IMP_CGAL_HAS_BOOST_SYSTEM = _IMP_gsl.IMP_CGAL_HAS_BOOST_SYSTEM
249 IMP_CGAL_HAS_NUMPY = _IMP_gsl.IMP_CGAL_HAS_NUMPY
251 IMPCGAL_SHOW_WARNINGS = _IMP_gsl.IMPCGAL_SHOW_WARNINGS
254 IMP_ALGEBRA_HAS_IMP_CGAL = _IMP_gsl.IMP_ALGEBRA_HAS_IMP_CGAL
256 IMP_ALGEBRA_HAS_BOOST_FILESYSTEM = _IMP_gsl.IMP_ALGEBRA_HAS_BOOST_FILESYSTEM
258 IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS = _IMP_gsl.IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS
260 IMP_ALGEBRA_HAS_BOOST_RANDOM = _IMP_gsl.IMP_ALGEBRA_HAS_BOOST_RANDOM
262 IMP_ALGEBRA_HAS_BOOST_SYSTEM = _IMP_gsl.IMP_ALGEBRA_HAS_BOOST_SYSTEM
264 IMP_ALGEBRA_HAS_CGAL = _IMP_gsl.IMP_ALGEBRA_HAS_CGAL
266 IMP_ALGEBRA_HAS_NUMPY = _IMP_gsl.IMP_ALGEBRA_HAS_NUMPY
268 IMP_ALGEBRA_HAS_ANN = _IMP_gsl.IMP_ALGEBRA_HAS_ANN
270 IMPALGEBRA_SHOW_WARNINGS = _IMP_gsl.IMPALGEBRA_SHOW_WARNINGS
273 IMP_GSL_HAS_IMP_CGAL = _IMP_gsl.IMP_GSL_HAS_IMP_CGAL
275 IMP_GSL_HAS_BOOST_FILESYSTEM = _IMP_gsl.IMP_GSL_HAS_BOOST_FILESYSTEM
277 IMP_GSL_HAS_BOOST_PROGRAMOPTIONS = _IMP_gsl.IMP_GSL_HAS_BOOST_PROGRAMOPTIONS
279 IMP_GSL_HAS_BOOST_RANDOM = _IMP_gsl.IMP_GSL_HAS_BOOST_RANDOM
281 IMP_GSL_HAS_BOOST_SYSTEM = _IMP_gsl.IMP_GSL_HAS_BOOST_SYSTEM
283 IMP_GSL_HAS_CGAL = _IMP_gsl.IMP_GSL_HAS_CGAL
285 IMP_GSL_HAS_NUMPY = _IMP_gsl.IMP_GSL_HAS_NUMPY
287 IMPGSL_SHOW_WARNINGS = _IMP_gsl.IMPGSL_SHOW_WARNINGS
290 _object_types.append(
"GSLOptimizer")
293 def _object_cast_to_GSLOptimizer(o):
294 r"""_object_cast_to_GSLOptimizer(Object o) -> GSLOptimizer"""
295 return _IMP_gsl._object_cast_to_GSLOptimizer(o)
297 _object_types.append(
"ConjugateGradients")
300 def _object_cast_to_ConjugateGradients(o):
301 r"""_object_cast_to_ConjugateGradients(Object o) -> ConjugateGradients"""
302 return _IMP_gsl._object_cast_to_ConjugateGradients(o)
304 _object_types.append(
"QuasiNewton")
307 def _object_cast_to_QuasiNewton(o):
308 r"""_object_cast_to_QuasiNewton(Object o) -> QuasiNewton"""
309 return _IMP_gsl._object_cast_to_QuasiNewton(o)
311 _object_types.append(
"Simplex")
314 def _object_cast_to_Simplex(o):
315 r"""_object_cast_to_Simplex(Object o) -> Simplex"""
316 return _IMP_gsl._object_cast_to_Simplex(o)
318 r"""Proxy of C++ IMP::gsl::GSLOptimizer class."""
320 thisown = property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
"The membership flag")
322 def __init__(self, m):
323 r"""__init__(GSLOptimizer self, Model m) -> GSLOptimizer"""
324 if self.__class__ == GSLOptimizer:
328 _IMP_gsl.GSLOptimizer_swiginit(self, _IMP_gsl.new_GSLOptimizer(_self, m))
330 if self.__class__ != GSLOptimizer:
331 _director_objects.register(self)
335 __swig_destroy__ = _IMP_gsl.delete_GSLOptimizer
337 def set_stop_score(self, d):
338 r"""set_stop_score(GSLOptimizer self, double d)"""
339 return _IMP_gsl.GSLOptimizer_set_stop_score(self, d)
342 r"""__str__(GSLOptimizer self) -> std::string"""
343 return _IMP_gsl.GSLOptimizer___str__(self)
346 r"""__repr__(GSLOptimizer self) -> std::string"""
347 return _IMP_gsl.GSLOptimizer___repr__(self)
351 return _object_cast_to_GSLOptimizer(o)
354 def get_type_name(self):
355 return self.__class__.__name__
356 def do_show(self, out):
359 if"IMP::gsl" ==
"IMP":
360 return VersionInfo(self.__module__,
367 return _object_cast_to_GSLOptimizer(o)
369 def __disown__(self):
371 _IMP_gsl.disown_GSLOptimizer(self)
372 return weakref.proxy(self)
375 r"""do_destroy(GSLOptimizer self)"""
376 return _IMP_gsl.GSLOptimizer_do_destroy(self)
378 def handle_set_has_required_score_states(self, arg0):
379 r"""handle_set_has_required_score_states(GSLOptimizer self, bool arg0)"""
380 return _IMP_gsl.GSLOptimizer_handle_set_has_required_score_states(self, arg0)
383 r"""do_get_inputs(GSLOptimizer self) -> IMP::ModelObjectsTemp"""
384 return _IMP_gsl.GSLOptimizer_do_get_inputs(self)
387 r"""do_get_outputs(GSLOptimizer self) -> IMP::ModelObjectsTemp"""
388 return _IMP_gsl.GSLOptimizer_do_get_outputs(self)
390 def do_get_interactions(self):
391 r"""do_get_interactions(GSLOptimizer self) -> IMP::ModelObjectsTemps"""
392 return _IMP_gsl.GSLOptimizer_do_get_interactions(self)
394 def do_optimize(self, ns):
395 r"""do_optimize(GSLOptimizer self, unsigned int ns) -> double"""
396 return _IMP_gsl.GSLOptimizer_do_optimize(self, ns)
399 _IMP_gsl.GSLOptimizer_swigregister(GSLOptimizer)
400 class ConjugateGradients(GSLOptimizer):
401 r"""Proxy of C++ IMP::gsl::ConjugateGradients class."""
403 thisown = property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
"The membership flag")
405 def __init__(self, m):
406 r"""__init__(ConjugateGradients self, Model m) -> ConjugateGradients"""
407 _IMP_gsl.ConjugateGradients_swiginit(self, _IMP_gsl.new_ConjugateGradients(m))
409 def set_threshold(self, mg):
410 r"""set_threshold(ConjugateGradients self, double mg)"""
411 return _IMP_gsl.ConjugateGradients_set_threshold(self, mg)
413 def do_optimize(self, max_steps):
414 r"""do_optimize(ConjugateGradients self, unsigned int max_steps) -> IMP::Float"""
415 return _IMP_gsl.ConjugateGradients_do_optimize(self, max_steps)
418 r"""get_version_info(ConjugateGradients self) -> VersionInfo"""
419 return _IMP_gsl.ConjugateGradients_get_version_info(self)
420 __swig_destroy__ = _IMP_gsl.delete_ConjugateGradients
423 r"""__str__(ConjugateGradients self) -> std::string"""
424 return _IMP_gsl.ConjugateGradients___str__(self)
427 r"""__repr__(ConjugateGradients self) -> std::string"""
428 return _IMP_gsl.ConjugateGradients___repr__(self)
432 return _object_cast_to_ConjugateGradients(o)
436 _IMP_gsl.ConjugateGradients_swigregister(ConjugateGradients)
437 class QuasiNewton(GSLOptimizer):
438 r"""Proxy of C++ IMP::gsl::QuasiNewton class."""
440 thisown = property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
"The membership flag")
442 def __init__(self, m):
443 r"""__init__(QuasiNewton self, Model m) -> QuasiNewton"""
444 _IMP_gsl.QuasiNewton_swiginit(self, _IMP_gsl.new_QuasiNewton(m))
446 def set_initial_step(self, length):
447 r"""set_initial_step(QuasiNewton self, double length)"""
448 return _IMP_gsl.QuasiNewton_set_initial_step(self, length)
450 def set_line_step(self, d):
451 r"""set_line_step(QuasiNewton self, double d)"""
452 return _IMP_gsl.QuasiNewton_set_line_step(self, d)
454 def set_minimum_gradient(self, d):
455 r"""set_minimum_gradient(QuasiNewton self, double d)"""
456 return _IMP_gsl.QuasiNewton_set_minimum_gradient(self, d)
458 def do_optimize(self, max_steps):
459 r"""do_optimize(QuasiNewton self, unsigned int max_steps) -> IMP::Float"""
460 return _IMP_gsl.QuasiNewton_do_optimize(self, max_steps)
463 r"""get_version_info(QuasiNewton self) -> VersionInfo"""
464 return _IMP_gsl.QuasiNewton_get_version_info(self)
465 __swig_destroy__ = _IMP_gsl.delete_QuasiNewton
468 r"""__str__(QuasiNewton self) -> std::string"""
469 return _IMP_gsl.QuasiNewton___str__(self)
472 r"""__repr__(QuasiNewton self) -> std::string"""
473 return _IMP_gsl.QuasiNewton___repr__(self)
477 return _object_cast_to_QuasiNewton(o)
481 _IMP_gsl.QuasiNewton_swigregister(QuasiNewton)
482 class Simplex(GSLOptimizer):
483 r"""Proxy of C++ IMP::gsl::Simplex class."""
485 thisown = property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
"The membership flag")
487 def __init__(self, m):
488 r"""__init__(Simplex self, Model m) -> Simplex"""
489 _IMP_gsl.Simplex_swiginit(self, _IMP_gsl.new_Simplex(m))
491 def set_initial_length(self, length):
492 r"""set_initial_length(Simplex self, double length)"""
493 return _IMP_gsl.Simplex_set_initial_length(self, length)
495 def set_minimum_size(self, d):
496 r"""set_minimum_size(Simplex self, double d)"""
497 return _IMP_gsl.Simplex_set_minimum_size(self, d)
499 def do_optimize(self, max_steps):
500 r"""do_optimize(Simplex self, unsigned int max_steps) -> IMP::Float"""
501 return _IMP_gsl.Simplex_do_optimize(self, max_steps)
504 r"""get_version_info(Simplex self) -> VersionInfo"""
505 return _IMP_gsl.Simplex_get_version_info(self)
506 __swig_destroy__ = _IMP_gsl.delete_Simplex
509 r"""__str__(Simplex self) -> std::string"""
510 return _IMP_gsl.Simplex___str__(self)
513 r"""__repr__(Simplex self) -> std::string"""
514 return _IMP_gsl.Simplex___repr__(self)
518 return _object_cast_to_Simplex(o)
522 _IMP_gsl.Simplex_swigregister(Simplex)
525 r"""get_module_version() -> std::string const"""
526 return _IMP_gsl.get_module_version()
529 r"""get_example_path(std::string fname) -> std::string"""
530 return _IMP_gsl.get_example_path(fname)
533 r"""get_data_path(std::string fname) -> std::string"""
534 return _IMP_gsl.get_data_path(fname)
536 from .
import _version_check
Make CGAL functionality available to IMP.
virtual ModelObjectsTemp do_get_outputs(Model *m, const ParticleIndexes &pis) const =0
Overload this method to specify the outputs.
virtual void do_destroy()
virtual ModelObjectsTemp do_get_inputs(Model *m, const ParticleIndexes &pis) const =0
Overload this method to specify the inputs.
Version and module information for Objects.
Base class for optimizers that act on individual attributes.
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.
std::string get_example_path(std::string file_name)
Return the full path to one of this module's example files.
std::string get_data_path(std::string file_name)
Return the full path to one of this module's data files.