4.7 KiB
4.7 KiB
Calculadora MAV - CAS Híbrido
Sistema de Álgebra Computacional híbrido que combina SymPy con clases especializadas.
🚀 Inicio Rápido
Instalación Automática
python launcher.py --setup
Instalación Manual
pip install sympy matplotlib numpy
python launcher.py
En Linux (para tkinter)
sudo apt-get install python3-tk
✨ Características Principales
- 🧮 Motor SymPy completo: Cálculo simbólico avanzado
- 🔧 Sintaxis simplificada:
IP4[192.168.1.1/24]
en lugar deIP4("192.168.1.1/24")
- 📐 Ecuaciones automáticas:
x + 2 = 5
detectado automáticamente - 📊 Resultados interactivos: Plots y matrices clickeables
- 🌐 Clases especializadas: IP4, Hex, Bin, Date, Dec, Chr
📝 Ejemplos Básicos
Clases Especializadas
# Redes
IP4[192.168.1.100/24].NetworkAddress[] # 192.168.1.0/24
IP4[10.0.0.1/8].Nodes() # 16777214 hosts
# Números
Hex[FF] + 1 # 0x100
Bin[1010] * 2 # 0b10100
# Caracteres
Chr[A] # 'A' (ASCII 65)
Matemáticas Simbólicas
# Variables automáticas
x + 2*y # Expresión simbólica
# Cálculo
diff(x**2 + sin(x), x) # 2*x + cos(x)
integrate(x**2, x) # x**3/3
# Ecuaciones (detección automática)
x**2 + 2*x - 8 = 0 # Agregada al sistema
solve(x**2 + 2*x - 8, x) # [-4, 2]
x=? # Atajo para solve(x)
Plotting Interactivo
plot(sin(x), (x, -2*pi, 2*pi)) # 📊 Ver Plot (clickeable)
Matrix([[1, 2], [3, 4]]) # 📋 Ver Matriz (clickeable)
🎯 Casos de Uso
Networking
# Análisis de red
network = IP4[192.168.0.0/24]
network.Nodes() # 254
network.BroadcastAddress[] # 192.168.0.255/24
# Cálculo con variables
base = IP4[10.0.x.0/24]
solve(base.Nodes() == 254, x) # Encuentra x
Programación
# Conversiones entre bases
Hex[255].toDecimal() # 255
Dec[66].toChr() # Chr('B')
# Análisis ASCII
Chr[Hello].value # [72, 101, 108, 108, 111]
Matemáticas Avanzadas
# Sistema de ecuaciones
x + y = 10
x - y = 2
solve([x + y - 10, x - y - 2], [x, y]) # {x: 6, y: 4}
# Análisis completo
f = sin(x) * exp(-x**2)
diff(f, x) # Derivada
integrate(f, (x, -oo, oo)) # Integral impropia
series(f, x, 0, 5) # Serie de Taylor
🖥️ Interfaz
Paneles
- Izquierda: Editor de código con sintaxis nueva
- Derecha: Resultados coloreados e interactivos
Menús
- Archivo: Nuevo, Cargar, Guardar
- CAS: Variables, Ecuaciones, Resolver sistema
- Ayuda: Guías y documentación completa
Resultados Clickeables
- 📊 Ver Plot: Abre ventana matplotlib
- 📋 Ver Matriz: Vista expandida con operaciones
- 📋 Ver Lista: Contenido completo de listas largas
🔧 Archivos del Proyecto
calculadora-mav-cas/
├── launcher.py # 🚀 Inicio principal
├── setup.py # 🛠️ Instalación
├── test_suite.py # 🧪 Tests
├── bracket_parser.py # 📝 Parser sintaxis
├── hybrid_base_types.py # 🏗️ Clases especializadas
├── hybrid_evaluation_engine.py # 🧮 Motor CAS
├── interactive_results.py # 📊 Resultados clickeables
├── hybrid_calc_app.py # 🖥️ Interfaz gráfica
└── requirements.txt # 📦 Dependencias
🆘 Resolución de Problemas
Errores Comunes
# Dependencias faltantes
pip install sympy matplotlib numpy
# Linux: tkinter faltante
sudo apt-get install python3-tk
# Verificar instalación
python test_suite.py
Sintaxis Correcta
# ✅ Correcto (nueva sintaxis)
IP4[192.168.1.1/24]
Hex[FF]
# ❌ Incorrecto (sintaxis antigua)
IP4("192.168.1.1/24")
Hex("FF")
📚 Documentación Completa
Ver comprehensive_documentation.md
para:
- Guía completa de sintaxis
- Casos de uso avanzados
- API de desarrollo
- Ejemplos detallados
🧪 Testing
# Tests básicos
python test_suite.py
# Tests con verbosidad
python test_suite.py --verbose
# Setup con tests
python launcher.py --test
🚀 Ejecutar
# Método recomendado
python launcher.py
# Sin splash screen
python launcher.py --no-splash
# Con verificación
python launcher.py --test
¡Disfruta del poder del CAS híbrido! 🎉
Para soporte y documentación completa, consulta los archivos de documentación incluidos.