12
Fundamentos de Matlab

Fundamentos de Matlab

  • Upload
    howell

  • View
    28

  • Download
    1

Embed Size (px)

DESCRIPTION

Fundamentos de Matlab. Ejercicio Define un vector B que contenga todos los elementos de la columna 3 de la matriz A Define un vector C que contenga todos los elementos del renglón 2 de la matriz A Define una matriz E que contenga los elementos del 2 do al 4 to renglón de la matriz A - PowerPoint PPT Presentation

Citation preview

Page 1: Fundamentos de Matlab

Fundamentos de Matlab

Page 2: Fundamentos de Matlab

Ejercicio Define un vector B que contenga todos los elementos de la

columna 3 de la matriz A

Define un vector C que contenga todos los elementos del renglón 2 de la matriz A

Define una matriz E que contenga los elementos del 2do al 4to renglón de la matriz A

Define una matriz F de 3 x 3 que contenga los elementos del 1o al 3er renglón y de la 2da a la 4ta columna de la matriz A

30252015105

2420161284

181512963

12108642

1197531

A

Page 3: Fundamentos de Matlab

Algunos comandos del Sistema Operativo

>> help lista los principales tópicos de la ayuda>> who lista variables en uso>> whos lista variables en uso y su descripción>> clear borra variables>> pwd muestra cual es el directorio actual>> cd cambia la ruta del directorio actual>> dir lista el directorio actual>> save almacena variables en un archivo .mat>> load carga variables y su contenido>> delete elimina archivo>> quit termina la sesión con Matlab

Page 4: Fundamentos de Matlab

Comandos especiales >> date fecha actual como cadena de caracteres >> datenum convierte una fecha en un número serial que

representa el número de días a partir del 01- 01-0000

>> clock fecha y hora actual como vector >> format establece el formato de salida

Cadenas de caracteres (string) >> x = ’ejemplo’; asignación de una cadena >> x(4) manejo de un carácter de la cadena >> t=x(2:5); una subcadena >> length(x) longitud de la cadena >> strcat(x,t) concatenación de cadenas >> int2str(A) redondea los elementos de la matriz A a

enteros y los convierte en caracteres >> num2str(A) convierte los elementos de A en caracteres >> str2num(A) convierte una matriz de caracteres en un

arreglo numérico >> eval(s) ejecuta la cadena de caracteres como una

expresión o comando

Page 5: Fundamentos de Matlab

Funciones matemáticas elementales que operan de modo escalar (actúan sobre cada elemento de la matriz)

sin(x) seno cos(x) coseno tan(x) tangente asin(x) arco seno acos(x) arco coseno atan(x) arco tangente (devuelve un ángulo entre -

π/2 y +π/2) sinh(x) seno hiperbólico cosh(x) coseno hiperbólico tanh(x) tangente hiperbólica asinh(x) arco seno hiperbólico acosh(x) arco coseno hiperbólico atanh(x) arco tangente hiperbólica

Page 6: Fundamentos de Matlab

log(x) logaritmo natural log10(x) logaritmo decimal exp(x) función exponencial sqrt(x) raíz cuadrada rem(x,y) residuo de la división (x – n.*y donde n =

fix(x./y) si y~=0) mod(x,y) similar a rem (Ver diferencias con el Help) round(x) redondea hacia el entero más próximo fix(x) redondea hacia el entero más próximo a 0 floor(x) redondea hacia -∞ ceil(x) redondea hacia +∞ gcd(x) máximo común divisor lcm(x) mínimo común múltiplo real(x) parte real del número complejo imag(x) parte imaginaria del número complejo abs(x) valor absoluto

Page 7: Fundamentos de Matlab

Funciones que actúan sobre vectores y/o matrices >> x = [2,-1,0,3]; >> A = [1,2,3;4,5,6;7,8,9]; >> [m,n] = size(A) tamaño de A >> n = length(x) número de elementos del vector x >> dot(x,y) producto escalar entre dos vectores >> rank(A) rango de A (número de renglones o

columnas linealmente independientes) >> trace(A) traza de A (suma de los elementos en

la diagonal) >> det(A) determinante de la matriz cuadrada A >> inv(A) inversa de A >> A’ traspuesta de A >> N = [ ] matriz nula

Page 8: Fundamentos de Matlab

>> y = diag(A)forma un vector y con los elementos de la diagonal de la matriz A

>> polyval(x,y) encuentra el valor del polinomio cuyos coeficientes son los elementos del vector x evaluado en y

>> roots(x) encuentra las raíces del polinomio cuyos coeficientes son los elementos del vector x

>> flipud(A) voltea la matriz A en sentido arriba/abajo (simetría respecto a un eje horizontal)

>> fliplr(A) voltea la matriz A en sentido izq/der (simetría respecto a un eje vertical)

>> reshape(A,m,n) devuelve una matriz de tamaño mxn cuyos elementos se obtienen a partir de un vector formado por las columnas de A puestas una a continuación de la otra. Ocurre un error si A no tiene m*n elementos.

>> rot90(A,k) Gira k*90 grados la matriz A en sentido anti- horario, k es cualquier número entero. Si se omite, se supone k = 1.

Page 9: Fundamentos de Matlab

Funciones adicionales para manejo de datos con vectores y matrices

>> A = [5,-1;3,4;2,7]; >> max(A) el valor máximo por columnas >> min(A) el valor mínimo por columnas >> sum(A) suma sobre cada columna >> prod(A) producto sobre cada columna >> cumsum(A) matriz del mismo tamaño que A conteniendo

las sumas acumuladas sobre las columnas

>> cumprod(A) matriz del mismo tamaño que A conteniendo los productos acumulados sobre las

columnas >> mean(A) media aritmética sobre las columnas >> median(A) mediana sobre las columnas >> std(A) desviación estándar sobre las columnas

Page 10: Fundamentos de Matlab

>> find(A>10) encuentra los índices de los elementos de A que cumplen con cierta condición

>> sort(A) ordenamiento ascendente de los elementos de A >> exist(‘var’) comprueba si var existe como variable, función,

directorio, fichero, etc. >> isnan(A) regresa un arreglo que contiene 1’s donde los

elementos de A son NaN’s y 0’s donde no lo son

>> isempty(A) checa si A está vacía o tiene tamaño nulo

► Se pueden agregar funciones nuevas a MATLAB si están expresadas en términos de otras funciones existentes (help function).

■ Algunos gráficos comunes

>> bar(A) gráfico de barras >> hist(A) histograma >> pie(A) gráfico tipo pastel >> pie3(A) pastel en relieve

Page 11: Fundamentos de Matlab

Gráficos de funciones de una variable

>> f = 'exp(x)-3*x'; >> ezplot(f, [0, 2]) grafica la expresión dada por f sobre el dominio

dado (el dominio por omisión es -2*pi < x < 2*pi)

>> x = 0:0.1:2*pi; >> y = sin(x); puntos de la función seno >> plot(x,y); grafica la función seno con una línea contínua >> plot(x,y,'o') gráfico con círculos. Se puede elegir: o . * + x -- >> plot(x,y,'r') gráfico en color rojo. Puede elegir: r,b,y,m,g,b,w,k >> plot(x,y,'og') gráfico con círculos verdes. >> plot(x,y,’LineWidth’,2) cambia el ancho de línea >> grid dibuja la cuadrícula >> title('seno de x') título >> text(x1,y1,’string’) agrega el texto en la posición (x1,y1) >> gtext('seno de x') posiciona el texto en el gráfico con el

mouse >> xlabel('X') rotula el eje horizontal >> ylabel('Y') rotula el eje vertical >> axis([Xmin Xmax Ymin Ymax]) define límites para los ejes

Page 12: Fundamentos de Matlab

>> hold on superpone el gráfico subsecuente al actual

>> figure(n) se pueden tener varias figuras abiertas >> subplot(m,n,p) divide la ventana de la figura en mxn

gráficos y selecciona el p-ésimo para la gráfica actual

>> clf borra el gráfico activo >> x = 0:0.1:10; >> y = exp(x); >> semilogy(x,y) usa una escala logarítmica en el eje Y >> loglog(x,y) usa escalas logarítmicas en ambos ejes >> a = 0:0.01:2*pi; ángulo en radianes >> r = sin(3*a); radio >> polar(a,r); usa coordenadas polares para graficar el

ángulo, en radianes, contra el radio >> x = linspace(0,2*pi,10); >> y = cos(x); >> stem(y) gráfica de valores discretos