siconos.mechanics.collision.bodies#
Module documentation
- class siconos.mechanics.collision.bodies.nullDeleter(*args, **kwargs)[source]#
Bases:
object
- 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/
- class siconos.mechanics.collision.bodies.CircularDS(*args)[source]#
Bases:
LagrangianDS
Definition of a 2D circular shape - Inherits from LagrangianDS
- Overload 1:
Default constructor
- Overload 2:
constructor from initial state only, \(dv = p\)
- type position:
SiconosVector
- param position:
SiconosVector : initial coordinates of this DynamicalSystem :type velocity:
SiconosVector
- Parameters:
velocity – SiconosVector : initial velocity of this DynamicalSystem
- Overload 3:
constructor from initial state and mass, \(Mdv = p\)
- type position:
SiconosVector
- param position:
SiconosVector : initial coordinates of this DynamicalSystem :type velocity:
SiconosVector
- Parameters:
velocity – SiconosVector : initial velocity of this DynamicalSystem :type mass:
SiconosMatrix
mass – SiconosMatrix : mass matrix
- Overload 4:
constructor from initial state and mass (plugin) \(Mdv = p\)
- type position:
SiconosVector
- param position:
SiconosVector : initial coordinates of this DynamicalSystem :type velocity:
SiconosVector
- Parameters:
velocity – SiconosVector : initial velocity of this DynamicalSystem :type plugin: string
plugin – std::string: plugin path to compute mass matrix
- class siconos.mechanics.collision.bodies.CircularR(r1, r2)[source]#
Bases:
LagrangianScleronomousR
Two circle relation - Inherits from LagrangianScleronomousR
Constructor
- Parameters:
disk1 – radius
disk2 – radius
- class siconos.mechanics.collision.bodies.Disk(radius, mass, position, velocity)[source]#
Bases:
CircularDS
Definition of a 2D disk - Inherits from LagrangianDS
Constructor
- class siconos.mechanics.collision.bodies.Circle(*args)[source]#
Bases:
CircularDS
Definition of a 2D Circle - Inherits from CircularDS
Constructor
- class siconos.mechanics.collision.bodies.DiskDiskR(disk1, disk2)[source]#
Bases:
CircularR
Two disks relation - Inherits from LagrangianScleronomousR
Constructor
- class siconos.mechanics.collision.bodies.DiskPlanR(*args)[source]#
Bases:
LagrangianScleronomousR
disk - plan relation - Inherits from LagrangianScleronomousR
Overload 1: Infinite Plan
- Parameters:
Overload 2: Finite or infinite Plan (segment)
- Parameters:
Overload 3: Finite Plan
- class siconos.mechanics.collision.bodies.DiskMovingPlanR(arg2, arg3, arg4, arg5, arg6, arg7, arg8)[source]#
Bases:
LagrangianRheonomousR
Overload 1: default constructor
Overload 2: constructor from a set of data
- Parameters:
pluginh (string) – name of the plugin to compute h. Its signature must be “void userPluginH(unsigned int, double*, double, unsigned int, double*, unsigned int, double*)”
pluginJacobianhq (string) – name of the plugin to compute jacobian h according to q. Its signature must be “void userPluginG0(unsigned int, double*, double, unsigned int, double*, unsigned int, double*)”
pluginDoth (string) – name of the plugin to compute hDot. Its signature must be “void userPluginHDot(unsigned int, double*,double, unsigned int, double*, unsigned int, double*)
- computeh(time, q, z, y)[source]#
to compute the output y = h(t,q,z) of the Relation
- Parameters:
time (float) – current time value
q (
BlockVector
) – coordinates of the dynamical systems involved in the relationz (
BlockVector
) – user defined parameters (optional)y (
SiconosVector
) – the resulting vector
- computeJachq(time, q, z)[source]#
to compute the jacobian of h(…). Set attribute _jachq (access: jacqhq())
- Parameters:
time (float) – current time value
q (
BlockVector
) – coordinates of the dynamical systems involved in the relationz (
BlockVector
) – user defined parameters (optional)
- computehDot(time, q, z)[source]#
to compute the time-derivative of the output y = h(t,q,z), saved in attribute _hDot (access: hDot())
- Parameters:
time (float) – current time value
q (
BlockVector
) – coordinates of the dynamical systems involved in the relationz (
BlockVector
) – user defined parameters (optional)
- class siconos.mechanics.collision.bodies.SphereLDS(*args)[source]#
Bases:
LagrangianDS
- Overload 1:
Default constructor
- Overload 2:
constructor from initial state only, \(dv = p\)
- type position:
SiconosVector
- param position:
SiconosVector : initial coordinates of this DynamicalSystem :type velocity:
SiconosVector
- Parameters:
velocity – SiconosVector : initial velocity of this DynamicalSystem
- Overload 3:
constructor from initial state and mass, \(Mdv = p\)
- type position:
SiconosVector
- param position:
SiconosVector : initial coordinates of this DynamicalSystem :type velocity:
SiconosVector
- Parameters:
velocity – SiconosVector : initial velocity of this DynamicalSystem :type mass:
SiconosMatrix
mass – SiconosMatrix : mass matrix
- Overload 4:
constructor from initial state and mass (plugin) \(Mdv = p\)
- type position:
SiconosVector
- param position:
SiconosVector : initial coordinates of this DynamicalSystem :type velocity:
SiconosVector
- Parameters:
velocity – SiconosVector : initial velocity of this DynamicalSystem :type plugin: string
plugin – std::string: plugin path to compute mass matrix
- computeMass(*args)[source]#
Overload 1: default function to compute the mass
Overload 2: function to compute the mass
- Parameters:
position (
SiconosVector
) – value used to evaluate the mass matrix
- computeFGyr(*args)[source]#
Overload 1: default function to compute the inertia
Overload 2: function to compute the inertia with some specific values for q and velocity (ie not those of the current state).
- Parameters:
position (
SiconosVector
) – value used to evaluate the inertia forcesvelocity (
SiconosVector
) – value used to evaluate the inertia forces
- computeJacobianFGyrq(*args)[source]#
Overload 1: function to compute the jacobian w.r.t. q of the inertia forces
Overload 2: function to compute the jacobian w.r.t. q of the inertia forces
- Parameters:
position (
SiconosVector
) – value used to evaluate the jacobianvelocity (
SiconosVector
) – value used to evaluate the jacobian
- computeJacobianFGyrqDot(*args)[source]#
Overload 1: function to compute the jacobian w.r.t. qDot of the inertia forces
Overload 2: function to compute the jacobian w.r.t. qDot of the inertia forces
- Parameters:
position (
SiconosVector
) – value used to evaluate the jacobianvelocity (
SiconosVector
) – value used to evaluate the jacobian
- class siconos.mechanics.collision.bodies.SphereNEDS(*args)[source]#
Bases:
NewtonEulerDS
Overload 1: Default constructor
Overload 2: constructor from a minimum set of data
- Parameters:
position (
SiconosVector
) – initial coordinates of this DynamicalSystemtwist (
SiconosVector
) – initial twist of this DynamicalSystemmass (float) – the mass
inertia (
SiconosMatrix
) – the inertia matrix
- class siconos.mechanics.collision.bodies.SphereLDSPlanR(r, A, B, C, D)[source]#
Bases:
LagrangianScleronomousR
Constructor
- class siconos.mechanics.collision.bodies.SphereNEDSPlanR(r, A, B, C, D)[source]#
Bases:
NewtonEuler3DR
Constructor
- class siconos.mechanics.collision.bodies.SphereLDSSphereLDSR(r1, r2)[source]#
Bases:
LagrangianScleronomousR
Constructor
- class siconos.mechanics.collision.bodies.SphereNEDSSphereNEDSR(r1, r2)[source]#
Bases:
NewtonEuler3DR
Constructor