MODULO SCIPY ( OPERACIONES MATEMATICAS) Parte II APLICACIÓN: Debido a que Scipy es una biblioteca de funciones matemáticas, tiene una gran aplicación en el campo de la ingeniería. Existen diferentes aplicaciones para este módulo, ya que algunas de sus funciones son: Integrales, problemas de optimización, álgebra lineal e interpolación de funciones especiales. También posee funciones estadísticas. Scipy es de gran utilidad en muchos cursos, sobretodo en el curso de Modelos Matemáticos. Esto es muy importante, pues Modelos Matemáticos es un curso que se puede aplicar a todas las carreras que se llevan a cabo en la Universidad del Valle. Scipy puede ser aplicado a estudios relacionados con desarrollo, crecimiento poblacional, optimización de recursos etc. Al poseer funciones estadísticas, Scipy puede ayudar al ingeniero en muchas otras cosas. Todo esto hace de Scipy un gran aliado del estudiante y del profesional en su desempeño diario. Recursos para aprender a utilizarlo (pags web, tutoriales para conocer la funcionalidad, indicar cuál se recomienda principalmente) http://docenciaeupt.unizar.es/ctmedra/scipy_tutorial/scipy_tutori al.html#SECTION00210000000000000000 http://www.scipy.org/ http://www.denebola.org/?tag=scipy http://tools.assembla.com/svn/homedevel/presents/numsci.pdf Langtangen, H. 2004. Python Scripting for Computational Science. Tercera edición. Editorial Springer. 728 pp. Página consultada 179 Hugo Pivaran, apoyo al momento de hacer las integrales en graficas. INSTRUCCIONES DE INSTALACIÓN: Para poder utilizar Scipy en su ordenador, primero que nada, deberá de instalar python, el cual lo puede obtener gratuitamente desde la página: http://www.python.org/download/ Al tener Python instalado, deberá de instalar Numpy, que es un paquete con muchas funciones; puede descargarlo aquí: http://sourceforge.net/projects/numpy/files/ Luego de tener Numpy instalado… ¡Es el momento de instalar Scipy! Lo puedes descargar en la siguiente dirección: http://sourceforge.net/projects/scipy/files/ Si se desea ampliar el rango de funciones de Scipy, puede leer la siguiente página: http://nipy.sourceforge.net/nipy/devel/install/windows_scipy_build.html Funcionalidad principal (lista de las principales funciones, o métodos, un ejemplo para cada una dando parámetros y resultados): Como SciPy es un módulo de Python para cómputo científico, depende de NumPy. La librería de SciPy incluye un buen número de métodos numéricos para la solución de una amplia gama de problemas. SciPy funciona en la mayoría de los sistemas operativos, es fácil de instalar y gratis. GLOSARIO: 1.- Módulo: Minicódigos (la mayoría escritos también en Python) que llaman a los recursos del sistema. Un ejemplo es el módulo Tkinter, que permite crear interfaces gráficas que incluyan botones, cajas de texto, y muchas cosas que vemos habitualmente en el sistema operativo. Los módulos se agregan a los códigos escribiendo import seguida del nombre del módulo que queramos usar. 2.- NumPy:NumPy es una extensión del lenguaje de programación Python, añadiendo soporte para grandesmatrices, junto con una gran biblioteca de funciones de alto nivel matemático para funcionar en estas matrices. 3.- Optimización: el proceso de encontrar los mínimos y máximos de una función. 4.- Integración: es un concepto fundamental de las matemáticas avanzadas, especialmente en los campos del cálculo y del análisis matemático. Básicamente, una integral es una suma de infinitos sumandos, infinitamente pequeños. 5.- Interpolación: en el sub-campo matemático del análisis numérico, se denomina interpolación a la construcción de nuevos puntos partiendo del conocimiento de un conjunto discreto de puntos. 6.- Matrices: en matemáticas, una matriz es una tabla de números consistente en cantidades abstractas que pueden sumarse y multiplicarse. Las matrices se utilizan para describir sistema de ecuaciones lineales, realizar un seguimiento de los coeficientes de una aplicación lineal y registrar los datos que dependen de varios parámetros. Provee las siguientes funcionalidades: - Rutinas para Transformadas de Fourier (usando fftpack) - Rutinas de integración numérica - Rutinas de interpolación - Rutinas de álgebra lineal (con un módulo especializado en matrices dispersas) - Rutinas para clusters (cuantización y kmeans) - Rutinas para manipulación de imágenes (n-dimensionales) - Rutinas de optimización - Rutinas para procesamiento de señales - Rutinas para estadística Sub módulos en español Nombre/ejemplo racimo: Quantization/Kmeans del vector fftpack: Fourier discreto transforma algoritmos integre: Rutinas de la integración interpole: Herramientas de la interpolación io: Entrada y salida de datos lib: Envolturas del Python a las bibliotecas externas linalg: Rutinas lineares de la álgebra misceláneo: Utilidades misceláneas optimice: Herramientas de optimización sandbox: Código experimental señal: Herramientas del proceso de señal escaso: Ayuda de matriz escasa especial: Funciones especiales stats: Funciones estadísticas armadura: Permite la inclusión de C/C++ dentro del código del Python Sub módulos en inglés Nombre/ejemplo cluster: Clustering algorithms Constants: Physical and mathematical constants fftpack: Fast Fourier Transform routines integrate: Integration and ordinary differential equation solvers interpolate: Interpolation and smoothing splines io: Input and Output linalg: Linear algebra maxentropy: Maximum entropy methods ndimage: N-dimensional image processing odr: Orthogonal distance regression optimize: Optimization and root-finding routines signal: Signal processing sparse Sparse: matrices and associated routines Spatial: Spatial data structures and algorithms Special: Special functions Stats: Statistical distributions and functions Weave: C/C++ integration importación del módulo >>> import numpy as np >>> import scipy as sp >>> import matplotlib as mpl >>> import matplotlib.pyplot as plt Para importar los modulos, se deben llamar por separado; de la siguiente manera: >>> from scipy import linalg, optimize Argumentos: como es de esperar, los argumentos de tipos simples se pasan por valor. Así mismo, los nombres de las variables locales declaradas dentro de la función, sólo son visibles dentro de ella, y lo mismo cabe decir de los nombres de los argumentos. Las variables locales del mismo nombre, ocultan a las globales. Aplicación del módulo (en qué se utiliza, trabajos que se pueden hacer con el módulo) (dar una idea general de en qué se podría utilizar el módulo) El módulo tiene gran aplicación debido a que es una biblioteca de funciones matemáticas. Existen diferentes aplicaciones para SciPy, entre las funciones más sencillas a utilizar están la integración y la optimización. Se podría utilizar para cursos más avanzados, como Álgebra Lineal, Ecuaciones diferenciales. También es una introducción a un taller a llevar, para todos los ingenieros, que se llama “mathcad”. Mathcad con python pueden llegar a interrelacionarse.