Matlab - ERROR EN FUNCION QUAD

 
Vista:

ERROR EN FUNCION QUAD

Publicado por vega (3 intervenciones) el 07/03/2007 11:17:23
Hola amigos!!
Tengo un problema y no se como solucionarlo:
Yo defino una funcion function y=canalRA (x) y la voy a usar en la funcion quad.
Defino otra funcion que CalcularCoeficientes y en ella uso quad tal que:

for i=1:length(v_rayos)
lim1=(round((i-1)*r)+round(i*r))*1e-6/2; %me define el limite 1
lim2=(round((i+1)*r)+round(i*r))*1e-6/2; %id con limite 2
n_coef=quad(@canalRA,lim1,lim2);
v_coeficanal(i)=n_coef
end
y me salen los siguientes errores:
??? Attempted to access y(2); index out of bounds because numel(y)=1.

Error in ==> quad>quadstep at 126
fe = y(2);

Error in ==> quad at 79
[Q(2),fcnt,warn(2)] = ...

Error in ==> CalculoCoef at 19
n_coef=quad(@canalRA,lim1,lim2);

Error in ==> canal at 13
v_coefigeneral=CalculoCoef();

si saco la funcion quad de CalcularCoeficientes e intento usarla sola en un bucle for igual que antes el error es otro:
>> for i=1:6
lim1=(round((i-1)*r)+round(i*r))/2;
lim2=(round((i+1)*r)+round(i*r))/2;
v_coeficanal(i)=quad(@sin,lim1,lim2);
end
Warning: Minimum step size reached; singularity possible.
> In quad at 88
Warning: Minimum step size reached; singularity possible.
> In quad at 88
Warning: Minimum step size reached; singularity possible.
> In quad at 88
Warning: Minimum step size reached; singularity possible.
> In quad at 88

Me estoy volviendo loca!!! Alguien puede echarme una mano?? MUCHAS GRACIAS POR ADELANTADO!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder