光学シミュレータYOPT Ver.1.21

 光学シミュレータYOPTは、シュミット補正板、各種レンズ、反射鏡を組み合わせたレンズや望遠鏡の

 性能を確認するためのソフトです。私の趣味は天体観測で、天体望遠鏡で星の写真を撮影しています。

 本ソフトは自分の天体望遠鏡の実力を確認したりするために作成しました。

 また、送金頂くと、私が考案した独自アルゴリズムにより、数種類の望遠鏡を設計することも可能と

 なります。

 このソフトが多少でも皆様の役に立ったり、このソフト使うことで光学に興味を持っていただければ

 うれしく思います。

 なお、作者は光学のプロでは有りませんので、理論や専門用語等については十分に回答できません

 ので、ご了承願います。

 

1.概要

2.インストールとアンインストール

3.コマンド

4.一般的な使い方

5.光学ガラスのデータ

6.作者紹介

7.送金方法

8.変更履歴

 

 本ソフトは、シェアウェアとなっております。登録されていない場合は、一部、機能制限

 あります。より良いソフト開発のため、ご協力をお願い致します。送金方法は、こちらをご覧下さい。

 なお、本ソフトを使用したために発生するいかなる不利益や損害などに対して、一切責任は負い

 ませんのでご了承願います。

 本ソフトは、誠文堂新光社より発行されております天文ガイドの2003年2月号のP88に紹介されて

 おります。

 

 参考文献

   天文アマチュアのための望遠鏡光学・屈折編

     吉田正太郎著 誠文堂新光社

   天文アマチュアのための望遠鏡光学・反射編

     吉田正太郎著 誠文堂新光社

   光学ガラスデータ

     株式会社オハラの許可を得て、データを使用しております。


1.概要

 本プログラムは、カメラレンズや天体望遠鏡を設計するためのツールです。私の趣味は天体観望で、

 写真も撮っています。天体写真はレンズの性能がもろに現れます。天体望遠鏡は非常に高価です。

 また、色々な方式(設計)の望遠鏡があります。そこで望遠鏡の各方式の性能を前もって確認して

 おきたいと考え、このプログラムを作成しました。

 実は、雑誌 天文ガイド(誠文堂新光社)で以前にテレオプトという光学シミュレーションソフトを

 販売しておりました。しかし、そのソフトはPC-9801専用である、プロテクトがかかっておりハード

 ディスクにインストールできない、そこそこ高価(値段忘れました)だった、等の問題があり、

 どうしてもWindowsで動作するソフトが欲しかったため、自分で作ってみました。

 私もテレオプトを買ったのですが、ディスクは行方不明、動くPC-98が無い、等の理由で、残念ながら

 テレオプトと機能を比較したり、シミュレーション結果の精度を確認できていません。

 本ソフトは、誠文堂新光社より発行されております天文ガイドの2003年2月号のP88に紹介されて

 おります。

 なお、本ソフトは、シェアウェアとなっております。登録されていない場合は、一部、機能制限があります。

 送金方法は、 こちらをご覧下さい。

 

 動作環境

   ・WindowsXP/Vista/7/10及びこれらと互換性の有るOS

    (XP以前のWindowsでは起動できません)

   ・16bit色以上の表示装置。XGA(1024×768)以上で24bit色以上を推奨。

   ・Pentium以降のCPU。1GHz以上のクロックで動作するCPUを推奨。

   ・メモリは256MB以上。512MB以上のDDR-DRAM又はDDR2-DRAMを推奨。

 

 開発言語

    Visual C++ 2010

 

 参考文献

   天文アマチュアのための望遠鏡光学・屈折編

     吉田正太郎著 誠文堂新光社

   天文アマチュアのための望遠鏡光学・反射編

     吉田正太郎著 誠文堂新光社

 

 作者

    田中勇司

 

 ホームページ

    http://galaxystar.image.coocan.jp/


2.インストールとアンインストール

  インストール

    配布ファイルの「INSTALL.EXE」を実行し、メッセージに従って下さい。

  バージョンアップ

    バージョンアップの場合は、アンインストールは不要です。インストールと同様、

    「INSTALL.EXE」を実行し、メッセージに従って下さい。

  アンインストール

    削除したい場合は、Windowsのコントロールパネルのプログラムの追加と削除から

    YOPTを選択し、アンインストールを実行下さい。なお、インストールフォルダーに設定

    ファイルを置いていると一緒に削除されますので必要なら別の場所にコピーしてから

    アンインストール下さい。


3.コマンド

 マウスのボタン

  ・マウスの左クリック:メインウインドに表示されている光学系を2倍

   に拡大して表示する。

 

  ・マウスの右クリック:メインウインドに表示されている光学系を1/2倍

   に縮小して表示する。

 

 ・ファイル

  新規作成:現在のレンズデータを全て消去し、新たなデータを入力できるようにする。

 

  開く:レンズデータ(*.opt)を読み込む。

 

  上書き保存:以前に開いたファイル名や保存したファイル名でレンズデータを保存(*.opt)する。

 

  名前を付けて保存:新たな名前でレンズデータを保存(*.opt)する。

 

  終了:YOPTを終了する。

 

 ・表示

  スポットダイアグラム:レンズに方眼の交点の位置から平行に光を入射し、その光がレンズ

    データの焦点面にあたる位置を拡大して表示する。つまり、無限遠にある点光源(星)を

    観察又は撮影した場合の見え方を示します。

   

  収差曲線:光軸上の球面収差曲線とd線(587.6nm)のOSC(正弦条件不満足量)を表示します。

    横軸は収差の量、縦軸はレンズの中心からの距離を示します。

   

  情報表示:現在のレンズデータのd線(587.6nm)の近軸焦点位置、d線の近軸焦点距離、

    口径、F値を表示します。

   

  光量:焦点面での光量を表示します。横軸は焦点面の中心からの距離、縦軸は光の量を

    示します。光量は、第1レンズの第1面に入射した光を100%とし、その内、何%の光が

    焦点面に届いたかを示します。

   

 

 ・レンズ設定

  レンズデータを設定します。光学シミュレーション時は必ず上に設定されたものから順に行われ

  ますので、光があたる順番に設定して下さい。また、もしレンズの裏面をメッキして鏡として使用

  している場合は、レンズと反射面を別々に入力する必要があります。なお、光は最初左から

  右(Z軸の負の向き)に進むと想定してシミュレーションします。設定項目は次の通りです。

    ・タイプ−レンズ、鏡、絞り、焦点面の種類を設定します。

    ・曲率半径−球面レンズの場合は、曲率半径を設定。

     鏡の場合は曲率半径を設定。

     非球面鏡や非球面レンズの場合は、2次の係数、4次の係数、6次の係数を設定下さい。

     光線が鏡に反射するなどして右から左(Z軸の正の向き)に進む場合は、曲率の正負を逆にして

     下さい。(単位はmm)

    ・有効径−レンズや鏡等の直径を設定します。

    ・材質−レンズの場合のみ、材質を設定して下さい。

    ・間隔−各面の中央の間隔を設定。

     但し、光線が鏡に反射するなどして右から左(Z軸の正の向き)に進む場合は、負の数字にすること。

    ・位置−レンズや鏡等の位置を設定する。Z座標位置になります。

 

    ・ピント調整:C〜h線から光の波長を選択し、レンズデータの焦点面の位置を最適な位置に設定。

   

 

 ・口径変更

  レンズの口径を変更します。変更方法には2通りあり、F値を変更せずに口径のみを変更する

  方法と、口径に応じてF値を変更する方法があります。

    ・口径の変更−曲率半径や距離等全ての値が、口径の値に比例して

     変更されます。各種収差も比例して変化します。F値は変わりま

     せん。

    ・F値の変更−口径のみを変更します。F値も口径に比例して変わりま

     す。Fを明るくするとレンズの厚みが不足する場合がありますの

     で注意下さい。

   

 

 ・説明入力

  現在設計中のレンズのコメント等を入力できます。

   

 

 ・自動設計

  数種類の望遠鏡を自動設計することが可能です。

    ・屈折望遠鏡設計−望遠鏡の種類と口径、F値、ガラスの種類、収差最適化条件を入力

     すると、自動的にレンズが設計できます。なお、本機能は非常に計算量が多いため、

     1GHz程度のプロセッサを使用しても30秒程度時間がかかりますが、ご了承願います。

   

 

    ・反射望遠鏡設計−望遠鏡の種類と口径、F値、曲率の比、バックフォーカス距離、

     補正板のガラスの種類、収差最適化条件等を入力すると、自動的にレンズが設計できます。

   

 

    ・最適化−現在設定しているデータに対して、最適化したい収差をチェックし、パラメータの

     変更範囲(%で設定)、分割数(注意:これを大きくすると計算量が極端に増加します。)、

     変更するパラメータの種類を選択すると、焦点距離(F値)をほとんど変えずに、設定データを

     改善します。

     しかし、設計データの種類やパラメータの変更範囲、分割数の値によっては改善されない

     場合があります。そのため、実行前に現状のデータをセーブしておくことをお勧め致します。

     このような場合は、条件を変更して更に最適化を行うか、前回セーブしたデータをロードして

     条件を変更して最適化を行うと良くなる場合があります。

     なお、本機能は非常に計算量が多く、特に分割数を大きくすると1GHzを超えるプロセッサを

     使用しても数分〜数時間かかる場合があります。分割数は徐々に増やすようにして下さい。

   

 

 ・各種設定

    ・光学系表示−光学系表示画面の光線の数と入射角度を設定できます。

    ・スポットダイアグラム−スポットダイアグラムの表示や光量の計算時の光線の数を設定します。

     ポイント数固定の場合、第1面(絞りも含む)の直径をポイント数で割った長さの間隔で光線

     を入射します。この場合、直径に関係無く、入射光線数はほぼ一定です。

     ピッチ固定の場合、ピッチの間隔で光線を入射します。この場合、直径が大きくなると入射

     光線数は増加します。

    ・光源の位置−無限遠と座標指定から選択可能。

   

 

 ・ヘルプ

   ヘルプ:YOPTの使い方を表示します。

 

   バージョン:YOPTのバージョンを表示します。

 


4.一般的な使い方

<独自設計を行う場合>

 1.ファイル−新規作成 で最初からデータを入力するか、ファイル−開くで近い構成のデータを読み込む。

 

 2.レンズ設定 でレンズのデータを入力する。

 

 3.表示−情報表示 で焦点距離やF値が希望通りになっているか確認する。

 

 4.表示−収差曲線 で設計データの球面収差やOSCが最適になっているか確認する。

  また、レンズ設定 で各値を変更して収差曲線がどのように変化するかを見て、最適な値を見つけ出す。

 

 5.レンズ設定−焦点位置自動設定 で光の波長を選択してOKを押すと、自動的に焦点面の座標を

  最適と思われる位置に変更します。

  実際にはこの位置より多少ずらした方が星像が良くなる場合もあります。

 

 6.表示−スポットダイアグラム で光が十分に1点に集まるかどうか(星像)を確認する。

 

 7.まず現状のデータをセーブしてから、自動設計−最適化 にて改善したい収差を選択し、

  パラメータの変更範囲(%で設定)、分割数(注意:これを大きくすると計算量が極端に増加します。)、

  変更するパラメータの種類を選択すると、焦点距離(F値)をほとんど変えずに、設定データを改善します。

  設計データの種類やパラメータの変更範囲、分割数の値によっては改善されない場合があります。

  その場合は、条件を変更して更に最適化を行うか、前回セーブしたデータをロードして条件を

  変更して最適化を行って下さい。

 

 <自動設計機能を使う場合>

 1.自動設計−屈折望遠鏡設計 又は 自動設計−反射望遠鏡設計で希望の望遠鏡の種類や口径、

  F値等を設定します。

 

 2.表示−収差曲線 で設計データの球面収差やOSCが最適になっているか確認する。

 

 3.表示−スポットダイアグラム で光が十分に1点に集まるかどうか(星像)を確認する。

 

 4.必要なら レンズ設定 でレンズのデータを変更したり、自動設計−最適化 で最適化に挑戦して

  下さい。

 


5.光学ガラス

 本ソフトには、200種類を超える光学ガラスの名前と屈折率が収録されています。これらのデータは、

 株式会社オハラ(http://www.ohara-inc.co.jp/)のホームページよりダウンロードしたデータから必要な

 情報のみを取り出して使用しております。株式会社オハラの許可を得ておりますので安心して

 ご利用下さい。

 なお、参考文献に有る「天文アマチュアのための望遠鏡光学 屈折編/反射編」で使われている

 ガラス名と同じ名前のものが株式会社オハラのデータには有りませんでしたので、屈折率等のデータか

 ら相当品を見つけ、文献で使われている名前でも登録しています。

 


6.作者

  作者紹介

   ・名前

    銀河☆(田中勇司)

 

   ・仕事

    LSI設計。

    CPU、DRAMコントローラ、各種画像処理、USB、ATA、IrDA等、様々なIPを開発。

    関わった製品は、FAX、プリンタ、フロッピーディスク、ハードディスク、BDレコーダ、

    4Kテレビ、8Kテレビ、携帯電話、デジタルカメラなど。

 

   ・趣味

    天体観望と天体(主に星雲・星団)の写真撮影。

    プログラム作成。

 

   ・メールアドレス

    Nifty-Serve : HGE00744

    Internet : HGE00744@nifty.ne.jp

 

   ・ホームページ

    http://galaxystar.image.coocan.jp/


7.送金方法

 本プログラムは、シェアウェアとなっております。登録されていない場合は、一部、機能制限が

 あります。送金方法は、次の通りです。

  ・登録料:2,000円

  ・登録方法:インターネットにて、ベクターのホームページ(http://www.vector.co.jp/)に行き、

   YOPTを検索し、シェアレジにてお支払い下さい。説明に従い送金致しますとライセンス

   コードがメールにて連絡されます。YOPTを起動した時のライセンスコード入力ウインドに

   そのコードを入力しますと制限なく使用可能となります。

 なお、ライセンスコードを入力しますと、YOPT.LICというファイルが作成され、ライセンスコードが

 残りますので、忘れずに保管下さい。

 ライセンスコードを忘れてしまった場合は、私にベクターで送金した時と同じアドレスでメールにて

 連絡下さい。異なる場合は、送金を確認できませんので、対応できません。

 なお、本ソフトを使用したために発生するいかなる不利益や損害などに対して、一切責任は負い

 ませんのでご了承願います。


8.変更履歴

 Ver.0.10 公開:2001年7月9日

  ・最初のバージョン。

 

 Ver.0.20 公開:未定

  ・各種設定メニューを追加

  ・メインウインドの光学系表示で、光線の線幅を細くしました。

 

 Ver.0.30 公開:2002年6月13日

  ・球面収差曲線の計算プログラムにミスが見つかりましたので修正しました。

  ・情報表示で表示される焦点位置の誤差が大きかったので、3箇所の平均を表示するように変更。

 

 Ver.0.40 公開:2002年9月13日

  ・従来、C(656.3nm)、d(587.6nm)、F(486.1nm)、g(435.8nm)の4波長しかシミュレートできません

   でしたが、e(546.1nm)とh(404.7nm)を追加し、6波長についてシミュレートできるようにしました。

  ・球面収差表示時に、波長毎に表示/非表示を選択できるようにしました。

 

 Ver.0.50 公開:2002年10月25日

  ・4次のシュミット補正板をシミュレートできるようにしました。

  ・スポットダイアグラムで設定によっては画面の中央に結果が表示されない場合がありましたので、

   修正しました。

  ・放物面鏡の位置を0mm以外の部分に配置すると計算を間違えていたので、修正しました。

 

 Ver.0.51 公開:2002年11月1日

  ・シュミット補正板と光線の交点が正しく計算できない場合があったので、修正しました。

  ・情報表示で、焦点位置や焦点距離が正しく表示されない場合がありましたので、修正しました。

 

 Ver.1.00(シェアウェア) 公開:2003年7月15日

  ・8次のシュミット補正板及び8次の非球面鏡のシミュレーションができるようになりました。

  ・レンズ設定で、レンズ単位ではなく面単位でデータを入力できるようにしました。これにより、

   密着型レンズやマンジャン鏡もシミュレーションできるようになりました。

  ・レンズ設定で、レンズや鏡の位置を絶対座標(位置)と相対位置(間隔)の両方で入力できるように

   しました。

  ・レンズ設定−焦点位置自動設定により、焦点面の位置を自動的に設定できるようになりました。

  ・自動設計機能を追加しました。これにより、数種類の屈折望遠鏡や反射望遠鏡を口径やF値などを

   設定するだけで設計できるようになりました。

  ・最適化機能を追加しました。これにより、現状の設計データに対して、選択した収差を最適化した

   データに変更することができるようになりました。

  ・シェアウェアとなり、自動設計機能と最適化機能を使用するためにライセンスコードが必要に

   なりました。

 

 Ver.1.10(シェアウェア) 公開:2006年4月14日

  ・レンズ設定で、データの追加と削除を行うためのボタンを追加し、容易に変更できるようにしました。

  ・レンズ設定で、設定できる部品を、12個から16個に増やしました。

  ・レンズ設定で、有効径が0又は負の値だとハングアップする事があるので、警告を出し、終了できない

   ようにしました。

 

 Ver.1.11(シェアウェア) 公開:2006年4月18日

  ・情報表示で、最初に絞りがあると有効径が正しく表示されない点を修正

 

 Ver.1.20(シェアウェア) 公開:2015年10月3日

  ・CコンパイラをVisual C++に変更し、高速化と最新のWindows対応を実現。

  ・自動設計−最適化 をマルチスレッドに対応し、マルチプロセッサで高速化できるようになりました。

  ・サンプルデータに、「ニュートン反射+レデューサ」を追加。

 

 Ver.1.21(シェアウェア) 公開:2018年10月20日

  ・レンズ設定のウインドに、ピント合わせの機能を統合。

  ・自動設計−屈折望遠鏡 で、設定値によっては設計をミスするバグがあったので、修正。

  ・自動設計−最適化 で、OSCの最適化をミスするバグがあったので、修正。

  ・ヘルプをWindows7以降でも表示できるように、HTMLフォーマットに変更。


機能制限

 登録されていない場合の制限事項

  本プログラムは、シェアウェアとなっております。登録されていない場合は次のような機能制限があります。

   ・自動設計機能が使えません。

    本機能には、屈折望遠鏡設計、反射望遠鏡設計、最適化が含まれており、これら全ての機能が

    使えません。