Physical Camera Overview

The Physical Camera allows you to create a lens system with its own optimized propagation engine, to be included in a bigger system, which improves the convergence when propagating rays and considers ghost images.

Context

Simulating lens systems in Speos is a real challenge due to the complexity of the lens geometries, and can be achieved using different ways:

  • A Direct simulation is not practical. The rays propagates from the light source to the scene, then through the lens system to the Irradiance sensor. However, the probability for rays to reach the aperture of the lens system is very low.

  • An Inverse simulation will allow you to simulate the complete lens system. However, it takes many passes (rays per pixel) to solve most of the ghost images. In most cases, it is not possible to solve the low contribution ones.

Physical Camera

The goal is to use a specific propagation engine to simulate the lens system part of an optical system that will improve the convergence when propagating rays and consider ghost images.

Figure 1. Direct Simulation using the Aiming Area Principle through the Physical Camera


Note: The Aiming Area corresponds to the first face of the lens system surrounded by a bounding box. For more information, refer to Aiming Area.

In this context, the Physical Camera allows you to define a real lens system through a Speos Light Box combined with an Irradiance Sensor that will use the optimized propagation engine specific to the physical camera when simulated.



Therefore, in simulation, two propagation engines will be used according to the part of the system:
  • The Speos standard propagation engine will be used for the scene
  • The optimized propagation engine will be used for physical camera (lens system): Optimized propagation engine will rely on knowing which surface is in front of one impact or behind, that means on predefined sequences. Rays are not propagated anymore using the Monte Carlo algorithm, on the contrary, rays strictly follow sequences of interaction. For each impact along the sequences, Fresnel specular reflection or transmission are used to reduce the power of the ray according to the type of interaction.

Physical Camera in Simulation

During an Inverse simulation, rays start from each pixel of the Irradiance sensor and are propagated through the Physical Camera sensor, eventually using the sequence file. Once rays quit the sensor, they continue their optical path towards the sources, considering the geometries of the scene.

Therefore, splitting the simulation in two part is more efficient:
  • For individual or "non ambient" light sources, Direct simulation should be preferred to get ghost effects for instance.
  • For ambient light sources, Inverse simulation should be preferred to get the ambient contribution (without Sun) that does not introduce ghost.
Note: Since each pass of an inverse simulation corresponds to 1 ray per pixel, per sequence, per wavelength, it is strongly recommended to focus on the main optical path to get the ambient contribution.

Inverse simulation with 1 sequence

night sky ambient source, max illuminance at 0,001lx

Direct simulation with 100 sequences

4 luminaires, max illuminance at 1lx

Generic Workflow

  1. Create a sequence file.

    The goal of creating a sequence file is to provide optical paths to be followed by rays to the Physical Camera sensor. This sequence file will then be used as input of the Physical Camera sensor to solve optical paths.

  2. Once the sequence file is created, add it to the Physical Camera sensor.
  3. Modify the Irradiance sensor according to the data separation you want to analyze.

    If you set the Irradiance sensor with the data separation by Sequence, another *.OPTSequence file will be generated which will consider only the Number of sequences (X) set in the Physical Camera. That means, you will only have the X first sequences in the Sequence Detection tool during a Stray Light analysis.

  4. Run the simulation.

    Note: When an *.OPTSequence file is used in a Physical Camera, every generated simulation result filename (*.xmp, *.lpf, etc.) is suffixed with "_sequential".

    Make sure the simulation type is the same (Direct or Inverse) as the simulation type used to generate the *.OPTSequence file.

    Make sure the Dispersion is activated.