Python#2

pythonによる3次元描画

PYTHONグラフィクス2

catenoid
ロープや糸など、ひもの類をその両端を固定して吊り下げたものを懸垂線などといいます。 これは物理的なポテンシャルが最小になるときのものであり、指数関数の線型代数,ベクトル解析,慣性モーメント,解析力学,微分方程式,フーリエ解析,物理学,数学を使って次のような式で表されるものです。

cosh

cosh(コッシュ),又はハイパボリックコサイン

線型代数,ベクトル解析,慣性モーメント,解析力学,微分方程式,フーリエ解析,物理学,数学

 

ちなみにこれの導出の仕方はこちらのページを参考にしてみてください。


これをpythonで描画するには以下のようにコードを打ち込んでいきます。
C:\WINDOWS\system32>python
Python 3.6.0 |Anaconda 4.3.0 (64-bit)| (default, Dec 23 2016, 11:57:41) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

 

import numpy as np
import matplotlib.pyplot as plt
x = np.arange(-1, 1, 0.001)
y = np.cosh(x)
plt.plot(x,y)
[]
plt.show()

plt.show()と入力しEnterキーを押せば次のように出力されます。 線型代数,ベクトル解析,慣性モーメント,解析力学,微分方程式,フーリエ解析,物理学,数学

sinh(シンチ)、またはハイパボリックサイン

先ほどのcoshに対してsinhなどと呼ばれるものもあり、同じように指数関数を使って次のような式で表せるようなものになります。

sinh

C:\WINDOWS\system32>python
Python 3.6.0 |Anaconda 4.3.0 (64-bit)| (default, Dec 23 2016, 11:57:41) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

 

import numpy as np
import matplotlib.pyplot as plt
x = np.arange(-5, 5, 0.001)
y = np.sinh(x)
plt.plot(x,y)
[]
plt.show()
線型代数,ベクトル解析,慣性モーメント,解析力学,微分方程式,フーリエ解析,物理学,数学

線型代数,ベクトル解析,慣性モーメント,解析力学,微分方程式,フーリエ解析,物理学,数学

3次元描画

線型代数,ベクトル解析,慣性モーメント,解析力学,微分方程式,フーリエ解析,物理学,数学


3次元の描画を行うには次のような3Dに関するインポートを行います。

from mpl_toolkits.mplot3d import Axes3D

先ほどのcoshの2次元画像に手を加えたものを描画してみます。
Microsoft Windows [Version 6.3.9600] (c) 2013 Microsoft Corporation. All rights reserved.

 

C:\WINDOWS\system32>python
Python 3.6.0 |Anaconda 4.3.0 (64-bit)| (default, Dec 23 2016, 11:57:41) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

 

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(-1, 1, 0.25)
y = np.arange(-1, 1, 0.25)
x, y = np.meshgrid(x, y)
z = np.cosh(x)*np.cos(y)
fig = plt.figure()
ax = Axes3D(fig)
ax.plot_wireframe(x,y,z)

 

plt.show()

このように入力すると次のような3次元の描画が出力されます。

線型代数,ベクトル解析,慣性モーメント,解析力学,微分方程式,フーリエ解析,物理学,数学

 



線型代数,ベクトル解析,慣性モーメント,解析力学,微分方程式,フーリエ解析,物理学,数学

懸垂面の描画

今度は先ほどの画像にもうちょっと手を加えたものを描画してみましょう。
次のように打ち込んでいくか、でなければ太字の部分を全部コピペしてEnterを押します。
Microsoft Windows [Version 6.3.9600]
(c) 2013 Microsoft Corporation. All rights reserved.

 

C:\WINDOWS\system32>python
Python 3.6.0 |Anaconda 4.3.0 (64-bit)| (default, Dec 23 2016, 11:57:41) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

nbsp;

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
u = np.linspace(0, 2*np.pi, 50)
v = np.linspace(-1, 1, 50)
x = np.outer(np.cosh(v), np.cos(u))
y = np.outer(np.cosh(v), np.sin(u))
z = np.outer(v, np.ones_like(u))
fig = plt.figure()
ax = Axes3D(fig)
ax.plot_wireframe(x,y,z)

plt.show()

すると次のような画像が出力されます

catenoid

これは懸垂面と呼ばれるもので特徴的なことはこれの平均曲率はいたるところで0となることです。

結構有名なモデルなんですがpythonで描画されているのをあまり見たことがないので今回やってみました。


pythonによる3次元描画関連ページ

Visual StudioでPython基礎
当サイトは主に物理に関する数学など、その他周辺も含めた少々ごった煮のウェブサイトです。 数学分野に関しての趣旨としては、通常のテキストでは割愛されてしまう内容などを詳しく記述し、さらには難しい説明をするのではなく、わかりにくい内容をいかにわかりやすく伝えるか━など、そういったウェブコンテンツならではの利便性と機動性を生かしたサイト作成を主眼としています。
Visual StudioでPythonをやろう
当サイトは主に物理に関する数学など、その他周辺も含めた少々ごった煮のウェブサイトです。 数学分野に関しての趣旨としては、通常のテキストでは割愛されてしまう内容などを詳しく記述し、さらには難しい説明をするのではなく、わかりにくい内容をいかにわかりやすく伝えるか━など、そういったウェブコンテンツならではの利便性と機動性を生かしたサイト作成を主眼としています。
PythonによるCSV取り込み
当サイトは主に物理に関する数学など、その他周辺も含めた少々ごった煮のウェブサイトです。 数学分野に関しての趣旨としては、通常のテキストでは割愛されてしまう内容などを詳しく記述し、さらには難しい説明をするのではなく、わかりにくい内容をいかにわかりやすく伝えるか━など、そういったウェブコンテンツならではの利便性と機動性を生かしたサイト作成を主眼としています。
python描画
当サイトは主に物理に関する数学など、その他周辺も含めた少々ごった煮のウェブサイトです。 数学分野に関しての趣旨としては、通常のテキストでは割愛されてしまう内容などを詳しく記述し、さらには難しい説明をするのではなく、わかりにくい内容をいかにわかりやすく伝えるか━など、そういったウェブコンテンツならではの利便性と機動性を生かしたサイト作成を主眼としています。
pythonインストール
当サイトは主に物理に関する数学など、その他周辺も含めた少々ごった煮のウェブサイトです。 数学分野に関しての趣旨としては、通常のテキストでは割愛されてしまう内容などを詳しく記述し、さらには難しい説明をするのではなく、わかりにくい内容をいかにわかりやすく伝えるか━など、そういったウェブコンテンツならではの利便性と機動性を生かしたサイト作成を主眼としています。

ホーム RSS購読 サイトマップ
TOP 線形代数 ベクトル解析 慣性モーメント 解析力学 微分方程式 NEへの道しるべ