Releases: keenon/nimblephysics
v0.10.42 Minor release to handle malformed GRF files
This release adds a fix that will throw an exception (rather than segfaulting) when a GRF .mot file that does not have a 'endheader' string.
v0.10.41 Real-time streaming support and error handling
This release adds new features to support real-time inverse kinematics from streamed mocap data and fixes some unhandled error conditions.
v0.10.40 Improvements for ExoSolverPinnedContact
This provides a few practical improvements to ensure that even when the system is underdetermined (multiple feet in contact with the ground) we solve for the closest possible torques to the original, so that if the virtual and "real" models are identical, then we get zero torques.
v0.10.39 First draft of ExoSolverPinnedContact
This release adds a first experimental version of ExoSolverPinnedContact, for a simple haptic-rendering idealized full body exoskeleton.
v0.10.38 Autodetection of treadmill trials
This allows DynamicsFitter foot contact heuristics to automatically distinguish between treadmill trials and overground trials.
v0.10.37 Stability Improvements
This includes a few critical fixes to DynamicsFitter::zeroLinearAndOptimizeAngular(), and a couple of other minor fixes.
v0.10.36 DynamicsFitter respects manual review of missing GRF data
DynamicsFitter now will no longer mark frames you've marked as "good" as being bad again, even if doing so makes it easier to fit the data with low residuals.
v0.10.35 Removing broken Python API bindings
There are a few APIs on Skeleton that return lists of raw pointers to internal Skeleton data (BodyNodes and Joints) to Python. These APIs need to have the List object itself get garbage collected when Python is no longer using it, but not the individual contents of the List, because that is still in use by C++. Unfortunately, Pybind11 does not yet have support for doing this, so we've disabled the APIs for now. Instead, you can use things like [skel.getBodyNode(i) for i in range(skel.getNumBodyNodes())]
v0.10.34 Adding SubjectOnDisk.readOsim(), and fixing bugs in DynamicsFitter
- Adding SubjectOnDisk.readOsim()
- Fixing bugs in DynamicsFitter
v0.10.33 Stability Improvements
Fixes a bug in DynamicsFitter.fillInMissingGRFBlips()