2012-01-04 4 views
2

私は、1つの変数だけでベクトルフィールドをプロットする方法を理解できません。たぶんMathematicaはこれをサポートしていないかもしれません。たとえば:Mathematica 1変数でベクトルフィールドをプロットするにはどうすればよいですか?

<cost, sint> 

と同じ

r(t) = cost j + sint i 

は、これは動作しません:ベクトルの微分を取るためにどのようにボーナスとして

VectorPlot[{cos t, sin t}, {t, 0, 2 Pi}] 

を?

+2

あなたはトンの余弦はMathematicaでコス[T]としてではなく、T COSとして書かれていることを知っていますか? –

+0

"1つの変数を持つベクトルフィールド"とはどういう意味ですか?リンクの各ポイントにベクトルを割り当てていて、そのベクトル*をラインにプロットしたいのですか? – Szabolcs

答えて

13

簡単な回避策は、このようなダミー変数で2D- VectorPlotを使用することです:

VectorPlot[ 
    {Cos[t], Sin[t]}, {t, 0, 2 \[Pi]}, {s, -1/2, 1/2}, 
    AspectRatio -> Automatic, 
    VectorPoints -> {15, 3}, 
    FrameLabel -> {"t", None} 
] 

VectorPlot with dummy variable

それとも、おそらく何より多くの意味はあなたを取得曲線を離散化することで可能tを増やしながらベクターに従います。これは、例えばです。量子力学におけるFeynman形式のアクション積分に有用です。

Module[ 
    {t, dt = 0.1, vectors, startpoints, startpoint, vector, spv, spvs}, 
    vectors = Table[dt {Cos[t], Sin[t]}, {t, 0, 2 \[Pi], dt}]; 
    startpoints = Accumulate[vectors]; 
    spvs = Transpose[{startpoints, vectors}]; 
    Graphics[Table[Arrow[{spv[[1]], spv[[1]] + spv[[2]]}], {spv, spvs}]] 
] 

Feynman 1D-vectorplot

関連する問題