¿Cuántos zapatos se deben producir?
Enviado por Fernanda Astrid Arredondo • 7 de Febrero de 2018 • Documentos de Investigación • 1.978 Palabras (8 Páginas) • 246 Visitas
Nombre: Grecia Karimy Rodriguez García Ariadna Denise Navarro López Fernanda Astrid Arredondo Jara | Matrícula: 2708616 2714227 2728033 |
Nombre del curso: Tecnologías de información para ingeniería | Nombre del profesor: Juan Aurelio Salinas Aldape |
Módulo: 3. Modelos de cálculo con vectores y matrices. Modelación de problemas que involucren el uso de vectores | Actividad: 8. ¿Cuántos zapatos se deben producir? |
Fecha: 27/octubre/2017 | |
Bibliografía: Barreras, M. (2010). Matemáticas con Microsoft Excel (2ª ed.). México: Alfaomega. Márquez T., Osorio S. y Olvera, N. (2011). Introducción a la programación estructurada en C. México: Pearson Educación. Pascual, F. (2008). Guía de campo Excel 2007. México: Alfaomega. Sc.ehu.es. (2017). Sistemas de ecuaciones lineales con MATLAB |
Objetivo: Aplicar los conceptos de matriz y matriz inversa para la solución de problemas cotidianos
Procedimiento:
- Describir 10 funcionalidades de Free Mat con nombre, definición y ejemplo.
- Resolver el problema planteando ecuaciones, con solución en free Mat y además comprobación a mano.
- Investigar una situación o problema en el cual tengamos que usar el mismo método utilizado para resolver el problema, resolviendo en Free Mat y comprobando la solución de manera escrita.
Resultados:
Parte 1.
- 10 funcionalidades de freeMat.
NOMBRE | DEFINICIÓN | EJEMPLO |
Suma de dos números | suma de dos números x e y , y devuelve la suma z=x+y | function [z] = suma (x,y) %Esta función suma dos números x e y %y devuelve el resultado de la suma en z z=x+y; %efectúa la suma end |
Movimiento de caída de los cuerpos | Las ecuaciones que describen el movimiento de caída de los cuerpos son: v=vo + g*t x= xo+vot +1/2 gt2 Donde v0 y x0 es la velocidad inicial y la posición inicial | function [x,v] = caida_libre(t) v=40-10*t; x=200+40*t-5*t^2; end En la ventana de comandos se llama a esta función caida_libre, pasándole un tiempo t=2 s, del siguiente modo >> [pos,vel]=caida_libre(2) pos = 240 vel = 20 |
Media y desviación estándar de un conjunto de datos | La definición de media y desviación estándar es la siguiente [pic 2] Creamos una función denominada estadística a la que se le pasa un vector x de datos y devuelve la media med y la desviación, des, y la guardamos en un fichero con el mismo nombre que la función La función sum calcula la suma de los elementos de un vector x La función length, calcula el número de elementos del vector x. | >> [media, desviacion]= estadistica([1.65 1.82 1.72 1.75 1.73 1.85 1.90 1.74 1.76 1.77]) media = 1.7690 desviacion = 0.0713 MATLAB dispone de dos funciones que calculan la media mean y la desviación estándar, std. >> x=[1.65 1.82 1.72 1.75 1.73 1.85 1.90 1.74 1.76 1.77]; >> mean(x) ans = 1.7690 >> std(x) ans = 0.0713 |
func | se guarda en un fichero func.m y su equivalente anónima function y=func(x) y=cos(x)-x; end | >> z=func(0.5) z = 0.3776 Su equivalente anónima se escribe en la ventana de comandos sin necesidad de guardarla en un fichero y se llama del mismo modo que cualquier otra función >> f=@(x) cos(x)-x; >> z=f(0.5) z = 0.3776 |
Teorema del coseno | Calculamos el lado c del triángulo si conocemos los lados a y b y el ángulo comprendido γ, mediante el teorema del coseno [pic 3] | >> c=@(a,b,gamma) sqrt(a^2+b^2-2*a*b*cosd(gamma)); >> lado=c(3,4,30) lado = 2.0531 |
La derivada de una función | La derivada primera dy/dx, de una función y=f(x) en un punto x0, se puede calcular aproximadamente mediante la fórmula [pic 4] donde h un un número pequeño en comparación con x0. | Tomar h=10-5. function yp= derivada(f,x0) h=1e-5; yp=(f(x0-2*h)-8*f(x0-h)+8*f(x0+h)-f(x0+2*h))/(12*h); end En la ventana de comandos, definimos la función y=x3-6x2+3 (anónima) que queremos derivar y llamamos a la función derivada. >> f1=@(x) x^3-6*x^2+3; >> derivada(f1,2) ans = -12.0000 Calculamos también la derivada segunda de una función en un punto del siguiente modo >> f2=@(x) derivada(f1,x); >> derivada(f2,2) ans = 9.8686e-007 |
Ecuación de segundo grado | ax2+bx+c=0 Las raíces son x1 y x2 y tienen las siguientes propiedades: [pic 5] En el editor de funciones creamos la función comprobar_raices, a la que se le pasa los coeficientes a, b y c de la ecuación de segundo grado y devuelve los cocientes -b/a y c/a de la suma y producto de las dos raíces x1 y x2. Guardamos el código de la función primaria comprobar_raices y de las subfunciones calcula_raiz1 y calcula_raiz2 en el fichero comprobar_raices.m | function [r1,r2]=comprobar_raices(a,b,c) x1=calcula_raiz1(a,b,c); x2=calcula_raiz2(a,b,c); r1=x1+x2; r2=x1*x2; end
function raiz=calcula_raiz1(a,b,c) raiz=(-b+sqrt(b*b-4*a*c))/(2*a); end function raiz = calcula_raiz2(a,b,c) raiz=(-b-sqrt(b*b-4*a*c))/(2*a); end Para comprobar las raíces de la ecuación de segundo grado x2-x-6=0, llamamos a la función comprobar_raices y le pasamos los coeficientes 1,-1,-6 y nos devolverá -b/a=1 y c/a=-6 >> [b_a,c_a]=comprobar_raices(1,-1,-6) b_a = 1 c_a = -6 |
Función con múltiples salidas | Defina una función en un archivo llamado stat.mque devuelve la media y la desviación estándar de un vector de entrada. | función [m, s] = stat (x) n = longitud (x); m = suma (x) / n; s = sqrt (suma ((xm). ^ 2 / n)); fin Llamar a la función desde la línea de comando. valores = [12.7, 45.4, 98.9, 26.6, 53.1]; [ave, stdev] = stat (valores) ave = 47.3400 stdev = 29.4124 |
Función en un archivo de script | Defina un script en un archivo llamado integrationScript.mque calcule el valor del integrando en [pic 6]y calcule el área bajo la curva de 0 a [pic 7]. Incluir una función local que define el integrando, [pic 8]. | % Calcula el valor del integrando en 2 * pi / 3. x = 2 * pi / 3; y = myIntegrand (x) % Calcula el área bajo la curva de 0 a pi. xmin = 0; xmax = pi; f = @myIntegrand; a = integral (f, xmin, xmax) función y = myIntegrand (x) y = sin (x). ^ 3; fin y = 0.6495 a = 1.3333 |
Función con una salida | Define una función en un archivo llamado average.mque acepta un vector de entrada, calcula el promedio de los valores y devuelve un solo resultado. | función y = promedio (x) si ~ isvector (x) error (‘La entrada debe ser un vector' ) final y = suma (x) / longitud (x); fin Llamar a la función desde la línea de comando. z = 1:99; promedio (z) ans = 50 |
Funciones múltiples en un archivo de función | Defina dos funciones en un archivo nombrado stat2.m, donde la primera función llama al segundo. | función [m, s] = stat2 (x) n = longitud (x); m = avg (x, n); s = sqrt (suma ((xm). ^ 2 / n)); fin función m = avg (x, n) m = suma (x) / n; fin La función avges una función local . Las funciones locales solo están disponibles para otras funciones dentro del mismo archivo. Llamar a la función stat2desde la línea de comando. valores = [12.7, 45.4, 98.9, 26.6, 53.1]; [ave, stdev] = stat2 (valores) ave = 47.3400 stdev = 29.4124 |
...