G. Groot Gregory, Lambda Research Corp.
Today's photonics market is demanding optical design tools that not only are powerful and easy to use, but that also work well with a company's already-established set of software tools. Optical, mechanical, dynamic and other software tools work together to simulate an entire system, creating virtual prototypes suitable for testing with-in a virtual world. This prototyping allows companies to bring products to market faster by eliminating several iterations of testing physical prototypes.
As software evolves to better simulate different physical processes, companies typically add analysis tools to their research and development labs. In the past, software users expected to manually transfer intermediate result data from one tool to another. Today's users can expect much more interoperability from their software tools.
The route to interoperability can follow several paths. On one course, comprehensive software tools accommodate all aspects of design and analysis. Many developers will adopt this method to broaden their products’ capabilities. However, this route can lead to large, unwieldy applications, and as problems become more specialized and interdisciplinary, it becomes impossible to include all options in a commercially viable product.
In fact, software developers often will approach the implementation of a particular software algorithm in different ways, creating multiple programs that can solve similar problems. Depending on the specifics of their problems, users may rely on more than one application because each has a particular advantage for a certain kind of analysis. For this reason, competing products often coexist within a company or engineering group, or perhaps are used by an individual engineer.
A more general or accepted approach is to adopt industry standards and partnerships to ease data migration. A common example of this method is seen in the realm of mechanical computer-aided design (CAD), which has several interchange formats, including STEP (standard exchange for product data) and IGES (initial graphics exchange specification). These provide a subset of the data in a CAD program, including a lowest common denominator of geometrical data.
TracePro, an optomechanical design tool, makes use of ACIS, a common CAD engine, to enable high-fidelity data interchange from a broad range of optical and mechanical design tools. This standards and partnering technique means that the data transfers easily to many applications built on or supporting the ACIS format.
An additional benefit of partnering — in this case, with Spatial Corp. in Westminster, Colo. — is having a large, diverse user base driving the development of a shared CAD engine. This relationship has allowed us to incorporate advances from our partner’s general development direction to improve the performance and applicability of our software tool.
To demonstrate the interoperability of optical design tools, a doublet lens is specified as individual surfaces in a typical lens design program, such as OSLO (top). The lens barrel is designed in a CAD program, such as SolidWorks (bottom left), and is exported. The optical and mechanical models are then combined into a CAD-based optomechanical analysis program, such as TracePro (bottom right).
Interoperability can also affect a company’s computing environment and platform. The OSLO optical design program is evolving to include new computer platforms and to incorporate additional data communications standards. A recent release for the open-source Linux operating system has already been used in a clustered environment to optically analyze a segmented mirror telescope.1 By distributing the calculation over several Linux machines in a computer cluster, the calculation occurred in parallel.
Linux is appealing because of both customer demand and its potential to allow new analysis opportunities. OSLO Applications Programming Interface (API) for Linux enables third-party software to control and access results.
By building the API on a Sockets protocol (an interprocess communications standard common to Linux and most other operating systems), it acts as an interoperability interface that allows applications not only to cooperate on a computer, but also to interact over a company’s computer network. Thus, users can exchange data from applications running on many computers of different platforms, deploying the best tools to solve the most challenging problems.
Meet the author
G. Groot Gregory is vice president of Lambda Research Corp. in Littleton, Mass.; e-mail: firstname.lastname@example.org.
1. A. Segurson and G. Angeli (July 2004). Computationally efficient performance simulations for a Thirty Meter Telescope (TMT) point design. Proc. SPIE, p. 5497.