私のCSDNブログの列:https://blog.csdn.net/yty_7
Githubアドレス:https://github.com/yot777/
アプリケーションの背景
子供と保護者のグループが旅行に出かけました。バスはバスで、子供料金は3元/人、保護者料金は3.2元/人、合計料金は118.4元でした。 3.5元/人、親の運賃は3.6元/人、合計運賃は135.2元です、それぞれ子供と親の数を尋ねます。
子供の数は親の数であると仮定されます。
一般式
2.行列式
3.方程式の解(消去法)
4.行列式ソリューション
5.マトリックスソリューション
6.行列解を使用して線形方程式を解くプログラムを作成する
(1)アレイアレイソリューション
import numpy as np
#数组array解法
print("数组array解法:")
A1 = np.array([[3 , 3.2],[3.5, 3.6]])
b1 = np.array([118.4, 135.2])
#数组array求逆矩阵
A1_1 = np.linalg.inv(A1)
print("A=\n", A1)
print("A_1=\n", A1_1)
print("b=", b1)
#数组array求解公式
x1 = np.dot(A1_1,b1)
print("方程最终的解x=\n",x1)
実行結果は次のとおりです。
数组array解法:
A=
[[3. 3.2]
[3.5 3.6]]
A_1=
[[-9. 8. ]
[ 8.75 -7.5 ]]
b= [118.4 135.2]
方程最终的解x=
[16. 22.]
(2)マトリックスソリューション
import numpy as np
#矩阵matrix解法
print("\n矩阵matrix解法:")
A2 = np.mat([[3 , 3.2],[3.5, 3.6]])
b2 = np.mat([118.4, 135.2])
#矩阵matrix求逆矩阵
A2_1 = A2.I
print("A=\n", A2)
print("A_1=\n", A2_1)
print("b=", b2)
#矩阵matrix求解公式
#注意矩阵乘法要严格按照(2,2)*(2,1)的形状才能进行,因此要把b2转置
x2 = A2_1 * b2.T
print("方程最终的解x=\n",x2)
実行結果は次のとおりです。
矩阵matrix解法:
A=
[[3. 3.2]
[3.5 3.6]]
A_1=
[[-9. 8. ]
[ 8.75 -7.5 ]]
b= [[118.4 135.2]]
方程最终的解x=
[[16.]
[22.]]
まとめ
Pythonを使用して1つの変数で線形方程式を解く場合、最も重要なのは次の式です。
Pythonプログラムに変換
配列配列、行列行列が使用できますが、逆行列と乗算の違いに注意してください。
私のCSDNブログの列:https://blog.csdn.net/yty_7
Githubアドレス:https://github.com/yot777/
この章があなたに役立つと思うなら、フォローして、コメントして、いいね!Githubはあなたのフォローとスターを歓迎します!