lua から呼びやすいよう、nspire のユーザー定義函数にまとめる。
減衰係数 c は、参考文献と同じく 0.1 とする。rk23() の精度は指定しない(デフォルト値を使う)。
重りの x 座標、y 座標も nspire 側で計算してしまうことにする。
引数は (棒の長さ, 支点の x 軸方向の加速度, 支点の y 軸方向の加速度, 初期角度, 初期角速度, Δt)
戻り値は {Δt 時間後の角度, Δt 時間後の角速度, Δt 時間後の x 座標, Δt 時間後の y 座標}
実行結果:
棒の長さ 1 メートルの振り子を 0.5 ラジアンの角度から勢いをつけずに放したときの、2 秒後の角度、角速度、x 座標、y 座標を計算している。
支点は固定したままである。