VectorCalculus[LineInt] - R^n でのベクトル場の線積分の計算
使い方
LineInt(F, dom, inert)
パラメータ
F - 'ベクトル'(代数) または手続き; 積分されるベクトル場の指定
dom - 未評価の関数の呼び出し; 積分経路の指定
inert - (オプション) 名前; 積分表現が返されるように指定
|
説明
|
|
•
|
LineInt(F, dom) コマンドは、dom で指定される経路上で、ベクトル場 F の線積分を計算します。ここでは、PathInt 内で必要とされるようには変数名を必要としないことに注意して下さい。これは、F の座標系の属性からその値が読み込み可能であることによります。
|
•
|
積分の経路は、未評価の関数の呼び出しで指定されます。利用可能な積分の経路は、Arc(obj, start, finish), Circle(cen, rad), Circle3D(cen, rad, normal), Ellipse(eqn), Line(p1, p2), LineSegments(p1, p2, ..., pk) および Path(v, rng, [c]) です。
|
|
Arc の1つめのパラメータ obj は、円または楕円の構造です。円弧の開始および終了の角度は、start および finish で指定されます。これらは、代数式でなくてはなりません。
|
|
パラメータ cen は円の中心であり、'Vector'(2, algebraic) 型を持つ必要があります。また rad は円の半径であり、algebraic 型を持つ必要があります。座標系の属性が cen に指定されている場合には、中心はその座標系において解釈されます。
|
|
Circle3D(cen, rad, normal)
|
|
パラメータ cen は円の中心であり、 'Vector'(algebraic) 型を持つ必要があります。 rad は円の半径であり、algebraic 型を持つ必要があります。 また、normal は、円が存在する平面に対する法線であり、 'Vector'(algebraic) 型を持つ必要があります。 座標系の属性が cen に指定されている場合には、中心はその座標系において解釈されます。
|
|
パラメータ eqn は、その楕円が等式 eqn = 0 で表されるような、代数式となります。
|
|
パラメータ p1 および p2 は、'Vector'(algebraic) 型を持つ必要があります。また、これらは p1 から p2 の方向を持つラインセグメントの端点をそれぞれ表します。これらの点に座標系の属性が指定されている場合には、それぞれの対応する座標系において解釈されます。
|
|
LineSegments(p1, p2, ..., pk)
|
|
上記の Line(p1, p2) と同様に、pi の表現は、ラインセグメントの端点 k-1 を表します。積分の経路は、p1 から p2、p2 から p3、p(k-1) から pk というような方向の、ラインセグメントの集合から構成されます。座標系の属性が指定されている場合には、それらの点は、それぞれの対応する座標系において解釈されます。
|
|
1つめのパラメータ v は、経路の成分を表すベクトルです。2つめのパラメータ rng は、{range, name=range} 型を持つ必要があります。rng にパラメータ名が指定されていない場合には、それは v から推論されます。
|
|
オプションである3つめの引数 c が指定されている場合には、その引数は coords=name または coordinates=name の形の等式である必要があります。ここで、この等式は v が解釈される座標系を決定します。
|
•
|
LineInt(F, dom, inert) コマンドは、dom 上での F の線積分について積分形を返します。
|
|
|
例
|
|
Warning, the assigned names <,> and <|> now have a global
binding
Warning, these protected names have been redefined and
unprotected: *, +, ., D, Vector, diff, int, limit, series
| |
>
|
SetCoordinates( cartesian[x,y] );
|
| (2.1) |
>
|
LineInt( VectorField( <x,y> ), Line( <1,2>, <3,-4> ) );
|
| (2.2) |
>
|
LineInt( VectorField( <x,y> ), LineSegments( <0,0>, <1,1>, <1,-1> ) );
|
| (2.3) |
>
|
LineInt( VectorField( <x^2,y^2> ), Path( <t,t^2>, t=0..2 ) );
|
| (2.4) |
>
|
LineInt( VectorField( <y,-x> ), Circle( <0,0>, r ) );
|
| (2.5) |
>
|
LineInt( VectorField( <y,-x> ), Ellipse( x^2/4+y^2/9-1 ) );
|
| (2.6) |
>
|
LineInt( VectorField( <y,-x> ), Ellipse( x^2/4+y^2/9-1 ), 'inert' );
|
| (2.7) |
>
|
LineInt( VectorField( <y,-x> ), Arc( Circle( <0,0>, r ), 0, Pi ) );
|
| (2.8) |
>
|
LineInt( VectorField( <y,-x> ), Arc( Ellipse( x^2/4+y^2/9-1 ), 0, Pi/2 ) );
|
| (2.9) |
>
|
SetCoordinates( 'cartesian'[x,y,z] );
|
| (2.10) |
>
|
LineInt( VectorField( <y,-x,z> ), Circle3D( <0,0,0>, r, <1,1,1> ) );
|
| (2.11) |
|
|