Curso de actualizaci ´ on docente:
C ´ omputo cient´ıfico con Python
David P. Sanders
Departamento de F´ısica Facultad de Ciencias
Universidad Nacional Aut ´onoma de M ´exico
http://sistemas.fciencias.unam.mx/~dsanders [email protected]
Departamento de F´ısica, Facultad de Ciencias
Meta del curso
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ C ´omputo cient´ıfico moderno
❏ Python y su “ecosistema”
Meta del curso
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ C ´omputo cient´ıfico moderno
❏ Python y su “ecosistema”
❏ Actualizaci ´on de docentes
❏ Actualizaci ´on para la docencia
Requisitos
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Conocimiento m´ınimo de programaci ´on y c ´omputo
❏ Instalar Python (recomendado: Enthought Python Distribution)
Requisitos
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Conocimiento m´ınimo de programaci ´on y c ´omputo
❏ Instalar Python (recomendado: Enthought Python Distribution)
❏ Wikipedia
Requisitos
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Conocimiento m´ınimo de programaci ´on y c ´omputo
❏ Instalar Python (recomendado: Enthought Python Distribution)
❏ Wikipedia
❏ Notas
C ´ omputo (cient´ıfico)
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Resolver ecuaciones
❏ Compar con teor´ıa
C ´ omputo (cient´ıfico)
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Resolver ecuaciones
❏ Compar con teor´ıa
❏ C ´alculos simb ´olicos
❏ C ´alculos matriciales
C ´ omputo (cient´ıfico)
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Resolver ecuaciones
❏ Compar con teor´ıa
❏ C ´alculos simb ´olicos
❏ C ´alculos matriciales
❏ Procesamiento de datos
❏ Interactuar con los datos
❏ Producir gr ´aficas
❏ Correr programas y tareas (“pegamento”)
C ´ omputo (cient´ıfico)
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Resolver ecuaciones
❏ Compar con teor´ıa
❏ C ´alculos simb ´olicos
❏ C ´alculos matriciales
❏ Procesamiento de datos
❏ Interactuar con los datos
❏ Producir gr ´aficas
❏ Correr programas y tareas (“pegamento”)
❏ C ´omputo de alto rendimiento
¿Qu ´e es Python?
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Lenguaje de programaci ´on moderno
❏ Lenguaje interpretado (no compilado)
¿Qu ´e es Python?
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Lenguaje de programaci ´on moderno
❏ Lenguaje interpretado (no compilado)
❏ Ecosistema: bibliotecas para c ´omputo cient´ıfico y otras tareas
– bater´ıas inclu´ıdas
❏ Software libre (accesar, modificar, compartir)
¿Qu ´e es Python?
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Lenguaje de programaci ´on moderno
❏ Lenguaje interpretado (no compilado)
❏ Ecosistema: bibliotecas para c ´omputo cient´ıfico y otras tareas
– bater´ıas inclu´ıdas
❏ Software libre (accesar, modificar, compartir)
❏ Parecido a Matlab, pero con una gran ventaja...
¿Qu ´e es Python?
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
❏ Lenguaje de programaci ´on moderno
❏ Lenguaje interpretado (no compilado)
❏ Ecosistema: bibliotecas para c ´omputo cient´ıfico y otras tareas
– bater´ıas inclu´ıdas
❏ Software libre (accesar, modificar, compartir)
❏ Parecido a Matlab, pero con una gran ventaja...
precio de Matlab
precio de Python =
∞
Cuadro comparativo
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
Cualidad Python C++ Fortran Matlab MM
bonito
X × ×
(×
)×
barato
X X X × ×
intuitivo
X × × X ×
f ´acil
X × × X ×
Cuadro comparativo
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
Cualidad Python C++ Fortran Matlab MM
bonito
X × ×
(×
)×
barato
X X X × ×
intuitivo
X × × X ×
f ´acil
X × × X ×
gr ´aficas
X × × X X
simb ´olicos
X × × × X
matrices
X X X X X
Cuadro comparativo
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
Cualidad Python C++ Fortran Matlab MM
bonito
X × ×
(×
)×
barato
X X X × ×
intuitivo
X × × X ×
f ´acil
X × × X ×
gr ´aficas
X × × X X
simb ´olicos
X × × × X
matrices
X X X X X
“pegamento”
X × × × ×
tareas
X × × × ×
Cuadro comparativo
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
Cualidad Python C++ Fortran Matlab MM
bonito
X × ×
(×
)×
barato
X X X × ×
intuitivo
X × × X ×
f ´acil
X × × X ×
gr ´aficas
X × × X X
simb ´olicos
X × × × X
matrices
X X X X X
“pegamento”
X × × × ×
tareas
X × × × ×
rendimiento (
X
)X X
(X
) (X
)Cuadro comparativo
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
Cualidad Python C++ Fortran Matlab MM
bonito
X × ×
(×
)×
barato
X X X × ×
intuitivo
X × × X ×
f ´acil
X × × X ×
gr ´aficas
X × × X X
simb ´olicos
X × × × X
matrices
X X X X X
“pegamento”
X × × × ×
tareas
X × × × ×
rendimiento (
X
)X X
(X
) (X
)Cuadro comparativo
•Requisitos
•C ´omputo (cient´ıfico)
•¿Qu ´e es Python?
•Cuadro comparativo
Cualidad Python C++ Fortran Matlab MM
bonito
X × ×
(×
)×
barato
X X X × ×
intuitivo
X × × X ×
f ´acil
X × × X ×
gr ´aficas
X × × X X
simb ´olicos
X × × × X
matrices
X X X X X
“pegamento”
X × × × ×
tareas
X × × × ×
rendimiento (
X
)X X
(X
) (X
)Python = mejor herramienta para casi todo Para lo dem ´as, C++ [o Fortran 90+]