Curso Introductorio de MatLab

Slides:



Advertisements
Presentaciones similares
Algoritmos y Programas
Advertisements

Excel.
Estrella 0 - Fundamentos de la Programación
Nuestro reto es educar al pensamiento, para que razone de acuerdo a ciertas reglas; con ello podremos ser más eficientes al momento en que ordenamos.
PROF. ING. JULIO CESAR CANO RAMIREZ
Clase 2 Tipos de datos Asignación de valores Estructura IF Ejercicios
Unidad 1 DISEÑO DE ALGORITMOS ING. Nelwi Baez. MSC
Lenguajes de programación
Resolución de Problemas Algoritmos y Programación
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
Técnico en programación de Software
Unidad 2 Algoritmos y resolución de problemas
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
FUNDAMENTOS DE MATLAB MATrix LABoratory.
Programación 1 Introducción
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
3. INTRODUCCIÓN A LA PROGRAMACIÓN
METODOLOGIA DE LA PROGRAMACION
Tema 6. Conceptos básicos de programación
Al término de la clase, el alumno reconoce las ventajas de usar JAVASCRIPT para un proyecto web.
Álgebra elemental.
ESTRUCTURAS DE CONTROL
Fundamentos de Programación
INTRODUCIÓN A MICROSOFT EXCEL 2007
ALGORITMOS.
QUE ES :Microsoft, windows, Excel
Programación en Matlab
CARACTERÍSTICAS DE LOS PROGRAMAS
COMPUTACIÓN APLICADA FACULTAD DE INGENIERÍA, UAQ Tablas Dinámicas, Macros Ma. Teresa García Ramírez.
DR. ERNESTO SUAREZ.
Introducción al análisis de algoritmos
INFOMATICA EMPRESARIAL
Computación Aplicada Facultad de Ingeniería Universidad Autónoma de Querétaro Ma. Teresa García Ramírez 1.
Tema 6. Conceptos básicos de programación (Repaso) Prof. María Alejandra Quintero Informática Año 2013.
Diseño de algoritmos La computadora puede realizar procesos y darnos resultados, sin que tengamos la noción exacta de las operaciones que realiza. Con.
Técnico Superior en Administración. PROCESADOR DE TEXTOS Software que posibilita la creación o modificación de documentos escritos por medio de una computadora.
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
FORMULAS ESTADISTICAS.
Estructuras de Control.
Introducción a la Ingeniería de Sistemas
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
ALGORITMOS La palabra algoritmo se deriva de la traducción al latín de la palabra árabe alkhowarizmi, nombre de un matemático y astrónomo árabe que escribió.
Optimización para Ingenieros
Microsoft Office Excel 2007
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
Ecuaciones Algebraicas
Términos algoritmo diseñar algoritmo implementar algoritmo
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
Suma+ Resta- Multiplicación* División/ Paréntesis( ) Exponentes^ Es necesario aclarar que todas las ecuaciones comienzan con signo de igualdad =
ALGORITMO QUE ES ??.
PRINCIPIOS DE PROGRAMACIÓN
Elaboración de algoritmos usando lógica de programación
Presente un cuestionario con los aspectos mas importantes sobre los
Hoja de Cálculo EXCEL Introducción a la informática
Profesora: Angela Maiz
Lic. Carla Aguirre Montalvo
* Cuando nos permite desarrollar un programa que necesitamos para tomar un conjunto de buenas prácticas para hacer eso. Esto se debe a que podemos ahorrar.
ACTIVIDADES FECHA: JULIO 6 AL 10 TEMA: FORMULAS Y FUNCIONES BÁSICAS EN LA HOJA DE CALCULO EXCEL PROPÓSITO: IDENTIFICAR LAS FORMULAS Y FUNCIONES BÁSICAS.
A continuación podrás conocer y llevar a cabo las operaciones propias de Formatos y Aspecto del Texto en CALC. Haz click en el botón destacado.
Grupo de Modelamiento de Sistemas Programa de Ingeniería Civil UdeA.
PROGRAMACIÓN Grupo de Modelamiento de Sistemas
Grupo de Modelamiento de Sistemas Programa de Ingeniería Civil UdeA.
ALGEBRA CON VECTORES Y MATRICES Uso de MatLab.
Fuentes consultadas Fuentes consultadas Medios de Transmisión Medios de Transmisión Actividades de aprendizaje Actividades de aprendizaje Propósito Introducción.
 Excel es un programa de aplicaciones que modifica tus habilidades para grabar datos y luego extraer resultados de la misma.  Con Excel puede ingresar.
Tema 8: Programación estructurada Introducción La importancia del conocimiento de programación es mucho mayor de lo que se piensa. Aprender a programar.
ESTRUCTURAS SELECTIVAS Elaborado por; Ing. Alberto Pérez.
Curso de Excel Básico Sesión 1 1. Microsoft Excel es un programa utilizado para la creación, manejo y almacenamiento de hojas de cálculo. Permite realizar.
ALGORITMOS Asignatura: Informática. Algoritmos Conjunto de instrucciones ordenadas de forma lógica y precisa, con un inicio y fin que permite resolver.
Transcripción de la presentación:

Curso Introductorio de MatLab Nelio Pastor Gómez

Sistemas de Cómputo Software Hardware Elementos físicos que constituyen una computadora. Dispositivos de entrada. Dispositivos de salida. Unidad Central de Procesamiento Unidad Principal Almacenamiento Unidad Secundaria de Almacenamiento Software Conjuto de programas diseñados para operar una computadora. Software de Sistema. Software de Aplicaciones. Programa: Conjunto de instrucciones que hacen funcional una computadora.

Lenguajes de Programación Lenguaje de máquina. Instrucciones directas para la computadora se expresan en la unidad mas pequeña (bit 1 ó 0). Lenguaje ensamblador. Conocido también como lenguaje de bajo nivel. Simplifican el proceso de programación en lenguaje máquina Las instrucciones se escriben en códigos alfabéticos conocidos como nemotécnicos. Lenguaje de alto nivel. Las instrucciones se escriben con palabras similares a los lenguajes humanos (generalmente en ingles).

Resolución de Problemas por Computadora Análisis del problema.-Se da una clara definición del problema, donde se contemple exactamente lo que debe hacer el programa y el resultado o solución deseada. Diseño del Algoritmo.- Aquí se determina como hara el programa la tarea solicitada. El diseño se realiza aplicando el principio de modularidad. Codificación.- Es la escritura en lenguaje de programación de la representación del algoritmo diseñado. Compilación y ejecución.- Una vez que se ha codificado el algoritmo se introduce en memoria y se almacena en disco. Esta operación se realiza con un programa editor. El programa fuente es traducido a lenguaje de máquina mediante un compilador

Introducción a MatLab Para visualizar MatLab podemos pensar en el como si fuera una calculadora totalmente equipada. Al igual que una calculadora básica puede realizar matemáticas simples tales como: sumas, restas, divisiones y multiplicaciones. Al igualque una calculadora científica, puede ralizar operaciones con números complejos, raices cuadradas, logaritmos y operaciones trigonométricas. Análogamente a una calculadora programamble puede almacenar y recuperar datos, puede crear, ejecutar y guardar secuencias de órdenes para automatizar el cálculo de ecuaciones importantes; puede hacer comparaciones 1ógicas y controlar el orden en el que se ejecutan las órdenes. permite representar gráficamente los datos en una gran variedad de formas. ejecuta álgebra matricial, manipula polinomios, integra funciones, manipula simbólicamente ecuaciones, etc.

Características Básicas Al ejecutarse, MATLAB crea una o más ventanas La cadena de caracteres >> es el indicativo de petición de órdenes de MATLAB

¿ cuántas piezas de fruta ha comprado y cuánto gastó? Ejemplo.- Homero compra 4 manzanas por 25 centavos cada una, 6 plátanos por 22 centavos cada uno y 2 melones por- 99 centavos cada uno. Cuando llega a casa, Marga le pregunta ¿ cuántas piezas de fruta ha comprado y cuánto gastó? Si la sentencia es demasiado larga para que quepa en una línea, se le agrega una elipsis; una elipsis consistente en tres puntos seguido por Enter e indica que la sentencia continúa en la línea siguiente.

Operación Símbolo Ejemplo Operaciones básicas Operación Símbolo Ejemplo Suma, a+b + 5+3 Resta, a-b - 5-3 Multiplicación, a*b * 5*3 División, a/b / 5/3 Potencia ^ 5^3 Las expresiones se evalúan de izquierda a derecha. El orden de precedencia, es el siguiente: 1.- Potencia. 2.- Multiplicación y División. 3.- Suma y Resta.

Almacenando y recuperando datos. MatLab puede guardar y recuperar datos almacenados en discos. Para esto se usan las opciones Load Workspace ó Save Workspace.

Acerca de las Variables Las Variables son sensibles a las mayúsculas.- fruta, Fruta, FruTa, FRUTA Las Variables pueden contener hasta 19 caracteres.- Mas allá de 19 se ignoran Las variables deben comenzar con una letra seguida por cualquier número de letras, digitos ó guiones de subrayado r1234_ algo Los caracteres de puntuación no son válidos.

¡clear no pide confirmacion de orden! ¡Las Variables no se pueden recuperar! La ínstrucción clear borra las varibles del espacio de trabajo. Si se teclea seguido de un nombre de variable; simplemente borra esa variable. Si se teclea sin ningun nombre de variable borra todas las variables del espacio de trabajo.

Características Científicas Al igual que las calculadoras científicas, MatLab ofrece muchas funciones cumunes a las matemáticas, a la Ingeniería y a las ciencias. La mayoria de estas funciones se utilizan de igual forma en que se escriben matemáticamente. En este ejemplo se calcula el ángulo de donde la función Seno tiene un valor de: Mientras que una calculadora puede trabajar en grados o radianes MatLab sólo opera en radianes, donde 2p es igual a 360 grados. La orden help es la forma más simple de conseguir ayuda en MatLab Podemos escribir help seguido del tema que deseamos investigar ó bien una ayuda más general en caso de solo teclear help.

Características de Graficación de MatLab: Se utiliza el comando plot(arg) y como argumento la funcion que se desea graficar. Array simples.- Para crear un array todo lo que tiene que hacer es iniciar con un corchete de apertura, introducir los valores separados por espacios o comas y luego cerrar con un corchete de cierre.

Construcción de Arreglos y Matemática sencilla Los argumentos de esta función se describen mediante: linspace(valor inicial, valor final, num. de elementos) Las operaciones matemáticas sencillas entre escalares y arreglos siguen la misma interpretacion natural. La suma, resta multiplicación y división por un escalar simplemente aplica la operación a todos los elementos del arreglo.

Separar elementos por puntos y comas especifíca elementos en filas diferentes. El operador transpuesta de MatLab es: ‘ Este operador intercambia los renglos y las columnas. La orden plot genera una gráfica: plot(variable_independiente, varible dependiente, ‘puntos’)

Archivos script MatLAb responde a cualquier instrucción en el orden en que esta se le indique. Para problemas simples, introducir las instrucciones en la línea de ordenes de MatLab es rápido. Sin embargo cuando aumenta el número de ordenes o se desea cambiar el valor de una ó más varianbles y reevaluar una serie de ordenes, escribir todo en la linea de ordenes de MAtLAb puede resultar tedioso. MatLab Proporciona una solución para este problema. Permite colocar ódenes de Matlab en un archivo de texto El contenido de este archivo se evalúa como si se hubiera escrito en la linea de ordenes de MatLab. Estos archivos se conocen como scripts o archivos M.

Creación de archivos M Para crear un archivo M escoja New del del Menu File. Y seleccione M-file.

Guardando el script Para guardar el script en disco se elije Save en el menú File. Guardando el script

Ejecutando un script Una vez que este script esta guardado en disco como un archivo M . MatLab ejecutará las ordenes contenidas en este archivo simplemente escribiendo el nombre de este archivo Note que ejemplo no es una variable en el espacio de trabajo de MatLab MatLab abre el archivo, si lo encuentra, y ejecuta las instrucciones en el orden en que esten escritas. Una cadena de caracteres es un texto delimitado por comillas simples (‘)

Tomando Decisiones: Controles de Flujo Los Lenguajes de programación ofrecen características que permiten controlar el flujo de ejecución de ordenes basadas en estructuras de toma de decisiones. El control de flujo es muy poderoso ya que permite que cálculosa pasados influyan sobre operaciones futuras. MatLab ofrece tres estructuras para la toma de decisiones o de control de flujo, y son: bucles for, bucles while y estructuras if-else- end. Bucles for .- La sentencia 1:n es una sentencia de creación de vectores. Cualquier vector válido en MatLab es válido en el ciclo for n? t=1 hasta n x(t)=sin(t*2pi/n) plot(x) grid on agrega titulos %otra forma de escribir el ciclo for vector=[1 2 3 4 5 6 7 8 9 10]; for t=vector, x(t)=sin(t*2*pi/10; end Fin del programa

Anidamiento de Bucles vec1=linspace(1,5,5) vec2=linspace(5,1,5) n=vec1 m=vec2 A(n,m)=n^2+m^2 disp(n) Fin del programa

Ciclos while Mientras un bucle for evalúa un grupo de órdenes un número fijo de veces, un bucle while evalúa un grupo de órdenes un número idefinido de veces. El formato general para el ciclo while es: while expresión, sentencias; end num=0 F Mientras num<20 V num=num+1 Mientras t<=num F V x(t)=sin(t*2pi/n) Graficar(x) crea la rejilla agrega titulos Fin del programa

Ciclos for, while variable=expresión Expresión for var=expresión, En la practica el formato es: variable=val_ini:incremento:val_fin Expresión Usualmente de la forma: variable1 operador variable2 expresión F for var=expresión, while expresión, : sentencias; Operadores: Relacion Lógicos == & < | > ~ =< => ~= : sentencias; V sentencias end Fin del ciclo end

Estructura if-else-end Muchas veces, secuencias de ordenes deben evaluarse condicionalmente básandose en un test relacional. En MatLab esta lógica se proporciona por alguna variación de una estructura if-else-end: Precio=$0.25 Cuantas manzanas? Costo=manzanas*0.25 Manzanas>5? no si Aplica un 5% de desc. Aplica un 20% de desc. Las sentencias entre el if y el else se ejecutan si la expresión es verdadera. En otro caso se ejecutan las que estan entre el else y el end Despliega el costo total

evalua la funcion en los a,b? Anidamiento de la estructura IF-ELSE Graficar la funcion evalua la funcion en los limites a y b. Verifica los signos de la funcion en a y en b Son f(a)y f(b) del mismosigno? no f(a)=0? no si si f(b)=0? no Raíz en a si Raíz en b No hay raices Hay una raiz al menos Fin

Resumen Un bucle for en cada iteración asigna x a la columna i-ésima de array y ejecuta las sentencias. for x=array sentencias end sentencias Un bucle while ejecuta las sentencias mientras todos los elementos de Expresión son verdaderos. while expresión sentencias end while f v sentencias end if expresión sentencias end Una estructura simple if-end donde las sentencias se ejecutan si todos los elementos en expresión son verdaderos. no expresión si sentencias expresion no Una estructura if-else-end tiene dos opciones. El grupo de ordenes1 se ejecuta si expresión es verdadera. En otro caso se ejecutan sentencia2. If expresión sentecias1 else sentencias2 end si sentencias1 sentecias2 fin

a,b,f Diagrama a bloques del programa para la búsqueda de raices usando el método de las bisecciones sa=signo(f(a) sb=signo(fb) no sa~=sb si f(m)>=0.01 f(m) sm=signo de f(m) Despliega la raíz No hay raices entre a y b sm==sa no fin si sa=sm a=m Sb=sm b=m

Manejo de Matrices Ejemplo: Historicamente, MatLab fue escrito para simplificar los cálculos de álgebra líneal que aparecen en muchas aplicaciones. En el corazón de muchas aplicaciones está el problema de resolver un conjunto de ecuaciones lineales. Manejo de Matrices Ejemplo: Homero compra una manzana, dos plátanos, y tres melones y paga $3.66. Marga compra cuatro manzanas, cinco platanos y seis melones y paga $8.04 A Bart no le gustan los melones así que compra siete manzanas, ocho platanos y ningún melón y paga $3.51. ¿Cual es el precio individual de cada fruta? Al igual que en la captura de vectores se utilizan los corchetes rectangulares para capturar matrices. El punto y coma (;) se utiliza para delimitar los renglones de la matriz. Al igual que la función para cálcular el rango deuna matriz. MatLab integra la funcion para calcular el Determinante de una Matriz: por ejemplo: det(A) Para resolver este problema, se escribe cada sentencia como una ecuación matemática. Haciendo x1 precio por manzana, x2 el precio por plátano y x3 el precio por melón

Manipulación Matricial Una vez que se forman las matrices, MatLab proporciona mecanismos poderosos para insertar, extraer y manipular subconjuntos de ellas identificando los subíndices de interés. Considere los siguientes ejemplos: Cambia a nueve el elemento en la tercera fila y en la tercer columna Crea una matriz uniendo la matriz A con el vector b Despliega la segunda columna de la matriz A Despliega el segundo renglón de la matriz A Aquí los dos puntos como argumento significa tomar todos los elementos de la columna ó del renglon según corresponda. Cuando se asigna a una parte de una matriz la matriz vacia, lo asignado se suprime, originando que la matriz colapse a lo que permanece

En aquellos casos donde se desconoce el tamaño de una matriz o vector, MatLab proporciona dos funciones de utilidad size y length. Las variables del lado izquierdo de la expresión se conocen como argumentos de salida. Las variables ó constantes entre parentesis del lado derecho de una función ó comando se conocen como argumentos de entrada.

Consistencia de Ecuaciones y Existencia de Soluciones El primer paso en la solución de Ecuaciones lineales es formar La Matriz aumentada. Como Primer paso declaramos la matriz de coeficientes A a continuación declaramos el vector de terminos independientes Para generar la matriz aumentada se une la matriz de coeficientes y el vector de terminos independientes como se muestra en el ejemplo

Existencia de Soluciones Existe solución por que la matriz de coeficientes es no singular La solución es única por que los rangos de A y A’ son iguales Ejercicio: Realizar el Script en archivo .m que relize las operaciones anteriores.

Algorítmo de la Eliminación Gaussiana La eliminación Gaussiana se realiza a través de de una serie de operaciones elementales las cuales no alteran la solución del sistema de acuaciones. El método esta basado en el principio de convertir el conjunto de n ecuaciones con n incognitas en una forma triangular superior, cuya solución es la misma del sistema original de ecuaciones. Donde U es la matriz triangular superior Una vez lograda la triangularización, la solución se lleva a cabo mediante la sustitución hacia atrás iniciando con la n-esima variable y terminando con la variable 1. En general el procedimiento de la eliminación de Gauss aplicada a la matriz aumentada de nx(n+1) se resume en tres formulaciones matemáticas; Inicialización, Eliminación y Sustitución hacia atrás. De esta forma, tenemos tres formulas matemáticas para programar: Formula de Inicialización: Con j=1,2,...,n i=1,2,...,n j=n+1

Formula de eliminación: j=n+1, n, ... , k ; ; k=1,2,...,n-1 i=k+1,k+2,...,n Formula de sustitucion hacia atrás: i=n-1,n-2,...,1

Algoritmo de interpolación Utilizando polinomios de Newton (c,d)=inewton(x,y) A n=length(x) d=zeros(n,n) d(:,1)=Y’ k (n-1):-1:1 c=conv(c,poly(x(k)) m=length(c) c(m)=c(m)+d(k,k) j 2:n k j:n fin Algoritmo de interpolación Utilizando polinomios de Newton c=d(n,n) La forma para llamar la función es: (c)=inewton(x,y); donde X es el vector de valores para X e Y son los correspondientes valores de f(x). A

[c,L]=lagrange(x,y) Cálculo de los coeficientes del polinomio de interpolacion de Lagrange. n1=length(x) n=n1-1 L=zeros(n1,n1) Se deben definir primeramente los vectores X,Y; como se muestra a continuación: k 1:n+1 v=1 j 1:n+1 k~=j no si La figura Muestra la definición de los vectores de entrada y la sintaxis para ejecutar la función. L(k,:)=v Los valores de los coeficientes del polinomio se guardan en la variable ‘c’ y están formados en orden descendente de las potencias del polinomio. c=y*L fin

Integración Numérica Regla de Simpson con corrección final k 2:2:n-2

Cómo crear un nuevo documento. Seleccionamos New en el menu File.. En Shell Directories selec. General En Shell Files Selec. Blank Document

Para alternar la escritura entre texto y expresiones matematicas se puede presionar la combinación de teclas Ctrl+M o bien el boton de T (M) en la barra de botones. Para evaluar una expresion matemática utilizamos las opciones del menú Maple

Esta opción nos permite insertar matrices y vectores Ejercicio.- Crear un vector columna y un vector renglón, de por lo menos 4 elementos.

Solución de problemas de Programación Lineal. (caso de dos variables). Como introducir los datos Se crea un vector de tamaño n+1, con n igual al número de Ecs. de restricción. En primer elemento del vector será la función objetivo, la cual se escribirá sin incluir la igualdad. Los elementos subsiguientes serán las ecuaciones de restricción escritas completamente. Para encontrar la solucion Se ubica el cursor en la posición inmediata a la derecha del vector de datos. En el menú Maple seleccionamos el submenú Simplex. Dentro de este menú se elige la opción que resuelva cada caso particular.

Para graficar las ecuaciones de restricciones ubicamos en la posición inmediata a la derecha de una de las ecuaciones que deseamos graficar; En el Menu Maple seleccionamos Plot 2D, dentro de este submenú elegimos implicit.

Para agregar las demás ecs. Hacemos un click en el recuadro inferior derecho dela gráfica. Se despliega el menú de propiedades, donde damos un click en el boton de agregar elemento. Dentro de esta ventana de dialogo podemos realizar varias operaciones de configuración de la gráfica, por ejemplo, definir el dominio de las variables que se están graficando.

Evaluación Hacer un script que resuelva la ecuación de segundo orden de la forma Cuya solución es: El programa deberá pedir los datos correspondientes a las variables a,b y c y calcular el valor de x