-
-
Notifications
You must be signed in to change notification settings - Fork 425
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
Add molecular data exposure to tardis atom data #2806
Add molecular data exposure to tardis atom data #2806
Conversation
*beep* *bop* 5 I001 [*] Import block is un-sorted or un-formatted
4 G004 [ ] Logging statement uses f-string
3 F405 [ ] `deepcopy` may be undefined, or defined from star imports
2 RET505 [ ] Unnecessary `else` after `return` statement
2 D202 [*] No blank lines allowed after function docstring (found 1)
1 G001 [ ] Logging statement uses `str.format`
1 PT020 [ ] `@pytest.yield_fixture` is deprecated, use `@pytest.fixture`
1 RET506 [ ] Unnecessary `elif` after `raise` statement
1 E902 [ ] No such file or directory (os error 2)
1 F401 [*] `astropy.units` imported but unused
1 F403 [ ] `from tardis.tests.fixtures.atom_data import *` used; unable to detect undefined names
1 F821 [ ] Undefined name `pytest_report_header`
1 PGH004 [ ] Use specific rule codes when using `noqa`
1 UP030 [*] Use implicit references for positional format fields
Complete output(might be large): tardis/conftest.py:1:1: I001 [*] Import block is un-sorted or un-formatted
tardis/conftest.py:11:1: F403 `from tardis.tests.fixtures.atom_data import *` used; unable to detect undefined names
tardis/conftest.py:30:49: PGH004 Use specific rule codes when using `noqa`
tardis/conftest.py:32:9: F821 Undefined name `pytest_report_header`
tardis/conftest.py:145:5: RET505 Unnecessary `else` after `return` statement
tardis/conftest.py:169:1: PT020 `@pytest.yield_fixture` is deprecated, use `@pytest.fixture`
tardis/conftest.py:240:19: F405 `deepcopy` may be undefined, or defined from star imports
tardis/conftest.py:249:19: F405 `deepcopy` may be undefined, or defined from star imports
tardis/conftest.py:278:19: F405 `deepcopy` may be undefined, or defined from star imports
tardis/gui/tests/test_gui.py:1:1: I001 [*] Import block is un-sorted or un-formatted
tardis/gui/tests/test_gui.py:5:25: F401 [*] `astropy.units` imported but unused
tardis/gui/tests/test_gui.py:8:1: I001 [*] Import block is un-sorted or un-formatted
tardis/io/atom_data/base.py:1:1: I001 [*] Import block is un-sorted or un-formatted
tardis/io/atom_data/base.py:198:34: G004 Logging statement uses f-string
tardis/io/atom_data/base.py:263:17: G004 Logging statement uses f-string
tardis/io/atom_data/base.py:267:21: UP030 Use implicit references for positional format fields
tardis/io/atom_data/base.py:267:21: G001 Logging statement uses `str.format`
tardis/io/atom_data/base.py:704:17: G004 Logging statement uses f-string
tardis/tests/test_tardis_full_formal_integral.py:61:9: RET505 Unnecessary `else` after `return` statement
tardis/visualization/tools/liv_plot.py:1:1: I001 [*] Import block is un-sorted or un-formatted
tardis/visualization/tools/liv_plot.py:25:9: D202 [*] No blank lines allowed after function docstring (found 1)
tardis/visualization/tools/liv_plot.py:48:9: D202 [*] No blank lines allowed after function docstring (found 1)
tardis/visualization/tools/liv_plot.py:247:17: G004 Logging statement uses f-string
tardis/visualization/tools/liv_plot.py:357:13: RET506 Unnecessary `elif` after `raise` statement
tardis/visualization/tools/tests/test_liv_plot.py:1:1: E902 No such file or directory (os error 2)
Found 25 errors.
[*] 8 fixable with the `--fix` option (1 hidden fix can be enabled with the `--unsafe-fixes` option).
|
Seems reasonable. Should definitely become a class eventually. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #2806 +/- ##
==========================================
+ Coverage 69.88% 70.79% +0.91%
==========================================
Files 208 209 +1
Lines 15453 15638 +185
==========================================
+ Hits 10799 11071 +272
+ Misses 4654 4567 -87 ☔ View full report in Codecov by Sentry. |
*beep* *bop* Significantly changed benchmarks: All benchmarks: Benchmarks that have stayed the same:
| Change | Before [b6f11851] <master> | After [ec4d62ad] | Ratio | Benchmark (Parameter) |
|----------|------------------------------|---------------------|---------|-------------------------------------------------------------------------------------------------------------------------------------|
| | 491±100ns | 1.09±0.3μs | ~2.22 | opacities_opacity.BenchmarkMontecarloMontecarloNumbaOpacities.time_compton_opacity_calculation |
| | 2.87±0.5μs | 3.24±0.3μs | ~1.13 | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_bad_vpacket |
| | 601±200ns | 521±100ns | ~0.87 | opacities_opacity.BenchmarkMontecarloMontecarloNumbaOpacities.time_pair_creation_opacity_calculation |
| | 28.8±8μs | 24.8±7μs | ~0.86 | transport_montecarlo_packet_trackers.BenchmarkTransportMontecarloPacketTrackers.time_generate_rpacket_last_interaction_tracker_list |
| | 2.33±1μs | 1.98±2μs | ~0.85 | transport_montecarlo_estimators_radfield_estimator_calcs.BenchmarkMontecarloMontecarloNumbaPacket.time_update_line_estimators |
| | 3.92±0.6μs | 3.20±0.3μs | ~0.82 | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_vpacket_within_shell |
| | 63.6±0.06ms | 69.1±2ms | 1.09 | transport_montecarlo_packet_trackers.BenchmarkTransportMontecarloPacketTrackers.time_rpacket_trackers_to_dataframe |
| | 6.05±0.9μs | 6.37±0.8μs | 1.05 | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_vpacket |
| | 39.3±0.02s | 39.2±0.07s | 1.00 | run_tardis.BenchmarkRunTardis.time_run_tardis |
| | 2.07±0m | 2.07±0m | 1.00 | spectrum_formal_integral.BenchmarkTransportMontecarloFormalIntegral.time_FormalIntegrator_functions |
| | 1.44±0.3μs | 1.44±0.4μs | 1.00 | transport_geometry_calculate_distances.BenchmarkTransportGeometryCalculateDistances.time_calculate_distance_line |
| | 1.05±0m | 1.04±0m | 0.99 | run_tardis.BenchmarkRunTardis.time_run_tardis_rpacket_tracking |
| | 211±0.1ns | 208±0.3ns | 0.99 | spectrum_formal_integral.BenchmarkTransportMontecarloFormalIntegral.time_intensity_black_body |
| | 735±0.2ns | 728±5ns | 0.99 | transport_montecarlo_interaction.BenchmarkTransportMontecarloInteraction.time_thomson_scatter |
| | 30.7±0.03μs | 30.4±0.05μs | 0.99 | transport_montecarlo_packet_trackers.BenchmarkTransportMontecarloPacketTrackers.time_generate_rpacket_tracker_list |
| | 4.16±0.04ms | 4.09±0.03ms | 0.98 | opacities_opacity_state.BenchmarkOpacitiesOpacityState.time_opacity_state_initialize('macroatom') |
| | 1.73±0.02ms | 1.70±0.02ms | 0.98 | transport_montecarlo_main_loop.BenchmarkTransportMontecarloMontecarloMainLoop.time_montecarlo_main_loop |
| | 7.40±2μs | 7.28±2μs | 0.98 | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_vpacket_volley |
| | 581±200ns | 561±200ns | 0.97 | opacities_opacity.BenchmarkMontecarloMontecarloNumbaOpacities.time_photoabsorption_opacity_calculation |
| | 2.69±0.4ms | 2.60±0.5ms | 0.97 | transport_montecarlo_single_packet_loop.BenchmarkTransportMontecarloSinglePacketLoop.time_single_packet_loop |
| | 1.24±0μs | 1.19±0.1μs | 0.96 | transport_geometry_calculate_distances.BenchmarkTransportGeometryCalculateDistances.time_calculate_distance_boundary |
| | 44.0±20μs | 42.3±20μs | 0.96 | transport_montecarlo_interaction.BenchmarkTransportMontecarloInteraction.time_line_emission |
| | 46.8±20μs | 44.1±30μs | 0.94 | transport_montecarlo_interaction.BenchmarkTransportMontecarloInteraction.time_line_scatter |
| | 2.95±0.02ms | 2.71±0.02ms | 0.92 | opacities_opacity_state.BenchmarkOpacitiesOpacityState.time_opacity_state_initialize('scatter') |
If you want to see the graph of the results, you can check it here |
I think make it a dataclass now to put all of these together in one. |
Needed for STARDIS to access the molecular information ingested by carsus added in tardis-sn/carsus#396
Currently I don't think it's worth adding a molecular_data class, but if we ever want to do more complex handling of molecules, calculating them in a similar way to atomic number densities instead of just using equilibrium constants, then it might be worth reconsidering.