pyRTX.classes.RayTracer
Classes
|
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, default1) – The number of bounces to simulate for each ray.diffusion (
bool, defaultFalse) – 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.