package mypackage.hamilton;
/**
* Hamilton 方程式の記述
* Time-stamp: "2001-03-21 17:47:38 tkenichi"
*
* Hamilton 系を正準座標(ダルブー座標) (q,p) で記述する。
* 時間に依存していない系を考えているので、時刻はなくてもいいけど。
* Symplectic 解法ができるのは Hamiltonian H(q,p) が
* V(p) + U(q) の形のときだけ。
*/
abstract public class Hamilton{
/** 空間の次元。位相空間の次元はこの2倍 */
public int dim;
/** 従属変数の初期値 */
public double q0[],p0[];
/** 独立変数の初期値(初期時刻) */
public double t0;
/**
* ハミルトニアンの qi による偏微分
* @param index 添字 i のこと
*/
abstract public double hq(int index,double q[],double p[]);
/**
* ハミルトニアンの pi による偏微分
* @param index 添字 i のこと
*/
abstract public double hp(int index,double q[],double p[]);
}