Share Email Print

Proceedings Paper

Object-oriented numerical modeling for integrated optics
Author(s): Francois J. Ladouceur; Leon Poladian
Format Member Price Non-Member Price
PDF $17.00 $21.00

Paper Abstract

We show how the concepts central to object oriented programming--inheritance, polymorphism and encapsulation-- can be used efficiently to implement extensible and reusable code that can be readily applied to integrated optics modeling. In particular, we will show how object oriented programming can lead to elegant and adaptable simulation code that can be easily tailored for specific needs. This approach leads to small and elegant code that can--in certain instances--be preferable to fully mouse driven commercial programs. Examples are given. We have developed a collection of modern modeling techniques using object oriented programming aimed at integrated optics. This readily available code library encompasses beam propagation methods, mode solvers, gratings and coupled mode analysis. Being based on a general programming language, namely C++, it is possible to use the library to automate tedious calculations and/or optimization problems. The library can also be used to rapidly develop custom made software for rapid prototyping and/or to apply to specific research problems. Moreover, due to its object oriented nature, the library pieces fit together naturally and versatile simulation code can be written.

Paper Details

Date Published: 7 July 1998
PDF: 7 pages
Proc. SPIE 3283, Physics and Simulation of Optoelectronic Devices VI, (7 July 1998); doi: 10.1117/12.316730
Show Author Affiliations
Francois J. Ladouceur, Australian National Univ. (Australia)
Leon Poladian, Univ. of Sydney (Australia)

Published in SPIE Proceedings Vol. 3283:
Physics and Simulation of Optoelectronic Devices VI
Marek Osinski; Peter Blood; Akira Ishibashi, Editor(s)

© SPIE. Terms of Use
Back to Top
Sign in to read the full article
Create a free SPIE account to get access to
premium articles and original research
Forgot your username?