-
Notifications
You must be signed in to change notification settings - Fork 35
New surfaces module #418
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
base: main
Are you sure you want to change the base?
New surfaces module #418
Conversation
Hello @mkelley! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:
Comment last updated at 2025-01-15 13:22:57 UTC |
Thank you for your contribution to sbpy, an Astropy affiliated package! 🌌 This checklist is meant to remind the package maintainers who will review this pull request of some common things to look for.
|
👋 Thank you for your draft pull request! Do you know that you can use |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #418 +/- ##
===========================================
- Coverage 83.15% 27.55% -55.60%
===========================================
Files 88 96 +8
Lines 8197 8398 +201
===========================================
- Hits 6816 2314 -4502
- Misses 1381 6084 +4703 ☔ View full report in Codecov by Sentry. |
b905d31
to
aa896f1
Compare
25d7e6a
to
5315e23
Compare
5315e23
to
8461d79
Compare
New surfaces module, addressing the first step in issue #415.
This PR defines the API for surfaces via the
Surface
class, and provides support for sunlight scattering off a Lambertian surface:Surface
class require four methods:LambertianSurface
class defines absorptance, emittance, and reflectance for a surface that uniformly scatters light in all directions.ScatteredLight
defines radiance for a surface scattering a light source.ScatteredSunlight
addsscattered_sunlight
, which is used to calculate the radiance from a surface scattering sunlight. It is mainly for user convenience.See the documentation for more.
I'm open to any suggestions, especially if improvements in the names and terminology are needed.