HMS Technology Sales
(415) 924-6300
harry@hmstechnologysales.com

  programming
      custom programming


programmable interface
    programmable interface


programmable light source
  programmable light source


  programming snippet
        snippet program


  source code editor
      source code editor

Programming C#, MATLAB, and more
      VirtualLab Fusion Basic, or
      VirtualLab Fusion Advanced -
          includes FMM/RCWA for rigorous grating analysis

As VirtualLab users gain experience, customization is often helpful to meet specific requirements. There are two types of custom programming in VirtualLab, snippets and modules.

Snippets are used to customize items, functions and processes that are included in VirtualLab. They are programmed in C#.
Examples of snippet programming are: programmed light sources, interfaces, mediums, materials, components and detectors, as well as transmission functions and programmable height profiles.
Customized items can be saved in catalogs for future use.

Parameter Runs can also be configured and automated, using C# program snippets. A snippet can specify which parameters to vary, minimum and maximum ranges for each parameter, and number of steps within each range. Some parameters can be programmed to vary linearly, while others vary randomly. Programmed Parameter Runs allow a great amount of flexibility for optimization and tolerancing.

Modules are another way to customize VirtualLab. They are used for creating new mathematical routines and analysis methods beyond those included in VirtualLab. Modules are programmed in C# or Visual Basic. Two available examples of VirtualLab modules are: Computing the Standard Deviation between Two Harmonic Fields, and Programming a Module that Smooths the Edges of a Structure. Ask to see these examples.

VirtualLab includes a source code editor for C# programming. To simplify setting up complex parameters, a graphical user interface is also available within the editor.
Snippets and modules can reference methods from the VirtualLab.Programming.dll such as: detectors and functionality to extract underlying complex fields, and rigorous Fourier Modal Method calculations for general incidence fields.
Snippets and modules can call functions from external DLLs, including .NET DLLs and C++ DLLs

MATLAB functions can be used within VirtualLab snippets and modules. By compiling MATLAB code as a .NET DLL, it can be called from within a snippet or module.

Batch operations can be programmed to control VirtualLab from command lines instead of the regular graphical user interface. The results can be exported to xml files.

Programming information is available in the user manual and a program reference. Also, many examples and tutorials of VirtualLab programming are available, such as: programmable light sources, detectors, materials, mediums and many more. Contact HMS Technology Sales to receive this information.

To contact HMS Technology Sales for more information click here