siconos.simulation module

Siconos simulation module

class siconos.simulation.InteractionManager

Bases: pybind11_object

insertNonSmoothLaw(self: siconos.simulation.InteractionManager, arg0: siconos.modeling.NonSmoothLaw, arg1: SupportsInt | SupportsIndex, arg2: SupportsInt | SupportsIndex) None
nonSmoothLaw(self: siconos.simulation.InteractionManager, arg0: SupportsInt | SupportsIndex, arg1: SupportsInt | SupportsIndex) siconos.modeling.NonSmoothLaw
updateInteractions(self: siconos.simulation.InteractionManager, arg0: siconos::simulation::Simulation) None
class siconos.simulation.InteractionsGraph

Bases: pybind11_object

class siconos.simulation.Simulation

Bases: pybind11_object

applyNSDSChangelogForDS(self: siconos.simulation.Simulation) None

initialize/update all new dynamical systems and interactions

clearNSDSChangeLog(self: siconos.simulation.Simulation) None

clear the change log of the non-smooth dynamical system

computeInitialStateOfTheStep(self: siconos.simulation.Simulation) None
computeIteration(self: siconos.simulation.Simulation) None
computeOneStepNSProblem(self: siconos.simulation.Simulation, osnspb_number: SupportsInt | SupportsIndex) int
computeResidu(self: siconos.simulation.Simulation) None

Compute the residu for all integrators

firstInitialize(self: siconos.simulation.Simulation) None
hasNextEvent(self: siconos.simulation.Simulation) bool
indexSet(self: siconos.simulation.Simulation, arg0: SupportsInt | SupportsIndex) siconos::graphs::InteractionsGraph
initializeIndexSets(self: siconos.simulation.Simulation) None

initialize integrators index sets

initializeNSDSChangelog(self: siconos.simulation.Simulation) None

initialize objects (DSs and Interations) found in the NSDS

initializeOSIAssociations(self: siconos.simulation.Simulation) None

initialize integrators-DS links in the NSDS graph

initializeOneStepNSProblem(self: siconos.simulation.Simulation) None
insertInteractionManager(self: siconos.simulation.Simulation, manager: siconos.simulation.InteractionManager) None

Set an object to automatically manage interactions during the simulation

insertNonSmoothProblem(self: siconos.simulation.Simulation, osns: siconos::nonsmooth_formulations::OneStepNSProblem, Id: typing.SupportsInt | typing.SupportsIndex = 0) None

Insert a non-smooth problem into the system

lambda_input(self: siconos.simulation.Simulation, arg0: SupportsInt | SupportsIndex, arg1: SupportsInt | SupportsIndex) Annotated[numpy.typing.NDArray[numpy.float64], '[m, 1]']
nextTime(self: siconos.simulation.Simulation) float
property numberOfOSNSProblems
oneStepNSProblem(self: siconos.simulation.Simulation, arg0: SupportsInt | SupportsIndex) siconos::nonsmooth_formulations::OneStepNSProblem

get the OneStepNSProblem with the given id

startingTime(self: siconos.simulation.Simulation) float

get current time (ie starting point for current integration, time of currentEvent of eventsManager.)

updateAllInput(self: siconos.simulation.Simulation) None
updateAndSwapAllOutput(self: siconos.simulation.Simulation) None
updateDSPlugins(self: siconos.simulation.Simulation, arg0: SupportsFloat | SupportsIndex) None
updateIndexSets(self: siconos.simulation.Simulation) None

update all index sets of the topology, using current states of theInteractions

updateInteractions(self: siconos.simulation.Simulation) None

Call the interaction manager

updateOutput(self: siconos.simulation.Simulation, level: SupportsInt | SupportsIndex = 0) None
updateState(self: siconos.simulation.Simulation, level: SupportsInt | SupportsIndex = 0) None
updateWorldFromDS(*args, **kwargs)

Overloaded function.

  1. updateWorldFromDS(self: siconos.simulation.Simulation) -> None

  2. updateWorldFromDS(self: siconos.simulation.Simulation) -> None

y_output(self: siconos.simulation.Simulation, arg0: SupportsInt | SupportsIndex, arg1: SupportsInt | SupportsIndex) Annotated[numpy.typing.NDArray[numpy.float64], '[m, 1]']
class siconos.simulation.TimeDiscretisation(self: siconos.simulation.TimeDiscretisation, arg0: SupportsFloat | SupportsIndex, arg1: SupportsFloat | SupportsIndex)

Bases: pybind11_object

class siconos.simulation.TimeStepping(*args, **kwargs)

Bases: Simulation

Overloaded function.

  1. __init__(self: siconos.simulation.TimeStepping, arg0: siconos.modeling.NonSmoothDynamicalSystem, arg1: siconos.simulation.TimeDiscretisation, arg2: siconos::integrators::OneStepIntegrator, arg3: siconos::nonsmooth_formulations::OneStepNSProblem) -> None

  2. __init__(self: siconos.simulation.TimeStepping, nsds: siconos.modeling.NonSmoothDynamicalSystem, td: siconos.simulation.TimeDiscretisation, nb: typing.SupportsInt | typing.SupportsIndex = 0) -> None

DefaultCheckSolverOutput(self: siconos.simulation.TimeStepping, arg0: SupportsInt | SupportsIndex) None
computeFreeState(self: siconos.simulation.TimeStepping) None
computeOneStep(self: siconos.simulation.TimeStepping) None
displayNewtonConvergence(self: siconos.simulation.TimeStepping) bool
displayNewtonConvergenceAtTheEnd(self: siconos.simulation.TimeStepping, arg0: SupportsInt | SupportsIndex, arg1: SupportsInt | SupportsIndex) None
displayNewtonConvergenceInTheLoop(self: siconos.simulation.TimeStepping) None
insertIntegrator(self: siconos.simulation.TimeStepping, arg0: siconos::integrators::OneStepIntegrator) None
newtonCheckConvergence(self: siconos.simulation.TimeStepping, arg0: SupportsFloat | SupportsIndex) bool
property newtonMaxIteration
property newtonOptions
property newtonTolerance
nextStep(self: siconos.simulation.TimeStepping) None
prepareNewtonIteration(self: siconos.simulation.TimeStepping) None
resetLambdas(self: siconos.simulation.TimeStepping) None
setDisplayNewtonConvergence(self: siconos.simulation.TimeStepping, display_newton_convergence: bool) None
setNewtonMaxIteration(self: siconos.simulation.TimeStepping, newton_max_iter: SupportsInt | SupportsIndex) None
setNewtonOptions(self: siconos.simulation.TimeStepping, newton_options: siconos::simulation::TimeSteppingType) None
setNewtonTolerance(self: siconos.simulation.TimeStepping, newton_tol: SupportsFloat | SupportsIndex) None
setNewtonWarningOnNonConvergence(self: siconos.simulation.TimeStepping, newton_warning: bool) None
setSkipLastUpdateInput(self: siconos.simulation.TimeStepping, skip_last_update_input: bool) None
setSkipLastUpdateOutput(self: siconos.simulation.TimeStepping, skip_last_update_output: bool) None
setSkipResetLambdas(self: siconos.simulation.TimeStepping, skip_reset_lambdas: bool) None
setWarningNonsmoothSolver(self: siconos.simulation.TimeStepping, nonsmooth_warning: bool) None
skipLastUpdateInput(self: siconos.simulation.TimeStepping) bool
skipLastUpdateOutput(self: siconos.simulation.TimeStepping) bool
property skipResetLambdas
timeStep(self: siconos.simulation.TimeStepping) float
class siconos.simulation.TimeSteppingDirectProjection(self: siconos.simulation.TimeSteppingDirectProjection, nsds: siconos.modeling.NonSmoothDynamicalSystem, td: siconos.simulation.TimeDiscretisation, osi: siconos::integrators::OneStepIntegrator, osnspb_velo: siconos::nonsmooth_formulations::OneStepNSProblem, osnspb_pos: siconos::nonsmooth_formulations::OneStepNSProblem, level: typing.SupportsInt | typing.SupportsIndex = 1)

Bases: TimeStepping

advanceToEvent(self: siconos.simulation.TimeSteppingDirectProjection) None
computeCriteria(self: siconos.simulation.TimeSteppingDirectProjection, arg0: bool) None
nextStep(self: siconos.simulation.TimeSteppingDirectProjection) None
setConstraintTol(self: siconos.simulation.TimeSteppingDirectProjection, v: SupportsFloat | SupportsIndex) None
setConstraintTolUnilateral(self: siconos.simulation.TimeSteppingDirectProjection, v: SupportsFloat | SupportsIndex) None
setProjectionMaxIteration(self: siconos.simulation.TimeSteppingDirectProjection, v: SupportsInt | SupportsIndex) None
class siconos.simulation.TimeSteppingType(self: siconos.simulation.TimeSteppingType, value: SupportsInt | SupportsIndex)

Bases: pybind11_object

define the type of time stepping scheme

Members:

LINEAR : force a single iteration of the Newton Solver

LINEAR_IMPLICIT : force a single iteration of the Newton Solver

NONLINEAR : performs the newton iterations up to convergence

NONLINEAR_FULL : performs the newton iterations up to convergence

LINEAR = <TimeSteppingType.LINEAR: 0>
LINEAR_IMPLICIT = <TimeSteppingType.LINEAR_IMPLICIT: 1>
NONLINEAR = <TimeSteppingType.NONLINEAR: 2>
NONLINEAR_FULL = <TimeSteppingType.NONLINEAR_FULL: 3>
property name
property value
class siconos.simulation.Topology

Bases: pybind11_object

getDynamicalSystem(self: siconos.simulation.Topology, arg0: str) siconos.modeling.DynamicalSystem
getInteraction(self: siconos.simulation.Topology, arg0: str) siconos.modeling.Interaction
indexSetsSize(self: siconos.simulation.Topology) int
numberOfIndexSet(self: siconos.simulation.Topology) int