このページhttp://en.wikipedia.org/wiki/Von_Mises_yield_criterionに示されているように、3D 降伏曲面を描画する方法を考えていました。最初にフォン ミーゼスの降伏曲面を描画しようとしましたが、まったく成功しませんでした。どうやって始めたらいいのかわからないのだと思います。誰かがフォン ミーゼスのサンプル コードを見せてくれたら、それを使ってカム クレイや修正カム クレイのような他の降伏面をプロットできます。
最初は、次のようなことができると思っていましたが、うまくいきません。
for i in range(0, MAXSTEP):
stressx = stressx + STEPSIZE
stressy = -STEPSIZE
for j in range(0, MAXSTEP):
stressy = stressy + STEPSIZE
stressz = -STEPSIZE
for k in range(0, MAXSTEP):
stressz = stressz + STEPSIZE
tI1 = calcI1(stressx, stressy, stressz)
tJ2 = calcJ2(stressx, stressy, stressz)
tyieldf = calcF(tI1, ycon)
tsqrtJ2 = np.sqrt(tJ2)
tdiff = abs(tsqrtJ2 - tyieldf)
if tdiff < TOL:
sigx[count] = stressx
sigy[count] = stressy
sigz[count] = stressy
I1[count] = tI1
sqrtJ2[count] = tsqrtJ2
diff[count] = tdiff
count = count + 1
X = np.outer(sigx[0:count], sigx[0:count])
Y = np.outer(sigy[0:count], sigy[0:count])
Z = np.outer(sigz[0:count], sigz[0:count])
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_surface(X, Y, Z)
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
ax.set_zlabel('Z Label')
plt.show()
main()
データの生成方法が分からないと思います。方程式はありますが、それらを使用して表面プロットに必要なデータを生成する方法がわかりません。XY メッシュを生成してから Z について解く必要があると思いますが、その方法はまだ試していません。