Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

116 support all geometries gpu runner -- continued#129

Draft
jmaack24 wants to merge 12 commits intooptixCSP_mergeNatLabRockies/SolTrace:optixCSP_mergefrom
116-support-all-geometries---gpu-runnerNatLabRockies/SolTrace:116-support-all-geometries---gpu-runnerCopy head branch name to clipboard
Draft

116 support all geometries gpu runner -- continued#129
jmaack24 wants to merge 12 commits intooptixCSP_mergeNatLabRockies/SolTrace:optixCSP_mergefrom
116-support-all-geometries---gpu-runnerNatLabRockies/SolTrace:116-support-all-geometries---gpu-runnerCopy head branch name to clipboard

Conversation

@jmaack24
Copy link
Copy Markdown
Member

@jmaack24 jmaack24 commented Mar 30, 2026

Enable the following geometries within OptixRunner:

  • Flat Circle
  • Flat Hexagon
  • Flat Annulus
  • Parabola Circle
  • Parabola Hexagon
  • Parabola (general) Triangle
  • Parabola Annulus
  • Parabola Quadrilateral

If there is time, adding these would also be good

  • Cone Circle
  • Cone Hexagon
  • Cone (general) Triangle
  • Cone Rectangle
  • Cone Annulus
  • Cone Quadrilateral
  • Sphere Circle
  • Sphere Hexagon
  • Sphere (general) Triangle
  • Sphere Rectangle
  • Sphere Annulus
  • Sphere Quadrilateral

The following checklist for adding Surface/Aperture combination to the OptixRunner may be of use in the future. It is recommended to add the functions in the following order:

  1. Add needed OpticalEntityType (in OptixCSP/src/core/Soltrace.h)
  2. Add intersection function to IntersectionKernelMap in pipeline_manager.cpp
  3. Write intersection program (kernel) in intersection.cu. Function name must start with __intersection__ (note double underscores on both sides!!!)
  4. Add needed types and functions to GeometryDataST
  5. Add needed OptixCSP Aperture and Surface types in Aperture.h, Surface.h, and soltrace_type.h
  6. Add needed mapping to OpticalEntityType in GeometryManager::collect_geometry_info
  7. Add needed conversion code in CspElement::toDeviceGeometryData
  8. Add needed conversion code in OptixRunner::setup_elements
  9. Add some sort of test

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Morty Proxy This is a proxified and sanitized view of the page, visit original site.