IMP logo
IMP Reference Guide  develop.345e71cb9a,2026/08/10
The Integrative Modeling Platform
saxs/__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_saxs
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_SAXS_SwigPyIterator(object):
57  r"""Proxy of C++ swig::IMP_SAXS_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_saxs.delete_IMP_SAXS_SwigPyIterator
65 
66  def value(self):
67  r"""value(IMP_SAXS_SwigPyIterator self) -> PyObject *"""
68  return _IMP_saxs.IMP_SAXS_SwigPyIterator_value(self)
69 
70  def incr(self, n=1):
71  r"""incr(IMP_SAXS_SwigPyIterator self, size_t n=1) -> IMP_SAXS_SwigPyIterator"""
72  return _IMP_saxs.IMP_SAXS_SwigPyIterator_incr(self, n)
73 
74  def decr(self, n=1):
75  r"""decr(IMP_SAXS_SwigPyIterator self, size_t n=1) -> IMP_SAXS_SwigPyIterator"""
76  return _IMP_saxs.IMP_SAXS_SwigPyIterator_decr(self, n)
77 
78  def distance(self, x):
79  r"""distance(IMP_SAXS_SwigPyIterator self, IMP_SAXS_SwigPyIterator x) -> ptrdiff_t"""
80  return _IMP_saxs.IMP_SAXS_SwigPyIterator_distance(self, x)
81 
82  def equal(self, x):
83  r"""equal(IMP_SAXS_SwigPyIterator self, IMP_SAXS_SwigPyIterator x) -> bool"""
84  return _IMP_saxs.IMP_SAXS_SwigPyIterator_equal(self, x)
85 
86  def copy(self):
87  r"""copy(IMP_SAXS_SwigPyIterator self) -> IMP_SAXS_SwigPyIterator"""
88  return _IMP_saxs.IMP_SAXS_SwigPyIterator_copy(self)
89 
90  def __next__(self):
91  r"""__next__(IMP_SAXS_SwigPyIterator self) -> PyObject *"""
92  return _IMP_saxs.IMP_SAXS_SwigPyIterator___next__(self)
93 
94  def previous(self):
95  r"""previous(IMP_SAXS_SwigPyIterator self) -> PyObject *"""
96  return _IMP_saxs.IMP_SAXS_SwigPyIterator_previous(self)
97 
98  def advance(self, n):
99  r"""advance(IMP_SAXS_SwigPyIterator self, ptrdiff_t n) -> IMP_SAXS_SwigPyIterator"""
100  return _IMP_saxs.IMP_SAXS_SwigPyIterator_advance(self, n)
101 
102  def __eq__(self, x):
103  r"""__eq__(IMP_SAXS_SwigPyIterator self, IMP_SAXS_SwigPyIterator x) -> bool"""
104  return _IMP_saxs.IMP_SAXS_SwigPyIterator___eq__(self, x)
105 
106  def __ne__(self, x):
107  r"""__ne__(IMP_SAXS_SwigPyIterator self, IMP_SAXS_SwigPyIterator x) -> bool"""
108  return _IMP_saxs.IMP_SAXS_SwigPyIterator___ne__(self, x)
109 
110  def __iadd__(self, n):
111  r"""__iadd__(IMP_SAXS_SwigPyIterator self, ptrdiff_t n) -> IMP_SAXS_SwigPyIterator"""
112  return _IMP_saxs.IMP_SAXS_SwigPyIterator___iadd__(self, n)
113 
114  def __isub__(self, n):
115  r"""__isub__(IMP_SAXS_SwigPyIterator self, ptrdiff_t n) -> IMP_SAXS_SwigPyIterator"""
116  return _IMP_saxs.IMP_SAXS_SwigPyIterator___isub__(self, n)
117 
118  def __add__(self, n):
119  r"""__add__(IMP_SAXS_SwigPyIterator self, ptrdiff_t n) -> IMP_SAXS_SwigPyIterator"""
120  return _IMP_saxs.IMP_SAXS_SwigPyIterator___add__(self, n)
121 
122  def __sub__(self, *args):
123  r"""
124  __sub__(IMP_SAXS_SwigPyIterator self, ptrdiff_t n) -> IMP_SAXS_SwigPyIterator
125  __sub__(IMP_SAXS_SwigPyIterator self, IMP_SAXS_SwigPyIterator x) -> ptrdiff_t
126  """
127  return _IMP_saxs.IMP_SAXS_SwigPyIterator___sub__(self, *args)
128  def __iter__(self):
129  return self
130 
131 # Register IMP_SAXS_SwigPyIterator in _IMP_saxs:
132 _IMP_saxs.IMP_SAXS_SwigPyIterator_swigregister(IMP_SAXS_SwigPyIterator)
133 
134 _value_types=[]
135 _object_types=[]
136 _raii_types=[]
137 _plural_types=[]
138 
139 IMP_DEBUG = _IMP_saxs.IMP_DEBUG
140 
141 IMP_RELEASE = _IMP_saxs.IMP_RELEASE
142 
143 IMP_SILENT = _IMP_saxs.IMP_SILENT
144 
145 IMP_PROGRESS = _IMP_saxs.IMP_PROGRESS
146 
147 IMP_TERSE = _IMP_saxs.IMP_TERSE
148 
149 IMP_VERBOSE = _IMP_saxs.IMP_VERBOSE
150 
151 IMP_MEMORY = _IMP_saxs.IMP_MEMORY
152 
153 IMP_NONE = _IMP_saxs.IMP_NONE
154 
155 IMP_USAGE = _IMP_saxs.IMP_USAGE
156 
157 IMP_INTERNAL = _IMP_saxs.IMP_INTERNAL
158 
159 IMP_KERNEL_HAS_LOG4CXX = _IMP_saxs.IMP_KERNEL_HAS_LOG4CXX
160 
161 IMP_COMPILER_HAS_CEREAL_RAW_POINTER = _IMP_saxs.IMP_COMPILER_HAS_CEREAL_RAW_POINTER
162 
163 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_saxs.IMP_COMPILER_HAS_DEBUG_VECTOR
164 
165 IMP_COMPILER_HAS_RANDOM_SHUFFLE = _IMP_saxs.IMP_COMPILER_HAS_RANDOM_SHUFFLE
166 
167 IMP_COMPILER_HAS_THREE_WAY = _IMP_saxs.IMP_COMPILER_HAS_THREE_WAY
168 
169 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_saxs.IMP_KERNEL_HAS_BOOST_RANDOM
170 
171 IMP_KERNEL_HAS_NUMPY = _IMP_saxs.IMP_KERNEL_HAS_NUMPY
172 
173 IMP_KERNEL_HAS_BOOST_SYSTEM = _IMP_saxs.IMP_KERNEL_HAS_BOOST_SYSTEM
174 
175 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_saxs.IMP_KERNEL_HAS_GPERFTOOLS
176 
177 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_saxs.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
178 
179 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_saxs.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
180 
181 IMPKERNEL_SHOW_WARNINGS = _IMP_saxs.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_saxs._ostream_write(self, osa_buf)
222 
223 # Register _ostream in _IMP_saxs:
224 _IMP_saxs._ostream_swigregister(_ostream)
225 IMP_C_OPEN_BINARY = _IMP_saxs.IMP_C_OPEN_BINARY
226 
227 import IMP
228 IMP_CGAL_HAS_BOOST_FILESYSTEM = _IMP_saxs.IMP_CGAL_HAS_BOOST_FILESYSTEM
229 
230 IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS = _IMP_saxs.IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS
231 
232 IMP_CGAL_HAS_BOOST_RANDOM = _IMP_saxs.IMP_CGAL_HAS_BOOST_RANDOM
233 
234 IMP_CGAL_HAS_NUMPY = _IMP_saxs.IMP_CGAL_HAS_NUMPY
235 
236 IMPCGAL_SHOW_WARNINGS = _IMP_saxs.IMPCGAL_SHOW_WARNINGS
237 
238 import IMP.cgal
239 IMP_ALGEBRA_HAS_IMP_CGAL = _IMP_saxs.IMP_ALGEBRA_HAS_IMP_CGAL
240 
241 IMP_ALGEBRA_HAS_BOOST_FILESYSTEM = _IMP_saxs.IMP_ALGEBRA_HAS_BOOST_FILESYSTEM
242 
243 IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS = _IMP_saxs.IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS
244 
245 IMP_ALGEBRA_HAS_BOOST_RANDOM = _IMP_saxs.IMP_ALGEBRA_HAS_BOOST_RANDOM
246 
247 IMP_ALGEBRA_HAS_CGAL = _IMP_saxs.IMP_ALGEBRA_HAS_CGAL
248 
249 IMP_ALGEBRA_HAS_NUMPY = _IMP_saxs.IMP_ALGEBRA_HAS_NUMPY
250 
251 IMP_ALGEBRA_HAS_ANN = _IMP_saxs.IMP_ALGEBRA_HAS_ANN
252 
253 IMPALGEBRA_SHOW_WARNINGS = _IMP_saxs.IMPALGEBRA_SHOW_WARNINGS
254 
255 import IMP.algebra
256 IMP_DISPLAY_HAS_IMP_CGAL = _IMP_saxs.IMP_DISPLAY_HAS_IMP_CGAL
257 
258 IMP_DISPLAY_HAS_BOOST_FILESYSTEM = _IMP_saxs.IMP_DISPLAY_HAS_BOOST_FILESYSTEM
259 
260 IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS = _IMP_saxs.IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS
261 
262 IMP_DISPLAY_HAS_BOOST_RANDOM = _IMP_saxs.IMP_DISPLAY_HAS_BOOST_RANDOM
263 
264 IMP_DISPLAY_HAS_CGAL = _IMP_saxs.IMP_DISPLAY_HAS_CGAL
265 
266 IMP_DISPLAY_HAS_NUMPY = _IMP_saxs.IMP_DISPLAY_HAS_NUMPY
267 
268 IMPDISPLAY_SHOW_WARNINGS = _IMP_saxs.IMPDISPLAY_SHOW_WARNINGS
269 
270 import IMP.display
271 IMP_SCORE_FUNCTOR_HAS_IMP_CGAL = _IMP_saxs.IMP_SCORE_FUNCTOR_HAS_IMP_CGAL
272 
273 IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM = _IMP_saxs.IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM
274 
275 IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS = _IMP_saxs.IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS
276 
277 IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM = _IMP_saxs.IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM
278 
279 IMP_SCORE_FUNCTOR_HAS_CGAL = _IMP_saxs.IMP_SCORE_FUNCTOR_HAS_CGAL
280 
281 IMP_SCORE_FUNCTOR_HAS_HDF5 = _IMP_saxs.IMP_SCORE_FUNCTOR_HAS_HDF5
282 
283 IMP_SCORE_FUNCTOR_HAS_NUMPY = _IMP_saxs.IMP_SCORE_FUNCTOR_HAS_NUMPY
284 
285 IMPSCOREFUNCTOR_SHOW_WARNINGS = _IMP_saxs.IMPSCOREFUNCTOR_SHOW_WARNINGS
286 
287 import IMP.score_functor
288 IMP_CORE_HAS_IMP_CGAL = _IMP_saxs.IMP_CORE_HAS_IMP_CGAL
289 
290 IMP_CORE_HAS_IMP_KERNEL = _IMP_saxs.IMP_CORE_HAS_IMP_KERNEL
291 
292 IMP_CORE_HAS_BOOST_FILESYSTEM = _IMP_saxs.IMP_CORE_HAS_BOOST_FILESYSTEM
293 
294 IMP_CORE_HAS_BOOST_PROGRAMOPTIONS = _IMP_saxs.IMP_CORE_HAS_BOOST_PROGRAMOPTIONS
295 
296 IMP_CORE_HAS_BOOST_RANDOM = _IMP_saxs.IMP_CORE_HAS_BOOST_RANDOM
297 
298 IMP_CORE_HAS_CGAL = _IMP_saxs.IMP_CORE_HAS_CGAL
299 
300 IMP_CORE_HAS_HDF5 = _IMP_saxs.IMP_CORE_HAS_HDF5
301 
302 IMP_CORE_HAS_NUMPY = _IMP_saxs.IMP_CORE_HAS_NUMPY
303 
304 IMPCORE_SHOW_WARNINGS = _IMP_saxs.IMPCORE_SHOW_WARNINGS
305 
306 import IMP.core
307 IMP_CONTAINER_HAS_IMP_ALGEBRA = _IMP_saxs.IMP_CONTAINER_HAS_IMP_ALGEBRA
308 
309 IMP_CONTAINER_HAS_IMP_CGAL = _IMP_saxs.IMP_CONTAINER_HAS_IMP_CGAL
310 
311 IMP_CONTAINER_HAS_IMP_DISPLAY = _IMP_saxs.IMP_CONTAINER_HAS_IMP_DISPLAY
312 
313 IMP_CONTAINER_HAS_IMP_KERNEL = _IMP_saxs.IMP_CONTAINER_HAS_IMP_KERNEL
314 
315 IMP_CONTAINER_HAS_IMP_SCORE_FUNCTOR = _IMP_saxs.IMP_CONTAINER_HAS_IMP_SCORE_FUNCTOR
316 
317 IMP_CONTAINER_HAS_BOOST_FILESYSTEM = _IMP_saxs.IMP_CONTAINER_HAS_BOOST_FILESYSTEM
318 
319 IMP_CONTAINER_HAS_BOOST_PROGRAMOPTIONS = _IMP_saxs.IMP_CONTAINER_HAS_BOOST_PROGRAMOPTIONS
320 
321 IMP_CONTAINER_HAS_BOOST_RANDOM = _IMP_saxs.IMP_CONTAINER_HAS_BOOST_RANDOM
322 
323 IMP_CONTAINER_HAS_CGAL = _IMP_saxs.IMP_CONTAINER_HAS_CGAL
324 
325 IMP_CONTAINER_HAS_HDF5 = _IMP_saxs.IMP_CONTAINER_HAS_HDF5
326 
327 IMP_CONTAINER_HAS_NUMPY = _IMP_saxs.IMP_CONTAINER_HAS_NUMPY
328 
329 IMP_CONTAINER_HAS_PYTHON_IHM = _IMP_saxs.IMP_CONTAINER_HAS_PYTHON_IHM
330 
331 IMP_CONTAINER_HAS_GOOGLE_DENSE_HASH_MAP = _IMP_saxs.IMP_CONTAINER_HAS_GOOGLE_DENSE_HASH_MAP
332 
333 IMP_CONTAINER_HAS_ROBIN_MAP = _IMP_saxs.IMP_CONTAINER_HAS_ROBIN_MAP
334 
335 IMPCONTAINER_SHOW_WARNINGS = _IMP_saxs.IMPCONTAINER_SHOW_WARNINGS
336 
337 import IMP.container
338 IMP_ATOM_HAS_IMP_CGAL = _IMP_saxs.IMP_ATOM_HAS_IMP_CGAL
339 
340 IMP_ATOM_HAS_IMP_KERNEL = _IMP_saxs.IMP_ATOM_HAS_IMP_KERNEL
341 
342 IMP_ATOM_HAS_IMP_SCORE_FUNCTOR = _IMP_saxs.IMP_ATOM_HAS_IMP_SCORE_FUNCTOR
343 
344 IMP_ATOM_HAS_BOOST_PROGRAMOPTIONS = _IMP_saxs.IMP_ATOM_HAS_BOOST_PROGRAMOPTIONS
345 
346 IMP_ATOM_HAS_BOOST_RANDOM = _IMP_saxs.IMP_ATOM_HAS_BOOST_RANDOM
347 
348 IMP_ATOM_HAS_BOOST_REGEX = _IMP_saxs.IMP_ATOM_HAS_BOOST_REGEX
349 
350 IMP_ATOM_HAS_CGAL = _IMP_saxs.IMP_ATOM_HAS_CGAL
351 
352 IMP_ATOM_HAS_HDF5 = _IMP_saxs.IMP_ATOM_HAS_HDF5
353 
354 IMP_ATOM_HAS_NUMPY = _IMP_saxs.IMP_ATOM_HAS_NUMPY
355 
356 IMP_ATOM_HAS_PYTHON_IHM = _IMP_saxs.IMP_ATOM_HAS_PYTHON_IHM
357 
358 IMPATOM_SHOW_WARNINGS = _IMP_saxs.IMPATOM_SHOW_WARNINGS
359 
360 IMP_ATOM_TYPE_INDEX = _IMP_saxs.IMP_ATOM_TYPE_INDEX
361 
362 IMP_RESIDUE_TYPE_INDEX = _IMP_saxs.IMP_RESIDUE_TYPE_INDEX
363 
364 IMP_HIERARCHY_TYPE_INDEX = _IMP_saxs.IMP_HIERARCHY_TYPE_INDEX
365 
366 IMP_CHAIN_TYPE_INDEX = _IMP_saxs.IMP_CHAIN_TYPE_INDEX
367 
368 import IMP.atom
369 IMP_SAXS_HAS_IMP_CGAL = _IMP_saxs.IMP_SAXS_HAS_IMP_CGAL
370 
371 IMP_SAXS_HAS_IMP_CONTAINER = _IMP_saxs.IMP_SAXS_HAS_IMP_CONTAINER
372 
373 IMP_SAXS_HAS_IMP_DISPLAY = _IMP_saxs.IMP_SAXS_HAS_IMP_DISPLAY
374 
375 IMP_SAXS_HAS_IMP_KERNEL = _IMP_saxs.IMP_SAXS_HAS_IMP_KERNEL
376 
377 IMP_SAXS_HAS_IMP_SCORE_FUNCTOR = _IMP_saxs.IMP_SAXS_HAS_IMP_SCORE_FUNCTOR
378 
379 IMP_SAXS_HAS_BOOST_FILESYSTEM = _IMP_saxs.IMP_SAXS_HAS_BOOST_FILESYSTEM
380 
381 IMP_SAXS_HAS_BOOST_PROGRAMOPTIONS = _IMP_saxs.IMP_SAXS_HAS_BOOST_PROGRAMOPTIONS
382 
383 IMP_SAXS_HAS_BOOST_RANDOM = _IMP_saxs.IMP_SAXS_HAS_BOOST_RANDOM
384 
385 IMP_SAXS_HAS_BOOST_REGEX = _IMP_saxs.IMP_SAXS_HAS_BOOST_REGEX
386 
387 IMP_SAXS_HAS_CGAL = _IMP_saxs.IMP_SAXS_HAS_CGAL
388 
389 IMP_SAXS_HAS_HDF5 = _IMP_saxs.IMP_SAXS_HAS_HDF5
390 
391 IMP_SAXS_HAS_NUMPY = _IMP_saxs.IMP_SAXS_HAS_NUMPY
392 
393 IMP_SAXS_HAS_PYTHON_IHM = _IMP_saxs.IMP_SAXS_HAS_PYTHON_IHM
394 
395 IMPSAXS_SHOW_WARNINGS = _IMP_saxs.IMPSAXS_SHOW_WARNINGS
396 
397 class DistBase(object):
398  r"""Proxy of C++ std::vector< double > class."""
399 
400  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
401  __repr__ = _swig_repr
402 
403  def iterator(self):
404  r"""iterator(DistBase self) -> IMP_SAXS_SwigPyIterator"""
405  return _IMP_saxs.DistBase_iterator(self)
406  def __iter__(self):
407  return self.iterator()
408 
409  def __bool__(self):
410  r"""__bool__(DistBase self) -> bool"""
411  return _IMP_saxs.DistBase___bool__(self)
412 
413  def __len__(self):
414  r"""__len__(DistBase self) -> std::vector< double >::size_type"""
415  return _IMP_saxs.DistBase___len__(self)
416 
417  def __delitem__(self, *args):
418  r"""
419  __delitem__(DistBase self, std::vector< double >::difference_type i)
420  __delitem__(DistBase self, SWIGPY_SLICEOBJECT * slice)
421  """
422  return _IMP_saxs.DistBase___delitem__(self, *args)
423 
424  def __getitem__(self, *args):
425  r"""
426  __getitem__(DistBase self, SWIGPY_SLICEOBJECT * slice) -> DistBase
427  __getitem__(DistBase self, std::vector< double >::difference_type i) -> std::vector< double >::value_type const &
428  """
429  return _IMP_saxs.DistBase___getitem__(self, *args)
430 
431  def __setitem__(self, *args):
432  r"""
433  __setitem__(DistBase self, SWIGPY_SLICEOBJECT * slice, DistBase v)
434  __setitem__(DistBase self, SWIGPY_SLICEOBJECT * slice)
435  __setitem__(DistBase self, std::vector< double >::difference_type i, std::vector< double >::value_type const & x)
436  """
437  return _IMP_saxs.DistBase___setitem__(self, *args)
438 
439  def pop(self):
440  r"""pop(DistBase self) -> std::vector< double >::value_type"""
441  return _IMP_saxs.DistBase_pop(self)
442 
443  def append(self, x):
444  r"""append(DistBase self, std::vector< double >::value_type const & x)"""
445  return _IMP_saxs.DistBase_append(self, x)
446 
447  def empty(self):
448  r"""empty(DistBase self) -> bool"""
449  return _IMP_saxs.DistBase_empty(self)
450 
451  def size(self):
452  r"""size(DistBase self) -> std::vector< double >::size_type"""
453  return _IMP_saxs.DistBase_size(self)
454 
455  def swap(self, v):
456  r"""swap(DistBase self, DistBase v)"""
457  return _IMP_saxs.DistBase_swap(self, v)
458 
459  def begin(self):
460  r"""begin(DistBase self) -> std::vector< double >::iterator"""
461  return _IMP_saxs.DistBase_begin(self)
462 
463  def end(self):
464  r"""end(DistBase self) -> std::vector< double >::iterator"""
465  return _IMP_saxs.DistBase_end(self)
466 
467  def rbegin(self):
468  r"""rbegin(DistBase self) -> std::vector< double >::reverse_iterator"""
469  return _IMP_saxs.DistBase_rbegin(self)
470 
471  def rend(self):
472  r"""rend(DistBase self) -> std::vector< double >::reverse_iterator"""
473  return _IMP_saxs.DistBase_rend(self)
474 
475  def clear(self):
476  r"""clear(DistBase self)"""
477  return _IMP_saxs.DistBase_clear(self)
478 
479  def get_allocator(self):
480  r"""get_allocator(DistBase self) -> std::vector< double >::allocator_type"""
481  return _IMP_saxs.DistBase_get_allocator(self)
482 
483  def pop_back(self):
484  r"""pop_back(DistBase self)"""
485  return _IMP_saxs.DistBase_pop_back(self)
486 
487  def erase(self, *args):
488  r"""
489  erase(DistBase self, std::vector< double >::iterator pos) -> std::vector< double >::iterator
490  erase(DistBase self, std::vector< double >::iterator first, std::vector< double >::iterator last) -> std::vector< double >::iterator
491  """
492  return _IMP_saxs.DistBase_erase(self, *args)
493 
494  def __init__(self, *args):
495  r"""
496  __init__(DistBase self) -> DistBase
497  __init__(DistBase self, DistBase other) -> DistBase
498  __init__(DistBase self, std::vector< double >::size_type size) -> DistBase
499  __init__(DistBase self, std::vector< double >::size_type size, std::vector< double >::value_type const & value) -> DistBase
500  """
501  _IMP_saxs.DistBase_swiginit(self, _IMP_saxs.new_DistBase(*args))
502 
503  def push_back(self, x):
504  r"""push_back(DistBase self, std::vector< double >::value_type const & x)"""
505  return _IMP_saxs.DistBase_push_back(self, x)
506 
507  def front(self):
508  r"""front(DistBase self) -> std::vector< double >::value_type const &"""
509  return _IMP_saxs.DistBase_front(self)
510 
511  def back(self):
512  r"""back(DistBase self) -> std::vector< double >::value_type const &"""
513  return _IMP_saxs.DistBase_back(self)
514 
515  def assign(self, n, x):
516  r"""assign(DistBase self, std::vector< double >::size_type n, std::vector< double >::value_type const & x)"""
517  return _IMP_saxs.DistBase_assign(self, n, x)
518 
519  def resize(self, *args):
520  r"""
521  resize(DistBase self, std::vector< double >::size_type new_size)
522  resize(DistBase self, std::vector< double >::size_type new_size, std::vector< double >::value_type const & x)
523  """
524  return _IMP_saxs.DistBase_resize(self, *args)
525 
526  def insert(self, *args):
527  r"""
528  insert(DistBase self, std::vector< double >::iterator pos, std::vector< double >::value_type const & x) -> std::vector< double >::iterator
529  insert(DistBase self, std::vector< double >::iterator pos, std::vector< double >::size_type n, std::vector< double >::value_type const & x)
530  """
531  return _IMP_saxs.DistBase_insert(self, *args)
532 
533  def reserve(self, n):
534  r"""reserve(DistBase self, std::vector< double >::size_type n)"""
535  return _IMP_saxs.DistBase_reserve(self, n)
536 
537  def capacity(self):
538  r"""capacity(DistBase self) -> std::vector< double >::size_type"""
539  return _IMP_saxs.DistBase_capacity(self)
540  __swig_destroy__ = _IMP_saxs.delete_DistBase
541 
542 # Register DistBase in _IMP_saxs:
543 _IMP_saxs.DistBase_swigregister(DistBase)
544 
545 _object_types.append("Profile")
546 
547 
548 def _object_cast_to_Profile(o):
549  r"""_object_cast_to_Profile(Object o) -> Profile"""
550  return _IMP_saxs._object_cast_to_Profile(o)
551 
552 _object_types.append("ChiScore")
553 
554 
555 def _object_cast_to_ChiScore(o):
556  r"""_object_cast_to_ChiScore(Object o) -> ChiScore"""
557  return _IMP_saxs._object_cast_to_ChiScore(o)
558 
559 _object_types.append("ChiScoreLog")
560 
561 
562 def _object_cast_to_ChiScoreLog(o):
563  r"""_object_cast_to_ChiScoreLog(Object o) -> ChiScoreLog"""
564  return _IMP_saxs._object_cast_to_ChiScoreLog(o)
565 
566 _object_types.append("Restraint")
567 
568 ALL_ATOMS = _IMP_saxs.ALL_ATOMS
569 
570 HEAVY_ATOMS = _IMP_saxs.HEAVY_ATOMS
571 
572 CA_ATOMS = _IMP_saxs.CA_ATOMS
573 
574 RESIDUES = _IMP_saxs.RESIDUES
575 
576 class FormFactorTable(object):
577  r"""Proxy of C++ IMP::saxs::FormFactorTable class."""
578 
579  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
580  __repr__ = _swig_repr
581 
582  def __init__(self, *args):
583  r"""
584  __init__(FormFactorTable self) -> FormFactorTable
585  __init__(FormFactorTable self, std::string const & table_name, double min_q, double max_q, double delta_q) -> FormFactorTable
586  """
587  _IMP_saxs.FormFactorTable_swiginit(self, _IMP_saxs.new_FormFactorTable(*args))
588 
589  def get_form_factor(self, *args):
590  r"""get_form_factor(FormFactorTable self, Particle p, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS) -> double"""
591  return _IMP_saxs.FormFactorTable_get_form_factor(self, *args)
592 
593  def get_vacuum_form_factor(self, *args):
594  r"""get_vacuum_form_factor(FormFactorTable self, Particle p, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS) -> double"""
595  return _IMP_saxs.FormFactorTable_get_vacuum_form_factor(self, *args)
596 
597  def get_dummy_form_factor(self, *args):
598  r"""get_dummy_form_factor(FormFactorTable self, Particle p, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS) -> double"""
599  return _IMP_saxs.FormFactorTable_get_dummy_form_factor(self, *args)
600 
601  def get_water_form_factor(self):
602  r"""get_water_form_factor(FormFactorTable self) -> double"""
603  return _IMP_saxs.FormFactorTable_get_water_form_factor(self)
604 
605  def get_vacuum_water_form_factor(self):
606  r"""get_vacuum_water_form_factor(FormFactorTable self) -> double"""
607  return _IMP_saxs.FormFactorTable_get_vacuum_water_form_factor(self)
608 
609  def get_dummy_water_form_factor(self):
610  r"""get_dummy_water_form_factor(FormFactorTable self) -> double"""
611  return _IMP_saxs.FormFactorTable_get_dummy_water_form_factor(self)
612 
613  def get_form_factors(self, *args):
614  r"""get_form_factors(FormFactorTable self, Particle p, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS) -> IMP::Vector< double > const"""
615  return _IMP_saxs.FormFactorTable_get_form_factors(self, *args)
616 
617  def get_vacuum_form_factors(self, *args):
618  r"""get_vacuum_form_factors(FormFactorTable self, Particle p, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS) -> IMP::Vector< double > const"""
619  return _IMP_saxs.FormFactorTable_get_vacuum_form_factors(self, *args)
620 
621  def get_dummy_form_factors(self, *args):
622  r"""get_dummy_form_factors(FormFactorTable self, Particle p, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS) -> IMP::Vector< double > const"""
623  return _IMP_saxs.FormFactorTable_get_dummy_form_factors(self, *args)
624 
625  def get_water_form_factors(self):
626  r"""get_water_form_factors(FormFactorTable self) -> IMP::Vector< double > const &"""
627  return _IMP_saxs.FormFactorTable_get_water_form_factors(self)
628 
629  def get_water_vacuum_form_factors(self):
630  r"""get_water_vacuum_form_factors(FormFactorTable self) -> IMP::Vector< double > const &"""
631  return _IMP_saxs.FormFactorTable_get_water_vacuum_form_factors(self)
632 
633  def get_water_dummy_form_factors(self):
634  r"""get_water_dummy_form_factors(FormFactorTable self) -> IMP::Vector< double > const &"""
635  return _IMP_saxs.FormFactorTable_get_water_dummy_form_factors(self)
636 
637  def get_radius(self, *args):
638  r"""get_radius(FormFactorTable self, Particle p, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS) -> double"""
639  return _IMP_saxs.FormFactorTable_get_radius(self, *args)
640 
641  def get_volume(self, *args):
642  r"""get_volume(FormFactorTable self, Particle p, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS) -> double"""
643  return _IMP_saxs.FormFactorTable_get_volume(self, *args)
644 
645  def show(self, *args):
646  r"""show(FormFactorTable self, _ostream out=std::cout, std::string prefix="")"""
647  return _IMP_saxs.FormFactorTable_show(self, *args)
648  rho_ = property(_IMP_saxs.FormFactorTable_rho__get, _IMP_saxs.FormFactorTable_rho__set, doc=r"""rho_ : double""")
649  __swig_destroy__ = _IMP_saxs.delete_FormFactorTable
650 
651 # Register FormFactorTable in _IMP_saxs:
652 _IMP_saxs.FormFactorTable_swigregister(FormFactorTable)
653 cvar = _IMP_saxs.cvar
654 
655 
657  r"""get_default_form_factor_table() -> FormFactorTable"""
658  return _IMP_saxs.get_default_form_factor_table()
659 class Profile(IMP.Object):
660  r"""Proxy of C++ IMP::saxs::Profile class."""
661 
662  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
663 
664  def __init__(self, *args):
665  r"""
666  __init__(Profile self, std::string const & file_name, bool fit_file=False, double max_q=0.0, int units=1) -> Profile
667  __init__(Profile self, double qmin=0.0, double qmax=0.5, double delta=0.005) -> Profile
668  """
669  _IMP_saxs.Profile_swiginit(self, _IMP_saxs.new_Profile(*args))
670 
671  def calculate_profile_partial(self, *args):
672  r"""
673  calculate_profile_partial(Profile self, IMP::Particles const & particles, IMP::Vector< double > const & surface=IMP::Vector< double >(), IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS)
674  calculate_profile_partial(Profile self, IMP::Particles const & particles1, IMP::Particles const & particles2, IMP::Vector< double > const & surface1=IMP::Vector< double >(), IMP::Vector< double > const & surface2=IMP::Vector< double >(), IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS)
675  """
676  return _IMP_saxs.Profile_calculate_profile_partial(self, *args)
677 
678  def calculate_profile_reciprocal_partial(self, *args):
679  r"""calculate_profile_reciprocal_partial(Profile self, IMP::Particles const & particles, IMP::Vector< double > const & surface=IMP::Vector< double >(), IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS)"""
680  return _IMP_saxs.Profile_calculate_profile_reciprocal_partial(self, *args)
681 
682  def calculate_profile(self, *args):
683  r"""
684  calculate_profile(Profile self, IMP::Particles const & particles, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS, bool reciprocal=False)
685  calculate_profile(Profile self, IMP::Particles const & particles1, IMP::Particles const & particles2, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS)
686  """
687  return _IMP_saxs.Profile_calculate_profile(self, *args)
688 
689  def calculate_I0(self, *args):
690  r"""calculate_I0(Profile self, IMP::Particles const & particles, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS) -> double"""
691  return _IMP_saxs.Profile_calculate_I0(self, *args)
692 
693  def calculate_profile_constant_form_factor(self, particles, form_factor=1.0):
694  r"""calculate_profile_constant_form_factor(Profile self, IMP::Particles const & particles, double form_factor=1.0)"""
695  return _IMP_saxs.Profile_calculate_profile_constant_form_factor(self, particles, form_factor)
696 
697  def calculate_profile_symmetric(self, *args):
698  r"""calculate_profile_symmetric(Profile self, IMP::Particles const & particles, unsigned int n, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS)"""
699  return _IMP_saxs.Profile_calculate_profile_symmetric(self, *args)
700 
701  def profile_2_distribution(self, rd, max_distance):
702  r"""profile_2_distribution(Profile self, RadialDistributionFunction rd, double max_distance)"""
703  return _IMP_saxs.Profile_profile_2_distribution(self, rd, max_distance)
704 
705  def distribution_2_profile(self, r_dist):
706  r"""distribution_2_profile(Profile self, RadialDistributionFunction r_dist)"""
707  return _IMP_saxs.Profile_distribution_2_profile(self, r_dist)
708 
709  def resample(self, exp_profile, resampled_profile):
710  r"""resample(Profile self, Profile exp_profile, Profile resampled_profile)"""
711  return _IMP_saxs.Profile_resample(self, exp_profile, resampled_profile)
712 
713  def downsample(self, downsampled_profile, point_number):
714  r"""downsample(Profile self, Profile downsampled_profile, unsigned int point_number)"""
715  return _IMP_saxs.Profile_downsample(self, downsampled_profile, point_number)
716 
717  def radius_of_gyration(self, end_q_rg=1.3):
718  r"""radius_of_gyration(Profile self, double end_q_rg=1.3) -> double"""
719  return _IMP_saxs.Profile_radius_of_gyration(self, end_q_rg)
720 
721  def mean_intensity(self):
722  r"""mean_intensity(Profile self) -> double"""
723  return _IMP_saxs.Profile_mean_intensity(self)
724 
725  def read_SAXS_file(self, file_name, fit_file=False, max_q=0.0, units=1):
726  r"""read_SAXS_file(Profile self, std::string const & file_name, bool fit_file=False, double max_q=0.0, int units=1)"""
727  return _IMP_saxs.Profile_read_SAXS_file(self, file_name, fit_file, max_q, units)
728 
729  def write_SAXS_file(self, file_name, max_q=0.0):
730  r"""write_SAXS_file(Profile self, std::string const & file_name, double max_q=0.0)"""
731  return _IMP_saxs.Profile_write_SAXS_file(self, file_name, max_q)
732 
733  def read_partial_profiles(self, file_name):
734  r"""read_partial_profiles(Profile self, std::string const & file_name)"""
735  return _IMP_saxs.Profile_read_partial_profiles(self, file_name)
736 
737  def write_partial_profiles(self, file_name):
738  r"""write_partial_profiles(Profile self, std::string const & file_name)"""
739  return _IMP_saxs.Profile_write_partial_profiles(self, file_name)
740 
741  def get_delta_q(self):
742  r"""get_delta_q(Profile self) -> double"""
743  return _IMP_saxs.Profile_get_delta_q(self)
744 
745  def get_min_q(self):
746  r"""get_min_q(Profile self) -> double"""
747  return _IMP_saxs.Profile_get_min_q(self)
748 
749  def get_max_q(self):
750  r"""get_max_q(Profile self) -> double"""
751  return _IMP_saxs.Profile_get_max_q(self)
752 
753  def get_intensity(self, i):
754  r"""get_intensity(Profile self, unsigned int i) -> double"""
755  return _IMP_saxs.Profile_get_intensity(self, i)
756 
757  def get_q(self, i):
758  r"""get_q(Profile self, unsigned int i) -> double"""
759  return _IMP_saxs.Profile_get_q(self, i)
760 
761  def get_error(self, i):
762  r"""get_error(Profile self, unsigned int i) -> double"""
763  return _IMP_saxs.Profile_get_error(self, i)
764 
765  def get_weight(self, i):
766  r"""get_weight(Profile self, unsigned int i) -> double"""
767  return _IMP_saxs.Profile_get_weight(self, i)
768 
769  def get_qs(self):
770  r"""get_qs(Profile self) -> Eigen::VectorXd const &"""
771  return _IMP_saxs.Profile_get_qs(self)
772 
773  def get_intensities(self):
774  r"""get_intensities(Profile self) -> Eigen::VectorXd const &"""
775  return _IMP_saxs.Profile_get_intensities(self)
776 
777  def get_errors(self):
778  r"""get_errors(Profile self) -> Eigen::VectorXd const &"""
779  return _IMP_saxs.Profile_get_errors(self)
780 
781  def get_average_radius(self):
782  r"""get_average_radius(Profile self) -> double"""
783  return _IMP_saxs.Profile_get_average_radius(self)
784 
785  def size(self):
786  r"""size(Profile self) -> unsigned int"""
787  return _IMP_saxs.Profile_size(self)
788 
789  def is_uniform_sampling(self):
790  r"""is_uniform_sampling(Profile self) -> bool"""
791  return _IMP_saxs.Profile_is_uniform_sampling(self)
792 
793  def is_partial_profile(self):
794  r"""is_partial_profile(Profile self) -> bool"""
795  return _IMP_saxs.Profile_is_partial_profile(self)
796 
797  def get_name(self):
798  r"""get_name(Profile self) -> std::string"""
799  return _IMP_saxs.Profile_get_name(self)
800 
801  def get_id(self):
802  r"""get_id(Profile self) -> unsigned int"""
803  return _IMP_saxs.Profile_get_id(self)
804 
805  def set_qs(self, q):
806  r"""set_qs(Profile self, Eigen::VectorXd const & q)"""
807  return _IMP_saxs.Profile_set_qs(self, q)
808 
809  def set_intensities(self, i):
810  r"""set_intensities(Profile self, Eigen::VectorXd const & i)"""
811  return _IMP_saxs.Profile_set_intensities(self, i)
812 
813  def set_errors(self, e):
814  r"""set_errors(Profile self, Eigen::VectorXd const & e)"""
815  return _IMP_saxs.Profile_set_errors(self, e)
816 
817  def set_intensity(self, i, iq):
818  r"""set_intensity(Profile self, unsigned int i, double iq)"""
819  return _IMP_saxs.Profile_set_intensity(self, i, iq)
820 
821  def set_ff_table(self, ff_table):
822  r"""set_ff_table(Profile self, FormFactorTable ff_table)"""
823  return _IMP_saxs.Profile_set_ff_table(self, ff_table)
824 
825  def set_average_radius(self, r):
826  r"""set_average_radius(Profile self, double r)"""
827  return _IMP_saxs.Profile_set_average_radius(self, r)
828 
829  def set_average_volume(self, v):
830  r"""set_average_volume(Profile self, double v)"""
831  return _IMP_saxs.Profile_set_average_volume(self, v)
832 
833  def set_name(self, name):
834  r"""set_name(Profile self, std::string name)"""
835  return _IMP_saxs.Profile_set_name(self, name)
836 
837  def set_id(self, id):
838  r"""set_id(Profile self, unsigned int id)"""
839  return _IMP_saxs.Profile_set_id(self, id)
840 
841  def set_beam_profile(self, beam_profile_file):
842  r"""set_beam_profile(Profile self, std::string beam_profile_file)"""
843  return _IMP_saxs.Profile_set_beam_profile(self, beam_profile_file)
844 
845  def add_errors(self):
846  r"""add_errors(Profile self)"""
847  return _IMP_saxs.Profile_add_errors(self)
848 
849  def add_noise(self, percentage=0.03):
850  r"""add_noise(Profile self, double percentage=0.03)"""
851  return _IMP_saxs.Profile_add_noise(self, percentage)
852 
853  def sum_partial_profiles(self, c1, c2, check_cashed=True):
854  r"""sum_partial_profiles(Profile self, double c1, double c2, bool check_cashed=True)"""
855  return _IMP_saxs.Profile_sum_partial_profiles(self, c1, c2, check_cashed)
856 
857  def add(self, *args):
858  r"""
859  add(Profile self, Profile other_profile, double weight=1.0)
860  add(Profile self, IMP::Vector< IMP::saxs::Profile * > const & profiles, IMP::Vector< double > const & weights=IMP::Vector< double >())
861  """
862  return _IMP_saxs.Profile_add(self, *args)
863 
864  def add_partial_profiles(self, *args):
865  r"""
866  add_partial_profiles(Profile self, Profile other_profile, double weight=1.0)
867  add_partial_profiles(Profile self, IMP::Vector< IMP::saxs::Profile * > const & profiles, IMP::Vector< double > const & weights=IMP::Vector< double >())
868  """
869  return _IMP_saxs.Profile_add_partial_profiles(self, *args)
870 
871  def background_adjust(self, start_q):
872  r"""background_adjust(Profile self, double start_q)"""
873  return _IMP_saxs.Profile_background_adjust(self, start_q)
874 
875  def scale(self, c):
876  r"""scale(Profile self, double c)"""
877  return _IMP_saxs.Profile_scale(self, c)
878 
879  def offset(self, c):
880  r"""offset(Profile self, double c)"""
881  return _IMP_saxs.Profile_offset(self, c)
882 
883  def copy_errors(self, exp_profile):
884  r"""copy_errors(Profile self, Profile exp_profile)"""
885  return _IMP_saxs.Profile_copy_errors(self, exp_profile)
886 
887  def get_version_info(self):
888  r"""get_version_info(Profile self) -> VersionInfo"""
889  return _IMP_saxs.Profile_get_version_info(self)
890  __swig_destroy__ = _IMP_saxs.delete_Profile
891 
892  def __str__(self):
893  r"""__str__(Profile self) -> std::string"""
894  return _IMP_saxs.Profile___str__(self)
895 
896  def __repr__(self):
897  r"""__repr__(Profile self) -> std::string"""
898  return _IMP_saxs.Profile___repr__(self)
899 
900  @staticmethod
901  def get_from(o):
902  return _object_cast_to_Profile(o)
903 
904 
905  def _get_as_binary(self):
906  r"""_get_as_binary(Profile self) -> PyObject *"""
907  return _IMP_saxs.Profile__get_as_binary(self)
908 
909  def _set_from_binary(self, p):
910  r"""_set_from_binary(Profile self, PyObject * p)"""
911  return _IMP_saxs.Profile__set_from_binary(self, p)
912 
913  def __getstate__(self):
914  p = self._get_as_binary()
915  if len(self.__dict__) > 1:
916  d = self.__dict__.copy()
917  del d['this']
918  p = (d, p)
919  return p
920 
921  def __setstate__(self, p):
922  if not hasattr(self, 'this'):
923  self.__init__()
924  if isinstance(p, tuple):
925  d, p = p
926  self.__dict__.update(d)
927  return self._set_from_binary(p)
928 
929 
930 # Register Profile in _IMP_saxs:
931 _IMP_saxs.Profile_swigregister(Profile)
932 Profile.modulation_function_parameter_ = _IMP_saxs.cvar.Profile_modulation_function_parameter_
933 
934 class FitParameters(object):
935  r"""Proxy of C++ IMP::saxs::FitParameters class."""
936 
937  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
938  __repr__ = _swig_repr
939 
940  def __init__(self, *args):
941  r"""
942  __init__(FitParameters self) -> FitParameters
943  __init__(FitParameters self, double chi_square, double c1, double c2, double c, double o) -> FitParameters
944  __init__(FitParameters self, double chi_square, double c1, double c2) -> FitParameters
945  """
946  _IMP_saxs.FitParameters_swiginit(self, _IMP_saxs.new_FitParameters(*args))
947 
948  def get_score(self):
949  r"""get_score(FitParameters self) -> double"""
950  return _IMP_saxs.FitParameters_get_score(self)
951 
952  def get_chi_square(self):
953  r"""get_chi_square(FitParameters self) -> double"""
954  return _IMP_saxs.FitParameters_get_chi_square(self)
955 
956  def get_c1(self):
957  r"""get_c1(FitParameters self) -> double"""
958  return _IMP_saxs.FitParameters_get_c1(self)
959 
960  def get_c2(self):
961  r"""get_c2(FitParameters self) -> double"""
962  return _IMP_saxs.FitParameters_get_c2(self)
963 
964  def get_scale(self):
965  r"""get_scale(FitParameters self) -> double"""
966  return _IMP_saxs.FitParameters_get_scale(self)
967 
968  def get_offset(self):
969  r"""get_offset(FitParameters self) -> double"""
970  return _IMP_saxs.FitParameters_get_offset(self)
971 
972  def get_default_chi_square(self):
973  r"""get_default_chi_square(FitParameters self) -> double"""
974  return _IMP_saxs.FitParameters_get_default_chi_square(self)
975 
976  def get_pdb_file_name(self):
977  r"""get_pdb_file_name(FitParameters self) -> std::string"""
978  return _IMP_saxs.FitParameters_get_pdb_file_name(self)
979 
980  def get_profile_file_name(self):
981  r"""get_profile_file_name(FitParameters self) -> std::string"""
982  return _IMP_saxs.FitParameters_get_profile_file_name(self)
983 
984  def get_mol_index(self):
985  r"""get_mol_index(FitParameters self) -> int"""
986  return _IMP_saxs.FitParameters_get_mol_index(self)
987 
988  def set_score(self, score):
989  r"""set_score(FitParameters self, double score)"""
990  return _IMP_saxs.FitParameters_set_score(self, score)
991 
992  def set_chi_square(self, chi_square):
993  r"""set_chi_square(FitParameters self, double chi_square)"""
994  return _IMP_saxs.FitParameters_set_chi_square(self, chi_square)
995 
996  def set_default_chi_square(self, chi_square):
997  r"""set_default_chi_square(FitParameters self, double chi_square)"""
998  return _IMP_saxs.FitParameters_set_default_chi_square(self, chi_square)
999 
1000  def set_profile_file_name(self, file_name):
1001  r"""set_profile_file_name(FitParameters self, std::string file_name)"""
1002  return _IMP_saxs.FitParameters_set_profile_file_name(self, file_name)
1003 
1004  def set_pdb_file_name(self, file_name):
1005  r"""set_pdb_file_name(FitParameters self, std::string file_name)"""
1006  return _IMP_saxs.FitParameters_set_pdb_file_name(self, file_name)
1007 
1008  def set_mol_index(self, index):
1009  r"""set_mol_index(FitParameters self, int index)"""
1010  return _IMP_saxs.FitParameters_set_mol_index(self, index)
1011 
1012  def show(self, s):
1013  r"""show(FitParameters self, _ostream s)"""
1014  return _IMP_saxs.FitParameters_show(self, s)
1015  __swig_destroy__ = _IMP_saxs.delete_FitParameters
1016 
1017 # Register FitParameters in _IMP_saxs:
1018 _IMP_saxs.FitParameters_swigregister(FitParameters)
1019 class WeightedFitParameters(FitParameters):
1020  r"""Proxy of C++ IMP::saxs::WeightedFitParameters class."""
1021 
1022  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1023  __repr__ = _swig_repr
1024 
1025  def __init__(self, *args):
1026  r"""
1027  __init__(WeightedFitParameters self) -> WeightedFitParameters
1028  __init__(WeightedFitParameters self, double chi_square, double c1, double c2, IMP::Vector< double > const & weights=IMP::Vector< double >()) -> WeightedFitParameters
1029  __init__(WeightedFitParameters self, FitParameters fp) -> WeightedFitParameters
1030  """
1031  _IMP_saxs.WeightedFitParameters_swiginit(self, _IMP_saxs.new_WeightedFitParameters(*args))
1032 
1033  def get_weights(self):
1034  r"""get_weights(WeightedFitParameters self) -> IMP::Vector< double > const &"""
1035  return _IMP_saxs.WeightedFitParameters_get_weights(self)
1036 
1037  def set_weights(self, weights):
1038  r"""set_weights(WeightedFitParameters self, IMP::Vector< double > const & weights)"""
1039  return _IMP_saxs.WeightedFitParameters_set_weights(self, weights)
1040 
1041  def show(self, s):
1042  r"""show(WeightedFitParameters self, _ostream s)"""
1043  return _IMP_saxs.WeightedFitParameters_show(self, s)
1044  __swig_destroy__ = _IMP_saxs.delete_WeightedFitParameters
1045 
1046 # Register WeightedFitParameters in _IMP_saxs:
1047 _IMP_saxs.WeightedFitParameters_swigregister(WeightedFitParameters)
1048 class ChiScore(IMP.Object):
1049  r"""Proxy of C++ IMP::saxs::ChiScore class."""
1050 
1051  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1052 
1053  def __init__(self):
1054  r"""__init__(ChiScore self) -> ChiScore"""
1055  _IMP_saxs.ChiScore_swiginit(self, _IMP_saxs.new_ChiScore())
1056 
1057  def compute_score(self, exp_profile, model_profile, use_offset=False):
1058  r"""compute_score(ChiScore self, Profile exp_profile, Profile model_profile, bool use_offset=False) -> double"""
1059  return _IMP_saxs.ChiScore_compute_score(self, exp_profile, model_profile, use_offset)
1060 
1061  def compute_scale_factor(self, exp_profile, model_profile, offset=0.0):
1062  r"""compute_scale_factor(ChiScore self, Profile exp_profile, Profile model_profile, double offset=0.0) -> double"""
1063  return _IMP_saxs.ChiScore_compute_scale_factor(self, exp_profile, model_profile, offset)
1064 
1065  def compute_offset(self, exp_profile, model_profile):
1066  r"""compute_offset(ChiScore self, Profile exp_profile, Profile model_profile) -> double"""
1067  return _IMP_saxs.ChiScore_compute_offset(self, exp_profile, model_profile)
1068 
1069  def get_version_info(self):
1070  r"""get_version_info(ChiScore self) -> VersionInfo"""
1071  return _IMP_saxs.ChiScore_get_version_info(self)
1072  __swig_destroy__ = _IMP_saxs.delete_ChiScore
1073 
1074  def __str__(self):
1075  r"""__str__(ChiScore self) -> std::string"""
1076  return _IMP_saxs.ChiScore___str__(self)
1077 
1078  def __repr__(self):
1079  r"""__repr__(ChiScore self) -> std::string"""
1080  return _IMP_saxs.ChiScore___repr__(self)
1081 
1082  @staticmethod
1083  def get_from(o):
1084  return _object_cast_to_ChiScore(o)
1085 
1086 
1087 # Register ChiScore in _IMP_saxs:
1088 _IMP_saxs.ChiScore_swigregister(ChiScore)
1089 class ChiScoreLog(IMP.Object):
1090  r"""Proxy of C++ IMP::saxs::ChiScoreLog class."""
1091 
1092  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1093 
1094  def __init__(self):
1095  r"""__init__(ChiScoreLog self) -> ChiScoreLog"""
1096  _IMP_saxs.ChiScoreLog_swiginit(self, _IMP_saxs.new_ChiScoreLog())
1097 
1098  def compute_score(self, *args):
1099  r"""
1100  compute_score(ChiScoreLog self, Profile exp_profile, Profile model_profile, bool use_offset=False) -> double
1101  compute_score(ChiScoreLog self, Profile exp_profile, Profile model_profile, double min_q, double max_q) -> double
1102  """
1103  return _IMP_saxs.ChiScoreLog_compute_score(self, *args)
1104 
1105  def compute_scale_factor(self, exp_profile, model_profile, offset=0.0):
1106  r"""compute_scale_factor(ChiScoreLog self, Profile exp_profile, Profile model_profile, double offset=0.0) -> double"""
1107  return _IMP_saxs.ChiScoreLog_compute_scale_factor(self, exp_profile, model_profile, offset)
1108 
1109  def compute_offset(self, exp_profile, model_profile):
1110  r"""compute_offset(ChiScoreLog self, Profile exp_profile, Profile model_profile) -> double"""
1111  return _IMP_saxs.ChiScoreLog_compute_offset(self, exp_profile, model_profile)
1112 
1113  def get_version_info(self):
1114  r"""get_version_info(ChiScoreLog self) -> VersionInfo"""
1115  return _IMP_saxs.ChiScoreLog_get_version_info(self)
1116  __swig_destroy__ = _IMP_saxs.delete_ChiScoreLog
1117 
1118  def __str__(self):
1119  r"""__str__(ChiScoreLog self) -> std::string"""
1120  return _IMP_saxs.ChiScoreLog___str__(self)
1121 
1122  def __repr__(self):
1123  r"""__repr__(ChiScoreLog self) -> std::string"""
1124  return _IMP_saxs.ChiScoreLog___repr__(self)
1125 
1126  @staticmethod
1127  def get_from(o):
1128  return _object_cast_to_ChiScoreLog(o)
1129 
1130 
1131 # Register ChiScoreLog in _IMP_saxs:
1132 _IMP_saxs.ChiScoreLog_swigregister(ChiScoreLog)
1133 class ProfileFitterChi(IMP.Object):
1134  r"""Proxy of C++ IMP::saxs::ProfileFitter< IMP::saxs::ChiScore > class."""
1135 
1136  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1137  __repr__ = _swig_repr
1138 
1139  def __init__(self, *args):
1140  r"""
1141  __init__(ProfileFitterChi self, Profile exp_profile) -> ProfileFitterChi
1142  __init__(ProfileFitterChi self, Profile exp_profile, ChiScore sf) -> ProfileFitterChi
1143  """
1144  _IMP_saxs.ProfileFitterChi_swiginit(self, _IMP_saxs.new_ProfileFitterChi(*args))
1145 
1146  def compute_score(self, *args):
1147  r"""compute_score(ProfileFitterChi self, Profile model_profile, bool use_offset=False, std::string const fit_file_name="") -> double"""
1148  return _IMP_saxs.ProfileFitterChi_compute_score(self, *args)
1149 
1150  def fit_profile(self, *args):
1151  r"""fit_profile(ProfileFitterChi self, Profile partial_profile, double min_c1=0.95, double max_c1=1.05, double min_c2=-2.0, double max_c2=4.0, bool use_offset=False, std::string const fit_file_name="") -> FitParameters"""
1152  return _IMP_saxs.ProfileFitterChi_fit_profile(self, *args)
1153 
1154  def compute_scale_factor(self, model_profile, offset=0.0):
1155  r"""compute_scale_factor(ProfileFitterChi self, Profile model_profile, double offset=0.0) -> double"""
1156  return _IMP_saxs.ProfileFitterChi_compute_scale_factor(self, model_profile, offset)
1157 
1158  def compute_offset(self, model_profile):
1159  r"""compute_offset(ProfileFitterChi self, Profile model_profile) -> double"""
1160  return _IMP_saxs.ProfileFitterChi_compute_offset(self, model_profile)
1161 
1162  def resample(self, model_profile, resampled_profile):
1163  r"""resample(ProfileFitterChi self, Profile model_profile, Profile resampled_profile)"""
1164  return _IMP_saxs.ProfileFitterChi_resample(self, model_profile, resampled_profile)
1165 
1166  def write_SAXS_fit_file(self, file_name, model_profile, chi_square, c=1, offset=0):
1167  r"""write_SAXS_fit_file(ProfileFitterChi self, std::string const & file_name, Profile model_profile, double const chi_square, double const c=1, double const offset=0)"""
1168  return _IMP_saxs.ProfileFitterChi_write_SAXS_fit_file(self, file_name, model_profile, chi_square, c, offset)
1169 
1170  def get_profile(self):
1171  r"""get_profile(ProfileFitterChi self) -> Profile"""
1172  return _IMP_saxs.ProfileFitterChi_get_profile(self)
1173  __swig_destroy__ = _IMP_saxs.delete_ProfileFitterChi
1174 
1175 # Register ProfileFitterChi in _IMP_saxs:
1176 _IMP_saxs.ProfileFitterChi_swigregister(ProfileFitterChi)
1177 class WeightedProfileFitterChi(ProfileFitterChi):
1178  r"""Proxy of C++ IMP::saxs::WeightedProfileFitter< IMP::saxs::ChiScore > class."""
1179 
1180  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1181  __repr__ = _swig_repr
1182 
1183  def __init__(self, exp_profile):
1184  r"""__init__(WeightedProfileFitterChi self, Profile exp_profile) -> WeightedProfileFitterChi"""
1185  _IMP_saxs.WeightedProfileFitterChi_swiginit(self, _IMP_saxs.new_WeightedProfileFitterChi(exp_profile))
1186 
1187  def compute_score(self, profiles, use_offset=False, NNLS=True):
1188  r"""compute_score(WeightedProfileFitterChi self, IMP::saxs::ProfilesTemp const & profiles, bool use_offset=False, bool NNLS=True) -> double"""
1189  return _IMP_saxs.WeightedProfileFitterChi_compute_score(self, profiles, use_offset, NNLS)
1190 
1191  def fit_profile(self, partial_profiles, min_c1=0.95, max_c1=1.05, min_c2=-2.0, max_c2=4.0, use_offset=False):
1192  r"""fit_profile(WeightedProfileFitterChi self, IMP::saxs::ProfilesTemp partial_profiles, double min_c1=0.95, double max_c1=1.05, double min_c2=-2.0, double max_c2=4.0, bool use_offset=False) -> WeightedFitParameters"""
1193  return _IMP_saxs.WeightedProfileFitterChi_fit_profile(self, partial_profiles, min_c1, max_c1, min_c2, max_c2, use_offset)
1194 
1195  def write_fit_file(self, partial_profiles, fp, fit_file_name, use_offset=False):
1196  r"""write_fit_file(WeightedProfileFitterChi self, IMP::saxs::ProfilesTemp partial_profiles, WeightedFitParameters fp, std::string const fit_file_name, bool use_offset=False)"""
1197  return _IMP_saxs.WeightedProfileFitterChi_write_fit_file(self, partial_profiles, fp, fit_file_name, use_offset)
1198  __swig_destroy__ = _IMP_saxs.delete_WeightedProfileFitterChi
1199 
1200 # Register WeightedProfileFitterChi in _IMP_saxs:
1201 _IMP_saxs.WeightedProfileFitterChi_swigregister(WeightedProfileFitterChi)
1202 class Restraint(IMP.Restraint):
1203  r"""Proxy of C++ IMP::saxs::Restraint class."""
1204 
1205  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1206 
1207  def __init__(self, *args):
1208  r"""
1209  __init__(Restraint self, IMP::Particles const & particles, Profile exp_profile, IMP::saxs::FormFactorType ff_type=HEAVY_ATOMS) -> Restraint
1210  __init__(Restraint self) -> Restraint
1211  """
1212  _IMP_saxs.Restraint_swiginit(self, _IMP_saxs.new_Restraint(*args))
1213 
1214  if self.__class__ != Restraint:
1215  _director_objects.register(self)
1216 
1217 
1218 
1219 
1220  def do_get_inputs(self):
1221  r"""do_get_inputs(Restraint self) -> IMP::ModelObjectsTemp"""
1222  return _IMP_saxs.Restraint_do_get_inputs(self)
1223 
1224  def get_version_info(self):
1225  r"""get_version_info(Restraint self) -> VersionInfo"""
1226  return _IMP_saxs.Restraint_get_version_info(self)
1227  __swig_destroy__ = _IMP_saxs.delete_Restraint
1228 
1229  def __str__(self):
1230  r"""__str__(Restraint self) -> std::string"""
1231  return _IMP_saxs.Restraint___str__(self)
1232 
1233  def __repr__(self):
1234  r"""__repr__(Restraint self) -> std::string"""
1235  return _IMP_saxs.Restraint___repr__(self)
1236 
1237  @staticmethod
1238  def get_from(o):
1239  return _object_cast_to_Restraint(o)
1240 
1241 
1242  def _get_as_binary(self):
1243  r"""_get_as_binary(Restraint self) -> PyObject *"""
1244  return _IMP_saxs.Restraint__get_as_binary(self)
1245 
1246  def _set_from_binary(self, p):
1247  r"""_set_from_binary(Restraint self, PyObject * p)"""
1248  return _IMP_saxs.Restraint__set_from_binary(self, p)
1249 
1250  def __getstate__(self):
1251  p = self._get_as_binary()
1252  if len(self.__dict__) > 1:
1253  d = self.__dict__.copy()
1254  del d['this']
1255  p = (d, p)
1256  return p
1257 
1258  def __setstate__(self, p):
1259  if not hasattr(self, 'this'):
1260  self.__init__()
1261  if isinstance(p, tuple):
1262  d, p = p
1263  self.__dict__.update(d)
1264  return self._set_from_binary(p)
1265 
1266 
1267 # Register Restraint in _IMP_saxs:
1268 _IMP_saxs.Restraint_swigregister(Restraint)
1269 class RadiusOfGyrationRestraint(Restraint):
1270  r"""Proxy of C++ IMP::saxs::RadiusOfGyrationRestraint class."""
1271 
1272  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1273  __repr__ = _swig_repr
1274 
1275  def __init__(self, particles, exp_profile, end_q_rg=1.3):
1276  r"""__init__(RadiusOfGyrationRestraint self, IMP::Particles const & particles, Profile exp_profile, double const end_q_rg=1.3) -> RadiusOfGyrationRestraint"""
1277  _IMP_saxs.RadiusOfGyrationRestraint_swiginit(self, _IMP_saxs.new_RadiusOfGyrationRestraint(particles, exp_profile, end_q_rg))
1278  __swig_destroy__ = _IMP_saxs.delete_RadiusOfGyrationRestraint
1279 
1280 # Register RadiusOfGyrationRestraint in _IMP_saxs:
1281 _IMP_saxs.RadiusOfGyrationRestraint_swigregister(RadiusOfGyrationRestraint)
1282 class FloatDistribution(DistBase):
1283  r"""Proxy of C++ IMP::saxs::Distribution< double > class."""
1284 
1285  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1286  __repr__ = _swig_repr
1287 
1288  def __init__(self, *args):
1289  r"""__init__(FloatDistribution self, double bin_size=pr_resolution) -> FloatDistribution"""
1290  _IMP_saxs.FloatDistribution_swiginit(self, _IMP_saxs.new_FloatDistribution(*args))
1291 
1292  def get_max_distance(self):
1293  r"""get_max_distance(FloatDistribution self) -> double"""
1294  return _IMP_saxs.FloatDistribution_get_max_distance(self)
1295 
1296  def get_bin_size(self):
1297  r"""get_bin_size(FloatDistribution self) -> double"""
1298  return _IMP_saxs.FloatDistribution_get_bin_size(self)
1299 
1300  def get_index_from_distance(self, dist):
1301  r"""get_index_from_distance(FloatDistribution self, double dist) -> unsigned int"""
1302  return _IMP_saxs.FloatDistribution_get_index_from_distance(self, dist)
1303 
1304  def get_distance_from_index(self, index):
1305  r"""get_distance_from_index(FloatDistribution self, unsigned int index) -> double"""
1306  return _IMP_saxs.FloatDistribution_get_distance_from_index(self, index)
1307  __swig_destroy__ = _IMP_saxs.delete_FloatDistribution
1308 
1309 # Register FloatDistribution in _IMP_saxs:
1310 _IMP_saxs.FloatDistribution_swigregister(FloatDistribution)
1311 class VectorDistribution(object):
1312  r"""Proxy of C++ IMP::saxs::Distribution< IMP::Vector3D > class."""
1313 
1314  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1315  __repr__ = _swig_repr
1316 
1317  def __init__(self, *args):
1318  r"""__init__(VectorDistribution self, double bin_size=pr_resolution) -> VectorDistribution"""
1319  _IMP_saxs.VectorDistribution_swiginit(self, _IMP_saxs.new_VectorDistribution(*args))
1320 
1321  def get_max_distance(self):
1322  r"""get_max_distance(VectorDistribution self) -> double"""
1323  return _IMP_saxs.VectorDistribution_get_max_distance(self)
1324 
1325  def get_bin_size(self):
1326  r"""get_bin_size(VectorDistribution self) -> double"""
1327  return _IMP_saxs.VectorDistribution_get_bin_size(self)
1328 
1329  def get_index_from_distance(self, dist):
1330  r"""get_index_from_distance(VectorDistribution self, double dist) -> unsigned int"""
1331  return _IMP_saxs.VectorDistribution_get_index_from_distance(self, dist)
1332 
1333  def get_distance_from_index(self, index):
1334  r"""get_distance_from_index(VectorDistribution self, unsigned int index) -> double"""
1335  return _IMP_saxs.VectorDistribution_get_distance_from_index(self, index)
1336  __swig_destroy__ = _IMP_saxs.delete_VectorDistribution
1337 
1338 # Register VectorDistribution in _IMP_saxs:
1339 _IMP_saxs.VectorDistribution_swigregister(VectorDistribution)
1340 class RadialDistributionFunction(FloatDistribution):
1341  r"""Proxy of C++ IMP::saxs::RadialDistributionFunction class."""
1342 
1343  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1344  __repr__ = _swig_repr
1345 
1346  def __init__(self, *args):
1347  r"""
1348  __init__(RadialDistributionFunction self, double bin_size=pr_resolution) -> RadialDistributionFunction
1349  __init__(RadialDistributionFunction self, std::string const & file_name) -> RadialDistributionFunction
1350  """
1351  _IMP_saxs.RadialDistributionFunction_swiginit(self, _IMP_saxs.new_RadialDistributionFunction(*args))
1352 
1353  def get_square_root_distances(self):
1354  r"""get_square_root_distances(RadialDistributionFunction self) -> DistBase"""
1355  return _IMP_saxs.RadialDistributionFunction_get_square_root_distances(self)
1356 
1357  def scale(self, c):
1358  r"""scale(RadialDistributionFunction self, double c)"""
1359  return _IMP_saxs.RadialDistributionFunction_scale(self, c)
1360 
1361  def add(self, model_pr):
1362  r"""add(RadialDistributionFunction self, RadialDistributionFunction model_pr)"""
1363  return _IMP_saxs.RadialDistributionFunction_add(self, model_pr)
1364 
1365  def show(self, *args):
1366  r"""show(RadialDistributionFunction self, _ostream out=std::cout)"""
1367  return _IMP_saxs.RadialDistributionFunction_show(self, *args)
1368 
1369  def R_factor_score(self, *args):
1370  r"""R_factor_score(RadialDistributionFunction self, RadialDistributionFunction model_pr, std::string const & file_name="") -> double"""
1371  return _IMP_saxs.RadialDistributionFunction_R_factor_score(self, *args)
1372 
1373  def fit(self, *args):
1374  r"""fit(RadialDistributionFunction self, RadialDistributionFunction model_pr, std::string const & file_name="") -> double"""
1375  return _IMP_saxs.RadialDistributionFunction_fit(self, *args)
1376 
1377  def normalize(self):
1378  r"""normalize(RadialDistributionFunction self)"""
1379  return _IMP_saxs.RadialDistributionFunction_normalize(self)
1380 
1381  def add_to_distribution(self, dist, value):
1382  r"""add_to_distribution(RadialDistributionFunction self, double dist, double value)"""
1383  return _IMP_saxs.RadialDistributionFunction_add_to_distribution(self, dist, value)
1384  __swig_destroy__ = _IMP_saxs.delete_RadialDistributionFunction
1385 
1386 # Register RadialDistributionFunction in _IMP_saxs:
1387 _IMP_saxs.RadialDistributionFunction_swigregister(RadialDistributionFunction)
1388 class DeltaDistributionFunction(VectorDistribution):
1389  r"""Proxy of C++ IMP::saxs::DeltaDistributionFunction class."""
1390 
1391  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1392  __repr__ = _swig_repr
1393 
1394  def __init__(self, *args):
1395  r"""__init__(DeltaDistributionFunction self, IMP::Particles const & particles, double max_distance=0.0, double bin_size=pr_resolution) -> DeltaDistributionFunction"""
1396  _IMP_saxs.DeltaDistributionFunction_swiginit(self, _IMP_saxs.new_DeltaDistributionFunction(*args))
1397 
1398  def calculate_derivative_distribution(self, particle):
1399  r"""calculate_derivative_distribution(DeltaDistributionFunction self, Particle particle)"""
1400  return _IMP_saxs.DeltaDistributionFunction_calculate_derivative_distribution(self, particle)
1401 
1402  def show(self, *args):
1403  r"""show(DeltaDistributionFunction self, _ostream out=std::cout, std::string prefix="")"""
1404  return _IMP_saxs.DeltaDistributionFunction_show(self, *args)
1405  __swig_destroy__ = _IMP_saxs.delete_DeltaDistributionFunction
1406 
1407 # Register DeltaDistributionFunction in _IMP_saxs:
1408 _IMP_saxs.DeltaDistributionFunction_swigregister(DeltaDistributionFunction)
1409 class SolventAccessibleSurface(object):
1410  r"""Proxy of C++ IMP::saxs::SolventAccessibleSurface class."""
1411 
1412  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1413  __repr__ = _swig_repr
1414 
1415  def get_solvent_accessibility(self, points, probe_radius=1.8, density=5.0):
1416  r"""get_solvent_accessibility(SolventAccessibleSurface self, IMP::core::XYZRs const & points, double probe_radius=1.8, double density=5.0) -> IMP::Vector< double >"""
1417  return _IMP_saxs.SolventAccessibleSurface_get_solvent_accessibility(self, points, probe_radius, density)
1418 
1419  def __init__(self):
1420  r"""__init__(SolventAccessibleSurface self) -> SolventAccessibleSurface"""
1421  _IMP_saxs.SolventAccessibleSurface_swiginit(self, _IMP_saxs.new_SolventAccessibleSurface())
1422  __swig_destroy__ = _IMP_saxs.delete_SolventAccessibleSurface
1423 
1424 # Register SolventAccessibleSurface in _IMP_saxs:
1425 _IMP_saxs.SolventAccessibleSurface_swigregister(SolventAccessibleSurface)
1426 class ProfileFitterChiLog(IMP.Object):
1427  r"""Proxy of C++ IMP::saxs::ProfileFitter< IMP::saxs::ChiScoreLog > class."""
1428 
1429  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1430  __repr__ = _swig_repr
1431 
1432  def __init__(self, *args):
1433  r"""
1434  __init__(ProfileFitterChiLog self, Profile exp_profile) -> ProfileFitterChiLog
1435  __init__(ProfileFitterChiLog self, Profile exp_profile, ChiScoreLog sf) -> ProfileFitterChiLog
1436  """
1437  _IMP_saxs.ProfileFitterChiLog_swiginit(self, _IMP_saxs.new_ProfileFitterChiLog(*args))
1438 
1439  def compute_score(self, *args):
1440  r"""compute_score(ProfileFitterChiLog self, Profile model_profile, bool use_offset=False, std::string const fit_file_name="") -> double"""
1441  return _IMP_saxs.ProfileFitterChiLog_compute_score(self, *args)
1442 
1443  def fit_profile(self, *args):
1444  r"""fit_profile(ProfileFitterChiLog self, Profile partial_profile, double min_c1=0.95, double max_c1=1.05, double min_c2=-2.0, double max_c2=4.0, bool use_offset=False, std::string const fit_file_name="") -> FitParameters"""
1445  return _IMP_saxs.ProfileFitterChiLog_fit_profile(self, *args)
1446 
1447  def compute_scale_factor(self, model_profile, offset=0.0):
1448  r"""compute_scale_factor(ProfileFitterChiLog self, Profile model_profile, double offset=0.0) -> double"""
1449  return _IMP_saxs.ProfileFitterChiLog_compute_scale_factor(self, model_profile, offset)
1450 
1451  def compute_offset(self, model_profile):
1452  r"""compute_offset(ProfileFitterChiLog self, Profile model_profile) -> double"""
1453  return _IMP_saxs.ProfileFitterChiLog_compute_offset(self, model_profile)
1454 
1455  def resample(self, model_profile, resampled_profile):
1456  r"""resample(ProfileFitterChiLog self, Profile model_profile, Profile resampled_profile)"""
1457  return _IMP_saxs.ProfileFitterChiLog_resample(self, model_profile, resampled_profile)
1458 
1459  def write_SAXS_fit_file(self, file_name, model_profile, chi_square, c=1, offset=0):
1460  r"""write_SAXS_fit_file(ProfileFitterChiLog self, std::string const & file_name, Profile model_profile, double const chi_square, double const c=1, double const offset=0)"""
1461  return _IMP_saxs.ProfileFitterChiLog_write_SAXS_fit_file(self, file_name, model_profile, chi_square, c, offset)
1462 
1463  def get_profile(self):
1464  r"""get_profile(ProfileFitterChiLog self) -> Profile"""
1465  return _IMP_saxs.ProfileFitterChiLog_get_profile(self)
1466  __swig_destroy__ = _IMP_saxs.delete_ProfileFitterChiLog
1467 
1468 # Register ProfileFitterChiLog in _IMP_saxs:
1469 _IMP_saxs.ProfileFitterChiLog_swigregister(ProfileFitterChiLog)
1470 class ProfileFitterRatioVolatility(IMP.Object):
1471  r"""Proxy of C++ IMP::saxs::ProfileFitter< IMP::saxs::RatioVolatilityScore > class."""
1472 
1473  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1474  __repr__ = _swig_repr
1475 
1476  def __init__(self, *args):
1477  r"""
1478  __init__(ProfileFitterRatioVolatility self, Profile exp_profile) -> ProfileFitterRatioVolatility
1479  __init__(ProfileFitterRatioVolatility self, Profile exp_profile, IMP::saxs::RatioVolatilityScore * sf) -> ProfileFitterRatioVolatility
1480  """
1481  _IMP_saxs.ProfileFitterRatioVolatility_swiginit(self, _IMP_saxs.new_ProfileFitterRatioVolatility(*args))
1482 
1483  def compute_score(self, *args):
1484  r"""compute_score(ProfileFitterRatioVolatility self, Profile model_profile, bool use_offset=False, std::string const fit_file_name="") -> double"""
1485  return _IMP_saxs.ProfileFitterRatioVolatility_compute_score(self, *args)
1486 
1487  def fit_profile(self, *args):
1488  r"""fit_profile(ProfileFitterRatioVolatility self, Profile partial_profile, double min_c1=0.95, double max_c1=1.05, double min_c2=-2.0, double max_c2=4.0, bool use_offset=False, std::string const fit_file_name="") -> FitParameters"""
1489  return _IMP_saxs.ProfileFitterRatioVolatility_fit_profile(self, *args)
1490 
1491  def compute_scale_factor(self, model_profile, offset=0.0):
1492  r"""compute_scale_factor(ProfileFitterRatioVolatility self, Profile model_profile, double offset=0.0) -> double"""
1493  return _IMP_saxs.ProfileFitterRatioVolatility_compute_scale_factor(self, model_profile, offset)
1494 
1495  def compute_offset(self, model_profile):
1496  r"""compute_offset(ProfileFitterRatioVolatility self, Profile model_profile) -> double"""
1497  return _IMP_saxs.ProfileFitterRatioVolatility_compute_offset(self, model_profile)
1498 
1499  def resample(self, model_profile, resampled_profile):
1500  r"""resample(ProfileFitterRatioVolatility self, Profile model_profile, Profile resampled_profile)"""
1501  return _IMP_saxs.ProfileFitterRatioVolatility_resample(self, model_profile, resampled_profile)
1502 
1503  def write_SAXS_fit_file(self, file_name, model_profile, chi_square, c=1, offset=0):
1504  r"""write_SAXS_fit_file(ProfileFitterRatioVolatility self, std::string const & file_name, Profile model_profile, double const chi_square, double const c=1, double const offset=0)"""
1505  return _IMP_saxs.ProfileFitterRatioVolatility_write_SAXS_fit_file(self, file_name, model_profile, chi_square, c, offset)
1506 
1507  def get_profile(self):
1508  r"""get_profile(ProfileFitterRatioVolatility self) -> Profile"""
1509  return _IMP_saxs.ProfileFitterRatioVolatility_get_profile(self)
1510  __swig_destroy__ = _IMP_saxs.delete_ProfileFitterRatioVolatility
1511 
1512 # Register ProfileFitterRatioVolatility in _IMP_saxs:
1513 _IMP_saxs.ProfileFitterRatioVolatility_swigregister(ProfileFitterRatioVolatility)
1514 
1515 def get_module_name():
1516  r"""get_module_name() -> std::string const"""
1517  return _IMP_saxs.get_module_name()
1518 
1519 def get_module_version():
1520  r"""get_module_version() -> std::string const"""
1521  return _IMP_saxs.get_module_version()
1522 
1523 def get_example_path(fname):
1524  r"""get_example_path(std::string fname) -> std::string"""
1525  return _IMP_saxs.get_example_path(fname)
1526 
1527 def get_data_path(fname):
1528  r"""get_data_path(std::string fname) -> std::string"""
1529  return _IMP_saxs.get_data_path(fname)
1530 
1531 from . import _version_check
1532 _version_check.check_version(get_module_version())
1533 __version__ = get_module_version()
1534 
1535 
def get_example_path
Return the full path to one of this module's example files.
Various classes to hold sets of particles.
def get_data_path
Return the full path to one of this module's data files.
Make CGAL functionality available to IMP.
def get_module_version
Return the version of this module, as a string.
FormFactorTable * get_default_form_factor_table()
Composable functors to implement scores via compile-time composition.
double get_volume(const BoundingBoxD< D > &bb)
See BoundingBoxD.
Definition: BoundingBoxD.h:170
Common base class for heavy weight IMP objects.
Definition: Object.h:111
def get_module_name
Return the fully-qualified name of this module.
std::ostream & show(Hierarchy h, std::ostream &out=std::cout)
Print the hierarchy using a given decorator to display each node.
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...
Output IMP model data in various file formats.
Functionality for loading, creating, manipulating and scoring atomic structures.
double radius_of_gyration(const Particles &particles)
compute radius_of_gyration
Definition: saxs/utility.h:74
A restraint is a term in an IMP ScoringFunction.
Definition: Restraint.h:56