1 #ifndef SimTK_SIMBODY_PARTICLECONSURFACESYSTEM_H_ 2 #define SimTK_SIMBODY_PARTICLECONSURFACESYSTEM_H_ 43 class ParticleConSurfaceSystem;
62 :
Guts(), geom(geom) {
88 Vector& dq)
const override {dq=u;}
90 Vector& fu)
const override {fu=fq;}
92 Vector& u)
const override {u=dq;}
94 Vector& fq)
const override {fq=fu;}
106 const ContactGeometryImpl& geom;
123 return SimTK_DYNAMIC_CAST_DEBUG<const ParticleConSurfaceSystemGuts&>
128 return SimTK_DYNAMIC_CAST_DEBUG<ParticleConSurfaceSystemGuts&>
void projectQImpl(State &, Vector &qErrEst, const ProjectOptions &options, ProjectResults &results) const override
Vector & updQ(SubsystemIndex)
int realizeInstanceImpl(const State &) const override
bool prescribeQImpl(State &) const override
Definition: ParticleConSurfaceSystem.h:97
SubsystemIndex getMySubsystemIndex() const
Return the SubsystemIndex within the containing System.
Definition: SubsystemGuts.h:495
const Guts & getSystemGuts() const
Obtain a const reference to the System::Guts object to which this handle refers.
Definition: System.h:872
Unique integer type for Subsystem-local uDotErr indexing.
int realizePositionImpl(const State &) const override
Definition: ParticleConSurfaceSystem.h:111
Unique integer type for Subsystem-local u indexing.
This is the top-level SimTK namespace into which all SimTK names are placed to avoid collision with o...
Definition: Assembler.h:37
void multiplyByNPInvImpl(const State &state, const Vector &dq, Vector &u) const override
Definition: ParticleConSurfaceSystem.h:91
Unique integer type for Subsystem-local uErr indexing.
const ParticleConSurfaceSystemGuts & getGuts() const
Definition: ParticleConSurfaceSystem.h:122
Unique integer type for Subsystem-local qErr indexing.
void multiplyByNImpl(const State &state, const Vector &u, Vector &dq) const override
Definition: ParticleConSurfaceSystem.h:87
Definition: ParticleConSurfaceSystem.h:44
This file defines the BicubicSurface class, and the BicubicFunction class that uses it to create a tw...
int realizeAccelerationImpl(const State &) const override
SimTK_Real Real
This is the default compiled-in floating point type for SimTK, either float or double.
Definition: SimTKcommon/include/SimTKcommon/internal/common.h:606
void adoptSystemGuts(System::Guts *g)
Put new unowned Guts into this empty handle and take over ownership.
Guts & updSystemGuts()
Obtain a writable reference to the System::Guts object to which this handle refers.
Definition: System.h:876
This object is intended to contain all state information for a SimTK::System, except topological info...
Definition: State.h:280
int realizeModelImpl(State &) const override
Results for advanced users of project() methods.
Definition: System.h:1067
int realizeVelocityImpl(const State &) const override
Vector & updU(SubsystemIndex)
void multiplyByNTransposeImpl(const State &state, const Vector &fq, Vector &fu) const override
Definition: ParticleConSurfaceSystem.h:89
int realizeDynamicsImpl(const State &) const override
Options for the advanced project() methods.
Definition: System.h:950
const System & getSystem() const
Includes internal headers providing declarations for the basic SimTK Core classes, including Simmatrix.
void setDefaultTimeAndState(Real t, const Vector &q, const Vector &u)
Definition: ParticleConSurfaceSystem.h:132
void setHasTimeAdvancedEvents(bool)
This determines whether this System wants to be notified whenever time advances irreversibly.
bool prescribeUImpl(State &) const override
Definition: ParticleConSurfaceSystem.h:98
int realizeTopologyImpl(State &) const override
ParticleConSurfaceSystem(const ContactGeometryImpl &geom)
Definition: ParticleConSurfaceSystem.h:113
Real & updTime()
You can call these as long as System stage >= Model, but the stage will be backed up if necessary to ...
Unique integer type for Subsystem-local q indexing.
const ParticleConSurfaceSystem & getParticleConSurfaceSystem() const
Definition: ParticleConSurfaceSystem.h:144
This is the declaration for the System::Guts class, the abstract object to which a System handle poin...
Definition: SystemGuts.h:71
ParticleConSurfaceSystemGuts & updGuts()
Definition: ParticleConSurfaceSystem.h:127
ParticleConSurfaceSystemGuts(const ContactGeometryImpl &geom)
Definition: ParticleConSurfaceSystem.h:61
This unique integer type is for selecting discrete variables.
void projectUImpl(State &, Vector &uErrEst, const ProjectOptions &options, ProjectResults &results) const override
This is the base class that serves as the parent of all SimTK System objects; most commonly Simbody's...
Definition: System.h:97
Provide a unique integer type for identifying Subsystems.
This is a concrete Subsystem that is part of every System. It provides a variety of services for the ...
Definition: System.h:910
Guts(const String &name="<NONAME>", const String &version="0.0.0")
Unique integer type for Subsystem-local, per-stage event indexing.
State & updDefaultState()
Don't use this; make a copy of the default state instead and modify your copy.
ParticleConSurfaceSystemGuts * cloneImpl() const override
Definition: ParticleConSurfaceSystem.h:72
SubsystemIndex getSubsysIndex() const
Definition: ParticleConSurfaceSystem.h:68
void multiplyByNPInvTransposeImpl(const State &state, const Vector &fu, Vector &fq) const override
Definition: ParticleConSurfaceSystem.h:93