解多项式方程求常数,我的结果正确吗?

2024-10-01 22:30:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经写了这个代码,我认为是给我不正确的答案。有人能帮我发现我的错误吗? 我试着解多项式方程来找到常数 哪个是 W-Wr=a(W–1)+b(W–1)^2+c(W–1)^3

我的密码是

WrRSnFP = 1.89279768  
WrRZnFP = 2.56891730  
WrRAlFP = 3.37600860  

WT90SnFP = 1.8925821
WT90ZnFP = 2.5685184
WT90AlFP = 3.3753692

deviationSnFP = WT90SnFP - WrRSnFP 
deviationZnFP = WT90ZnFP - WrRZnFP 
deviationAlFP = WT90AlFP - WrRAlFP

x1 = WT90SnFP - 1 
x2 = x1**2   
x3 = x1**3      

y1 = WT90ZnFP - 1   
y2 = y1**2   
y3 = y1**3      

z1 = WT90AlFP - 1   
z2 = z1**2   
z3 = z1**3   

deviation = np.array([[x1,y1,z1],[x2,y2,z2],[x3,y3,z3]])

deviationFunctions = np.array([deviationSnFP,deviationZnFP,deviationAlFP])
 constant = np.linalg.solve(deviation, deviationFunctions)

print constant

我得到的结果是

[1.45993095e-04-2.42110386e-04 1.42562145e-05]

在另一个EXCEL程序中,常数是不同的 例如

[-2.2415485E-04-1.9763300E-05 3.4041874E-07]


Tags: np常数x1x2y1z1wrrsnfpwrrznfp
1条回答
网友
1楼 · 发布于 2024-10-01 22:30:46

我发现我的错误是按矩阵的顺序排列的

deviation = np.array([[x1,y1,z1],[x2,y2,z2],[x3,y3,z3]])

应该是这样的

deviation = np.array([[x1,x2,x3],[y1,y2,y3],[z1,z2,z3]])
deviationFunctions = np.array([deviationSnFP,deviationZnFP,deviationAlFP])
constant = np.linalg.solve(deviation, deviationFunctions)
print constant

我会得到和excel给我一样的答案。你知道吗

[-2.24154846e-04-1.97632998e-05 3.40418736e-07]

相关问题 更多 >

    热门问题