Cuadernillo de Matlab v.4 umss ing civil

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA ENTORNO GRAFICO DE MATLAB C

Views 58 Downloads 2 File size 2MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA ENTORNO GRAFICO DE MATLAB Current Folder.- Ficheros que hay en la carpeta de trabajo (Directorio Actual)

Command Window.- Todas las ordenes se escriben en el Command Window (ventana de comando)

1

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Workspace.- La ventana Workspace proporciona diversa información sobre las variables utilizadas (Espacio de Trabajo)

Command History.- Todas las órdenes quedan grabadas en el command History (Historial de Comandos)

2

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA PUNTOS A TOMAR EN CUENTA  MATLAB distingue entre mayúsculas y minúsculas  Los comentarios, que se verán de color verde, deben ir precedidos por % para que Matlab los ignore.  Las ordenes ejecutadas por MATLAB con anterioridad pueden recuperarse siempre con las teclas (Arriba) y (Abajo)

 Para acceder a la ayuda de MATLAB basta teclear help en el Command Window  Para Borrar las variables del Workspace se usa el comando clear  Para Borrar el contenido de Command Window se usa el comando clc, y deja todo limpio.  Comando whos sirve para ver las características de la variable  Comando what nos permite visualizar cuales son los archivos .m que hay en el directorio actual  Comando help es un comando de ayuda OPERACIONES ARITMETICAS En MATLAB se realiza las siguientes operaciones: + * / ^

Sumar Restar Multiplicar Dividir Elevar a una potencia (alt+094)

Ejemplo: >> 10+8 ans = 18 Ejemplo: >> 10^2 ans = 100 Ejemplo: >> 18*2 ans = 36

3

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

pretty(x)  Expresa en forma usual la variable x vpa(x,n)  Nos muestra con mayor precisión el resultado, nosotros indicamos con cuantos decimales Dónde: x=Expresión con senos cosenos exponenciales n=número de dígitos q queremos que nos muestre simple(g) Nos muestra la ecuación mas simplificada

4

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

VISUALIZACION DE LOS RESULTADOS

5

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Cuando se hace un cálculo sin usar variables como en los ejemplos anteriores, automáticamente el cálculo se guarda en una variable de respuesta llamada ans (answer… respuesta) QUE ES UNA VARIABLE.- Es un espacio de memoria reservada en el cual se puede almacenar un tipo de dato. DECLARAR VARIABLES EN MATLAB Declarar Variables que contengan un dato Primero se debe poner el nombre de la variable (el nombre puede ser cualquier tipo de letra o palabra), seguidamente de un signo “=” y escribir el dato que queremos almacenar en dicha variable. Ejemplo >> x=10 x= 10 Ejemplo >> x=10+8 x= 18 Para conocer el valor de una variable solo basta con escribir su nombre. Ejemplo: >> x x= 18 No mostrar el resultado Si deseamos no mostrar el resultado en el command window simplemente ponemos el signo punto y coma (;) al final. Al no mostrar el resultado no quiere decir q no hizo el cálculo simplemente significa que si se realizó el cálculo pero no mostro el resultado. Ejemplo >> y=10*2; Comprobamos si se realizó el cálculo, y efectivamente se realizó. >> y y= 20

6

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Declarar Variables que no contengan un dato Para poder declarar una variable que vamos a utilizar debemos poner el código Syms seguidamente del nombre de la variable (el nombre puede ser cualquier tipo de letra o palabra) Ejemplo >> syms x

Ejemplo >> syms y >> f=2*cos(y) f= 2*cos(y)

Ejercicios propuestos

  tan  ln(8)   5  6  2  7  a) cos   sen   5  6   8  7. 2 2

Resp. 0.2191

b) Defina las variables x como x=13.5 y calcule: a) x 3  5 x 2  26.7 x  52 Resp.2.9592e+03

b) log x 2  x3 Resp. 3.3576

7

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA LIMITES El Comando para calcular límites es: Limit(f,x,a) Dónde: Limite de la función (f) cuando la variable (x) tiende al punto (a) Ejemplo: 𝐥𝐢𝐦 ( 𝒙→𝟏

𝒙𝟐 − 𝟏 ) 𝒙−𝟏

>> syms x >> f=(x^2-1)/(x-1); >> limit(f,x,1) ans = 2

Ejemplo: (𝟑 + 𝒙)𝒏 − 𝟑𝒏 𝐥𝐢𝐦 ( ) 𝒙→𝟎 𝒙 >> syms x n >> f=((3+x)^n -3^n)/x; >> limit (f,x,0) ans = 3^(n - 1)*n

Ejemplo 𝐥𝐢𝐦 ( 𝒙→𝟏

𝟏−𝒙

) 𝟏 − √𝒙

>> syms x >> f=(1-x)/(1-sqrt(x)); >> limit(f,x,1) ans = 2

8

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Ejemplo 𝟑

𝐥𝐢𝐦 ( 𝒙→

√𝒙𝟐 + 𝟏 ) 𝒙+𝟏

>> syms x >> f=((x^2 +1)^(1/3))/(x+1); >> limit(f,x,inf) ans = 0

𝐥𝐢𝐦 ( 𝒙→𝟐

𝟕𝒙𝟓 − 𝟏𝟎𝒙𝟒 − 𝟏𝟑𝒙 + 𝟔 ) 𝟑𝒙𝟐 − 𝟔𝒙 − 𝟖

>> syms x >> f=(7*x^5 -10*x^4 -13*x +6)/(3*x^2 -6*x -8); >> limit(f,x,2) ans = -11/2 √𝟏 + 𝒔𝒆𝒏(𝒙) − √𝟏 − 𝒕𝒈(𝒙) 𝐥𝐢𝐦 ( ) 𝒙→𝟎 𝒔𝒆𝒏(𝟐𝒙)

𝟐 +𝒙−𝟏

𝒆𝟐𝒙 𝐥𝐢𝐦 ( 𝒙→𝟎

− 𝒆𝒙 𝒙𝟐 − 𝟐

𝟐 +𝒙+𝟏

)

DERIVADAS El Comando para calcular derivadas es: diff(f,x,k)

9

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA Dónde: f Función a derivar xrespecto la variable a la cual se deriva k Numero de derivadas que se desea, si no se pone el “k” MATLAB asume k=1, que sería la 1ra derivada

Ejemplo 𝒇(𝒙) = 𝒂𝒙𝟑 + 𝒃𝒙𝟐 + 𝒄𝒙 + 𝒅 >> syms a b c d x >> f=(a*x^3 + b*x^2+ c*x +d); >> diff(f,x) ans = 3*a*x^2 + 2*b*x + c

𝒇(𝒙) = (−

𝟖𝒙 ) 𝒔𝒆𝒏(𝟒𝒙𝟐 )

Ejemplo Calcular la segunda derivada de la función f(x) 𝒅𝟐𝒇(𝒙) 𝝏𝟐 𝒙 ó 𝒅𝒙𝟐 𝝏𝒙 𝟑 𝒇(𝒙) = 𝒂𝒙 + 𝒃𝒙𝟐 + 𝒄𝒙 + 𝒅 >> syms a b c d x >> f=(a*x^3 + b*x^2+ c*x +d); >> diff(f,x,2) ans = 2*b + 6*a*x DERIVADAS PARCIALES Ejemplo 𝒇(𝒙, 𝒚) = 𝒙𝟒 + 𝒔𝒆𝒏(𝒙 + 𝒚𝟑 ) Calcular 𝝏𝟐 𝒙 𝝏𝒇 >> syms x y >> f=x^4 + sin(x+y^3); >> diff(f,x,2)

10

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA ans = 12*x^2 - sin(y^3 + x) 𝝏𝟐 𝒚 𝝏𝒇 >> syms x y >> f=x^4 + sin(x+y^3); >> diff(f,y,2) ans = 6*y*cos(y^3 + x) - 9*y^4*sin(y^3 + x)

INTEGRALES INTEGRALES INDEFINIDAS El Comando para calcular integrales es: Int(f,x) Dónde: ffunción a integrar xvariables respecto a la cual se va integrar Ejemplo ∫(𝟐𝒙) 𝒅𝒙 >> syms x >> f=2*x; >> int(f,x) ans = x^2

Ejemplo ∫(𝒔𝒆𝒏𝟐 𝒙) 𝒅𝒙 >> syms x >> f=sin(x)^2; >> int(f,x)

11

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA ans = x/2 - sin(2*x)/4 Ejemplo ∫(𝒔𝒊𝒏(𝒙𝟑 )𝒄𝒐𝒔 (𝒙𝟔 ) 𝒅𝒙 >> syms x >> f=(sin(x)^3) *(cos(x)^6); >> int(f,x) ans = (cos(x)^7*(7*cos(x)^2 - 9))/63

INTEGRALES DEFINIDAS El Comando para calcular integrales es: Int(f,x,a,b) Dónde: fFunción a integrar xRespecto la variable a integrar aLímite inferior bLímite Superior

Ejemplo 𝟑

∫(𝒙𝟒 − 𝟏)𝒅𝒙 𝟎

>> syms x >> f=x^4 - 1; >> int(f,x,0,3) ans = 228/5 Ejemplo

12

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA 𝝅 𝟑

∫(𝒕𝒂𝒏(𝒙))𝒅𝒙 𝟏

>> syms x >> f=tan(x); >> int(f,x,0,pi/3) ans = log(2)  2

 sen ( x) cos ( x)dx 3

4

0

Resp. 2/35

INTEGRALES DOBLES Ejemplo 𝟐 𝟏

∬ (𝟐𝒙 + 𝟑𝒚)𝒅𝒙 𝒅𝒚 𝟏 𝟎

>> syms x y >> f=2*x + 3*y; >> int((int(f,x,0,1)),y,1,2) ans = 11/2 Ejemplo 𝟐 𝟑𝒙+𝟏



(𝒙 ∗ 𝒚)𝒅𝒚 𝒅𝒙

𝟏 𝟐𝒙

>> syms x y >> f=x*y; >> int((int(f,y,2*x,3*x+1)),x,1,2) ans =

13

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA 137/8

INTEGRALES TRIPLES Ejemplo 𝟒 𝟗 𝟐

∭ (𝒙 + 𝒔𝒆𝒏(𝒚 + 𝒛) + 𝒄𝒐𝒔(𝒙 + 𝒚))𝒅𝒙 𝒅𝒚 𝒅𝒛 −𝟑 𝟒 −𝟏

>> syms x y z >> f=x+sin(y+z)+cos(x+y); >> int((int((int(f,x,-1,2)),y,4,9)),z,-3,4) ans = 7*cos(6) - 7*cos(3) + 7*cos(8) - 7*cos(11) - 3*sin(1) + 3*sin(6) + 3*sin(8) - 3*sin(13) + 105/2 >> round(ans) ans = 63

Ejemplo 𝟏

(𝟏−𝐱) ( 𝟏−𝐱−𝐲)

(𝟏 + 𝐱 + 𝐲 + 𝐳)−𝟑 𝐝𝐳 𝐝𝐲 𝐝𝐱

∭ 𝟎

𝟎

𝟎

>> syms x y z >> f=(1+x+y+z)^-3; >> int((int((int(f,z,0,1-x-y)),y,0,1-x)),x,0,1) ans = log(2)/2 - 5/16 RESOLUCION DE ECUACIONES El Código para resolver una ecuación es: solve(‘f’,’x’) Dónde: fEcuación a resolver xVariable respecto a cuál se va resolver Nota.- f,x siempre deben estar dentro de comillas simples (‘)

14

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA Ejemplo 𝒙−𝟒=𝟎 >> solve('x-4','x') ans = 4

Ejemplo 𝒙𝟓 − 𝟐𝒙𝟒 + 𝟓𝒙𝟐 + 𝟓 = 𝟎 >> solve('x^5 - 2*x^4 + 5*x^2 +5 =0','x') ans = -1.4580779746728707719771948687808 1.7640467376264465340656905641866 + 1.1919532510152085917205463122611*i - 0.035007750290011148077093129796164 - 0.8690969868882427567056575871979*i - 0.035007750290011148077093129796164 + 0.8690969868882427567056575871979*i 1.7640467376264465340656905641866 - 1.1919532510152085917205463122611*i

RESOLUCION DE SISTEMA DE ECUACIONES El Código para resolver un sistema de ecuaciones es: [y1 … yn]=solve('ec1', …, 'ecn') Dónde: y1…yn Son las variables a hallar ec1…ecn  Son las ecuaciones del sistema Nota.-Las variables a hallar deben ir dentro de corchetes ([]) y separadas por un espacio, las ecuaciones siempre deben estar dentro de comillas simples (‘) , y separadas por una coma(,) entre ecuaciones Ejemplo

>> [x,y]=solve('x+2*y=0','2*x + y=0') x= 0 y= 0 Ejemplo

15

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

>> [x y]=solve('x^3 - 4*sin(x)+y=0','y^2+cos(x*y)+x=0') x= -1.7734373138796109886233916368324 y= 1.6594481511916120172833487059994 Ejercicios propuestos a)

x y  4 2 3 x  y 1 3 Resp. x=66/7; y=-15/7 b)

x 1 y 1  0 3 2 x  2y x  y  2  0 3 4 Resp. x=-13/7; y=11/7 RESOLUCION DE ECUACIONES DIFERENCIALES El Código para resolver una ecuación diferencial es: dsolve(‘f’,’x’) Dónde: fEcuación diferencial a resolver xVariable respecto a cuál se va resolver Nota.- f,x siempre deben estar dentro de comillas simples (‘)

Ejemplo 𝐲′ = 𝟏 + 𝐲𝟐

ó

𝒅𝒚 = 𝟏 + 𝒚𝟐 𝒅𝒙

>> dsolve('Dy=1+y^2','x') ans =

16

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA tan(C10 + x) i -i Ejemplo 𝐲 ′ = −𝐲 + 𝐬𝐞𝐧(𝐭)

ó

𝒅𝒚 = −𝒚 + 𝒔𝒆𝒏(𝒕) 𝒅𝒕

>> dsolve('Dy=-y+sin(t)','t') ans = sin(t)/2 - cos(t)/2 + C19*exp(-t) Ejercicios propuestos a) x '  e t 

b) x ' 

2t resp. C5 - log(t^2 - 1) + exp(t) t 1 2

1 t resp. C13/(x^2 + 9)^(1/2) t 2 x2 RESOLUCION DE ECUACIONES DIFERENCIALES CON ALGUNA CONDICION

El Código para resolver una ecuación diferencial con alguna condición es: dsolve(‘f’,’cond’,’x’) Dónde: fEcuación diferencial a resolver xVariable respecto a cuál se va resolver condCondicion inicial o limite condicional Nota.- f,x,cond siempre deben estar dentro de comillas simples (‘) Ejemplo 𝒅𝒚 𝐲′ = 𝐲 + 𝟏 ó =𝒚+𝟏 𝒅𝒙

𝑷𝒂𝒓𝒂 𝒚(𝟎) = 𝟏

>> dsolve('Dy=y+1','y(0)=1','x') ans = 2*exp(x) – 1 Ejemplo 𝐲 ′′′ − 𝟑𝐲 ′′ + 𝟑𝐲 ′ − 𝐲 = 𝟎

ó

𝒅𝟑𝒚 𝒅𝟐𝒚 𝒅𝒚 −𝟑 +𝟑 −𝒚=𝟎 𝒅𝒙 𝒅𝒙 𝒅𝒙 𝑷𝒂𝒓𝒂 𝒚′′(𝟎) = 𝟏

>> dsolve('D3y-3*D2y+3*Dy-y=0','D2y(0)=1','x') ans = C26*x^2*exp(x) - exp(x)*(2*C26 + 2*C27 - 1) + C27*x*exp(x)

17

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

RESOLUCION DE SISTEMA DE ECUACIONES DIFERENCIALES El Código para resolver un sistema de ecuaciones diferenciales es: [y1, …,yn]=dsolve (‘eqn1’, …, ‘eqnN’,’x’) Dónde: y1…yn Son las variables a hallar eqn1…eqnN  Son las ecuaciones del sistema x  Variable respecto a cuál se va resolver Nota.-Las variables a hallar deben ir dentro de corchetes ([]) y separadas por una coma (,), las ecuaciones siempre deben estar dentro de comillas simples (‘) , y separadas por una coma(,) entre ecuaciones Ejemplo 𝒅𝒙 𝒅𝒕

𝒙′ (𝒕) = 𝒚(𝒕) , 𝒚′ (𝒕) = −𝒙(𝒕)

=𝒚 ó

𝒅𝒚 𝒅𝒕

= −𝒙

>> [x,y]=dsolve('Dx=y','Dy=-x','t') x= C28*cos(t) + C29*sin(t) y= C29*cos(t) - C28*sin(t) Ejemplo 𝒅𝒙 𝒅𝒕

𝒙′ = −𝟐𝒙 − 𝟐𝒚 , 𝒚′ = −𝟐𝒚 + 𝒆−𝟐𝒕 √𝒕

= −𝟐𝒙 − 𝟐𝒚 ó

𝒅𝒚 𝒅𝒕

= −𝟐𝒚 + 𝒆

−𝟐𝒕

√𝒕

>> [x y]=dsolve('Dx=-2*x-2*y','Dy=-2*y+exp(-2*t) * sqrt(t)','t') x= exp(-2*t)*(C39 + t*(C38 - (4*t^(3/2))/3) + (4*t^(5/2))/5) y= -(exp(-2*t)*(C38 - (4*t^(3/2))/3))/2

18

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

RESOLUCION DE SISTEMA DE ECUACIONES DIFERENCIALES CON ALGUNA CONDICION El Código para resolver un sistema de ecuaciones diferenciales es: [y1, …,yn]=dsolve (‘eqn1’, …, ‘eqnN’,’cond1’, …,’condN’ ,’x’) Dónde: y1…yn Son las variables a hallar eqn1…eqnN  Son las ecuaciones del sistema cond1…condN  Condiciones iniciales o limitee condicionales x  Variable respecto a cuál se va resolver Nota.-Las variables a hallar deben ir dentro de corchetes ([]) y separadas por una coma (,), las ecuaciones y condiciones siempre deben estar dentro de comillas simples (‘) , y separadas por una coma(,) entre ecuaciones

Ejemplo

𝒅𝒙 𝒅𝒕

𝒙′ = 𝒙 − 𝟐𝒚 , 𝒚′ = 𝟐𝒙 − 𝟑𝒚

= 𝒙 − 𝟐𝒚

Para

y(0)=1

;

x(0)=5

ó 𝒅𝒚 𝒅𝒕

= 𝟐𝒙 − 𝟑𝒚

>> [x,y]=dsolve('Dx=x-2*y','Dy=2*x-3*y','y(0)=1','x(0)=5','t') x= (exp(-t)*(16*t + 10))/2 y= exp(-t)*(8*t + 1) Ejemplo 𝒅𝒙 𝒅𝒕

𝒙′ = −𝟐𝒙 − 𝟐𝒚 , 𝒚′ = −𝟐𝒚 + 𝒆−𝟐𝒕 √𝒕

= −𝟐𝒙 − 𝟐𝒚 ó

𝒅𝒚 𝒅𝒕

= −𝟐𝒚 + 𝒆−𝟐𝒕 √𝒕

Para

y(0)=4

;

x(0)=3

>> [x y]=dsolve('Dx=-2*x-2*y','Dy=-2*y+exp(-2*t) * sqrt(t)','y(0)=4','x(0)=3','t') x= exp(-2*t)*((4*t^(5/2))/5 - t*((4*t^(3/2))/3 + 8) + 3)

19

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA y= (exp(-2*t)*((4*t^(3/2))/3 + 8))/2 SUSTITUCION DE VARIABLES subs(expr, old, new) Dónde: expr es una expresión simbolica old  es el valor que se desea sustituir new  es el nuevo valor

ejemplo.>> syms x a b c >>f = a*x^2 + b*x + c; >>g = subs(f,x,-1) >>g = a-b+c

ejemplo.>> syms x a b c k >>f = a*x^2 + b*x + c; >>g = subs(f,[a,b,c],[1,2,k]) >>g = x^2 + 2*x + k EVALUACION DE POLINOMIOS polyval(coef, x); Dónde: coef vector que almacene los coeficientes del polinomio, en orden decreciente de grado. x  vector que almacene los valores de x que se quieren evaluar ejemplo >> coef=[2 0 1 -2]; >> x=0:20; >> polyval(coef,x)

%2*x^3+x-2

ans = Columns 1 through 4 -2 1 16 Columns 5 through 8

55

20

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

130 253 436 691 Columns 9 through 12 1030 1465 2008 2671 Columns 13 through 16 3466 4405 5500 6763 Columns 17 through 20 8206 9841 11680 13735 Column 21 16018 RAICES DE POLINOMIOS roots(p); roots halla las raíces del polinomio p Dónde: p vector que almacene los coeficientes del polinomio, en orden decreciente de grado.

Ejemplo >> p = [1 -1 -6]; >> roots(p)

%x^2 –x- 6=0

ans = 3 -2 Ejercicios propuestos

x 4  3x5  2 x 2  5 INVERSA DE UNA FUNCION

g = finverse(f,var) Dónde: g = finverse( f ) devuelve el inverso de la función f . Aquí f es una expresión o función de una variable simbólica, por ejemplo, x . Entonces g es una expresión o función, de forma que f(g(x)) = x . Es decir, finverse(f) devuelve f –1 , siempre f –1 existe. g = finverse( f , var ) utiliza la variable simbólica var como la variable independiente. Entonces g es una expresión o función, tal que f(g(var)) = var . Use este formulario cuando f contiene más de una variable simbólica.

>> syms x >> f (x) = 1 / tan (x); >> g = finverse (f) g(x) = atan(1/x)

21

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

VECTORES Y MATRICES

+ adición o suma – sustracción o resta * multiplicación ' traspuesta ^ potenciación \ división-izquierda / división-derecha .* producto elemento a elemento ./ y .\ división elemento a elemento .^ elevar a una potencia elemento a elemento Vectores.Para poder definir un vector fila, es suficiente escribir sus coordenadas entre corchetes, separados cada elemento del vector mediante un espacio o coma (,). Ejemplo

>> v=[4 7 8] v= 4 7 8 Operaciones con vectores Ejemplo >> a=[1 2 3 4] a= 1 2 3 4 >> b=[7 8 9 4] b= 7 8 9 4 >> c=a+b c= 8 10 12 8 >> d=a-b d= -6 -6 -6 0

22

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Transpuesta (‘ ).- Convierte la fila en columna y viceversa >> b' ans = 7 8 9 4 >> e=a*b' e= 66

Generar Vectores v1=(x:n:y) Dónde: v1nombre del vector xValor inicial nintervalo yValor final Ejemplo >> v1=(0:2:10) v1 = 0 2 4 6

8 10 f=linspace(a,b,x)

Dónde: fnombre del vector aValor inicial bValor final xNúmero de elementos del vector Ejemplo >> a=linspace(0,10,6) a= 0

2

4

6

8 10

23

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Conocer el valor de un elemento de un vector

v(n) Dónde: vNombre del Vector nposición del vector Ejemplo >>a(2) ans = 2 v(m:n) Dónde: vNombre del Vector mposición inicial del vector desde donde va mostrar nposición final del vector hasta donde va mostrar Ejemplo a= 0

2

4

6

4

6

8 10 12 14

>> a(1:4) ans = 0

2

v(m:x:n) Dónde: vNombre del Vector mposición inicial del vector desde donde va mostrar nposición final del vector hasta donde va mostrar xintervalo Ejemplo >> a=0:2:14 a= 0 2 4 6 8 10 12 14 >> a(1:3:7) ans = 0 6 12

24

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Sea el vector u=2:3:18;  Acceder a los tres primeros elementos del vector u  Acceder al segundo, cuarto y sexto elementos del vector u  Acceder al sexto, cuarto y sexto elemento del vector u  Acceder a los tres últimos elementos del vector u  Acceder al primero, tercero y cuarto elementos del vector u

>> u=2:3:18 u= 2 5 8 11 14 17 >> u(1:3) ans = 2 5 8 >> u(2:2:6) ans = 5 11 17 >> >> u(end-2:end) ans = 11 14 17 >> u([1,3,4]) ans = 2 8 11

25

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Matrices.Las matrices se escriben como los vectores, pero separando las filas mediante un punto y coma (;). Ejemplo >> A = [ 1 2 3; 3 4 5; 6 7 8] A= 1 2 3 3 4 5 6 7 8 FUNCIONES TIPICAS CON MATRICES  det: determinante de una matriz  inv, pinv: inversa y pseudoinversa  eig: obtención de auto valores  rank: rango de la matriz  trace: traza de la matriz  diag: produce un vector conteniendo los elementos de la diagonal de una matriz, o si recibe un vector como parámetro, genera una matriz diagonal.  tril: devuelve la matriz triangular inferior de una matriz dada  triu: devuelve la matriz triangular superior de una matriz dada FUNCIONES PARA GENERAR MATRICES  eye(n): produce una matriz identidad de dimensión n × n  zeros(n,m): genera una matriz de ceros de dimensión n × m  ones(n,m): genera una matriz de unos de dimensión n × m  rand(n,m): permite generar una matriz de valores aleatorios, entre 0 y 1, de dimensión n × m  size(n): Tamaño de la matriz n  magic(n): crea una matriz cuadrada n x n de enteros de modo que sumen lo mismo

las filas y las columnas 

length(n): devuelve la mayor de las dos dimensiónes de la matriz n

FUNCIONES PARA OPERAR CON MATRICES

  

exp, log, sqrt… operan elemento a elemento [L,U] = lu (A) factorización LU [Q,R] = qr (A) factorización QR Multiplicación de matrices elemento a elemento

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

26

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA 7 8 9 >> b=[4 2 5; 7 8 9; 4 5 3] b= 4 2 5 7 8 9 4 5 3 >> a.*b ans = 4 4 15 28 40 54 28 40 27 Inversa de la Matriz b Ejemplo >> inv(b) ans = 0.5385 -0.4872 0.5641 -0.3846 0.2051 0.0256 -0.0769 0.3077 -0.4615 Determinante de la Matriz b Ejemplo >> det(b) ans = -39.0000 Transpuesta de la Matriz b Ejemplo >> b' ans = 4 7 2 8 5 9

4 5 3 Traza de la Matriz b

Ejemplo >> trace(b) ans = 15

27

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Ejemplo  Crear una matriz 3×2 y otra de 2×3con los vectores u=[1,0,-3]; v=[4,1,-2];  Calcular el producto u.*v y cociente u./v elemento a elemento de los dos vectores >> u=[1,0,-3]; v=[4,1,-2]; >> A=[u',v'] A= 1 4 0 1 -3 -2 >> A=[u;v] A= 1 4

0 -3 1 -2

>> u.*v ans = 4

0

6

>> u./v ans = 0.2500

0 1.5000

´

28

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA Crear estas dos matrices A y B sin inicializar cada elemento de la matriz, en una sola línea en la ventana de comandos >> A=[(1:5)',zeros(5,1),(-6:2:2)'] A= 1 2 3 4 5

0 -6 0 -4 0 -2 0 0 0 2

>> B=[1:2:11;0:5:25;10:10:60;-6:2:4] B= 1 3 5 7 9 11 0 5 10 15 20 25 10 20 30 40 50 60 -6 -4 -2 0 2 4

Sea la matriz



Crear un vector columna de nueve elementos que contenga los elementos de la primera, tercera y cuarta columna



Crear un vector fila de ocho elementos, que contenga los elementos de la sugunda fila y de la tercera columna

>> A=[0,2,3,4,2;-2,3,-1,5,1;0,2,-4,-3,1] A= 0 2 3 4 2 -2 3 -1 5 1 0 2 -4 -3 1 >> u=[A(:,1);A(:,3);A(:,4)] u= 0 -2 0 3 -1 -4 4 5 -3

29

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA >> u=[A(2,:),A(:,3)'] u= -2 3 -1 5 1

3 -1 -4

Sean las matrices

Realizar las siguientes operaciones con lápiz y papel y comprobar luego con MATLAB A*BT(el superíndice T indica traspuesta) AT*B A.*B (producto elemento a elemento) A./B >> A=[1,0,-1;4,-2,-3] A= 1 0 -1 4 -2 -3 >> B=[1,-2,3;1,-1,2] B= 1 -2 3 1 -1 2 >> A*B' ans = -2 -1 -1 0 >> A'*B ans = 5 -6 11 -2 2 -4 -4 5 -9 >> A.*B ans = 1 0 -3 4 2 -6 >> A./B ans = 1.0000 0 -0.3333 4.0000 2.0000 -1.5000

30

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA Ejercicio propuesto 1.Comprobar si son verdaderas o falsas estas afirmaciones: A+(B+C)= (A+B)+C, propiedad asociativa 2(A+B)=2A+2B A*(B+C)=A*B+A*C, propiedad distributiva A*B=B*A, propiedad conmutativa (A*B)T=BT*AT (A*B)*C=A*(B*C) (A+B)T=AT+BT Ejercicio propuesto 2.Resolver el sistema de tres ecuaciones mediante la operación X=A\b. donde A es la matriz de los coeficientes, b es el vector de los términos indpendientes y X es el vector de las incógnitas.

Ejercicio propuesto 3.Cree la siguiente matriz A

 6 43 2 11 87    A   12 6 34 0 5   34 18 7 41 9    Utilice la matriz A para: a) Crear un vector fila de cinco elementos llamado va, que contenga los elementos de la segunda fila de A. b) Crear un vector fila de seis elementos llamado vb, que contenga los elementos de la cuarta columna de A. c) Crear un vector fila de diez elementos llamado vc, que contenga los elementos de la primera y segunda fila de A. d) Crear un vector fila de seis elementos llamado vd, que contenga los elementos de la segunda a la quinta columna de A.

31

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA GRAFICAS EN 2D plot(x,y,) Dónde: xCoordenada en el eje x yCoordenada en el eje y

>> x=0:0.3:8; >> y=(3*x-1)./(x-3); >> plot(x,y)

plot(x,y,’col est’) Dónde: xCoordenada en el eje x yCoordenada en el eje y colSímbolo de color de trazo estSímbolo de estilo de trazo Nota.- El color de trazo y el estilo deben ir dentro de comillas simples (‘) y separados mediante un espacio

32

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Ejemplo:

>> x=[1 2 3] x= 1

2

3

>> y=[1 2 3] y= 1

2

3

>> plot(x,y,'r --')

Es posible configurar ciertos aspectos de las gráficas como: title(‘texto’)  texto es el nombre del título que se pondrá en la parte central de la grafica xlabel(‘texto’) texto es la etiqueta del eje x de la grafica ylalbel(‘texto’) texto es la etiqueta del eje y de la grafica grid  Nos muestra una grilla text(x,y, 'texto')  texto en el lugar especificado por las coordenadas gtext('texto') texto, el lugar lo indicamos después con el ratón: axis equal fija que la escala en los ejes sea igual: axis square fija que la gráfica sea un cuadrado: axis normal desactiva axis equal y axis square hold on abre una ventana de gráfico hold off borra lo que hay en la ventana de gráfico legend(‘leyenda1’,’leyenda2’, …)  Añade la leyenda del eje, por cada serie de datos mostrada

33

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA GRAFICA DE LA FUNCION SENO Ejemplo Realice la gráfica de la función y=sen(x) en el intervalo de 𝟎 ≤ 𝒙 ≤ 𝟐𝝅 >> x=0:0.01:2*pi; >> y=sin(x); >> plot(x,y,'g .') >> title('Grafica de la funcion seno') >> xlabel('Eje x') >> ylabel('Eje y') >> grid

34

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA GRAFICA DE ARREGLOS COMPLEJOS EJEMPLO: GRAFICAR EL SIGUIENTE ARREGLO DE NUMEROS COMPLEJOS Para graficar números complejos con el comando plot toma la parte real como dato en el eje x, y la parte imaginaria como dato para el eje y [0+0i,1+2i,2+5i,3+4i] SOLUCION: >> a=[0+0i,1+2i,2+5i,3+4i]; >> plot(a) >> title('grafica 1 arreglo de numeros complejos'); >> xlabel('Parte Real'); >> ylabel('Parte Imaginaria'); >> grid >> legend('arreglo de complejos');

GRAFICA DE 2 ARREGLOS COMPLEJOS

35

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA EJEMPLO: GRAFICAR LOS 2 ARREGLO DE NUMEROS COMPLEJOS Cuando graficamos 2 arreglos complejos con el comando plot, lo que hace es tomar la parte real del primer arreglo como valores para el eje x, y la parte real del segundo arreglo como para valores para el eje y A=[0+0i,1+2i,2+5i,3+4i]

>> a=[0+0i,1+2i,2+5i,3+4i]; >> b=sin(a); >> plot(a,b) >> title('grafica de 2 arreglos de numeros complejos'); >> xlabel('parte real del 1er arreglo'); >> ylabel('parte real del 2do arreglo'); >> grid >> legend('2 arreglos de complejos'); >> gtext('UMSS');

GRAFICAR LA LINEA, CON COLOR Y ESTILO DE MARCA

36

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA EJEMPLO: GRAFICAR LOS SIGUIENTES PUNTOS

>> x=[1:10]; >> y=[58.5,63.8,64.2,67.3,71.5,88.3,90.1,90.6,89.5,90.4];

37

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA >> plot(x,y,':dr') >> title('grafica de puntos'); >> xlabel('eje x'); >> ylabel('eje y'); >> grid >> legend('grafica'); >> gtext('cambio de dirección');

EJEMPLO: GRAFICAR LOS MULTIPLES PUNTOS

38

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

>> x=[1:10]; >> y=[58.5,63.8,64.2,67.3,71.5,88.3,90.1,90.6,89.5,90.4]; >> plot(x,y,'--r',x,y*2,'xc',x,y/8,'m*') >> title('multiples graficas'); >> xlabel('eje x'); >> ylabel('eje y'); >> grid >> legend('x vs y','x vs 2y','x vs y/8');

39

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA EJEMPLO: GRAFICAR LA APROXIMACION DE TAYLOR PARA LA FUNCION SENO [0 2*∏] Y QUE TENGA 100 DATOS 𝒙𝟑 𝒙𝟓 𝒇(𝒙) = 𝒙 − + 𝟔 𝟏𝟐𝟎

>> x=linspace(0,2*pi,100); >> y=sin(x); >> y2=x-((x.^3)/6)+((x.^5)/120); >> plot(x,y,'m',x,y2,'o') >> grid >> title('aproximacion de taylor para la funcion seno'); >> xlabel('eje x'); >> ylabel('eje y'); >> legend('sin(x)','aproximacion de taylor');

Graficando con Ezplot

40

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA ezplot(f) Donde: f=función a graficar Nota.- Matlab para el comando ezplot pone por defecto el intervalo Ejemplo Realice la gráfica de la función y=x2 >> syms x >> ezplot(x^2)

ezplot(f,[a b]) Donde: f=función a graficar a=Punto de Inicio del intervalo b= Punto final del intervalo Ejemplo Realice la gráfica de la f(x)=x3-1 en el intervalo de −𝟐 ≤ 𝒙 ≤ 𝟐 >> syms x >> ezplot(x^3 -1,[-2 2])

41

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA fplot(‘f’,[a b])

Donde: f=función a graficar a=Punto de Inicio del intervalo b= Punto final del intervalo Ejemplo Realice la gráfica de la función y=2x-3 en el intervalo de −𝟐 ≤ 𝒙 ≤ 𝟐 >> syms x >> fplot('2*x-3',[-2 2])

fplot(‘f’,[a b],’col est’)

Donde: f=función a graficar a=Punto de Inicio del intervalo b= Punto final del intervalo colSímbolo de color de trazo estSímbolo de estilo de trazo Ejemplo Realice la gráfica de la función y=x2-3 en el intervalo de −𝟒 ≤ 𝒙 ≤ 𝟒 >> syms x >> fplot('x^2 -3',[-4 4],'r --')

SUBFIGURAS

42

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA El comando subplot permite dibujar varias graficas en una misma ventana con el siguiente codigo que es: subplot(m,n,p) Dónde: mEs el número de filas en que se va dividir la ventana nEs el número de columnas en que se va dividir la ventana pNos indica en que posición vamos a grafica Ejemplo Realice la gráfica de la funciónes y=sen(X) y y1=cos(x) en el intervalo 𝟎 ≤ 𝒙 ≤ 𝟐𝝅 >> x = 0:0.1:2*pi; >>y1 = sin(x); >>y2 = cos(x); >>subplot(2,1,1) >>plot(x,y1,'r --') >>title('y = sin(x)'); >>subplot(2,1,2) >>plot(x,y2,'g --') >>title('y = cos(x)');

43

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA EJERCICIO PROPUESTO DE SUPERDIVISION DE VENTA DE FIGURA 1. Subdivida una ventana de figura en dos filas y una columna. 2. En la ventana superior, grafique y = tan(x) para -1,5 ≤ x ≥1,5. Use un incremento de 0.1 3. Agregue un título y etiquetas de eje a su gráfica. 4. En la ventana inferior, grafique y = senh(x) para el mismo rango. 5. Agregue un título y etiquetas a su gráfica.

SOLUCION >> x=-1.5:0.1:1.5; >> y=tan(x); >> y1=sinh(x); >> subplot(2,1,1) >> plot(x,y); >> title('grafica de tan(x)'); >> xlabel('eje x'); >> ylabel('eje y'); >> grid >> legend('tan(x)'); >> subplot(2,1,2); >> plot(x,y1); >> title('sinh(x)'); >> xlabel('eje x'); >> ylabel('eje y'); >> grid >> legend('sinh(x)');

GRAFICAS LOGARITMICAS

44

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

loglog (x, y) : ambos ejes en escala logarítmica semilogx(x, y): eje X logarítmico semilogy(x, y): eje y logarítmico Graficando utilizando loglog Representación en escala logarítmica en ambos ejes Para poder colorear la superficie se pone el código: loglog(x,y) Dónde: xCoordenada en el eje x yCoordenada en el eje y

Ejemplo 𝟐 Realice la gráfica de la función 𝒚 = 𝟖 + 𝒆−𝒙 en el intervalo 𝟏 ≤ 𝒙 ≤ 𝟏𝟎 >> x=1:0.2:10; >> y=8+exp(-x.^2); >> loglog(x,y) >> title('Grafica Logaritmica') >> xlabel('Eje x') >> ylabel('Eje y')

45

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA EJERCICIO PROPUESTO DE LOGARITMOS 1. Subdivida una ventana de figura en dos filas y dos columnas. 2. En la ventana superior izquierda, grafique con plot 𝒇(𝒙) = |𝒆−𝟎.𝟓𝒙 ∗ 𝒔𝒊𝒏(𝟓𝒙)| para 0 ≤ x ≤3 Use un incremento de 0.01 3. Agregue un título a su gráfica. 4. En la ventana superior derecha, grafique con loglog la misma función para el mismo rango. 5. Agregue un título a su gráfica. 6. En la ventana inferior izquierda, grafique con semilogx la misma función para el mismo rango. 7. Agregue un título a su gráfica. 8. En la ventana inferior izquierda, grafique con semilogy la misma función para el mismo rango. 9. Agregue un título a su gráfica.

SOLUCION

>> x=0:0.01:3; >> y=abs((exp(-0.5*x)).*sin(5*x)); >> subplot(2,2,1); >> loglog(x,y); >> title('grafica con loglog'); >> subplot(2,2,2); >> semilogx(x,y); >> grid >> grid off >> grid on >> grid off >> title('grafica con semilogx'); >> subplot(2,2,3); >> semilogy(x,y); >> title('grafica con semilogy'); >> subplot(2,2,4); >> plot(x,y); >> title('grafica normal');

GRAFICAS EN COORDENADAS POLARES

46

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA polar (x,y, ’col est’) Dónde: x=Intervalo y= Funcion colSímbolo de color de trazo estSímbolo de estilo de trazo Ejemplo Calcule la gráfica de la función r=1+cos(w) en el intervalo de 𝟎 ≤ 𝒘 ≤ 𝟐𝝅

>> w=0:0.1:2*pi; >> r=1+cos(w); >> polar(w,r)

EJERCICIO PROPUESTO Calcule la grafica de la función r=1-2sen(3w) en el intervalo de 𝟎 ≤ 𝒘 ≤ 𝟐𝝅 con un intervalo de 0.1 y ponga titulo y etiquetas >> w=0:0.1:2*pi; >> r=1-2*sin(3.*w); >> polar(w,r);

47

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA GRAFICAS DE BARRAS

GRAFICAR CON BAR(X)

>> x=[4 3 2 1]; >> bar(x); >> title('grafica de barras'); >> xlabel('eje x'); >> ylabel('eje y'); >> grid

48

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

GRAFICAR CON BARH(X)

>> x=[4 3 2 1]; >> barh(x); >> title('grafica de barras'); >> xlabel('eje x'); >> ylabel('eje y'); >> grid

GRAFICAR CON PIE(X)

>> x=[4 3 2 1]; >> pie(x); >> title('grafica de pastel'); >> xlabel('eje x'); >> ylabel('eje y'); >> grid

49

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

GRAFICAS EN 3D Un grafico 3-D de línea esta constituido por una línea que se obtiene uniendo una serie de puntos en un espacio tridimensional. La forma mas sencilla y básica de crear un grafico 3-D es mediante la función plot3 plot3 (x,y,z,’col est’) Dónde: x,y,z=representan los vectores con las coordenadas de los puntos. colSímbolo de color de trazo estSímbolo de estilo de trazo

Ejemplo Calcule la gráfica de los puntos, dentro del intervalo 𝟎 ≤ 𝒕 ≤ 𝟔𝝅 𝑥 = √𝑡 𝑠𝑒𝑛(2𝑡) 𝑦 = √𝑡 𝑐𝑜𝑠(2𝑡) 𝑧 = 0.5𝑡 >> t=0:0.1:6*pi; >> x=sqrt(t).*sin(2*t); >> y=sqrt(t).*cos(2*t); >> z=0.5*t; >> plot3(x,y,z,'g --') >> grid >> xlabel('x') >> ylabel('y') >> zlabel('z')

50

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Ejemplo Calcule la gráfica de los puntos, dentro del intervalo 𝟎 ≤ 𝒕 ≤ 𝟐𝟎 𝑦 = (2 + 4 cos(𝑡))cos(𝑡) 𝑥 = (2 + 4 cos(𝑡))𝑠𝑒𝑛(𝑡) 𝑧 = 𝑡2

>> t=0:0.01:20; >> x=(2+4*cos(t)).*sin(t); >> y=(2+4*cos(t)).*cos(t); >> z=t.^2; >> plot3(x,y,z) >> grid >> plot3(x,y,z) >> xlabel('x') >> ylabel('y') >> zlabel('z')

51

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Superficies de Malla La función mesh dibuja superficies 3D a partir de matrices. Con mesh(X,Y,Z) se muestra la matriz Z sobre las coordenadas de la rejilla especificada por las matrices X e Y. Para crear estas matrices se utiliza el comando meshgrid: [X, Y] = meshgrid(x,y) donde x e y son los vectores base a partir de los cuales se construye la rejilla. Las Filas de la matriz de salida X son copias del vector x y las columnas de la matriz de salida Y son copias del vector y. Ejemplo 𝟐 Dibujar la superficie 𝒛 = √𝒙𝟐 + 𝒚𝟐 en el [-2 2] >>x = -2:0.1:2; >>y = -2:0.1:2; >> [x,y] = meshgrid(x,y); %crea matrices para la malla >>z=sqrt(x.^2 + y.^2); >>mesh(x,y,z); %dibuja la grafica

52

>> [x,y] = meshgrid(-2:0.1:2); >> z=sqrt(x.^2 + y.^2); >>mesh(x,y,z);

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Graficando utilizando surf

Es similar a la gráfica de malla, pero aquí se rellenan los espacios entre líneas. La orden que usamos es surf con los mismos argumentos que para mesh.

Ejemplo 𝟐 Dibujar la superficie 𝒛 = √𝒙𝟐 + 𝒚𝟐 en el [-2 2] >> [x,y] = meshgrid(-2:0.2:2); >>z=sqrt(x.^2 + y.^2); >>surf(x,y,z);

Colores para la Superficie: Para poder colorear la superficie se pone el código: colormap(m) Dónde: mes la función del color que deseamos que se pinte

53

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Ejemplo >> [x,y] = meshgrid(-5:0.1:5); >>z = sin(x)+cos(y); >>mesh(x,y,z) >> colormap(hot)

Dibujar al función z=xy2x2+y2−1≤x≤3 1≤y≤4z=xy2x2+y2−1≤x≤3 1≤y≤4

>> x=-1:0.1:3; y=1:0.1:4; [X,Y]=meshgrid(x,y); Z=(X.*Y.^2)./(X.^2+Y.^2); mesh(X,Y,Z); xlabel('X') ylabel('Y') zlabel('Z')

Ejercicio Dibujar la superficie 𝒛 = 𝒙𝟐 − 𝒚𝟐 en el dominio [-2 20] Dibujar la función 𝒛 = 𝒙𝟐 ∗ 𝒚

54

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

PROGRAMACION EN MATLAB Entrar al menu New, y presionar en Script

Comando break, nos permite detener el código % el signo de porcentaje nos sirve para poner comentarios

Ejemplo %hola esto es un comentario LEER DATOS a=input('Mensaje');

Ejemplo a=input('ingrese el primer valor: ');

MOSTRAR DATOS disp('Mensaje a mostrar');

Ejemplo disp('la suma es: ')

ESTRUCTURA CONDICIONAL IF La estructura condiciónal if, verifica si la condición es verdadera ejecuta ciertas tareas y si la condición es falsa no ejecuta nada. Sintaxis.-

55

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA if condición tareas end

Ejemplo x=0; if x==0 disp('hola'); end hola

La estructura condiciónal if else , verifica si la condición es verdadera ejecuta la tarea1 y si la condición es falsa ejecuta la tarea2. Sintaxis.if condición tarea1 else tarea2 end

Ejemplo if x>0 disp('hola'); else disp('chau'); end chau

La estructura condicional if else anidado , verifica la condición1 si es verdadera ejecuta la tarea1 y si la condición1 es falsa verifica la condicion2, si dicha condicion2 es verdadera ejecuta la tarea2 y si es falsa verifica la condicion3, si dicha condicion3 es verdadera ejecuta la tarea3 y si ninguna de las condiciones 1,2 y 3 son verdaderas ejecuta la tarea n. Sintaxis.if condición1 tarea1 else if condicion2

56

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA tarea2 else if condicion3 tarea3 else tarean end

Ejemplo x=-2; if x>0 disp('hola') elseif x==0 disp('chau') else disp('como estas') end como estas ESTRUCTURA SELECTIVA SWITCH La estructura selectiva SWITCH, verifica si la switch_expresion es igual a case_expr1 realiza la tarea1, si switch_expresion es igual a case_expr2 realiza la tarea2, y asi sucesivamente hasta la verificar con la case_exprn. Si al final switch_expresion no es igual a ninguno de los {case_expr2, case_expr3, case_expr4,...case_exprn} entonces realiza la tarea_defecto que está debajo de otherwise

Sintaxis.switch switch_expresion case case_expr1, tarea1 case {case_expr2, case_expr3, case_expr4,...case_exprn} tarean ... Otherwise, tarea_defecto end

Ejemplo x=3; switch x case 1, disp('uno')

57

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA case 2, disp('dos') otherwise, disp('error') end error

ESTRUCTURA DE REPETICION FOR La estructura de repetición for, va repitiendo la tarea desde un valor inicial i, hasta un valor final con incremento. sintaxis.-

for i=valor inicial:incremento:valor final tarea end

Ejemplo for i=1:2:11 disp(i); end 1 3 5 7 9 11

Ejemplo2 for i=1:4 for j=1:4 a(i,j)=i*j; end end >> a a=

58

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA 1 2 3 4

2 3 4 6 6 9 8 12

4 8 12 16

ESTRUCTURA DE REPETICION WHILE La estructura de repetición while, si la condición es verdadera ejecuta la tarea, si es falso no ejecuta nada

while condicion tarea end Ejemplo s=1; i=1; while s> Tsen(150,9) ans = 0.5000

Ejemplo.- Calcular el coseno aproximado de la función

72

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

function y=Tcos(x,n) %calcula la el coseno aproximado xt=x*pi/180; y=0; for k=0:1:n-1 y=y+(-1)^k *xt^(2*k)/factorial(2*k) end

>> Tcos(150,9) ans = -0.8660

Ejemplo: Un silo con estructura cilíndrica de radio r posee una parte superior esférica de radio R. La altura de la porción cilíndrica es H. Escribir un fichero script que determine la altura H a partir de los valores r y R, y del volumen V. Además, el programa debe calcular el área de la superficie del silo. Los datos conocidos son r=30 pies, R=45 pies y V=120000 pies3. Asignar estos valores directamente en la ventana de comandos.

73

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Solución. El volumen total del silo se obtiene sumando el volumen de la parte cilíndrica y el de la parte correspondiente al techo esférico. El volumen de un cilindro se calcula a partir de la expresión: 𝑉𝑐𝑖𝑙𝑖𝑛𝑑𝑟𝑜 = 𝜋𝑟 2 𝐻 Y el volumen de techo esférico se obtiene a partir de: 1 𝑉𝑡𝑒𝑐ℎ𝑜 = 𝜋ℎ2 (3𝑅 − ℎ) 3 Donde: ℎ = 𝑅 − 𝑅𝑐𝑜𝑠𝜃 = 𝑅(1 − 𝑐𝑜𝑠𝜃), 𝑦 𝜃 se obtiene a partir de la expresión 𝑠𝑒𝑛 𝜃 =

𝑟 𝑅

Utilizando la ecuación de arriba, la altura H de la parte cilíndrica se puede expresar de la forma: 𝐻=

𝑉 − 𝑉𝑡𝑒𝑐ℎ𝑜 𝜋𝑟 2

El área de la superficie del silo se calcula sumando el área de la parte esférica y el de la parte cilíndrica: 𝑆 = 𝑆𝑐𝑖𝑙𝑖𝑛𝑑𝑟𝑜 + 𝑆𝑡𝑒𝑐ℎ𝑜 = 2𝜋𝐻 + 2𝜋𝑅ℎ A continuación se muestra el programa, en forma de fichero script llamado silo que resuelve el problema propuesto. fprintf(‘texto %f texto adicional’,nombre_variable) donde:

74

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA texto= Mensaje a mostrar %=Este símbolo marca el lugar donde se insertara el numero dentro del texto nombre_variable= nombre de la variable cuyo valor será visualizado f=carácter de conversión obligatorio valores de puede tomar f e E f g G i

Notacion exponencial en minúsculas (ej. 1.709098e+001). Notacion exponencial en mayusculas (ej. 1.709098E+001). Notacion de punto fijo (ej. 17.090980). Representacion en formato corto de las notaciones e o f. Representacion en formato corto de las notaciones E o f. Entero

%programa calcular la altura y área de la superficie de un silo theta=asin(r/R); %se calcula 𝜃 h=R*(1-cos(theta)); %se calcula h Vtecho=pi*h^2*(3*R-h)/3; %se calcula el volumen del techo H=(V-Vtecho)/(pi*r^2); %se calcula H S=2*pi*(r*H+R*h); %se calcula el área de la superficie S %se visualizan los resultados con fprintf fprintf('La altura H es: %f pies',H); fprintf('\n El area de la superficie del silo es %f pies cuadrados',S)

>> V=120000; r=30; R=45; >> silo La altura H es: 36.433188 pies Ejemplo: Calculo de un Polinomio 𝑭(𝒙) = 𝒙𝟓 − 𝟏𝟐. 𝟏𝒙𝟒 + 𝟒𝟎. 𝟓𝟗𝒙𝟑 − 𝟏𝟕. 𝟎𝟏𝟓𝒙𝟐 − 𝟕𝟏. 𝟗𝟓𝒙 + 𝟑𝟓. 𝟖𝟖

a) Calcular F(g) b) Representar gráficamente F(x) entre -1.5≤ x ≤ 6.7 c) Raíces del polinomio

75

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA Solucion a)>> p=[1 -12.1 40.59 -17.015 -71.95 35.88]; >> polyval(p,6) ans = -146.5200 b) >> x=-1.5:0.1:6.7; >> y=polyval(p,x); >> plot(x,y)

c) >> p=[1 -12.1 40.59 -17.015 -71.95 35.88]; >> r=roots(p) r= 6.5000 4.0000 2.3000 -1.2000 0.5000 Ejemplo: Centroide de un área compuesta Escribir un programa, utilizando un fichero script, que calcule las coordenadas del centroide de un área compuesta como el de la figura adjunta. Un área compuesta puede ser dividida en secciones independientes cuyo centroide es conocido. El usuario necesita dividir el área en secciones y conocer las coordenadas del centroide (dos números), asi como el área de cada sección (un numero). Cuando se ejecute el script, este debe pedir al usuario que introduzca los tres números

76

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA como fila de una matriz. El usuario debe introducir tantas filas como secciones haya. Las secciones que representan agujeros tendrán área negativa. Como salida, el programa debe mostrar coordenadas del centroide del área compuesta. Los datos conocidos se indican en la figura.

77

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Solución El área se divide en seis secciones, como se muestra en la siguiente figura. El área total se calcula sumando las tres secciones de la parte izquierda y restando las tres secciones de la derecha. La localización y coordenadas del centroide de cada sección vienen marcadas en la figura, asi como el área de cada sección.

𝐿𝑎𝑠 𝑐𝑜𝑜𝑟𝑑𝑒𝑛𝑑𝑎𝑠 → 𝑒 → 𝑑𝑒𝑙 𝑐𝑒𝑛𝑡𝑟𝑜𝑖𝑑𝑒 𝑑𝑒𝑙 𝑎𝑟𝑒𝑎 𝑡𝑜𝑡𝑎𝑙 𝑣𝑖𝑒𝑛𝑒𝑛 𝑑𝑎𝑑𝑎𝑠 𝑝𝑜𝑟: 𝑋

𝑌

Son las coordenadas del centroide y el area de cada seccion. A continuacion se muestra el fichero script que calcula las coordenadas del centroide de un area compuesta. Este fichero se ha guardado en disco con el nombre de Centroide. %Este programa calcula las coordenadas del centroide

78

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA %de un area compuesta clear C xs ys As C=input('Introduzca una matriz en la que cada fila tenga tres elementos. \n En cada fila debe introducir las coordenadas as x e y del centroide, asi como el area de la seccion. \n'); xs=C(:,1)'; %Se crea un vector fila para la coordenada x de %cada sección (primera columna de C). ys=C(:,2)'; %Se crea un vector fila para la coordenada y de %cada sección (segunda columna de C). As=C(:,3)'; %se crea un vector fila para el área de cada %sección(tercera columna de C). A=sum(As); %se calcula el área total x=sum(As.*xs)/A; %se calcula las coordenadas del centroide del área %compuesta y=sum(As.*ys)/A; fprintf('Las coordenadas del centroide son: (%f,%f)',x,y)

>> centroide Introduzca una matriz en la que cada fila tenga tres elementos. En cada fila debe introducir las coordenadas as x e y del centroide, asi como el area de la seccion. [100 100 200*200;60-120/pi 200+120/pi pi*60^2/4;60+140/3 220 140*60/2;100 100/pi -pi*50^2/2;150 95 -40*150;105 145 -50*50] Las coordenadas del centroide son: (85.387547,131.211809)>>

79

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Ejemplo Suma, multiplicación y división de polinomios

Suma: Dos polinomios pueden ser sumados o restados sumando o restando sus vectores de coeficientes. Si los polinomios no tienen el mismo grado (los vectores de coeficiente tienen distinto tamaño), el vector más corto debe ser modificado, añadiendo ceros por la izquierda, para que tenga la misma longitud que el vector más largo. Por ejemplo, los polinomios:

𝒇𝟏(𝒙) = 𝟑𝒙𝟔 + 𝟏𝟓𝒙𝟓 − 𝟏𝟎𝒙𝟑 − 𝟑𝒙𝟐 + 𝟏𝟓𝒙 − 𝟒𝟎

𝒇𝟐(𝒙) = 𝟑𝒙𝟑 − 𝟐𝒙 − 𝟔 Se pueden sumar de la siguiente forma: >> p1=[3 15 0 -10 -3 15 -40]; >> p2=[3 0 -2 -6]; >> p=p1+[0 0 0 p2] p= 3 15

0 -7 -3 13 -46

Multiplicación: Para multiplicar dos polinomios se utiliza la función conv de MATLAB, cuya sintaxis es la siguiente:

c=conv(a,b) Donde: a y b = son vectores que contienen los coeficientes de los polinomios a multiplicar c= es un vector que contiene los coeficientes del polinomio producto, resultado de la multiplicación En el caso de la multiplicación, los polinomios no tienen por qué ser del mismo grado La multiplicación de tres o mas polinomios se lleva a cabo mediante el uso repetitivo de la función conv Por ejemplo, el producto de los polinomios f1(x) y f2(x) anteriores da como resultado >> p1=[3 15 0 -10 -3 15 -40]; >> p2=[3 0 -2 -6]; >> pm=conv(p1,p2)

80

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA pm = 9 45 -6 -78 -99 65 -54 -12 -10 240 Que se corresponde con el polinomio: 𝟗𝒙𝟗 + 𝟒𝟓𝒙𝟖 − 𝟔𝒙𝟕 − 𝟕𝟖𝒙𝟔 − 𝟗𝟗𝒙𝟓 + 𝟔𝟓𝒙𝟒 − 𝟓𝟒𝒙𝟑 − 𝟏𝟐𝒙𝟐 − 𝟏𝟎𝒙 + 𝟐𝟒𝟎

División: Para dividir un polinomio entre otro se utiliza la función deconv, cuya sintaxis es la siguiente:

[q,r]=deconv(u,v) Donde: u = es un vector que contiene los coeficientes de polinomio numerador v= es un vector con los coeficientes del polinomio denominador q= es un vector que contiene los coeficientes del polinomio cociente de la división r= es un vector que contiene los coeficientes del polinomio resto de la división

Por ejemplo, la división de 𝟐𝒙𝟑 + 𝟗𝒙𝟐 + 𝟕𝒙 − 𝟔 entre x+3 se puede llevar a cabo de la siguiente forma: >> u=[2 9 7 -6]; >> v=[1 3]; >> [a,b]=deconv(u,v) a= 2 b= 0

%El resultado (cociente) de la operación es el polinomio: 𝟐𝒙𝟐 + 𝟑𝒙 − 𝟐

3 -2 0

0

0

%El resto de la división es cero

Veamos a continuación otro ejemplo de división con resto distinto de cero. Se trata de dividir el polinomio 𝟐𝒙𝟔 − 𝟏𝟑𝒙𝟓 + 𝟕𝟓𝒙𝟑 + 𝟐𝒙𝟐 − 𝟔0 entre 𝒙𝟐 − 𝟓 >> w=[2 -13 0 75 2 0 -60]; >> z=[1 0 -5]; >> [g,h]=deconv(w,z) g= 2 -13 10 10 52

h= 0

0

0

0

0 50 200

%El cociente es: 𝟐𝒙𝟒 − 𝟏𝟑𝒙𝟑 + 𝟏𝟎𝒙𝟐 + 𝟏𝟎𝒙 + 𝟓𝟐

%El resto es:𝟓𝟎𝒙 − 𝟐𝟎𝟎

Es decir, el resultado de la división es: 2𝑥 4 − 13𝑥 3 + 10𝑥 2 + 10𝑥 + 52 +

81

50𝑥+200 𝑥 2 −5

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Ejemplo Calculo del grosor de una caja Las dimensiones exteriores de una caja rectangular (el fondo y las cuatro caras, excluyendo la parte superior) fabricada de aluminio son 24 x 12 x 4 pulgadas. El grosor del fondo y de las caras de la caja es x. Deducir una expresión que relacione el peso de la caja con su grosor x. Calcular el grosor x para una caja que pesa 15 libras. El peso específico del aluminio es 0.101 libras/pulgadas3.

Solucion El volumen del aluminio VAl se puede calcular a partir del peso W de la caja, de la forma:

𝑉𝐴𝑙 =

𝑊 𝜌

Donde: VAl=es el volumen del aluminio 𝜌 = es el peso especifico Por tanto, el volumen del aluminio a partir de las dimensiones de la caja vendra dada por: 𝑉𝐴𝑙 = 24 ∗ 12 ∗ 4 − (24 − 2𝑥)(12 − 2𝑥)(4 − 𝑥) Donde el volumen interior de la caja se resta al volumen exterior. Esta ecuacion puede escribirse de la siguiente forma: (24 − 2𝑥)(12 − 2𝑥)(4 − 𝑥) + 𝑉𝐴𝑙 − (24 ∗ 12 ∗ 4) = 0 Que es un polinomio de tercer grado. Una de las raices del polinomio sera el valor del grosor x de la caja. El siguiente programa script calcula este valor:

82

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA %programa para el calculo del grosor de una caja W=15; gama=0.101; %Asigna valores a W y gama VAlum=W/gama; %Calcula el volumen del aluminio a=[-2 24]; %Asigna a a el polinomio 24-2x b=[-2 12]; %Asigna a b el polinomio 12-2x c=[-1 4]; %Asigna a c el polinomio 4-x Vin=conv(c,conv(a,b)); %Multiplica los tres polinomios anteriores polyeq=[0 0 0 (VAlum-24*12*4)]+Vin %Suma Vin y VAl-24*12*4 x=roots(polyeq) %Calcula las raices del polinomio

como puede comprobarse, a partir de la segunda linea hasta el final, para poder sumar Vin y VAl24*12*4, esta ultima expresion se debe representar como polinomio de grado identico al de Vin, ya que Vin es un polinomio de tercer grado. Cuando se guarda (grosor) y se ejectura el script, se visualizara el valor calculado x: >> grosor polyeq =

%el polinomio es: %−4𝑥 3 + 88𝑥 2 − 576𝑥 + 148.515

-4.0000 88.0000 -576.0000 148.5149

x= 10.8656 + 4.4831i 10.8656 - 4.4831i 0.2687

%El polinomio tiene una raiz real, x=0.2687 pulgadas, que se corresponde con el valor del grosor de las paredes de aluminio de la caja.

83

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

Ejemplo: Calculo de la altura de una boya Una esfera de aluminio de pared delgada se utiliza como boya de señalización. La esfera tiene un radio de 60 cm, y el grosor de la pared de aluminio, cuya densidad es 𝜌𝐴𝑙 = 2690 𝑘𝑔/𝑚3, es de 12 mm. La boya esta situada en el oceano, donde la densidad del agua es de 1030 kg/m3. Calcular la altura h entre la parte superior de la boya y la superficie del agua.

Solucion Según el principio de Arquimides, la fuerza ascencional de empuje que se aplica a un cuerpo sumergido en un fluido es igual al peso del fluido desplazado por el cuerpo en cuestion. Entonces, la esfera de aluminio estara sumergida a una profundidad tal que el peso de la esfera sera igual al peso del fluido desplazado por la parte de la esfera que esta sumergida en el agua.

El peso de la esfera vendra dado por:

4 𝑊𝑒𝑠𝑓𝑒𝑟𝑎 = 𝜌𝐴𝑙 ∗ 𝑉𝐴𝑙 ∗ 𝑔 = 𝜌𝐴𝑙 ( ) 𝜋(𝑟𝑜 3 − 𝑟𝑖 3 )𝑔 3

Donde: VAl=es el volumen del aluminio ro y ri= representan el radio exterior e interior de la esfera, respectivamente. g= es la aceleracion de la gravedad

84

Aux. Joseph Bill Salvatierra Barrionuevo

UNIVERSIDAD MAYOR DE SAN SIMON FACULTAD DE CIENCIAS Y TECNOLOGIA COMPUTACIÓN PARA INGENIERIA

El peso del agua desplazado por la parte de la esfera que esta sumergida vendra dado por:

1 𝑊𝑎𝑔𝑢𝑎 = 𝜌𝑎𝑔𝑢𝑎 ∗ 𝑉𝑎𝑔𝑢𝑎 ∗ 𝑔 = 𝜌𝑎𝑔𝑢𝑎 ( ) 𝜋(2𝑟 − ℎ)𝑔(𝑟𝑜 + ℎ)𝑔 3 Igualando ambos pesos resulta la siguiente ecuacion ℎ3 − 3𝑟𝑜 ℎ2 + 4𝑟𝑜 3 − 4

𝜌𝐴𝑙 (𝑟𝑜 3 − 𝑟𝑖 3 ) = 0 𝜌𝑎𝑔𝑢𝑎

Esta ecuacion es un polinomio de tercer grado con h como incognita. La raiz de dicho polinomio sera la solucion al problema. Con MATLAB se puede obtener la solucion escribiendo el polinomio y utilizando la funcion roots para calcular el valor de h. A continuacion se muestra el codigo correspondiente a esta solucion: rexterior=0.60; rinterior=0.588; %asigna valores a los radios rhoalum=2690;rhoagua=1030; %asigna las densidades a las variables a0=(4*rexterior^3)-(4*rhoalum*(rexterior^3 -rinterior^3)/rhoagua); %calcula el coeficiente a0 p=[1 -3*rexterior 0 a0]; %asigna los coeficientes del polinomio h=roots(p) %calcula las raices del polinomio

Una vez que se ejecuta el fichero en la ventana de comandos (guardado como boya). MATLAB muestra tres posibles valores para la solucion h, ya que el polinomio calculado es de tercer grado. Sin embargo, la unica solucion posible para este problema es h=0.9029 m >> boya h= 1.4542 0.9029 -0.5570

85

Aux. Joseph Bill Salvatierra Barrionuevo