Matlab - Ayuda por favor es urgente

 
Vista:
sin imagen de perfil

Ayuda por favor es urgente

Publicado por Destiny (1 intervención) el 24/01/2022 16:42:20
Captura

Es posible que me puedan ayudar a resolver este codigo por favor
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
sin imagen de perfil

Ayuda por favor es urgente

Publicado por damian (22 intervenciones) el 25/01/2022 05:03:03
Hola. Ahí lo hice pero fijate que en el primero de "arcsen(x)" no da para cuando x=1 y n=85, da con un error en el límite x=-1 y x=+1..no me doy cuenta el porqué pero para todos los otros valores da.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
%
%-----------------------------------------------------
%"x" ==> ángulo (comprendido entre -1 y +1)
%"n" ==> N° de interaccioens (entre 0 y 85, 85 porque es el valor máximo que
%el programa reconoce sin hacer infinito el denominador de la función)
%-----------------------------------------------------
%
function [y]=arcsen(x,n)
 
  if x>=-1 && x<=1
    for n=0:n
        j=((factorial(2.*n))./(4.^n.*(factorial(n)).^2.*(2.*n+1))).*(x.^(2.*n+1));
        d(n+1)=j;
    end
        y=sum(d);
  else y=NaN;
  end
 
end

1
2
3
4
5
6
7
8
9
10
11
%
%-----------------------------------------------------
%"x" ==> ángulo (comprendido entre -1 y +1)
%"n" ==> N° de interaccioens (entre 0 y 85, 85 porque es el valor máximo que
%el programa reconoce sin hacer infinito el denominador de la función)
%-----------------------------------------------------
%
function [y]=arccos(x,n)
 
  y=(pi/2)-arcsen(x,n);
end

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
%
%-----------------------------------------------------
%"x" ==> ángulo (comprendido entre -1 y +1)
%"n" ==> N° de interaccioens (entre 0 y 85, 85 porque es el valor máximo que
%el programa reconoce sin hacer infinito el denominador de la función)
%-----------------------------------------------------
%
function [y]=arctan(x,n)
 
  if x>=-1 && x<=1
     for n=0:n
         j=((-1).^n./(2.*n+1)).*(x.^(2.*n+1));
         d(n+1)=j;
     end
         y=sum(d);
  else
      y=NaN;
  end
 
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar