Source code for siconos.fclib

# This file was automatically generated by SWIG (http://www.swig.org).
# Version 4.0.2
#
# 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
if _swig_python_version_info < (2, 7, 0):
    raise RuntimeError("Python 2.7 or later required")

# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _sicpyfclib
else:
    import _sicpyfclib

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 == "thisown":
            self.this.own(value)
        elif name == "this":
            set(self, name, 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__)


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__ = _sicpyfclib.delete_SwigPyIterator

    def value(self) -> "PyObject *":
        return _sicpyfclib.SwigPyIterator_value(self)

    def incr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _sicpyfclib.SwigPyIterator_incr(self, n)

    def decr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _sicpyfclib.SwigPyIterator_decr(self, n)

    def distance(self, x: "SwigPyIterator") -> "ptrdiff_t":
        return _sicpyfclib.SwigPyIterator_distance(self, x)

    def equal(self, x: "SwigPyIterator") -> "bool":
        return _sicpyfclib.SwigPyIterator_equal(self, x)

    def copy(self) -> "swig::SwigPyIterator *":
        return _sicpyfclib.SwigPyIterator_copy(self)

    def next(self) -> "PyObject *":
        return _sicpyfclib.SwigPyIterator_next(self)

    def __next__(self) -> "PyObject *":
        return _sicpyfclib.SwigPyIterator___next__(self)

    def previous(self) -> "PyObject *":
        return _sicpyfclib.SwigPyIterator_previous(self)

    def advance(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _sicpyfclib.SwigPyIterator_advance(self, n)

    def __eq__(self, x: "SwigPyIterator") -> "bool":
        return _sicpyfclib.SwigPyIterator___eq__(self, x)

    def __ne__(self, x: "SwigPyIterator") -> "bool":
        return _sicpyfclib.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _sicpyfclib.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _sicpyfclib.SwigPyIterator___isub__(self, n)

    def __add__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _sicpyfclib.SwigPyIterator___add__(self, n)

    def __sub__(self, *args) -> "ptrdiff_t":
        return _sicpyfclib.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _sicpyfclib:
_sicpyfclib.SwigPyIterator_swigregister(SwigPyIterator)

H5Gcreate_vers = _sicpyfclib.H5Gcreate_vers
H5Gopen_vers = _sicpyfclib.H5Gopen_vers
[docs] class fclib_info(object): r"""This structure allows the user to enter a problem information as a title, a short description and known mathematical properties of the problem""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr title = property(_sicpyfclib.fclib_info_title_get, _sicpyfclib.fclib_info_title_set, doc=r""" title of the problem""") description = property(_sicpyfclib.fclib_info_description_get, _sicpyfclib.fclib_info_description_set, doc=r""" short decription of the problem""") math_info = property(_sicpyfclib.fclib_info_math_info_get, _sicpyfclib.fclib_info_math_info_set, doc=r""" known properties of the problem (existence, uniqueness, ...)""") def __init__(self): _sicpyfclib.fclib_info_swiginit(self, _sicpyfclib.new_fclib_info()) __swig_destroy__ = _sicpyfclib.delete_fclib_info
# Register fclib_info in _sicpyfclib: _sicpyfclib.fclib_info_swigregister(fclib_info)
[docs] class fclib_matrix_info(object): r""" This structure allows the user to enter a description for a given matrix (comment, conditionning, determinant, rank.) if they are known. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr comment = property(_sicpyfclib.fclib_matrix_info_comment_get, _sicpyfclib.fclib_matrix_info_comment_set, doc=r""" comment on the matrix properties""") conditioning = property(_sicpyfclib.fclib_matrix_info_conditioning_get, _sicpyfclib.fclib_matrix_info_conditioning_set, doc=r""" conditioning""") determinant = property(_sicpyfclib.fclib_matrix_info_determinant_get, _sicpyfclib.fclib_matrix_info_determinant_set, doc=r""" determinant""") rank = property(_sicpyfclib.fclib_matrix_info_rank_get, _sicpyfclib.fclib_matrix_info_rank_set, doc=r""" rank""") def __init__(self): _sicpyfclib.fclib_matrix_info_swiginit(self, _sicpyfclib.new_fclib_matrix_info()) __swig_destroy__ = _sicpyfclib.delete_fclib_matrix_info
# Register fclib_matrix_info in _sicpyfclib: _sicpyfclib.fclib_matrix_info_swigregister(fclib_matrix_info)
[docs] class fclib_matrix(object): r"""matrix in compressed row/column or triplet form""" thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr nzmax = property(_sicpyfclib.fclib_matrix_nzmax_get, _sicpyfclib.fclib_matrix_nzmax_set, doc=r""" maximum number of entries""") m = property(_sicpyfclib.fclib_matrix_m_get, _sicpyfclib.fclib_matrix_m_set, doc=r""" number of rows""") n = property(_sicpyfclib.fclib_matrix_n_get, _sicpyfclib.fclib_matrix_n_set, doc=r""" number of columns""") p = property(_sicpyfclib.fclib_matrix_p_get, _sicpyfclib.fclib_matrix_p_set, doc=r""" compressed: row (size m+1) or column (size n+1) pointers; triplet: row indices (size nz)""") i = property(_sicpyfclib.fclib_matrix_i_get, _sicpyfclib.fclib_matrix_i_set, doc=r""" compressed: column or row indices, size nzmax; triplet: column indices (size nz)""") x = property(_sicpyfclib.fclib_matrix_x_get, _sicpyfclib.fclib_matrix_x_set, doc=r""" numerical values, size nzmax""") nz = property(_sicpyfclib.fclib_matrix_nz_get, _sicpyfclib.fclib_matrix_nz_set, doc=r""" # of entries in triplet matrix, -1 for compressed columns, -2 for compressed rows""") info = property(_sicpyfclib.fclib_matrix_info_get, _sicpyfclib.fclib_matrix_info_set, doc=r""" info for this matrix""") def __init__(self): _sicpyfclib.fclib_matrix_swiginit(self, _sicpyfclib.new_fclib_matrix()) __swig_destroy__ = _sicpyfclib.delete_fclib_matrix
# Register fclib_matrix in _sicpyfclib: _sicpyfclib.fclib_matrix_swigregister(fclib_matrix)
[docs] class fclib_global(object): r""" The global frictional contact problem defined by Given - a symmetric positive definite matrix :math:`{M} \in {\mathrm{I\!R}}^{n \times n}` - a vector :math:`{f} \in {\mathrm{I\!R}}^n`, - a matrix :math:`{H} \in {\mathrm{I\!R}}^{n \times m}` - a matrix :math:`{G} \in {\mathrm{I\!R}}^{n \times p}` - a vector :math:`w \in {\mathrm{I\!R}}^{m}`, - a vector :math:`b \in {\mathrm{I\!R}}^{p}`, - a vector of coefficients of friction :math:`\mu \in {\mathrm{I\!R}}^{n_c}` the Global Mixed 3DFC problem is to find four vectors :math:`{v} \in {\mathrm{I\!R}}^n`, :math:`u\in{\mathrm{I\!R}}^m`, :math:`r\in {\mathrm{I\!R}}^m` and :math:`\lambda \in {\mathrm{I\!R}}^p` denoted by :math:`\mathrm{GM3DFC}(M,H,G,w,b,\mu)` such that .. math:: \begin{cases} M v = {H} {r} + G\lambda + {f} \\ \\ G^T v +b =0 \\ \ \hat u = H^T v + w +\left[ \left[\begin{array}{c} \mu \|u^\alpha_T\| \\ 0 \\ 0 \end{array}\right]^T, \alpha = 1 \ldots n_c \right]^T \\ \\ C^\star_{\mu} \ni {\hat u} \perp r \in C_{\mu} \end{cases} where the Coulomb friction cone for a contact :math:`\alpha` is defined by .. math:: C_{\mu^\alpha}^{\alpha} = \{r^\alpha, \|r^\alpha_T \| \leq \mu^\alpha |r^\alpha_N| \} and the set :math:`C^{\alpha,\star}_{\mu^\alpha}` is its dual. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr M = property(_sicpyfclib.fclib_global_M_get, _sicpyfclib.fclib_global_M_set, doc=r""" the matrix M (see mathematical description below)""") H = property(_sicpyfclib.fclib_global_H_get, _sicpyfclib.fclib_global_H_set, doc=r""" the matrix M (see mathematical description below)""") G = property(_sicpyfclib.fclib_global_G_get, _sicpyfclib.fclib_global_G_set, doc=r""" the matrix M (see mathematical description below)""") mu = property(_sicpyfclib.fclib_global_mu_get, _sicpyfclib.fclib_global_mu_set, doc=r""" the vector :math:`\mu` of coefficient of friction (see mathematical description below)""") f = property(_sicpyfclib.fclib_global_f_get, _sicpyfclib.fclib_global_f_set, doc=r""" the vector f (see mathematical description below)""") b = property(_sicpyfclib.fclib_global_b_get, _sicpyfclib.fclib_global_b_set, doc=r""" the vector b (see mathematical description below)""") w = property(_sicpyfclib.fclib_global_w_get, _sicpyfclib.fclib_global_w_set, doc=r""" the vector w (see mathematical description below)""") spacedim = property(_sicpyfclib.fclib_global_spacedim_get, _sicpyfclib.fclib_global_spacedim_set, doc=r""" the dimension , 2 or 3, of the local space at contact (2d or 3d friction contact laws)""") info = property(_sicpyfclib.fclib_global_info_get, _sicpyfclib.fclib_global_info_set, doc=r""" info on the problem""") def __init__(self): _sicpyfclib.fclib_global_swiginit(self, _sicpyfclib.new_fclib_global()) __swig_destroy__ = _sicpyfclib.delete_fclib_global
# Register fclib_global in _sicpyfclib: _sicpyfclib.fclib_global_swigregister(fclib_global)
[docs] class fclib_global_rolling(object): r""" The global rolling frictional contact problem defined by Given - a symmetric positive definite matrix :math:`{M} \in {\mathrm{I\!R}}^{n \times n}`- - a vector :math:`{f} \in {\mathrm{I\!R}}^n` , - a matrix :math:`{H} \in {\mathrm{I\!R}}^{n \times m}` - a matrix :math:`{G} \in {\mathrm{I\!R}}^{n \times p}` - a vector :math:`w \in {\mathrm{I\!R}}^{m}` , - a vector :math:`b \in {\mathrm{I\!R}}^{p}` , - a vector of coefficients of friction :math:`\mu \in {\mathrm{I\!R}}^{n_c}` - a vector of coefficients of rolling friction :math:`\mu_r \in {\mathrm{I\!R}}^{n_c}` the Global Mixed 3DFC problem is to find four vectors :math:`{v} \in {\mathrm{I\!R}}^n`, :math:`u\in{\mathrm{I\!R}}^m` , :math:`r\in {\mathrm{I\!R}}^m` and :math:`\lambda \in {\mathrm{I\!R}}^p` denoted by :math:`\mathrm{GM3DFC}(M,H,G,w,b,\mu)` such that .. math:: \begin{cases} M v = {H} {r} + G\lambda + {f} \\ \\ G^T v +b =0 \\ \\ \hat u = H^T v + w +\left[ \left[\begin{array}{c} \mu \|u^\alpha_T\|\\ 0 \\ 0 \end{array}\right]^T, \alpha = 1 \ldots n_c \right]^T \\ \\ C^\star_{\mu,\mu_r} \ni {\hat u} \perp r \in C_{\mu,\mu_r} \end{cases} where the Coulomb friction cone for a contact :math:`\alpha` is defined by .. math:: C_{\mu^\alpha}^{\alpha} = \{r^\alpha, \|r^\alpha_T \| \leq \mu^\alpha |r^\alpha_N| \} and the set :math:`C^{\alpha,\star}_{\mu^\alpha}` is its dual. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr M = property(_sicpyfclib.fclib_global_rolling_M_get, _sicpyfclib.fclib_global_rolling_M_set, doc=r""" the matrix M (see mathematical description below)""") H = property(_sicpyfclib.fclib_global_rolling_H_get, _sicpyfclib.fclib_global_rolling_H_set, doc=r""" the matrix M (see mathematical description below)""") G = property(_sicpyfclib.fclib_global_rolling_G_get, _sicpyfclib.fclib_global_rolling_G_set, doc=r""" the matrix M (see mathematical description below)""") mu = property(_sicpyfclib.fclib_global_rolling_mu_get, _sicpyfclib.fclib_global_rolling_mu_set, doc=r""" the vector :math:`\mu` of coefficient of friction (see mathematical description below)""") mu_r = property(_sicpyfclib.fclib_global_rolling_mu_r_get, _sicpyfclib.fclib_global_rolling_mu_r_set, doc=r""" the vector :math:`\mu` of rolling coefficient of friction (see mathematical description below)""") f = property(_sicpyfclib.fclib_global_rolling_f_get, _sicpyfclib.fclib_global_rolling_f_set, doc=r""" the vector f (see mathematical description below)""") b = property(_sicpyfclib.fclib_global_rolling_b_get, _sicpyfclib.fclib_global_rolling_b_set, doc=r""" the vector b (see mathematical description below)""") w = property(_sicpyfclib.fclib_global_rolling_w_get, _sicpyfclib.fclib_global_rolling_w_set, doc=r""" the vector w (see mathematical description below)""") spacedim = property(_sicpyfclib.fclib_global_rolling_spacedim_get, _sicpyfclib.fclib_global_rolling_spacedim_set, doc=r""" the dimension , 2 or 3, of the local space at contact (2d or 3d friction contact laws)""") info = property(_sicpyfclib.fclib_global_rolling_info_get, _sicpyfclib.fclib_global_rolling_info_set, doc=r""" info on the problem""") def __init__(self): _sicpyfclib.fclib_global_rolling_swiginit(self, _sicpyfclib.new_fclib_global_rolling()) __swig_destroy__ = _sicpyfclib.delete_fclib_global_rolling
# Register fclib_global_rolling in _sicpyfclib: _sicpyfclib.fclib_global_rolling_swigregister(fclib_global_rolling)
[docs] class fclib_local(object): r""" The local frictional contact problem defined by given - a positive semi--definite matrix :math:`{W} \in {\mathrm{I\!R}}^{m \times m}` - a matrix :math:`{V} \in {\mathrm{I\!R}}^{m \times p}` - a matrix :math:`{R} \in {\mathrm{I\!R}}^{p \times p}` - a vector :math:`q \in {\mathrm{I\!R}}^{m}` , - a vector :math:`s \in {\mathrm{I\!R}}^{p}` , - a vector of coefficients of friction :math:`\mu \in {\mathrm{I\!R}}^{n_c}` the Mixed 3DFC problem is to find three vectors :math:`u\in{\mathrm{I\!R}}^m` , :math:`r\in {\mathrm{I\!R}}^m` and :math:`\lambda \in {\mathrm{I\!R}}^p` denoted by :math:`\mathrm{M3DFC}(R,V,W,q,s,\mu)` such that .. math:: \begin{cases} V^T {r} + R \lambda + s = 0 \\ \\ \hat u = W {r} + V\lambda + q +\left[ \left[\begin{array}{c} \mu^\alpha \|u^\alpha_T\|\\ 0 \\ 0 \end{array}\right]^T, \alpha = 1 \ldots n_c \right]^T \\ \\ C^\star_{\mu} \ni {\hat u} \perp r \in C_{\mu} \end{cases} where the Coulomb friction cone for a contact :math:`\alpha` is defined by .. math:: C_{\mu^\alpha}^{\alpha} = \{r^\alpha, \|r^\alpha_T \| \leq \mu^\alpha |r^\alpha_N| \} and the set :math:`C^{\alpha,\star}_{\mu^\alpha}` is its dual. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr W = property(_sicpyfclib.fclib_local_W_get, _sicpyfclib.fclib_local_W_set, doc=r""" the matrix W (see mathematical description below)""") V = property(_sicpyfclib.fclib_local_V_get, _sicpyfclib.fclib_local_V_set, doc=r""" the matrix V (see mathematical description below)""") R = property(_sicpyfclib.fclib_local_R_get, _sicpyfclib.fclib_local_R_set, doc=r""" the matrix R (see mathematical description below)""") mu = property(_sicpyfclib.fclib_local_mu_get, _sicpyfclib.fclib_local_mu_set, doc=r""" the vector :math:`\mu` of coefficient of friction (see mathematical description below)""") q = property(_sicpyfclib.fclib_local_q_get, _sicpyfclib.fclib_local_q_set, doc=r""" the vector q (see mathematical description below)""") s = property(_sicpyfclib.fclib_local_s_get, _sicpyfclib.fclib_local_s_set, doc=r""" the vector s (see mathematical description below)""") spacedim = property(_sicpyfclib.fclib_local_spacedim_get, _sicpyfclib.fclib_local_spacedim_set, doc=r""" the dimension , 2 or 3, of the local space at contact (2d or 3d friction contact laws)""") info = property(_sicpyfclib.fclib_local_info_get, _sicpyfclib.fclib_local_info_set, doc=r""" info on the problem""") def __init__(self): _sicpyfclib.fclib_local_swiginit(self, _sicpyfclib.new_fclib_local()) __swig_destroy__ = _sicpyfclib.delete_fclib_local
# Register fclib_local in _sicpyfclib: _sicpyfclib.fclib_local_swigregister(fclib_local)
[docs] class fclib_solution(object): r""" A solution or a guess for the frictional contact problem. This structure allows to store a solution vector of a guess vector for the various frictional contact problems. """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr v = property(_sicpyfclib.fclib_solution_v_get, _sicpyfclib.fclib_solution_v_set, doc=r""" global velocity (or position/displacement for quasi-static problems) solution vector""") u = property(_sicpyfclib.fclib_solution_u_get, _sicpyfclib.fclib_solution_u_set, doc=r""" local velocity (or position/displacement for quasi-static problems) solution vector""") r = property(_sicpyfclib.fclib_solution_r_get, _sicpyfclib.fclib_solution_r_set, doc=r""" local contact forces (or impulses) solution vector""") l = property(_sicpyfclib.fclib_solution_l_get, _sicpyfclib.fclib_solution_l_set, doc=r""" multiplier for equlity constraints ( :math:`\lambda` ) solution vector""") def __init__(self): _sicpyfclib.fclib_solution_swiginit(self, _sicpyfclib.new_fclib_solution()) __swig_destroy__ = _sicpyfclib.delete_fclib_solution
# Register fclib_solution in _sicpyfclib: _sicpyfclib.fclib_solution_swigregister(fclib_solution) MERIT_1 = _sicpyfclib.MERIT_1 MERIT_2 = _sicpyfclib.MERIT_2
[docs] def fclib_write_global(problem: "fclib_global", path: "char const *") -> "int": r""" write global problem :rtype: int :return: 1 on success, 0 on failure """ return _sicpyfclib.fclib_write_global(problem, path)
[docs] def fclib_write_local(problem: "fclib_local", path: "char const *") -> "int": r""" write local problem :rtype: int :return: 1 on success, 0 on failure """ return _sicpyfclib.fclib_write_local(problem, path)
[docs] def fclib_write_global_rolling(problem: "fclib_global_rolling", path: "char const *") -> "int": r""" write global rolling problem :rtype: int :return: 1 on success, 0 on failure """ return _sicpyfclib.fclib_write_global_rolling(problem, path)
[docs] def fclib_write_solution(solution: "fclib_solution", path: "char const *") -> "int": r""" write solution :rtype: int :return: 1 on success, 0 on failure """ return _sicpyfclib.fclib_write_solution(solution, path)
[docs] def fclib_write_guesses(number_of_guesses: "int", guesses: "fclib_solution", path: "char const *") -> "int": r""" write initial guesses :rtype: int :return: 1 on success, 0 on failure """ return _sicpyfclib.fclib_write_guesses(number_of_guesses, guesses, path)
[docs] def fclib_read_global(path: "char const *") -> "fclib_global *": r""" read global problem :rtype: :py:class:`fclib_global` :return: problem on success; NULL on failure """ return _sicpyfclib.fclib_read_global(path)
[docs] def fclib_read_local(path: "char const *") -> "fclib_local *": r""" read local problem :rtype: :py:class:`fclib_local` :return: problem on success; NULL on failure """ return _sicpyfclib.fclib_read_local(path)
[docs] def fclib_read_global_rolling(path: "char const *") -> "fclib_global_rolling *": r""" read global rolling problem :rtype: :py:class:`fclib_global_rolling` :return: problem on success; NULL on failure """ return _sicpyfclib.fclib_read_global_rolling(path)
[docs] def fclib_read_solution(path: "char const *") -> "fclib_solution *": r""" read solution :rtype: :py:class:`fclib_solution` :return: solution on success; NULL on failure """ return _sicpyfclib.fclib_read_solution(path)
[docs] def fclib_read_guesses(path: "char const *", number_of_guesses: "int *") -> "fclib_solution *": r""" read initial guesses :rtype: :py:class:`fclib_solution` :return: vector of guesses on success; NULL on failure output number of guesses in the variable pointed by 'number_of_guesses' """ return _sicpyfclib.fclib_read_guesses(path, number_of_guesses)
[docs] def fclib_delete_global(problem: "fclib_global") -> "void": r""" delete global problem""" return _sicpyfclib.fclib_delete_global(problem)
[docs] def fclib_delete_local(problem: "fclib_local") -> "void": r""" delete local problem""" return _sicpyfclib.fclib_delete_local(problem)
[docs] def fclib_delete_global_rolling(problem: "fclib_global_rolling") -> "void": r""" delete global rolling problem""" return _sicpyfclib.fclib_delete_global_rolling(problem)
[docs] def fclib_delete_solutions(data: "fclib_solution", count: "int") -> "void": r""" delete solutions or guesses""" return _sicpyfclib.fclib_delete_solutions(data, count)
[docs] def fclib_create_int_attributes_in_info(path: "char const *", attr_name: "char const *", attr_value: "int") -> "int": r""" create and set attributes of tyoe int in info""" return _sicpyfclib.fclib_create_int_attributes_in_info(path, attr_name, attr_value)