Example: confidence

Tutorial de Matlab. - canal.etsin.upm.es

Tutorial de Souto un Tutorial de matlab porque en C alculo Num erico es importante poderrealizar r apidamente y con exactitud los c alculos elementales que son necesarios paralos diferentes ejercicios. matlab es una herramienta potent sima, casi est andar parac alculos en muchas ramas de la Ingenier a, y de uso razonablemente simple. Haremosuna descripci on de los elementos b asicos de matlab y remitimos al estudiante interesadoa cualquier edici on del manual de referencia del programa[2] para un mejor conocimientodel mismo. Tambi en es interesante el libro sobre matlab de Higham y Higham[1] yuna buena referencia en castellano con ejemplos procedentes de problemas en C alculoNum erico es el de Quintela[3].1 Conceptos b arrancar matlab , se procede como con cuaquier programa Windows, o sea, Inicio,Programas, matlab o Student matlab caso de que utilicemos la versi on educacional.

Presentamos un tutorial de Matlab porque en C´alculo Num´erico es importante poder realizar r´apidamente y con exactitud los c´alculos elementales que son necesarios para

Tags:

  Tutorials, Matlab

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Advertisement

Transcription of Tutorial de Matlab. - canal.etsin.upm.es

1 Tutorial de Souto un Tutorial de matlab porque en C alculo Num erico es importante poderrealizar r apidamente y con exactitud los c alculos elementales que son necesarios paralos diferentes ejercicios. matlab es una herramienta potent sima, casi est andar parac alculos en muchas ramas de la Ingenier a, y de uso razonablemente simple. Haremosuna descripci on de los elementos b asicos de matlab y remitimos al estudiante interesadoa cualquier edici on del manual de referencia del programa[2] para un mejor conocimientodel mismo. Tambi en es interesante el libro sobre matlab de Higham y Higham[1] yuna buena referencia en castellano con ejemplos procedentes de problemas en C alculoNum erico es el de Quintela[3].1 Conceptos b arrancar matlab , se procede como con cuaquier programa Windows, o sea, Inicio,Programas, matlab o Student matlab caso de que utilicemos la versi on educacional.

2 Unavez arrancado aparece el cursor con el s mbolo (>>) o (EDU >>), indicando que puedesintroducir ordenes. De hecho, en este Tutorial , cuando veas este s mbolo, es que tienesque introducir por teclado la orden que aparece escrita a la derecha del utilizaci on m as b asica de matlab es como calculadora1. As por ejemplo, puedescalcular cos(5) , para lo cual debes introducir2:>>cos(5)*2^ = mantiene en memoria el ultimo resultado. Caso de que ese c alculo no se asigne aninguna variable, lo hace a una variable por defecto de nombreans. Si quieres referirtea ese resultado, hazlo a trav es de la variableans, y si no asignas ese nuevo c alculo aninguna variable, volver a a ser asignado aans.>>log(ans)ans = este momento os podr ais preguntar si este ha sido un logaritmo decimal o neperiano(natural). Para saberlo, deb eis pedir ayuda sobre el comandologutilizando:>>help logLOG Natural (X) is the natural logarithm of the elements of results are produced if X is not also LOG2, LOG10, EXP, de este modo, es similar a una calculadora programable, aunque bastante m as vers argumentos de las funciones trigonom etricas siempre est an en defecto, los resultados aparecen con 4 cifras decimales.

3 Si necesitares m as precisi onen los resultados, puedes utilizar la ordenformat longy repite los c alculos:>>format longPara recuperar una orden y ejecutarla otra vez o modificarla se usan la flechas arriba yabajo del cursor , . Presionemos hasta recuperar la orden:>>cos(5)*2^ = la siguiente operaci + la siguiente operaci + de que necesit eis referiros a determinados c alculos pod eis asignarlos a variables yas recuperarlos despu es mediante esas variables. Por ejemplo, pod eis con recuperar laorden cos(5) asignar su valor a la variablex. Luego pod eis utilizarla para otrosc alculos.>>x=cos(5)*2^ = >>y=log(x)y = la siguiente operaci + asignarla a la la siguiente operaci + asignarla a la es muy f acil recuperar ordenes previas podemos utilizar esta idea para simular lost erminos de una sucesi on recurrente. Por ejemploxn+1=cos(xn)>>x= = >>x=cos(x)x = >>x=cos(x)x = >>x=cos(x)x = >>x=cos(x)x = >>x=cos(x)x = >>x=cos(x)x = la operaci on anterior hasta que se estabilice el cuarto decimal dexde un paso al el formato para que otra vez se vean s olo cuatro porx= 100repetir la operaci onx=x (x2 81)/2/xhastaque se converja en el cuarto decimal.

4 Qu e relaci on hay entre el ultimoxy 81?Ejercicio A como vuestro DNI. Empezando porx= 100repetir la operaci onx=x (x2 A)/2/xhasta que se converja en el cuarto decimal. A qu e ha convergidola sucesi on?A veces es bueno apagar y encender la calculadora para borrar todo y empezar denuevo. Esto se hace con la ordenclear. Hay que tener cuidado al utilizarla pues nosolicita confirmaci on, y sus resultados son definitivos.>>clear>>x??? Undefined function or variable x .Ejercicio el valor de A igual que acabamos de preguntarx. Tiene sen-tido el resultado?2 Manejo de crear y almacenar en memoria un vectorvque tenga como componentesv1= 0,v2= 2,v3= 4,v4= 6 yv5= 8 podemos hacerlo componente a componente:>>v(1)=0v =0>>v(2)=2v =0 2>>v(3)=44v =0 2 4>>v(4)=6v =0 2 4 6>>v(5)=8v =0 2 4 6 8O, para simplificar la creaci on de vectores, se puede definir un vector especificando suprimer elemento, un incremento, y el ultimo elemento.

5 matlab rellenar a ese vector. As podemos definir igualmente el vectorvcomo una secuencia que empieza en 0, avanza de2 en 2 y que termina en el 8:>> v = [0:2:8]v =0 2 4 6 8>> vv =0 2 4 6 8Si ponemos ; al final de una l nea de comandos, cuando pulsemos la tecla Enter paraejecutarla, se ejecutar a pero no mostrar a el resultado. Esto es muy util algunas veces:>> v = [0:2:8];>> vv =0 2 4 6 8 Podemos construir el vectorveditando directamente entre los corchetes las componentesdel vectorv:>>v = [0 2 4 6 8];>> vv =0 2 4 6 8 Puedes acceder f acilmente al contenido de una posici on del vector, por ejemplo la primera.>> v(1)ans =0O modificarla:>> v(1)=-3;>> vv =-3 2 4 6 85O hacer operaciones entre componentes,v2 v35:>> v(2)*v(5)^3ans =1024 Ejercicio la suma de los elementos dev, elemento a trasponer un vector una matriz se usa el ap ostrofo que es el acento que est a en lamisma tecla que el signo de interrogaci on ?

6 >> v ans =-32468 Como hemos comentado, para recuperar una orden y ejecutarla otra vez o modificarla seusan la flechas arriba y abajo del cursor , . Presionemos hasta recuperar la orden:>> v(1)=-3;Modifiqu emosla para dejar el valor original>> v(1)=0;Al definir ese vectorvde 5 componentes, en realidad lo que definimos es una matriz filade cinco columnas, o sea un matriz de 1x5. Esto lo podemos comprobar si preguntamosel tama no devutilizando la sentenciasize:>>size(v)ans =1 5que nos indica quevtiene una fila y 5 un nuevo vector que sea el traspuesto devy aplicar a ese vectorel comandosize. Es coherente el resultado?3 Introducci on al tratamiento de una introducci on a la definici on y manipulaci on de matrices. Se supone quehas seguido la secci on anterior y dispones de los conocimientos b asicos sobre la definici ony manipulaci on de vectores usando matlab .

7 Definir una matriz es muy similar a ladefinici on de un vector. Para definir una matriz, puedes hacerlo dando sus filas separadaspor un punto y coma (tener cuidado de poner los espacios en blanco!):6>> A = [ 1 2 3; 3 4 5; 6 7 8]A =1 2 33 4 56 7 8o definirla directamente fila a fila3:>> A = [ 1 2 33 4 56 7 8]A =1 2 33 4 56 7 8Se puede modificar alguno de los elementos de la matrizA, accediendo a cualquiera desus posiciones, por ejemplo:>> A(2,2)=-9A =1 2 33 -9 56 7 8 Dejemos su valor original:>> A(2,2)=4;De igual modo, puedes considerarla como una fila de vectores columna:>> B = [ [1 2 3] [2 4 7] [3 5 8] ]B =1 2 32 4 53 7 8(Otra vez, es importante colocar los espacios en blanco.)Ejercicio los elementos diagonales de la matrizA, refiri endonos a ellos,elemento a sumar o restar matrices para tener otras matrices.

8 >>C=A+BC =2 4 65 8 109 14 163 Esto es lo que yo suelo la matrizD= 2B en podemos multiplicarlas.>>C=A*BC =14 31 3726 57 6944 96 117 Ejercicio la matrizD=B A la matrizC= definir algunos tipos especiales de matrices, como por ejemplo una matriz de3x3 que tenga todos sus elementos nulos.>>I=zeros(3)I =0 0 00 0 00 0 0 Podemos modificar sus elementos diagonales para tener la matriz identidad, para lo cualdebes usar para modificar la definici on del primer elemento, cambiando los ndices paradefinir los dem as.>>I(1,1)=1;>>I(2,2)=1;>>I(3,3)=1I =1 0 00 1 00 0 1 Ejercicio la matrizD=B A BcomoD=B(I A).Otra forma de definir la matriz identidad es a trav es de la funci ondiag, que recibe unvector que convierte en diagonal de una matriz cuyos otros elementos son nulos.>>J=diag([1 1 1])J =1 0 00 1 00 0 1 Ejercicio una matrizDdiagonal cuyos elementos sean 2,1, ayuda de la funci on eye, y definir la matriz diagonal de Definici on de pueden definir subvectores o submatrices muy facilmente.

9 Si definimosvcomo:>> v = [0:2:8]v =0 2 4 6 8 Podemos definir un vectoreque sean las tres primeras componentes del vectorvcomo:>> e=v(1:1:3)e =0 2 4 Esta orden es equivalente a la siguiente, pues cuando el incremento es la unidad:>> e=v(1:3)e =0 2 4 Como comentamos al principio, la notaci on usada por matlab sigue en lo posible lanotaci on est andar de Algebra Lineal que ya conoc eis. Es muy sencillo multiplicar matricesy vectores, teniendo cuidado de que las dimensiones sean las adecuadas.>> A*v(1:3)??? Error using == *Inner matrix dimensions must agree.>> A*v(1:3) ans =162846 Acost umbrate a ver ese mensaje de error! Una vez que empiezas a trabajar con vectoresy matrices, es sencillo olvidar los tama nos de los objetos que has el comandosize, razona sobre los problemas en lo que se refierea dimensiones en la multiplicaci on pueden extraer columnas o filas de una matriz.

10 Por ejemplo, quiero queCsea latercera fila de la matriz A:>> C=A(3,:)C =6 7 8O queCsea la segunda columna de la matrizB9>>C=B(:,2)C =247O queDsea la submatriz cuadrada de orden dos inferior derecha de la matrizA.>> D=A(2:3,2:3)D =4 57 8 Una vez que eres capaz de crear y manipular una matriz, puedes realizar muchas opera-ciones est andar. Por ejemplo, puedes calcular su inversa. Tienes que tener cuidado, dadoque las operaciones son c alculos num ericos realizados por ordenador. En el ejemplo,Ano es una matriz regular, y sin embargo matlab devolver a su inversa, pues los errores deredondeo durante su c alculo convierten eninvertiblea dicha matriz.>> inv(A)Warning: Matrix is close to singular or badly may be inaccurate. RCOND = = +15 * la matrizBs que es posible calcular su inversa:>>inv(B)ans = 0 Ejercicio una matriz de nombreB1como la inversa de B.


Related search queries