Skip to content

about the fsolve() function in TendonRobotStatics.m #12

@feilong926

Description

@feilong926

The fsolve() function in TendonRobotStatics.m can easily diverge when you give a little larger tendon forces. After tunning, this can be fixed by a more accurate initial guess, for example:

n0_guess = [0;0;-sum(tau)];
v0_guess = inv(Kse)*inv(R0)*n0_guess + [0;0;1];
m0_guess = zeros(3,1);
for i = 1:length(tau)
    m0_guess = m0_guess + cross( r{i}, tau(i)*[0;0;-1] );
end
u0_guess = inv(Kbt)*inv(R0)*m0_guess + [0;0;0];

init_guess = [n0_guess; u0_guess];
global Y; % Forward declaration for future scoping rule changes
fsolve(@shootingFunction, init_guess, options);

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions