IAA and RollingOnSurfaceConstraint in 4.0
Posted: Sat Mar 07, 2020 3:01 pm
I'm trying to replicate an IAA analysis in v4.1, which works in v3.3 with same models/data/setups etc
Error executing Analyze in 4.1:
IK, ID, RRA all run without errors (so fairly confident it's not the grf.xml and ExternalLoads themselves)
Seems sourced to changes in the implementation of RollingOnSurfaceConstraint:
v3.3
https://simtk.org/api_docs/opensim/api_ ... raint.html
v4.1
https://simtk.org/api_docs/opensim/api_ ... raint.html
The main change I see is use of Socket paths to PhysicalFrame objects, instead of body names in 3.3
For 4.1 I am using syntax /bodyset/calcn_r and /ground for <socket_rolling_body> and <socket_surface_body>
I see Body inherits from PhysicalFrame in 4.1 API
Anyone have a working example of RollingOnSurfaceConstraint implemented in 4.0+ ? Or other ideas
Error executing Analyze in 4.1:
Code: Select all
Old version storage/motion file encountered
Storage: read data file =motion_grf.mot (nr=561 nc=19)
.. assuming rotations in Degrees.
ExternalForce::ExternalForce_1
Data source being set to motion_grf.mot
ExternalForce::ExternalForce_2
Data source being set to motion_grf.mot
Performing Induced Accelerations Analysis
time = 0.7
External force expressedInBody ground not found.
Exception:
ArrayPtrs.get: Array index out of bounds.
Seems sourced to changes in the implementation of RollingOnSurfaceConstraint:
v3.3
https://simtk.org/api_docs/opensim/api_ ... raint.html
v4.1
https://simtk.org/api_docs/opensim/api_ ... raint.html
The main change I see is use of Socket paths to PhysicalFrame objects, instead of body names in 3.3
For 4.1 I am using syntax /bodyset/calcn_r and /ground for <socket_rolling_body> and <socket_surface_body>
I see Body inherits from PhysicalFrame in 4.1 API
Anyone have a working example of RollingOnSurfaceConstraint implemented in 4.0+ ? Or other ideas