Reporte tareas libros_miguel_angel_garcia_wha

12

Transcript of Reporte tareas libros_miguel_angel_garcia_wha

Page 1: Reporte tareas libros_miguel_angel_garcia_wha

EJERCICIOS - TAREAS DE MATLAB DE LOS LIBROS

Asignatura: HERRAMIENTAS COMPUTACIONALES

Profesor: Dr. Yahir Hernández Mier

Alumno: Miguel Angel Garcia Wha

Matricula: [email protected]

Maestria: Maestría en Ingeniería

Fecha: Martes 27 de enero del 2016

Cd. Victoria, Tamaulipas.

Page 2: Reporte tareas libros_miguel_angel_garcia_wha

Índice

1. Introducción

2. Objetivo

3. Desarollo

4. Conclusiónes

5. Fuentes de información

Page 3: Reporte tareas libros_miguel_angel_garcia_wha

1. Introducción

El uso de la programacion y el uso de las herramientas hacia las maquinas(computadoras) han hechoque hoy en nuestros dias, sean muy importantes ya que contamos con una gran cantidad de conocimientocomo a la vez herramientas que nos facilitan el trabajo de hacer tareas simulteanas, que estas sin su uso sedemorarian mucho tanto en tiempo,dinero y recursos.Hablando un poco de lo que son las herramientas computacionales, recordemos que no nos sustituyen en laeducacion de metodos matematicos, sino que tambien apoya y facilita el desarollo de hacer posible soluciones,metodos,tecnicas o inclusive ideas para ciertos criterios de modelos numericos.Por ultimo mencionar que en este curso se usara MatLab como herramienta computacional para el desarollode estas expresiones,metodos,tecnicas etc. matematicas que se han vuelto de gran utilidad para el ser humanoy en la sociedad en nuestros dias.

2. Objetivo

Utilizar y entender el uso de las herramientas basicas que cuenta el lenguaje MatLab a traves de diferentesejercicios o practicas como es la generación de vectores, funciones trigonométricas asi como la generación degra�cas y muchas cosas interesantes que se veran poco a poco durante a lo largo del curso de la materia deherramientas computacionales.

3. Desarollo

�������- TAREA LIBRO 1 UNIDAD ANGEL WHA ������Del libro �Matlab para ingenieros� 1a Ed, de Holly Moore, resuelva los siguientes ejercicios: 3.3, 3.4, 3.5, 3.11,3.13, 3.16, 3.17 y 3.20

3.3 Las poblaciones tienden a expandirse exponencialmente. Esto es donde P = población actual, P0 =población original, r = tarifa de crecimiento continua, expresado como fracción, y t = tiempo. Si originalmentese tienen 100 conejos que se reproducen a una tasa de crecimiento constante de 90 porciento(r = 0.9) poraño, encuentre cuántos conejos tendrá al �nal de 10 años

1 >> P0 = 100;

2 r = 0.9;

3 t = 10;

4 P = P0*exp(r*t)

5

6 P =

7

8 8.1031e+05

3.4 Las tasas de reacción química son proporcionales a una constante de tasa k que cambia con la tempe-ratura de acuerdo con la ecuación Arrhenius K = koe-Q=RT Para cierta reacción Q= 8000 cal/mol R=1.987cal/mol K ko = 1200min-1 Encuentre los valores de k para temperaturas desde 100 K hasta 500 K, enincrementos de 50 grados. Cree una tabla con sus resultados.

1 >> Q = 8000;

2 R = 1.987;

3 ko = 1200^ -1; % min ^( -1)

4 T = 100:50:500;

5 resultado = (ko) * (exp ((-1*Q)./(R.*T)))

6

7 resultado =

8

9 1.0e-06 *

10

Page 4: Reporte tareas libros_miguel_angel_garcia_wha

11 0.0000 0.0000 0.0000 0.0001 0.0012 0.0084 0.0354 0.1084

0.2653

3.5 Considere los requerimientos de aire acondicionado de la gran casa que se muestra en la �gura P3.5.El interior de la casa se calienta por calor que se desecha de la iluminación y los aparatos eléctricos, del calorque se �ltra desde el exterior y del calor que expulsan las personas en la casa. Un acondicionador de airedebe ser capaz de remover toda esta energía térmica con la �nalidad de evitar que aumente la temperaturainterna.Suponga que hay 20 focos que expulsan 100 J/s de energía cada uno y cuatro aparatos que expulsan 500 J/scada uno. Suponga también que el calor se �ltra del exterior a una tasa de 3000 J/s.(a) ¾Cuánto calor por segundo debe remover de la casa el acondicionador de aire?(b) Una unidad particular de acondicionador de aire puede manipular 2000 J/s.¾Cuántas de estas unidades se requieren para mantener constante la temperatura de la casa?

3.11 El desplazamiento del resorte oscilatorio que se muestra en la �gura P3.11 se puede describir mediantex = A cos(?t) donde x = desplazamiento en el tiempo t, A = desplazamiento máximo, ? = frecuencia angular,que depende de la constante de resorte y la masa unida al mismo, y t = tiempo.Encuentre el desplazamiento x para tiempos desde 0 hasta 10 segundos cuando el desplazamiento máximo Aes 4 cm y la frecuencia angular es 0.6 radianes/s. Presente sus resultados en una tabla de desplazamiento ytiempo.

1 >> A = 4;

2 w = 0.6;

3 fprintf (1, ' Tiempo (t) | Desplazamiento (x) \n');

4 for t =0:10

5 x= A * cos(w*t);

6 fprintf (1, ' %i | %f \n',t,x);

7 end

8 Tiempo (t) | Desplazamiento (x)

9 0 | 4.000000

10 1 | 3.301342

11 2 | 1.449431

12 3 | -0.908808

13 4 | -2.949575

14 5 | -3.959970

15 6 | -3.587034

16 7 | -1.961043

17 8 | 0.349996

18 9 | 2.538772

19 10 | 3.840681

3.13 Puede usar trigonometría para encontrar la altura de un edi�cio, como se muestra en la �gura P3.13.Suponga que mide el ángulo entre la línea de visión y la línea horizontal que conecta el punto de medición yel edi�cio. Puede calcular la altura del edi�cio con las siguientes fórmulas:tan(0) = h/d h = d tan(0)Suponga que la distancia al edi�cio, a lo largo del suelo, es de 120 m y que el ángulo medido a lo largo de lalínea de visión es 30◦ +- 3◦. Encuentre las alturas máxima y mínima que puede tener el edi�cio.

1 >>

2 angulo = 30;

3 distancia = 120;

4 tolerancia = 3;

5 teta1 = (angulo+tolerancia)*(pi/180);

6 teta2 = (angulo -tolerancia)*(pi/180);

7

Page 5: Reporte tareas libros_miguel_angel_garcia_wha

8 altura_maxima_wha = distancia*tan(teta1)

9 altura_minima_wha = distancia*tan(teta2)

10

11 altura_maxima_wha =

12

13 77.9289

14

15

16 altura_minima_wha =

17

18 61.1431

3.16 El rango de un objeto que se dispara en un angulo 0 con respecto al eje x y una velocidad inicial v0(�gura P3.16) está dado por rango = v02/g∗sen(20) para 0 <= 0 <= pi/2 y resistencia del aire despreciable.Use g = 9.81 m/s2 y una velocidad inicial v0 de 100 m/s. Muestre que el rango máximo se obtiene aaproximadamente 0 = pi/4 al calcular el rango en incrementos de 0.05 entre 0 <= 0 <= pi/2.No podrá encontrar el ángulo exacto que produce el rango máximo, porque sus cálculos están en ángulosigualmente espaciados de 0.05 radianes.

1 >> gravedad = 9.81;

2 velocidad = 100;

3 Cpi = pi /4;

4 for i =1:0.05: pi /2

5 rango = (( velocidad ^2)/gravedad)*(sin(Cpi+i));

6 fprintf ('rango %.10f\n',rango );

7 end

8 rango 995.9849784908

9 rango 983.8906290138

10 rango 969.3370653647

11 rango 952.3606638731

12 rango 933.0038567017

13 rango 911.3150257875

14 rango 887.3483819125

15 rango 861.1638292049

16 rango 832.8268154097

17 rango 802.4081683039

18 rango 769.9839186633

19 rango 735.6351102260

3.17 El vector G = [68; 83; 61; 70; 75; 82; 57; 57; 85; 62; 71; 96; 78; 76; 68; 72; 75; 83; 93] representala distribución de cali�caciones �nales en un curso de dinámica. Calcule la media, mediana y la desviaciónestándar de G. ¾Cuál representa mejor la �cali�cación más usual�, la media o la mediana? ¾Por qué? UseMATLAB para determinar el número de cali�caciones en el arreglo (no sólo las cuente) y ordénelas en ordenascendente.

1 >>

2 G =[68 83 61 70 75 82 57 5 76 85 62 71 96 78 76 68 72 75 83 93];

3 temp =0;

4

5 for i =1: length (G)

6 for j=1: length (G)

7 if (G(i) <= G(j))

8 temp =G(i);

9 G(i)=G(j);

10 G(j)= temp ;

11 end

12 end

Page 6: Reporte tareas libros_miguel_angel_garcia_wha

13 end

14

15 media = mean (G)

16 mediana = median (G)

17 desviacionStd = std(G)

18

19 media =

20

21 71.8000

22

23

24 mediana =

25

26 75

27

28

29 desviacionStd =

30

31 18.6169

Números aleatorios3.20 Muchos juegos requieren que el jugador tire dos dados. El número en cada dado puede variar entre 1 y6. Figura P3.16El rango depende del ángulo de lanzamiento y la velocidad de lanzamiento.(a) Use la función rand en combinación con una función de redondeo para crear una simulación de una tiradade un dado.(b) Use sus resultados de la parte (a) para crear una simulación del valor de tirar un segundo dado.(c) Sume sus dos resultados para crear un valor que represente la tirada total durante cada turno.(d) Use su programa para determinar los valores de tirada en un juego de mesa de su preferencia, o use eljuego que se muestra en la �gura P3.20.

1 >>

2 dado1 = randi ([1 6])

3 dado2 = randi ([1 6])

4 suma = dado1 + dado2

5

6 dado1 =

7

8 5

9

10

11 dado2 =

12

13 6

14

15

16 suma =

17

18 11

�������- TAREA LIBRO 2 UNIDAD ANGEL WHA ������Del libro �Métodos numéricos para ingenieros� 5a Ed, de Steven C. Chapra, resuelva los siguientes ejercicios:2.6, 2.10, 2.11, 2.12, 2.16, 2.17 y 2.202.6 La funcion coseno puede evaluarse por medio de la serie in�nita siguiente:Escriba un algoritmo para implementar esta formula de modo que calcule e imprima los valores de cos xconforme se agregue cada termino de la serie.En otras palabras, calcule e imprima la secuencia de valores para: 1 ? x2 2! + x4 4! ? x6 6!

Page 7: Reporte tareas libros_miguel_angel_garcia_wha

hasta el termino de orden n que usted elija. Para cada uno de los valores anteriores, calcule y haga que semuestre el error porcentual relativo.error = valor verdadero aproximacion con la serie valor verdadero

1 >> clear all

2 close all

3 format long

4 x = input ('valor x: ')

5 n = input ('defina n: ')

6 cosenox =1;

7 for i =1:n

8 cosenox = cosenox +(( -1)^i)*((x ^(2* i))/ factorial (2*i));

9 error =(( cos(x)-cosenox )/cos (x)) *100;

10 valores =[ cosenox , 'error'];

11 disp ( valores )

12 end

13 valor x: 1

14

15 x =

16

17 1

18

19 defina n: 3

20

21 n =

22

23 3

24

25 error

26 error

27 error

2.10 El metodo antiguo de dividir y promediar, para obtener el valor aproximado de la raiz cuadrada decualquier numero positivo a se puede formular como:x = x+a/x/2a) Escriba un pseudocodigo bien estructurado para implementar este algoritmo como se ilustra en la �guraP2.10. Utilice la indentacion apropiada para que la estructura sea clara.

1 >> clear all

2 close all

3 a = 2; %Primera aproximacion .

4 aprox = a / 2; %Division .

5 div = a / aprox ; %Promedio .

6 x = mean ([ aprox div ]);

7 disp(div);

8 while (x^2 - a) > 0.000001 %Mientras no se haya alcanzado una tolerancia deseada .

9 aprox = x; %Tomar el promedio calculado para aproximarlo .

10 div = a / aprox ; %Dividir el valor original entre el aproximado a/x.

11 x = mean ([ aprox div ]); %Calcular el promedio . Puede hacerse con (x + div) / 2.

12 end

13 disp (div);

14 2

15

16 1.414211438474870

2.11 Se invierte cierta cantidad de dinero en una cuenta en la que el interés se capitaliza al �nal delperiodo. Debe determinarse el valor futuro, F, que se obtiene con cierta tasa de interés, i, después de n

Page 8: Reporte tareas libros_miguel_angel_garcia_wha

periodos, por medio de la fórmula siguiente: F = P (1 + i)n

Escriba un programa que calcule el valor futuro de una inversión para cada año, desde 1 hasta n.La entrada de la función debe incluir la inversión inicial P, la tasa de interés i (en forma decimal) y el

número de años n para el que ha de calcularse el valor futuro. La salida debe de consistir en una tabla conencabezados y columnas para n y F. Corra el programa para P = 100, 000,00, i = 0,06 y n = 5 años.

1 >>

2 P =100000;

3 i =0.06;

4 anios = 5;

5 fprintf (1 , 'anios ( n ) | Valor futuro ( F ) \n') ;

6 for n =1: anios

7 f = P *(1+ i ) ^ n;

8 fprintf (1 , ' %f | %f \n' ,n , f ) ;

9 end

10

11 anios ( n ) | Valor futuro ( F )

12 1.000000 | 106000.000000

13 2.000000 | 112360.000000

14 3.000000 | 119101.600000

15 4.000000 | 126247.696000

16 5.000000 | 133822.557760

2.12 Las fórmulas económicas están disponibles para calcular los pagos anuales de préstamos. Supongaque obtiene en préstamo cierta cantidad de dinero P y acuerda devolverla en n pagos anuales con una tasade interés de i. La fórmula para calcular el pago anual A es:A = P ∗ i(1 + i)n/(1 + i)n − 1Escriba un programa para calcular A. Pruébelo con P = 55000 y una tasa de interés de 6.6 porciento (i= 0.066). Calcule los resultados para n = 1, 2, 3, 4 y 5, y muestre los resultados en forma de tabla conencabezados y columnas para n y A.

1 >> P = 55000; %Presente .

2 i = 0.066; %Tasa de interes .

3 anios = 5; %Anios a evaluar .

4 fprintf (1 , 'n | A \n') ;

5 for n = 1: anios

6 a = i * (1 - i ) ^ n ;

7 b = (1 + i ) ^ n - 1;

8 c = a / b ;

9 A = 55000 * c ;

10 fprintf (1 , ' %1.0f | %10.2f \n' ,n , A) ;

11 end

12 n | A

13 1 | 51370.00

14 2 | 23223.42

15 3 | 13993.74

16 4 | 9483.01

17 5 | 6852.36

2.16 En la �gura P2.16 se muestra un tanque cilíndrico con base cónica. Si el nivel del líquido está muybajo en la parte cónica, el volumen simplemente es el volumen del cono de líquido. Si el nivel del líquidoestá entre la parte cilíndrica, el volumen total de líquido incluye la parte cónica llena y la parte cilíndricaparcialmente llena. Escriba un procedimiento bien estructurado de función para calcular el volumen deltanque como función de los valores dados de R y d.Utilice estructuras de control de decisiones (como If/Then, Elself, Else, End If). Diseñe la función de modoque produzca el volumen en todos los casos en los que la profundidad sea menor que 3R. Genere un mensajede error (�Sobrepasado�) si se rebasa la altura del tanque, es decir, d >3R. Pruébelo con los datos siguientes:

Page 9: Reporte tareas libros_miguel_angel_garcia_wha

a) d= 0.5b) d= 1.2c) d= 3.0d) d= 3.1

2.17 Se requieren dos distancias para especi�car la ubicación de un punto en relación con el origen en unespacio de dos dimensiones (Véase la �gura P2.17):• Las distancias horizontal y vertical (x, y) en coordenadas cartesianas.• El radio y el ángulo (r, q) en coordenadas radiales.

Es relativamente fácil calcular las coordenadas cartesianas (x, y) sobre la base de las coordenadas polares(r, q). El proceso inverso no es tan simple. El radio se calcula con la fórmula que sigue: r = raizcuadrada(x2+y2) Si las coordenadas quedan dentro del primer o cuarto cuadrante, (ex.x > 0), entonces se emplea unaformula sencilla para el cálculo de theta.a) Escriba un diagrama de �ujo bien estructurado para un procedimiento de subrutina a �n de clacular r ytheta como función de x y y. Exprese los resultados �nales para theta en grados.b) Escriba un procedimiento bien estructurado de función con base en el diagrama de �ujo. Pruebe el programade modo que se llene la tabla que sigue.

x y r theta1 01 10 1�1 1�1 0�1 �10 �11 �10 0

1 >> clear

2 close all

3 x =[1 1 0 -1 -1 -1 0 1 0]

4 y =[0 1 1 1 0 -1 -1 -1 0] %radio =[];

5 theta =0;

6 radio = sqrt (x .^2+ y .^2)

7 for i =1: length ( x )

8 if x ( i ) >0 && y (i ) >0

9 theta ( i ) = atan ( y / x ) *(180/ pi ) ;

10 elseif x ( i ) <0 && y ( i ) >0

11 theta ( i ) =( atan ( y / x ) + pi ) *(180/ pi ) ;

12 elseif x ( i ) <0 && y ( i ) <0

13 theta ( i ) =( atan ( y / x ) - pi ) *(180/ pi ) ;

14 elseif x ( i ) <0 && y ( i ) ==0

15 theta ( i ) =180;

16 elseif x ( i ) ==0 && y ( i ) >0

17 theta ( i ) =90;

18 elseif x ( i ) ==0 && y ( i ) <0

19 theta ( i ) = -90;

20 elseif x ( i ) ==0 && y ( i ) ==0

21 theta ( i ) =0

22 end

23 end

24

25 x =

26

27 1 1 0 -1 -1 -1 0 1 0

Page 10: Reporte tareas libros_miguel_angel_garcia_wha

28

29

30 y =

31

32 0 1 1 1 0 -1 -1 -1 0

33

34

35 radio =

36

37 Columns 1 through 4

38

39 1.000000000000000 1.414213562373095 1.000000000000000 1.414213562373095

40

41 Columns 5 through 8

42

43 1.000000000000000 1.414213562373095 1.000000000000000 1.414213562373095

44

45 Column 9

46

47 0

48

49

50 theta =

51

52 0 0 90 180 180 -180 -90 0 0

2.20 Desarrolle programas bien estructurados para:a) determinar la raíz cuadrada de la suma de los cuadrados de los elementos de un arreglo bidimensional (p.ej., una matriz), yb) normalizar una matriz por medio de dividir cada renglón entre el valor absoluto máximo en el renglón demodo que el elemento mayor en cada renglón sea 1.

1 >> clear

2 close all

3 % matriz de prueba

4 M = rand (5 , 4)

5 %Raiz cuadrada de la suma de los cuadrados

6 res = sqrt ( sum ( M (:) .^2) ) %b) Maximo del valor absoluto de las filas

7 maxfilas = max ( abs ( M ) ,[] ,2)

8 maxfilas ./ max ( abs ( maxfilas ) ,[] ,1)

9

10 M =

11

12 0.814723686393179 0.097540404999410 0.157613081677548 0.141886338627215

13 0.905791937075619 0.278498218867048 0.970592781760616 0.421761282626275

14 0.126986816293506 0.546881519204984 0.957166948242946 0.915735525189067

15 0.913375856139019 0.957506835434298 0.485375648722841 0.792207329559554

16 0.632359246225410 0.964888535199277 0.800280468888800 0.959492426392903

17

18

19 res =

20

21 3.211289496799465

22

23

24 maxfilas =

25

26 0.814723686393179

Page 11: Reporte tareas libros_miguel_angel_garcia_wha

27 0.970592781760616

28 0.957166948242946

29 0.957506835434298

30 0.964888535199277

31

32

33 ans =

34

35 0.839408350961876

36 1.000000000000000

37 0.986167387837651

38 0.986517573000511

39 0.994122925011876

4. Conclusiónes

Como conclusion se tiene que al haber concluido con esta experimentacion del uso de la solucion deproblemas en MatLab se obtuvo la logica y el conocimiento necesario para hacer las pruebas su�cientes deesta misma, al igual que el desarollo del documento de esta que esta hecho con la herramienta de Latex, otraherramienta computacional muy buena que nos permite el uso de sintaxis de etiquetado para el manejo dedocumentacion apropiada.

Page 12: Reporte tareas libros_miguel_angel_garcia_wha

5. Fuentes de información

Libros proporcionados en clase de herramientas computacionales.