This page is optimized for large screens. Zooming may cause some display problems.

Handy calculations


The Handy Calculations tool addresses numerous specific calculation cases in various fields of photonics. Indeed, 286 computation pages are proposed in many domains: diffraction, fiber optics, geometric optics, interference, laser, optoelectronics, polarization, radiometry/photometry.

A set of conversions page is also available. The calculation pages integrate a contextual help with tooltips for an improved understanding and a better use.

handy button


The calculation pages are accessible from the drop-down menus displayed after clicking on the "handy calculations" link at the top left of each page. These drop-down menus correspond to the different fields of photonics. The related sub-menus are topics of the considered field.

After clicking on a submenu, a calculation page is displayed by default. The chances are high that it's not the one you want. You can find a calculation page more suited to your needs in the list displayed in the left block of the page (later called "list of links"). If you are not satisfied with any calculation page, please do not hesitate to contact us. We will do our best to answer your request.

Note that the drop-down menus are also displayed in the central block (titled "Handy Calculations") of the home page. handy menu


search page An alternative way to find a calculation is to enter keywords in the search cell located in the header. After clicking on the search button, the list of calculations relevant to all key words is displayed. For each relevant calculation, the list includes a title, a short description and eventually a small explanatory scheme. It is possible to access to the calculation by clicking on its title or on its scheme if it exists.

Note that it is also possible to access to a calculation page from the list displayed in the "sitemap" page.


Each calculation page includes several blocks:

- a list of links (3) to calculation pages relevant to the topic (2) (displayed on the left side),

- one or two calculation table(s) (6) depending on the calculation format and the buttons (7) enabling to process the computation,

- link to tooltips and to a tutorial (4) (displayed above the calculation table(s)),

- the path (1) up to the calculation page (displayed above the tooltips and link to a tutorial),

- an explanatory scheme (5) in most of the calculation pages that can be enlarged by clicking on it (at the top left of the page).

calculation page


list By clarity, the list may be organized by sub topics (displayed in grey small caps). The user can access to the calculation of his choice by clicking on its title in the list. the title is then highlighted by appearing with a darker color. A padlock is represented to the left of each calculation title in three different ways:

-   means that the calculation can be processed freely without any connection,
-   means that the calculation can be processed if the user is connected and has a Student or a Premium license,
-   means that the calculation can be processed if the user is connected and has a Premium license only.

More details on the accessibility of the calculations and features are provided in the features page.


Basically, each handy calculation page is used to perform a calculation from input data entered by the user.


There are two calculation modes.

In one mode, called the fixed mode, the calculation is processed with all the input parameters fixed.

In the other mode called the varying mode, one input parameter varies and all other parameters are fixed. The varying mode is possible for all calculation pages except the unit conversion pages, the "glass catalogs" pages and the "wavelengths" page.


Also, there are two possible formats for the calculation pages.

The pages in accordance with the two tables format contain 2 tables, one for entering input parameters ( "input" table) and the other for displaying output parameters ("output" table) in fixed mode.

In the pages in accordance with the single table format, there is only one calculation table ("parameters" table) used for entering the input parameters and display the results in the fixed mode. The user chooses the parameter to calculate by leaving its cell empty. All other parameters are input data. Therefore, each parameter can be calculated from the others.


Depending on the page, the number of buttons for processing a calculation and their label are different. In any case, the buttons for calculating in varying mode are the "tableV" and "curveV" buttons. Obviously, those for calculating in fixed mode are all buttons other than the "tableV" and "curveV" buttons.

Note that the parameters description (input or ouput parameters) is displayed in a tooltip when the mouse hovers over their label.


Calculating in fixed mode

The input/output data units can be selected in the "unit" column. The calculation is realized and the results are displayed in the dedicated table after clicking on the button "calculate" or "table" (one of this button is necessarily displayed on the page). In some pages, the results can also be displayed in a graphic by using the "graphic" or "curve" buttons or any other custom button.

Two tables format home page

Single table format home page


The input values can be entered either in numerical or scientific format using a maximum of 14 digits .
The output values are displayed in scientific format with a minimum of 2 decimal places and a maximum of 6 decimal places.

Remember that when using a single table format, the "value" cell corresponding to the parameter to calculate must be cleared otherwise an error message is displayed.

Calculating in varying mode

Except for the conversion pages, it is possible to perform the calculation by varying a parameter in a range of values. The input parameter to be varied is then selected by the corresponding radio button in the "variable" column. Its minimum value valmin and maximum value valmax are entered respectively in the corresponding "MIN" and "MAX" cells. Finally, the number of values +1 to be considered is entered in its "STEPS" cell. The calculations are realized for each value of the parameter:

variable parameter.

i varies from "0" to "STEPS".

the input values can be entered either in numerical or scientific format using a maximum of 8 digits. The results are displayed in scientific format. Displayed input and output values use respectively 6 and 4 decimal places. The number of values ("STEPS" columns) is in general limited to 200. However, this maximum value can be decreased for some time-consuming calculations.

Note that, as for the fixed mode, in the single table format, the "value" cell of the parameter to be calculated must necessary be cleared. Also, the variable parameter can obviously not be the one to be calculated.

variable parameter

variable parameter

The results can be either displayed in a table or in curves.

The results appear in a table after clicking on the "tableV" button. For each output, three columns are displayed. The first column labelled "cod.Er" corresponds to an error code which value is 0 if the calculation has been processed and 1 if it has not been processed because it is not possible or not accurate enough. The second column corresponds to the value of the variable input. The third column is the output value. The fixed input values are diplayed on the top of the table.

home page

The results appear in curves after clicking on the "curveV" button. There are as many curves as output parameters to calculate. For each curve, the abscissa represents the variable parameter values and the ordinate represents the output values. The fixed input values are diplayed on the top of the curve.

home page

Caution

In each page, input cells are filled by default to allow the calculation. These default values are first automatically loaded. In some cases, they lead to an error message because they are not relevant to the computation. This comes from the fact that they may be used in different pages and they cannot necessarily be appropriate to each of the calculations. Next, these default values can be replaced by values entered or computed by the user and can also lead to error messages in certain calculations. One solution would have been to choose different parameters for each calculation page but it was not adopted because it is sometimes useful to use input values or calculated values as input values in other pages without having to re-enter them.

In some pages, the message "not possible" may be displayed in the parameter(s) cell(s) to be calculated without any prior error message. This is because, some intermediate tests are performed during the calculation in order to avoid unrealistically or inaccurate values. Unlike preliminary tests like those preventing from divisions by zero, eventual issues arising from these tests can not be displayed as a full error message and therefore appear directly in the cell(s).

Using very small or very large input values can lead to large rounding errors. In some cases, possible rounding errors are detected. if the calculation is supposed to give a very small or a very large value, then the result will be rounded to a very small or a very large value. The process depends on the calculation but for instance, the results can be rounded to orders of magnitude of 10-6 radians if they are considered as small angle values and 10+12 if they are considered as large dimensions or large distances expressed in mm.

Some mismatchs can happen in calculations using a single table where any parameter can be calculated from all others. There are cases where the display accuracy is not sufficient and computation of an initial input using results from a previous calculation may lead to a different value than the original one. In general, the difference is small. However, there are cases where the difference can be large (for instance, the re-computation of the "dark current" in the "shot noise current" page with very different initial values for the "photocurrent" and "dark current"). Higher display accuracy would solve this issue but would cause other problems in the current display modes.

If the user makes a calculation with a varying parameter, its values will go from a minimum value to a maximum value defined respectively in the related "MIN" and "MAX" cells. These cells are in general filled by default, except for the parameter to be calculated by default in calculation pages using a single table. These minimum and maximum values can be changed at the user convenience in such a way that the maximum value is strictly larger than the minimum one.

Note that for parameters whose default value is zero, the minimum and maximum default values are also both equal to zero and must be changed in order to respect the previous condition.

Note also that those parameters which are integers (like for instance diffraction orders,...) cannot be chosen as variable parameters for the calculations.

Links to tooltips ("about", "caution", "parameters", "glossary") are proposed for a better understanding of the calculation. They can be opened from the menu at the top of the calculation table(s). Here are their functions:

- "about" displays a tooltip explaining what the calculation does.

- "caution" displays a tooltip detailing the main precautions when entering the input data.

- "parameters" displays a tooltip giving the meaning of each parameter involved in the calculation.

- "glossary" displays a tooltip giving the definition of some specific words used in the page or relevant to the calculation.

A link to a "tutorial" related the calculation topic is also displayed on the right of the tooltips menu.

The tooltips appear when the user hover the mouse over its label. It is also possible to display a tooltip content in a separate page by clicking on its label.

Note that in addition to the "parameters" tooltip, the definition of each parameter is also displayed in a pop-up when the user hover the mouse over its label (corresponding to the relevant cell of the "input", "ouput" or "parameters" column).


Here is and example of tooltip displayed when the user hover the mouse on the "caution" link:

caution




Here is an example of tooltip displayed when the user hover the mouse on the "parameters" link

parameters




Here is an example of pop-up displayed when the user hover the mouse on a parameter label.

parameter


In some computation pages, the refraction index is an input parameter. The user can enter either a number or a glass reference


Catalog page

The user can either enter a number or a glass reference from the catalog page. The catalog (path: "handy calculations/General parameters/catalogs").

On the left of this page, several links to catalogs are available. After choosing a catalog, it is possible to select a reference in the "glass" cell" and calculate the refraction index for the wavelength that is entered in the "lam" cell. The constringences and the lowest wavelength insuring an acceptable transmission are also displayed. These values may help to select a reference and check that it is adequate for the calculation of interest.


glass catalog page

Note that No other glass than the "theoretical" one can be used without logging. The "generic" catalog is available with a "student" license. All other catalogs can only be used with a "premium" license.



Entering a glass reference as a refraction index

In some pages, both refraction index and wavelength are input parameters. If entering a glass reference in the refraction index value cell instead of a number, the refraction index used in the calculation is the one of the reference at the entered wavelength.

glass reference page

In some other pages, the wavelength is not an input. when entering a glass reference in the refraction index cell, the refraction index used in the calculation is the one at a wavelength by default displayed on the top of the input tables when processing the calculation.

glass reference page

Initially, the default wavelength is 0.55 microns. However, it can be changed by clicking on the wavelength page and enterring a new value in the "lam" cell. When the wavelength is an input parameter of the computation page, the enterred wavelength is also registered as the new default wavelength that can then be used in other calculations.

In the wavelength page, two other parameters can be changed: "lam_min" and "lam_max" which are respectively the minimum and maximum wavelengths used in the calculations related to chromatism.

Note that It is necessary that "lam_min" < "lam" < "lam_max", otherwise an error message is displayed.

wavelengths page

For chromatism calculations, instead of enterring the refraction indexes of a medium corresponding to the smallest and the largest wavelengths of the considered spectrum, the user can also enter a glass reference from the catalogs defined in the catalogs link. The refraction indexes used at the smallest and largest wavelengths will be respectively those of the chosen reference respectively at the minimum and maximum default wavelengths which are automatically set at 0.48613 microns and 0.65627 microns but can be changed at the users convenience. These wavelengths are displayed on top of the input table once the calculation is processed.

chromatism page

When the constringence is an input, it can also either be a number or a glass reference. If it is defined by a glass referece, the calculation is processed with the selected glass constringence.

constringence page

Advanced calculations


Advanced Calculations is a flexible tool enabling more complex computations than the Handy Calculations pages. It is focused on the analysis/optimization of optical systems through the "Advanced calculations/syst. analysis-optimization" page. It therefore simulates the real propagation of rays. In addition, paraxial and radiometric calculations are also available as well as laser beam propagation and fiber coupling modelling.

Almost all kind of systems are compatible for calculations. Actually, up to 22 surfaces can be entered. Different types of surfaces can be used: spherical, conical, aspherical, toroidal, biconical, paraxial and paraxial without symmetry of revolution. Gratings are also available both in transmission and reflection. The tool offers the possibility to tilt and decenter surfaces. Moreover, components from catalogs can be directly uploaded for simulation.

The aperture can be defined in different ways: numerical aperture, half angle, surface diameter and f-number. It's position is specified by a surface of the system. Alternatively, the system can be telecentric in the object space or in the image space. The use of circular and rectangular aperture/obscuration is also possible and these aperture can be decentered.

Up to 7 different wavelengths and 7 different fields can be employed.

In addition, radiometric calculations can be processed with various sources (including black and grey bodies) of different shapes: punctual, circular, rectangular, cylindrical and annular.

Many options are available for the calculations and the display of results. Finally, it is possible to save the actual input data in the user computer (no input data is stored on the "optical-calculation.com" server).

Various analysis and optimization features are proposed.

Among others, the possible calculations include 3D texture ray tracing, spot diagrams, ray aberrations, wave front errors, point spread functions and modulation transfer function. Additionnally, it is possible to evaluate the best position for the observation surface based on a spot size analysis.

Furthermore, the features include paraxial and chromatism analysis as well as the evaluation of the transmitted power from a source. In addition, calculations related to laser beam propagation and coupling efficiency of a laser beam in a single mode or a multimode fiber are also proposed.

Finally, a large number of surface parameters and criteria (merit functions) can be used for optimization.

home page

The "Advanced calculations" software can be accessed by clicking on the "access" button of the website general drop-down menu and then on the "Advanced calculation/syst. analysis-optimization" link.

Once arrived on the landing page, the menu linking to the input data processing pages is located in the left column (1) while the menu for calculations processing is in the top row below the banner (2).

The landing page is the one to save the data items of the optical system loaded in the software or to upload some from a file. This page can also be reached from any other page of the software by clicking on the "save/upload" button in the left column menu. More details on how to save and upload data items are detailed in the relevant section. It should be noted that a biconvex lens is loaded by default.


home page



Input processing (1)

Input data items are processed from the different buttons located in the left column menu.

- the "save/upload" button redirects to the page enabling to save the optical system actually loaded in the software or to upload one from a file,
- the "<<" button allows to come back to the preceeding loading while the ">>" button cancels the "<<" button action,
- the "System input" menu allows to define all the input parameters of the system,
- the "Catalogs" menu allows to filter elements from the catalogs.


The "System input" menu includes buttons redirecting to pages enabling the entry of input parameters:

- "quick entry" (for directly and easily entering an optical system using components from the catalogs),
- "number of surfaces" (for defining the number of surfaces of the system),
- "surfaces parameters" (for loading all the surfaces parameters),
- "manage surfaces" (for adding or removing a surface anywhere in the system or to flip surfaces),
- "insert a component" (for inserting a component from a catalog anywhere in the actual system or for replacing the actual system by this component),
- "aperture and fields" (for defining the aperture size and location as well as the fields of interest),
- "wavelengths" (for loading the wavelengths of interest),
- "light source" (for entering light source parameters used in the radiometric calculations and for entering laser parameters used in related calculations),
- "detector" (for loading dector parameters used in the full MTF calculation),
- "fiber optic" (for defining fiber optics parameters used in fiber coupling efficiency calculations),
- "options" (for defining optional parameters used in calculations and display).
- "optimization" (for specifying parameters used in optimization processing).

The "Catalogs" menu includes several buttons ("glasses", "lenses, "mirrors", "gratings", "prisms") that redirect to a page enabling elements selection from relevant catalogs according to user defined criteria.


Calculation processing (2)

Below the banner, the "Calculate" menu displays several drop-down menus for realizing either analysis or optimization of the optical system. Each drop-down menu ("paraxial", "real propagation", "chromatism", "radiometry" and "fiber optic") displays links to relevant calculations and to the associated tutorials.


The "paraxial" menu includes the following calculations links:

- "conjugation" (calculates the paraxial conjugation and paraxial parameters),
- "longitudinal chromatism" (displays in a curve the paraxial image position depending on a the wavelength).
- "aperture" (calculates the paraxial aperture in the object and image spaces),
- "laser beam propagation" (calculates the paraxial propagation of a laser beams).


The "real propagation" menu includes the following calculations links:

- "2D system" (displays the system in a plane),
- "2D ray tracing" (displays the rays and system in a plane),
- "3D system" (displays the textured system in 3D),
- "3D wire frame ray tracing" (displays the rays and the outlines of the system in 3D),
- "3D texture ray tracing" (displays the rays and the textured system in 3D),
- "single ray propagation" (calculates the propagation of a single ray),
- "spot diagram" (displays the spot diagram for each field separateley),
- "full field spot diagram" (displays the spot diagram for each field separateley),
- "ray aberration" (displays the ray aberration curves),
- "encircled energy" (displays the encircled energy curve),
- "distortion" (displays the distorsion grid),
- "table WFE" (displays the wave front error in a table),
- "surface WFE" (displays the wave front error as a 3D surface),
- "MTF" (displays the modulation transfer function curve),
- "full MTF" (displays the modulation transfer function curve taking into account the optical system and the detector ),
- "best focus" (calculates the best focus position for the observation surface),
- "PSF" (displays the point spread function in a table),
- "PSF cut-out" (displays the point spread function cut-out as a curve),
- "vignetting" (calculates the ratio of transmitted rays),
- "SAG" (calculates the sagitta for each surface).


The "radiometry" menu includes the following calculations list:

- "transmitted flux" (calculates the ratio of transmitted power from a light source).


The "fiber optic" menu includes the following calculations list:

- "laser coupling in a single mode fiber optic" (calculates the ratio of power from a laser beam and injected in a single mode fiber optic),
- "laser coupling in a multimode fiber optic" (calculates the ratio of power from a laser beam and injected in a multimode fiber optic).


The "optimization" menu includes the following calculations list:

- "DLS cycles" (process optimization according to the Damped Least Square method).
- "DLS-cycles-random" (process optimization according to the Damped Least Square method from randomatically selected starting configurations).

catalog access











Catalogs are accessible from the "catalogs" drop down menu proposing the access to 5 different catalogs: "glasses", "lenses", "mirrors", "gratings" and "prisms".

Catalogs tables

Regardless of the type of elements selected ("glasses", "lenses", "mirrors", "gratings" or "prisms"), a selection table is displayed on the left of the page. It allows the user to filter the elements based on several criteria. Once this table has been validated, the references corresponding to the criteria are displayed with their main characteristics in a table to the right of the selection table.

Note that incomplete catalogs are available for any visitor (no need to be logged ) for consultation. Once logged, users with "Premium license" have access to full catalogs for simulation but users with "Students license" have access to reduced ones only (see the "features" page in the website).


components catalog

Contextual support

Each "catalogs" page contains contextual support. Indeed, tooltips with information on the relevant catalog are displayed when the user hover the mouse over the beige buttons "About" and "caution" located on the top. The informations are alternately displayed in a separate page if the user clicks on the button. "About" is a tooltip explaining what are the different parameters of the selection and result tables. "Caution" gives recommendations on how to correctly enter the parameters in the selection table. The "tutorial" link displays a page with more details on the selected catalog as well as some guidelines for their selection.


catalog contextual support


input page









Each link of the "System input" menu forwards to an input page containing the following blocks:

- one or several tables for entering parameters,
- contextual support reachable by the beige buttons ("about" "caution" and "tutorial") at the top of each table for a better understanding and usage of the tables.



Input tables

The input tables are different from each other. They can include all kinds of input cells as text cells, check boxes, selection lists and radio buttons.

The input parameters entered in a table are only recorded after clicking on the related "apply" button. Some input pages may display several input tables. In this case, it is not possible to enter input parameters in different tables and then click on the "apply" buttons one after the other. Indeed, once the input parameters entered in a table, one has to click on the related "apply" button before parameters are entered in another table.


input table

The maximum number of characters for the input capture depends on the input parameter and is at most 14. Therefore, the maximum number of decimals is dependent on the input number itself and is limited to 13 for positive numbers and 12 for negative ones when using a normal notation. However, it is also possible to use the scientific notation ( for instance, it is possible to enter 1.23e-12 instead of .000000000000123, which would not be possible because of the limited number of characters).


Exception: "Surfaces parameters" page

If possible, a 2D view of the system is displayed at the top. Buttons named "Sx" where "x" is a surface number are displayed below the 2D view. Unlike other input pages, the page dedicated to surface parameters does not directly display tables.


surfaces input tables 1

The table relating to a surface appears when clicking on the concerned button. This table disappears when clicking on the button again. One can therefore only display the desired tables.


surfaces input tables 2




The "All" button allows to display the tables of all surfaces at once. They all disappear by clicking on this button again. For each surface, the input table contains at least one line corresponding to the mandatory parameters. Among them are the radius of curvature, the refractive index and the constringence of the following medium as well as the distance to the next surface. Other parameters such as surface type, aperture, tilts and decentering are to be chosen from a selection list and allow to display other lines of the table for entering additional parameters. It is also possible to constrain one surface relative to another. In this case, an additional line will be displayed to define the factors of the constrained parameters.


surfaces input tables 2




Contextual support

As "catalogs" pages, each input table contains contextual support. Indeed, tooltips with information on the parameters to be entered are displayed when the user hover the mouse over the beige buttons "About" and "caution" located on the top of the table. The informations are alternately displayed in a separate page if the user clicks on the button. "About" is a tooltip explaining what are the different parameters of the table. "Caution" gives recommendations on how to correctly enter the parameters in the table. The "tutorial" link displays a page with more explanations about the input parameters and the way to define them.


input tables contextual support

Order of input parameters

The parameters of an optical system by default (actually a lens) are first automatically loaded. There is a good chance that the system to analyze will be a different one. It is then necessary to enter the input parameters in the following order:

- 1) the number of surfaces ( "number of surfaces" input link),
- 2) the mandatory surfaces parameters ( "mandatory parameters" table of the "surfaces parameters" input link),
- 3) the aperture ( "aperture" table of the "aperture and fields" input link).

Indeed, this input entry order limits the impossibility or incompatibility cases. However, while entering parameters, any impossibilities or incompatibilities are detected and an error message will appear. The order in which the other parameters are defined is random.


A calculation is directly performed by clicking on the related button of the "calculate" drop down menu. Depending on the selected calculation, the result is displayed in a graphic, a table or a text.

A tutorial concerning a calculation can be opened by the link "tutorial" located just below the related calculation button. The tutorial details how the calculation is realized and gives information on the possible options that can be used for its processing.

home page

home page


It is possible to save or upload the input parameters used for the "advanced calculations" through the "save/upload" button located at the top of the "System input" menu. This button is only displayed if the user is logged in. The user is then forwarded to a new page including a section with a "save" button (1) on the left, a section with an "upload OC file" button (2) on the right and a section with an "upload Zemax file" button (3) just below.


save/restore page

The shortest way to save the input parameters is to directly press the "save" button. The input parameters are then stored in the "download" folder of the user computer in a file named optical-calculation_"userLogin".oc, where "userLogin" is a compression of the user login (user email without dots and @ sign).

It is also possible to enter a file name in the related cell before pressing the "save" button.

Input parameters can be uploaded from a file created by the precedent process or from the "optical-calculation.com" library. This file has first to be selected with the "browse..." button of the "Upload Optical-Calculation file" section and then uploaded by clicking on the "upload OC file" button. The user can check that the file has been correctly uploaded by screening the different input tables.

Note that to ensure maximum confidentiality, these files are never saved on the "optical-calculation" server.

It is possible to directly upload a .zmx file from your computer by clicking on "upload Zemax file" after having selected the desired file with the "browse..." button of the "Upload ZEMAX file (centered system)" section. This feature does not yet take into account "coordinate breaks" and is therefore suitable for centered systems. If the file can't be uploaded, please contact us. Indeed, it can simply be due to a glass reference which is not spelled the same way in our database and in the Zemax file or to a glass reference which is not yet in our database. In these two cases, we can modify or complete our glass catalog so that your file can be uploaded.

Important: in order to avoid input data loss, it is recommended to save them regularly. Indeed, these data are no more available once the user session has expired.

Other features


home page
A list of Links to tutorials is displayed through the link "tutorial" of the general drop down menu (on the right of the header). Each link is an illustrative scheme connected to the related tutorial. The topics discussed in the tutorials are those covered by the "handy calculations".

Each calculation page includes also a link to a specific "tutorial" page as mentionned before.

Note that those tutorials are accessible only for users who are connected.


home page The "User cases" page is displayed through the link "User cases". It explains to users which sequence of calculations to perform for a particular problem. It provides also links to the relevant "handy/Advanced" calculation pages.

There are actually 2 user cases: "coupling of a laser diode in a single mode fiber" and "study of the resolution of a spectrometer". The user cases list will grow according to users demands.


home page

A glossary is accessible through the link "glossary" of the general drop down menu displayed on the right of the header. It contains the definition of many words currently employed in photonics.