日期:2018/3/15
前言
最近正好教到靜電學,想要試著用電腦畫出等位線。一開始想到以前用過的 Gnuplot 好像可以辦到,但是它的選項全部都要用指令調整,有點麻煩。後來又想到 Python 當中有一個功能強大的繪圖套件 Matplotlib,但是在網路上找到的範例看起來看麻煩。最後才想到 SciDAVis 應該有這樣的功能,在 Google 上搜尋關鍵字 scidavis 3d plot 的第1個結果就是我尋找已久的答案:http://scidavis.sourceforge.net/manual/x528.html
用 SciDAVis 搭配 matrix 繪製的等電位線圖形
使用版本
SciDAVis 1.22,下載頁面 https://sourceforge.net/projects/scidavis/files/SciDAVis/1.22/
繪圖步驟
- 啟動 SciDAVis,由選單:File ⇒ New ⇒ New Project 或按 Ctrl + N 建立新的專案。
- 由選單:File ⇒ New ⇒ New Matrix 或按 Ctrl + M 開啟建立矩陣頁面,預設的矩陣為 32 × 32。
- 由頁面右側的視窗修改 X、Y 的數值範圍,我選擇的是 -2 到 +2 ,最後記得要按下 Apply 。
- 先在頁面左側按滑鼠左鍵,再按 Ctrl + A 全選所有的儲存格。再從頁面右側的第三個分頁修改儲存格數值的運算式,我預設的狀況是點電荷電量 $q_1 = 2 \times 10^{-8} ~\mathrm{C}$、位置為 (-1, -1),點電荷電量 $q_2 = -2 \times 10^{-8} ~\mathrm{C}$ 、位置為 (+1, +1),因此輸入的運算式為
V1 = 8.988E9\*2E-8/sqrt((x-(-1))^2 + (y-(-1))^2)
V2 = 8.988E9\*(-2E-8)/sqrt((x-1)^2 + (y-1)^2)
V = V1 + V2
最後記得要按下 Apply 。 - 由選單:3D Plot ⇒ 3D Wire Surface 開啟 3D 繪圖視窗,按下之後會顯示由矩陣資料繪製的 3D 圖形,可以由上方的工具列選擇是否繪製等高線,也可以用滑鼠左鍵在圖上拖曳旋轉視角。
- 如果覺得分割的格子太少、數據點不夠多,可以再回到矩陣資料視窗,由選單:Matrix ⇒ Dimensions開啟矩陣維度視窗,手動修改矩陣的行(column)、列(row)數,在此我將行、列數都改為50。
- 修改完行、列數後,仿照步驟4,更新所有儲存格的數值,圖形會自動更新。
建立新的專案
建立矩陣選單
建立矩陣頁面
修改 X、Y 的數值範圍
輸入運算式後的矩陣頁面
開啟 3D 繪圖視窗選單
由矩陣資料繪製的 3D 圖形
開啟矩陣維度視窗選單
修改矩陣行數視窗
修改矩陣行、列數後的圖形
結語
用 SciDAVis 只要幾個步驟,不需要輸入複雜的指令,就能做出這樣的效果,難度遠低於使用 Gnuplot 和 Matplotlib,實在是方便多了。
HackMD 版本連結:https://hackmd.io/s/SkDbNNO4E
沒有留言:
張貼留言