Utilidades de Mecánica Celeste
Project description
PymCel
Utilidades de Mecánica Celeste
El paquete pymcel
contiene un conjunto de utilidades que pueden usarse para la enseñanza de (o la investigación en) Mecánica Celeste o Astrodinámica.
Las utilidades que contienen el paquete fueron originalmente desarrolladas como parte del libro Mecánica Celeste: teoría, algoritmos y problemas del profesor Jorge I. Zuluaga de la Universidad de Antioquia. Muchos de los códigos incluídos en el libro están disponibles en la sección de ejemplos del repositorio en GitHub
del paquete. El libro puede conseguirse en PDF y en papel con la editorial de la Universidad de Antioquia (normalmente envíos solo dentro de Colombia) o internacionalmente en librerías en línea (aquí también).
En este sitio encontrará además un documento con las Fe de Erratas del libro, en el que encontrarán algunas correcciones puntuales a defectos que se fueron con la primera edición.
Descarga e instalación
pymcel
esta disponible en PyPI
, https://pypi.org/project/pymcel/. Para instalar solo debe ejecutar:
pip install -U pymcel
Si usted prefiere puede descargar e instalar directamente desde las fuentes.
Para empezar
Para empezar a usar el paquete basta que lo importe:
import pymcel as pc
El siguiente código, por ejemplo, integra las ecuaciones de movimiento de una partícula en el CRTBP (problema circular restringido de los tres cuerpos):
Nt=300
ts=linspace(0,10,Nt)
alfa=0.3
ro=[1.0,0.0,0.0]
vo=[0.0,0.45,0.0]
rs_rot,vs_rot,rs_ine,vs_ine,r1_ine,r2_ine=pc.crtbp_solucion(alfa,ro,vo,ts)
Un gráfico de la trayectoria de la partícula, y de la posición de los cuerpos más masivos, tanto en el sistema de referencia rotante, como en el sistema de referencia inercial se puede realizar con este código:
import matplotlib.pyplot as plt
fig,axs=plt.subplots(1,2,figsize=(8,4))
# Sistema de referencia rotante
ax=axs[0]
ax.plot(rs_rot[:,0],rs_rot[:,1],'k-')
ax.plot([-alfa],[0],'ro',ms=10)
ax.plot([1-alfa],[0],'bo',ms=5)
ax.set_title("Sistema Rotante")
ax.grid()
ax.axis('equal')
# Sistema de referencia inercial
ax=axs[1]
ax.plot(rs_ine[:,0],rs_ine[:,1],'k-')
ax.plot(r1_ine[:,0],r1_ine[:,1],'r-')
ax.plot(r2_ine[:,0],r2_ine[:,1],'b-')
ax.set_title("Sistema Inercial")
ax.grid()
ax.axis('equal')
plt.show()
Ejemplos de uso y códigos en el libro
Es también interesante consultar el repositorio en GitHub
del paquete, donde además de las fuentes, encontrará, entre otras cosas utiles, cuadernos de ejemplos y tutoriales sobre el uso del paquete.
Muchos de estos cuadernos incorporan los códigos que vienen con el libro Mecánica Celeste: teoría, algoritmos y problemas y pueden ser ejecutados por comodidad por docentes y estudiantes en Google Colab
.
¿Qué hay de nuevo?
Para una lista detallada de las características más nuevas introducidas en el paquete con la última versión vea el archivo What's new.
Este paquete ha sido diseñado y escrito originalmente por Jorge I. Zuluaga (C) 2023, 2024
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pymcel-0.6.13.tar.gz
.
File metadata
- Download URL: pymcel-0.6.13.tar.gz
- Upload date:
- Size: 1.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15b6f4fa588c38b53573f34de927f4a51e83ad89e3dfb41cec0ae83c95c2e2bb |
|
MD5 | 391998d2d14bb6865e0c3c28d95b9b64 |
|
BLAKE2b-256 | 74b773a8ae78a35116418dfb718487f5767c59d41cb05201dd683b485d2f4b7a |
File details
Details for the file pymcel-0.6.13-py3-none-any.whl
.
File metadata
- Download URL: pymcel-0.6.13-py3-none-any.whl
- Upload date:
- Size: 1.2 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d2f7ef9e8809f6092136dab8625324155026e9339ab8a49502d41e1c0bb4dd1 |
|
MD5 | 496f4559eaa01c4098c25085eaef7fce |
|
BLAKE2b-256 | 6e869c025bf3bb0e9ea2a43de97cdc5e111f60ea7368e6a57f35c186655e5426 |