Optics & Photonics Japan 2010 講演予稿集, 9aC2 (東京, 2010.11.09)

波動光学シミュレーションツールキット：WaveField Tools
A Took-kit for Simulation in Wave-Optics: WaveField Tools○松島恭治○Kyoji Matsushima

関西大学 電気電子情報工学科
Department of Electrical and Electronic Engineering, Kansai University
E-mail: matsu@kansai-u.ac.jp
A software tool-kit, named WaveField Tools, has been developed in order to accelerate dataprocessing in wave-optics, e.g. calculation of Computer-Generate Hologram (CGH) and Digital
Holography (DH), or design of Diffractive Optical Element (DOE). This tool-kit includes software
libraries with hundreds of functions and several Windows applications. Many major methods recently
proposed for numerical calculation in wave-optics are implemented in the tool-kit.
1. はじめに計算機合成ホログラム(CGH)の合成やディジタルホログラフィ(DH)の再生計算，回折光学素子(DOE)の設計，あるいは回折が重要な役割を果たす現象のシミュレーションには，波動光学的な計算処理が不可欠である．これらの計算は，たいていスカラー回折理論の範囲で可能であり，ベクトル理論までは必要ないことが多い．その意味ではプログラム開発の難易度は低User application,Simulation code, etc…
いが，それでも種々の光学的状況に応じて完全に検証されたシミュレー
Tool
ションプログラム等の開発は容易ではない．また，この種の計算には非常applicationに時間を要する場合や，極めて大規模になる場合があり，そのチューニ
Library
ングは容易ではない．
psl
このようにスカラー理論の波動光学(フーリエ光学)の計算を容易にし，十分に検証されまたチューニングされたソフトを作成するために開発されLibrary
た の が WaveField Tools で あ る ． WaveField Tools は ， 既 報 の1)
wfl
LightWave ライブラリ を高度に発展・洗練させた WaveField ライブラリMKL CUDAを中核として，さらに応用的なライブラリやアプリケーションツールを組みCPU (64/32/Multi-core)
GPU合わせたツールキットである．また，近年登場した最新の自由空間光波伝搬計算理論 2-8)を実装しており，種々の状況に応じた回折計算・素子設
Fig.1 Architecture of WaveField
計計算が簡単にできる．その特徴には，Tools.
 マルチ CPU・マルチコアに対応した高速計算が可能
 初歩的な C++言語の知識により容易にプログラム作成が可能．またTable 1 Number of items implemented
一部 Windows アプリケーションを提供
in WaveField Tools libraries.
 数 10 億のサンプリング点数を超える大規模な光波計算が可能
wflNo.
 基本的な平行平面間の伝搬回折計算だけでなく，非平行平面間のClass
14伝搬計算(回転変換)やオフアクシス型回折計算を実装
Member function423
 GPU を用いた高速計算(開発中)
Global function52 多数のサンプルコードとその解説を含む 200 ページ以上のドキュメン
pslNo.
トを添付
Class8 ネットを通した無償配布
Member function
107などがある．以下，本ツールキットの構成と機能，性能について報告す
Global function
4る．
2. WaveField Tools の構成
本ツールキットの構成を Fig.1 に示す．破線の範囲が本ツールキットである．本ツールは x86 または x86-64
アーキテクチャ CPU の Windows 環境で動作する．FFT パッケージには Intel 社の MKL を用いており，また開発中の GPU 援用ライブラリは NVIDIA 社の CUDA をベースにしている．
本ツールキットの中核になるのは LightWave ライブラリ 1)を発展させた WaveField ライブラリ(wfl と略記)である．この wfl には Table 1 に示すように 14 のクラスと 500 近い数の関数を実装しており，その中には Table 2 に示すような回折伝搬計算の関数だけではなく，種々の基本的な算術演算やファイル I/O，フーリエ変換・回転変換関数，あるいは幾何学クラス等を実装している．
また，wfl の上位にあるユーティリティライブラリとして，PolygonSource ライブラリ(psl と略記)があ20

FFT ， Fourier diffraction ， Single-FFT Fresnel2) (SFT-FR),
Angular spectrum3) (AS), Band-limited Angular spectrum4)(BL-AS), Rotational transformition5,6), Shifted Fresnel method7)(Shift-FR), Shifted Angular Spectrum method8) (Shift-AS)

1517.88

Table 2 Summary of major methods implemented.

(a)

140

2.93

0.32
0.97

1.1
1.2
1.8
2.4
2.4
3.5
4.8
4.8
7.2
9.9
9.9
14.4
20.2
19.9
28.9
44.2
44.5
58.3

80
60
40
200200

160.2

(c)

150

Number of samplings

K×16K

16×8K

31.8
36.1

K

16

4K×8K

8K

4K×4K×8K

5.3
8.7

2.4
4.3

2K×

1.0
2.1

4K

2K×2K

0

12.6
18.050Shift-AS 67.8
79.1
Shift-FR100

Fig.2 Single-core computation time of major
methods implemented in WaveField Tools.
(Intel Core i7-870, 2.93 GHz, 16 GB memory)40

Samplings: 8K8K

35

Computation time [sec]

文献

0.15
0.47

100

本研究の一部は日本学術振興会の科研費(21500114)の助成を受けたものである．
1) 松島: Optics Japan 2004, 304-305 (2004).
2) T. M. Kreis, et al.: SPIE Proc. 3098, 224–233 (1997).
3) J. W. Goodman: Introduction to Fourier Optics, 2nd ed.
(McGraw-Hill, 1996), chap. 3.10.
4) K. Matsushima, et al.: Opt. Express 17, 19662-19673 (2009).
5) K. Matsushima, et al.: J. Opt. Soc. Am. A20, 1755–1762(2003)
6) K. Matsushima: Appl. Opt. 47, D110–D116 (2008).
7) R. P. Muffoletto, et al.: Opt. Express 15, 5631–5640 (2007).
8) K. Matsushima: Opt. Express 18, 18453-18463 (2010).
9) K. Matsushima: Appl. Opt. 44, 4607–4614 (2005).
10) K. Matsushima et al.: Appl. Opt. 48, H54-H63 (2009).
11) 近藤, 松島: 信学論 D-II, J87-D-II, 1487-1494 (2004).
12) 村上, 松島: HODIC Circular 29, No. 3, 7-10 (2009).

(b)

120

Computation Time [sec]り，ポリゴン法 による CGH 物体光波数値合成や波動光学的な結像計算 12)，メモリに収容できない大規模な光波を取り扱うためのセグメント分割 10)のクラスと関数等を用意している．なおこれらのライブラリには 64 ビット版と 32 ビット版の両方が同梱されている．
3. WaveField Tools ライブラリの機能と性能主な伝搬計算法や FFT の計算時間を単一プロセッサコアで測定した例を Fig.2 に示す．ここで，サンプリング数の単位は 1K=1024 点である．(a)から 2K2K サイズでFFT が 0.07 秒，4 倍拡張無しの角スペクトル伝搬法(ASwithout ext.)が 0.22 秒，また(b)から 16K16K で帯域制限
角スペクトル伝搬法 4)(BL-AS)が 95.2 秒，(C)からやはり16K16K で シ フ ト 角 ス ペ ク ト ル 伝 搬 法 8)(Shift-AS) が160.2 秒で計算できることがわかる．
また，8K8K の場合でプロセッサコア数(スレッド数)を増加したときの計算時間を Fig.3 に示す．どの手法でも概ね 4 コアで計算時間が約半分に短縮することがわかる．
本ツールには，これらのライブラリ以外にも，波面の観察と簡単な伝搬計算が行える WaveFront ブラウザや，波動光学的結像シミュレーション 12)等の Windows アプリケーションが含まれている．
4. まとめ
波動光学的計算を簡単かつ高速に行うためのツールキットを開発した．本ツールキットは下記 URL において配布を開始する予定である．
http://www.laser.ee.kansai-u.ac.jp/WaveFieldTools/

0.07
0.2209)

0.69
2.09

51.45

Polygon method9), Segmented propagation by Shift-FR10),
Segmented propagation by Shift-AS, Silhouette method11),
Wave-optical imaging12)

4.24

psl

6.04
FFT
AS without ext.

10

94.4
AS with ext.
95.2
BL-AS
Rotational transform 114.4

8.89

wfl

Shift-FR30
25

Shift-AS

20
15

BL-AS10

Rotational transform

5FFT0123

Number of processor coresFig.3 Computation time reduced by threadingin multi-processor cores. (Intel Core i7-870,2.93 GHz, 16 GB memory)4