Identifying Data 2020/21
Subject (*) Python for Engineers. Advanced Code 770538012
Study programme
Máster Universitario en Informática Industrial e Robótica
Descriptors Cycle Period Year Type Credits
Official Master's Degree 2nd four-month period
First Optional 3
Language
Spanish
Galician
Teaching method Face-to-face
Prerequisites
Department Ciencias da Computación e Tecnoloxías da Información
Enxeñaría Industrial
Coordinador
Becerra Permuy, Jose Antonio
E-mail
jose.antonio.becerra.permuy@udc.es
Lecturers
Becerra Permuy, Jose Antonio
Jove Pérez, Esteban
Mallo Casdelo, Alma María
E-mail
jose.antonio.becerra.permuy@udc.es
esteban.jove@udc.es
alma.mallo@udc.es
Web
General description O obxectivo desta materia é proporcionar ao alumno os coñecementos necesarios sobre técnicas e ferramentas en Python para que este sexa capaz de resolver, utilizando devandita linguaxe, problemas habituais en enxeñería (cálculo numérico, procesado de sinal, etc.).
Contingency plan 1. Modificacións nos contidos
Non se realizarán cambios.

2. Metodoloxías
*Metodoloxías docentes que se manteñen
Mantéñense todas as metodoloxías.

*Metodoloxías docentes que se modifican
Todas as metodoloxías terán que ser adaptadas. Así, a sesión maxistral, as prácticas de laboratorio e a proba mixta realizaranse mediante Teams e / ou Moodle. A presentación dos traballos tutelados realizarase tamén mediante Teams.

3. Mecanismos de atención personalizada ao alumnado
Fóra das titorías en despacho, mantéñense os mesmos mecanismos de atención personalizada, a saber: videoconferencia e mensaxería por Teams, Moodle e correo electrónico, por esta orde de preferencia.
Adicionalmente, se o profesorado observa que hai dúbidas comúns a un grupo de alumnos, poderanse programar titorías de grupo reducido mediante videoconferencia por Teams.

4. Modificacións na avaliación
Non hai cambios na avaliación, máis aló de que será realizada telemáticamente mediante Moodle ou Teams.

*Observacións de avaliación:

5. Modificacións da bibliografía ou webgrafía
Toda a bibliografía recomendada foi adquirida pola biblioteca do centro en PDF ademais de en papel, polo que podería ser proporcionada aos alumnos. No caso de que iso non fose posible por unha cuestión de dereitos de autor, o profesorado proporcionaría unha substitutoria de libre acceso.

Study programme competencies
Code Study programme competences
A2 CE02 - Capacidad para desarrollar aplicaciones, implementar algoritmos y manejar estructuras de datos de forma eficiente en los lenguajes de programación, en especial los usados en robótica y/o informática industrial
A3 CE03 - Capacidad para desarrollar y programar aplicaciones complejas, incluyendo multihilo y/o multiproceso y/o procesos distribuidos
B1 CB6 - Poseer y comprender conocimientos que aporten una base u oportunidad de ser originales en el desarrollo y/o aplicación de ideas, a menudo en un contexto de investigación
B2 CB7 - Que los estudiantes sepan aplicar los conocimientos adquiridos y su capacidad de resolución de problemas en entornos nuevos o poco conocidos dentro de contextos más amplios (o multidisciplinares) relacionados con su área de estudio
B11 CG6 - Adquirir nuevos conocimientos y capacidades relacionados con el ámbito profesional del máster
B13 CG8 - Aplicar los conocimientos teóricos a la práctica
B14 CG9 - Aplicar conocimientos de ciencias y tecnologías avanzadas a la práctica profesional o investigadora
C1 CT01 - Adquirir la terminología y nomenclatura científico-técnica para exponer argumentos y fundamentar conclusiones
C4 CT04 - Desarrollar el pensamiento crítico
C5 CT05 - Adquirir la capacidad para elaborar un trabajo multidisciplinar

Learning aims
Learning outcomes Study programme competences
Saber desenvolver aplicacións en Python, incluíndo o traballo con IDEs que soportan o traballo colaborativo, control de versións e depuración de aplicacións multithread e multiproceso. AC2
AC3
CC1
Saber resolver en Python problemas de cálculo numérico e procesado de sinais. AC2
AC3
BC1
BC2
BC11
BC13
BC14
CC1
CC4
CC5
Saber realizar análise de datos en Python e traballar con ficheiros de E/S de diversos formatos coñecidos e utilizados en aplicacións científicas. AC2
AC3
BC1
BC2
BC11
BC13
BC14
CC1
CC5
Saber resolver problemas de matemática simbólica en Python. AC2
AC3
BC1
BC2
BC11
BC13
BC14
CC1
CC4
CC5

Contents
Topic Sub-topic
Desenvolvemento e depuración de proxectos software complexos. IDEs.
Depuradores.
Software de control de versións.
Programación multiproceso e multihilo. Programación multiproceso.
Programación multihilo.
Introdución a cálculo numérico e procesado de sinal en Python. NumPy.
SciPy.
Librerías de análises de datos. Pandas.
Matemática simbólica en Python. SymPy.

Planning
Methodologies / tests Competencies Ordinary class hours Student’s personal work hours Total hours
Guest lecture / keynote speech B1 B11 C1 7 10.5 17.5
Laboratory practice A3 A2 B13 B14 C4 10 15 25
Supervised projects A2 A3 B2 B13 B14 C5 C4 0 28.5 28.5
Mixed objective/subjective test B1 B11 C4 C1 2 0 2
 
Personalized attention 2 0 2
 
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students.

Methodologies
Methodologies Description
Guest lecture / keynote speech Actividade presencial na aula que serve para establecer os conceptos fundamentais da materia. Consiste na exposición oral facendo uso profuso de medios audiovisuais e buscando a participación dos alumnos mediante a formulación de casos prácticos e a realización de preguntas, co fin de facilitar a aprendizaxe e fomentar o espírito crítico.
Laboratory practice Mediante esta actividade os alumnos implementarán no laboratorio pequenos programas / sistemas que exemplificarán os conceptos vistos nas sesións maxistrais, de forma que poidan probar no mundo real algúns dos métodos e técnicas, e valorar de primeira man os problemas (e as súas implicacións) que xorden na implementación.
Supervised projects Realización dun ou varios traballos ao longo do cuadrimestre, expostos de forma incremental, realizados de forma autónoma e titorizados polos profesores, que implicarán levar á práctica gran parte dos conceptos vistos nas sesións maxistrais. O traballo será realizado en grupo e os alumnos entregarán, en soporte informático, unha memoria e terán que realizar tamén unha presentación ante o profesor e os seus compañeiros de clase.
Mixed objective/subjective test Proba de avaliación que se realizará nas correspondentes oportunidades das convocatorias oficiais. Consistirá nunha proba escrita con preguntas moi breves e / ou de tipo test, coa finalidade de comprobar o afianzamento dos conceptos teóricos máis importantes vistos na materia.

Personalized attention
Methodologies
Supervised projects
Description
Traballos tutelados: será necesario mostrar os avances que se vaian realizando para ofrecer a orientación adecuada, resolver dúbidas e asegurar a calidade do traballo. Estas titorías realizaranse en grupo e de forma presencial no despacho do profesor.

Assessment
Methodologies Competencies Description Qualification
Laboratory practice A3 A2 B13 B14 C4 Consistirá na recompilación de todas as prácticas de laboratorio realizadas durante o curso. Estas deberán realizarse no tempo asignado ás clases prácticas, e entregaranse ao final das mesmas. Durante a súa realización, o alumno pode expor dúbidas ao profesor ou consultar os materiais que estime oportuno. Por tanto, esta actividade avaliará o traballo diario do alumno nas clases prácticas.

Nomenclatura empregada na sección de observacións para esta actividade:
PL: nota obtida nos exercicios realizados nas clases prácticas de laboratorio.
35
Mixed objective/subjective test B1 B11 C4 C1 Proba final da materia que consistirá na realización dun exame individual. Esta proba terá preguntas de tipo teóricas e prácticas relacionadas cos conceptos estudados nas clases maxistrais, nas prácticas de laboratorio ou cos contidos dos traballos / proyectos tutelados.

Nomenclatura empregada na sección de observacións para esta actividade:
PM: nota obtida nesta proba.
25
Supervised projects A2 A3 B2 B13 B14 C5 C4 Desenvolvemento dun proxecto aplicado en grupos reducidos. Será necesario entregar os materiais (documento e presentación) en tempo e forma seguindo as indicacións do enunciado. Ademais, requirirá a exposición oral por parte de todos os integrantes do grupo de traballo, empregando para iso a presentación entregada. A non realización da presentación supoñerá unha nota de cero nesta actividade.

Nomenclatura empregada na sección de observacións para esta actividade:
TT: nota obtida no traballo tutelado.
40
 
Assessment comments
Para poder aprobar a materia o estudante deberá cumprir os seguintes requisitos (puntuación entre 0 e 10 en todas as actividades):
  1. Que a nota nas prácticas de laboratorio sexa maior ou igual que 5.
  2. Que a nota no traballo tutelado sexa maior ou igual que 5.
  3. Que a nota na proba mixta sexa maior ou igual que 5.
Se non se cumpren todos os requisitos anteriores a  cualificación será de suspenso e a nota numérica máxima que se poderá obter, na oportunidade correspondente, será de 4,5 puntos. Se se cumpren os requisitos esixidos, a nota final calcularase da seguinte forma:

NOTA FINAL = 0,35× PL + 0,40* TT + 0,25* PM

Aínda que a asistencia ás clases non é obrigatoria, o primeiro requisito converte en moi difícil aprobar a materia se o número de ausencias ás clases no laboratorio é elevado.

No caso dos alumnos matriculados a tempo parcial, dependendo das circunstancias e se os profesores considérano necesario, a parte da puntuación das diferentes prácticas de laboratorio poderá pasarse ao traballo tutelado, a cambio da obrigación da existencia dunha titoría cada semana para garantir o correcto aproveitamento da materia.

Notas sobre as actividades:

- Todas as actividades terán unha única oportunidade para a súa entrega durante o curso académico, salvo a proba mixta que terá dúas oportunidades oficiais de exame. Por tanto, as notas obtidas durante o curso nas prácticas e no traballo tutelado gárdanse para a oportunidade de xullo, NON SENDO POSIBLE REPETILAS.

- De acordo ao artigo 14, apartados 1 e 3 da normativa*, a copia ou intento de copia (ou calquera comportamento impropio) durante unha proba implicará a  cualificación de suspenso cun 0 nas dúas oportunidades da convocatoria anual.

- De acordo ao artigo 14, apartado 4 da mesma normativa, o plaxio de calquera traballo implicará a  cualificación de suspenso cun 0 no devandito traballo.

* Normativa de avaliación, revisión e reclamación das cualificacións dos estudos de grao e máster universitario, cuxa última versión é do 29 de xuño de 2017.

Sources of information
Basic Mehta, H. K. (2015). Mastering Python scientific computing.. Packt Publishing Ltd.
Van Hattem, R. (2016). Mastering Python.. Packt Publishing Ltd.
Fandango, A. (2017). Python Data Analysis. Second Edition.. Packt Publishing Ltd.

Complementary


Recommendations
Subjects that it is recommended to have taken before
Introduction to Python for Engineers/770538011

Subjects that are recommended to be taken simultaneously

Subjects that continue the syllabus

Other comments
Para axudar a conseguir unha contorna sustentable e cumprir co obxectivo da acción número 5 ("Docencia e investigación saudable e sustentable ambiental e social") do "Plan de Acción Green Campus Ferrol" a entrega dos traballos documentais que se realicen nesta materia:

1. Solicitarase en formato virtual e/ou soporte informático.

2. Realizarase a través de Moodle, en formato dixital sen necesidade de imprimilos.

3. De realizarse en papel:

- Non se empregarán plásticos.

- Realizaranse impresións a dobre cara.

- Empregarase papel reciclado.

- Evitarase a impresión de borradores.


(*)The teaching guide is the document in which the URV publishes the information about all its courses. It is a public document and cannot be modified. Only in exceptional cases can it be revised by the competent agent or duly revised so that it is in line with current legislation.