手習ひデジタル信号処理(201) Scilab、{Scilabデモ}、N重振り子再び

Joseph Halfmoon

信号処理素人老人がScilabの「信号処理のデモ」からカテゴリ脱出。「振り子」のデモはしつこく続きます。振り子は物理実験の主役?今回の振り子はN重振り子です。過去回でもやったN重振り子ですが、今回のデモはローレンスリバモア研発のSUNDIALSのソルバを利用するものです。その処理はベラボーに速い?多分。

※「手習ひデジタル信号処理」投稿順 Indexはこちら

※Windows11上の    Scilab2024.0.0を使用させていただいております。(Scilabについては御本家 Scilab 様へ)

多重振り子

多重振り子のシミュレーションのデモは、以下の過去回で「鑑賞」させていただいております。

手習ひデジタル信号処理(186) Scilab、{Scilabデモ}、N重振り子

上記の過去回で、N重振り子について多少調べているので、今回はスルー。上記の過去回を掻い摘むと以下のようでした。

    1. 10重振り子のシミュレーション
    2. Mapleのソースから生成したFortranコードをコンパイルした計算用オブジェクトファイルをScilabから呼び出すことでシミュレーション実施
    3. カオス的な挙動が目立つ設定である。
    4. アニメーション表示は比較的ゆっくり動く。スローモーション的動作に見えるので観察しやすい(実時間には見えない。)

一方、今回のデモは以下のデモ選択ウインドウから選択できる

SUNDIALS、N-pendulum

です。
Npendulum

こちらのデモは、

    1. 10重振り子のシミュレーション(過去回と同じ)
    2. ソースはScilab言語で記述(ソルバのみSUNDIALSをScilab内部から呼び出し)
    3. 前回同様、ソルバは lagrangian_DAE.sce ファイル内のScilab関数から呼び出し(微分代数方程式ソルバ。)
    4. トップファイルは、demo_npend.sce
    5. アニメーション表示はほぼほぼ実時間的な動き(流石処理が速い?)
    6. あまりカオス的な挙動は目立たない(エネルギーの散逸が大きく急速に振動が減衰する設定にみえる。)
シミュレーション結果

シミュレーション開始後0.9秒の様子が以下です。元気に振動してます。Np0_9

1.5秒後が以下に。振動は続いてますが、急速に振動が減衰し、ダランとした小さな振動に落ち着いてしまいます。Np1_5

その後も小振動が続きますが、20秒後にはほぼ停止。まあ、現物で実験してもこんな感じじゃなかろうか?

手習ひデジタル信号処理(200) Scilab、{Scilabデモ}、スプライン振り子? へ戻る

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です