fundamentos de matlab

7
UNIVERSIDAD CENTRAL DE VENEZUELA FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA ELÉCTRICA DEPARTAMENTO DE ELECTRÓNICA, COMPUTACIÓN Y CONTROL CALCULO NUMERICO Profesores: Dan El Montoya, Gilberto Noguera PRIMERA PRACTICA: FUNDAMENTOS DE MATLAB . OBJETIVOS Introducir al estudiante en el manejo de herramientas básicas de MATLAB. Emplear funciones aritméticas y lógicas con herramientas proporcionadas por el MATLAB. Generar archivos .m. ACTIVIDADES Corra el programa MATLAB. En el ambiente de trabajo que presenta el MATLAB escriba cada una de las siguientes instrucciones: r=2 vol=(4/3)*pi*r^3 Repita el ejercicio anterior con r=5 y colocando al final de cada instrucción punto y coma. Escriba en el ambiente de trabajo del MATLAB las siguientes instrucciones y determine que ejecuta cada comando en cuestión: who whos Ahora escriba en el MATLAB lo mostrado a continuación: vol ¿Qué se observa? A continuación escriba el conjunto de instrucciones presentadas, de esta manera se puede observar como se emplean los operadores suma, resta, multiplicación y división, 3 + 4 - 5/8 + 2*7 Ahora escriba en el |MATLAB las siguientes instrucciones:

Upload: brayan-quijada

Post on 04-Dec-2015

215 views

Category:

Documents


2 download

DESCRIPTION

dosis libre para entendimiento del software

TRANSCRIPT

Page 1: Fundamentos de Matlab

UNIVERSIDAD CENTRAL DE VENEZUELAFACULTAD DE INGENIERÍAESCUELA DE INGENIERÍA ELÉCTRICADEPARTAMENTO DE ELECTRÓNICA, COMPUTACIÓN Y CONTROLCALCULO NUMERICOProfesores: Dan El Montoya, Gilberto Noguera

PRIMERA PRACTICA: FUNDAMENTOS DE MATLAB .

OBJETIVOS

Introducir al estudiante en el manejo de herramientas básicas de MATLAB. Emplear funciones aritméticas y lógicas con herramientas proporcionadas por el MATLAB. Generar archivos .m.

ACTIVIDADES

Corra el programa MATLAB. En el ambiente de trabajo que presenta el MATLAB escriba cada una de las siguientes instrucciones:

r=2vol=(4/3)*pi*r^3

Repita el ejercicio anterior con r=5 y colocando al final de cada instrucción punto y coma. Escriba en el ambiente de trabajo del MATLAB las siguientes instrucciones y determine que ejecuta

cada comando en cuestión:

who whos

Ahora escriba en el MATLAB lo mostrado a continuación:

vol

¿Qué se observa? A continuación escriba el conjunto de instrucciones presentadas, de esta manera se puede observar

como se emplean los operadores suma, resta, multiplicación y división,

3 + 4 - 5/8 + 2*7

Ahora escriba en el |MATLAB las siguientes instrucciones:

r1=2;r2=1;vol=(4/3)*pi*(r1^3 - r2^3)

A continuación comenzaremos a emplear operaciones lógicas, el primer operador a emplear es el if (el if es empleado para establecer una condición y siempre es culminado con un end), escriba en el ambiente de trabajo de MATLAB la siguiente instrucción:

r=2;if r>0, vol=(4/3)*pi*r^3end

Obsérvese que al escribir el guión anterior la indicación > no aparece sino hasta después de teclearse end. Si el enunciado requiere un igual después del if se emplea ==, es decir:

Page 2: Fundamentos de Matlab

r=2;if r==2, vol=(4/3)*pi*r^3end

El operador diferente de (se escribe ~=), escriba en el ambiente de trabajo del MATLAB:

r=5if r ~= 4, vol=(4/3)*pi*r^3end

A continuación se presenta una lista de otros operadores lógicos que se emplean de forma análoga a los utilizados anteriormente:

Operador Significado 1. < Menor estricto que 2. > Mayor estricto que

3. >= Mayor o igual que 4. <= Menor o igual que

5. and(A,B) Si ocurre A y B 6. A & B Si ocurre A y B 7. or(A,B) Si ocurre A o B 8. A | B Si ocurre A o B

Se puede observar como el operador Nro. 5. y 6. respectivamente son equivalentes en cuanto a su empleo en el lenguaje de programación, es decir, su significado es el mismo, de igual forma ocurre con los operadores 7 y 8.

Ejecute en el MATLAB las siguientes instrucciones:

A=1; b=2; c=123; d=14; e=15;whosclear A cwhos

¿Qué observa? Ahora ejecute en el MATLAB las siguientes instrucciones:

whosclear whos

¿Qué se observa? Ahora comenzaremos a ejecutar ciclos o subrutinas, escriba en el ambiente de trabajo del MATLAB los

siguientes comandos:

for r=1:5 vol=(4/3)*pi*r^3;

disp([r,vol])end

Los cálculos del ciclo no empezarán hasta que se teclee el comando end y seguidamente presionar la tecla enter. El enunciado disp([r, vol]) imprime los valores de r y vol en una línea cada vez que se ejecute el cálculo de vol.

Otra forma de escribir el ciclo es de la siguiente forma:

Page 3: Fundamentos de Matlab

r=0;while r<5

r = r + 1;vol = (4/3) * pi * r^3;disp([r, vol])

end

Otra forma de escribir el ciclo, es decrementándolo de la siguiente forma:

for r=5:-1:1vol = (4/3) * pi * r^3;disp([r, vol])

end

En Matlab, por omisión, los números se escriben con cinco dígitos. Teclee la siguiente orden seguida de un enter:

pi

Sin embargo, los mismos dígitos pueden exhibirse con 16 dígitos si se emite la orden format long; por ejemplo:

format longpi

Si desea volver al formato corto utilice format short:

format shortpi

El comando break termina la ejecución de un ciclo for o while. Ejemplo:

for i=1:6for j=1:20

if j>2*i, disp([j,i]), break, endend

end

En el ejemplo anterior, break termina el ciclo interior tan pronto se satisface j>2*i, pero el ciclo de i se continúa hasta i=6.

Al ejecutar los comandos, MATLAB memoriza las variables utilizadas. Sus valores permanecen en la memoria hasta que sale del MATLAB. Para borrar todas las variables utilice el comando clear. Si sólo desea borrar algunas variables, sus nombres se indican después de la palabras clear; por ejemplo:

x=2;y=3;disp(x)disp(y)clear x ydisp(x)disp(y)

Si desea borrar la ventana utilice el comando clc.

Page 4: Fundamentos de Matlab

clc

MATLAB puede aceptar datos de entrada a través del teclado mediante el comando input. Si se desea leer un número, un enunciado básico sería:

z = input('Teclee el radio:') La parte 'Teclee el radio:' es un mensaje de solicitud que se exhibe en pantalla. Cuando se teclee el

valor del radio y se pulse la tecla enter, el dato se guradará en z. También es posible introducir cadenas desde el teclado. Un enunciado básico sería:

z = input('Indique su nombre:', 's')

El segundo argumento, 's', indica que la entrada del teclado es una cadena. La variable "z" se convertirá en una variable de arreglo (vector fila) a menos que la cadena sólo contenga un carácter. Se puede introducir una cadena con input sin 's' si la cadena se teclea encerrada en apóstrofes. En este caso, el emsaje de solicitud podría ser:

z = input('Indique su nombre (encerrado en apóstrofes): ')

Es posible imprimir mensajes y números con formato si se utiliza fprintf; por ejemplo:

fprintf('El volumen de la esfera es %12.5f. \n', vol)

Aquí se incluyó entre los apóstrofes la cadena que se va a exhibir (El volumen de la esfera), el formato del número (%12.5f) y el operador de nueva línea (\n). "vol" es la variable que se imprimirá en el formato %12.5f. Si se omite \n lo que se imprima en seguida aparecerá en la misma línea. El formato %12.5 imprime en pantalla un número con 12 cifras significativas y cinco decimales. Otros ejemplos de formatos de impresión se muestran a continuación:

fprintf ('Formato_e: %6.5e.\n', vol)fprintf ('Formato_f: %6.3f.\n', vol)fprintf ('Formato_f: %3.0f \n', vol)

Las variables de arreglo unidimensional tienen forma de fila o de columna y están íntimamente relacionadas con los vectores y las matrices. En MATLAB, arreglo de fila es lo mismo que vector de fila y arreglo de columna es lo mismo que vector de columna. La variable "x" puede definirse como vector de fila especificando sus elementos; por ejemplo:

x = [0, 0.1, 0.2, 0.3, 0.4 0.5]

Si desea imprimir un elemento particular, teclee x con su subindice. Por ejemplo>

x(3)

Una forma equivalente de definir la misma "x" es:

for i=1:6x(i)=(i-1)*0.1;

endx

Otra forma de definir una variable de arreglo de fila con un incremento o decremento fijo es:

clearx = 0:0.1:0.5

Page 5: Fundamentos de Matlab

La definición de un arreglo de columna es similar a la de un arreglo de fila excepto que los elementos se separan mediante signos de punto y coma, por ejemplo:

z = [0;0.1; 0.2; 0.3; 0.4;0.5]

Una alternativa para definir esto mismo es agregar un apóstrofe a un arreglo de fila:

z = [0, 0.1, 0.2, 0.3, 0.4 0.5]' Si "y" y "x" son arreglos que tienen la misma longitud y la misma forma (fila o columna), se pueden

sumar, restar, multiplicar y dividir empleando los operadores aritméticos de arreglos:

z = x + yz = x - yz = x .* yz= x ./ y

Que equivalen respectivamente a :

for i=1:6; z(i)=x(i)+y(i); endfor i=1:6; z(i)=x(i)-y(i); endfor i=1:6; z(i)=x(i)*y(i); endfor i=1:6; z(i)=x(i)/y(i); end

Defina dos arreglos "x" e "y" tipo fila con elementos (1,2,3,4,5) y realice las operaciones algebráicas ilustradas anteriormente.

El operador potenciación de arreglos se puede ilustrar con:

z=x.^1.2

Al igual que otros lenguajes de programación, MATLAB tiene numerosas funciones matemáticas, desde las elementales hasta las de alto nivel. Las funciones matemáticas en MATLAB presentan dos notables diferencias respecto de las de otros lenguajes de programación: Funcionan con variables complejas sin discriminación alguna y funcionan con argumentos vectoriales y matriciales. Ejemplo:

clearcos(2+3*i)x=1:6sin(x)

La ejecución de comandos en en la plataforma de trabajo del MATLAB sólo es apropiada si no hay que teclear mucho o si se desea explorar ideas de forma interactiva. Sin embargo, en los casos en que los comandos ocupan más de unas cuantas líneas es más conveniente que el usuario escriba un archivo M.En el menú FILE del MATLAB cree un nuevo documento M-FILE. En el editor de archivos M-FILE escriba las instrucciones siguientes:

x=0:0.05:10y=sin(x).*exp(-0.4*x)plot(x,y)xlabel(‘x’); ylabel(‘y’)

Guarde el archivo con el nombre E01.m en el directorio work que se encuentra dentro del directorio MATLAB. Si el directorio no existe, cree el directorio y luego el PATH desde MATLAB.

En el ambiente de trabajo del MATLAB escriba E01 y luego pulse ENTER. Observe la utilidad de la funciones plot,xlabel e ylabel.

Page 6: Fundamentos de Matlab

Cree un programa que calcule el volumen de un sólido, este debe ser capaz de calcular el volumen de tres tipos de solidos:

1. Esfera vol = (4/3) * pi * r^32. Cilindro vol = pi * r^2 * h3. Paralelepípedo vol = a * l * h

Guarde el archivo con el nombre E02.m en el directorio work. En el ambiente de trabajo del MATLAB escriba E01 y luego pulse ENTER. Calcule el volumen de una esfera con r = 3, luego el volumen de un cilindro con r = 2 y h = 5 y por último de un paralelepípedo con a = 4, l = 5 y h = 3.