Vous êtes sur la page 1sur 13
Latex & Matlab Preparaciones preliminarias Uno de los abjetivos transversales del curso son el manejo de IsTiXcomo entorno de redaccién de informes, y el manejo de MATLAB como entomo de programacién 1 Instalar Xen su computador alterativamente generar una cuenta de sharelatex’(btps:/fwwwsharelatex.com) += Instalar MATLAB (Octave) en su computador Entorno compatacional Hay varia programas con sintaxis muy equvalentes que son Lueres en la manipulacin de vectores y matrices = Matlab = Octave + Scilab Mallab es mas antiguo y establecido, pero un software comercial, mientras los demas son de software libre. También hay vatianes disponibles en lines como http: //octave-on line .net/ o Unos conceptos iniciales de MATLAB 25 31, art 5 61 true/false ‘Observar que hace el siguiente cédig: 1-508 Introduceién a ISTEX 1 Instalacién de BEX Para comenzar con IATHX, el primer paso sorfa a instalacién de un editor. La abla, https: //on, wikipedia. org/viki/Conparison_of TeX editors presenta una serie de opciones de editores. Por ejemplo, un editor que corre en. varios sistemas operativos es texmaker 2 Ejemplo simple La estrucutra més bésica de un documento IAT3Kes la siguiente: \docunentclass{article} 4X (definiciones previos) \bogin{docunent) ‘| (contenide det decuxente) \end{docurent) alo mejor revisen los conceptos que utiliza éste documento. 3 Manual ‘Como manual de ISTeXsirve el siguiente enlace, en particular en particular hay tuna parte sobre matemitica, hetps://enwikibeoks.org/uiks/LaTex/ beeps: //en.wikibooks.org/viks /LaTeX/Mathenacics Bnlace al archivo fuente de este archivo: http: //tinyurl -con/kaBxeuy 4 Unos conceptos 4.1 Tablas A ura table como la Tabla 1 se reflere sin parentesis, ol mismo modo a figuras como la Figura 4.2 bok & & wow hw ‘Table 1: Datos experimentales 42 Figuras ) Figure 1: Titule de figura: (8) ..., (b) descripeion corresondiente 4.3. Aplicar definiciones de “newcommand” r a), 418), 6)" 4.4 Color y tilde texto en azul 4.5 Ecuaciones Aun ecuscién podemos referirnos por (1) 4.6 Matrices tne {t tan 4.7 Aplicar definiciones de “newtheorem” Definition 1 Aqui viene la definietsn. 2 Funciones de matemiticas elementales que operan escalares, 2.1 Funciones elementales Matlab cuenta con rutinas para caleular Ins funeiones poten exponencial y logaritmo: serie] Topi OC] icon Sen ‘antz) Tangent Talante) [arco tangents (devuelve un valor eae pS) cosht=} cGeano Mipablcn 2.2 Formatos numéricos Matlab por defecto, despliega solo cuatro digites después de Ia coma (short) dlespliega la notacisn cientfica, Si quercmes ver mayor exactitud, c= més ciftas, nes comands! Tormato Tong Tong © racionat Para desplegar eu pantalla debe >> format long, P ans = 3.141592659580703 yer el ccuszudo Foust, eu wiodo de e} up 221 Bjercis Usande fermat short, leng realizar Ins iguientes cperaciones: 1 8 + sind + log! av 3 2.3 Vectores y matrices Para ingresar un vector fila debeuos identilicar el veetor a ingresar (por convencin cot Ietras rminiscubs), colocar el signa igual, abrir corchetes © ingresar Ios valores del vector separades por cspacios o comas. Si quetemos inatesar vectores columnas, al ingresar los valores las debemas separar con punto coma, >x=[1.23] solo tenemos que aerogarle els Importante: Se debe tener euidado con la dimensign de las mattiees y vectores para hacer oper Pata ingresar matrices (por comoucion se usin Ita mays), se inggesin los lamentoe dle le fas sepatviae por comas ()¥ para separa la fils realizn par panto y coma (2). Pot eal: > ASpascal(3) AS Para calcular los valores propies de una matriz se usa el comando eig, por eemplo: > eigcA) oz 1 7s7208 Para calolar Ios vectors pr fama: >IV.D|-.§) v mplemente se hace con el 0554984 0.81650 0.19982 O,TSI2 “040825 9.47225 -0,30646 0.40825 D8 D orm 0 0 0 1 oo oo 7.87298 Donde las columnas de la matriz V comespande a loe vectores propios y la diagonal de ka matuiz D son los valores propics. queremos saber el tamafio de una matriz usamos el comand size(matri:). (A) 33 ‘queremos saber el tamafio de una matriz usamos el comando size(matriz). 2.4 Operaciones basicas Debemos toner en cuenta que para sumar y restar matrices las dimensiones tienen que ser las mmjsmas, poro al multiplicar las matrices A+ 2, ef némero de columnas de A debe ser igual al nimero de filas de 2. En tanto para una matrices cusdrada podemos calcula st inversa, deterninante y range ut lizando los cotandos iuv(matriz), det(matriz), rank(matri=) respectivanente, 2.4.1 Ejercicios: 1, Cale he siguientes opsraconss @ (ven -2 ale © dot(( YE 1316 2 @( 2 -n u “1-6 8 11a @{-1 0 ot 5 8 3 a {ts m2 Oly 1s 4 6 5 Ademés existen eemplos de matrices que se generan automAtic trega una mat idetidd de ang Xm eel!) ate. Por ejemplo, eye/n) en Para mis ejemplos, referitse al Help, 3 Graficas 3.1 Plot La funci6n graficadora es el plot, de la cual podemos obsewvar que st sintaxis es de la siguiente fama Definamos para los ejemplos 2 = [0,1,2,3 « plot(y) toma el vector y como Tos valores fija desde el 1 en adelante, eye Y, quedando les valores del eje X de forma « plot(e,y) toma al vector + como los valores del eje X, adams toma al vector y como Joe valores del eje Ys Adens el comando plot nos dé la opeién de cambiar el estilo de linea, de los puntes y el color de estos, observemies esto en més detalle # plot Dibuja una linea discontinus en rojo plot(z, y's!) ja los puntos como cuadraddos « plot(z, +r) Dibuja los puntos como cruces eu 1950 « plot(x, y/ 9’) Dibuja una linea continua en verde Hay algunos aspoctos de las gréficas que podemos cam e( titulo de la gratica’) «+ sabe nombae dele x’) camo por ejemplo: * ylabelombre dl ee y°) Veeanos un ejemplo e= 0:01: 24p% y= sin(2) plot(z,y) litle’y = sin(z) label(eje2") plabelepe) Calculo Numérico Tutorial MATLAB, Parte 2 Primer semestre 2016 1 Nociones de programacién Para poder utilizar y programar vatios in¢todos mumnéticos es necesario repetir operacienes en ciclo, ‘ones ¥; lo més importante, suardar el traba‘o, Vamos a revisar cada uno de estas detalle a continuacisn, Por omision, Matlab suarda las operaciones realizadas en el Command history. Sin embargo. si (queremes realizar yarias cperacionss comecutimas debetnos ejecutar linea por Iinea cada uns de clas, Para automatizar este procedimiento, se puede crear un archivo con los miisines comvandos y ejecutar el archivo exactamente como si se eecutara cada linea, La ventaja es que el archivo puede ceditarse, guardarse, y mejorarse. Para acceder a estos archivos, en la pestatia FilesNeu, se escoge Mefile y aparece una pantalla nueva yen blanco, Auf se eseriben los comandos tal cual se eseriber Para ejecutar los comandes secuencialmente se accede a la pestafia Debug y se presicna Save ‘and Hun, o bien simplemente F5, Al stabatlo, por ciisién se escoge la carpeta work, pero puede ta ubicacicn, Bjercicio 1: Escaiba en vim archivo M la mataiz A y el veetor > 12345 1 23456 1 A=|3 4567 be] 45678 1 56789 1 y Inego calenle tn producto Ab, les potencias B — A2,c ~ AT y lx inversa D — sinv(A). Notar ‘como el Workspase va mostrando Ios tamaizeros de datos y sus tipas que requiere cada variable. Para Himpiar 1a pantalla de a ventana de comandos, Ie mena clear. ALA Ciclos for Cualquier lenguaje que se requieva para programar algorimos numéticos requiere de ciclos for. En cl'caso de Matlab, es muy simple: for tar-incexpasotennano .. end, con jas epson. Por ‘ott lado, para slides amianbles se utiliza el comands printf como en € cio 2: En um archivo M, caleular lbs eundrados de ls maith Calcule Jos valores de Ia sucesién 2» = 1, 9.41 = 2/2 de 1a 100. Aj qué valor parece converger? Utilice el Help para mostrar més decimales. Ademas, cambie «ro y observe sn qué valor converge la sucesin, AZQue pasa 5 z5~ 0? de 3 entre 1 y 100. todos numérivos requicre de un elemento condicional que inguir casos, Eu Matlab so utiliza if condicién 1 elseif condicicn 2 .. else .. end, Bjercicio 4: Cou ta funcicn logica isprime determine los primios del 2 al 1000 141.3 Ciclo condicional while Para calcular resultados que depend de una conticién, por ejemplo con error menor que 10", c= considerar cilos while. Su sintaxis es while conticiin .eud, Ejercicio 5: A;Como no sabemos qué tan grande pueden set fos prin cele tos cien primexos primos, Bjercicio 6: Con la sucesién dala en ol Ejerccio 3, calcutar of teaming de ta sucesion qu epresiina a v2 con ent 10-* partiends de 29 = 01. utilizando wl 2. Representacién de Nimeros 2.1 Espacio entre nimeros y el nimero mas pequeiio Matlab representa Joe mimeros en ls formatos de C come integer; float y otros. Cada una de estos fermatos tine asociado un conjumto de mimetos, Utiizand el Help, se puede averizuar cl rango y Ip precision de nimmeros que se pusde representar, Ia noma IEEE 754 Notar que ene ca de float el nimero més peti quese puede representa e 4910056458412405 10 y se obtiene con a funcn eps(0) que calcula distancia al vecino derecho del argnmsento conyunto de nimneros tepresctados por flat. Fete puede considerate cl ximiero uns pesqucio 108, k= 1:20, ferentes vecinos de Ine potent en eps(0) para single y double. Revisar el Help. nrimero mis pequeno. entances A; Cusnto vale eps(0)?? Antes de fa ser la respuesta, Eneentzar Is Si eps(0) 2.2 El némero mis grande Anslogamente al nimero ms pequeiio, existe el nimero ms grande que se puede representar para luego denotar cualquier nfmero supetier como infinito, en Matlab Inf. Sus operaciones de suma, mmulliplicacién ¥ potencias quedan en Inf, como en el caso de operaciones de infinito para limites. Bjercicio 10: Encontrar el nimero més grande antes de Inf. Se recomienda utilizar potencias de 2. Caleular =u eps Bjercicio 11: Caleular Inf +Inf, Inf-elnf, Inf®, AgCusmto es 00 ~o0? Caleular Inf — nf. Bjercicio 12: Encontrar los rangi de mimetos con Ins funcicnes reatmin y realm diferentes tipos de dates mum¢ricos integer y float. Notar que hay més de un tipe de dat Encontrar cimo couvertir enteros de diferente tamafio en bytes, AzSe pode convertir un float a integer? tra variable reservada es Na. que significa No es un nuimero (Not a tuambex) ¥ comespon: ‘operaciones no vidas en la representacion flotante. En el caso de operaciones indelinidas como 0/0 tuotras, s utiliza Va.N para representar alguna salida, Cuando se realizan operaci se invierten matrices, suelen aparecer yesultades no representables que Matlab denata por NaN. Bjercicio 13: Revisar el Help para conocer mejer los cases en que se representa por NaN Tes das de los culos intefinidos. Lineamentos generales para la programacién = Hay que sincronizar la carpeta dona se ejecuta Matlab con a carpeta donde los archivos. La carpeta onde se ejecute Matlab podemos determinar con pd, los archives de la catpeta 1s, podemsos subir la carpeta con cat navegar a una subearpeta con cd nombre~de Por cierto también podemos navegar por las carpetas por el ment. = Siempre puede que ocurtir que algo en Matlab es pegado (no se pueden guardar los archivos), entonces habri {que reiniciar ol programa Depuracién ‘entificar/sslar el problen Un concept clave es lo dep (debugging) es decir encontrar el error. Lo clave es identitionr a donde exactamente ocurte el problema. Una estrategia para aislar el problema serfa reducir el e6digo. Procedimiento + ubicar dande el error: en caso necesario habri que verficar el buen funcionamiente fila por fila = vera situacién inmediatamente antes del error + ldentificar y visualizar las variables relevantes Em tipicos ose cumple con la sntanis + las variables (0 funciones /subratinas) elevantes no sn definidaso con un formato malo Procedimiento para identifica el error: = Corre el e6digo paso a paso = Verficar que cada paso es correcto 1 Probar toda Ia sntaxs (de operaciones y funciones) en ejemplos simples Visualiza los variables reevantes Visualizar formato y valores de variables 1 whos / whos nombres-de-varishles 1 enlistar las variables que queremos vsualiza 1 .-si los variabes son muy largas, entonces podemos guardar los variables en un archivo con save... ver help save Siempre = dar cuenta cual es a sintaxis + avanzar de ejemplos mis simples ejemplos més complejos 1 reducir ituaciones complicadas a situaciones mis simples bB Procedimiento No correr todo del codigo y pasar a lo subsiguiente, sino se entiene cada detalle del cédigo uilizado, * Se recomicnde anslizar el c6dio fle-por-fila += Bn cada fila modificar cada uno de sus elementos

Vous aimerez peut-être aussi