Vous êtes sur la page 1sur 28

ASIGNACION CORRESPONDIENTE A FUNCIONES

Problema 1. Encuentre la raíz cubica de -5, tanto con la función nthroot como con elevar -5 a la
potencia 1/3. Explique la diferencia en sus respuestas. Pruebe que ambos resultados de hecho son
respuestas correctas al elevar al cubo y mostrar que son iguales a -5.

Solución.

En la imagen se puede mostrar todo el código.

Problema 2. MATLAB contiene funciones para calcular el logaritmo natural (log), el logaritmo a la
base 10 (log10) y el logaritmo a la base 2 (log2). Sin embargo, se requiere encontrar un logaritmo
de base distinta (por ejemplo, base b), tendrá que hacer la matemática por usted mismo con la
fórmula:
log 𝑒 (𝑥)
log 𝑏 (𝑥) =
log 𝑒 (𝑏)
¿Cuál es el logb de 10 cuando b se define de 1 a 10 en incrementos de 1?

Solución.

Para crear el vector de valores de 𝑏 se utilizó la notación [𝑎 ∶ 𝑖 ∶ 𝑏]′ en donde 𝑎 y 𝑏 es el intervalo


de nuestro vector e 𝑖 es el incremento, la última comilla es para usar un vector transpuesto es decir
en vez de fila se hace columna esto para tener una mejor comprensión de nuestra tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 1
[ 1 2 3] ⏞
⟹ [2]
3
El log 𝑒 (𝑥) es igual que el logaritmo natural que en MATLAB es log(𝑥), por lo cual para encontrar
el logaritmo de 10 para cada valor de 𝑏 simplemente se hace:

1
log(10)
log(𝑏)
En la imagen se puede mostrar todo el código.

Problema 3. Las poblaciones tienden a expandirse exponencialmente. Esto es:

𝑃 = 𝑃𝑜 𝑒 𝑟𝑡
Donde

𝑃 = Población actual

𝑃𝑜 = población original

𝑟 = tarifa de crecimiento continua, expresado como fracción

𝑡 = tiempo

Si originalmente se tiene 100 conejos que se reproducen a una tasa de crecimiento constante de
90% (r=0.9) por año, encuentre cuantos conejos tendrá al final de 10 años.

Solución.

En este caso para resolver el problema simplemente hay que sustituir los datos del problema en la
ecuación dada.

En la imagen se puede mostrar todo el código.

2
Problema 4. Las tasas de reacción química son proporcionales a una constante de tasa k que cambia
con la temperatura de acuerdo con la ecuación Arrhenius:

𝑘 = 𝑘𝑜 𝑒 −𝑄/𝑅𝑇
Para cierta reacción:

𝑄 = 8000 𝑐𝑎𝑙/𝑚𝑜𝑙
𝑅 = 1.987 𝑐𝑎𝑙/𝑚𝑜𝑙 𝐾
𝑘𝑜 = 1200 𝑚𝑖𝑛−1
Encuentre los valores de k para temperaturas desde 100K hasta 500K, en incrementos de 50 grados.
Cree una tabla con sus resultados.

Solución.

Para crear el vector de valores de la temperatura se utilizó la notación [𝑎 ∶ 𝑖 ∶ 𝑏]′ en donde 𝑎 y 𝑏 es


el intervalo de nuestro vector e 𝑖 es el incremento, la última comilla es para usar un vector
transpuesto es decir en vez de fila se hace columna esto para tener una mejor comprensión de
nuestra tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 1
[ 1 2 3] ⏞
⟹ [2]
3
Teniendo los valores de temperatura solo hay que sustituir los valores en la formula.

En la imagen se puede mostrar todo el código.

3
Con los resultados se puede crear una tabla con el comando uitable(a,’Data’,b,’ColumnName’, c),
donde 𝑎 es el nombre de la figura (figure en MATLAB), 𝑏 es el nombre de la matriz que contiene
nuestros datos y 𝑐 el nombre de la variable que contiene el título de las columnas de nuestra tabla,
‘Data’ y ‘ColumnName’ son opciones por defecto y no se cambian se escriben como tal.

La tabla creada se muestra enseguida.

4
Problema 5. Considere los requerimientos de aire acondicionado una casa que en su interior se
calienta por calor que se desecha de la iluminación y los aparatos eléctricos, el calor que se filtra
desde el exterior y del calor que expulsan las personas de la casa. Un acondicionador de aire debe
ser capaz de remover toda esta energía térmica con la finalidad de evitar que aumente la
temperatura interna. Suponga que hay 20 focos, que expulsan 100 J/s cada uno u cuatro aparatos
que expulsan 500 J/s cada uno. Suponga que el calor se filtra del exterior a una tasa de 3000 J/s.

a) ¿Cuánto calor por según 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?

Solución.

5
Problema 6. Genere un juego de azar de 5 suertes de dos dígitos cada suerte.

Solución.

Para generar comandos al azar se utiliza el comando rendi([a,b],c,d) donde 𝑎, 𝑏 es el intervalo, 𝑐 el


numero de datos en columnas y 𝑑 el número de datos en fila. Para generar datos de dos cifras estos
tienen que estar en el intervalo 10 a 99 ya que antes solo son de una cifra y después son de 3.

El código se muestra en la siguiente imagen.

6
Problema 7. Los numero primos muy grandes se usan en criptografía. ¿Cuántos números primos
existen entre 10000 y 20000? (Estos no son números primos suficientemente grandes para usarse
en cifrados.) (Sugerencia: use la función primes y el comando length.)

Solución.

El comando primes solo encuentra números primos de 1 hasta el valor indicado por ello se
encuentran los valores primos de 1 hasta 20000 y los números primos de 1 hasta 10000 y se restan
los datos obtenidos de cada uno con el comando length tal y como se muestra en la imagen.

Problema 8. A veces es conveniente tener una tabla de seno, coseno y tangente en lugar de usar
una calculadora. Cree una tabla de estas tres funciones trigonométricas para ángulos de 0 a 2𝜋, con
un espaciamiento de 0.1 radianes. Su tabla debe contener una columna para el ángulo, y luego seno,
coseno y tangente.

Solución.

Para crear el vector de valores del ángulo se utilizó la notación [𝑎 ∶ 𝑖 ∶ 𝑏]′ en donde 𝑎 y 𝑏 es el
intervalo de nuestro vector e 𝑖 es el incremento, la última comilla es para usar un vector transpuesto
es decir en vez de fila se hace columna esto para tener una mejor comprensión de nuestra tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 1
[ 1 2 3] ⏞
⟹ [2]
3

7
Como podemos observar en la imagen MATLAB multiplica nuestra matriz por cierto valor debido a
𝜋 3
que dos valores de la tangente son demasiado grandes estos valores se encuentran en y 𝜋 para
2 4
arreglar este problema podemos cambiar el formato de decimales a format short e.

Con los resultados se puede crear una tabla con el comando uitable(a,’Data’,b,’ColumnName’, c),
donde 𝑎 es el nombre de la figura (figure en MATLAB), 𝑏 es el nombre de la matriz que contiene
nuestros datos y 𝑐 el nombre de la variable que contiene el título de las columnas de nuestra tabla,
‘Data’ y ‘ColumnName’ son opciones por defecto y no se cambian se escriben como tal.

8
Como podemos observar el tamaño de la tabla no es lo demasiado larga para contener todos los
datos esto lo podemos solucionar incluyendo la opción ‘Position’.

En la siguiente imagen se muestra como se incluyó la opción ‘Position’ en nuestro comando uitable.

9
Enseguida se muestra nuestra tabla más ajustada a los datos.

10
Problema 9.

Solución.

ASIGNACIONES DE OPERACIONES DE ARREGLOS

Problema 1.

a) Cree un vector igualmente espaciado de valores desde 1 hasta 20 en incrementos de 1.


b) Cree un vector con valores desde cero hasta 2𝜋 en incrementos de 1/𝜋.
c) Cree un vector que contenga 15 valores, igualmente espaciados entre 4 y 20. (Sugerencia
use el comando linspace. Si no puede recordar la sintaxis, escriba help linspace.)
d) Cree un vector que contenga 10 valores logarítmicamente espaciados entre 10 y 1000.
(Sugerencia: use el comando logspace.)

Solución.

11
a) Para crear el vector de valores se utilizó la notación [𝑎 ∶ 𝑖 ∶ 𝑏]′ en donde 𝑎 y 𝑏 es el intervalo
de nuestro vector e 𝑖 es el incremento, la última comilla es para usar un vector transpuesto
es decir en vez de fila se hace columna esto para tener una mejor comprensión de nuestra
tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 1
[ 1 2 3] ⏞
⟹ [2]
3

b) Para crear el vector de valores se utilizó la notación [𝑎 ∶ 𝑖 ∶ 𝑏]′ en donde 𝑎 y 𝑏 es el intervalo


de nuestro vector e 𝑖 es el incremento, la última comilla es para usar un vector transpuesto
es decir en vez de fila se hace columna esto para tener una mejor comprensión de nuestra
tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 1
[ 1 2 3] ⏞
⟹ [2]
3

12
c) Para crear el vector de valores se utilizó el comando linspace(a,b,n), donde a y b es el
intervalo que deseamos y n el número de valores que deseamos entre este intervalo, la
última comilla es para usar un vector transpuesto es decir en vez de fila se hace columna
esto para tener una mejor comprensión de nuestra tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 1
[ 1 2 3] ⏞
⟹ [2]
3
El código se muestra en la siguiente imagen.

d) Para este caso se usó el comando logspace(a,b,n) donde a y b es el intervalo de exponentes


con base 10 es decir de 10𝑎 hasta 10𝑏 en este caso queremos de 10 a 1000 lo que sería lo

13
mismo que 101 hasta 1010 entonces a y b serán 1 y 10 y n el número de intervalos que es
10, esto se muestra en la siguiente imagen.

Problema 2.

a) Cree una tabla de conversión de pies a metros. Comience la columna pies en 0, incremente
en 1 y termine en 10 pies. (busque factor de conversión en un manual o en línea.)
b) Cree una tabla de conversiones de radianes a grados. Comience la columna radianes en 0 e
incremente por 0.1𝜋 radian, hasta 𝜋 radianes. (Busque el factor de conversión en un manual
o en línea.)
c) Cree una tabla de conversiones de ml/h a pies/s. Comience la columna ml/h en 0 y termine
en 100 ml/h. Imprima 15 valores en su tabla. (Busque el factor de conversión en un manual
o en línea.)

Solución.

a) Para convertir de pies a metros se usó la siguiente equivalencia:


1 ft = 0.3048 m

Para crear el vector de pies se utilizó la notación [𝑎 ∶ 𝑖 ∶ 𝑏]′ en donde 𝑎 y 𝑏 es el intervalo de


nuestro vector e 𝑖 es el incremento, la última comilla es para usar un vector transpuesto es decir
en vez de fila se hace columna esto para tener una mejor comprensión de nuestra tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 21
[ 21 22 23] ⏞
⟹ [22]
23

14
Con los resultados se puede crear una tabla con el comando uitable(a,’Data’,b,’ColumnName’, c),
donde 𝑎 es el nombre de la figura (figure en MATLAB), 𝑏 es el nombre de la matriz que contiene
nuestros datos y 𝑐 el nombre de la variable que contiene el título de las columnas de nuestra tabla,
‘Data’ y ‘ColumnName’ son opciones por defecto y no se cambian se escriben como tal.

15
b) Para convertir de radianes a grados se usó la siguiente equivalencia:
1 𝜋 = 180°
Para crear el vector de radianes se utilizó la notación [𝑎 ∶ 𝑖 ∶ 𝑏]′ en donde 𝑎 y 𝑏 es el intervalo de
nuestro vector e 𝑖 es el incremento, la última comilla es para usar un vector transpuesto es decir
en vez de fila se hace columna esto para tener una mejor comprensión de nuestra tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 21
[ 21 22 23] ⏞
⟹ [22]
23

16
Con los resultados se puede crear una tabla con el comando uitable(a,’Data’,b,’ColumnName’, c),
donde 𝑎 es el nombre de la figura (figure en MATLAB), 𝑏 es el nombre de la matriz que contiene
nuestros datos y 𝑐 el nombre de la variable que contiene el título de las columnas de nuestra tabla,
‘Data’ y ‘ColumnName’ son opciones por defecto y no se cambian se escriben como tal.

17
c) Para convertir de ml/h a ft/s se usó la siguiente equivalencia:
1 mi/h = 1.466667 ft/s

Para crear el vector de ml/h se utilizó la notación [𝑎 ∶ 𝑖 ∶ 𝑏]′ en donde 𝑎 y 𝑏 es el intervalo de


nuestro vector e 𝑖 es el incremento, la última comilla es para usar un vector transpuesto es decir
en vez de fila se hace columna esto para tener una mejor comprensión de nuestra tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 21
[ 21 22 23] ⏞
⟹ [22]
23

18
Con los resultados se puede crear una tabla con el comando uitable(a,’Data’,b,’ColumnName’, c),
donde 𝑎 es el nombre de la figura (figure en MATLAB), 𝑏 es el nombre de la matriz que contiene
nuestros datos y 𝑐 el nombre de la variable que contiene el título de las columnas de nuestra tabla,
‘Data’ y ‘ColumnName’ son opciones por defecto y no se cambian se escriben como tal.

19
Problema 3. La ecuación general para la distancia que recorre un cuerpo en caída libre (ignorando
la fricción del aire) es:
1
𝑑 = 𝑔𝑡 2
2
𝑚
Suponga que 𝑔 = 9.8 𝑠2 . Genere una tabla de tiempo contra distancia recorrida para valores de
tiempo de 0 a 100 segundos. Elija un incremento adecuado para su variable tiempo. (Sugerencia:
tenga cuidado de usar los operadores correcto; ¡𝑡 2 es una operación arreglo!)

Solución.

Para crear el vector de tiempo se utilizó la notación [𝑎 ∶ 𝑖 ∶ 𝑏]′ en donde 𝑎 y 𝑏 es el intervalo de


nuestro vector e 𝑖 es el incremento, la última comilla es para usar un vector transpuesto es decir
en vez de fila se hace columna esto para tener una mejor comprensión de nuestra tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 21
[ 21 22 23] ⏞
⟹ [22]
23

20
Con los resultados se puede crear una tabla con el comando uitable(a,’Data’,b,’ColumnName’, c),
donde 𝑎 es el nombre de la figura (figure en MATLAB), 𝑏 es el nombre de la matriz que contiene
nuestros datos y 𝑐 el nombre de la variable que contiene el título de las columnas de nuestra tabla,
‘Data’ y ‘ColumnName’ son opciones por defecto y no se cambian se escriben como tal.

Como podemos observar el tamaño de la tabla no es lo demasiado larga para contener todos los
datos esto lo podemos solucionar incluyendo la opción ‘Position’.

21
En la siguiente imagen se muestra como se incluyó la opción ‘Position’ en nuestro comando uitable.

Enseguida se muestra nuestra tabla más ajustada a los datos.

22
Problema 4. La ley de Newton de la gravitación universal dice que la fuerza ejercida por una
partícula sobre otra es:
𝑚1 𝑚2
𝐹=𝐺
𝑟2
Donde la constante de gravitación universal G tiene el valor experimental de:

𝑁𝑚2
𝐺 = 6.673 ∗ 10−11
𝑘𝑔2

23
La masa de cada partícula es 𝑚1 y 𝑚2 , respectivamente, y 𝑟 es la distancia entra las dos partículas.
Use la ley de Newton de gravitación universal para encontrar la fuerza que ejerce la tierra sobre la
Luna, si supone que:

 La masa de la tierra es aproximadamente 6 ∗ 1024 𝑘𝑔.


 La masa de la Luna es aproximadamente 7.4 ∗ 1022 𝑘𝑔.
 La Tierra y la Luna están separadas a una distancia promedio de 3.9 ∗ 108 𝑚.

Solución.

En este caso solo es cuestión de sustituir los datos en la ecuación dada.

Problema 5. Se sabe que la Tierra y la Luna no siempre están separadas la misma distancia.
Encuentre la fuerza que la Luna ejerce sobre la tierra para 10 distancias entre 3.8 ∗ 108 𝑚 y de 4 ∗
108 𝑚.

Solución.

Para crear el vector de distancias se utilizó la notación [𝑎 ∶ 𝑖 ∶ 𝑏]′ en donde 𝑎 y 𝑏 es el intervalo de


nuestro vector e 𝑖 es el incremento, la última comilla es para usar un vector transpuesto es decir
en vez de fila se hace columna esto para tener una mejor comprensión de nuestra tabla.
𝑆𝑒 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑛𝑒 𝑒𝑙 𝑣𝑒𝑐𝑡𝑜𝑟 21
[ 21 22 23] ⏞
⟹ [22]
23
Una vez creado el vector de distancias se calculó la fuerza para cada una de ellas recordando que
como son operaciones con arreglos se usan los operadores .∗ para multiplicar, ./ para dividir y . ^
para elevar a una potencia. Son los operadores comunes solo que se coloca un punto antes de ellos.

24
Problema 6. Cree una matriz llamada G_a_R compuesta de dos columnas, una que represente
grados y la otra que represente el valor correspondiente en radianes. Para este ejercicio es válido
cualquier conjunto de valores. Guarde la matriz a un archivo llamado degrees.dat. Una vez guardado
el archivo. Limpie su área de trabajo y luego cargue los datos del archivo de vuelta en MATLAB.

Solución.

Se escogió el intervalo de 0 a 360 grados con incrementos de 5 grados. Para convertir de grados
radianes se usó la siguiente equivalencia.

180° = 1 𝜋

25
Para guardar la matriz se usó el comando save nombre.dat matriz -ascii -double en el cual se coloca
el nombre que le queramos poner a nuestro archivo seguido del nombre de nuestra matriz.

Para borrar todo se usa el comando clear y para limpiar la ventana de comandos se usa clc.

26
Para cargar el archivo se usa el comando load seguido del nombre de nuestro archivo.

27
28