VectorCalculus の座標系
|
説明
|
|
•
|
VectorCalculus パッケージは、以下の座標系をサポートしています:
|
|
2 次元 - bipolar, cardioid, cassinian, cartesian, elliptic, hyperbolic, invcassinian, logarithmic, logcosh, parabolic, polar, rose, tangent
|
|
3 次元 - bipolarcylindrical, bispherical, cardioidal, cardioidcylindrical, cartesian, casscylindrical, conical, cylindrical, ellcylindrical, hypercylindrical, invcasscylindrical, invprospheroidal, logcoshcylindrical, logcylindrical, oblatespheroidal, paraboloidal, paracylindrical, prolatespheroidal, rosecylindrical, sixsphere, spherical, tangentcylindrical, tangentsphere, toroidal
|
•
|
注意: 以下の変換では、正の根だけが使用されています:
|
|
2 次元 - cassinian, hyperbolic, invcassinian, rose
|
|
3 次元 - casscylindrical, conical, hypercylindrical, invcasscylindrical, rosecylindrical
|
•
|
2 空間における、様々な座標系からデカルト(直交)座標系への変換
|
|
bipolar: (Spiegel)
x = sinh(v)/(cosh(v)-cos(u))
y = sin(u)/(cosh(v)-cos(u))
|
|
cardioid:
x = 1/2*(u^2-v^2)/(u^2+v^2)^2
y = u*v/(u^2+v^2)^2
|
|
cassinian: (Cassinian-oval)
x = a*2^(1/2)/2*((exp(2*u)+2*exp(u)*cos(v)+1)^(1/2) +
exp(u)*cos(v)+1)^(1/2)
y = a*2^(1/2)/2*((exp(2*u)+2*exp(u)*cos(v)+1)^(1/2) -
exp(u)*cos(v)-1)^(1/2)]
|
|
elliptic:
x = cosh(u)*cos(v)
y = sinh(u)*sin(v)
|
|
hyperbolic:
x = ((u^2+v^2)^(1/2)+u)^(1/2)
y = ((u^2+v^2)^(1/2)-u)^(1/2)
|
|
invcassinian: (inverse Cassinian-oval)
x = a*2^(1/2)/2*((exp(2*u)+2*exp(u)*cos(v)+1)^(1/2) +
exp(u)*cos(v)+1)^(1/2)/(exp(2*u)+2*exp(u)*cos(v)+1)^(1/2)
y = a*2^(1/2)/2*((exp(2*u)+2*exp(u)*cos(v)+1)^(1/2) -
exp(u)*cos(v)-1)^(1/2)/(exp(2*u)+2*exp(u)*cos(v)+1)^(1/2)
|
|
logarithmic:
x = a/Pi*ln(u^2+v^2)
y = 2*a/Pi*arctan(v/u)
|
|
logcosh: (ln cosh)
x = a/Pi*ln(cosh(u)^2-sin(v)^2)
y = 2*a/Pi*arctan(tanh(u)*tan(v))
|
|
parabolic:
x = (u^2-v^2)/2
y = u*v
|
|
polar:
x = u*cos(v)
y = u*sin(v)
|
|
rose:
x = ((u^2+v^2)^(1/2)+u)^(1/2)/(u^2+v^2)^(1/2)
y = ((u^2+v^2)^(1/2)-u)^(1/2)/(u^2+v^2)^(1/2)
|
|
tangent:
x = u/(u^2+v^2)
y = v/(u^2+v^2)
|
•
|
3空間における、様々な座標系からデカルト座標系への変換
|
|
は、以下のように与えられます(どこで応用可能か、作者が示されています):
|
|
bipolarcylindrical: (Spiegel)
x = a*sinh(v)/(cosh(v)-cos(u))
y = a*sin(u)/(cosh(v)-cos(u))
z = w
|
|
bispherical:
x = sin(u)*cos(w)/d
y = sin(u)*sin(w)/d
z = sinh(v)/d where d = cosh(v) - cos(u)
|
|
cardioidal:
x = u*v*cos(w)/(u^2+v^2)^2
y = u*v*sin(w)/(u^2+v^2)^2
z = (u^2-v^2)/2/(u^2+v^2)^2
|
|
cardioidcylindrical:
x = (u^2-v^2)/2/(u^2+v^2)^2
y = u*v/(u^2+v^2)^2
z = w
|
|
cartesian:
x = u
y = v
z = w
|
|
casscylindrical: (Cassinian-oval cylinder)
x = a*2^(1/2)/2*((exp(2*u)+2*exp(u)*cos(v)+1)^(1/2)+exp(u)*cos(v)+1)^(1/2)
y = a*2^(1/2)/2*((exp(2*u)+2*exp(u)*cos(v)+1)^(1/2)-exp(u)*cos(v)-1)^(1/2)
z = w
|
|
conical:
x = u*v*w/(a*b)
y = u/b*((v^2 - b^2)*(b^2-w^2)/(a^2-b^2))^(1/2)
z = u/a*((a^2 - v^2)*(a^2 - w^2)/(a^2-b^2))^(1/2)
|
|
cylindrical:
x = u*cos(v)
y = u*sin(v)
z = w
|
|
ellcylindrical: (elliptic cylindrical)
x = a*cosh(u)*cos(v)
y = a*sinh(u)*sin(v)
z = w
|
|
hypercylindrical: (hyperbolic cylinder)
x = ((u^2+v^2)^(1/2)+u)^(1/2)
y = ((u^2+v^2)^(1/2)-u)^(1/2)
z = w
|
|
invcasscylindrical: (inverse Cassinian-oval cylinder)
x = a*2^(1/2)/2*((exp(2*u)+2*exp(u)*cos(v)+1)^(1/2) +
exp(u)*cos(v)+1)^(1/2)/(exp(2*u)+2*exp(u)*cos(v)+1)^(1/2)
y = a*2^(1/2)/2*((exp(2*u)+2*exp(u)*cos(v)+1)^(1/2) -
exp(u)*cos(v)-1)^(1/2)/(exp(2*u)+2*exp(u)*cos(v)+1)^(1/2)
z = w
|
|
invprospheroidal: (inverse prolate spheroidal)
x = a*sinh(u)*sin(v)*cos(w)/(cosh(u)^2-sin(v)^2)
y = a*sinh(u)*sin(v)*sin(w)/(cosh(u)^2-sin(v)^2)
z = a*cosh(u)*cos(v)/(cosh(u)^2-sin(v)^2)
|
|
logcylindrical: (logarithmic cylinder)
x = a/Pi*ln(u^2+v^2)
y = 2*a/Pi*arctan(v/u)
z = w
|
|
logcoshcylindrical: (ln cosh cylinder)
x = a/Pi*ln(cosh(u)^2-sin(v)^2)
y = 2*a/Pi*arctan(tanh(u)*tan(v))
z = w
|
|
oblatespheroidal:
x = a*cosh(u)*sin(v)*cos(w)
y = a*cosh(u)*sin(v)*sin(w)
z = a*sinh(u)*cos(v)
|
|
paraboloidal: (Spiegel)
x = u*v*cos(w)
y = u*v*sin(w)
z = (u^2 - v^2)/2
|
|
paracylindrical:
x = (u^2 - v^2)/2
y = u*v
z = w
|
|
prolatespheroidal:
x = a*sinh(u)*sin(v)*cos(w)
y=a*sinh(u)*sin(v)*sin(w)
z=a*cosh(u)*cos(v)
|
|
rosecylindrical:
x = ((u^2+v^2)^(1/2)+u)^(1/2)/(u^2+v^2)^(1/2)
y = ((u^2+v^2)^(1/2)-u)^(1/2)/(u^2+v^2)^(1/2)
z = w
|
|
sixsphere: (6-sphere)
x = u/(u^2+v^2+w^2)
y = v/(u^2+v^2+w^2)
z = w/(u^2+v^2+w^2)
|
|
spherical:
x = u*cos(w)*sin(v)
y = u*sin(w)*sin(v)
z = u*cos(v)
|
|
tangentcylindrical:
x = u/(u^2+v^2)
y = v/(u^2+v^2)
z = w
|
|
tangentsphere:
x = u*cos(w)/(u^2+v^2)
y = u*sin(w)/(u^2+v^2)
z = v/(u^2+v^2)
|
|
toroidal:
x = a*sinh(v)*cos(w)/d
y = a*sinh(v)*sin(w)/d
z = a*sin(u)/d where d = cosh(v) - cos(u)
|
•
|
VectorCalculus パッケージの GetCoordinateParameters および SetCoordinateParameters コマンドを用いることで、上記の座標変換における a, b, c の値を質問し、そして設定することが可能です。デフォルトの値は、a = 1, b = 1/2, c = 1/3 です。
|
•
|
GetCoordinateParameters コマンドは、現在の a, b, c の値を含む式列を返します。
|
•
|
SetCoordinateParameters コマンドは、1, 2, 3 個の引数いずれかをとり、a の値、a と b の値、a, b および c の値をそれぞれ設定します。
|
|
|
参考文献
|
|
|
Moon, P., and Spencer, D.E. Field Theory Handbook. 2d ed. Berlin: Springer-Verlag, 1971.
|
|
Spiegel, Murray R. Mathematical Handbook of Formulas and Tables. New York: McGraw Hill Book Company, 1968, pp. 126-130.
|
|
|