RayBNN_Raytrace
June 18, 2024 ยท View on GitHub
Ray tracing library using GPUs, CPUs, and FPGAs via CUDA, OpenCL, and oneAPI
Raytraces intersections between rays, spheres, circles
Install Arrayfire
Install the Arrayfire 3.9.0 binaries at https://arrayfire.com/binaries/
or build from source https://github.com/arrayfire/arrayfire/wiki/Getting-ArrayFire
Add to Cargo.toml
arrayfire = { version = "3.8.1", package = "arrayfire_fork" }
rayon = "1.10.0"
num = "0.4.3"
num-traits = "0.2.19"
half = { version = "2.4.1" , features = ["num-traits"] }
RayBNN_DataLoader = "2.0.3"
RayBNN_Sparse = "2.0.2"
RayBNN_Cell = "2.0.3"
RayBNN_Raytrace = "2.0.3"
List of Examples
Line Sphere Intersection
RayBNN_Raytrace::Intersect::Sphere::line_sphere_intersect(
&start_line,
&dir_line,
&circle_center,
&circle_radius,
&mut intersect
);
Line Sphere Intersection Batch
RayBNN_Raytrace::Intersect::Sphere::line_sphere_intersect_batch(
3,
&start_line,
&dir_line,
&circle_center,
&circle_radius,
&mut intersect
);
Line Sphere Intersection Batch V2
RayBNN_Raytrace::Intersect::Sphere::line_sphere_intersect_batchV2(
3,
1,
&circle_center,
&circle_radius,
&mut start_line,
&mut dir_line,
&mut input_idx,
&mut hidden_idx,
);
Raytrace Neural Connections using RT3
RayBNN_Raytrace::Tracing::RT3::RT3_distance_limited_directly_connected(
&modeldata_float,
&modeldata_int,
&glia_pos,
&input_pos_total,
&input_idx_total,
&hidden_pos_total,
&hidden_idx_total,
&mut WRowIdxCOO,
&mut WColIdx
);