Source code for siconos.io.io_base

# 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)