pyRTX.classes.RayTracer

Classes

RayTracer(spacecraft, rays[, kernel, ...])

A class for performing ray-tracing simulations.

class pyRTX.classes.RayTracer.RayTracer(spacecraft, rays, kernel='Embree', bounces=1, diffusion=False, num_diffuse=None)[source]

A class for performing ray-tracing simulations.

This class orchestrates the ray-tracing process by taking a spacecraft model and a set of rays (defined by a PixelPlane object) and using a specified ray-tracing kernel to compute the intersections.

__init__(spacecraft, rays, kernel='Embree', bounces=1, diffusion=False, num_diffuse=None)[source]

Initializes the RayTracer object.

Parameters:
  • spacecraft (pyRTX.Spacecraft) – The spacecraft object to be ray-traced.

  • rays (pyRTX.PixelPlane) – The PixelPlane object defining the rays.

  • kernel (str, default 'Embree') – The ray-tracing kernel to use (e.g., ‘Embree’).

  • bounces (int, default 1) – The number of bounces to simulate for each ray.

  • diffusion (bool, default False) – Whether to simulate diffuse reflections.

  • num_diffuse (int, optional) – The number of diffuse rays to cast from each intersection point. Required if diffusion is True.

trace(epoch=None)[source]

Performs the ray-tracing simulation.

This method computes the intersections of the rays with the spacecraft mesh at a given epoch and stores the results in the object’s attributes.

Parameters:

epoch (float, optional) – The epoch in TDB seconds past J2000 for which to perform the ray-tracing. This is necessary if the spacecraft’s geometry or orientation is time-dependent.