Polinomios
#$u" es %atla&'( %!)ri* +!,oratory
-s un lenua.e de proramación /inicialmente escrito en 01 para
realiar cálculos num"ricos con vectores y matrices 0omo caso
particular puede tam&i"n tra&a.ar con números escalares(
tanto
reales como comple.os
Elementos básicos del escritorio de Matlab
Command Windows5 Donde se e.ecutan todas las instrucciones y
proramas 6e escri&e la instrucción o el nom&re del prorama
y se da a -nter
Command istory5 %uestra los últimos comandos e.ecutados en 0ommand
7indo8s 6e puede recuperar el comando 9aciendo do&le
C!rrent directory5 6ituarse en el directorio donde se va a
tra&a.ar
elp /tam&i"n se puede usar desde comand 8indo8s1
0ommand
7indo8s
0urrent
directory
0ommand
:istory
Introducción Elementos básicos del escritorio de Matlab
!&rir el matla& ;sar Vie8 para sacar las ventanas 4ue
9aan falta
Comand Windows5 Donde se e.ecutan todas las instrucciones y
proramas 6e escri&e la instrucción o el nom&re del prorama
y se da a -nter
:acer e.emplo en l<nea de comandos5 *=2>3( y mirar en
8or?space la varia&le *
C!rrent directory5 6ituarse en el directorio donde se va a
tra&a.ar
elp /tam&i"n se puede usar desde comand 8indo8s1 /<ndice(
searc9( D-%O61 Wor"space5 Para ver las varia&les 4ue se están
usando
Editor del Matlab5 )odos los fic9eros de comandos %atla&
de&en de llevar la e*tensión m -n current directoy crear un
fic9ero nuevo main@prue&am( decirles lo de main
0orrer el prorama main@prue&a
Al#!nos comentarios sobre la ventana de comandos
6e pueden recuperar instrucciones con las teclas AB
6e puede mover por la l<nea de comandos con las teclas C
Ir
al comieno de la l<nea con la tecla Inicio y al final
con Fin 0on
-sc se &orra toda la l<nea
Set/Clear breakingpoint 5 0oloca o &orra un punto de
ruptura
en la l<nea en 4ue está colocado el cursor
Clear all breakingpoints:5 ,orra todos los puntos de ruptura
Step: !vana un paso en el prorama
Step in: !vana un paso en el prorama y si en ese paso se llama
a una función( entra en dic9a función
Step out: !vana un paso en el prorama y si en ese paso se
llama a una función( entra en dic9a función
Continue: 0ontinua e.ecutando 9asta el siuiente punto de
ruptura
Quit debugging: )ermina la e.ecución del de&uer
Números y operaciones 'atos n!m(ricos:
No 9ace falta definir varia&les enteras( reales( etc como en
otros lenua.es Números enteros5 a=2 Números reales5
*=E32
%á*imo de H cifras sinificativas
223eE3=223>E3
Precisión y formatos: Por defecto tiene un formato corto( pero se
pueden usar otros
JJ format lon /K cifras sinificativas1
JJ format s9ort / cifras sinificativas1
JJ format s9ort e /notación e*ponencial1
JJ format lon e /notación e*ponencial1
JJ format rat /apro*imación racional1
)er en men* de +ile: Preferences , Command Windows
Números y operaciones 'atos n!m(ricos: 6on sensi&les a las
mayúsculas5 *=( L=M
Información so&re varia&les 4ue se están usando y sus
dimensiones /si son matrices15 Wor"space )am&i"n
tecleando
-- wo
Para eliminar aluna varia&le se e.ecuta
JJ clear varia&le varia&le2
6i se 4uieren &orrar todas las varia&les5 JJ clear / o
clear all Para limpiar la pantalla5 -- clc Constantes
caracter0sticas5 pi=π( NaN /not a num&er( 1(
Inf=
1*meros comple%os5 i=s4rt/E1 /sólo se puede usar i o .1( =2K>i(
=2Ki C!idado con no !sar l!e#o 2i3 como contador en !n b!cle
traba%ando con comple%os.
#unciones %enera"es wos +ista las varia&les actuales y su
tamao
clear +impia las varia&les y funciones de la
memoria
cd 0am&ie el directorio actual de tra&a.o
dir Presenta la lista de arc9ivos en el directorio
pwd Indica el directorio de tra&a.o actual
clc +impia el contenido de la l<nea de comandos
eco eco de los comandos en mEfiles
format !sina el formato de salida /lon( s9or( etc1
%ultiplicación5 >( División5
Potencias5 R
Números y operaciones +!nciones de Matlab:
e7p4758 lo#4758 lo#9475 /en &ase 218 lo#;475 /en
&ase 1( s<rt475
+!nciones tri#onom(tricas5 sin/*1( cos/*1( tan/*1( asin/*1(
acos/*1( atan/*1( atan2/*1 /entre Spi y pi1
+!nciones iperbólicas: sin9/*1( cos9/*1( tan9/*1( asin9/*1(
acos9/*1( atan9/*1
Otras funciones5 abs475 /valor a&soluto1( int4754parte
entera1( ro!nd475 /redondea al entero más pró*imo1( si#n475
/función sino1
&ectores y matrices 'efinición de vectores:
)ectores filaT elementos separados por espacio o comas y encerrado
entre corc9etesT
JJ v =U2 3 K )ectores col!mna5 elementos separados por p!nto y coma
/T1
JJ 8 =U2T3TKTMTHTW
6i los datos son números comple.os de&en encerrarse entre
parantesis
Dimensión de un vector 85 len#t4w5 Generación de vectores
fila5
-specificando el incremento de sus componentes v=a::b -specificando
su dimensión n: linspace4a8b8n5 /por defecto
n=1 0omponentes loar<tmicamente espaciadas
lo#space4a8b8n5 /n
&ectores y matrices 'efinición de matrices: No 9ace falta
esta&lecer de antemano su tamao /se puede definir
un tamao y cam&iarlo posteriormente1
Las matrices se definen por filasT los elementos de una misma fila
están separados por &lancos o comas +as filas están separadas
por punto y coma /T1
X %=U3 K T Y M WT E
Matriz vac0a5 %=U T
Información de un elemento5 %/(31( de una fila %/2(51( de una
columna %/5(31
0am&iar el valor de alún elemento5 %/2(31=T
Generación de matrices5
Generación de una matri de ceros( zeros4n8m5 Generación de una
matri de unos( ones4n8m5 Inicialiación de una matri identidad
eye4n8m5 Generación de una matri de elementos aleatorios
rand4n8m5
!adir matrices5 UL Z columnas( ULT Z filas
Operaciones con 'ectores y matrices6peraciones de vectores y
matrices con
escalares:
v: vector8 ": escalar:
Operaciones con 'ectores y matrices6peraciones con vectores y
matrices:
adición o suma S sustracción o resta > multiplicación
matricial > producto elemento a elemento R potenciación R elevar
a una potencia elemento a elemento [ divisiónEi4uierda
divisiónEderec9a y [ división elemento a elemento matri traspuesta5
>=A3 /en comple.os calcula la
traspuesta con.uada( sólo la traspuesta es >=A.35
#unciones para 'ectores y matrices+!nciones de matlab para vectores
y matrices: s!m4v5 suma los elementos de un vector
prod4v5 producto de los elementos de un vector
dot4v8w5 producto escalar de vectores
cross4v8w5 producto vectorial de vectores
mean4v5 /9ace la media1
diff4v5 /vector cuyos elementos son la resta de los elemento de
v1
?y8"@=ma74v5 valor má*imo de las componentes de un vector /?
indica la posición1( min4v5 /valor m<nimo1 -l valor má*imo
de una matri % se o&tendr<a como ma74ma74M55 y el
m<nimo min4min4v55
#unciones para 'ectores y matrices+!nciones de Matlab para vectores
y matrices
Un(m=size4M5 te da el número de filas y columnas
matri inversa: >=inv4M58 rano5 ran"4M5
dia#4M5: O&tencion de la diaonal de una matri
s!m4dia#4M55 calcula la traa de la matri !. dia#4M8"5
&usca la ?E"sima diaonal
norm4M5 norma de una matri /má*imo de los valores
a&solutos de los elementos de !1
flip!d4M5 reordena la matri( 9aciendo la sim"trica respecto de un
e.e 9oriontal. fliplr4M5 5 reordena la matri( 9aciendo la sim"trica
respecto de un e.e vertical
#unciones para 'ectores y matrices Guardar en fic9eros y recuperar
datos5
save nom&re@fic9ero nom&re@matri(
nom&re@matri2
load nom&re@fic9ero nom&re@matri(
nom&re@matri2
save nom&re@fic9ero nom&re@matri Sascii /uarda W
cifras
decimales1
save nom&re@fic9ero nom&re@matri Sascii Sdou&le
/uarda Y
cifras decimales1
Po"inomios
+os polinomios se representan en %atla& por un vector fila de
dimensión n siendo n el rado del polinomio -.emplo5 *32*EM se
representa por
JJ pol=U 2 EM
0álculo de las ra<ces5 roots /da un vector columna( aun4ue pol
es un vector fila1
JJraices=roots/pol1
;n polinomio puede ser reconstruido a partir de sus ra<ces con
el comando poly
JJ p=poly/raices1 /da un vector fila1 >>
+!nciones de Matlab para polinomios
0alcular el valor de un polinomio p en un punto dado *5
polyval
JJy=polyval/p(*1
0alcular el polinomio derivada: polyder4p5
%r()cos *D y +D +!nciones #ráficas 9' y ' elementales
9': plot45 crea un ráfico a partir de vectores con escalas
lineales so&re am&os e.es(
JJ plot/L(Z(\opción\1 /opción5 permite eleir color y trao de la
curva1
old on: permite pintar más ráficos en la misma fiura /se
desactiva con old off5
#rid activa una cuadr<cula en el di&u.o -scri&iendo
de nuevo rid se desactiva
%r()cos *D y +D +!nciones #ráficas 9' y ' elementales
9': s!bplot4n8m8"5 su÷ una ventana ráfica se puede
en m
particiones 9oriontales y n verticales y " es la su&división
4ue se
activa
9': polar4án#!lo8r5 para pintar en polares
9': fill478y83opción35 di&u.a una curva cerrada y la
rellena del color
4ue se indi4ue en ]opción\
': plot es análoa a su 9omóloa &idimensional plot
B plot3/L(Z(^( \opción\1
%r()cos *D y +D Elección de la escala de los e%es
a7is/U* * y y1 /2D1( a7is/U* * y y 1 /3D1
a7is a!to5 devuelve la escala a la de defecto
a7is off 5 desactiva los eti4uetados de los e.es
desapareciendo los e.es( sus eti4uetas y la malla( a7is on5 lo
activa de nuevo
a7is e<!al5 los mismos factores de escala para los dos
e.es
a7is s<!are5 cierra con un cuadrado la reión delimitada por los
e.es de coordenadas actuales
Para eleir las eti4uetas 4ue aparecen en los e.es5
%r()cos *D y +D +!nciones para aadir t0t!los a la #ráfica
title4Dt0t!loD5 aade un t<tulo al di&u.o Para incluir
en el te*to el valor de una varia&le num"rica es preciso
transformarla mediante 5
int9str4n5 convierte el valor de la varia&le entera n en
carácter n!m9str475 convierte el valor de la
varia&le real o comple.a * en
carácter -.emplo5 title/num2str/*11
7label42te7to35 aade una eti4ueta al e.e de a&scisas
0on 7label off desaparece +o mismo
ylabel42te7to35 o zlabel42te7to35
te7t478y8Dte7toD5 introduce bte*tob en el luar especificado
por las coordenadas * e y 6i * e y son vectores( el
te*to se repite por cada par de elementos
#te7t4Dte7toD5 introduce te7to con ayuda del ratón
%r()cos *D y +D +!nciones de Matlab para #ráficos 9' y '
Imprimir ráficos5 Print /&otón File en ventana ráfica1
Guardar ráficos5 $ave /&otón File en ventana ráfica15 6e crea
un
fic9ero fi 4ue podrá volver a editarse y modificarse
-*portar ráficos5 E7port /&otón File en ventana ráfica1
fi#!re4n5: +lamar una nueva fiura o referirnos a una fiura ya
9ec9a
y= sin/3 *1e*
y2=cos/3 *1e*
3*2yE=
3yEK=3
%r()cos *D y +D epresentación #ráfica de s!perficies
0reación de una malla a partir de vectores ?F8 G@=mes#rid478y5
Gráfica de la malla construida so&re la superficie
^/L(Z15
mes4F8G8H5( mesc4F8G8H5 /di&u.a además l<neas de nivel
en el plano =1
Gráfica de la superficie ^/L(Z15 s!rf4F8G8H5( s!rfc4F8G8H5
pcolor4H5 di&u.a proyección con som&ras de color
so&re el plano
/la ama de colores está en consonancia con las variaciones de ^1
conto!r4F8G8H8v5 y conto!r4F8G8H8v5 eneran las l<neas
de nivel
%r()cos *D y +D epresentación #ráfica de s!perficies
Diferentes formas de representar los pol<onos coloreados5
sadin# flat: som&rea con color constante para cada
pol<ono sadin# interp5 som&rea calculado por interpolación
de colores
entre los v"rtices de cada pol<ono sadin# faceted5
som&reado constante con l<neas neras
superpuestas /opción por defecto1
idden off /desactiva la desaparición de l<neas escondidas1(
idden on /lo activa1
%anipulación de ráficos view4azim!t8 elev58 view4?7d8yd8zd@5
rotate48d8a5 o rotate48d8a8o58 ]9\ es el o&.eto( ]d\
es un vector
Uan(rad=cart9pol478y58 de cartesianas a polares
Uan(rad(=cart9pol478y8z58 de cartesianas a cilindricas
;na pel<cula se compone de varias imáenes /frames1
#etframe se emplea para uardar todas esas
imáenes Devuelve un vector columna con la información
necesaria para reproducir la imaen 4ue se aca&a de representar(
por e.emplo con la función plot. -sos vectores se almacenan en una
matri M
movie4M8n8fps5 representa n veces la pel<cula almacenada en
M a una velocidad de fps imáenes por seundo
L=552>piT
Pro.ramación +iceros de Matlab
+iceros de pro#rama: 6e construyen mediante una secuencia de
comandos -l
fic9ero principal se llamará mainJnombre.m
+iceros de f!nción: para crear funciones propias 6on llamados por
los fic9eros de
prorama
+a primera l<nea es e.ecuta&le y empiea por la pala&ra
function de la forma5
f!nction ar#Jsalida=f!ncionJnombre4ar#Jentrada8 parametros5
-l fic9ero se de&e uardar como f!ncionJnombre.m
Pro.ramación inp!t: permite introducir datos5 ae=input/])eclee
valor de a\1T disp: muestra un te*to por pantalla5 disp/]-l
aloritmo no 9a converido\1 fprintf: permite imprimir te*tos y
contenido de varia&les/vectores(
matrices1
$! forma #eneral es: fprintf42formato38variable5
El modo formato contiene el te7to y las especificaciones <!e
son:
_e indica 4ue los valores de la matri seran e*presa en notación
e*ponencial
_f indica 4ue los valores de la matri seran impresos en notación
decimal o en notación fi.a( esto es( el usuario puede especificar
el número de cifras sinificativas
_ puede indicar las dos formas arri&a( dependiendo de cual de
ellas será la mas corta
Comandos de entrada y salida:
-.emplo5 JJfprintf/]+a temperatura es _f rados 0elsius\(
temp1
+a temperatura es K rados 0elsius
JJfprintf/]+a temperatura es _22f rados 0elsius\( temp1
Qesulta en5
fminsearc42f!ncion387;5: calcula el m<nimo relativo de una
función más pró*imo a *
fminbnd42f!ncion28a8b5: calcula un m<nimo de la función en
el
intervalo Ua(&
fminsearc42f!ncion387;5: calcula el m<nimo relativo de una
función más pró*imo a *
fminbnd42f!ncion28a8b5: calcula un m<nimo de la función en
el
intervalo Ua(&
6peraciones ló#icas:
if
end
if
else
end
if
elseif
else
end
':
6e define un polinomio de un cierto rado /e.emplo( n=98
a*R2&*c1( para 9acer la interpolación5
p=polyfit478y8n5. 6i se
4uiere la interpolación en ciertos valores \*i\:
yi=polyval4p87i5.
yi = interp478G87i8metodo5. %"todos5 2linear \
/interpolación
lineal1( 3c!bic3 /cú&ica1( 3spline 4spline
cú&ica1
9':
': <!ad8 <!adl5 interan una función en un intervalo
Ua(&
4uad/]funcion\(a(&1
9': dbl<!ad5 interan una función en un intervalo
U*min(*ma**Uymin(yma*
Qesolución de pro&lemas de valores iniciales para
ecuaciones
diferenciales ordinarias /OD-s1
solver: aloritmo de resolución de OD-s( odeK( ode23(
ode3( odes(ode23s
matricial
G;: vector columna de condiciones iniciales en t