|
| | ParticleConSurfaceSystem (const ContactGeometryImpl &geom) |
| |
| const ParticleConSurfaceSystemGuts & | getGuts () const |
| |
| ParticleConSurfaceSystemGuts & | updGuts () |
| |
| void | setDefaultTimeAndState (Real t, const Vector &q, const Vector &u) |
| |
| System & | setUpDirection (const CoordinateDirection &up) |
| | This is a hint to other software as to which way this System's designer considers to be "up".
|
| |
| System & | setUseUniformBackground (bool useUniformBackground) |
| | This is a hint to visualization software that this System is best viewed against a uniform background (e.g. all white) rather than against a ground plane.
|
| |
| System & | setDefaultTimeScale (Real tc) |
| | (Advanced) This is a hint used for some default behaviors, such as determining an initial step size for an integrator, or the default unit error for a constraint error derivative from the original constraint.
|
| |
| System & | setDefaultLengthScale (Real lc) |
| | (Advanced) This is a hint that can be used to get a sense of what a "unit
length" looks like for this System in the units it uses.
|
| |
| void | setHasTimeAdvancedEvents (bool) |
| | This determines whether this System wants to be notified whenever time advances irreversibly.
|
| |
| CoordinateDirection | getUpDirection () const |
| | Get the current setting of the "up" direction hint.
|
| |
| bool | getUseUniformBackground () const |
| | Get the current setting of the "use uniform background" visualization hint.
|
| |
| Real | getDefaultTimeScale () const |
| | Get the currently-set value for the default time scale, 0.1 time units if it has never been set.
|
| |
| Real | getDefaultLengthScale () const |
| | Get the currently-set value for the default length scale, 1 length unit if it has never been set.
|
| |
| bool | hasTimeAdvancedEvents () const |
| | Return the current value of the flag indicating whether this System wants an event generated whenever time advances irreversibly.
|
| |
| void | addEventHandler (ScheduledEventHandler *handler) |
| | Add a ScheduledEventHandler to this System, which takes over ownership of the event handler object.
|
| |
| void | addEventHandler (TriggeredEventHandler *handler) |
| | Add a TriggeredEventHandler to this System, which takes over ownership of the event handler object.
|
| |
| void | addEventReporter (ScheduledEventReporter *handler) const |
| | Add a ScheduledEventReporter to this System, which takes over ownership of the event reporter object.
|
| |
| void | addEventReporter (TriggeredEventReporter *handler) const |
| | Add a TriggeredEventReporter to this System, which takes over ownership of the event reporter object.
|
| |
| const State & | realizeTopology () const |
| | The following call must be made after any topological change has been made to this System, before the System can be used to perform any computations.
|
| |
| const State & | getDefaultState () const |
| | This is available after realizeTopology(), and will throw an exception if realizeTopology() has not been called since the most recent topological change to this System.
|
| |
| State & | updDefaultState () |
| | Don't use this; make a copy of the default state instead and modify your copy.
|
| |
| void | realizeModel (State &state) const |
| | Realize the model to be used for subsequent computations with the given state.
|
| |
| void | realize (const State &state, Stage stage=Stage::HighestRuntime) const |
| | Realize the given state to the indicated stage.
|
| |
| void | project (State &state, Real accuracy=-1) const |
| | Apply prescribed motion and attempt to satisfy all position and velocity constraints by projecting the generalized coordinates q and generalized speeds u onto the position and velocity constraint manifolds.
|
| |
| void | projectQ (State &state, Real accuracy=-1) const |
| | Set prescribed positions q=q(t) and attempt to satisfy position constraints by modifying the remaining free q's.
|
| |
| void | projectU (State &state, Real accuracy=-1) const |
| | Set prescribed velocities u=u(t,q) and attempt to satisfy velocity constraints by modifying the remaining free u's.
|
| |
| void | projectQ (State &state, Vector &qErrEst, const ProjectOptions &options, ProjectResults &results) const |
| | (Advanced) Project free q's so that position constraints are satisfied and remove the corresponding error from the supplied error estimate.
|
| |
| void | projectU (State &state, Vector &uErrEst, const ProjectOptions &options, ProjectResults &results) const |
| | (Advanced) Project free u's so that velocity constraints are satisfied and remove the corresponding error from the supplied error estimate.
|
| |
| void | prescribe (State &state) const |
| | Set values for prescribed positions q and velocities u.
|
| |
| bool | prescribeQ (State &state) const |
| | This solver sets prescribed q's to their known values q=q(t) as a function of time (and possibly earlier-stage discrete state variables).
|
| |
| bool | prescribeU (State &state) const |
| | This solver sets prescribed u's to their known values u=u(t,q) as a function of time and position variables q (and possibly earlier-stage discrete state variables).
|
| |
| void | getFreeQIndex (const State &state, Array_< SystemQIndex > &freeQs) const |
| | Return the indices of the q's in the given state that are free; that is, they are not affected by prescribeQ().
|
| |
| void | getFreeUIndex (const State &state, Array_< SystemUIndex > &freeUs) const |
| | Return the indices of the u's in the given state that are free; that is, they are not affected by prescribeU().
|
| |
| void | handleEvents (State &state, Event::Cause cause, const Array_< EventId > &eventIds, const HandleEventsOptions &options, HandleEventsResults &results) const |
| | This solver handles a set of events which a TimeStepper has denoted as having occurred at the given time and state.
|
| |
| void | reportEvents (const State &state, Event::Cause cause, const Array_< EventId > &eventIds) const |
| | This method is similar to handleEvents(), but does not allow the State to be modified.
|
| |
| void | calcEventTriggerInfo (const State &state, Array_< EventTriggerInfo > &triggerInfo) const |
| | This routine provides the Integrator with information it needs about the individual event trigger functions, such as which sign transitions are relevant and how tightly we need to localize.
|
| |
| void | calcTimeOfNextScheduledEvent (const State &state, Real &tNextEvent, Array_< EventId > &eventIds, bool includeCurrentTime) const |
| | This routine should be called to determine if and when there is an event scheduled to occur at a particular time.
|
| |
| void | calcTimeOfNextScheduledReport (const State &state, Real &tNextEvent, Array_< EventId > &eventIds, bool includeCurrentTime) const |
| | This routine is similar to calcTimeOfNextScheduledEvent(), but is used for "reporting events" which do not modify the state.
|
| |
| void | relax (State &state, Stage stage, Real accuracy=-1) const |
| | This optional method should modify fast variables at the given stage until they satisfy some relaxation criteria.
|
| |
| void | multiplyByN (const State &state, const Vector &u, Vector &dq) const |
| | Calculate dq=N*u in O(n) time (very fast).
|
| |
| void | multiplyByNTranspose (const State &state, const Vector &fq, Vector &fu) const |
| | Calculate fu=~N*fq in O(n) time (very fast).
|
| |
| void | multiplyByNPInv (const State &state, const Vector &dq, Vector &u) const |
| | Calculate u=pinv(N)*dq in O(n) time (very fast).
|
| |
| void | multiplyByNPInvTranspose (const State &state, const Vector &fu, Vector &fq) const |
| | Calculate fq=~pinv(N)*fu in O(n) time (very fast).
|
| |
| void | resetAllCountersToZero () |
| | Zero out the statistics for this System.
|
| |
| int | getNumRealizationsOfThisStage (Stage) const |
| | Whenever the system was realized from Stage-1 to the indicated Stage, this counter is bumped.
|
| |
| int | getNumRealizeCalls () const |
| | Return the total number of calls to realizeTopology(), realizeModel(), or realize(), regardless of whether these routines actually did anything when called.
|
| |
| int | getNumPrescribeQCalls () const |
| | Return the total number of calls to the System's prescribeQ() method.
|
| |
| int | getNumPrescribeUCalls () const |
| | Return the total number of calls to the System's prescribeU() method.
|
| |
| int | getNumProjectQCalls () const |
| | Return the total number of calls to projectQ(), regardless of whether the call did anything.
|
| |
| int | getNumFailedProjectQCalls () const |
| | Return the total number of calls to projectQ() that failed.
|
| |
| int | getNumQProjections () const |
| | How many of the successful projectQ() calls actually did a constraint projection, rather than returning quickly?
|
| |
| int | getNumQErrorEstimateProjections () const |
| | How many of the projectQ() calls that did a constraint projection also projected an error estimate?
|
| |
| int | getNumProjectUCalls () const |
| | Return the total number of calls to projectU(), regardless of whether the call did anything.
|
| |
| int | getNumFailedProjectUCalls () const |
| | Return the total number of calls to projectU() that failed.
|
| |
| int | getNumUProjections () const |
| | How many of the successful projectU() calls actually did a constraint projection, rather than returning quickly?
|
| |
| int | getNumUErrorEstimateProjections () const |
| | How many of the projectU() calls that did a constraint projection also projected an error estimate?
|
| |
| int | getNumHandlerCallsThatChangedStage (Stage) const |
| | handleEvents() reports the lowest Stage it modified and we bump the counter for that Stage.
|
| |
| int | getNumHandleEventCalls () const |
| | This is the total number of calls to handleEvents() regardless of the outcome.
|
| |
| int | getNumReportEventCalls () const |
| | This is the total number of calls to reportEvents() regardless of the outcome.
|
| |
| | System () |
| | Default constructor creates an empty handle.
|
| |
| | System (const System &) |
| | Copy constructor (untested).
|
| |
| System & | operator= (const System &) |
| | Copy assignment (untested).
|
| |
| | ~System () |
| | Destructor here will invoke the virtual destructor in the System::Guts class and thus clean up all unneeded detritus owned by this System.
|
| |
| const String & | getName () const |
| | Return the name assigned to this System (arbitrary).
|
| |
| const String & | getVersion () const |
| | Return the version string assigned to this System (arbitrary).
|
| |
| SubsystemIndex | adoptSubsystem (Subsystem &child) |
| | Take over ownership of the supplied subsystem and install it into the next free subsystem slot.
|
| |
| int | getNumSubsystems () const |
| | How may Subsystems are in here?
|
| |
| const Subsystem & | getSubsystem (SubsystemIndex) const |
| | Obtain read-only access to a particular subsystem by its index.
|
| |
| Subsystem & | updSubsystem (SubsystemIndex) |
| | Obtain writable access to a particular subsystem by its index.
|
| |
| const DefaultSystemSubsystem & | getDefaultSubsystem () const |
| | Get read-only access to the default subsystem which is present in every system.
|
| |
| DefaultSystemSubsystem & | updDefaultSubsystem () |
| | Get writable access to the default subsystem which is present in every system.
|
| |
| | operator const Subsystem & () const |
| | Implicitly convert this System into a const Subsystem reference; this actually returns a reference to the DefaultSystemSubsystem contained in this System.
|
| |
| | operator Subsystem & () |
| | Implicitly convert this System into a writable Subsystem reference; this actually returns a reference to the DefaultSystemSubsystem contained in this System.
|
| |
| bool | systemTopologyHasBeenRealized () const |
| | (Advanced) You can check whether realizeTopology() has been called since the last topological change to this Syatem.
|
| |
| StageVersion | getSystemTopologyCacheVersion () const |
| | (Advanced) Return the current version number of this system's Topology cache information.
|
| |
| void | setSystemTopologyCacheVersion (StageVersion topoVersion) const |
| | (Really advanced) Set the current version number of this system's Topology cache information.
|
| |
| void | invalidateSystemTopologyCache () const |
| | (Advanced) Mark the Topology stage of this system and all its subsystems "not realized." This is normally handled automatically by whenever you make a Topology-stage change to any subsystem.
|
| |
| void | calcDecorativeGeometryAndAppend (const State &, Stage, Array_< DecorativeGeometry > &) const |
| | (Advanced) Generate all decorative geometry computable at a specific stage; this is useful for visualizers.
|
| |
| bool | isSameSystem (const System &otherSystem) const |
| | There can be multiple handles referring to the same System::Guts object; they are considered to be the same System.
|
| |
| const Guts & | getSystemGuts () const |
| | Obtain a const reference to the System::Guts object to which this handle refers.
|
| |
| Guts & | updSystemGuts () |
| | Obtain a writable reference to the System::Guts object to which this handle refers.
|
| |
| void | adoptSystemGuts (System::Guts *g) |
| | Put new unowned Guts into this empty handle and take over ownership.
|
| |
| | System (System::Guts *g) |
| | Constructor for internal use only.
|
| |
| bool | hasGuts () const |
| | Return true if this System handle is not empty.
|
| |
| bool | isOwnerHandle () const |
| | Internal use only.
|
| |
| bool | isEmptyHandle () const |
| | Internal use only.
|
| |