<jupyter_start><jupyter_text>APS 3 - Otimização  16.23  Determinar a distância x para a qual a força elétrica é máxima.<jupyter_code>import math
import matplotlib.pyplot as plt
%matplotlib inline
q = 2*(10**-5)
Q = 2*(10**-5)
e0 = 8.85*(10**-12)
a = 0.9<jupyter_output><empty_output><jupyter_text>Método gráfico. É plotado o gráfico de força elétrica versus distância, a fim de fazer uma estimativa inicial do ponto procurado:<jupyter_code>plt.figure(figsize=(8,8))
x = [0.01*i for i in range(20,100)]
force = [i *   q*Q*    1/((4*(math.pi)*e0)*((i**2+a**2)**1.5)) for i in x]
plt.plot(x, force, color = "black")
plt.xlabel("Distância: x(m)")
plt.ylabel("Força Elétrica (N)")
plt.grid()<jupyter_output><empty_output><jupyter_text>O método empregado será a BUSCA DA RAZÃO ÁUREA.  É possível inferir que a máxima força se dá para uma distância de em torno de 0,6 m.<jupyter_code>def function(x):
    q = 2*(10**-5)
    Q = 2*(10**-5)
    e0 = 8.85*(10**-12)
    a = 0.9
    return    x *   q*Q*    1/((4*(math.pi)*e0)*((x**2+a**2)**1.5))
x_lower = 0.6
x_upper = 1
i = 0
error = 2

while error > 10**(-4):
    
    i+=1
    d = 0.6180339887498949*(x_upper - x_lower)
    r = 1 - 0.5*(math.sqrt(5)-1)

    x1 = x_lower + d
    x2 = x_upper - d

    fx1 = function(x1)
    fx2 = function(x2)
    
    #print("i = ", i, " x1 = ", x1, " x2 = ", x2, " fx1 = ", fx1, " fx2 = ", fx2)

    if fx1 > fx2:
        #the OPTIMA lie in the lower subinterval
        x_lower = x2
        d2 = 0.6180339887498949*(x_upper - x_lower)
        x1 = x_lower + d2 
        x_opt = x1
        
    if fx1 < fx2:
        #the OPTIMA lie in the upper subinterval
        x_upper = x1
        d1 = 0.6180339887498949*(x_upper - x_lower)
        x2 = x_upper - d1
        x_opt = x2
        
    error = 100 * math.fabs((1 - r) * ((x_upper - x_lower)/(x_opt)))
print(x1)
print(i)
print(function(x1))
print(error)<jupyter_output>8.844612312080587e-05<jupyter_text>Assim, a distância procurada é 0.63639 m. Nesta distância, ocorre a força máxima de 1.709109.  16.24  Formulação do problema de programação linear:    A resolução do problema pelo solver do excel forneceu que a produção ótima a fim de minimizar os custos e satisfazer a demanda mínima (considerando-se também as perdas), é de 42 do produto 1 e 12 do produto 2, fornecendo o custo mínimo total de 206.  16.25  Método gráfico. É plotado o gráfico de força elétrica versus distância, a fim de fazer uma estimativa inicial do ponto procurado:<jupyter_code>plt.figure(figsize=(8,8))

s = [0.01*i for i in range(50,150)]
s.remove(1)

T = [(15*(i-(i**2)))/((1-i)*(4*(i**2)-3*i+4)) for i in s]
plt.plot(s,T, color="black")

plt.grid()
plt.xlabel("Escorregamento, s (adimensional)")
plt.ylabel("Torque, T (Nm)")
plt.plot()<jupyter_output><empty_output><jupyter_text>O método empregado será a BUSCA DA RAZÃO ÁUREA.  É possível inferir que o máximo torque se dá para um escorregamento de em torno de 1.<jupyter_code>def function(x):
    return ( 15*(x-(x**2)) ) / ((1-x)*((4*(x**2)) - (3*x) + 4))
x_lower = 0.1
x_upper = 1.5
i = 0
error = 2

while error > 10**(-4):
    
    i+=1
    d = 0.6180339887498949*(x_upper - x_lower)
    r = 1 - 0.5*(math.sqrt(5)-1)

    x1 = x_lower + d
    x2 = x_upper - d

    fx1 = function(x1)
    fx2 = function(x2)
    
    #print("i = ", i, " x1 = ", x1, " x2 = ", x2, " fx1 = ", fx1, " fx2 = ", fx2)

    if fx1 > fx2:
        #the OPTIMA lie in the lower subinterval
        x_lower = x2
        d2 = 0.6180339887498949*(x_upper - x_lower)
        x1 = x_lower + d2 
        x_opt = x1
        
    if fx1 < fx2:
        #the OPTIMA lie in the upper subinterval
        x_upper = x1
        d1 = 0.6180339887498949*(x_upper - x_lower)
        x2 = x_upper - d1
        x_opt = x2
        
    error = 100 * math.fabs((1 - r) * ((x_upper - x_lower)/(x_opt)))
print(x1)
print(i)
print(function(x1))
print(error)<jupyter_output>7.524866638594231e-05
{'fraction_non_alphanumeric': 0.14662231320368474, 'fraction_numerical': 0.09211873080859775, 'mean_word_length': 2.8626482213438735, 'pattern_counts': {'":': 0, '<': 21, '<?xml version=': 0, '>': 23, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '5', 'dir': 'jupyter-structured-clean-dedup', 'id': '419576', 'license': 'MIT', 'n_tokens_mistral': 1893, 'n_tokens_neox': 1678, 'n_words': 433, 'path': 'APS_3_otimizacao.ipynb', 'repo_name': 'alcapriles/seven', 'size': '3908'}