質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

Q&A

0回答

298閲覧

jupyterの連立方程式の算出

zengo13

総合スコア10

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

0グッド

0クリップ

投稿2018/10/16 08:49

前提・実現したいこと

連立方程式を出したい
ここに質問の内容を詳しく書いてください。`

(例)jupyter で熱環境のプログラムを作成時に連立方程式が必要となりプログラムを作成していたのですが、Tmoldf1[i] = shitaf1 の部分でエラーが発生しました。

TypeError

1<ipython-input-112-163afe8584c2> in <module>() 2 157 print(solve([exp1,exp2,exp3,exp4],[shitaf1,shitab1,shitaf2,shitab2])) 3 158 4--> 159 Tmoldf1[i] = shitaf1 5 160 Tmoldb1[i] = shitab1 6 161 Tmoldf2[i] = shitaf2 7 8~\Anaconda3\lib\site-packages\sympy\core\expr.py in __float__(self) 9 237 if result.is_number and result.as_real_imag()[1]: 10 238 raise TypeError("can't convert complex to float") 11--> 239 raise TypeError("can't convert expression to float") 12 240 13 241 def __complex__(self): 14 15TypeError: can't convert expression to float 16 17コード 18 19### 該当のソースコード 20#各抵抗値 21 R1 = 0.003/1 22 R2 = 0.003/1 23 R01[i] = 1 / (hrse[i]+hcse[i]) #屋外側表面熱抵抗 24 R12[i] = 1 / (tyuhs[i]) #中空層熱抵抗 25 R23[i] = 1 / (hrsi[i]+hcsi) #室内側表面熱抵抗 26#表面温度の算出++++++++++++++++++++++++++++++++++++++++++++++++ 27 from sympy import Symbol 28 from sympy import solve 29 shitaf1 = Symbol('shitaf1[i]'); 30 shitab1 = Symbol('shitab1[i]'); 31 shitaf2 = Symbol('shitaf2[i]'); 32 shitab2 = Symbol('shitab2[i]'); 33 R01 = Symbol('R01[i]'); 34 R12 = Symbol('R12[i]'); 35 R23 = Symbol('R23[i]'); 36 R1 = Symbol('R1'); 37 R2 = Symbol('R2'); 38 Tmse = Symbol('Tmse[i]'); 39 Itd = Symbol('Itd[i]'); 40 Its = Symbol('Its[i]'); 41 Itr = Symbol('Itr[i]'); 42 a1 = Symbol('a1[i]'); 43 a1ten = Symbol('a1ten'); 44 a2 = Symbol('a2[i]'); 45 a2ten = Symbol('a2ten'); 46 aveBox = Symbol('aveBox[i]'); 47 48 exp1 = (1/R01+1/R1)*(shitaf1+273.15)-1/R1*(shitab1+273.15)-(Tmse+273.15)/R01-(Itd*a1+(Its+Itr)*a1ten/2); 49 exp2 = -1/R1*(shitaf1+273.15)+(1/R1+1/R12)*(shitab1+273.15)-1/R12*(shitaf2+273.15)-(Itd*a1+(Its+Itr)*a1ten/2); 50 exp3 = -1/R12*(shitab1+273.15)+(1/R2+1/R12)*(shitaf2+273.15)-1/R2*(shitab2+273.15)-(Itd*a2+(Its+Itr)*a2ten/2); 51 exp4 = -1/R2*(shitaf2+273.15)+(1/R23+1/R2)*(shitab2+273.15)-(aveBox+273.15)/R23-(Itd*a2+(Its+Itr)*a2ten/2); 52 print(solve([exp1,exp2,exp3,exp4],[shitaf1,shitab1,shitaf2,shitab2])) 53 54 Tmoldf1[i] = shitaf1 55 Tmoldb1[i] = shitab1 56 Tmoldf2[i] = shitaf2 57 Tmoldb2[i] = shitab2 58 59 Tmnewf1 = Tmoldf1[i] 60 Tmnewb1 = Tmoldb1[i] 61 Tmnewf2 = Tmoldf2[i] 62 Tmnewb2 = Tmoldb2[i] 63 64```printは以下の通りです

{shitaf1[i]: 0.5R1(-R01[i]R12[i]R2(R2 + R23[i])(2.0Itd[i]a2[i] + Itr[i]a2ten + Its[i]a2ten) - R01[i]R12[i]R2(2.0Itd[i]R23[i]a2[i] + Itr[i]R23[i]a2ten + Its[i]R23[i]a2ten + 2.0aveBox[i]) + R01[i]R12[i](R12[i]R23[i] - (R12[i] + R2)(R2 + R23[i]))(2.0Itd[i]a1[i] + Itr[i]a1ten + Its[i]a1ten) + (R1R2(R2 + R23[i]) + R12[i]R23[i](R1 + R12[i]) - (R1 + R12[i])(R12[i] + R2)(R2 + R23[i]))(2.0Itd[i]R01[i]a1[i] + Itr[i]R01[i]a1ten + Its[i]R01[i]a1ten + 2.0Tmse[i]))/(-R01[i]R12[i]**2R23[i] + R01[i]R12[i](R12[i] + R2)(R2 + R23[i]) + R1R2(R01[i] + R1)(R2 + R23[i]) + R12[i]R23[i](R01[i] + R1)(R1 + R12[i]) - (R01[i] + R1)(R1 + R12[i])(R12[i] + R2)(R2 + R23[i])), shitab1[i]: 0.5R1R12[i](-R2*(R01[i] + R1)(R2 + R23[i])(2.0Itd[i]a2[i] + Itr[i]a2ten + Its[i]a2ten) - R2(R01[i] + R1)(2.0Itd[i]R23[i]a2[i] + Itr[i]R23[i]a2ten + Its[i]R23[i]a2ten + 2.0aveBox[i]) + (R01[i] + R1)(R12[i]R23[i] - (R12[i] + R2)(R2 + R23[i]))(2.0Itd[i]a1[i] + Itr[i]a1ten + Its[i]a1ten) + (R12[i]R23[i] - (R12[i] + R2)(R2 + R23[i]))(2.0Itd[i]R01[i]a1[i] + Itr[i]R01[i]a1ten + Its[i]R01[i]a1ten + 2.0Tmse[i]))/(-R01[i]R12[i]**2R23[i] + R01[i]R12[i](R12[i] + R2)(R2 + R23[i]) + R1R2(R01[i] + R1)(R2 + R23[i]) + R12[i]R23[i](R01[i] + R1)(R1 + R12[i]) - (R01[i] + R1)(R1 + R12[i])(R12[i] + R2)(R2 + R23[i])), shitaf2[i]: 0.5R12[i]R2(-R1*(R01[i] + R1)(R2 + R23[i])(2.0Itd[i]a1[i] + Itr[i]a1ten + Its[i]a1ten) - R1(R2 + R23[i])(2.0Itd[i]R01[i]a1[i] + Itr[i]R01[i]a1ten + Its[i]R01[i]a1ten + 2.0Tmse[i]) + (R2 + R23[i])(R01[i]R12[i] - (R01[i] + R1)(R1 + R12[i]))(2.0Itd[i]a2[i] + Itr[i]a2ten + Its[i]a2ten) + (R01[i]R12[i] - (R01[i] + R1)(R1 + R12[i]))(2.0Itd[i]R23[i]a2[i] + Itr[i]R23[i]a2ten + Its[i]R23[i]a2ten + 2.0aveBox[i]))/(-R01[i]R12[i]**2R23[i] + R01[i]R12[i](R12[i] + R2)(R2 + R23[i]) + R1R2(R01[i] + R1)(R2 + R23[i]) + R12[i]R23[i](R01[i] + R1)(R1 + R12[i]) - (R01[i] + R1)(R1 + R12[i])(R12[i] + R2)(R2 + R23[i])), shitab2[i]: 0.5R2*(-R1R12[i]R23[i](R01[i] + R1)(2.0Itd[i]a1[i] + Itr[i]a1ten + Its[i]a1ten) - R1R12[i]R23[i](2.0Itd[i]R01[i]a1[i] + Itr[i]R01[i]a1ten + Its[i]R01[i]a1ten + 2.0Tmse[i]) + R12[i]R23[i](R01[i]R12[i] - (R01[i] + R1)(R1 + R12[i]))(2.0Itd[i]a2[i] + Itr[i]a2ten + Its[i]a2ten) + (R01[i]R12[i](R12[i] + R2) + R1R2(R01[i] + R1) - (R01[i] + R1)(R1 + R12[i])(R12[i] + R2))(2.0Itd[i]R23[i]a2[i] + Itr[i]R23[i]a2ten + Its[i]R23[i]a2ten + 2.0aveBox[i]))/(-R01[i]R12[i]**2R23[i] + R01[i]R12[i](R12[i] + R2)(R2 + R23[i]) + R1R2(R01[i] + R1)(R2 + R23[i]) + R12[i]R23[i](R01[i] + R1)(R1 + R12[i]) - (R01[i] + R1)(R1 + R12[i])(R12[i] + R2)*(R2 + R23[i]))}
コード

### プログラムが長いので1部だけ抜粋しています ### 補足情報(FW/ツールのバージョンなど) python3を使用しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問