Está en la página 1de 6

Taller 12 – MATLAB

Integrantes: Juan Camilo Polo Montoya – Jamer Jesús Solarte

Punto 1

Syms x

fprintf('Para resolver el primer punto, debemos utilizar las siguientes funciones de


demanda, p=17-0.5x, y de oferta, p=5+0.3*x, así, podemos encontrar el punto de
equilibrio y luego el superávit en cada caso. Sin embargo, primero es necesario reescribir
estas ecuaciones de la siguiente forma, para resolver el sistema matricialmente')
fprintf('La ecuación de demanda quedará de la siguinete forma: p+0.5x=17, y la de oferta
quedará así: p-0.3x=5')

A = [1 0.5; 1 -0.3]
B = [17;5]
Valores = inv(A)*B

fprintf('De esta forma, podemos evidenciar que las cantidades de equilibrio de para este
mercado son de 15 unidades a un precio de 9.5')
fprintf('Procedemos a escribir las funciones de demanda y oferta en su forma original')

Demanda = 17 - 0.5*x;
Oferta = 5 + 0.3*x;

fprintf('De acuerdo a los métodos de integración, reescribiremos las funciones


nuevamente en la forma que nos permita lograr la integral definida correcta para
encontrar el superávit')

FDemanda = 17 - 0.5*x - 9.5

SuperavitDemanda=double(int(FDemanda,x,0,15))

FOferta = 9.5 -5 -0.3*x

SuperavitOferta=double(int(FOferta,x,0,15))

fprintf('De esta forma, encontramos que el superávit del consumidor es de 56.25 y el del
productor es de 33.75')
Punto 2

>> syms xa pa xb pb
xa = 17 - 2*pa + 0.5*pb;
pa = 2 + xa + 0.33*xb;
xb = 20 - 3*pb + 0.5*pa;
pb = 2 + 0.5*xb + 0.25*xa;

>> fprintf('Para resolver el punto A es necesario reordenar las ecuaciones anteriores en un


sistema matricial, se igualará cada una en su respectivo orden a un valor numérico con el
fin de modelarlas matemáticamente')
Para resolver el punto A es necesario reordenar las ecuaciones anteriores en un sistema
matricial, se igualará cada una en su respectivo orden a un valor numérico con el fin de
modelarlas matemáticamente>>
>> A = [1 0 2 -0.5; 0 1 -0.5 3; -1 -0.33 1 0; -0.25 -0.5 0 1]

A=

1.0000 0 2.0000 -0.5000


0 1.0000 -0.5000 3.0000
-1.0000 -0.3300 1.0000 0
-0.2500 -0.5000 0 1.0000

>> B = [17;20;2;2]

B=

17
20
2
2

>> fprintf('Para resolver el punto B, es necesario analizar la dimensión del sistema, es un


sistema de 4 ecuaciones lineales con 4 variables, por ende, puede tener solución y si la
tiene, sería una única solución. Para establecer el rango de la matriz ampliada y la matriz
original (que no debe ser mayor a 4) se debe realizar Gauss hasta dejar una de las
ecuaciones con un valor en una variable y un valor en el resultado, sin embargo, Matlab
nos puede ayudar a resolverlo')
Para resolver el punto B, es necesario analizar la dimensión del sistema, es un sistema de
4 ecuaciones lineales con 4 variables, por ende, puede tener solución y si la tiene, sería
una única solución. Para establecer el rango de la matriz ampliada y la matriz original (que
no debe ser mayor a 4) se debe realizar Gauss hasta dejar una de las ecuaciones con un
valor en una variable y un valor en el resultado, sin embargo, Matlab nos puede ayudar a
resolverlo>>
>> fprintf('Para el punto C la solución sería única, ya que como se menncionó antes, es un
sistema de 4 ecuaciones con 4 incógnitas, no puede tener inifinitas soluciones porque no
hay incógnitas libres, sin embargo, puede que el sistema no tenga solución, para ello hay
que comprobarlo con MatLab')
Para el punto C la solución sería única, ya que como se menncionó antes, es un sistema de
4 ecuaciones con 4 incógnitas, no puede tener inifinitas soluciones porque no hay
incógnitas libres, sin embargo, puede que el sistema no tenga solución, para ello hay que
comprobarlo con MatLab>>
>> fprintf('Para el punto D, se resulve el sistema empleando la forma X = inv(A)*B, donde
el vector columna resultante arrojaría la única solución al sistema, dando los valores de
cada variable para esa única solución. El orden viene dado de la siguiente forma, xa, xb,
pa, pb')
Para el punto D, se resulve el sistema empleando la forma X = inv(A)*B, donde el vector
columna resultante arrojaría la única solución al sistema, dando los valores de cada
variable para esa única solución. El orden viene dado de la siguiente forma, xa, xb, pa,
pb>>
>> X = inv(A)*B

X=

4.0147
5.9941
7.9928
6.0008

>> fprintf('Así, la única solución al sistema es la anterior, donde xa=4.0147, xb= 5.9941,
pa=7.9928 y pb=6.0008')
Así, la única solución al sistema es la anterior, donde xa=4.0147, xb= 5.9941, pa=7.9928 y
pb=6.0008>>

Punto 3

>> syms x
>> f= x^5 - 4*x^3 + 2*x^2 +300;

Punto a)

puntoscorte=double(solve(f))
fprintf('para hallar los puntos de corte se igualó la función a 0, y se encontró que sólo
existe una solución dentro del conjunto de los números reales, la cual es cuando x toma el
valor de -3.4487')

Punto b)
valorpuntual=subs(f,-1)
fprintf('El valor de la función cuando x toma el valor de -1 es de 305')

Punto c)

>> fprintf('Para hallar los intervalos de crecimiento primero debemos derivar, encontrar
los puntos críticos con dicha primera derivada, y después, probar valores a ambos lados
de cada punto crítico para ser si este decrece o crece')

d1=diff(f)

puntosd1=double(solve(d1))

fprintf('En este punto, tenemos los puntos críticos de la derivada, como se mencionó
antes, procederemos a evaluar puntos en ambos lados de cada punto crítico para ver el
signo que toma la derivada y ver si es creciente o decreciente')

fprintf('En este caso, dados los puntos críticos encontrados, los valores elegidos para
realizar la prueba son: -2, -1, 0.1, 1, y 2')

prueba1=double(subs(d1,-2))
prueba2=double(subs(d1,-1))
prueba3=double(subs(d1,0.1))
prueba4=double(subs(d1,1))
prueba5=double(subs(d1,2))

fprintf('De acuerdo a los resultados anteriores, podemos evidenciar que la función es


creciente para valores menores a -1.6947, decreciente para valores entre -1.6947 y 0,
creciente para valores entre 0 y 0.3514, decreciente para valores entre 0.3514 y 1.3433, y
creciente nuevamente para valores superiores a 1.3433')

fprintf('Otra forma de resumir el resultado anterior es la siguiente. Intervalos de


crecimiento: (-∞,-1.6947), (0,0.3514), (1.3433,∞). Intervalos de decrecimiento: (-
1.6947,0), (0.3514,1.3433)')

Punto d)

fprintf('Para evaluar los intervalos de concavidad y convexidad, debemos realizar la


segunda derivada y encontrar los puntos críticos de dicha ecuación y, de manera similar al
punto anterior, encontrar los intervalos requeridos')

d2=diff(d1)

puntos2=double(solve(d2))
fprintf('Ahora, con los resultados anteriores, procedemos a evaluar puntos a ambos lados
de cada punto crítico encontrado para evidenciar los intervalos de concavidad y
convexidad, los puntos elegidos son los siguientes: -2, 0, 0.5 y 2')

d2prueba1=double(subs(d2,-2))
d2prueba2=double(subs(d2,0))
d2prueba3=double(subs(d2,0.5))
d2prueba4=double(subs(d2,2))

fprintf('De acuerdo a los resultados anteriores, la función es cóncava para valores


inferiores a -1.1708, es convexa para valores entre -1.1708 y 0.1708, es cóncava de nuevo
para valores entre 0.17 y 1, finalmente es convexa para valores mayores a 1')

fprintf('Otra forma de resumir el resultado anterior es la siguiente. Intervalos de


concavidad: (-∞,-1.1708) y (0.1708,1). Intervalos de convexidad: (-1.7808,0.1708) y (1,∞)')

Punto e)

fprintf('Para resolver este punto, debemos evaluar en la segunda derivada los puntos
críticos encontrados con la primera derivada, si estos toman un valor positivo se trata de
un mínimo, y de tomar un valor positivo de un máximo')

fprintf('Los resultados anteriores permiten evidenciar que los valores 0 y 1.3433 son
puntos mínimos de la función, y los valores 0.3514 y -1.6947 con máximos de la función')

Punto f)
ezplot(f,-50,50)
grid

Punto 4

fprintf('Primero armamos un matriz con los coeficientes de la restricción, y otra matriz con
los resultados de las restricciones que deben cumplirse, de la siguiente forma')

A = [2 -1 1; 4 1 3; -1 0 1]

B = [6 20 -2]

>> fprintf('Ahora escribimos la función objetivo cambiando los signos de la misma')


Ahora escribimos la función objetivo cambiando los signos de la misma>>
>> F = [-1 0 -1]
F=

-1 0 -1

>> fprintf('Ahora se escribe la matriz que permite indicar que las variables son iguales o
mayores a 0, de la siguiente forma')
>> lb = zeros(3,1)

lb =

0
0
0

>> fprintf('Ahora resolvemos el sistema con la función linprog, de la siguiente forma')


>> X = linprog(F,A,B)

Optimal solution found.

X=

1.8000
1.4000
3.8000

>>

También podría gustarte