27
Matlab Informática aplicada al medio ambiente curso 2010/2011

Matlab - arantxa.ii.uam.esarantxa.ii.uam.es/~iama/intro-matlab.pdf · Informática aplicada al Medio Ambiente 2 Workspace Variables y funciones definidas who → lista de variables

  • Upload
    haminh

  • View
    233

  • Download
    0

Embed Size (px)

Citation preview

Matlab

Informática aplicada al medio ambiente curso 2010/2011

Informática aplicada al Medio Ambiente 2

Workspace

Variables y funciones definidas who → lista de variables whos → descripción

>> whos

Name Size Bytes Class

A 3x3 72 double array

help función: Ayuda sobre la función doc función: Ayuda extendida, en navegador lookfor texto: busqueda del texto

Informática aplicada al Medio Ambiente 3

Variables

A = Expresión % Letra + letra, dígitos o subrayado. Sensible a mayúsculas/minúsculas

Nomenclatura: Matrices en Mayúsculas

Ej.: MiMatriz = [1, 2; 3, 4] Escalares y vectores en minúsculas

Ej.: escalar = 3

Valores especiales: pi, inf, NaN, realmin, realmax, ans

Informática aplicada al Medio Ambiente 4

Matrices y vectores

Matriz: [ fila ;|fila ... ] Filas: Elementos separados por ',' o blanco Ej.: A=[1 2 3; 4, 5 6

7 8, 9] El tamaño puede cambiar

Vector = Matriz con solo una fila o una columan Ej.: vectorFila=[1, 2, 3] Ej.: vectorColumna=[1; 2; 3]

Informática aplicada al Medio Ambiente 5

Matrices y vectores

Acceso: V(Fila, Columna) V(Posición) (Las matrices se almacenan por

columnas)

Ej.: M= [1, 2, 3; 4, 5, 6; 7, 8, 9] v1= [1, 2, 3], v2= [1; 2; 3] M(2, 3) M(1, 2) m(1, 2) M(1, 4) M(1)? M(4)? M(10)? M(0)? v1(2)? v2(3)? v1(1, 2)? v2(2, 1)?

Informática aplicada al Medio Ambiente 6

Sentencias Separadas por o comas

>> v1=[1, 2, 3], v2=[3 4 5]v1 =

1 2 3

v2 =

3 4 5

Separadas por ; Solo muestra el resultado de la última sentencia

ejecutada

Comentarios % v= 3+4 % una suma v= 4+4; % sin mostrar el resultado

Informática aplicada al Medio Ambiente 7

Respuesta

ans %answer Almacena la última

respuesta no asignada a ninguna variable

Se puede utilizar en los siguientes cálculos

>> A=[1, 2, -3; 4, -5, 6; -7, 8, 9]

A = 1 2 -3

4 -5 6

-7 8 9

>> inv(A)

>> ans*Aans =

1.0000 -0.0000 -0.0000

-0.0000 1.0000 0

0.0000 0 1.0000

Informática aplicada al Medio Ambiente 8

Modificación de matrices

A=[1, 2, 3; 4, 5, 6; 7, 8, 9]

A(1, 3)=9 A(2, 4)= 3 Vectores fila por

omisión W(3)= 5

w =

0 0 5

A =

1 2 9

4 5 6

7 8 9

A =

1 2 9 0

4 5 6 3

7 8 9 0

Informática aplicada al Medio Ambiente 9

Matrices y submatrices

v= [a:b] ó [a:s:b] %series linspace (a, b, n) %n elementos entre a y b x(a:b) devuelve elementos entre a-ésimo y

bésimo A(a:b, c:d) A(:, c:d) A(a, :) A(:, :)

Informática aplicada al Medio Ambiente 10

Operadores matriciales

+ adición o suma – sustracción o resta * multiplicación ' traspuesta ^ potenciación \ división-izquierda

(a\b) = b/a en escalares. inv(A)*B

/ división-derecha

.* producto elemento a elemento

./ y .\ división elemento a elemento

.^ elevar a una potencia elemento a elemento

Informática aplicada al Medio Ambiente 11

Funciones con matrices

diag(A) %diagonal como columna

eye(n) %identidad eye(m, n) zeros(m, n) ones (m, n) rand (m, n)

%uniforme [0..1] randn(m, n) %normal

size(A) length(v) tril(A) %triángulo inf.

izq. (inc. diag.) triu(A) %triángulo

sup. der. (inc. diag.) inv(A)

Informática aplicada al Medio Ambiente 12

Cadenas de caracteres

c='una cadena' abs(c) → ASCII setstr(vector) →

cadena

str2mat(filas de cadenas)

num2str(numero) int2str(entero)

dec2hex(entero) hex2dec(cadena) lower(cadena) upper(cadena) strcmp(s1, s2)

1=iguales, 0=distintas

strncmp(s1, s2, n) strcmpi, strncmpi

(ignoring case)

Informática aplicada al Medio Ambiente 13

Cadenas de caracteres

disp(cadena) %muestra la cadena strrep(s, exp1, exp2) findstr(s, exp) %posiciones de exp en s ischar(exp)

Obsoleto: isstr(exp)

eval('expresion') Concatenación: [cadena1, cadena2, ....]

Informática aplicada al Medio Ambiente 14

Entrada de datos

input('mensaje', 's') ej.: input ('¿Cómo te llamas? ', 's')

input('mensaje') %evalua la expresión introducida

menu('Título', opción1, opción2....) Devuelve el número de opción. 1=opción1...

Informática aplicada al Medio Ambiente 15

Números

Tipos Enteros Racionales Reales Complejos

Operadores básicos Aritméticos: +, -, *, /, ^ Lógicos: ~v (negación de v), a&b (and), a|b (or),

xor(a,b) (or exclusivo) Relacionales: <, <=, >, >=, ==, ~=

Informática aplicada al Medio Ambiente 16

Operadores básicos

Valores booleanos: (Álgebra de G. Bool) 0=Falso ~=0 Verdadero. Normalmente se usa el 1

any(v): Devuelve si algún componente del vector ~= 0

all(x): Devuelve si todos son no nulos En matrices devuelve vector fila con resultado

de cada columna

Informática aplicada al Medio Ambiente 17

Prioridad

^ → *, / → +, - En igualdad se ejecutan de izquierda a derecha Paréntesis para alterar prioridad Aritméticos → relacionales → lógicos (& → | ) && y || equivalen a & y |, en cortocircuito

Más eficientes en algunos casos

Informática aplicada al Medio Ambiente 18

Tipos numéricos. Enteros

int64, int32, int16, int8, uint64, uint32, uint16, uint8

Conversión: x= int16(32000) Detección:

class(x) isinteger(x) isa(x, 'int16') isnumeric(x)

Rangos: intmin('int64'), intmax('int64')

Informática aplicada al Medio Ambiente 19

Tipos numéricos. Reales

single(x), double(y) isfloat(x) %single o double realmin, realmax realmin('single'), realmax('single'

%sin argumentos= realmax o realmin('double')

Otras funciones: isnumeric, class, isa

Informática aplicada al Medio Ambiente 20

Ejemplo

n=1000; AA=rand(n); A=single(AA); tic, Bs=inv(A); toc tic, Bd=inv(AA); toc Nota: Octave aún no tiene single, todos son

double

Informática aplicada al Medio Ambiente 21

Funciones numéricas

rem(n, m) → resto división n/m sign(n) → signo, 1 >0, -1 < 0 max(n, m), min(n,m) gcd(n, m) → máximo común divisor lcm(n, m) → mínimo común múltiplo factorial(n) factor(n) → factores primos

Informática aplicada al Medio Ambiente 22

Cambios de base

dec2base(decimal, base) base2dec('número', base) dec2bin(n), bin2dec('número') dec2hex(n), hex2dec('número')

Informática aplicada al Medio Ambiente 23

Formatos de salida

Format ('tipo') o format tipo Solo afecta a la presentación

Tipos: bank → 2 decimales fijos compact/loose → -/+ legibilidad hex → hexadecimal rat → racional aproximado long / short → 16 o 4 cifras long e, short e → Notación científica Long g, short g → Largo óptimo

Informática aplicada al Medio Ambiente 24

Funciones trigonométricas

sin, cos, tan, csc, sec, cot Radianes

asin, acos, atan, acsc, asec, acot Hiporbólicas

sinh, cosh, coth asinh, acosh, acoth

Informática aplicada al Medio Ambiente 25

Exponenciales y logarítmicos

exp(x) → e ^x log(x) log10(x), log2(x) pow2(x) → 2^x sqrt(x) → raíz cuadrada de X power(x, y) → x^y

Informática aplicada al Medio Ambiente 26

Otras funciones numéricas

abs(x) → valor absoluto floor(x) → suelo ceil(x) → techo round(x) → redondeo al entero más próximo fix(x) → redondea hacia cero

Informática aplicada al Medio Ambiente 27

Números complejos

i, j = sqrt(-1) x= 3 – 2i x= complex(3, -2) real(x) → 3 imag(x) → -2