繁体   English   中英

python语法错误中的方程求解器

[英]Equation solver in python syntax error

我在python中制作一个快速简单的方程求解器,用于家庭分配,我需要为每个eps_komp计算sig_a的值,该值介于0到700之间。 我用2个for循环完成了这个,第一个选择了eps_komp值,第二个用于搜索0到700之间最接近的sig_a值,以使方程尽可能接近零。 我用“delta”定义了允许的错误。 这与二分法中的逻辑类似。 这是代码:

eps_komp = [0.00012893048999999997,
 0.018839115269999998,
 0.01230539995,
 0.022996934109999999,
 -0.0037319012899999999,
 0.023293921169999999,
 0.0036927752099999997,
 0.020621037629999998,
 0.0063656587500000002,
 0.020324050569999998]

Rm=700
sigma = np.linspace(0, Rm-0.01, Rm/0.01)
delta = 0.001
sig_a = []

for j in range(len(eps_komp)):
    eps_j = eps_komp[j]
    for i in range(len(sig)):
        eps_j - sigma[i]/Emod - (sigma[i]/RO_K)**(1/RO_n) = diff
        if diff <= delta:
            sig_a.append(sigma[i])

eps_komp的值只是前10个,其​​中有更多,但我只给出了前10个例子。

现在我一直收到这个错误:

SyntaxError:无法分配给运算符

我知道它与索引不正确有关但我只是看不出问题....

如果有人可以帮助,那对我来说意义重大。 谢谢。

卢卡

要将diff分配给计算,它需要位于等号的左侧:

diff = eps_j - sigma[i]/Emod - (sigma[i]/RO_K)**(1/RO_n)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM