Comments (3)
Hmmm ... hard to see how to do this automatically. There are a few issues:
- Locks are implemented by solving for the generalized forces necessary to hold the joint at its locked value. Even when locked at position level that is not exactly the same thing as combining the bodies -- all the separate body kinematics are still available as well as the computed generalized forces (those can be necessary for deciding when to release the lock, for example).
- Locks at velocity or acceleration level use the same equations as at position level but are clearly different than combining the rigid bodies.
- At the Simbody level there is no association between force elements and mobilizers. Instead the System accumulates a set of body forces and generalized forces from all the force elements. Any given force element may contribute to any or all of those. Even if there were, it is not clear that you would want these disabled in general because the presence of a mobilizer force (however frustrated) affects the answer you get when you ask how much torque or force is being generated by the lock. So for example if you had a torsional spring acting on a pin joint, and were using a lock to emulate a torque-limited motor, the presence of the spring would affect how much torque the lock was generating and thus when it should be turned off.
I'm thinking it makes more sense to disable the force and lock the joint together in the same chunk of code, or perhaps built a custom force element that would have the desired properties. Do you have an alternate idea?
from simbody.
I'm going to close this because it doesn't seem to fit within Simbody's architecture as stated for the reasons listed above. There could be related performance tweaks possible though, please open another issue if you think of one.
from simbody.
Sounds good to me. Thanks for the update.
Kevin
On Mon, Oct 21, 2013 at 9:06 PM, Michael Sherman
[email protected]:
I'm going to close this because it doesn't seem to fit within Simbody's
architecture as stated for the reasons listed above. There could be related
performance tweaks possible though, please open another issue if you think
of one.—
Reply to this email directly or view it on GitHubhttps://github.com//issues/21#issuecomment-26775825
.
from simbody.
Related Issues (20)
- Suggestion: simple algorithm for proper interpolation of quaternions. HOT 4
- official conan recipe for simbody HOT 2
- Exponential Springs in OpenSim HOT 4
- Elastic Foundation Force Computation Error HOT 3
- Compile error C2678 when building ALL_BUILD in Visual Studio HOT 6
- Where is the PIN constraint equation HOT 4
- Compilation error in Visual Studio 2019 HOT 1
- warnings about "binding dereferenced null pointer" in MeasureImplementation.h HOT 1
- Usage of SimTK::Vec for custom types. HOT 1
- Incoming PR - Improvement to ExponentialSpringForce HOT 4
- The OBJ file parser should ignore all kinds of whitespace for face (`f`) commands HOT 2
- TestBigMatrix fails on mips64el and ppc64el architectures HOT 8
- Rack Pinion Mobilizer HOT 3
- Problem when weighting integration accuracy
- TestCustomConstraints (Failed) on x86_64
- Setting output precision for String::String(const T& t) HOT 4
- "No such file or directory" HOT 6
- Visualizer crashes when drive letters don't match HOT 6
- Cannot compile in C++20 if a compilation unit uses `MultibodyGraphMaker.h`
- `getContiguousScalarData` has different behavior for `RowVector` and `RowVectorView` HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from simbody.