Download as pdf or txt
Download as pdf or txt
You are on page 1of 138

PROGRAMACIN CON MATLAB

1 MC. EMILY SAUCEDO MARISCAL


UANL- FIME
emilynadiezda@hotmail.com
PROGRAMA
CAPITULO I. INTRODUCCION
CAPITULO II. VECTORES

CAPITULO III. MATRICES

CAPITULO IV. GRAFICACION

CAPITULO V. POLINOMIOS

CAPITULO VI. INTEGRALES

CAPITULO VII. PROGRAMACION

CAPITULO VIII. APLICACIONES

2
PONDERACION

Examenes 60%
Tareas 15%
Actividades fund. 20%
Participacin (asistencia) 5%

3
MATLAB
Que es Matlab?
Matrix Laboratory

Ambiente amigable y de fcil aprendizaje


Reduccin de tiempo de programacin

El proceso de operaciones con matrices


Cuenta con miles de funciones, con su uso se ahorra
tiempo de programacin

Toolbox

4
TOOLBOXES Control System Design and Analysis
MATLAB Product Family

Control System Toolbox
MATLAB System Identification Toolbox
Parallel Computing Toolbox Fuzzy Logic Toolbox
MATLAB Distributed Computing Robust Control Toolbox
Server Model Predictive Control Toolbox
Aerospace Toolbox
Math and Optimization
Optimization Toolbox Signal Processing and
Symbolic Math Toolbox Communications
Partial Differential Equation Signal Processing Toolbox
Toolbox Signal Processing Blockset
Global Optimization Toolbox Communications Toolbox
Filter Design Toolbox
Filter Design HDL Coder
Statistics and Data Analysis

Wavelet Toolbox
Statistics Toolbox Fixed-Point Toolbox
Neural Network Toolbox RF Toolbox
Curve Fitting Toolbox
Spline Toolbox Image and Video Processing
Model-Based Calibration Toolbox Image Processing Toolbox
Video and Image Processing Blockset
Image Acquisition Toolbox
Mapping Toolbox

5
TOOLBOXES
Test and Measurement Application Deployment
Data Acquisition Toolbox MATLAB Compiler
Instrument Control Toolbox Spreadsheet Link EX
(for Microsoft Excel)
Image Acquisition Toolbox
SystemTest
OPC Toolbox Application Deployment
Targets
Vehicle Network Toolbox MATLAB Builder EX
(for Microsoft Excel)
MATLAB Builder NE
Computational Biology
(for Microsoft .NET Framework)
Bioinformatics Toolbox MATLAB Builder JA
SimBiology (for Java language)

Computational Finance Database Connectivity and


Reporting
Financial Toolbox Database Toolbox
Financial Derivatives Toolbox MATLAB Report Generator
Datafeed Toolbox
Fixed-Income Toolbox
Econometrics Toolbox
6
SIMULINK
Simulink
Simulink Simulation Graphics
Simulink Report Generator Simulink 3D Animation
Gauges Blockset
Fixed-Point Modeling
Simulink Fixed Point Control System Design and
Analysis
Event-Based Modeling Simulink Control Design
Stateflow Aerospace Blockset
SimEvents Simulink Design Optimization

Physical Modeling Signal Processing and


Simscape Communications
SimMechanics Signal Processing Blockset
SimPowerSystems Communications Blockset
SimDriveline RF Blockset
SimHydraulics Video and Image Processing

Blockset
SimElectronics
7
SIMULINK
Code Generation Rapid Prototyping and
Real-Time Workshop HIL Simulation
Real-Time Workshop Embedded
Coder xPC Target
Stateflow Coder xPC Target Embedded
Option

Simulink HDL Coder


Target Support Package Real-Time Windows
DO Qualification Kit Target
(for DO-178)
IEC Certification Kit
Verification, Validation,

(for IEC 61508 and ISO 26262)


Simulink PLC Coder and Test
Simulink Verification and
Validation
Simulink Design Verifier
SystemTest
Embedded IDE Link
EDA Simulator Link
8
CAPITULO I
INTRODUCCIN A MATLAB:
LA VENTANA DE COMANDOS

Ventana donde introducir los comandos a


ejecutar
el cursor aparece siempre despus del smbolo
>>

Ejemplo: operaciones aritmticas


Introduzca, presionando enter/intro despus del
ultimo carcter
>>9+2
>>9-1
>>9*2
>>9/2 9
MATLAB 2013B
ACTIVIDAD FUNDAMENTAL I.
CONOCER MATLAB

10
CREACIN DE VARIABLES
La creacin de una variable numrica en memoria se hace al asignarle
algn valor a un carcter por medio del smbolo =.

Ejemplos
>> a=4
a=
4

>>b=3+i
b=

3+1i

>>c=signal
c=

signal
11
COMANDOS DE MATLAB

clc limpia comandos de la ventana

diary almacena la sesion para presentar

dos Ejecuta comandos

format Ajusta el formato de visualizacion para la salida

edit Edita o crea un nuevo m-file

help ayuda
clear remueve todo lo que esta en las ventanas

who, whos lista las variables de la ventana

clf borra las figuras


12
why quien?
FUNCIONES MATEMTICAS
Trigonometric cos Cosine of argument in radians
acos Inverse cosine; result in radians cosd Cosine of argument in degrees
acosd Inverse cosine; result in degrees cosh Hyperbolic cosine
acosh Inverse hyperbolic cosine cot Cotangent of argument in radians
acot Inverse cotangent; result in radians cotd Cotangent of argument in degrees
acotd Inverse cotangent; result in degrees coth Hyperbolic cotangent
acoth Inverse hyperbolic cotangent csc Cosecant of argument in radians
acsc Inverse cosecant; result in radians Cscd Cosecant of argument in degrees
acscd Inverse cosecant; result in degrees Csch Hyperbolic cosecant
acsch Inverse hyperbolic cosecant hypot Square root of sum of squares
asec Inverse secant; result in radians sec Secant of argument in radians
asecd Inverse secant; result in degrees secd Secant of argument in degrees
asech Inverse hyperbolic secant sech Hyperbolic secant
asin Inverse sine; result in radians sin Sine of argument in radians
asind Inverse sine; result in degrees sind Sine of argument in degrees
asinh Inverse hyperbolic sine sinh Hyperbolic sine of argument in
radians
atan Inverse tangent; result in radians
tan Tangent of argument in radians
atan2 Four-quadrant inverse tangent
tand Tangent of argument in degrees
atand Inverse tangent; result in degrees
Tanh Hyperbolic tangent
atanh Inverse hyperbolic tangent

13
FUNCIONES MATEMTICAS

exp Exponential complex Construct complex data from real and


expm1 Compute exp(x)-1 accurately for small imaginary components
x conj Complex conjugate
log Natural logarithm cplxpair Sort complex numbers into complex
log10 Common (base 10) logarithm conjugate pairs
log1p Compute log(1+x) accurately for small i Imaginary unit
x imag Imaginary part of complex number
log2 Base 2 logarithm and isreal Determine whether input is real array
dissect floating-point numbers into
exponent and mantissa j Imaginary unit
nextpow2 Next higher power of 2 real Real part of complex number
nthroot Real nth root of real numbers sign Signum function
pow2 Base 2 power and scale floating-point unwrap Correct phase angles to produce
numbers smoother phase plots
reallog Natural logarithm for nonnegative
real arrays
ceil Round toward infinity
realpow Array power for real-only output
fix Round toward zero
realsqrt Square root for nonnegative real
arrays floor Round toward minus infinity
sqrt Square root idivide Integer division with rounding option
mod Modulus after division
abs Absolute value and rem Remainder after division
complex magnitude round Round to nearest integer
angle Phase angle

14
OPERACIONES ELEMENTALES ( SIMBOLOGA)

15
EJERCICIO 1
Evalu las siguientes operaciones Evalu las siguientes operaciones con
nmeros complejos
1. 9 (3 + 5) 6/4
2. 9 3 + 5 6/4 1.(1 + i) + (2 i)
3. 0.5 + 4.1 32 2 2.(1 + i) (2 i)

4. 0.5 + 4.1 3(2 2). 3.(1 + i)/(2 i)


4.(1 + i) (1 i)

Evale 2+3
8+3
1. - 4
1+4(1+3)
-5 + 7
3(2+5)
2. -
2(3+4) 2 (1+3)3
3+
3(1-3) 2 8
3. -

16
17
18
Ejemplos

19
Ejemplos

20
EJERCICIOS 2
Evale las siguientes variables


a) y = 3sin
4

b)=y 3 cos +
4 2
c) sin = 0.9
d) cos = 0.42
e) y= 5 sin ( / 3)
f) y = e2+ 3
y=exp(2)+sqrt(3)
g) =y ln ( 7 + e 2 )
21
CAPITULO II
VECTORES

22
Capitulo II: Vectores
En fsica, un vector (tambin llamado vector
euclidiano o vector geomtrico) es un tipo de
representacin geomtrica para representar una
magnitud fsica definida por un punto del espacio
donde se mide dicha magnitud, adems de un
mdulo (o longitud), su direccin (u orientacin) y
su sentido (que distingue el origen del extremo).

23
CREACIN DE VECTORES
La creacin de un arreglo de datos (vector) se realiza a travs de una operacin para la cual se
tienen las siguientes funciones.

1.Ordenar todos los elementos entre corchetes y asignarlos a la variable

a=[0,1,2,3,4,5,6,7,8,9]

2.Crear una serie de datos con el operador :

a=0:9

3.Crear una serie de datos con el operador : e indicarle el intervalo entre elementos

a=0:1:9

4.Utilizar la funcin linspace

a=linspace(0,9,10)
>>
a=linspace(0,9,10)
a=
0 1 2 3 4 5 6 7 8 9
>> % Arroja valores del 0 al 10 24
OPERACIONES CON VECTORES
sintaxis operacin condicin

suma Ambos vectores deben tener el mismo numero de


A+B elementos

resta Ambos vectores deben tener el mismo numero de


A-B elementos.

multiplicacin Ambos vectores deben tener el mismo numero de


A*B elementos. El producto dependera del tipo de
vectores: rengln (horizontal) o columna (vertical).

Multiplicacin Ambos vectores deben tener el mismo numero de


A.*B elemento a elementos. Ambos vectores deben ser del mismo
elemento tipo: rengln o columna.

25
OPERACIONES CON VECTORES
sintaxis operacin condicin

divisin Es equivalente a B*inv(A). B/A = (A'\B'). Ambos


A/B vectores deben tener el mismo numero de
elementos.
Divisin elemento La divisin comn aplicada a cada elemento.
A./B a elemento Ambos vectores deben tener el mismo numero de
elementos.
division Es equivalente a inv(A)*B. X=A\B es la solucion
A\B de la ecuacin AX=B calculada por eliminacin
gaussiana

Multiplicacion A.\B = B./A . Ambos vectores deben tener el mismo


A.\B elemento a numero de elementos.
elemento

26
OPERACIONES CON VECTORES
sintaxis operacin condicin

exponencial Eleva los elementos de la matriz A a la potencia B.


A^B Eleva A a las potencias de B. Una de las matrices
debe ser escalar.

exponencial Eleva los elementos de la matriz A a las potencias


A.^B B. Ambos A y B pueden ser matrices, escalare o
combinados

transpuesta Calcula la transpuesta de un vector o matriz.


A Para matrices complejas esto es el conjugado
complejo de la transpuesta

transpuesta Calcula la transpuesta de un vector o matriz.


A. Para matrices complejas no implica la
conjugacin

27
CREACIN DE VECTORES

Ejercicios 3: introduzca los siguientes vectores


>> A=[1 2 1]
a) a = [1, 2,1]
A=
1
1 2 1
b) b = 2
1
c) c = [ 2,3, 4, , 25]
d) = [ 20,18, , 18, 20]
T
d
0.1
0.2

e) e = 0.3


100 28
ACTIVIDAD FUNDAMENTAL II
VECTORES
De la siguiente matriz A de 4 x 3 y el vector b de
3x1 calcular:
A*b

3 -2 0 3
A= 4 9 17 b= 2
2 -4 8 -7
6 2 -5

29
Considerando los siguientes vectores
a y b as como el escalar c calcular:

2 4
a+c a= 3 b= 5 c= 12
6 1
a*c
a.*b
a.b
a.\b
c.b
30
Para calcular en MATLAB la norma de un vector se usa
la instruccin.
norm(x, p)

El valor por defecto de p es 2 que es correspondiente a


la conocida norma euclidiana, as para el vector.
x= 3 4 -2 ]
a) Obtener la norma

31
EJERCICIO 4: OPERACIONES CON
VECTORES

Introduzca el vector u=[1,2,3,,10], y calcule


1. El producto escalar u.u
2. El producto uT.u
3. El producto escalar usando el comando dot
4. El producto elemento a elemento u.*u

32
CAPITULO III
MATRICES

33
CAPITULO III. MATRICES
En matemtica, una matriz es un arreglo bidimensional
de nmeros, y en su mayor generalidad de elementos de
un anillo. Las matrices se usan generalmente para
describir sistemas de ecuaciones lineales, sistemas de
ecuaciones diferenciales o representar una aplicacin
lineal (dada una base). Las matrices se describen en el
campo de la teora de matrices.

34
MATRICES
Crear un arreglo de datos en dos dimensiones (matriz) se
puede llevar a cabo de varias formas

1. Introduciendo cada elemento


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

A=

1 2 3
4 5 6
7 8 9

35
1. Multiplicando dos vectores, a vector renglon,
entonces a*a es una matriz.
2. Crear una matriz de 1s con la funcin ones
>> A=ones(4)

A=

1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1

36
MATRICES
Ejercicios 5: introduzca las matrices

1 2 1 1
0
0 0 0
1 0 0
a = 0 2 1 c=
0 0 1 1

0 0 3 0 0 1 1
1 0 1 0 2 2
1 0 0 0 0 1 1 1 2 2
0 1 0 0

1 0 3 3 3 1
b= d =
0 0 1 0 0 1 3 3 3 1
2 2 3 3 3 1

0 0 0 1 2 2 1 1 1 4
37
EJERCICIO 6: MATRICES
1. Crear una matriz de ceros con la funcin zeros
2. Crear una matriz diagonal con la funcin diag
3. Crear una matriz identidad con la funcin eye
4. Con la funcin meshgrid comnmente usada
para evaluar funciones de dos o tres variables

38
ACTIVIDAD FUNDAMENTAL III
MATRICES
PAG 98 4.3.1
PAG 101 4.3.3

PAG101 4.3.4

39
MATRICES
ACTIVIDAD FUNDAMENTAL IV

Introduzca
1 0 0 2 1 2 0
= 0 2 0 ,
1 ,
A =
B 2 2 1 b 1
=
3
0 0 3 1 2 2 0
y calcule:

a) Ab
b) Bb
c) AB
d) BA

40
CAPITULO IV
GRAFICAS

41
INTRODUCCIN

Una vez definidos los vectores de valores x y valores y,


Matlab hace fcil la creacin de graficas.

La instruccin bsica para graficar es plot (x,y) donde


x es un vector de puntos as como y es un vector de
datos de la misma dimensin del vector x.

42
Comandos para adornar las graficas

43
Despliega grafica del seno en puntos
azules
Despliega grafica del coseno en
diamantes verdes

44
Graficacin
A travs de medicin, se obtiene un conjunto de datos tiempo con distancia.
Se pueden almacenar los valores de tiempo en un vector llamado x y
distancia como y.

>> x=[0:2:18];
>> y=[0,0.33,4.13,6.29,6.85,11.19,13.19,13.96,16.33,18.17];
>> % graficamos x y y
>> plot(x,y)
>>

45
Podemos agregar ttulos y varias caractersticas

title(' experimento uno')


>> % agregamos ttulo
>> xlabel('tiempo, seg')
>> ylabel('distancia,pies')
>> grid on
>> % grafica con cuadricula

46
GRAFICAS CON MAS DE UNA LNEA
Podemos aplicar las grficas una encima de la
otra con el comando hold on:

>> x=0:pi/100:2*pi;
>> y1= cos(x*4);
>> plot(x,y1)

47
>> x=0:pi/100:2*pi;
>> y1= cos(x*4);

>> plot(x,y1)

>> y2=sin(x);

>> hold on;

>> plot(x,y2)

48
Podemos obtener las graficas en colores
>> x=0:pi/100:2*pi;
>> y1=cos(x)*2;
>> y2=cos(x)*3;
>> y3=cos(x)*4;
>> y4=cos(x)*5;
>> z=[y1;y2;y3;y4];
>> plot(x,y1,x,y2,x,y3,x,y4)

49
FUNCIN PEAKS
Del ejemplo anterior agregamos:
plot(peaks(100))
El cual peaks es una funcin de dos variables que
produce datos muestra tiles para demostrar
ciertas funciones de graficacin. Se puede usar
peaks para demostrar la potencia de usar un
argumento de matriz en la funcin plot.
La entrada a la funcin plot creada por peaks es
una matriz de 100x100.

50
MTODO DE GRAFICAR

51
Grficos tridimensionales
>>[X, Y]=meshgrid(-2:.2:2,-3:0.5:3)
>>Z=X.^2.*Y
>>plot3(X,Y,Z)

52
EJERCICIO 7 PAG 39:
Grafica la funcin de la espiral
r=2sen (5)

teta=linspace(0,2*pi,1000);
r=2*sin(5teta);
polar(teta,r)

53
GRAFICA DE BARRAS

54
GRAFICAS DE ESCALERA E HISTOGRAMAS Y
PUNTOS

55
COMANDO SUBPLOT:
SIRVE PARA GUARDAR VARIAS GRAFICAS EN
UNA SOLA FIGURA.

56
Grafica de brjula( compass)
Muestra la magnitud y el ngulo de pares coordenados cartesianos.
El comando:
compass(z)= compass(x,y)
Donde z es un conjunto de coordenadas cartesianas.
Donde x son vectores
Ejemplo

57
ACTIVIDAD FUNDAMENTAL V

Con las funciones antes realizadas de seno,


coseno y tangente, realizar una figura con las
tres graficas y escribir el nombre a la figura de
Actividad Fundamental V. Y a cada grafica el
nombre correspondiente.

58
GRAFICAS EN 3 DIMENSIONES
La sintaxis:
plot3(x,y,z,s)

x,y,z--- son las coordenadas de la funcin


s---son las opciones para la grafica.
Ejemplo 2.11, pag 48

59
GRAFICAS DE MALLA (MESH)
Las funciones que interesa graficar son de la forma:
Z=f(x,y)
El comando que se utiliza para obtener las grficas de malla es:
mesh(x,y,z)
Primero se define una rejilla (meshgrid) que genera las matrices
x,y con la instruccin:
[x,y]= meshgrid(xi,yi:inc:xf,yf)
Ejemplo 2.12

60
TAREA:EJERCICIO 8

Realizar el ejemplo 2.13. (pag 48)


Libro de Matlab. Baez. 2 Ed.

61
GRAFICA DE SUPERFICIE (SURF)
Esta grafica es similar a la de malla, excepto que los rectangulos de la
superficie estan coloreados. Los colores de los rectngulos estn determinados
por los valores de Z y por el mapa de colores.

62
ACTIVIDAD FUNDAMENTAL 6
Introduce el comando y explica que pasa ( como
comentario en cada grfica):

Shading flat
Shading interp
Surf
Surfl (X,Y,Z)

63
Variables y funciones
Variables simblicas
Matlab incluye un bloque de matemticas simblicas (Symbolic Math
Toolbox) y provee un nmero grande de funciones matemticas.
Las funciones se pueden consultar en la ventana de comandos escribiendo:
>> help specfun
>> help elfun
>> help el mat

64
La mayora de las funciones matemticas acepta como argumento nmeros
imaginarios, por ejemplo al calcular la raz cuadrada de un nmero negativo,
no produce error, sino un nmero complejo o imaginario.

Las funciones pueden generar cuando ocurre una divisin entre cero o
generar un clculo matemtico mas all del lmite permitido por la variable
realmax. ejemplo

65
Funciones en lnea
Pueden ser generadas con el comando inline(expresin matemtica
en forma de cadena), ejemplo:

66
Evaluar la integral:


sen( x)
y= dx
0
x

67
Variables simblicas
Para la funcin: f = 3 x 3 + ax + b

68
Variables simblicas

Si en una expresin simblica queremos sustituir una


variable por otra o por una constante para calcular su
valor en un punto, utilizamos la orden subs:
subs(f, antiguas, nuevas) Sustituye las variables
antiguas por las nuevas. Si hay ms deuna variable las
escribiremos entre llaves y separada por comas.

69
GRAFICA DE UNA FUNCIN CON
EZPLOT() PAG 71

Se utiliza para graficar una funcin definida con el comando


sym().
x = sym ('x') crea la variable simblica con el nombre de 'x' y
almacena el resultado en x. x = sym ('x', 'real') tambin se
supone que x es real, por lo que conj (x) es igual a x. alfa =
sym ('alpha') y r = sym ('Rho', 'real') son otros ejemplos.

70
GRAFICA DE UNA FUNCIN CON
EZPLOT()
cos(10 x) (2+sin(x))

-1

-2

-3

-6 -4 -2 0 2 4 6
x
71
GRAFICA DE UNA FUNCIN CON
FPLOT()

Con la funcin fplot() es posible establecer el intervalo


de la grfica.

-1

-2

72
-3
-10 -5 0 5 10
GRAFICA DE UNA FUNCIN CON
FPLOT()

0.8

0.6

0.4

0.2

-0.2

73
-0.4
-30 -20 -10 0 10 20 30
VECTOR DE VALORES PARA GRAFICAR UNA
FUNCIN DISCRETA
STEM (Y) representa la secuencia de datos Y como se deriva del
eje x terminado con los crculos para el valor de datos. Si Y es
una matriz luego cada columna se representa como una serie
separada.

4.5

3.5

2.5

1.5

0.5
74
0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
DIFERENCIAS ENTRE PLOT(),
FPLOT() Y EZPLOT()

plot() es una funcin que opera en


forma vectorial.

fplot() y ezplot() son funciones que


trabajan en forma simblica.

75
Ejercicio 9 transformada Z

Grafica de la magnitud de la Transformada Z de la


funcin:

z 1 z 2
| X ( z ) |=
1 1.2732 z 1 + 0.81z 2

76
Grficas de superficies

Valor absoluto

77
Actividad Fundamental VII
En el pizarron se darn las instrucciones

78
CAPITULO IV

79
POLINOMIOS

En matemticas, un polinomio1 2 3 es una expresin


matemtica constituida por un conjunto finito de
variables (no determinadas o desconocidas) y
constantes (nmeros fijos llamados coeficientes),
utilizando nicamente las operaciones aritmticas de
suma, resta y multiplicacin, as como tambin
exponentes enteros positivos.

80
OPERACIONES BSICAS DE POLINOMIOS
Los coeficientes de los polinomios estn
definidos en MATLAB como vectores
rengln donde los coeficientes se
escriben en orden descendente

y = x +1

y = 3x + 6 x + 1
3 2

81
OPERACIONES BSICAS DE POLINOMIOS
Operaciones: Suma y resta

[1111]+[3210]

ans =
4 3 2 1 % = 4x3 + 3x2 + 2x + 1

Ambas representaciones deben ser de


igual largo (cantidad de elementos)!

% (x + 1) + (3x3 + 2x2 + x)
[0011]+[3210]
ans =
82

3 2 2 1 % la resta es anloga
Operaciones: Producto

Polinomio x escalar

[3210]*3 % (3x3 + 2x2 + x) 3

ans =
9 63 0 % 9x3 + 6x2 + 3x

83
MULTIPLICACIN DE POLINOMIOS
Se utiliza la funcin conv()

y = 3x 3 + 6 x 2 + 1
y = x +1

y = 3x 4 + 9 x 3 + 6 x 2 + x + 1 84
MULTIPLICACIN DE POLINOMIOS
Para multiplicar ms de dos polinomios es necesario
repetir el proceso.

y = 5 x10 2 x 9 9 x 8 + 12 x 7 18 x 6 42 x 5 23 x 4 20 x 3 60 x 2 32 x
85
POLINOMIOS

y = 2 x 2 + 3 x + 14

Para evaluar un polinomio se utiliza la


funcin polyval()

86
DIVISIN DE POLINOMIOS
3 x 2 5 x + 16 cociente
x + 3 3x 3 + 4 x 2 + x + 9

3x 3 9 x 2
5x 2 + x + 9
5 x 2 + 15 x
16 x + 9
16 x 48
39
residuo87
DIVISIN DE POLINOMIOS
Se utiliza la funcin
[ q, r ]= deconv(a,b)

q: polinomio cociente

r: polinomio residuo 88
DERIVADA DE UN POLINOMIO
Se utiliza la instruccin: polyder()

y = 3x + 9 x + 6 x + x + 1
4 3 2

y = 12 x 3 + 27 x 2 + 12 x + 1

Operaciones: polyder()

polyder ( [ 4 2 1 ])
ans =
8 2
89
INTEGRAL DE UN POLINOMIO
Operaciones: polyint() integra un polinomio
polyint ([4,2])
ans =
2 2 0

90
ACTIVIDAD FUNDAMENTAL VIII
Resuelva las siguientes operaciones, para los
polinomios.
a)2 3 + 4 2 + 2
b)5 5 + 7 3 + 9
c)8 3 + 4 2
d)3 2 + 10

1.- suma los polinomios a+b y c+d


2.- resta a-d y b-c
3.- multiplica a*b
4.- divide a/d
5.- deriva cada polinomio
6.- integra cada polinomio 91
Examen de
medio curso
92
VARIABLES Y FUNCIONES
AJUSTE DE CURVAS

Para expresar datos por medio de un polinomio,


Matlab utiliza la instruccin polyfit(,x,y,n).
x,y: son los vectores de datos.
n: es el orden del polinomio

93
EJEMPLO
Considerar los datos de la siguiente tabla y obtener la grfica

X 0 1 2 3 4 5 6
Y 0 -4 -5 2 6 -4 10

94
Esto indica el polinomio a(x)= -.0278 3 +.7143 2 1.8770 1 1.1905

95
EJERCICIO 1
Con los datos siguientes obten:
a) La grfica
b) La grafica de un polinomio de grado 3 pasando
por los puntos obtenidos.
c) La grafica de los puntos junto con los polinomios.

Datos medidos
x y
0 0
1 1
2 4
3 2.5
4 8
5 3
96
6 .23
CONTINUACION DEL EJEMPLO ANTERIOR

97
Ajuste de curvas
Ahora se utiliza un polinomio de grado 6.

98
Ajuste de curvas

99
AJUSTE DE CURVAS CON LA FUNCIN
SPLINE(X,Y,V)

Esta funcin est formada por varios polinomios de 3er


grado.

x, y: coordenadas de los puntos.


V: vector de puntos por donde
quisiramos que el spline yt tomara los
valores del vector y.

100
AJUSTE DE CURVAS CON LA FUNCIN
SPLINE(X,Y,V)

Se observa que la funcin spline() da 101

mejores resultados.
INTERFASE PARA AJUSTE DE CURVAS
BASIC FITTING
- Primero graficar los datos x, y.
- En el menu Tools, seleccionar Basic Fitting.
- Seleccionar la opcin Spline Interpolant.
- Seleccionar la opcin 5th degree polynomial.
- Seleccionar show equations.
- Plot residuals muestra el error en cada
aproximacin.
- La siguiente ventana muestra los coeficientes de
los polinomios.
- La ltima ventana permite evaluar el polinomio.
102
INTERFASE PARA AJUSTE DE CURVAS
BASIC FITTING

103
INTERFASE PARA AJUSTE DE CURVAS
BASIC FITTING

104
INTERFASE PARA AJUSTE DE CURVAS
BASIC FITTING

105
SOLUCIN DE ECUACIONES
Para resolver ecuaciones Matlab utiliza la instruccin
solve().

106
SOLUCIN DE ECUACIONES
En algunos casos Matlab arroja un valor numerico.

107
CAPITULO VI. INTEGRALES

La operacin de integracin indefinida de una


funcin f(x) se denota:
F= int(f)=
Donde la nueva funcin F satisface que:
diff(F)= f(x)
F se conoce tambin como la antiderivada de f y
MATLAB la encontrar siempre que exista.
la instruccin quad se puede usar para integrar
numricamente una funcin.
Su formato quad( funcion,a,b), donde funcion es
la definicin de la funcin que deseamos integrar y
a y b son los lmites. 108
EJEMPLOS
a)F= int(f) = 1
b)F= int(f) =0 2


c) 0 ()/

109
INTEGRALES DOBLES Y
TRIPLES
Ejercicio: escribir la integral a la que corresponde
cada resultado de matlab
a)

110
b)

111
CAPITULO VII.PROGRAMACION

112
ELABORACIN DE PROGRAMAS EN MATLAB
MATLAB proporciona un lenguaje de
programacin. Una ventaja muy importante de
programar en lenguaje-m, es que no requiere que
se declaren las variables y sus tipos al principio
del programa, ya que estas se definen
automticamente cuando las usamos por primera
vez.

113
INSTRUCCIONES BSICAS DE MATLAB
Sentencia If:
En su forma ms simple, la sentencia if se describe como sigue:
if condicion
Sentencias
end
Para crear condiciones debemos conocer tanto los operadores
relacionales como los operadores lgicos.
Operadores relacionales Operadores lgicos
Operadores Operadores
relacionales lgicos
igualdad == and &
(ampersand)
desigualdad ~ = or ~ = or
menor < not
mayor > xor
114
menor o igual <= any
mayor o igual >= all
Ejemplo de uso de if:
nro = input('Ingrese un nmero positivo: ');
if mod(nro,2)==0 disp('es par');
else disp('es impar');
end

115
Ejemplo de uso de if/elseif:
nro = input('Ingrese un nmero positivo: ');
if nro==1 disp('Ud. ingreso 1');
elseif nro==2 disp('Ud. ingreso 2');
elseif nro==3 disp('Ud. ingreso 3');
else disp('El nmero es mayor que 3');
end

116
Sentencia Switch:

Esta sentencia realiza la funcin anloga a un conjunto


if...elseif concatenados. Su forma general es:

switch switch_expresion
case case_expr1,
bloque 1
case {case_expr2, case_expr3, case_expr4, ...},
bloque 2
...
otherwise,
bloque 3
end

117
Ejemplo de uso switch:
nro = input('Ingrese un nmero positivo: ');
switch nro
case 1, disp('Ud. ingreso 1'),
case 2, disp('Ud. ingreso 2')
case 3, disp('Ud. ingreso 3')
otherwise, disp('El nmero es mayor que 3')
end

118
Sentencia For:
La sentencia for repite un conjunto de sentencias un
nmero predeterminado de veces. La siguiente
construccin ejecuta sentencias con valores de i de 1 a
n, variando en uno:

for i=1:n
sentencias
end
For anidados:
for i=1:n
for j=1:m
sentencias
end 119
end
Ejemplos de uso de for:
nro = input('Ingrese un nmero positivo: ');
for i=1:nro
disp(i)
End

120
Sentencia While:
La sintaxis de la estructura while es la siguiente.

while condicion
sentencias
End

donde condicin puede ser una expresin vectorial o


matricial. Las sentencias se siguen ejecutando mientras
haya elementos distintos de cero en condicin, es decir,
mientras haya algn o algunos elementos true. El bucle
termina cuando todos los elementos de
condicion son false (es decir, cero).
121
Ejemplo de uso de while:
nro = input('Ingrese un nmero positivo: ');
i=0;
while i<=nro
disp(i);
i=i+1;
end;

122
PROGRAMACIN BSICA CON MATLAB

Ejercicio 10.-
Realizar los programas propuestos por el maestro
(24)

123
VIII. APLICACIONES CON MATLAB:
PROCESAMIENTO DE IMAGEN

124
INTRODUCCIN
CONCEPTOS Y TCNICAS DE PROCESAMIENTO DE
IMGENES

Una imagen puede ser definida como una funcin de


dos dimensiones, f (x, y), donde las coordenadas x e y
se definen como el espacio (plano) y la amplitud de f en
cualquier par de coordenadas (X, y) se llama la
intensidad o nivel de gris de la imagen en ese punto.

El procesamiento digital de imgenes es el


conjunto de tcnicas que se aplican a las imgenes
digitales con el objetivo de mejorar la calidad o facilitar
la bsqueda de informacin.
El
campo de procesamiento digital de
imgenes se refiere a la transformacin
imgenes digitales por medio de un
computador digital.

Una imagen digital se compone


de un nmero finito de elementos, cada uno de
los cuales tiene un lugar en particular , se
conocen como elementos de imagen, pxeles.
>> f=imread('cameraman.tif')

f=

Columns 1 through 22

156 159 158 155 158 156 159 158 157 158 158 159 160 160 160 158 163 161 162 160 164 160
160 154 157 158 157 159 158 158 158 160 155 156 159 158 160 157 165 159 161 158 162 162
156 159 158 155 158 156 159 158 157 158 158 159 160 160 160 158 163 161 162 160 164 160
160 154 157 158 157 159 158 158 158 160 155 156 159 158 160 157 165 159 161 158 162 162
156 153 155 159 159 155 156 155 155 157 155 154 154 158 162 157 157 158 157 159 161 160
155 155 155 157 156 159 152 158 156 158 152 153 159 156 157 161 160 158 161 159 159 159
156 153 157 156 153 155 154 155 157 156 155 156 155 157 158 160 157 160 161 162 162 159
159 159 156 158 156 159 157 161 162 157 157 159 161 156 163 158 159 161 158 163 163 163
158 155 158 154 156 160 162 155 159 161 156 161 160 155 158 161 162 162 161 163 158 156
MOSTRAR IMAGEN
>> size(f)

ans =

256 256
Pixel:

Acrnimo del ingls picture element, "elemento de


imagen" es la menor unidad homognea en color
que forma parte de una imagen digital, ya sea
esta una fotografa, un fotograma de vdeo o un
grfico.
CORRECCION DE IMAGENES

Son las operaciones ms sencillas y ms


utilizadas del tratamiento digital de imgenes.
El objetivo general es destacar detalles de
inters.
En ejemplo bsico es el aumento de contraste de
una imagen para que tenga "mejor aspecto".
Es un concepto muy subjetivo, a diferencia de la
restauracin.
Los algoritmos son concretos para una aplicacin
EJEMPLO: AUMENTO DE CONTRASTE

132
ACTIVIDAD 2

133
OPERACIONES BSICAS LGICAS
Suma:

134
FORMA CORTA PARA SUMAR
>>A=(imagen)
>>B=(imagen)
>>Suma=imadd(A,B);
>>Imshow(s).
136
RESTA Y MULTIPLICACIN

>>w=imsubtract(A,B);
>>imshow(w)

>>b = immultiply(A,B);
>>imshow(b)
EXAMEN ORDINARIO

138

You might also like