Bonjour tout le monde ,
voila je poste mon premier message car j'ai un probleme sur matlab et ca fait 2 jours que je n'arrive pas a le resoudre voila pourquoi je me permet de solliciter votre aide ,
en fait j'ai ecrit une fonction qui doit me ressortir un certain temps apres une boucle mais il ne me ressort pas . j'ai essaye de le debugger mais rien a faire je ne trouve pas :s .
en annexe je vous met le fragmant de code qui me pose probleme et le message que matlab me met lorsque je debugge .
function [Yimpact, timpact] = impact(y)
options = odeset('initialstep' , 10^-9);
[T,Y] = ode45(@odefunction,[0,0.6],y,options);
% Constantes
% inertie de la jambe autour du centre de gravité
mjambe=3.7; % kg
lCG=0.26; % m
mb=0.43; % masse de la jambe
r=0.11; % rayon de la balle
JCjambe = 0.05;
Jjambe = JCjambe + mjambe*lCG^2;
ljambe=0.51;
e=.7;
for i=1:length(T) % Boucle qui compare la distance entre le centre de la balle et la jambe pour chaque valeurs du vecteur temps
% Position du centre du ballon à l'instant i : xb = Y(i,7) ) et yb = Y(i,8)
% Angle theta à l'instant i : theta = Y(i,5)
d = abs ((- cot(Y(i,5)))*Y(i,7) - Y(i,8)+ljambe) / sqrt((-cot(Y(i,5)))^2 + 1); %distance entre la jambe et le centre de la balle
if d < r && Y(i,5) > 0 % si l'angle theta est positif et que la distance entre la jambe et le centre de la balle est plus petite que le rayon il y a impact
timpact=T(i);
break;
end
end
Apres debuggage
?? Input argument "y" is undefined.
Error in ==> impact at 8
[T,Y] = ode45(@odefunction,[0,0.6],y,options)
a tres bien vite j'espere et merci d'avance