def determineVariables(self): console.printHyphen() console.highlight("1. Determinamos las variables") print("x = Base del rectangulo") print("y = Altura del rectangulo") print("\nArea Rectangulo = x*y => A(x,y)") print("Perimetro Rectangulo = 2x + 2y") console.printHyphen()
def getAreaFunction(self): console.highlight("2. Obtenemos el valor de y a partir del perimetro") print("2x + 2y = {}".format(perimeter)) self.y_value_in_x = sp.solve( sp.Eq(self.equation_perimeter, self.perimeter), self.y) print("y = {}".format(str(self.y_value_in_x[0]))) console.highlight("3. Reemplazamos el valor de y en la funcion A(x,y)") str_equation_area = 'x*({})'.format(str(self.y_value_in_x[0])) self.equation_area_x = sp.parse_expr(str_equation_area) print("A(x,y) = {}".format(self.equation_area_x)) print("\nPodemos decir: ") print("A(x) = {}".format(self.equation_area_x)) console.printHyphen()
def getMinMaxValues(self): """ Hallando los valores mínimos y máximos de la función. """ console.highlight( "6. Hallando los valores minimos y maximos de la funcion A(x)") print("Aplicamos la 2da derivada a la funcion A(x)\n") print("{} = {}".format('A(x)'.ljust(6, ' '), self.equation_area_x)) print("{} = {}".format("A'(x)".ljust(6, ' '), self.dxA)) self.dxdxA = sp.diff(self.dxA, self.x) print("{} = {}".format("A''(x)".ljust(6, ' '), self.dxdxA)) self.result_2da_dev = int(self.dxdxA) if (self.result_2da_dev < 0): print("{} < 0, entonces existe un {} en x = {}".format( "A''(x)".ljust(6, ' '), 'maximo absoluto', self.x_value[0])) console.printHyphen()
def getCriticalValues(self): """ Obteniendo los valores críticos aplicando la primera derivada a la función A(x,y) """ console.highlight("4. Aplicando derivada a la funcion A(x)") self.dxA = sp.diff(self.equation_area_x, self.x) print("A'(x) = {}".format(self.dxA)) # Hallando los valores críticos console.highlight("5. Hallando los valores criticos") print("Igualamos la derivada de la funcion A a CERO para obtener X") print("A'(x) = 0") self.x_value = sp.solve(sp.Eq(self.dxA, 0), self.x) print("El valor de x = {}".format(self.x_value[0])) console.printHyphen()
def getCriticalValues(self): """ Obteniendo los valores críticos aplicando la primera derivada a la función C(x) """ console.highlight("Aplicando derivada a la funcion C(x)") self.dxC = sp.diff(self.equation_cost, self.x) print("C'(x) = {}".format(self.dxC)) # Hallando los valores críticos console.highlight("Hallando los valores criticos") print("Igualamos la derivada de la funcion C a CERO para obtener X") print("C'(x) = 0") self.x_value = sp.solve(sp.Eq(self.dxC, 0), self.x) print("Los valores criticos de X son: {}".format(str(self.x_value))) #print("Seleccionamos x = {}".format(self.x_value[1])) console.printHyphen()
def getMinMaxValues(self): """ Hallando los valores mínimos y máximos de la función. """ console.highlight( "Hallando los valores minimos y maximos de la funcion I(x)") print("Aplicamos la 2da derivada a la funcion I(x)\n") print("{} = {}".format('I(x)'.ljust(6, ' '), self.equation_i)) print("{} = {}".format("I'(x)".ljust(6, ' '), self.dxCi)) self.dxdxCi = sp.diff(self.equation_i, self.x, 2) print("{} = {}".format("I''(x)".ljust(6, ' '), self.dxdxCi)) for p in self.x_value_i: if self.dxdxCi.subs(self.x, p) > 0: tipo = "Min" elif self.dxdxCi.subs(self.x, p) < 0: tipo = "Max" else: tipo = "Indefinido" print("x = %f (%s)" % (p, tipo)) console.highlight( "Hallando los valores minimos y maximos de la funcion G(x)") print("Aplicamos la 2da derivada a la funcion G(x)\n") print("{} = {}".format('G(x)'.ljust(6, ' '), self.equation_g)) print("{} = {}".format("G'(x)".ljust(6, ' '), self.dxCg)) self.dxdxCg = sp.diff(self.equation_g, self.x, 2) print("{} = {}".format("G''(x)".ljust(6, ' '), self.dxdxCg)) for p in self.x_value_g: if self.dxdxCg.subs(self.x, p) > 0: tipo = "Min" elif self.dxdxCg.subs(self.x, p) < 0: tipo = "Max" else: tipo = "Indefinido" print("x = %f (%s)" % (p, tipo)) console.printHyphen()
def getMinMaxValues(self): """ Hallando los valores mínimos y máximos de la función. """ console.highlight( "Hallando los valores minimos y maximos de la funcion C(x)") print("Aplicamos la 2da derivada a la funcion C(x)\n") print("{} = {}".format('C(x)'.ljust(6, ' '), self.equation_cost)) print("{} = {}".format("C'(x)".ljust(6, ' '), self.dxC)) self.dxdxC = sp.diff(self.equation_cost, self.x, 2) print("{} = {}".format("C''(x)".ljust(6, ' '), self.dxdxC)) for p in self.x_value: if self.dxdxC.subs(self.x, p) > 0: tipo = "Min" elif self.dxdxC.subs(self.x, p) < 0: tipo = "Max" else: tipo = "Indefinido" print("x = %f (%s)" % (p, tipo)) console.printHyphen()
def getCriticalValues(self): """ Obteniendo los valores críticos aplicando la primera derivada """ console.printHyphen() console.highlight("Hallando valores criticos para la funcion I(x)") print("\nFuncion I(x) = 28*x**2 + 36000*x") console.highlight("Aplicando derivada a la funcion I(x)") self.dxCi = sp.diff(self.equation_i, self.x) print("I'(x) = {}".format(self.dxCi)) # Hallando los valores críticos console.highlight("Hallando los valores criticos para I(x)") print("Igualamos la derivada de la funcion I a CERO para obtener X") print("I'(x) = 0") self.x_value_i = sp.solve(sp.Eq(self.dxCi, 0), self.x) print("Los valores criticos de X para la funcion I son: {}".format( str(self.x_value_i))) console.highlight("Hallando valores criticos para la funcion G(x)") print("\nFuncion G(x) = 44*x**2 + 12000*x + 70000") console.highlight("Aplicando derivada a la funcion G(x)") self.dxCg = sp.diff(self.equation_g, self.x) print("G'(x) = {}".format(self.dxCg)) # Hallando los valores críticos console.highlight("Hallando los valores criticos para G(x)") print("Igualamos la derivada de la funcion G a CERO para obtener X") print("G'(x) = 0") self.x_value_g = sp.solve(sp.Eq(self.dxCg, 0), self.x) print("Los valores criticos de X para la funcion G son: {}".format( str(self.x_value_g))) console.printHyphen()
def determineVariables(self): console.printHyphen() console.highlight("1. Determinamos las variables") print("\nFuncion de Costo C(x) = 0.2* (0.01x**2 + 121)") console.printHyphen()