BETA-INTEGRAL SOLVER

GitHub last commit GitHub issues GitHub stars

  • Esta calculadora es un mini proyecto que realiza aproximaciones de integrales definidas, el programa aproximará las integrales de las funciones que se le den, siempre y cuando sean funciones continuas, estén definidas en todo su dominio.

  • Se probó con las integrales de los ejercicios de la sección 5.6 del libro "Cálculo con geometría analítica - Earl W. Swokowski" y algunos ejercicios de la sección 7.7 del libro Stewart Calculus: Early Transcendentals.

  • El programa no es a prueba de tontos xd :goberserk: , por ahorro de tiempo, sin embargo es una herramienta útil si se usa con total claridad por ejemplo sabiendo que n > 0.

Requisitos:

  1. Módulo tabulate 0.8.7 Descarga el módulo acá

¿Cómo funciona? (Resumen)

1️⃣ El programa realiza aproximaciones numéricas con cuatro algoritmos ya conocidos.

2️⃣ La función que se le proporciona en el código es tomada como una "curva" y además se le dice el intervalo sobre el que se "integrará".

3️⃣ Toma el intervalo que se le da por consola y lo divide n-veces (El usuario decide el intervalo y n), siendo n la cantidad de particiones que se realizará por debajo de la curva introducida.

4️⃣ Al tratarse de aproximaciones entre mayor sea "n" mayor será la aproximación de la integral y menor el error de estimación.

5️⃣ Los algoritmos con los que se realiza la aproximación son:

  • Rn: Aproximación tomando el extremo derecho de cada partición (rectángulo)

  • Regla del punto medio: Aproximación tomando las alturas de la mitad de los rectángulos de cada partición.

  • Regla del Trapecio: Aproximación tomando trapecios en vez de rectángulos.

  • Regla de Simpson: Aproximación tomando Parábolas, n debe ser par en este caso:

Demostración - ejemplo

  • La función probada es: (se realizará simplemente la aproximación con 6 particiones(n = 6), sin embargo pueden ser introducidas la cantidad de particiones que se quieran)

  • La función introducida en el código se ve:

  • Las aproximaciones obtenidas por Rn, trapecio y Simpson son (Imágenes de visualización de datos en la terminal):

Uso

  1. Ubicar la función deseada en donde corresponde osea dentro de la función def func_num(x):
		
  def func_num(x):  #Función numérica

    f = (math.cos(x))/x # Acá poner la función deseada -Este es un ejemplo

    return f
  1. Seleccionar el método con el que quiere hacer la aproximación.
  2. Dar la cantidad de particiones, los extremos del intervalo (a y b. Esta parte es muy intuitiva, el programa le pedirá estos datos por consola).
  3. Asegúrese que la función sea continua en el intervalo que dió, el programa no realiza integrales impropias, ni mucho menos pretende reemplzar a Symbolab, este solo hace aproximaciones númericas de integrales definidas.

Integrales probadas

Versión y novedades

:goberserk: 0️⃣.7️⃣.1️⃣

✅ La terminal se ve cool.

✅ Permite elegir el método, en vez de obligar a usarlos todos.

✅ La aproximación por punto medio es mejorada, realiza la aproximación con el error de estimación esperado.

Actualizaciones previstas

1️⃣ Aspiro poder encontrar una manera más amigable para introducir las funciones a integrar.

2️⃣ Me gustaría incorporar un UI, donde se vean las gráficas de las funciones y la tabla de que se imprime en la terminal.

3️⃣ Incorporar el error de estimación de cada aproximación.

Licencia

Licencia MIT (Open source)