etsi de topografía, geodesia y cartografía laboratorio de...

35
ETSI de Topografía, Geodesia y Cartografía U. D. de Matemáticas de la ETSITGC 1 Laboratorio de Matemáticas (Pequeño manual de MatLab) En lo que sigue, se supone que el usuario teclea lo que aparece en color azul. En color negro aparecerá la respuesta de MATLAB a la instrucción tecleada precedida del símbolo >>. El signo % permite añadir comentarios y aparecerán en verde. La ventana de trabajo es la que tiene el título de COMMAND WINDOW Los cálculos que se asignan a una variable en concreto devuelve ans (del inglés answer) que significa respuesta. Si se añade un punto y coma (;) al final de la instrucción, no muestra ninguna respuesta. Se pueden utilizar las funciones matemáticas habituales. Al pulsar flecha hacia arriba del cursor ^ aparecen las instrucciones anteriores. % Función exponencial evaluada en 1, es decir, el número e >> exp(1) ans = 2.7183 % pi es una variable con valor predeterminado 3.14159... >> pi ans = 3.1416 Por defecto devuelve 4 decimales, aunque no afecta a la precisión de los cálculos se puede cambiar la presentación en pantalla. >> format long >> pi ans = 3.141592653589793 %Para volver al formato estándar >> format >> x=pi/3 x = 1.0472 >> y=sin(x) y = 0.8660 Para conocer las variables que se han usado hasta el momento: >> who Your variables are: ans x y

Upload: phungkhuong

Post on 05-Oct-2018

222 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 1

Laboratorio de Matemáticas (Pequeño manual de MatLab)

En lo que sigue, se supone que el usuario teclea lo que aparece en color azul. En color negro aparecerá la respuesta de MATLAB a la instrucción tecleada precedida del símbolo >>. El signo % permite añadir comentarios y aparecerán en verde.

• La ventana de trabajo es la que tiene el título de COMMAND WINDOW • Los cálculos que se asignan a una variable en concreto devuelve ans (del inglés

answer) que significa respuesta. • Si se añade un punto y coma (;) al final de la instrucción, no muestra ninguna

respuesta. • Se pueden utilizar las funciones matemáticas habituales. • Al pulsar flecha hacia arriba del cursor ^ aparecen las instrucciones anteriores.

% Función exponencial evaluada en 1, es decir, el número e >> exp(1) ans = 2.7183 % pi es una variable con valor predeterminado 3.14159... >> pi ans = 3.1416

• Por defecto devuelve 4 decimales, aunque no afecta a la precisión de los cálculos se puede cambiar la presentación en pantalla.

>> format long >> pi ans = 3.141592653589793 %Para volver al formato estándar >> format >> x=pi/3 x = 1.0472 >> y=sin(x) y = 0.8660

• Para conocer las variables que se han usado hasta el momento: >> who Your variables are: ans x y

Page 2: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 2

Controles de flujo para programación

• Al proceso de toma de decisiones se le llama control del flujo

>>for • En cada iteración asigna valores y ejecuta órdenes

>>if • Actúa si todos los elementos de la expresión son verdaderos

>>while • Actúa si todos los elementos de la expresión son verdaderos o ceros

>>break • Termina la ejecución de órdenes: for, while

>>end • Fin del bucle

>>x==1 • ¿Es x = 1?

>>x~=2 • ¿Es x distinto de 2?

Page 3: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 3

Vectores y Matrices

• Para definir un vector, basta introducir sus coordenadas entre corchetes: >> v=[1 2 3] v = 1 2 3

• Para trasponer se usa ‘ (debajo de ?) >> v' ans = 1 2 3

• Para escribir un vector dado siempre en columna se escribe (:) >> v=v(:) v = 1 2 3

• Las matrices se escriben como los vectores, pero separando las filas mediante un punto y coma.

>>M=[1 2 3;4 5 6;7 8 9] M = 1 2 3 4 5 6 7 8 9

• Matriz formada por la parte triangular inferior de M. >> tril(M) ans = 1 0 0 4 5 0 7 8 9

• Matriz formada por la parte triangular superior de M. >> triu(M) ans = 1 2 3 0 5 6 0 0 9

• Determinante de la matriz cuadrada. >> det(M) ans = 0

• Matriz identidad. >> eye(3) ans = 1 0 0

Page 4: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 4

0 1 0 0 0 1

• Matriz inversa. >> M=[1 0 1;1 -1 0;1 1 -2]; >> inv(M) ans = 0.5000 0.2500 0.2500 0.5000 -0.7500 0.2500 0.5000 -0.2500 -0.2500

• Matriz diagonal cuya diagonal es el vector v. >> diag(v) ans = 1 0 0 0 2 0 0 0 3

• Se puede escribir una matriz diagonal con los elementos de la diagonal de otra matriz

>> diag(diag(M)) ans = 1 0 0 0 5 0 0 0 9

• Matriz tridiagonal 5x5 con 0 en la diagonal principal y 1 en la sub y superdiagonal >> diag(ones(1,4),1)+diag(ones(1,4),-1) ans = 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 0

• Matriz dispersa: matriz de un gran tamaño con la mayor parte de sus elementos cero. Se indica primeramente la columna y a continuación la fila con los elementos distintos de cero

>>B=sparse([1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6],[1,2,1,2,3,2,3,4,3,4,5,4,5,6,5,6],[4,1,1,4,1,1,4,1,1,4,1,1,4,1,1,4]) B = (1,1) 4 (2,1) 1 (1,2) 1 (2,2) 4 (3,2) 1 (2,3) 1 (3,3) 4 (4,3) 1 (3,4) 1 (4,4) 4

Page 5: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 5

(5,4) 1 (4,5) 1 (5,5) 4 (6,5) 1 (5,6) 1 (6,6) 4 % Para trabajar con la matriz completa, se usa full (llena) >> A=full(B) A = 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4

Polinomios Se escriben los coeficientes de un polinomio de mayor a menor grado.

>> p=[1 2 3 4] p = 1 2 3 4 % Polinomio x3+2x2+3x+4

Se obtiene el valor del polinomio para un valor de x >> polyval(p,-1) ans = 2 % Evaluación del polinomio x3+2x2+3x+4 en x=-1

Obtener las raíces del polinomio >> roots(p) ans = -1.6506 -0.1747 + 1.5469i -0.1747 - 1.5469i

Polinomio de Taylor Empezamos definiendo la variable x >>syms x >>f=exp(x); >>Taylor(f) x^5/120 + x^4/24 + x^3/6 + x^2/2 + x + 1 % Considera a=0, n=5. >>Taylor(f,n,x,a) % Calcula el desarrollo de Taylor de f para x-a de grado n

Para sustituir un valor >> subs(x^5/120 + x^4/24 + x^3/6 + x^2/2 + x + 1,1) ans = 2.7167

Page 6: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 6

Gráficas de funciones

• Representación gráfica de una función en un rango determinado >>fplot('x^2*sin(1/x)',[-0.05, 0.05]) % Dibuja la función x2sin(1/x) en el intervalo cerrado [-0.05, 0.05].

• Representación gráfica de una función sin determinar el domino

>>ezplot('x^2')

• Representación gráfica de una curva en paramétricas

>>ezplot('t-sin(t)','1-cos(t)',[0 8*pi])

• Representación gráfica de una función en implícitas >> ezplot('x^2 - y^2 - 1')

-0.05 -0.04 -0.03 -0.02 -0.01 0 0.01 0.02 0.03 0.04 0.05-2.5

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

2.5x 10

-3

-6 -4 -2 0 2 4 6

0

5

10

15

20

25

30

35

40

x

x2

0 5 10 15 20 25

-8

-6

-4

-2

0

2

4

6

8

10

x

y

x = t-sin(t), y = 1-cos(t)

Page 7: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 7

• Dibujar superficies.

>>ezsurf(' x^2 - y^2 - 1',[-1 1 -1 1])

• Gráficas. >> x=linspace(-3,3,500); >>y=exp(-x.^2); >>plot(x,y) >>plot(x,y,'*') >> plot(x,y,'--') >> plot(x,y,'r')

• Mantiene en la ventana gráfica los dibujos anteriores. >> hold on • Borrar las gráficas anteriores. >> hold off • Función definida a trozos >> x=linspace(-2,3,3000); >>y=(x.^2).*(x<0)+1.*((0<=x)&(x<1))+(-x+2).*(1<=x); >> plot(x,y,’.’).

( )

2x si x<0

f x 1 si 0 x<1

2 x si 1 x

= ≤ − ≤

-6 -4 -2 0 2 4 6

-6

-4

-2

0

2

4

6

xy

x2 - y2 - 1 = 0

-1-0.5

00.5

1

-1

-0.5

0

0.5

1

-2

-1.5

-1

-0.5

0

x

x2 - y2 - 1

y

Page 8: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 8

SISTEMAS DE ECUACIONES LINEALES

• Sistema compatible determinado por el método de Gauss. >> A=[1,18,-6;2,1,16;8,1,-2],b=[-10;-2;8],x=A\b A = 1 18 -6 2 1 16 8 1 -2 b = -10 -2 8 x = 1.0326 -0.6834 -0.2114 %Si A es una matriz n por n y b es un vector columna de dimensión n, o una

matriz con varias columnas, entonces X = A \ b es la solución a la ecuación A * X = b. • El número de condición de una matriz A en la norma 2, k2(A)=||A||||A-1||, se calcula

también como el cociente entre el valor singular más grande y el más pequeño de A. >> cond(A) ans = 2.5217

• Factorización LU >> [L,U]=lu(A) L = 0.1250 1.0000 0 0.2500 0.0420 1.0000 1.0000 0 0 U = 8.0000 1.0000 -2.0000 0 17.8750 -5.7500 0 0 16.7413 %Se cumple L*U=A

• Si L no sale triangular superior hace falta permutar las ecuaciones >> [L,U, P]=lu(A) L = 0.1250 1.0000 0 0.2500 0.0420 1.0000 1.0000 0 0 U = 8.0000 1.0000 -2.0000 0 17.8750 -5.7500 0 0 16.7413P = P = 0 0 1

Page 9: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 9

1 0 0 0 1 0 >> B=[8,1,-2;1,18,-6;2,1,16];b=[8;-10;-2]; >> [L,U,P]=lu(B) L = 1.0000 0 0 0.1250 1.0000 0 0.2500 0.0420 1.0000 U = 8.0000 1.0000 -2.0000 0 17.8750 -5.7500 0 0 16.7413 P = 1 0 0 0 1 0 0 0 1

La descomposición de Cholesky se utiliza para resolver sistemas de ecuaciones lineales en la misma forma que se usa la descomposición LU genérica, siempre que la matriz de los coeficientes sea definida y positiva. Y es más eficiente y más estable numéricamente que cualquier otra descomposición LU.

>> A=[1,0,-2;0,2,-2;-2,-2,7]; >> L=chol(A,'lower') L = 1.0000 0 0 0 1.4142 0 -2.0000 -1.4142 1.

O bien,

>> chol(A)

ans =

1.0000 0 -2.0000

0 1.4142 -1.4142

0 0 1.0000

obteniéndose Lt.

Page 10: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 10

ALGORITMO DE CROUT: • Para programar con MatLab hay que escribir un fichero con las instrucciones

necesarias. Para ello abrimos el editor con los siguientes pasos: File>>>New>>>M-File, o bien, New Script

Ya podemos escribir las instrucciones: function [x,L,U]=crout(a,b,c,z) n = length(a); l(1) = a(1); for i=1:n-1 if abs(l(i))<10^(-13) u(i) = 0; else u(i)= b(i)/l(i); end l(i+1) = a(i+1) - u(i)*c(i); end L = diag(l,0) + diag(c,-1) U = diag(ones(n,1),0) + diag(u,1) % Resolvemos L*z = b, donde z = U*x z = z(:); y = L \ z; x = U \ y; end Una vez guardado el archivo con el nombre de la función, escribimos las condiciones para Ax = z, donde A es cuadrada y tridiagonal. >> a=[4,4,4,4,4,4];b=[1,1,1,1,1];c=[1,1,1,1,1];z=[‐96;174;30;‐396;12;90], crout(a,b,c,z)

L = 4.0000 0 0 0 0 0 1.0000 3.7500 0 0 0 0 0 1.0000 3.7333 0 0 0 0 0 1.0000 3.7321 0 0 0 0 0 1.0000 3.7321 0 0 0 0 0 1.0000 3.7321 U = 1.0000 0.2500 0 0 0 0 0 1.0000 0.2667 0 0 0 0 0 1.0000 0.2679 0 0 0 0 0 1.0000 0.2679 0 0 0 0 0 1.0000 0.2679 0 0 0 0 0 1.0000 ans = ‐35.6125 46.4500 23.8124 ‐111.6998 26.9866 15.7533

Page 11: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 11

MÉTODO DE JACOBI: • Para programar con MatLab hay que escribir un fichero con las instrucciones

necesarias. Para ello abrimos el editor con los siguientes pasos: File>>>New>>>M-File, o bien, New Script

Ya podemos escribir las instrucciones: function[x,incr,iter]=jacobi(A,b,x0,tol,maxiter) %inicialización M = diag(diag(A)); N = M-A; iter = 1; incr = tol+1 %iteraciones while incr > tol & iter < maxiter

x = M\(N*x0+b); incr = norm(x-x0, inf); x0 = x; iter = iter+1;

end if incr > tol disp('No converge con las iteraciones dadas') end % fun(x): función a iterar % x0: estimación inicial para el proceso de iteración % tol: tolerancia en error absoluto para la raíz % incr: variación entre las raíces con la norma infinita % maxiter: máximo número de iteraciones permitidas Una vez guardado el archivo con el nombre de la función, escribimos las condiciones para la iteración. >>A=[8,1,-2;1,18,-6;2,1,16], b=[8;-10;-2]; >> x0=[0;0;0]; tol=0.01; maxiter=4; jacobi(A,b,x0,tol,maxiter) incr =1.0100 No converge con las iteraciones dadas ans = 1.0278 -0.6850 -0.2140 >> x0=[0;0;0]; tol=0.01; maxiter=5; jacobi(A,b,x0,tol,maxiter) incr =1.0100 ans = 1.0321 -0.6840 -0.2107

Page 12: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 12

MÉTODO DE GAUSS‐SEIDEL: • Para programar con MatLab hay que escribir un fichero con las instrucciones

necesarias. Para ello abrimos el editor con los siguientes pasos: File>>>New>>>M-File, o bien, New Script Ya podemos escribir las instrucciones: function[x,incr,iter]=gausseidel(A,b,x0,tol,maxiter) %inicialización M = tril(A); N = M-A; iter = 1; incr = tol+1 %iteraciones while incr > tol & iter < maxiter

x = M\(N*x0+b); incr = norm(x-x0, inf); x0 = x; iter = iter+1;

end if incr > tol disp('No converge con las iteraciones dadas') end % fun(x): función a iterar % x0: estimación inicial para el proceso de iteración % tol: tolerancia en error absoluto para la raíz % incr: variación entre las raíces con la norma infinita % maxiter: máximo numero de iteraciones permitidas Una vez guardado el archivo con el nombre de la función, escribimos las condiciones para la iteración. >>B=sparse([1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6],[1,2,1,2,3,2,3,4,3,4,5,4,5,6,5,6],[4,1,1,4,1,1,4,1,1,4,1,1,4,1,1,4]); A=full(B)

A = 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4

>> b=[‐96;174;30;‐396;12;90];x=A\b; >> x0=[0;0;0;0;0;0], tol=0.01, maxiter=50, gausseidel(A,b,x0,tol,maxiter) incr =1.0100 ans =

‐35.6130 46.4504 23.8122 ‐111.6997 26.9866 15.7534

Page 13: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 13

MÉTODO DE SOBRERRELAJACIÓN: • Para programar con MatLab hay que escribir un fichero con las instrucciones

necesarias. Para ello abrimos el editor con los siguientes pasos: File>>>New>>>M-File, o bien, New Script

Ya podemos escribir las instrucciones: function[x,incr,iter]=sobrerrelajacion(A,b,x0,omega,tol,maxiter) % inicialización D = diag(diag(A)); L = tril(A,-1); M = L + D/omega; N = M-A; iter = 1; incr = tol+1 % iteraciones while incr > tol & iter < maxiter

x = M\(N*x0+b); incr = norm(x-x0, inf); x0 = x; iter = iter+1;

end if incr > tol disp('No converge con las iteraciones dadas') end % fun(x): función a iterar % x0: estimación inicial para el proceso de iteración % omega: número elegido para ponderación % tol: tolerancia en error absoluto para la raíz % incr: variación entre las raíces con la norma infinita % maxiter: máximo número de iteraciones permitidas Una vez guardado el archivo con el nombre de la función, escribimos las condiciones para la iteración. >>B=sparse([1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6],[1,2,1,2,3,2,3,4,3,4,5,4,5,6,5,6],[4,1,1,4,1,1,4,1,1,4,1,1,4,1,1,4]); A=full(B)

A = 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4 1 0 0 0 0 1 4

>> b=[‐96;174;30;‐396;12;90];x=A\b; x0=[0;0;0;0;0;0], omega=1.2, tol=0.01, maxiter=50, sobrerrelajacion(A,b,x0,omega, tol,maxiter) incr =1.0100 ans = ‐35.6124 46.4497 23.8126 ‐111.6998 26.9866 15.7533

Page 14: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 14

POLINOMIOS DE INTERPOLACIÓN Polinomios oscilantes: Polinomio de Lagrange

• Polinomio de interpolación de grado n >>polyfit(x,y,n) Corresponde al polinomio 1

1 2 1( ) ....−+= + + + +n n

n np x p x p x p x p

Ejemplo:

ix 0 1 2 3 4 5 6 7

iy 0 25 34 72 115 92 71 65

>> x=[0:7]; y=[0 25 34 72 115 92 71 65]; polyfit(x,y,7) ans = -0.1079 2.4944 -22.1222 93.9861 -195.3722 181.5194 -35.3976 -0.0000

En este caso 7 6 5 4 3 2( ) 0.1079 2.4944 22.1222 93.9861x 195.3722x +1 81.5194 35.3976= − + − + − −p x x x x x x

• Evaluar en un punto particular x0 >> polyval(ans,x0) >> polyval(ans,2.5) ans = 47.3867 • Para representar los puntos y el polinomio >> p=polyfit(x,y,7); >> hold on % Mantiene los ejes igual y se añade la gráfica >> xx=0:0:7; yy=polyval(p,xx); plot(x,y,'*',xx,yy) % Dibujo:

0 1 2 3 4 5 6 7

-20

0

20

40

60

80

100

120

Page 15: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 15

Polinomios oscilantes: Polinomio de Hermite • Polinomio de interpolación de grado n • Para programar con MatLab hay que escribir un fichero con las instrucciones

necesarias. Para ello abrimos el editor con los siguientes pasos: File>>>New>>>M-File, o bien, New Script

Ya podemos escribir las instrucciones: function hp = hermite (x, y, yp) n = length (x); z = zeros (1, 2*n); f = zeros (1, 2*n); z(1:2:2*n-1) = x; z(2:2:2*n) = x; f(1) = y(1); f(3:2:2*n-1) = (y(2:n) - y(1:n-1) ) ./ ( x(2:n) - x(1:n-1)); f(2:2:2*n) = yp; for i = 3:2*n f(i:2*n) = (f(i:2*n) - f(i-1:2*n-1) ) ./ ( z(i:2*n) - z(1:2*n-i+1)); end; hp = zeros (1, 2*n); p = [1]; for i = 1:2*n hp = hp + f(i) * [zeros(1,2*n-i) p]; p = conv (p, [1 -z(i)]); end; % x: abscisas de los puntos a interpolar % y: ordenadas de los puntos a interpolar % yp: derivadas de los puntos a interpolar % hp: coeficientes del polinomio de Hermite % conv: convolución de dos vectores. Algebraicamente, la convolución es la misma operación que la multiplicación de los polinomios cuyos coeficientes son los elementos de los dos vectores. w=con(u,v) w(1) = u(1)*v(1) w(2) = u(1)*v(2)+u(2)*v(1) w(3) = u(1)*v(3)+u(2)*v(2)+u(3)*v(1) ... w(n) = u(1)*v(n)+u(2)*v(n-1)+ ... +u(n)*v(1) Si m es la longitud de u y n la longitud de v, entonces m+n-1 es la longitud de w. Una vez guardado el archivo con el nombre de la función, escribimos los datos:

Ejemplo:

x 0 1 3

f (x) 1 5 -17

f ’(x) 3 5 -15

Page 16: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 16

>> x=[0 1 3]; y=[1 5 -17]; yp=[3 5 -15]; hp=hermite(x,y,yp) hp = 1 -6 9 -3 3 1

En este caso 5 4 3 2( ) 6 9x 3x +3 1= − + − +p x x x x

• Para representar los puntos y el polinomio >> xx=[0:0.1:3]; yy=polyval(hp,xx); plot(x,y,'*',xx,yy')

0 0.5 1 1.5 2 2.5 3-20

-15

-10

-5

0

5

10

Page 17: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 17

INTERPOLACIÓN POLINÓMICA SEGMENTARIA: SPLINES CÚBICOS

• Spline “no nodo” >> spline (x, y) % Genera un registro llamado polinomio segmentario que, entre otros campos, consta de uno que contiene los coeficientes de todos los polinomios del spline en una matriz de dimensiones n x 4, ps.coefs

Ejemplo:

ix 0 1 2 3 4 5 6 7

iy 0 25 34 72 115 92 71 65

>> x=[0:7]; y=[0 25 34 72 115 92 71 65]; pp=spline (x, y) ans = form: 'pp' breaks: [0 1 2 3 4 5 6 7] coefs: [7x4 double] pieces: 7 order: 4 dim: 1 % La evaluación del spline en puntos concretos se efectúa con ppval, que es el análogo de polyval para polinomios >>ppval (spline (x, y), xi). >> ppval(spline(x,y),2.5) ans = 48.8484 % Si sólo interesan los valores que tome el spline en ciertos puntos xi, se utiliza la misma función en la forma: yi = spline (x, y, xi). >> spline(x,y,2.5) ans = 48.8484 % La matriz que contiene los coeficientes del spline. >> pp.coefs ans = 9.5319 -36.5957 52.0638 0 9.5319 -8.0000 7.4681 25.0000 -2.6595 20.5957 20.0638 34.0000 -22.8939 12.6172 53.2767 72.0000 23.2352 -56.0646 9.8293 115.0000 -2.0470 13.6411 -32.5941 92.0000 -2.0470 7.5000 -11.4530 71.0000

% Dibujo: >> xx=0:0.2:7; zz=spline(x,y,xx); plot(x,y,'*',xx,zz)

Page 18: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 18

• Spline “completo”:

Se calcula con la misma función que se utiliza para el spline “no nodo”, añadiendo al vector “y” dos valores, uno al principio y otro al final, que son los valores de la derivada primera del spline en los puntos inicial y final, a=S’(x0) y b=S’(xn), respectivamente. Sintaxis: spline (x, [a y b]).

Ejemplo:

Se consideran los valores de la función y = arc tg x en los nodos x = -3, -2, …, 2, 3.

Interpolar estos puntos mediante un spline cúbico cuya derivada primera en los extremos

coincida con la derivada primera de la función.

0.1(3)y' ,1.0)3('yx1

1)x('y

2==−⇒

+=

x0 x1 x2 x3 x4 x5 x6 -3 -2 -1 0 1 2 3

>> x=-3:3; >> y=atan(x); >> ps=spline(x,[0.1 y 0.1]); Los coeficientes de cada pieza del spline están dados en la siguiente matriz: >> ps.coefs ans = -0.0011 0.0430 0.1000 -1.2490 0.0994 0.0397 0.1827 -1.1071 -0.1126 0.3378 0.5602 -0.7854 -0.1126 -0.0000 0.8980 0 0.0994 -0.3378 0.5602 0.7854 -0.0011 -0.0397 0.1827 1.1071

0 1 2 3 4 5 6 70

20

40

60

80

100

120

Page 19: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 19

Dibujamos la función (trazo continuo rojo) y el polinomio segmentario (trazo discontinuo verde): >> xx=-3:0.1:3;

>> yy=ppval(ps,xx);

>> plot(x,y,'*',xx,atan(xx))

>> hold on

>> plot(x,y,'*',xx,yy,'--')

• Spline cúbico natural o con frontera libre:

x=input('Ingrese Los valores de x [x0 ...xf] : '); y=input('Ingrese Los valores de y [y0 ...yf] : '); if length(y)~=length(x)

disp ('x e y no son de la misma longitud'); end

n = length(x)-1; h = x(2:n+1)-x(1:n); a=y; for i=1:n l(i)=(a(i+1)-a(i))/h(i); end l(n+1)=0; % revisar si es necesario for i=2:n

m(i)=3*(l(i)-l(i-1)); end % introducir condiciones de frontera m(1)=0; %condición inicio de frontera m(n+1)=0; %condición fin de frontera % Armando matriz A A(1,1) = 1; for i=2:n

A(i,i-1:i+1) = [h(i-1) 2*(h(i-1)+h(i)) h(i)]; end A(n+1,n+1) = 1; c=(A\m')'; for i=1:n b(i)=l(i)-h(i)*(2*c(i)+c(i+1))/3; end

-3 -2 -1 0 1 2 3-1.5

-1

-0.5

0

0.5

1

1.5

Page 20: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 20

for i=1: n d(i)=(c(i+1)-c(i))/(3*h(i));

end X=sym('X'); for i=1:n s(i)=a(i)+b(i)*(X-x(i))+c(i)*(X-x(i))^2+d(i)*(X-x(i))^3; end % gráfica figure(1) grid on plot(x,y,'o','MarkerSize',10,'MarkerEdgeColor','b','MarkerFaceColor','b') for i=1:n figure(2) grid on xx=x(i):1/100:x(i+1); ezplot(s(i),xx) hold on end axis([min(x) max(x) min(y) max(y)]) % diff(int(s(1))) % Mostrar datos x,y,A,h,l,m,a,b,c,d % Para mostrar las ecuaciones interpoladoras for i=1:n

disp('-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-__-_-_-_-_-_-') disp('entre xi y xf:'), x(i),x(i+1)

pretty((expand((vpa(s(i),5))))) % decimales significativos end Ejemplo: >> x=[2 2.7 3.8 6 8 10 13 16 18 21 25 30 36]; y=[5 7.8 9 10 10.2 10.3 10.4 14.5 15 15.4 15.5 14 5]; x = 2.0000 2.7000 3.8000 6.0000 8.0000 10.0000 13.0000 16.0000 18.0000 21.0000 25.0000 30.0000 36.0000 y = 5.0000 7.8000 9.0000 10.0000 10.2000 10.3000 10.4000 14.5000 15.0000 15.4000 15.5000 14.0000 5.0000 A = 1.0000 0 0 0 0 0 0 0 0 0 0 0 0 0.7000 3.6000 1.1000 0 0 0 0 0 0 0 0 0 0 0 1.1000 6.6000 2.2000 0 0 0 0 0 0 0 0 0 0 0 2.2000 8.4000 2.0000 0 0 0 0 0 0 0 0 0 0 0 2.0000 8.0000 2.0000 0 0 0 0 0 0 0 0 0 0 0 2.0000 10.0000 3.0000 0 0 0 0 0 0 0 0 0 0 0 3.0000 12.0000 3.0000 0 0 0 0 0

Page 21: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 21

0 0 0 0 0 0 3.0000 10.0000 2.0000 0 0 0 0 0 0 0 0 0 0 0 2.0000 10.0000 3.0000 0 0 0 0 0 0 0 0 0 0 0 3.0000 14.0000 4.0000 0 0 0 0 0 0 0 0 0 0 0 4.0000 18.0000 5.0000 0 0 0 0 0 0 0 0 0 0 0 5.0000 22.0000 6.0000 0 0 0 0 0 0 0 0 0 0 0 0 1.0000 h = 0.7000 1.1000 2.2000 2.0000 2.0000 3.0000 3.0000 2.0000 3.0000 4.0000 5.0000 6.0000 l = 4.0000 1.0909 0.4545 0.1000 0.0500 0.0333 1.3667 0.2500 0.1333 0.0250 -0.3000 -1.5000 0 m = 0 -8.7273 -1.9091 -1.0636 -0.1500 -0.0500 4.0000 -3.3500 -0.3500 -0.3250 -0.9750 -3.6000 0 a = 5.0000 7.8000 9.0000 10.0000 10.2000 10.3000 10.4000 14.5000 15.0000 15.4000 15.5000 14.0000 5.0000 b = 4.5791 2.8418 0.3193 0.3096 0.0672 -0.1282 0.8655 0.8662 0.0190 0.1309 -0.0277 -0.8453 c = 0 -2.4819 0.1888 -0.1932 0.0720 -0.1697 0.5009 -0.5007 0.0771 -0.0398 0.0001 -0.1637 0 d = -1.1819 0.8093 -0.0579 0.0442 -0.0403 0.0745 -0.1113 0.0963 -0.0130 0.0033 -0.0109 0.0091 -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 2 ans = 2.7000 5.2970 - 9.6037 X - 1.1819 X3 + 7.0914 X2 -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 2.7000 ans = 3.8000 -33.895469730000000 + 33.94366970000 X2 - 9.0373110 X3 + 0.80931 X -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 3.8000 ans = 6

Page 22: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 22

13.688863360000000000 - 3.62292160000000 X2 + 0.8486320000 X3 - 0.057880 X -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 6 ans = 8 -8.359696 + 7.401318 X - 0.988738 X2 + 0.044196 X3 -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 8 ans = 10 34.888592 - 8.816765 X + 1.038521 X2 - 0.040273 X3 -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 10 ans = 13 -79.896000 + 25.618450 X - 2.405000 X2 + 0.074511 X3 -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 13 ans = 16 328.30798 - 68.58244 X + 4.84123 X2 - 0.11129 X3 -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 16 ans = 18 -521.952108 + 90.841314 X - 5.122754 X2 + 0.096293 X3 -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 18 ans = 21 115.340056 - 15.373988 X + 0.778096 X2 - 0.012982 X3 -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans =

Page 23: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 23

21 ans = 25 -35.6780720 + 6.2000590 X - 0.2492420 X2 + 0.0033250 X3 -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 25 ans = 30 186.90038750 - 20.50933800 X + 0.81913342 X2 - 0.010920 X3 -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_¬_-_-_-_-_-_- entre xi y xf: ans = 30 ans = 36

-353.4432000 + 33.5248900 X - 0.9820040 X2 + 0.0090926 X3

0 5 10 15 20 25 30 35 404

6

8

10

12

14

16

5 10 15 20 25 30 355

6

7

8

9

10

11

12

13

14

15

X

88630835302628377/2251799813685248-...+5241523402050519/576460752303423488 (X-30)3

Page 24: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 24

Polinomio de Newton clear;clc; disp('métodos numéricos'); disp('interpolación'); n=input('ingrese el grado del polinomio, n='); fprintf('Se necesitan %.0f puntos\n',n+1); disp('ingrese los puntos'); for i=1:n+1 fprintf('x%.0f=',i-1); X(i)=input(' '); fprintf('y%.0f=',i-1); Y(i)=input(' '); end DD=zeros(n+1); DD(:,1)=Y; for k=2:n+1 for J=k:n+1 DD(J,k)=[DD(J,k-1)-DD(J-1,k-1)]/[X(J)-X(J-k+1)]; end end disp('La matriz de diferencias divididas es:'); disp(DD); disp('El polinomio de Newton es'); syms x; polnew=DD(1,1); P=1; for i=1:n P=P*(x-X(i)); polnew=polnew+P*DD(i+1,i+1); end polnew=expand(polnew); pretty(polnew); x=input('ingrese el valor de x a interpolar,x='); vi=eval(polnew); fprintf('el valor interpolado es %.2f\n',vi); hold on; ezplot(polnew,[X(1) X(n+1)]); plot(x,vi,'r+'); Ejemplo:

ix 0 1 2 3 4 5 6 7

iy 0 25 34 72 115 92 71 65

métodos numéricos interpolación ingrese el grado del polinomio, n=7

Page 25: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 25

Se necesitan 8 puntos ingrese los puntos x0= 0 y0= 0 x1= 1 y1= 25 x2= 2 y2= 34 x3= 3 y3= 72 x4= 4 y4= 115 x5= 5 y5= 92 x6= 6 y6= 71 x7= 7 y7= 65 La matriz de diferencias divididas es: 0 0 0 0 0 0 0 0 25.0000 25.0000 0 0 0 0 0 0 34.0000 9.0000 -8.0000 0 0 0 0 0 72.0000 38.0000 14.5000 7.5000 0 0 0 0 115.0000 43.0000 2.5000 -4.0000 -2.8750 0 0 0 92.0000 -23.0000 -33.0000 -11.8333 -1.9583 0.1833 0 0 71.0000 -21.0000 1.0000 11.3333 5.7917 1.5500 0.2278 0 65.0000 - 6.0000 7.5000 2.1667 -2.2917 -1.6167 -0.5278 -0.1079 El polinomio de Newton es 14867 35167 65347 6767 1991 449 34 - -------- x - -------- x3 + -------- x2 + ------ x4 - ------ x5 + ----- x6 - ---- x7 420 180 360 72 90 180 315 ingrese el valor de x a interpolar, x=2.5 el valor interpolado es 47.39

0 1 2 3 4 5 6 7

0

20

40

60

80

100

120

x

-14867/420 x-35167/180 x3+65347/360 x2+...-34/315 x7

Page 26: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 26

Estadística Los parámetros estadísticos más usuales son:

mean(x) Media aritmética mode(x) Moda

median(x) Mediana std(x) Desviación típica muestral var(x) Varianza muestral

prctile(x,p) Percentil de orden p >> x=[300 450 470 490 510 510 525 550 600 700]; >> mean(x) ans = 510.5000 >> mode(x) ans = 510 >> median(x) ans = 510 >> std(x) ans = 103.1302 >> var(x) ans = 1.0636e+04 >> prctile(x,25) ans = 470

• Distribución de Frecuencias >> x=[3.6 4.3 4.5 4.6 4.6 4.8 4.9 4.9 5.0 5.1 5.8 4.4 4.5 5.0 5.6 4.6 4.9 5.0 5.0 5.1 3.9 4.3 4.5 4.6 4.7 4.8 5.3 4.6 5.2 4.9 5.8 4.8 4.5 4.6 4.8 4.9 4.9 5.0 5.1 5.1 5.5 5.6 5.2 4.3 4.8 4.9 4.3 5.3 4.6 5.1 5.3 5.0 3.8 4.9 5.3 5.7 5.7 5.2 5.2 5.0 5.2 5.4 5.1 5.4 5.3 5.9 6.0 6.1 6.0 6.3 5.8 5.9 5.8 5.2 4.6 5.1 4.2 5.3 4.0 5.5]; %Para definir las marcas de clase >> m=[3.75 4.25 4.75 5.25 5.75 6.25]; %Para obtener las frecuencias absolutas en cada clase >> f=hist(x,m) f =

Page 27: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 27

4 10 29 23 12 2 %Frecuencias absolutas acumuladas >> F=cumsum(f) F = 4 14 43 66 78 80 %Para obtener las frecuencias absolutas en 6 clases >> f=hist(x,6) f = 4 10 22 28 10 6 % Histograma y Curva Normal >> histfit(x,6)

• Distribuciones Notables

Nombre Función de distribución Percentiles Binomial binocdf(x,n,p) binoinv(p,n,p(éxito)) Poisson poisscdf(x,𝜆𝜆) Poissinv(p,λ) Normal normcdf(x,μ,σ) norminv(p,μ,σ) Chi-cuadrado nhicdf(x,n) chiinv(p,n) t-Student ncdf(x,n) tinv(p,n) F de Snedecor fcdf(x,n1,n2) finv(p,n1,n2)

3 3.5 4 4.5 5 5.5 6 6.5 70

5

10

15

20

25

30

Page 28: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 28

PROBABILIDAD Las funciones para cada distribución incluyen: • Función de densidad de probabilidad (pdf) • Función de distribución (cdf) • Inversa de la función de distribución • Media y varianza

• Cálculo de Probabilidades en distribuciones discretas

Binomial para n pruebas independientes con p la probabilidad de éxito binopdf(x,n,p) >> binopdf(5,10,0.5) ans =

0.2461 Poisson de media λ poisspdf(x,λ) >> poisspdf(1,5) ans =

0.0337

• Cálculo de la función de distribución en distribuciones continuas Normal de media µ y de desviación típica σ normcdf(x,µ,σ) >> normcdf(0,1,5) ans =

0.4207 Chi cuadrado con n grados de libertad chi2cdf(x,n) >> chi2cdf(1,5) ans =

0.0374 t-Student con n grados de libertad tcdf(x,n) >> tcdf(1,5) ans =

0.8184

Page 29: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 29

F-Snedecor con n y m grados de libertad fcdf(x,n,m) >> fcdf(1,2,3) ans =

0.5352

• Cálculo de los percentiles en distribuciones, es decir, dada la probabilidad encontrar

la abscisa x tal que F(x)=P(X≤x)=probabilidad Binomial para n pruebas independientes con p la probabilidad de éxito binoinv(probabilidad,n,p) >> binoinv(0.17,10,0.5) ans =

3 Poisson de media λ poissinv(probabilidad,λ) >> poissinv(0.95,5) ans =

9 Normal de media µ y de desviación típica σ norminv(probabilidad,µ,σ) >> norminv(0.95,0,1) ans =

1.6449 Chi cuadrado con n grados de libertad chi2inv(probabilidad,n) >> chi2inv(0.1,5) ans =

0.0374 t-Student con n grados de libertad tinv(x,n) >> tinv(1,5) ans =

1.6103

Page 30: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 30

• Podemos obtener la media y la varianza de la distribución con las funciones siguientes:

Binomial para n pruebas independientes con p la probabilidad de éxito [m,v]=binostat(n,p) >>[m,v]=binostat(8,0.3) m =

2.4000

v = 1.6800

Poisson de media λ [m,v]poisstat(n,p) >>[m,v]=poisstat(8) m =

8

v = 8

Chi cuadrado con n grados de libertad [m,v]=chi2stat(n,p) >>[m,v]=chistat(8) m =

8

v = 16

t-Student con n grados de libertad [m,v]=tstat(n,p) >>[m,v]=tstat(8) m =

0

v = 1.3333

Page 31: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 32

Contraste de Hipótesis para la Media con n>30

[h,p,ci,t]=ztest(x,μ,S,α,-1) %“cola izquierda” 0 0

1 0

H :

H :

[h,p,ci,t]=ztest(x,μ,S,α) %“bilateral” 0 0

1 0

H :

H :

[h,p,ci,t]=ztest(x,μ,S,1) %“cola derecha” 0 0

1 0

H :

H :

El valor devuelto de h=0 indica que el test no rechaza la hipótesis nula al nivel de significación del 5% por defecto. El valor devuelto de h=1 indica que el test rechaza la hipótesis nula al nivel de significación del 5% por defecto, a favor de la hipótesis alternativa H1 >>x=normrnd(10,1,1,35) %Valores aleatorios de N(10,1) en 35 columnas

>> [h,p,ci,z]=z,test(x,10,0.05) 0

1

H : 10

H : 10

h = 1 %La evidencia es suficiente para rechazar H0 p = 0 %p-valor ci = 10.3113 10.3444 %Intervalo de confianza para 1-α z = 38.7944 %Estadístico de contraste

Contraste de Hipótesis para la Media con n<30 [h,p,ci,t]=ttest(x,μ,α,-1) % “cola izquierda” [h,p,ci,t]=ttest(x,μ,α) % “bilateral” [h,p,ci,t]=ttest(x,μ,α,1) % “cola derecha” El valor devuelto de h=0 indica que el test no rechaza la hipótesis nula al nivel de significación del 5% por defecto. El valor devuelto de h=1 indica que el test rechaza la hipótesis nula al nivel de significación del 5% por defecto, a favor de la hipótesis alternativa H1 >>x =[185 200 186 197 185] %Vector con los datos de la muestra

>> [h,p,ci,t]=ttest(x,190,0.05) 0

1

H : 190

H : 190

h = 0 %La evidencia no es suficiente para rechazar H0 p = 0.8631 % p-valor ci = 181.5350 199.6650 % Intervalo de confianza para 1-α t = tstat: 0.1838 %Estadístico de contraste

Page 32: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 33

df: 4 %Grados de libertad sd: 7.3007 %Desviación típica

Contraste de Hipótesis para la diferencia de Medias con n<30 y varianzas iguales

>> [h,p,ci,z]=ztest(x,y,α,-1) 0 x y

1 x y

H :

H :

>> [h,p,ci,z]=ztest(x,y,α) 0 x y

1 x y

H :

H :

>> [h,p,ci,z]=ztest(x,y,α,1) 0 x y

1 x y

H :

H :

Prueba de la Bondad del Ajuste (Chi-cuadrado o Pearson) >> [h,p,st] = chi2gof([35 45 55 65 75], 'Ctrs',[35 45 55 65 75], 'Frequency', [16 22 20 19 23]) h = 1 % Hipótesis alternativa p = 0.0347 % p-valor st = chi2stat: 6.7247 % estadístico de contraste df: 2 % grados de libertad edges: [30.0000 40.0000 50.0000 60.0000 70.0000 80.0000] O: [16 22 20 19 23] %frecuencias observadas E: [12.6136 20.6095 27.7004 22.9290 16.1476] %frecuencias esperadas

Pruebas con Tabla de contingencia

>> n=[56 60 62 59;44 40 38 41] n = 56 60 62 59 44 40 38 41 %frecuencias observadas >> f=sum(n) f = 100 100 100 100 %suma por filas >> c=sum(n') c = 237 163 >> e=(c'*f)/sum(sum(n)) %suma por columnas e = 59.2500 59.2500 59.2500 59.2500 40.7500 40.7500 40.7500 40.7500 %frecuencias esperadas >> chi=sum(sum((n-e).^2./e)) chi = 0.7766 %estadístico de contraste >> p=1-chi2cdf(chi,3) p = 0.8551 %p-valor

Page 33: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 33

Disttool

Es una herramienta de MATLAB que permite visualizar de forma gráfica las características de cada distribución con la posibilidad de variar sus parámetros. Las funciones que muestra son:

Función de densidad o de probabilidad (PDF) Función de distribución (CDF)

Por defecto la ventana se abre con la distribución N(0,1) y representando la función de distribución de probabilidad.

Obviamente se puede modificar cualquier ventana

-8 -6 -4 -2 0 2 4 6 80

0.2

0.4

0.6

0.8

1

-8 -6 -4 -2 0 2 4 6 80

0.2

0.4

0.6

0.8

Page 34: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC 34

Calculamos las probabilidades

Calculamos los percentiles

-15 -10 -5 0 5 10 150

0.2

0.4

0.6

0.8

1

-8 -6 -4 -2 0 2 4 6 80

0.2

0.4

0.6

0.8

1

Page 35: ETSI de Topografía, Geodesia y Cartografía Laboratorio de ...asignaturas.topografia.upm.es/matematicas/Metodos/Practica/MatLab… · (Pequeño manual de MatLab) En lo que sigue,

ETSI de Topografía, Geodesia y Cartografía

U. D. de Matemáticas de la ETSITGC

Cambiamos la distribución

0 1 2 3 4 5 6 7 8 9 100

0.2

0.4

0.6

0.8

1

1.2

0 1 2 3 4 5 6 7 8 9 100

0.2

0.4

0.6

0.8

1