10 from __future__
import print_function, division, absolute_import
15 from sys
import version_info
as _swig_python_version_info
16 if _swig_python_version_info >= (2, 7, 0):
17 def swig_import_helper():
19 pkg = __name__.rpartition(
'.')[0]
20 mname =
'.'.join((pkg,
'_IMP_gsl')).lstrip(
'.')
22 return importlib.import_module(mname)
24 return importlib.import_module(
'_IMP_gsl')
25 _IMP_gsl = swig_import_helper()
26 del swig_import_helper
27 elif _swig_python_version_info >= (2, 6, 0):
28 def swig_import_helper():
29 from os.path
import dirname
33 fp, pathname, description = imp.find_module(
'_IMP_gsl', [dirname(__file__)])
39 _mod = imp.load_module(
'_IMP_gsl', fp, pathname, description)
43 _IMP_gsl = swig_import_helper()
44 del swig_import_helper
47 del _swig_python_version_info
49 _swig_property = property
54 import builtins
as __builtin__
58 def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
59 if (name ==
"thisown"):
60 return self.this.own(value)
62 if type(value).__name__ ==
'SwigPyObject':
63 self.__dict__[name] = value
65 method = class_type.__swig_setmethods__.get(name,
None)
67 return method(self, value)
69 object.__setattr__(self, name, value)
71 raise AttributeError(
"You cannot add attributes to %s" % self)
74 def _swig_setattr(self, class_type, name, value):
75 return _swig_setattr_nondynamic(self, class_type, name, value, 0)
78 def _swig_getattr(self, class_type, name):
79 if (name ==
"thisown"):
80 return self.this.own()
81 method = class_type.__swig_getmethods__.get(name,
None)
84 raise AttributeError(
"'%s' object has no attribute '%s'" % (class_type.__name__, name))
89 strthis =
"proxy of " + self.this.__repr__()
90 except __builtin__.Exception:
92 return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
95 def _swig_setattr_nondynamic_method(set):
96 def set_attr(self, name, value):
97 if (name ==
"thisown"):
98 return self.this.own(value)
99 if hasattr(self, name)
or (name ==
"this"):
100 set(self, name, value)
102 raise AttributeError(
"You cannot add attributes to %s" % self)
108 weakref_proxy = weakref.proxy
109 except __builtin__.Exception:
110 weakref_proxy =
lambda x: x
113 class IMP_GSL_SwigPyIterator(object):
114 """Proxy of C++ swig::IMP_GSL_SwigPyIterator class."""
116 thisown = _swig_property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
'The membership flag')
118 def __init__(self, *args, **kwargs):
119 raise AttributeError(
"No constructor defined - class is abstract")
120 __repr__ = _swig_repr
121 __swig_destroy__ = _IMP_gsl.delete_IMP_GSL_SwigPyIterator
122 __del__ =
lambda self:
None
125 """value(IMP_GSL_SwigPyIterator self) -> PyObject *"""
126 return _IMP_gsl.IMP_GSL_SwigPyIterator_value(self)
131 incr(IMP_GSL_SwigPyIterator self, size_t n=1) -> IMP_GSL_SwigPyIterator
132 incr(IMP_GSL_SwigPyIterator self) -> IMP_GSL_SwigPyIterator
134 return _IMP_gsl.IMP_GSL_SwigPyIterator_incr(self, n)
139 decr(IMP_GSL_SwigPyIterator self, size_t n=1) -> IMP_GSL_SwigPyIterator
140 decr(IMP_GSL_SwigPyIterator self) -> IMP_GSL_SwigPyIterator
142 return _IMP_gsl.IMP_GSL_SwigPyIterator_decr(self, n)
145 def distance(self, x):
146 """distance(IMP_GSL_SwigPyIterator self, IMP_GSL_SwigPyIterator x) -> ptrdiff_t"""
147 return _IMP_gsl.IMP_GSL_SwigPyIterator_distance(self, x)
151 """equal(IMP_GSL_SwigPyIterator self, IMP_GSL_SwigPyIterator x) -> bool"""
152 return _IMP_gsl.IMP_GSL_SwigPyIterator_equal(self, x)
156 """copy(IMP_GSL_SwigPyIterator self) -> IMP_GSL_SwigPyIterator"""
157 return _IMP_gsl.IMP_GSL_SwigPyIterator_copy(self)
161 """next(IMP_GSL_SwigPyIterator self) -> PyObject *"""
162 return _IMP_gsl.IMP_GSL_SwigPyIterator_next(self)
166 """__next__(IMP_GSL_SwigPyIterator self) -> PyObject *"""
167 return _IMP_gsl.IMP_GSL_SwigPyIterator___next__(self)
171 """previous(IMP_GSL_SwigPyIterator self) -> PyObject *"""
172 return _IMP_gsl.IMP_GSL_SwigPyIterator_previous(self)
175 def advance(self, n):
176 """advance(IMP_GSL_SwigPyIterator self, ptrdiff_t n) -> IMP_GSL_SwigPyIterator"""
177 return _IMP_gsl.IMP_GSL_SwigPyIterator_advance(self, n)
181 """__eq__(IMP_GSL_SwigPyIterator self, IMP_GSL_SwigPyIterator x) -> bool"""
182 return _IMP_gsl.IMP_GSL_SwigPyIterator___eq__(self, x)
186 """__ne__(IMP_GSL_SwigPyIterator self, IMP_GSL_SwigPyIterator x) -> bool"""
187 return _IMP_gsl.IMP_GSL_SwigPyIterator___ne__(self, x)
190 def __iadd__(self, n):
191 """__iadd__(IMP_GSL_SwigPyIterator self, ptrdiff_t n) -> IMP_GSL_SwigPyIterator"""
192 return _IMP_gsl.IMP_GSL_SwigPyIterator___iadd__(self, n)
195 def __isub__(self, n):
196 """__isub__(IMP_GSL_SwigPyIterator self, ptrdiff_t n) -> IMP_GSL_SwigPyIterator"""
197 return _IMP_gsl.IMP_GSL_SwigPyIterator___isub__(self, n)
200 def __add__(self, n):
201 """__add__(IMP_GSL_SwigPyIterator self, ptrdiff_t n) -> IMP_GSL_SwigPyIterator"""
202 return _IMP_gsl.IMP_GSL_SwigPyIterator___add__(self, n)
205 def __sub__(self, *args):
207 __sub__(IMP_GSL_SwigPyIterator self, ptrdiff_t n) -> IMP_GSL_SwigPyIterator
208 __sub__(IMP_GSL_SwigPyIterator self, IMP_GSL_SwigPyIterator x) -> ptrdiff_t
210 return _IMP_gsl.IMP_GSL_SwigPyIterator___sub__(self, *args)
214 IMP_GSL_SwigPyIterator_swigregister = _IMP_gsl.IMP_GSL_SwigPyIterator_swigregister
215 IMP_GSL_SwigPyIterator_swigregister(IMP_GSL_SwigPyIterator)
223 IMP_DEBUG = _IMP_gsl.IMP_DEBUG
224 IMP_RELEASE = _IMP_gsl.IMP_RELEASE
225 IMP_SILENT = _IMP_gsl.IMP_SILENT
226 IMP_PROGRESS = _IMP_gsl.IMP_PROGRESS
227 IMP_TERSE = _IMP_gsl.IMP_TERSE
228 IMP_VERBOSE = _IMP_gsl.IMP_VERBOSE
229 IMP_MEMORY = _IMP_gsl.IMP_MEMORY
230 IMP_NONE = _IMP_gsl.IMP_NONE
231 IMP_USAGE = _IMP_gsl.IMP_USAGE
232 IMP_INTERNAL = _IMP_gsl.IMP_INTERNAL
233 IMP_KERNEL_HAS_LOG4CXX = _IMP_gsl.IMP_KERNEL_HAS_LOG4CXX
234 IMP_COMPILER_HAS_AUTO = _IMP_gsl.IMP_COMPILER_HAS_AUTO
235 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_gsl.IMP_COMPILER_HAS_DEBUG_VECTOR
236 IMP_COMPILER_HAS_UNIQUE_PTR = _IMP_gsl.IMP_COMPILER_HAS_UNIQUE_PTR
237 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_gsl.IMP_KERNEL_HAS_BOOST_RANDOM
238 IMP_KERNEL_HAS_NUMPY = _IMP_gsl.IMP_KERNEL_HAS_NUMPY
239 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_gsl.IMP_KERNEL_HAS_GPERFTOOLS
240 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_gsl.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
241 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_gsl.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
242 IMPKERNEL_SHOW_WARNINGS = _IMP_gsl.IMPKERNEL_SHOW_WARNINGS
245 class _DirectorObjects(object):
246 """@internal Simple class to keep references to director objects
247 to prevent premature deletion."""
250 def register(self, obj):
251 """Take a reference to a director object; will only work for
252 refcounted C++ classes"""
253 if hasattr(obj,
'get_ref_count'):
254 self._objects.append(obj)
256 """Only drop our reference and allow cleanup by Python if no other
257 Python references exist (we hold 3 references: one in self._objects,
258 one in x, and one in the argument list for getrefcount) *and* no
259 other C++ references exist (the Python object always holds one)"""
260 objs = [x
for x
in self._objects
if sys.getrefcount(x) > 3 \
261 or x.get_ref_count() > 1]
265 def get_object_count(self):
266 """Get number of director objects (useful for testing only)"""
267 return len(self._objects)
268 _director_objects = _DirectorObjects()
270 class _ostream(object):
271 """Proxy of C++ std::ostream class."""
273 thisown = _swig_property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
'The membership flag')
275 def __init__(self, *args, **kwargs):
276 raise AttributeError(
"No constructor defined")
277 __repr__ = _swig_repr
279 def write(self, osa_buf):
280 """write(_ostream self, char const * osa_buf)"""
281 return _IMP_gsl._ostream_write(self, osa_buf)
283 _ostream_swigregister = _IMP_gsl._ostream_swigregister
284 _ostream_swigregister(_ostream)
286 IMP_COMPILER_HAS_OVERRIDE = _IMP_gsl.IMP_COMPILER_HAS_OVERRIDE
287 IMP_COMPILER_HAS_FINAL = _IMP_gsl.IMP_COMPILER_HAS_FINAL
288 IMP_HAS_NOEXCEPT = _IMP_gsl.IMP_HAS_NOEXCEPT
289 IMP_C_OPEN_BINARY = _IMP_gsl.IMP_C_OPEN_BINARY
291 IMP_CGAL_HAS_BOOST_FILESYSTEM = _IMP_gsl.IMP_CGAL_HAS_BOOST_FILESYSTEM
292 IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS = _IMP_gsl.IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS
293 IMP_CGAL_HAS_BOOST_RANDOM = _IMP_gsl.IMP_CGAL_HAS_BOOST_RANDOM
294 IMP_CGAL_HAS_BOOST_SYSTEM = _IMP_gsl.IMP_CGAL_HAS_BOOST_SYSTEM
295 IMP_CGAL_HAS_NUMPY = _IMP_gsl.IMP_CGAL_HAS_NUMPY
296 IMPCGAL_SHOW_WARNINGS = _IMP_gsl.IMPCGAL_SHOW_WARNINGS
298 IMP_ALGEBRA_HAS_IMP_CGAL = _IMP_gsl.IMP_ALGEBRA_HAS_IMP_CGAL
299 IMP_ALGEBRA_HAS_BOOST_FILESYSTEM = _IMP_gsl.IMP_ALGEBRA_HAS_BOOST_FILESYSTEM
300 IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS = _IMP_gsl.IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS
301 IMP_ALGEBRA_HAS_BOOST_RANDOM = _IMP_gsl.IMP_ALGEBRA_HAS_BOOST_RANDOM
302 IMP_ALGEBRA_HAS_BOOST_SYSTEM = _IMP_gsl.IMP_ALGEBRA_HAS_BOOST_SYSTEM
303 IMP_ALGEBRA_HAS_CGAL = _IMP_gsl.IMP_ALGEBRA_HAS_CGAL
304 IMP_ALGEBRA_HAS_NUMPY = _IMP_gsl.IMP_ALGEBRA_HAS_NUMPY
305 IMP_ALGEBRA_HAS_ANN = _IMP_gsl.IMP_ALGEBRA_HAS_ANN
306 IMPALGEBRA_SHOW_WARNINGS = _IMP_gsl.IMPALGEBRA_SHOW_WARNINGS
308 IMP_GSL_HAS_IMP_CGAL = _IMP_gsl.IMP_GSL_HAS_IMP_CGAL
309 IMP_GSL_HAS_BOOST_FILESYSTEM = _IMP_gsl.IMP_GSL_HAS_BOOST_FILESYSTEM
310 IMP_GSL_HAS_BOOST_PROGRAMOPTIONS = _IMP_gsl.IMP_GSL_HAS_BOOST_PROGRAMOPTIONS
311 IMP_GSL_HAS_BOOST_RANDOM = _IMP_gsl.IMP_GSL_HAS_BOOST_RANDOM
312 IMP_GSL_HAS_BOOST_SYSTEM = _IMP_gsl.IMP_GSL_HAS_BOOST_SYSTEM
313 IMP_GSL_HAS_CGAL = _IMP_gsl.IMP_GSL_HAS_CGAL
314 IMP_GSL_HAS_NUMPY = _IMP_gsl.IMP_GSL_HAS_NUMPY
315 IMPGSL_SHOW_WARNINGS = _IMP_gsl.IMPGSL_SHOW_WARNINGS
317 _object_types.append(
"GSLOptimizer")
320 def _object_cast_to_GSLOptimizer(o):
321 """_object_cast_to_GSLOptimizer(Object o) -> GSLOptimizer"""
322 return _IMP_gsl._object_cast_to_GSLOptimizer(o)
324 _object_types.append(
"ConjugateGradients")
327 def _object_cast_to_ConjugateGradients(o):
328 """_object_cast_to_ConjugateGradients(Object o) -> ConjugateGradients"""
329 return _IMP_gsl._object_cast_to_ConjugateGradients(o)
331 _object_types.append(
"QuasiNewton")
334 def _object_cast_to_QuasiNewton(o):
335 """_object_cast_to_QuasiNewton(Object o) -> QuasiNewton"""
336 return _IMP_gsl._object_cast_to_QuasiNewton(o)
338 _object_types.append(
"Simplex")
341 def _object_cast_to_Simplex(o):
342 """_object_cast_to_Simplex(Object o) -> Simplex"""
343 return _IMP_gsl._object_cast_to_Simplex(o)
345 """Proxy of C++ IMP::gsl::GSLOptimizer class."""
347 thisown = _swig_property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
'The membership flag')
349 def __init__(self, m):
350 """__init__(IMP::gsl::GSLOptimizer self, Model m) -> GSLOptimizer"""
351 if self.__class__ == GSLOptimizer:
355 this = _IMP_gsl.new_GSLOptimizer(_self, m)
357 self.this.append(this)
358 except __builtin__.Exception:
361 if self.__class__ != GSLOptimizer:
362 _director_objects.register(self)
366 __swig_destroy__ = _IMP_gsl.delete_GSLOptimizer
367 __del__ =
lambda self:
None
369 def set_stop_score(self, d):
370 """set_stop_score(GSLOptimizer self, double d)"""
371 return _IMP_gsl.GSLOptimizer_set_stop_score(self, d)
375 """__str__(GSLOptimizer self) -> std::string"""
376 return _IMP_gsl.GSLOptimizer___str__(self)
380 """__repr__(GSLOptimizer self) -> std::string"""
381 return _IMP_gsl.GSLOptimizer___repr__(self)
386 return _object_cast_to_GSLOptimizer(o)
389 def get_type_name(self):
390 return self.__class__.__name__
391 def do_show(self, out):
394 if"IMP::gsl" ==
"IMP":
395 return VersionInfo(self.__module__,
396 __import__(self.__module__).get_module_version())
399 __import__(self.__module__).get_module_version())
402 return _object_cast_to_GSLOptimizer(o)
404 def __disown__(self):
406 _IMP_gsl.disown_GSLOptimizer(self)
407 return weakref_proxy(self)
410 """do_destroy(GSLOptimizer self)"""
411 return _IMP_gsl.GSLOptimizer_do_destroy(self)
414 def handle_set_has_required_score_states(self, arg0):
415 """handle_set_has_required_score_states(GSLOptimizer self, bool arg0)"""
416 return _IMP_gsl.GSLOptimizer_handle_set_has_required_score_states(self, arg0)
420 """do_get_inputs(GSLOptimizer self) -> IMP::ModelObjectsTemp"""
421 return _IMP_gsl.GSLOptimizer_do_get_inputs(self)
425 """do_get_outputs(GSLOptimizer self) -> IMP::ModelObjectsTemp"""
426 return _IMP_gsl.GSLOptimizer_do_get_outputs(self)
429 def do_get_interactions(self):
430 """do_get_interactions(GSLOptimizer self) -> IMP::ModelObjectsTemps"""
431 return _IMP_gsl.GSLOptimizer_do_get_interactions(self)
434 def do_optimize(self, ns):
435 """do_optimize(GSLOptimizer self, unsigned int ns) -> double"""
436 return _IMP_gsl.GSLOptimizer_do_optimize(self, ns)
438 GSLOptimizer_swigregister = _IMP_gsl.GSLOptimizer_swigregister
439 GSLOptimizer_swigregister(GSLOptimizer)
441 class ConjugateGradients(GSLOptimizer):
442 """Proxy of C++ IMP::gsl::ConjugateGradients class."""
444 thisown = _swig_property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
'The membership flag')
446 def __init__(self, m):
447 """__init__(IMP::gsl::ConjugateGradients self, Model m) -> ConjugateGradients"""
448 this = _IMP_gsl.new_ConjugateGradients(m)
450 self.this.append(this)
451 except __builtin__.Exception:
454 def set_threshold(self, mg):
455 """set_threshold(ConjugateGradients self, double mg)"""
456 return _IMP_gsl.ConjugateGradients_set_threshold(self, mg)
459 def do_optimize(self, max_steps):
460 """do_optimize(ConjugateGradients self, unsigned int max_steps) -> IMP::Float"""
461 return _IMP_gsl.ConjugateGradients_do_optimize(self, max_steps)
465 """get_version_info(ConjugateGradients self) -> VersionInfo"""
466 return _IMP_gsl.ConjugateGradients_get_version_info(self)
470 """__str__(ConjugateGradients self) -> std::string"""
471 return _IMP_gsl.ConjugateGradients___str__(self)
475 """__repr__(ConjugateGradients self) -> std::string"""
476 return _IMP_gsl.ConjugateGradients___repr__(self)
481 return _object_cast_to_ConjugateGradients(o)
483 ConjugateGradients_swigregister = _IMP_gsl.ConjugateGradients_swigregister
484 ConjugateGradients_swigregister(ConjugateGradients)
486 class QuasiNewton(GSLOptimizer):
487 """Proxy of C++ IMP::gsl::QuasiNewton class."""
489 thisown = _swig_property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
'The membership flag')
491 def __init__(self, m):
492 """__init__(IMP::gsl::QuasiNewton self, Model m) -> QuasiNewton"""
493 this = _IMP_gsl.new_QuasiNewton(m)
495 self.this.append(this)
496 except __builtin__.Exception:
499 def set_initial_step(self, length):
500 """set_initial_step(QuasiNewton self, double length)"""
501 return _IMP_gsl.QuasiNewton_set_initial_step(self, length)
504 def set_line_step(self, d):
505 """set_line_step(QuasiNewton self, double d)"""
506 return _IMP_gsl.QuasiNewton_set_line_step(self, d)
509 def set_minimum_gradient(self, d):
510 """set_minimum_gradient(QuasiNewton self, double d)"""
511 return _IMP_gsl.QuasiNewton_set_minimum_gradient(self, d)
514 def do_optimize(self, max_steps):
515 """do_optimize(QuasiNewton self, unsigned int max_steps) -> IMP::Float"""
516 return _IMP_gsl.QuasiNewton_do_optimize(self, max_steps)
520 """get_version_info(QuasiNewton self) -> VersionInfo"""
521 return _IMP_gsl.QuasiNewton_get_version_info(self)
525 """__str__(QuasiNewton self) -> std::string"""
526 return _IMP_gsl.QuasiNewton___str__(self)
530 """__repr__(QuasiNewton self) -> std::string"""
531 return _IMP_gsl.QuasiNewton___repr__(self)
536 return _object_cast_to_QuasiNewton(o)
538 QuasiNewton_swigregister = _IMP_gsl.QuasiNewton_swigregister
539 QuasiNewton_swigregister(QuasiNewton)
541 class Simplex(GSLOptimizer):
542 """Proxy of C++ IMP::gsl::Simplex class."""
544 thisown = _swig_property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
'The membership flag')
546 def __init__(self, m):
547 """__init__(IMP::gsl::Simplex self, Model m) -> Simplex"""
548 this = _IMP_gsl.new_Simplex(m)
550 self.this.append(this)
551 except __builtin__.Exception:
554 def set_initial_length(self, length):
555 """set_initial_length(Simplex self, double length)"""
556 return _IMP_gsl.Simplex_set_initial_length(self, length)
559 def set_minimum_size(self, d):
560 """set_minimum_size(Simplex self, double d)"""
561 return _IMP_gsl.Simplex_set_minimum_size(self, d)
564 def do_optimize(self, max_steps):
565 """do_optimize(Simplex self, unsigned int max_steps) -> IMP::Float"""
566 return _IMP_gsl.Simplex_do_optimize(self, max_steps)
570 """get_version_info(Simplex self) -> VersionInfo"""
571 return _IMP_gsl.Simplex_get_version_info(self)
575 """__str__(Simplex self) -> std::string"""
576 return _IMP_gsl.Simplex___str__(self)
580 """__repr__(Simplex self) -> std::string"""
581 return _IMP_gsl.Simplex___repr__(self)
586 return _object_cast_to_Simplex(o)
588 Simplex_swigregister = _IMP_gsl.Simplex_swigregister
589 Simplex_swigregister(Simplex)
592 def get_module_version():
593 """get_module_version() -> std::string const"""
594 return _IMP_gsl.get_module_version()
597 """get_example_path(std::string fname) -> std::string"""
598 return _IMP_gsl.get_example_path(fname)
601 """get_data_path(std::string fname) -> std::string"""
602 return _IMP_gsl.get_data_path(fname)
604 from .
import _version_check
605 _version_check.check_version(get_module_version())
606 __version__ = get_module_version()
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...
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.