しろねこらぼ(旧)

しろねこの気まぐれ技術日記

MATLABを使って電場を計算する

電荷qが作る電場は
\begin{align}
E=k \dfrac{q}{r^2}
\end{align}
で与えられる。ただしkは単位系で決まる定数で、今回はSI単位系で計算するため
\begin{align}
k = \dfrac{1}{4 \pi \varepsilon_0 \varepsilon_r}
\end{align}
で与えられる。
\varepsilon_0, \varepsilon_rはそれぞれ真空の誘電率と比誘電率を表しており、これらを用いて誘電率
\begin{align}
\varepsilon = \varepsilon_0 \varepsilon_r
\end{align}
となる。今回は真空であると想定して計算するため
\begin{align}
\varepsilon_r&=1 \\
\varepsilon_0&=8.8541878128 \times 10^{-12}
\end{align}
今回はこれを点電荷と同じ高さz=0の平面で計算し描画する。
描画したときqがわかりやすいよう大きな値にした。(通常はこんな大きさあり得ない)
また、点電荷と同じ位置の電場は不要のため

x(find(x==0))=[];
y(find(y==0))=[];

で消去している。

今回作成したMATLABコードは

x=-0.2:0.001:0.2;
y=-0.2:0.001:0.2;

x(find(x==0))=[];
y(find(y==0))=[];

q=1000;

epsilon_r=1;
epsilon_0=8.8541878128*10^(-12);

epsilon=epsilon_r*epsilon_0;

k=1/(4*pi*epsilon);

[X,Y]=meshgrid(x,y);


E= k * q./sqrt(X.^2+Y.^2);

figure;
imagesc(x,y,E);
colorbar;
xlabel('$x$','Interpreter', 'latex');
ylabel('$y$','Interpreter', 'latex');

結果はこんな感じ

f:id:sironekoblog:20201006114707j:plain
電場の様子

当然っちゃ当然かな。