Skip to main content

calcElectromechanicalDelayGroupedSimilarityCost.m


% This function is part of the NMSM Pipeline, see file for full license.
%
% (Array of number, struct) -> (Array of number)
% returns the cost for all rounds of the Muscle Tendon optimization


function cost = calcElectromechanicalDelayGroupedSimilarityCost( ...
values, experimentalData, costTerm)
errorCenter = valueOrAlternate(costTerm, "errorCenter", 0);
maximumAllowableError = valueOrAlternate(costTerm, "maxAllowableError", 0.2);
electromechanicalDelayDeviations = calcDifferencesInEmgGroups( ...
values.electromechanicalDelays, experimentalData.activationGroups);
cost = calcDeviationCostTerm( ...
electromechanicalDelayDeviations, errorCenter, maximumAllowableError);
end