前提・実現したいこと
発生している問題・エラーメッセージ
Jupyterでプログラムを動かそうとしたところ、In[*]となってしまい、プログラムを動作、描画することができませんでした。初学者ですのでわからないことが多いですが、どうぞよろしくお願いします。
該当のソースコード
import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D LIMIT = 1000 # 反復回数の上限 N = 101 # x軸方向の分割数 M = 101 # y軸方向の分割数 def iteration(u): """1回分の反復計算""" u_next = [[0 for i in range(N)] for j in range(M)] # 次ステップのuij for i in range(1, N - 1): for j in range(1, M - 1): u_next[i][j] = (u[i][j - 1] + u[i -1][j] + u[i + 1][j] + u[i][j + 1]) / 4 for i in range(1, N - 1): for j in range(1, M - 1): u[i][j] = u_next[i][j] u = [[0 for i in range(N)] for j in range(M)] # uijの初期化 for i in range(M): u[i][0] = 100 for i in range(LIMIT): iteration(u) print(u) # 結果の出力 x = np.arange(0, N) y = np.arange(0, M) X, Y = np.meshgrid(x, y) fig = plt.figure() ax = Axes3D(fig) U = np.array(u) #ax.plot_wireframe(X, Y, U) # wireframe形式 surf = ax.plot_surface(X, Y, U, cmap = "plasma", alpha = 0.8) # surface形式 fig.colorbar(surf) plt.show()
Python
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/01/09 02:35
2022/01/09 02:46
2022/01/09 03:13 編集
2022/01/10 10:58
2022/01/10 11:00
2022/01/10 11:35 編集
2022/01/10 11:58