Skip to content

🧮 Numerical Integration Calculator | Interactive React app for computing definite integrals using Rectangle, Trapezoid & Simpson's methods 📊 | Real-time function plotting with MathJS + Function-Plot 📈

Notifications You must be signed in to change notification settings

FROSTYLAN/00012-numerical-integration-calculator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧮 Numerical Integration Calculator

Una aplicación web interactiva desarrollada con React que implementa métodos numéricos para calcular integrales definidas. Este proyecto permite visualizar y comparar los resultados de tres métodos clásicos de integración numérica: Rectángulo, Trapecio y Simpson.

🌟 Características

  • Tres métodos de integración implementados: Rectángulo, Trapecio y Simpson
  • Visualización gráfica de la función usando Function Plot
  • Interfaz intuitiva con entrada de ecuaciones matemáticas
  • Cálculo en tiempo real de integrales definidas
  • Comparación de resultados entre diferentes métodos
  • Diseño responsivo adaptado a diferentes dispositivos
  • Evaluación matemática robusta con Math.js

🚀 Demo en Vivo

🔗 Ver Demo

🛠️ Tecnologías Utilizadas

  • React 18 - Framework de JavaScript
  • Math.js - Biblioteca para evaluación de expresiones matemáticas
  • Function Plot - Visualización de funciones matemáticas
  • CSS3 - Estilos y diseño responsivo
  • Create React App - Configuración y herramientas de desarrollo

📁 Estructura del Proyecto

00012-numerical-integration-calculator/
├── public/
│   ├── index.html            # Página principal
│   └── favicon.ico           # Icono de la aplicación
├── src/
│   ├── components/
│   │   └── Resultados.jsx    # Componente de resultados
│   ├── imgs/
│   │   ├── logo-unt.png      # Logo de la universidad
│   │   └── signo-matematico-integral.png
│   ├── styles/
│   │   ├── Ecuacion.css      # Estilos de la ecuación
│   │   ├── Resultados.css    # Estilos de resultados
│   │   ├── button.css        # Estilos de botones
│   │   ├── footer.css        # Estilos del footer
│   │   ├── grafica.css       # Estilos de la gráfica
│   │   └── header.css        # Estilos del header
│   ├── App.js                # Componente principal
│   ├── App.css               # Estilos principales
│   └── index.js              # Punto de entrada
├── package.json              # Dependencias y scripts
└── README.md                 # Documentación

🔬 Métodos Implementados

Método del Rectángulo

  • Aproxima el área usando rectángulos
  • Utiliza el punto medio de cada subintervalo
  • Fórmula: ∫f(x)dx ≈ h∑f(xi)

Método del Trapecio

  • Aproxima el área usando trapecios
  • Conecta puntos consecutivos con líneas rectas
  • Fórmula: ∫f(x)dx ≈ (h/2)[f(a) + 2∑f(xi) + f(b)]

Método de Simpson

  • Aproxima usando parábolas de segundo grado
  • Mayor precisión que los métodos anteriores
  • Fórmula: ∫f(x)dx ≈ (h/3)[f(a) + 4∑f(xi) + 2∑f(xi) + f(b)]

🚀 Instalación y Uso

  1. Clona el repositorio:

    git clone https://github.com/FROSTYLAN/00012-numerical-integration-calculator.git
  2. Navega al directorio:

    cd 00012-numerical-integration-calculator
  3. Instala las dependencias:

    npm install
  4. Inicia la aplicación:

    npm start
  5. Abre tu navegador en:

    http://localhost:3000
    

📱 Cómo Usar la Aplicación

  1. Ingresa tu función en el campo de ecuación (ej: x^2, sin(x), exp(x))
  2. Define los límites de integración (valores mínimo y máximo)
  3. Especifica el número de subdivisiones (n)
  4. Haz clic en "Calcular" para obtener los resultados
  5. Compara los resultados de los tres métodos
  6. Visualiza la gráfica de tu función

🎯 Características Técnicas

Evaluación Matemática

  • Soporte para funciones trigonométricas, exponenciales y polinómicas
  • Evaluación segura de expresiones usando Math.js
  • Manejo de errores en expresiones inválidas

Visualización

  • Gráficas interactivas con Function Plot
  • Escalado automático de ejes
  • Representación visual de la función a integrar

Interfaz de Usuario

  • Diseño intuitivo con símbolos matemáticos
  • Entrada de datos validada
  • Resultados mostrados en tiempo real

📊 Scripts Disponibles

  • npm start - Inicia el servidor de desarrollo
  • npm test - Ejecuta las pruebas
  • npm run build - Construye la aplicación para producción
  • npm run eject - Expone la configuración de webpack

🎯 Objetivos del Proyecto

  • Implementar algoritmos de integración numérica
  • Practicar desarrollo con React
  • Integrar bibliotecas matemáticas especializadas
  • Crear una interfaz educativa para métodos numéricos
  • Desarrollar habilidades en visualización de datos

🔧 Posibles Mejoras

  • Añadir más métodos de integración (Gauss-Legendre, Monte Carlo)
  • Implementar análisis de error y convergencia
  • Agregar exportación de resultados a PDF
  • Incluir más tipos de funciones predefinidas
  • Añadir modo oscuro
  • Implementar historial de cálculos
  • Agregar animaciones en la visualización

🎓 Contexto Académico

Este proyecto fue desarrollado como parte del curso de Métodos Numéricos en la Universidad Nacional de Trujillo (UNT), demostrando la aplicación práctica de algoritmos matemáticos en el desarrollo web.

📄 Licencia

Este proyecto está bajo la Licencia MIT. Ver el archivo LICENSE para más detalles.

🤝 Contribuciones

Las contribuciones son bienvenidas. Por favor:

  1. Fork el proyecto
  2. Crea una rama para tu feature (git checkout -b feature/AmazingFeature)
  3. Commit tus cambios (git commit -m 'Add some AmazingFeature')
  4. Push a la rama (git push origin feature/AmazingFeature)
  5. Abre un Pull Request

👥 Equipo de Desarrollo

  • Castillo Rabanal Luis Javier
  • Castillo Rosas Charles Duck
  • Cordova Urbina Daily Ashley
  • Díaz Tomas Marcos Iván

🏫 Institución

Universidad Nacional de Trujillo (UNT)

  • Facultad de Ciencias Físicas y Matemáticas
  • Escuela de Informática

⭐ ¡No olvides dar una estrella al proyecto si te ayudó en tus estudios de métodos numéricos!

About

🧮 Numerical Integration Calculator | Interactive React app for computing definite integrals using Rectangle, Trapezoid & Simpson's methods 📊 | Real-time function plotting with MathJS + Function-Plot 📈

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published