Page 1 of 1
Induced acceleration
Posted: Wed Sep 11, 2019 8:32 pm
by vahidreza2016
Hi there,
I'm using induced acceleration analysis in OpenSim 4.0. Does anyone know how to calculate muscle contribution to ground reaction forces? It seems the tool just gives muscle contribution to center of mass and joint acceleration. Any suggestion?? Thanks!
Vahid
Re: Induced acceleration
Posted: Wed Mar 18, 2020 7:24 pm
by tnamayeshi
Hi,
I am having a similar problem where IAA gives me the following error:
"Performing Induced Accelerations Analysis
time = 0.41
External force expressedInBody ground not found.
Exception:
ArrayPtrs.get: Array index out of bounds".
I am sharing my setup file here. Please let me know if there is something wrong with it:
<?xml version="1.0" encoding="UTF-8" ?>
<OpenSimDocument Version="40000">
<AnalyzeTool name="GaitModel2392-Scaled">
<!--Name of the .osim file used to construct a model.-->
<model_file />
<!--Replace the model's force set with sets specified in <force_set_files>? If false, the force set is appended to.-->
<replace_force_set>false</replace_force_set>
<!--List of xml files used to construct a force set for the model.-->
<force_set_files> C:/Users/TNAMAYESHI/OneDrive - The University of Melbourne/OrganizedData2/ML/LA/HS/I4/1/TebiTest/Analyze/muscleAnalysis/../../../../../../../../MU2392_Arms_TBI_ReserveActuators.xml</force_set_files>
<!--Directory used for writing results.-->
<results_directory>.</results_directory>
<!--Output precision. It is 8 by default.-->
<output_precision>8</output_precision>
<!--Initial time for the simulation.-->
<initial_time>0.40999999999999998</initial_time>
<!--Final time for the simulation.-->
<final_time>4.5499999999999998</final_time>
<!--Flag indicating whether or not to compute equilibrium values for states other than the coordinates or speeds. For example, equilibrium muscle fiber lengths or muscle forces.-->
<solve_for_equilibrium_for_auxiliary_states>true</solve_for_equilibrium_for_auxiliary_states>
<!--Maximum number of integrator steps.-->
<maximum_number_of_integrator_steps>20000</maximum_number_of_integrator_steps>
<!--Maximum integration step size.-->
<maximum_integrator_step_size>1</maximum_integrator_step_size>
<!--Minimum integration step size.-->
<minimum_integrator_step_size>1e-08</minimum_integrator_step_size>
<!--Integrator error tolerance. When the error is greater, the integrator step size is decreased.-->
<integrator_error_tolerance>1.0000000000000001e-05</integrator_error_tolerance>
<!--Set of analyses to be run during the investigation.-->
<AnalysisSet name="Analyses">
<objects>
<MuscleAnalysis name="MuscleAnalysis">
<!--Flag (true or false) specifying whether on. True by default.-->
<on>false</on>
<!--Start time.-->
<start_time>0.40999999999999998</start_time>
<!--End time.-->
<end_time>4.5499999999999998</end_time>
<!--Specifies how often to store results during a simulation. More specifically, the interval (a positive integer) specifies how many successful integration steps should be taken before results are recorded again.-->
<step_interval>1</step_interval>
<!--Flag (true or false) indicating whether the results are in degrees or not.-->
<in_degrees>true</in_degrees>
<!--List of muscles for which to perform the analysis. Use 'all' to perform the analysis for all muscles.-->
<muscle_list> all</muscle_list>
<!--List of generalized coordinates for which to compute moment arms. Use 'all' to compute for all coordinates.-->
<moment_arm_coordinate_list> all</moment_arm_coordinate_list>
<!--Flag indicating whether moment-arms and/or moments should be computed.-->
<compute_moments>true</compute_moments>
</MuscleAnalysis>
<InducedAccelerations name="InducedAccelerations">
<!--Flag (true or false) specifying whether on. True by default.-->
<on>true</on>
<!--Start time.-->
<start_time>0.40999999999999998</start_time>
<!--End time.-->
<end_time>4.5499999999999998</end_time>
<!--Specifies how often to store results during a simulation. More specifically, the interval (a positive integer) specifies how many successful integration steps should be taken before results are recorded again.-->
<step_interval>1</step_interval>
<!--Flag (true or false) indicating whether the results are in degrees or not.-->
<in_degrees>true</in_degrees>
<!--Names of the coordinates for which to compute induced accelerations.The key word 'All' indicates that the analysis should be performed for all coordinates.-->
<coordinate_names />
<!--Names of the bodies for which to compute induced accelerations.The key word 'All' indicates that the analysis should be performed for all bodies.Use 'center_of_mass' to indicate the induced accelerations of the system center of mass.-->
<body_names> center_of_mass</body_names>
<!--Specify the constraints used to replace external forces applied to run the forward simulation. Currently, RollingOnSurfaceConstraint, PointConstraint and WeldConstraint are supported. There must be as many constraints listed as external forces applied to the model. Constraints must be between the body to which the external force is applied and ground.-->
<ConstraintSet>
<objects />
<groups />
</ConstraintSet>
<!--The minimum amount of external force (N) that is necessary to be replaced with a constraint.-->
<force_threshold>0</force_threshold>
<!--Only compute the potential (acceleration/force) of an actuator to accelerate the model.-->
<compute_potentials_only>false</compute_potentials_only>
<!--Report individual contributions to constraint reactions in addition to accelerations.-->
<report_constraint_reactions>false</report_constraint_reactions>
</InducedAccelerations>
</objects>
<groups />
</AnalysisSet>
<!--Controller objects in the model.-->
<ControllerSet name="Controllers">
<objects>
<ControlSetController>
<!--A Storage (.sto) or an XML control nodes file containing the controls for this controlSet.-->
<controls_file>C:/Users/TNAMAYESHI/OneDrive - The University of Melbourne/OrganizedData2/ML/LA/HS/I4/1/TebiTest/Analyze/muscleAnalysis/../../SOres/GaitModel2392-Scaled_StaticOptimization_controls.xml</controls_file>
</ControlSetController>
</objects>
<groups />
</ControllerSet>
<!--XML file (.xml) containing the forces applied to the model as ExternalLoads.-->
<external_loads_file>C:/Users/TNAMAYESHI/OneDrive - The University of Melbourne/OrganizedData2/ML/LA/HS/I4/1/TebiTest/Analyze/muscleAnalysis/../../ExternalLoad.xml</external_loads_file>
<!--Storage file (.sto) containing the time history of states for the model. This file often contains multiple rows of data, each row being a time-stamped array of states. The first column contains the time. The rest of the columns contain the states in the order appropriate for the model. In a storage file, unlike a motion file (.mot), non-uniform time spacing is allowed. If the user-specified initial time for a simulation does not correspond exactly to one of the time stamps in this file, interpolation is NOT used because it is sometimes necessary to use an exact set of states for analyses. Instead, the closest earlier set of states is used.-->
<states_file />
<!--Motion file (.mot) or storage file (.sto) containing the time history of the generalized coordinates for the model. These can be specified in place of the states file.-->
<coordinates_file>C:/Users/TNAMAYESHI/OneDrive - The University of Melbourne/OrganizedData2/ML/LA/HS/I4/1/TebiTest/Analyze/muscleAnalysis/../../IKres.mot</coordinates_file>
<!--Storage file (.sto) containing the time history of the generalized speeds for the model. If coordinates_file is used in place of states_file, these can be optionally set as well to give the speeds. If not specified, speeds will be computed from coordinates by differentiation.-->
<speeds_file />
<!--Low-pass cut-off frequency for filtering the coordinates_file data (currently does not apply to states_file or speeds_file). A negative value results in no filtering. The default value is -1.0, so no filtering.-->
<lowpass_cutoff_frequency_for_coordinates>6</lowpass_cutoff_frequency_for_coordinates>
</AnalyzeTool>
</OpenSimDocument>