b. アンペアの法則

1.プロジェクトElectMagのビジュアル・ビルダーを起動する。

2.「パーツ」->「新規作成」をクリックする。

  アンペアの法則は電磁気学に含まれるので、ElectMag.vbbのVBBファイルに

  これから作成するパーツAmpereを格納する。

3.パーツの作成

非ビジュアル・パーツ

Ampereパーツの機能設定

クラス名

Ampere

説明

アンペアの法則を用いた計算

ファイル名

ElectMag(電磁気学、electromagnetism

パーツ・タイプ

非ビジュアル・パーツ

基底クラス

IStandardNotifier

.hpvファイル

"Ampere.hpv"

.cpvファイル

"Ampere.cpv"

インクルード・ファイル

なし

 

Coulombパーツ

属性

タイプ

コメント

優先

current

double

電流

O

magneticField

double

磁界

O

distance

double

距離

O

アクション

タイプ

パラメータ

 

calc

int

int n

O

 

4.「ファイル」->「保管および生成」->「フィーチャー・ソース」をクリックし、

  Ampere.cpvとAmpere.hpvを自動作成する。

5.calc(int n) を修正する。

int Ampere::calc(int n)
{
 double pi=3.1415627;
 
 switch (n)
 {
  case 1:
   setCurrent( 2.0*pi*iDistance*iMagneticField );
   break;
  case 2:
   if( iDistance==0.0 ) // 例外処理
   {
    IString errorText = IString( "距離がゼロです" );
    IException exc( errorText, 0, IException::unrecoverable );
    ITHROW( exc );
   }
   setMagneticField( iCurrent/2.0/pi/iDistance );
   break;
  case 3:
   if( iMagneticField==0.0 ) // 例外処理
   {
    IString errorText = IString( "磁界がゼロです" );
    IException exc( errorText, 0, IException::unrecoverable );
    ITHROW( exc );
   }
   setDistance( iCurrent/2.0/pi/iMagneticField );
   break;
 }
 return 0; // 計算に成功すると0を戻す。
}

6.あとでパーツCoulombを使えるように、覚え書きをCoulomb.html

  またはCoulomb.txtに書いておく。

 

パーツ Ampereの説明

アンペアの法則

 current=2.0*pi*distance*magneticField

  変数

   電流:current [A]
   磁界:magneticField [A/m]
   距離:distance [m]

  定数

   円周率:pi=3.1415927

 

三つの変数のうち、二つを与え、残りの一つが求められる。

 

Coulombパーツ

属性

タイプ

コメント

優先

current

double

電流

O

magneticField

double

磁界

O

distance

double

距離

O

アクション

タイプ

パラメータ

 

calc

int

int n

O

  

calc(int n)について

  n=1の場合、currentが求められる。
  n=2の場合、magneticFieldが求められる。
  n=3の場合、distanceが求められる。

 n=1の場合、分母がゼロになるとき、例外処理を行う。

 計算に成功すると0を戻す。

 例外処理のメッセージが含まれている。

 

必要なファイル

ElectMag.vbb

Ampere.cpv

Ampere.hpv