4 votos

Cómo calcular integrales elípticas en MATLAB

Necesito calcular el integrales elípticas completas de primer y segundo tipo El integral elíptica incompleta del primer tipo y la integral elíptica incompleta de segundo orden en MATLAB.

MATLAB tiene funciones incorporadas para calcular estas funciones, como he mostrado en los enlaces anteriores, sin embargo no estoy obteniendo respuestas que sean consistentes con el libro que estoy usando (Handbook of Elliptic Integrals for Engineers and Scientists). El manual tiene una tabla de valores de k y la respuesta a la integral elíptica para ese k. Voy a dar un ejemplo abajo:

K(k) = integral elíptica completa del primer tipo

$$K(k) = \int_0^{2\pi} \frac {1}{\sqrt{1 - k^2 sin^2 \theta} }d\theta$$

Answers From The Book
     (sin^-1)k     K        E
    0 degrees    1.571    1.571
    10 degrees   1.583    1.559
    20 degrees   1.620    1.524
    30 degrees   1.686    1.467
    40 degrees   1.787    1.393

Pero si uso la función de MATLAB me da respuestas diferentes:

[K,E] = ellipke(sin(0*pi/180))
K = 1.5708
E = 1.5708

[K,E] = ellipke(sin(10*pi/180))
K = 1.6466
E = 1.5002

[K,E] = ellipke(sin(20*pi/180))
K = 1.7393
E = 1.4264

[K,E] = ellipke(sin(30*pi/180))
K = 1.8541
E = 1.3506

[K,E] = ellipke(sin(40*pi/180))
K = 1.9987
E = 1.2748

Entiendo que MATLAB utiliza un método numérico para calcular la integral elíptica porque no existe una solución analítica, por lo que las respuestas no pueden ser completamente exactas, pero esperaría que fueran mejores que esto. De momento están muy lejos.

El manual también tiene una tabla de respuestas para todo lo siguiente:

E(k) = integral elíptica completa de segundo tipo

$$E(k) = \int_0^{2\pi} \sqrt{1 - k^2 sin^2 \theta }d\theta$$

F(ksi,k) = integral elíptica incompleta de primer orden

$$F(\xi,k) = \int_0^{\xi} \frac {1}{\sqrt{1 - k^2 sin^2 \theta} }d\theta$$

E(ksi,k) = integral elíptica incompleta de segundo tipo

$$E(\xi,k) = \int_0^{\xi} {\sqrt{1 - k^2 sin^2 \theta} }d\theta$$

Y MATLAB también da respuestas completamente erróneas para todas ellas.

En la página de ayuda de mathworks (que se muestra en el enlace de la parte superior de la página), la definición de las integrales elípticas parece diferente a la que aparece en el manual, así que este podría ser el problema.

¿Cómo puedo arreglar esto para obtener respuestas precisas?

Gracias.

*Nota: He probado a disminuir la tolerancia, pero la respuesta siempre sale igual. También vale la pena señalar que la respuesta a [K,E] = ellipke(sin(40*pi/180)), está muy cerca de la respuesta para 53 grados en el manual tanto para K como para E*

3voto

Vijesh VP Puntos 2535

Añade una potencia de 2, por ejemplo

[K,E] = ellipke(sin(10*pi/180)^2)
------------------------- Here ^

Mathematica también verifica sus resultados, y parece necesitar la potencia de 2 para coincidir con el libro.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X