siconos.kernel.MoreauJeanCombinedProjectionOSI (Python class)

class siconos.kernel.MoreauJeanCombinedProjectionOSI(*args)[source]

Bases: siconos.kernel.MoreauJeanOSI

One Step time Integrator for First Order Dynamical Systems for mechanical Systems (LagrangianDS and NewtonEulerDS) with Combined Projection Algorithm.

This class reimplement a special activation of constraints in the MoreauJeanOSI for the Combined Projection Algorithm

References :

V. Acary. Projected event-capturing time-stepping schemes for nonsmooth mechanical systems with unilateral contact and coulomb’s friction. Computer Methods in Applied Mechanics and Engineering, 256:224 – 250, 2013. ISSN 0045-7825. URL http://www.sciencedirect.com/science/article/pii/S0045782512003829.

Generated class (swig), based on C++ header Program listing for file kernel/src/simulationTools/MoreauJeanCombinedProjectionOSI.hpp.

Constructors

MoreauJeanCombinedProjectionOSI(double theta)

constructor from theta value only

Parameters:theta – value for all these DS.
addInteractionInIndexSet(Interaction inter, int i) → bool[source]

Apply the rule to one Interaction to known if is it should be included in the IndexSet of level i.

Parameters:
  • inter – concerned interaction
  • i – level
Returns:

bool

initializeWorkVectorsForDS(double t, DynamicalSystem ds) → None[source]

initialization of the work vectors and matrices (properties) related to one dynamical system on the graph and needed by the osi

Parameters:
  • t – time of initialization
  • ds – the dynamical system
initializeWorkVectorsForInteraction(Interaction inter, InteractionProperties interProp, DynamicalSystemsGraph DSG) → None[source]

initialization of the work vectors and matrices (properties) related to one interaction on the graph and needed by the osi

Parameters:
  • inter – the interaction
  • interProp – the properties on the graph
  • DSG – the dynamical systems graph
numberOfIndexSets() → int[source]

get the number of index sets required for the simulation

Returns:unsigned int
removeInteractionFromIndexSet(Interaction inter, int i) → bool[source]

Apply the rule to one Interaction to known if is it should be removed in the IndexSet of level i.

Parameters:
  • inter – concerned interaction
  • i – level
Returns:

bool