Cargando Eventos

Python para Cálculo Científico y Técnico (IX ed.)

Código: 21ON34 Online
01/10/2021 al 05/11/2021

Modalidad de celebración:
Univ. Granada (Plataforma MoodleCloud)

Duración (horas presenciales y horas no presenciales):
15 horas presenciales y/o síncronas online (de 16:30 a 19:00), + 15 horas asíncronas y 45 de trabajo autónomo del alumno. Horas totales 75.

Dirección:
Pedro González Rodelas
Prof. Titular de Univ.

Coordinación:
Francisco Miguel García Olmedo
Prof. Titular de Univ.

Posibilidad de reconocimiento de créditos

Para distinguir entre el número de créditos del curso y el reconocimiento de créditos en los distintos Grados, pueden consultar: https://cemed.ugr.es/matriculas/reconocimiento-de-creditos/

Reconocimiento de créditos ECTS OPTATIVOS en los Grados (hasta el momento):

0,5 créditos ECTS en la E.T.S. de Arquitectura en el Grado en Arquitectura
3 créditos ECTS en la E.T.S. de Ingeniería de Caminos, Canales y Puertos en el Grado en Ingeniería Civil
2 créditos ECTS en la Facultad de Ciencias en el Doble Grado en Física y Matemáticas
2 créditos ECTS en la Facultad de Ciencias en el Grado en Biología
2 créditos ECTS en la Facultad de Ciencias en el Grado en Biotecnología
2 créditos ECTS en la Facultad de Ciencias en el Grado en Ciencias Ambientales
2 créditos ECTS en la Facultad de Ciencias en el Grado en Estadística
2 créditos ECTS en la Facultad de Ciencias en el Grado en Física
2 créditos ECTS en la Facultad de Ciencias en el Grado en Geología
2 créditos ECTS en la Facultad de Ciencias en el Grado en Ingeniería Industrial
2 créditos ECTS en la Facultad de Ciencias en el Grado en Ingeniería Química
2 créditos ECTS en la Facultad de Ciencias en el Grado en Matemáticas
2 créditos ECTS en la Facultad de Ciencias en el Grado en Óptica y Optometría
2 créditos ECTS en la Facultad de Ciencias en el Grado en Química
3 créditos ECTS en la Facultad de Ciencias del Deporte en Todos los Grados adscritos
1,5 créditos ECTS en la Facultad de Ciencias Económicas y Empresariales en el Doble Grado en Administración y Dirección de Empresas y Derecha
1,5 créditos ECTS en la Facultad de Ciencias Económicas y Empresariales en el Grado en Economía

Justificación del curso y objetivos

No cabe la menor duda de que en muchas áreas de carácter científico-técnico la adecuada elección del software y/o lenguaje de programación empleado es determinante, de cara a la potencia, versatilidad, facilidad de uso y acceso por parte de todos los usuarios en sus propios dispositivos, de manera generalizada y gratuita.
Nosotros, los profesores participantes en esta iniciativa, tenemos una experiencia de más de 20 años usando software de cálculo simbólico y numérico de todo tipo, tanto software libre (Fortran, C, Maxima, Octave, SAGE, Python, …) como de tipo propietario (Mathematica, Mapple, Matlab, … ) y podemos afirmar que cada uno de ellos posee sus ventajas e inconvenientes, pudiéndose adaptar mejor uno u otro a distintas tareas concretas.

No obstante, dentro del software libre, uno de los que últimamente ha tenido una mejora sustancial, con la inclusión de potentes y versátiles nuevos módulos de cálculo simbólico (SymPy), numérico (NumPy, Scipy) y gráfico (PyPlot y Matplotlib) ha sido sin duda Python, y de ahí su vertiginosa evolución y expansión a nivel mundial, no sólo en el ámbito académico, sino también en el científico e industrial. De hecho, basta con echar un vistazo a las numerosas propuestas, tanto de comunidades de desarrolladores como de empresas privadas, surgidas a raíz de la versión de base inicial de Python, como por ejemplo IPython (interface interactivo de fácil uso, que gracias a Jupyter Notebook permite una versión HTML similar a los notebooks de Mathematica o Mapple) o Spyder (entorno integrado para cálculo científico parecido al de Matlab u Octave).

Por otro lado existen versiones completas de desarrollo, integrando Python como soporte de cálculo, pero con editores avanzados de texto para la programación y la depuración de código, ventanas de gráficos y datos, etc. La mayoría de estas plataformas integradas están disponibles para los distintos sistemas operativos Linux, MacOS X y Windows. Entre ellas cabría destacar Enthought Python Distribution (EPD), PyCharm y Anaconda CE (de Continuum Analytics).

Aparte de todo esto, se dispone ya de una gran cantidad de ejemplos, así como material de apoyo: manuales, libros, blogs y páginas web desarrollados por numerosos científicos y profesores de todo el mundo, siendo tan ingente dicho material que a veces resulta complicado realizar una selección del mismo para poder empezar.

Por todo ello, creemos que este potente software de cálculo científico se encuentra en su máximo apogeo y con un nivel de madurez y versatilidad extraordinario, como para poder iniciar su exitosa incursión en el mundo científico-técnico español, tanto universitario como empresarial, y más concretamente en la Universidad de Granada.

Y de ahí surge esta iniciativa de formación para todo el que estuviera interesado en aprender a usar esta potente herramienta para su uso personal a nivel de investigación y desarrollo.

En esta situación totalmente excepcional provocada por la actual pandemia de la COVID-19, que amenaza con la posibilidad de nuevos rebrotes a nivel general, y especialmente en el ambiente universitario, hemos optado por reconfigurar esta séptima edición del curso de manera que se pueda seguir y cursar de manera totalmente online, reduciendo al mínimo las horas síncronas, o posiblemente presenciales, que se limitarán a una mera orientación previa de cada sesión o alguna que otra tutoría grupal, que se podría realizar presencialmente sólo en caso de que fuese solicitada por un grupo suficientemente numeroso de alumnos y las condiciones sanitarias del momento y la disponibilidad del aula apropiada en un centro de la UGR lo permita.

El curso servirá pues para hacer más fácil y llevadera tanto la inmersión inicial, como el uso avanzado de muchos de los entresijos y detalles más técnicos de este potente y completo lenguaje de programación. Así pues estará orientado tanto a los estudiantes de carreras científico-técnicas y de ingeniería que quieran aprenderlo, como para los doctorandos e investigadores, a los que pueda resultar útil en su investigación.

Competencias del alumnado:

a) El alumno sabrá/comprenderá:

• Las peculiaridades y diferencias fundamentales entre las distintas formas de programar: tanto en su forma procedural básica, o bien de tipo funcional, así como en su versión más avanzada (orientada a objetos).
• Las distintas estructuras de datos que se pueden usar en Python.
• El diálogo y significado de los errores básicos en el proceso de compilación.

b) El alumno será capaz de:

• Descargar, instalar e interactuar con varias versiones y distribuciones de desarrollo con el lenguaje Python más extendidas de las disponibles actualmente.
• Buscar y revisar información relevante acerca de los distintos paquetes y funcionalidades del software.
• Realizar sus primeros programas con Python, así como interactuar con distintos entornos de programación, como Spyder e iPython (via Jupyter).
• Reconocer y usar algunos de los distintos paquetes externos que complementan la distribución básica de Python (NumPy, SciPy, SymPy, Pandas, matplotlib, etc.), así como su modo de instalación y aplicaciones fundamentales.
• Solucionar los errores surgidos en tiempo de interpretación/compilación.

Método de evaluación:

La evaluación se llevará a cabo basándose en:
• La asistencia/conexión a las sesiones, que será obligatoria en no menos del 75% de las sesiones presenciales/síncronas.
• La evolución de la persona inscrita, comprobada a través de la realización de cortas actividades y ejercicios sencillos planteados sobre las explicaciones dadas o los videos grabados y materiales proporcionados en la plataforma online elegida.
• La evaluación rigurosa de al menos una práctica completa, de envergadura suficiente como para poder valorar la capacitación en la materia, que deberá ser realizada en las horas no presenciales/síncronas y presentada en tiempo y forma a través de la plataforma para la docencia elegida.

Cualificación personal o empleos a los que da acceso:
Curso capacitador para la programación en lenguaje Python.