visisipy.analysis.raytracing#

Perform raytracing on an eye model.

Functions#

raytrace(…)

Perform a ray trace analysis using the given parameters.

Module Contents#

visisipy.analysis.raytracing.raytrace(model: visisipy.EyeModel | None = None, coordinates: collections.abc.Sequence[tuple[float, float]] | None = None, wavelengths: collections.abc.Sequence[float] | None = None, field_type: visisipy.types.FieldType = 'angle', pupil: tuple[float, float] = (0, 0), *, return_raw_result: Literal[False] = False, backend: visisipy.backend.BaseBackend = _AUTOMATIC_BACKEND) pandas.DataFrame#
visisipy.analysis.raytracing.raytrace(model: visisipy.EyeModel | None = None, coordinates: collections.abc.Sequence[tuple[float, float]] | None = None, wavelengths: collections.abc.Sequence[float] | None = None, field_type: visisipy.types.FieldType = 'angle', pupil: tuple[float, float] = (0, 0), *, return_raw_result: Literal[True] = True, backend: visisipy.backend.BaseBackend = _AUTOMATIC_BACKEND) tuple[pandas.DataFrame, Any]

Perform a ray trace analysis using the given parameters.

The analysis returns a Dataframe with the following columns:

  • field: The field coordinates for the ray trace.

  • wavelength: The wavelength used in the ray trace.

  • surface: The surface number in the system.

  • comment: The comment for the surface.

  • x: The X-coordinate of the ray trace.

  • y: The Y-coordinate of the ray trace.

  • z: The Z-coordinate of the ray trace.

Parameters:
modelEyeModel | None

The eye model to be used in the ray trace. If None, the current eye model will be used.

coordinatesSequence[tuple[float, float]], optional

A sequence of tuples representing the coordinates for the ray trace. If field_type is “angle”, the coordinates should be the angles along the (X, Y) axes in degrees. If field_type is “object_height”, the coordinates should be the object heights along the (X, Y) axes in mm. Defaults to None, which uses the fields defined in the backend.

wavelengthsSequence[float], optional

A sequence of wavelengths to be used in the ray trace. Defaults to None, which uses the wavelengths defined in the backend.

field_typeFieldType, optional

The type of field to be used in the ray trace. Can be either “angle” or “object_height”. Defaults to “angle”.

pupiltuple[float, float], optional

A tuple representing the pupil coordinates for the ray trace. Defaults to (0, 0).

return_raw_resultbool, optional

Return the raw analysis result from the backend. Defaults to False.

backendBaseBackend

The backend to be used for the analysis. If not provided, the default backend is used.

Returns:
DataFrame

A pandas DataFrame containing the results of the ray trace analysis.

Any

The raw analysis result from the backend.