Download Uso de Python como herramientas del cálculo en ingeniería

Document related concepts
no text concepts found
Transcript
GUÍA DOCENTE DE LA ASIGNATURA
1. DATOS IDENTIFICATIVOS DE LA ASIGNATURA
Universidad:
Título:
Departamento:
Nombre de la
asignatura:
Politécnica de
Madrid
Centro
E.T.S. de
Ingenieros
Navales
Uso de Python como herramienta de cálculo en ingeniería
ARQUITECTURA, CONSTRUCCIÓN Y SISTEMAS OCEÁNICOS Y
NAVALES (DACSON)
Uso de Python como herramienta de cálculo en ingeniería
Código
Créditos:
3
Ciclo:
Curso:
4º
Duración:
Tipo de asignatura
Profesores
responsables:
Francisco Pérez Arribas (coordinador)
Leo Miguel González
Amadeo Morán Guerrero
Lengua en que se
imparte la
asignatura:
Castellano
Tutorías: Horario:
Curso académico:
XX/ Viernes
10:30-12:30
Lugar:
Centro de
Cálculo
2015-2016
1 de 11
2. DESCRIPCIÓN GENERAL DE LA ASIGNATURA Y CONTEXTO EN EL QUE SE
DESARROLLA.
2.1 Descripción general de la asignatura:
Se introduce al alumno en el aprendizaje de las tecnologías de la
información, mediante el uso del lenguaje de programación Python. La
asignatura no se centra en los métodos de programación, sino más bien en
que el alumno disponga de herramientas para la resolución de cálculos
habituales en ingeniería. Para ello hace uso de módulos tales como: numpy,
symPy, matplotlib, sciPy…
2.2 Contexto en el que se desarrolla la asignatura:
Alumnos de últimos cursos de grado, que quieran completar su formación
con un lenguaje de programación como Python.
2.3 Conocimientos recomendados para el aprendizaje de la asignatura:
Informática; Algebra lineal y geometría; Cálculo I; Cálculo II; Calculo III;
Física I; Física II.
3. COMPETENCIAS Y RESULTADOS DE APRENDIZAJE.
3.2. Competencias generales UPM:
Competencia
CG3. Que los estudiantes alcancen la capacidad de
reunir e interpretar datos relevantes, (dentro del área
de la arquitectura Naval e Ingeniería marítima) para
emitir juicios que incluyan una reflexión sobre temas
relevantes de índole social, científica o ética.
CG4.
Que
los estudiantes puedan transmitir
información, ideas, problemas y soluciones a un público
tanto especializado como no especializado.
CG5. Que los estudiantes hayan desarrollado aquellas
Nivel de
competencia que
se alcanzará
2
2
2
2 de 11
habilidades de aprendizaje necesarias para emprender
estudios posteriores con un alto grado de autonomía
3.2. Competencias transversales UPM:
Competencia
CT4. Uso de las TIC
CT5. Creatividad
3.3. Competencias específicas:
Competencia
CE1.
Capacidad para la resolución de los problemas
matemáticos que puedan plantearse en la ingeniería.
Aptitud para aplicar los conocimientos sobre: álgebra
lineal; geometría ; geometría diferencial; cálculo
diferencial e integral; ecuaciones diferenciales y en
derivadas parciales; métodos numéricos; algorítmica
numérica; estadística y optimización
CE4. Conocimientos básicos sobre el uso y
programación de los ordenadores, sistemas operativos,
bases de datos y programas informáticos con aplicación
en la ingeniería
Nivel de
competencia que
se alcanzará
3
3
Nivel de
competencia que
se alcanzará
3
3
3.4. Objetivos del Grado en la asignatura:
OBJ1. Que los estudiantes alcancen la capacidad necesaria para realizar los
cálculos que se propongan durante su formación curricular de grado y master.
OBJ2. Que los estudiantes sepan resolver los problemas que se le puedan
plantear por medio de métodos existentes en Python
OBJ3. Que los estudiantes aprendan un lenguaje de programación muy
utilizado en el ámbito laboral.
OBJ4. Que los estudiantes mejoren su capacidad para comunicar un
determinado tema técnico.
OBJ5. Que los estudiantes tengan una actitud autodidacta y autocrítica.
3.5. Resultados de aprendizaje:
RA1. Conocer las herramientas disponibles en el centro para realizar los
trabajos que se realizarán en la asignatura.
RA2. Desarrollar aplicaciones que impliquen entrada y salida de datos estándar
así como manejo de archivos de datos.
3 de 11
RA3. Conocer de modo básico la estructura y funcionamiento del lenguaje de
programación Python.
RA4. Conocer los módulos de Python que sean útiles en la ingeniería.
RA5. Especificar de manera detallada un determinado problema de tal manera
que se pueda diseñar a partir de esa especificación un algoritmo que permita
resolver ese problema.
3.6. Indicadores de logro:
INDICADOR
IL1.
IL2.
IL3.
IL4.
IL5.
RESULTADOS DE
APRENDIZAJE
RA1
RA2
RA3
RA4
RA5
4 de 11
4. CONTENIDOS CURRICULARES.
4.1. Contenidos específicos (Temario)
TEMA / CAPÍTULO
LECCIÓN
1.
Herramientas
disponibles.
APARTADO
Enseñar a los estudiantes los medios
que tienen para acceder a Python.
Importar bibliotecas, tipos de
variables numéricas, operadores
básicos.
3. Diferencias Plantear unos ejemplos en los que los
entre Python y estudiantes observen las diferencias
Matlab
con Matlab.
Tema 1. Introducción
a Python
4.
Definiciones y operaciones
Trigonometría trigonométricas básicas.
Definiciones y operaciones con
5.Logaritmos
logaritmos
Definir array, matrix y lista. Conocer
6. Vectores y
la diferencia entre todos ellos.
Matrices
Operaciones básicas.
7. Sistemas de
Resolución de sistemas de ecuaciones
ecuaciones
lineales con Python.
lineales
Cálculo de derivadas con el módulo
1. Derivación
Sympy
Cálculo de integrales con el módulo
2. Integración
Sympy.
Tema 2. Sympy
3. Cálculo de Cálculo de límites con el módulo
límites
Sympy.
Realizar gráficas con el módulo
4. Gráficas 2-D
Sympy
1. Gráficas 2-D Realizar gráficas 2-D con matplotlib.
2. Estructura
de Python
INDICADORES
RA1 IL1
IL3 y IL2
IL1
IL1
IL1
IL1
IL1
RA4
IL4
IL4
IL4
RA4
2. Gráficas 3-D Realizar gráficas 3-D con matplotlib.
IL4
Usar complementos de matplotlib,
3.
como leyendas, ejes, limitar la zona
Complementos
de visualización
IL4
SCRIPT 1
Desarrollo de un SCRIPT detallado
planteado por el profesor.
RA5
SCRIPT 2
Desarrollo de un SCRIPT detallado
planteado por el alumno.
RA5
Tema 3. Matplotlib
NOTAS
RA - RESULTADOS DE APRENDIZAJE
5 de 11
5. METODOLOGÍA DE ENSEÑANZA-APRENDIZAJE
5.1. Metodología Docente:
Clases teorico-prácticas impartidas en el centro de cálculo de la ETSI
Navales.
Aprendizaje on-line a través de los videos didácticos de la asignatura.
5.2. Actividades de aprendizaje y volumen de trabajo
ACTIVIDADES DE TRABAJO PRESENCIAL: 8 HORAS
ACTIVIDAD
DESCRIPCIÓN
HORAS
CLASE
PRESENCIAL
Se impartirán 4 horas de clase, para que el alumno
entre en contacto con Python. Además de explicar
el método de evaluación
4
CLASES
ONLINE
-La práctica totalidad del curso se realizará
mediante la visualización de unos videos tutoriales
realizados por el profesor.
4
EVALUACIÓN
POR CURSO
El método de evaluación será la entrega de un
Script y un Vídeo tutorial de un trabajo original.
ACTIVIDADES DE TRABAJO AUTÓNOMO: 22 HORAS
ACTIVIDADES
SCRIPT
SCRIPT 2
DESCRIPCIÓN
El alumno desarrollara un notebook dentro de
Python en el que resolverá algún ejercicio original
propuesto por el alumno y validado por el profesor.
El alumno desarrollara un notebook dentro de
Python en el que resolverá algún ejercicio propuesto
por el profesor.
HORAS
12
10
6 de 11
5.3. Cronograma de la asignatura
Semana
1
2
Tema
Presentación de la asignatura.
Duración 00:30
Tema 1: Introducción a Python
Duración 1:30
Tema 2: Módulo sympy
Duración 1:00
Tema 3: Matplotlib
Duración 1:00
ET
EP
Horas
2
1
3
2
3
5
7
Entrega del Script 1
0
8
8
14
Entrega del Script 2
0
8
8
7 de 11
4. Calendario de docencia
Materia
Semana
Clases
Horas
Tipo
TEMA 1
1
1
2
P
TEMA 2 y 3
2
1
2
P
Tema
Presentación de la asignatura.
Duración 00:30
Tema 1: Introducción a Python
Duración 1:30
Tema 2: Módulo sympy
Duración 1:00
Tema 3: Matplotlib
Duración 1:00
ET
EP
Horas
2
1
3
2
3
5
8 de 11
5.5. Carga semanal del alumno
La asignatura “Python en ingeniería” es una asignatura de 3 créditos ECTS,
luego el número total de horas de trabajo del alumno asciende a 30 horas,
distribuidas en 4 horas de trabajo presencial y 26 horas de trabajo autónomo
fuera del aula, a lo largo de 15/16 semanas de curso.
Semana
Trabajo
Presencial
Trabajo
Autónomo
Trabajo Total
1
2
1
3
2
2
3
5
3
0
2
2
4
0
2
2
5
0
2
2
6
0
2
2
7
0
2
2
8
0
2
2
9
0
2
2
10
0
2
2
11
0
2
2
12
0
2
2
13
0
1
1
14
0
1
1
15
0
0
0
16
0
0
0
TOTAL
4
26
30
9 de 11
6. SISTEMA DE EVALUACIÓN Y DE CALIFICACIÓN
6.1. Criterios de evaluación y calificación
1) Evaluación por curso de la asignatura.
Se realizarán dos SCRIPTS (Uno propuesto por el profesor y otro por el
alumno) y entre los 2 sumaran el 100% de la nota. Cada uno de estos
ejercicios valdrá un 50% de la nota.
2) Convocatoria ordinaria:
Se realizarán dos SCRIPTS (Uno propuesto por el profesor y otro por el
alumno) y entre los 2 sumaran el 100% de la nota.
3) Convocatoria extraordinaria:
Se realizarán dos SCRIPTS (Uno propuesto por el profesor y otro por el
alumno) y entre los 2 sumaran el 100% de la nota.
7. RECURSOS DE ENSEÑANZA Y APRENDIZAJE
7.1. Bibliografía:
Guzdial, M. (2010) “Why is it so hard to learn to program?”. Editors, In Andy
Oram and Greg Wilson.
Mannilla, L. et al. (2006) “What about a simple language? Analyzing the
difficulties in learning to program, “ Computer Science Education, vol. 16(3):
211-227
Jeff Elkner and Chris Meyers (2002) “How to think like a computer scientist.
Learning with Python,” Allen Downey, Green Tea press // Free book.
Mark Lutz “Learning Python: Powerful Object-Oriented Programming”: 5th
Edition
7.2. Recursos y otros materiales de apoyo
10 de 11
Plataforma Moodle de la UPM:
https://moodle.upm.es/titulaciones/oficiales/login/login.php
http://canal.etsin.upm.es/iepython/
https://www.enthought.com/
http://lorenabarba.com/blog/announcing-aeropython/
http://lorenabarba.com/figshare/aeropython/
11 de 11