# This file was automatically generated by SWIG (https://www.swig.org).
# Version 4.2.1
#
# Do not make changes to this file unless you know what you are doing - modify
# the SWIG interface file instead.
from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if __package__ or "." in __name__:
from . import _sicpyio_base
else:
import _sicpyio_base
try:
import builtins as __builtin__
except ImportError:
import __builtin__
def _swig_repr(self):
try:
strthis = "proxy of " + self.this.__repr__()
except __builtin__.Exception:
strthis = ""
return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
def _swig_setattr_nondynamic_instance_variable(set):
def set_instance_attr(self, name, value):
if name == "this":
set(self, name, value)
elif name == "thisown":
self.this.own(value)
elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
set(self, name, value)
else:
raise AttributeError("You cannot add instance attributes to %s" % self)
return set_instance_attr
def _swig_setattr_nondynamic_class_variable(set):
def set_class_attr(cls, name, value):
if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
set(cls, name, value)
else:
raise AttributeError("You cannot add class attributes to %s" % cls)
return set_class_attr
def _swig_add_metaclass(metaclass):
"""Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
def wrapper(cls):
return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
return wrapper
class _SwigNonDynamicMeta(type):
"""Meta class to enforce nondynamic attributes (no new attributes) for a class"""
__setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)
import weakref
class SwigPyIterator(object):
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
def __init__(self, *args, **kwargs):
raise AttributeError("No constructor defined - class is abstract")
__repr__ = _swig_repr
__swig_destroy__ = _sicpyio_base.delete_SwigPyIterator
def value(self):
return _sicpyio_base.SwigPyIterator_value(self)
def incr(self, n=1):
return _sicpyio_base.SwigPyIterator_incr(self, n)
def decr(self, n=1):
return _sicpyio_base.SwigPyIterator_decr(self, n)
def distance(self, x):
return _sicpyio_base.SwigPyIterator_distance(self, x)
def equal(self, x):
return _sicpyio_base.SwigPyIterator_equal(self, x)
def copy(self):
return _sicpyio_base.SwigPyIterator_copy(self)
def next(self):
return _sicpyio_base.SwigPyIterator_next(self)
def __next__(self):
return _sicpyio_base.SwigPyIterator___next__(self)
def previous(self):
return _sicpyio_base.SwigPyIterator_previous(self)
def advance(self, n):
return _sicpyio_base.SwigPyIterator_advance(self, n)
def __eq__(self, x):
return _sicpyio_base.SwigPyIterator___eq__(self, x)
def __ne__(self, x):
return _sicpyio_base.SwigPyIterator___ne__(self, x)
def __iadd__(self, n):
return _sicpyio_base.SwigPyIterator___iadd__(self, n)
def __isub__(self, n):
return _sicpyio_base.SwigPyIterator___isub__(self, n)
def __add__(self, n):
return _sicpyio_base.SwigPyIterator___add__(self, n)
def __sub__(self, *args):
return _sicpyio_base.SwigPyIterator___sub__(self, *args)
def __iter__(self):
return self
# Register SwigPyIterator in _sicpyio_base:
_sicpyio_base.SwigPyIterator_swigregister(SwigPyIterator)
SHARED_PTR_DISOWN = _sicpyio_base.SHARED_PTR_DISOWN
[docs]
class nullDeleter(object):
r"""
Using a shared_ptr to hold a pointer to a statically allocated
object
use create<type>SPtr(<type> &x)
cf http://www.boost.org/doc/
"""
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
def __init__(self, *args, **kwargs):
raise AttributeError("No constructor defined")
__repr__ = _swig_repr
def __call__(self, arg2):
return _sicpyio_base.nullDeleter___call__(self, arg2)
__swig_destroy__ = _sicpyio_base.delete_nullDeleter
# Register nullDeleter in _sicpyio_base:
_sicpyio_base.nullDeleter_swigregister(nullDeleter)
class VectorOfVectors(object):
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
__repr__ = _swig_repr
def iterator(self):
return _sicpyio_base.VectorOfVectors_iterator(self)
def __iter__(self):
return self.iterator()
def __nonzero__(self):
return _sicpyio_base.VectorOfVectors___nonzero__(self)
def __bool__(self):
return _sicpyio_base.VectorOfVectors___bool__(self)
def __len__(self):
return _sicpyio_base.VectorOfVectors___len__(self)
def __getslice__(self, i, j):
return _sicpyio_base.VectorOfVectors___getslice__(self, i, j)
def __setslice__(self, *args):
return _sicpyio_base.VectorOfVectors___setslice__(self, *args)
def __delslice__(self, i, j):
return _sicpyio_base.VectorOfVectors___delslice__(self, i, j)
def __delitem__(self, *args):
return _sicpyio_base.VectorOfVectors___delitem__(self, *args)
def __getitem__(self, *args):
return _sicpyio_base.VectorOfVectors___getitem__(self, *args)
def __setitem__(self, *args):
return _sicpyio_base.VectorOfVectors___setitem__(self, *args)
def pop(self):
return _sicpyio_base.VectorOfVectors_pop(self)
def append(self, x):
return _sicpyio_base.VectorOfVectors_append(self, x)
def empty(self):
return _sicpyio_base.VectorOfVectors_empty(self)
def size(self):
return _sicpyio_base.VectorOfVectors_size(self)
def swap(self, v):
return _sicpyio_base.VectorOfVectors_swap(self, v)
def begin(self):
return _sicpyio_base.VectorOfVectors_begin(self)
def end(self):
return _sicpyio_base.VectorOfVectors_end(self)
def rbegin(self):
return _sicpyio_base.VectorOfVectors_rbegin(self)
def rend(self):
return _sicpyio_base.VectorOfVectors_rend(self)
def clear(self):
return _sicpyio_base.VectorOfVectors_clear(self)
def get_allocator(self):
return _sicpyio_base.VectorOfVectors_get_allocator(self)
def pop_back(self):
return _sicpyio_base.VectorOfVectors_pop_back(self)
def erase(self, *args):
return _sicpyio_base.VectorOfVectors_erase(self, *args)
def __init__(self, *args):
_sicpyio_base.VectorOfVectors_swiginit(self, _sicpyio_base.new_VectorOfVectors(*args))
def push_back(self, x):
return _sicpyio_base.VectorOfVectors_push_back(self, x)
def front(self):
return _sicpyio_base.VectorOfVectors_front(self)
def back(self):
return _sicpyio_base.VectorOfVectors_back(self)
def assign(self, n, x):
return _sicpyio_base.VectorOfVectors_assign(self, n, x)
def resize(self, *args):
return _sicpyio_base.VectorOfVectors_resize(self, *args)
def insert(self, *args):
return _sicpyio_base.VectorOfVectors_insert(self, *args)
def reserve(self, n):
return _sicpyio_base.VectorOfVectors_reserve(self, n)
def capacity(self):
return _sicpyio_base.VectorOfVectors_capacity(self)
__swig_destroy__ = _sicpyio_base.delete_VectorOfVectors
# Register VectorOfVectors in _sicpyio_base:
_sicpyio_base.VectorOfVectors_swigregister(VectorOfVectors)
class VectorOfBlockVectors(object):
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
__repr__ = _swig_repr
def iterator(self):
return _sicpyio_base.VectorOfBlockVectors_iterator(self)
def __iter__(self):
return self.iterator()
def __nonzero__(self):
return _sicpyio_base.VectorOfBlockVectors___nonzero__(self)
def __bool__(self):
return _sicpyio_base.VectorOfBlockVectors___bool__(self)
def __len__(self):
return _sicpyio_base.VectorOfBlockVectors___len__(self)
def __getslice__(self, i, j):
return _sicpyio_base.VectorOfBlockVectors___getslice__(self, i, j)
def __setslice__(self, *args):
return _sicpyio_base.VectorOfBlockVectors___setslice__(self, *args)
def __delslice__(self, i, j):
return _sicpyio_base.VectorOfBlockVectors___delslice__(self, i, j)
def __delitem__(self, *args):
return _sicpyio_base.VectorOfBlockVectors___delitem__(self, *args)
def __getitem__(self, *args):
return _sicpyio_base.VectorOfBlockVectors___getitem__(self, *args)
def __setitem__(self, *args):
return _sicpyio_base.VectorOfBlockVectors___setitem__(self, *args)
def pop(self):
return _sicpyio_base.VectorOfBlockVectors_pop(self)
def append(self, x):
return _sicpyio_base.VectorOfBlockVectors_append(self, x)
def empty(self):
return _sicpyio_base.VectorOfBlockVectors_empty(self)
def size(self):
return _sicpyio_base.VectorOfBlockVectors_size(self)
def swap(self, v):
return _sicpyio_base.VectorOfBlockVectors_swap(self, v)
def begin(self):
return _sicpyio_base.VectorOfBlockVectors_begin(self)
def end(self):
return _sicpyio_base.VectorOfBlockVectors_end(self)
def rbegin(self):
return _sicpyio_base.VectorOfBlockVectors_rbegin(self)
def rend(self):
return _sicpyio_base.VectorOfBlockVectors_rend(self)
def clear(self):
return _sicpyio_base.VectorOfBlockVectors_clear(self)
def get_allocator(self):
return _sicpyio_base.VectorOfBlockVectors_get_allocator(self)
def pop_back(self):
return _sicpyio_base.VectorOfBlockVectors_pop_back(self)
def erase(self, *args):
return _sicpyio_base.VectorOfBlockVectors_erase(self, *args)
def __init__(self, *args):
_sicpyio_base.VectorOfBlockVectors_swiginit(self, _sicpyio_base.new_VectorOfBlockVectors(*args))
def push_back(self, x):
return _sicpyio_base.VectorOfBlockVectors_push_back(self, x)
def front(self):
return _sicpyio_base.VectorOfBlockVectors_front(self)
def back(self):
return _sicpyio_base.VectorOfBlockVectors_back(self)
def assign(self, n, x):
return _sicpyio_base.VectorOfBlockVectors_assign(self, n, x)
def resize(self, *args):
return _sicpyio_base.VectorOfBlockVectors_resize(self, *args)
def insert(self, *args):
return _sicpyio_base.VectorOfBlockVectors_insert(self, *args)
def reserve(self, n):
return _sicpyio_base.VectorOfBlockVectors_reserve(self, n)
def capacity(self):
return _sicpyio_base.VectorOfBlockVectors_capacity(self)
__swig_destroy__ = _sicpyio_base.delete_VectorOfBlockVectors
# Register VectorOfBlockVectors in _sicpyio_base:
_sicpyio_base.VectorOfBlockVectors_swigregister(VectorOfBlockVectors)
class VectorOfMatrices(object):
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
__repr__ = _swig_repr
def iterator(self):
return _sicpyio_base.VectorOfMatrices_iterator(self)
def __iter__(self):
return self.iterator()
def __nonzero__(self):
return _sicpyio_base.VectorOfMatrices___nonzero__(self)
def __bool__(self):
return _sicpyio_base.VectorOfMatrices___bool__(self)
def __len__(self):
return _sicpyio_base.VectorOfMatrices___len__(self)
def __getslice__(self, i, j):
return _sicpyio_base.VectorOfMatrices___getslice__(self, i, j)
def __setslice__(self, *args):
return _sicpyio_base.VectorOfMatrices___setslice__(self, *args)
def __delslice__(self, i, j):
return _sicpyio_base.VectorOfMatrices___delslice__(self, i, j)
def __delitem__(self, *args):
return _sicpyio_base.VectorOfMatrices___delitem__(self, *args)
def __getitem__(self, *args):
return _sicpyio_base.VectorOfMatrices___getitem__(self, *args)
def __setitem__(self, *args):
return _sicpyio_base.VectorOfMatrices___setitem__(self, *args)
def pop(self):
return _sicpyio_base.VectorOfMatrices_pop(self)
def append(self, x):
return _sicpyio_base.VectorOfMatrices_append(self, x)
def empty(self):
return _sicpyio_base.VectorOfMatrices_empty(self)
def size(self):
return _sicpyio_base.VectorOfMatrices_size(self)
def swap(self, v):
return _sicpyio_base.VectorOfMatrices_swap(self, v)
def begin(self):
return _sicpyio_base.VectorOfMatrices_begin(self)
def end(self):
return _sicpyio_base.VectorOfMatrices_end(self)
def rbegin(self):
return _sicpyio_base.VectorOfMatrices_rbegin(self)
def rend(self):
return _sicpyio_base.VectorOfMatrices_rend(self)
def clear(self):
return _sicpyio_base.VectorOfMatrices_clear(self)
def get_allocator(self):
return _sicpyio_base.VectorOfMatrices_get_allocator(self)
def pop_back(self):
return _sicpyio_base.VectorOfMatrices_pop_back(self)
def erase(self, *args):
return _sicpyio_base.VectorOfMatrices_erase(self, *args)
def __init__(self, *args):
_sicpyio_base.VectorOfMatrices_swiginit(self, _sicpyio_base.new_VectorOfMatrices(*args))
def push_back(self, x):
return _sicpyio_base.VectorOfMatrices_push_back(self, x)
def front(self):
return _sicpyio_base.VectorOfMatrices_front(self)
def back(self):
return _sicpyio_base.VectorOfMatrices_back(self)
def assign(self, n, x):
return _sicpyio_base.VectorOfMatrices_assign(self, n, x)
def resize(self, *args):
return _sicpyio_base.VectorOfMatrices_resize(self, *args)
def insert(self, *args):
return _sicpyio_base.VectorOfMatrices_insert(self, *args)
def reserve(self, n):
return _sicpyio_base.VectorOfMatrices_reserve(self, n)
def capacity(self):
return _sicpyio_base.VectorOfMatrices_capacity(self)
__swig_destroy__ = _sicpyio_base.delete_VectorOfMatrices
# Register VectorOfMatrices in _sicpyio_base:
_sicpyio_base.VectorOfMatrices_swigregister(VectorOfMatrices)
class VectorOfSMatrices(object):
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
__repr__ = _swig_repr
def iterator(self):
return _sicpyio_base.VectorOfSMatrices_iterator(self)
def __iter__(self):
return self.iterator()
def __nonzero__(self):
return _sicpyio_base.VectorOfSMatrices___nonzero__(self)
def __bool__(self):
return _sicpyio_base.VectorOfSMatrices___bool__(self)
def __len__(self):
return _sicpyio_base.VectorOfSMatrices___len__(self)
def __getslice__(self, i, j):
return _sicpyio_base.VectorOfSMatrices___getslice__(self, i, j)
def __setslice__(self, *args):
return _sicpyio_base.VectorOfSMatrices___setslice__(self, *args)
def __delslice__(self, i, j):
return _sicpyio_base.VectorOfSMatrices___delslice__(self, i, j)
def __delitem__(self, *args):
return _sicpyio_base.VectorOfSMatrices___delitem__(self, *args)
def __getitem__(self, *args):
return _sicpyio_base.VectorOfSMatrices___getitem__(self, *args)
def __setitem__(self, *args):
return _sicpyio_base.VectorOfSMatrices___setitem__(self, *args)
def pop(self):
return _sicpyio_base.VectorOfSMatrices_pop(self)
def append(self, x):
return _sicpyio_base.VectorOfSMatrices_append(self, x)
def empty(self):
return _sicpyio_base.VectorOfSMatrices_empty(self)
def size(self):
return _sicpyio_base.VectorOfSMatrices_size(self)
def swap(self, v):
return _sicpyio_base.VectorOfSMatrices_swap(self, v)
def begin(self):
return _sicpyio_base.VectorOfSMatrices_begin(self)
def end(self):
return _sicpyio_base.VectorOfSMatrices_end(self)
def rbegin(self):
return _sicpyio_base.VectorOfSMatrices_rbegin(self)
def rend(self):
return _sicpyio_base.VectorOfSMatrices_rend(self)
def clear(self):
return _sicpyio_base.VectorOfSMatrices_clear(self)
def get_allocator(self):
return _sicpyio_base.VectorOfSMatrices_get_allocator(self)
def pop_back(self):
return _sicpyio_base.VectorOfSMatrices_pop_back(self)
def erase(self, *args):
return _sicpyio_base.VectorOfSMatrices_erase(self, *args)
def __init__(self, *args):
_sicpyio_base.VectorOfSMatrices_swiginit(self, _sicpyio_base.new_VectorOfSMatrices(*args))
def push_back(self, x):
return _sicpyio_base.VectorOfSMatrices_push_back(self, x)
def front(self):
return _sicpyio_base.VectorOfSMatrices_front(self)
def back(self):
return _sicpyio_base.VectorOfSMatrices_back(self)
def assign(self, n, x):
return _sicpyio_base.VectorOfSMatrices_assign(self, n, x)
def resize(self, *args):
return _sicpyio_base.VectorOfSMatrices_resize(self, *args)
def insert(self, *args):
return _sicpyio_base.VectorOfSMatrices_insert(self, *args)
def reserve(self, n):
return _sicpyio_base.VectorOfSMatrices_reserve(self, n)
def capacity(self):
return _sicpyio_base.VectorOfSMatrices_capacity(self)
__swig_destroy__ = _sicpyio_base.delete_VectorOfSMatrices
# Register VectorOfSMatrices in _sicpyio_base:
_sicpyio_base.VectorOfSMatrices_swigregister(VectorOfSMatrices)
class VectorOfMemories(object):
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
__repr__ = _swig_repr
def iterator(self):
return _sicpyio_base.VectorOfMemories_iterator(self)
def __iter__(self):
return self.iterator()
def __nonzero__(self):
return _sicpyio_base.VectorOfMemories___nonzero__(self)
def __bool__(self):
return _sicpyio_base.VectorOfMemories___bool__(self)
def __len__(self):
return _sicpyio_base.VectorOfMemories___len__(self)
def __getslice__(self, i, j):
return _sicpyio_base.VectorOfMemories___getslice__(self, i, j)
def __setslice__(self, *args):
return _sicpyio_base.VectorOfMemories___setslice__(self, *args)
def __delslice__(self, i, j):
return _sicpyio_base.VectorOfMemories___delslice__(self, i, j)
def __delitem__(self, *args):
return _sicpyio_base.VectorOfMemories___delitem__(self, *args)
def __getitem__(self, *args):
return _sicpyio_base.VectorOfMemories___getitem__(self, *args)
def __setitem__(self, *args):
return _sicpyio_base.VectorOfMemories___setitem__(self, *args)
def pop(self):
return _sicpyio_base.VectorOfMemories_pop(self)
def append(self, x):
return _sicpyio_base.VectorOfMemories_append(self, x)
def empty(self):
return _sicpyio_base.VectorOfMemories_empty(self)
def size(self):
return _sicpyio_base.VectorOfMemories_size(self)
def swap(self, v):
return _sicpyio_base.VectorOfMemories_swap(self, v)
def begin(self):
return _sicpyio_base.VectorOfMemories_begin(self)
def end(self):
return _sicpyio_base.VectorOfMemories_end(self)
def rbegin(self):
return _sicpyio_base.VectorOfMemories_rbegin(self)
def rend(self):
return _sicpyio_base.VectorOfMemories_rend(self)
def clear(self):
return _sicpyio_base.VectorOfMemories_clear(self)
def get_allocator(self):
return _sicpyio_base.VectorOfMemories_get_allocator(self)
def pop_back(self):
return _sicpyio_base.VectorOfMemories_pop_back(self)
def erase(self, *args):
return _sicpyio_base.VectorOfMemories_erase(self, *args)
def __init__(self, *args):
_sicpyio_base.VectorOfMemories_swiginit(self, _sicpyio_base.new_VectorOfMemories(*args))
def push_back(self, x):
return _sicpyio_base.VectorOfMemories_push_back(self, x)
def front(self):
return _sicpyio_base.VectorOfMemories_front(self)
def back(self):
return _sicpyio_base.VectorOfMemories_back(self)
def assign(self, n, x):
return _sicpyio_base.VectorOfMemories_assign(self, n, x)
def resize(self, *args):
return _sicpyio_base.VectorOfMemories_resize(self, *args)
def insert(self, *args):
return _sicpyio_base.VectorOfMemories_insert(self, *args)
def reserve(self, n):
return _sicpyio_base.VectorOfMemories_reserve(self, n)
def capacity(self):
return _sicpyio_base.VectorOfMemories_capacity(self)
__swig_destroy__ = _sicpyio_base.delete_VectorOfMemories
# Register VectorOfMemories in _sicpyio_base:
_sicpyio_base.VectorOfMemories_swigregister(VectorOfMemories)
class UnsignedIntVector(object):
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
__repr__ = _swig_repr
def iterator(self):
return _sicpyio_base.UnsignedIntVector_iterator(self)
def __iter__(self):
return self.iterator()
def __nonzero__(self):
return _sicpyio_base.UnsignedIntVector___nonzero__(self)
def __bool__(self):
return _sicpyio_base.UnsignedIntVector___bool__(self)
def __len__(self):
return _sicpyio_base.UnsignedIntVector___len__(self)
def __getslice__(self, i, j):
return _sicpyio_base.UnsignedIntVector___getslice__(self, i, j)
def __setslice__(self, *args):
return _sicpyio_base.UnsignedIntVector___setslice__(self, *args)
def __delslice__(self, i, j):
return _sicpyio_base.UnsignedIntVector___delslice__(self, i, j)
def __delitem__(self, *args):
return _sicpyio_base.UnsignedIntVector___delitem__(self, *args)
def __getitem__(self, *args):
return _sicpyio_base.UnsignedIntVector___getitem__(self, *args)
def __setitem__(self, *args):
return _sicpyio_base.UnsignedIntVector___setitem__(self, *args)
def pop(self):
return _sicpyio_base.UnsignedIntVector_pop(self)
def append(self, x):
return _sicpyio_base.UnsignedIntVector_append(self, x)
def empty(self):
return _sicpyio_base.UnsignedIntVector_empty(self)
def size(self):
return _sicpyio_base.UnsignedIntVector_size(self)
def swap(self, v):
return _sicpyio_base.UnsignedIntVector_swap(self, v)
def begin(self):
return _sicpyio_base.UnsignedIntVector_begin(self)
def end(self):
return _sicpyio_base.UnsignedIntVector_end(self)
def rbegin(self):
return _sicpyio_base.UnsignedIntVector_rbegin(self)
def rend(self):
return _sicpyio_base.UnsignedIntVector_rend(self)
def clear(self):
return _sicpyio_base.UnsignedIntVector_clear(self)
def get_allocator(self):
return _sicpyio_base.UnsignedIntVector_get_allocator(self)
def pop_back(self):
return _sicpyio_base.UnsignedIntVector_pop_back(self)
def erase(self, *args):
return _sicpyio_base.UnsignedIntVector_erase(self, *args)
def __init__(self, *args):
_sicpyio_base.UnsignedIntVector_swiginit(self, _sicpyio_base.new_UnsignedIntVector(*args))
def push_back(self, x):
return _sicpyio_base.UnsignedIntVector_push_back(self, x)
def front(self):
return _sicpyio_base.UnsignedIntVector_front(self)
def back(self):
return _sicpyio_base.UnsignedIntVector_back(self)
def assign(self, n, x):
return _sicpyio_base.UnsignedIntVector_assign(self, n, x)
def resize(self, *args):
return _sicpyio_base.UnsignedIntVector_resize(self, *args)
def insert(self, *args):
return _sicpyio_base.UnsignedIntVector_insert(self, *args)
def reserve(self, n):
return _sicpyio_base.UnsignedIntVector_reserve(self, n)
def capacity(self):
return _sicpyio_base.UnsignedIntVector_capacity(self)
__swig_destroy__ = _sicpyio_base.delete_UnsignedIntVector
# Register UnsignedIntVector in _sicpyio_base:
_sicpyio_base.UnsignedIntVector_swigregister(UnsignedIntVector)
import siconos.kernel
class MechanicsIO(object):
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
__repr__ = _swig_repr
def __init__(self):
r""" default constructor"""
_sicpyio_base.MechanicsIO_swiginit(self, _sicpyio_base.new_MechanicsIO())
def positions(self, nsds):
r"""
get all positions: translation (x,y,z) + orientation quaternion
(qw, qx, qy, qz)
:type nsds: :py:class:`NonSmoothDynamicalSystem`
:param nsds: current nonsmooth dynamical system
:rtype: :py:class:`SimpleMatrix`
:return: a SP::SimpleMatrix where the columns are
id, x, y, z, qw, qx, qy, qz
id is the DynamicalSystem number + 1
"""
return _sicpyio_base.MechanicsIO_positions(self, nsds)
def velocities(self, nsds):
r"""
get all velocities: translation (xdot, ydot, zdot) + orientation velocities
ox, oy, oz
:type nsds: :py:class:`NonSmoothDynamicalSystem`
:param nsds: current nonsmooth dynamical system
:rtype: :py:class:`SimpleMatrix`
:return: a matrix where the columns are id, xdot, ydot, zdot,
ox, oy, oz
id is the DynamicalSystem number + 1
"""
return _sicpyio_base.MechanicsIO_velocities(self, nsds)
def contactPoints(self, nsds, index_set=1):
r"""
get the coordinates of all contact points, normals, reactions and velocities
:type nsds: :py:class:`NonSmoothDynamicalSystem`
:param nsds: current nonsmooth dynamical system
:type index_set: int, optional
:param index_set: the index set number.
:rtype: :py:class:`SimpleMatrix`
:return: a matrix where the columns are mu x y z, nx, ny, nz, rx, ry, rz, vx, vy, vz, ox, oy, oz, id
"""
return _sicpyio_base.MechanicsIO_contactPoints(self, nsds, index_set)
def contactInfo(self, nsds, index_set=1):
r"""
get the contact information that is the ds linked by the interaction
:type nsds: :py:class:`NonSmoothDynamicalSystem`
:param nsds: current nonsmooth dynamical system
:type index_set: int, optional
:param index_set: the index set number.
:rtype: :py:class:`SimpleMatrix`
:return: a matrix where the columns are interaction id, ds1 number, ds2 number, static object number (if possible)
"""
return _sicpyio_base.MechanicsIO_contactInfo(self, nsds, index_set)
def contactContactWork(self, nsds, index_set=1, omega=0.5):
r"""
get the dissipation values of all contact points
:type nsds: :py:class:`NonSmoothDynamicalSystem`
:param nsds: current nonsmooth dynamical system
:type index_set: int, optional
:param index_set: the index set number.
:type omega: float, optional
:param omega: the value of the weigth for the weight in the computaion of the contact work
by default omega =1/2 and the contact work corresponds to the theoretical formula
1/2 (v^+ + v^-)^p
otherwise it corresponds to v_{k+omega} p
:param tol: double for the computation of contact status
:rtype: :py:class:`SimpleMatrix`
:return: a matrix where the columns are id, normal contact work, tangent contact work, friction dissipation, contact status
"""
return _sicpyio_base.MechanicsIO_contactContactWork(self, nsds, index_set, omega)
def domains(self, nsds):
r"""
get the domain of each contact point
:type nsds: :py:class:`NonSmoothDynamicalSystem`
:param nsds: current nonsmooth dynamical system
:rtype: :py:class:`SimpleMatrix`
:return: a matrix where the columns are domain, id
"""
return _sicpyio_base.MechanicsIO_domains(self, nsds)
__swig_destroy__ = _sicpyio_base.delete_MechanicsIO
# Register MechanicsIO in _sicpyio_base:
_sicpyio_base.MechanicsIO_swigregister(MechanicsIO)