We are excited to announce the release of RayJack ONE 5.0, packed with impressive new features designed to enhance your experience. Here are the highlights:



  • Significantly increased simulation speed and lower memory profile. This has been the main focus of the development in the last months.
  • Improved scalability of the performance gain during parallel execution.
  • Improved simulation speed of differential raytracing (DRT) and elimination of artifacts.
  • Improved responsiveness of the System View when many rays or hitpointsare displayed.



  • Debugging support: Fix bugs in your scripts and better understand the flow of data by setting breakpoints and entering the new debug mode. Use this tool to investigate the values of variables or execute auxiliary code in the middle of script execution.
  • More flexible and general representation of curves. The Curve2D (formerly Curve) and Curve3D classes have been revised and offer much more flexibility. Create polylines, conic sections, Béziersplines, NURBS curves, parametric curves and arbitarycombinations thereof in 2D. It is also possible to create surface curves, i.e., 3D curves that nestle to a surface, either by defining a (flat) curve in the surface's parameter space or by extracting the edge curve of a surface's aperture.
  • Surface trimming (apertures and bounds) has been extended by trimming in the surface's parameter space.
  • Exact trimming curves (instead of polygon approximations) are now used during CAD import and also extract them for further use with standard surfaces.
  • Improved CAD export functionality with less restrictions and greater accuracy.
  • Implementation of ruled surfaces, which benefit greatly from the rich set of newly available curve types. Ruled surfaces are surfaces created by connecting two space curves and are ubiquitous in CAD.
  • The MicroMirrorArrayis a model for a digital micromirror device (DMD). Define the global on/off states by providing either tilt axis and angles or the respective surface normalsdirectly. The individual state of each micromirror is then governed by a Distribution2D. Can be easily adapted to DLPs (Intel) and other mirror mirrordevices.
  • Performing colorimetric analyses with the CIE class has been revised for extensibility. Choose between different standard observers (2°or 10°) or import your own color matching functions. Common RGB color spaces have been implemented (to be extended in the future according to demand).
  • Simulate diffraction from circular gratings, like they might appear from diamond turning of surfaces.
  • Display an info box in the System View with user-defined content for better documentation of your work.
  • Post-processing distribution-based detectors can register missed rays.
  • Control over the split behavior of observation rays.
  • RayFilter.History.Interactiontests whether a ray had an interaction of the given type, optionally restricted to some specified physical objects.



  • Auto completion is now also available in the Python console.
  • Redesign of the Welcome Panel, including access to recently opened projects and scripts
  • “Tip of the day” helps novices to get started and provides experienced users with tricks the might not yet know.
  • Redesign of dialogs in the System View; names of physical objects are now displayed on a mouse click (ready to be copied to the clipboard) and also highlighted in the object tree.
  • Optionally, in the System View let point clouds be affected by the cut plane.#
  • Error messages and their respective traceback information in the output console contain more meaningful line numbers and script names.

Script Library

  • TargetFinderhas been substantially revised for improved user-friendliness and functionality. It can save days of work when constructing targets used for importance sampling and is the most comprehensive and flexible tool on the market.
  • Optimizerhas been substantially revised for improved user-friendliness and functionality.It now allows for monitoring optimization progress and complete reconstruction of optimization history.

RayJack ONE® is the non-sequential ray tracer by Hembach Photonik – the new tool for optical system analysis. RayJack ONE® offers maximum flexibility and control over simulations.


New challenges in optics require new approaches. RayJack ONE® is particularly suited for scientists and engineers who want or need to develop their own solution strategies.


Benefits of RayJack ONE® in a nutshell:


  1. Via its Python interface RayJack ONE® can be programmed almost freely. The user is optimally supported by an intuitive and transparent language concept, syntax highlighting and auto-completion of commands.Modular, reusable simulation models as well as the possibility to integrate freely available numerical libraries lead to an enormous increase in productivity
  2. RayJack ONE® offers extensive options for geometric and physical modeling and graphics output in presentation quality.
  3. With a sophisticated and flexible detector concept, users cannot only calculate standard quantities for radiometry or photometry, but also freely define their own measurement quantities.
  4. The development of RayJack ONE® is based on a clearly defined roadmap and is funded by the European Space Agency ESA as part of the GSTP program.
  5. RayJack ONE® is a young, dynamically growing software. We are happy to take customer feedback into account in further development.
  6. Hembach Photonik builds on more than twenty years of experience in optical design and analysis, which has significantly influenced the design of RayJack ONE®. We know the workflow of typical projects very well and are acquainted with the development needs and the weaknesses of previous solutions.
  7. Our practical engineering experience naturally also forms the basis for high-quality, application-oriented technical support

Rayjack ONE® Features in Detail

Powerful and flexible user interface

When developing RayJack ONE®, we put great emphasis on maximum control over the simulation process. The user interface offers:

  • Script editor for Python with syntax highlighting and auto-completion
  • Graphics in presentation quality and animation
    • System viewer for 3D representation of the geometry
    • Profile view
    • Distribution function plots and 2D graphics
  • Top and deep level access to simulation parameters and modules to implement custom analysis

Extensive possibilities for geometry modeling

RayJack ONE® supports all surface models usually required in optics:

  • Implicit and explicit surfaces such as planes, ellipsoids, conical surfaces, aspheres,tubes and truncated cones
  • Ideal (paraxial) lenses
  • Surfaces created from Bezier splines: extruded surfaces, surfaces of revolution
  • Trimmed surfaces (multiple trimming using Boolean operators)
  • surfaces imported from CAD. Supported formats: STEP, IGES, STL, OBJ (other formats on request)

Light sources


The following light sources are currently implemented:

  • Isotropic light sources
  • Flat Lambert radiator with arbitrary boundary curves
  • Radiant surfaces: any surface can be turned into a light source with Lambertian characteristics
  • Rays on a grid: collimated and point sources
  • Custom light sources
  • Ray sets from external databases (LEDs etc.)
  • Resulting ray sets from previous RayJack ONE® simulations can be used as light sources

Modification of light source:

  • Apodization (weighting of the rays with regard to location, direction and wavelength)
  • Importance sampling (direction selection)
  • Ray reversal
  • And more .. 

Physical modeling


RayJack ONE® is a very fast growing simulation tool. In the current version, it offers all the modeling options that are usually required for optical and lighting design:

  • Dispersive and absorbent materials, including standard glass catalogs
  • Thin layers and custom coatings
  • Volume and surface scattering
  • Light sources with user-defined spectrum
  • Diffraction gratings
  • polarization (Jones and Stokes formalism), thin-film polarizers, uniaxial materials

Light scattering in volume


One of the specialties of Hembach Photonik is volume light scattering, with many years of experience in the field of optical particle sizing, the development of diffusers and tissue optics. Building on this know-how, RayJack ONE® offers a variety of options for modeling and analyzing volume scattering:

  • Single and multiple scattering
  • Mie theory and core-mantle particles
  • Phenomenological scatter models
  • Arbitrary particle size distribution and particle mixture
  • Access to parameters of single scattering: scattering and extinction cross-sections, anisotropy factor, phase function and much more

Light scattering from surfaces


A core task of RayJack ONE® is the analysis of stray light. Our software offers:

  • All common models as well as custom models for the BSDF
  • BSDF for contaminated surfaces (Mie scattering) for any particle size distributions and mixtures, as well as for some standardized distributions (log-normal distribution, MilStd 1264C)
  • Importance sampling (directed scattering) to improve the radiation statistics with various options:
    • in a conical angle range (fixed in space, around surface normal, around specular ray etc.)
    • towards (or away from) a closed flat curve
    • towards (or away from) a physical object
    • and more

Various ray tracing algorithms


RayJack ONE® offers extensive control and variations for ray tracing:

  • Sequential and non-sequential ray tracing
  • Differential ray tracing
  • Step-by-step ray tracing
  • Monte Carlo ray tracing in different modes
  • Ray splitting
  • A variety of termination criteria that can be set by the user
  • Detailed report after each ray trace

Optical analysis

The radiometric (or photometric) evaluation of simulations takes place either during ray tracing ("on the fly") or in post-processing. Powerful analysis tools are available, including:

  • Spot diagram
  • Detectors for beam current, irradiance, radiant intensity (or corresponding photometric quantities)
  • Custom detectors
  • Spectral weighting
  • Filtering options: Sort the results according to the number of scattering processes, reflections, optical path length (combination of different filters with Boolean algebra possible)
  • Analysis and classification of ray paths
  • Reconstruction of the initial state of rays
  • Reconstruction of the ray history


RayJack ONE® has a library to support your design and analysis activities:


  • User interface and graphics
    • Tools for creating custom plots and animation
    • Edge editor for the design of planar curves (apertures etc.)
    • Creation and manipulation of 2D distribution plots
    • User-defined dialogs
    • Script templates
    • "Todo" editor
  •  Mathematics
    • Optimization (downhill simplex, simulated annealing). Further optimizers are available free of charge on the internet
    • Fourier transformation
    • Arithmetic for 2D and 3D vectors, matrices, affine transformations, 2D lines and much more.
    • Interpolation and curve fitting
    • Root-finding
    • Automatic differentiation
    • Numerical integration
    • Random number generators
  • Physics:
    • Physical constants
    • Black body (radiation within a spectral band, etc.) - important for IR optics
  • Units:
    • RayJack ONE® calculates internally with millimeters as the length unit and radian as the angle unit. Other units can be entered explicitly, e.g., 550nm, 4.6micron, 1inch, 180deg.


  • HTML-based online help system
  • A comprehensive manual in PDF format
  • Hundreds of sample scripts. These range from the explanation of individual commands (“code snippets”) to complex application examples and can be used as templates for your own scripts
  • The majority of the examples can be called up directly via the user interface or via the online help system.



Technical support from experts

We use RayJack ONE® for our own optical design and analysis projects! Our technical support will be happy to assist you with software operation and will process customer feedback and bug fixes. We can also advise you on application-specific questions.

RayJack ONE® History

RayJack ONE® software development started back in 2012, based on an existing application library.


In the meantime, the development has also been funded via the GSTP program of the ESA and mastered the final review of the program in 2021

RayJack ONE® pricing model

RayJack ONE® licenses are offered on a subscription basis. You can purchase one-year and lower-priced two- and three-year licenses. During the license period, you have access to technical support and receive all product updates and upgrades. The licenses are secured by a network-compatible hardware key (dongle).



Contact Us

Please contact us using the form below or by sending an email directly to software@hembach-photonik.de.


We would be happy to provide you with a time-limited test version of RayJack ONE®, send you the current price list or a binding individual offer.

Contact our Representatives

For the Americas, China and Japan please contact our Representatives

Bitte den Code eingeben:

Hinweis: Bitte die mit * gekennzeichneten Felder ausfüllen.