
電子が一様磁場中を運動すると円運動になります。 これだけではつまらないので、外部から一様電場もかけてみましょう。 運動方程式は次式の通りです。
プログラムは次の通りです。
//=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
// Program electron
//=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
#include <stdio.h>
#include "nxgraph.h"
//---- physical setting
#define Q (-1.0)
#define M (1.0)
#define dT (1.0/256)
#define Eext (1.0)
#define Bext (1.0)
//---- graphic setting
#define WIN_WIDTH (256)
#define WIN_HEIGHT (256)
//---- main function
int main(void)
{
XEvent ev;
NXOpenWindow("Electron motion in elemag field", WIN_WIDTH, WIN_HEIGHT );
double qx=0.0, qy=0.0;
double px=0.0, py=0.0;
do{
NXDrawPoint( WIN_WIDTH/2 + (int)(8*qx), - (int)(8*qy) );
qx += px/M*dT;
qy += py/M*dT;
px += (Q*Eext + Q*Bext*py)*dT;
py += ( - Q*Bext*px)*dT;
NXCheckEvent( NX_NOWAIT, ev );
}while( ev.type != KeyPress );
NXCloseWindow();
return(0);
}
初速度0から電場により加速されて速度を持つので磁場により 軌道は曲がることは想像付きますが、実際計算してみると電子は 半円を描きながら電場と直交する方向へと進んでいきます。 つまり電場の向きには電流はまったく流れません。 実際の試料中ではこのような電子の移動により新たな電場が生じ、 それ以上電子が移動しないように釣合ができます。 この電場はホール電圧として測定でき、磁場の強さを測定することが できます。このような現象を古典ホール効果と呼びます。
物質中では電子は何らかの抵抗を受けながら動きます。 その抵抗を単に電子の速度の反対向きに比例するとして計算してみましょう。 今度は電子は電場の斜めに方向に進むようになり、つまり電流が 少し流れることになります。