古いプロジェクトを再生する 復刻版

かってこのようなプログラムを教育用に使っていました。これはレーザー干渉計で観察される干渉縞(Fringe)をそれらしく画面に表示するプログラムです。主に波長の違いや、縞のVisibilityの設定で、見え方がどうなるかをシミュレートするものでした。Laserについては動作原理等を含めてそのうち解説を復刻するつもりです。

このような形でハードディスクの奥底から”発掘”されました。exeは2004年の日付なので、20年以上前のプログラムです。C++ Builder 6を使っていたと思います。上のProject1.exeは起動できて、動きますが、致命的な不具合があり修正したい。ただし、古い形式の”Project1.bpr”は最新のC++ Builder CE(12.1)では開けません。で、
の出番です。ここに記述されている通りの若干テクニカルな手順でプロジェクトを再構成します。そして必要な修正をしたものをpublicレポジトリに置きました。そのurlは、
https://gitlab.com/Doctornao/public-disp-fringes.git
です。旧版の致命的な欠点というのは、”白色干渉縞”を作り出すことができてしまうことでした。具体的に示しておきましょう。旧版を起動して、“Circular”にチェックを入れて、laserというか波長を選択せずに“Make It So”すると、

こうなって、現実世界ではあり得ない”白色の干渉縞”が見えてしまいます。従って、これを避けるには、laser選択ボタンをRadioButton形式にして、初期選択を適宜設定しておけば良いということになります。その変更をしたものが、

この新版です。ご興味があり、build & runしたい方は、上にしめしたGitlabに置いたpublic repositoryをご覧ください。ちなみに、He-Ne Laser 632.8nm、Ar+ Laser 514.5nm、Ar+ Laser 488.0nmの”色”適当で正確ではありません。厳密には補正が必要ということなどを前に書いたけど、その記事は消滅2ヶ月前に消滅してしまっているので、
波長 rgb
とかで検索して、
を提示したような微かな記憶が…..。


コメント