Skip to content

Updated conic integration methods #51

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 26 commits into from
Aug 30, 2024
Merged

Updated conic integration methods #51

merged 26 commits into from
Aug 30, 2024

Conversation

mikeingold
Copy link
Collaborator

@mikeingold mikeingold commented Aug 19, 2024

Changes

  • New/improved integration methods
    • Cone
    • ConeSurface
    • CylinderSurface
  • Support Matrix changes:
  • New tests
    • Custom tests for Cone and ConeSurface, ...
    • Enable testing for CylinderSurface with GaussLegendre
  • Bumps minimum version compat for Meshes.jl and CoordRefSystems.jl
  • Add ColPrac button to README

@mikeingold
Copy link
Collaborator Author

mikeingold commented Aug 19, 2024

Status:

  • CylinderSurface passes all tests
  • FrustumSurface fails but produces results that match measure to about three decimal places. I suspect this is because measure uses a discretized approximation, i.e. the integral may actually be more accurate.
  • ConeSurface fails tests with results that look about 3x too large larger than predicted by measure in the test case. I discovered a bug in measure that caused it to underpredict and filed a report in the Meshes repo, but I think this result is still incorrect.

@mikeingold
Copy link
Collaborator Author

It looks like the root issue was that Meshes' parameterization function for ConeSurface was producing inaccurate results, seeming to always produce cones whose base has unit radius.

JuliaGeometry/Meshes.jl#1011

Once this upstream bug is sorted out work on this PR will proceed.

@mikeingold
Copy link
Collaborator Author

PR pending in Meshes.jl:

JuliaGeometry/Meshes.jl#1020

@mikeingold
Copy link
Collaborator Author

The Meshes PR was accepted and merged, awaiting them to push a new patch release (v0.49.6)

@mikeingold mikeingold changed the title Updates to ConeSuface, CylinderSurface, and FrustumSurface integration Updated conic integration methods Aug 27, 2024
Copy link

codecov bot commented Aug 30, 2024

Codecov Report

Attention: Patch coverage is 65.38462% with 9 lines in your changes missing coverage. Please review.

Project coverage is 76.77%. Comparing base (59688fd) to head (078d54d).
Report is 4 commits behind head on main.

Files with missing lines Patch % Lines
src/integral_surface.jl 64.00% 9 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #51      +/-   ##
==========================================
- Coverage   78.21%   76.77%   -1.45%     
==========================================
  Files           7        7              
  Lines         358      353       -5     
==========================================
- Hits          280      271       -9     
- Misses         78       82       +4     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@mikeingold mikeingold marked this pull request as ready for review August 30, 2024 20:03
@mikeingold mikeingold merged commit feb56fd into main Aug 30, 2024
9 of 11 checks passed
@mikeingold mikeingold deleted the conefrustum branch August 31, 2024 20:17
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