tardis-sn / tardis

TARDIS - Temperature And Radiative Diffusion In Supernovae
https://tardis-sn.github.io/tardis
202 stars 405 forks source link

Restructure/detailed balance foundation #2770

Closed wkerzendorf closed 2 weeks ago

review-notebook-app[bot] commented 3 months ago

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

tardis-bot commented 3 months ago

*beep* *bop* Hi human, I ran ruff on the latest commit (71cc4564b5ed3d5031653ea894f6c3821156ae90). Here are the outputs produced. Results can also be downloaded as artifacts here. Summarised output:

```diff 41 W293 [*] Blank line contains whitespace 29 F401 [*] `astropy.units` imported but unused 24 W291 [*] Trailing whitespace 21 E999 [ ] SyntaxError: Expected a statement 18 G004 [ ] Logging statement uses f-string 18 UP008 [*] Use `super()` instead of `super(__class__, self)` 15 I001 [*] Import block is un-sorted or un-formatted 10 RET505 [ ] Unnecessary `elif` after `return` statement 6 E402 [ ] Module level import not at top of cell 6 D202 [*] No blank lines allowed after function docstring (found 1) 5 E722 [ ] Do not use bare `except` 5 UP032 [*] Use f-string instead of `format` call 4 E701 [ ] Multiple statements on one line (colon) 4 E902 [ ] No such file or directory (os error 2) 3 RET506 [ ] Unnecessary `else` after `raise` statement 3 E712 [*] Avoid equality comparisons to `True`; use `if latex_label:` for truth checks 3 F405 [ ] `HiddenPlasmaProperty` may be undefined, or defined from star imports 3 UP015 [*] Unnecessary open mode parameters 2 C416 [*] Unnecessary `list` comprehension (rewrite using `list()`) 2 PIE808 [*] Unnecessary `start` argument in `range` 2 FLY002 [*] Consider `f"{hash_string}_{nlte_prop}"` instead of string join 2 W292 [*] No newline at end of file 2 F403 [ ] `from tardis.plasma.properties.base import *` used; unable to detect undefined names 2 F811 [*] Redefinition of unused `npt` from line 2 1 S605 [ ] Starting a process with a shell: seems safe, but may be changed in the future; consider rewriting without `shell` 1 G001 [ ] Logging statement uses `str.format` 1 F821 [ ] Undefined name `s1` 1 UP004 [*] Class `NLTEExcitationData` inherits from `object` 1 UP034 [*] Avoid extraneous parentheses 1 TRY300 [ ] Consider moving this statement to an `else` block ```

Complete output(might be large):

```diff .github/workflows/codespell.yml:3:4: E999 SyntaxError: Expected an expression .github/workflows/codespell.yml:18:11: E701 Multiple statements on one line (colon) .github/workflows/codespell.yml:39:26: W292 [*] No newline at end of file .github/workflows/codestyle.yml:7:4: E999 SyntaxError: Expected an expression .github/workflows/codestyle.yml:25:11: E701 Multiple statements on one line (colon) .github/workflows/codestyle.yml:30:11: E701 Multiple statements on one line (colon) .github/workflows/codestyle.yml:46:8: W291 [*] Trailing whitespace .github/workflows/codestyle.yml:63:1: W293 [*] Blank line contains whitespace .github/workflows/codestyle.yml:65:15: W291 [*] Trailing whitespace .github/workflows/codestyle.yml:69:1: W293 [*] Blank line contains whitespace .github/workflows/codestyle.yml:78:1: W293 [*] Blank line contains whitespace .github/workflows/codestyle.yml:82:1: W293 [*] Blank line contains whitespace .github/workflows/codestyle.yml:90:1: W293 [*] Blank line contains whitespace .github/workflows/codestyle.yml:102:26: W291 [*] Trailing whitespace .github/workflows/codestyle.yml:106:1: W293 [*] Blank line contains whitespace .github/workflows/codestyle.yml:114:1: W293 [*] Blank line contains whitespace .github/workflows/codestyle.yml:125:22: W291 [*] Trailing whitespace .github/workflows/codestyle.yml:126:89: W291 [*] Trailing whitespace .github/workflows/codestyle.yml:128:84: W291 [*] Trailing whitespace .github/workflows/codestyle.yml:144:1: W293 [*] Blank line contains whitespace .github/workflows/codestyle.yml:148:1: W293 [*] Blank line contains whitespace .github/workflows/release.yml:7:4: E999 SyntaxError: Expected an expression .github/workflows/release.yml:16:7: E701 Multiple statements on one line (colon) .github/workflows/release.yml:57:1: W293 [*] Blank line contains whitespace .github/workflows/release.yml:59:1: W293 [*] Blank line contains whitespace .github/workflows/stardis-tests.yml:3:4: E999 SyntaxError: Expected an expression .github/workflows/stardis-tests.yml:22:1: W293 [*] Blank line contains whitespace .github/workflows/stardis-tests.yml:39:11: W291 [*] Trailing whitespace .github/workflows/stardis-tests.yml:51:1: W293 [*] Blank line contains whitespace .github/workflows/stardis-tests.yml:58:1: W293 [*] Blank line contains whitespace .github/workflows/stardis-tests.yml:64:1: W293 [*] Blank line contains whitespace .github/workflows/stardis-tests.yml:69:1: W293 [*] Blank line contains whitespace .github/workflows/stardis-tests.yml:75:32: W291 [*] Trailing whitespace .github/workflows/stardis-tests.yml:76:20: W292 [*] No newline at end of file .mailmap:1:38: E999 SyntaxError: Expected an expression README_TEMPLATE.rst:1:1: E999 SyntaxError: Expected a statement conda-linux-64.lock:5:1: E999 SyntaxError: Expected class, function definition or async function definition after decorator conda-lock.yml:14:10: E999 SyntaxError: Expected an expression conda-osx-64.lock:5:1: E999 SyntaxError: Expected class, function definition or async function definition after decorator conda-osx-arm64.lock:5:1: E999 SyntaxError: Expected class, function definition or async function definition after decorator docs/_static/ruff_badge.json:1:1: E902 No such file or directory (os error 2) docs/contributing/development/code_quality.rst:1:1: E999 SyntaxError: Expected an expression docs/contributing/development/developer_faq.rst:1:1: E999 SyntaxError: Expected an expression docs/contributing/development/developer_faq.rst:13:40: W291 [*] Trailing whitespace docs/contributing/development/known_projects.inc:1:1: E999 SyntaxError: Expected a statement docs/contributing/tools/hdf_writer.ipynb:cell 3:9:1: W293 [*] Blank line contains whitespace docs/contributing/tools/hdf_writer.ipynb:cell 8:3:11: E999 SyntaxError: Simple statements must be separated by newlines or semicolons docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:1:1: I001 [*] Import block is un-sorted or un-formatted docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:1:8: F401 [*] `tardis` imported but unused docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:5:38: F401 [*] `tardis.io.atom_data.base.AtomData` imported but unused docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:7:20: F811 [*] Redefinition of unused `run_tardis` from cell 2, line 2 docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:11:1: E402 Module level import not at top of cell docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:11:1: I001 [*] Import block is un-sorted or un-formatted docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:12:1: E402 Module level import not at top of cell docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:13:1: E402 Module level import not at top of cell docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:13:30: F401 [*] `astropy.units` imported but unused docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:14:1: E402 Module level import not at top of cell docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:15:1: E402 Module level import not at top of cell docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 2:16:1: E402 Module level import not at top of cell docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:2:5: D202 [*] No blank lines allowed after function docstring (found 1) docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:8:1: W293 Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:12:1: W293 Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:17:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:22:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:24:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:26:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:32:21: W291 [*] Trailing whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:35:5: D202 [*] No blank lines allowed after function docstring (found 1) docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:37:1: W293 Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:44:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:54:5: D202 [*] No blank lines allowed after function docstring (found 1) docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:57:1: W293 Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:63:1: W293 Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:68:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 4:75:5: RET505 Unnecessary `elif` after `return` statement docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:1:32: W291 [*] Trailing whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:2:35: W291 [*] Trailing whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:3:37: W291 [*] Trailing whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:4:41: W291 [*] Trailing whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:5:31: W291 [*] Trailing whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:6:31: W291 [*] Trailing whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:8:5: D202 [*] No blank lines allowed after function docstring (found 1) docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:11:1: W293 Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:13:112: W291 Trailing whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:15:1: W293 Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:49:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:54:33: UP032 [*] Use f-string instead of `format` call docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:56:33: UP032 [*] Use f-string instead of `format` call docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 7:57:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 8:9:6: UP015 [*] Unnecessary open mode parameters docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 8:12:6: UP015 [*] Unnecessary open mode parameters docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 8:16:19: C416 Unnecessary `list` comprehension (rewrite using `list()`) docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 8:17:23: C416 Unnecessary `list` comprehension (rewrite using `list()`) docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 9:2:5: D202 [*] No blank lines allowed after function docstring (found 1) docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 9:4:1: W293 Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 9:11:1: W293 Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 10:2:5: D202 [*] No blank lines allowed after function docstring (found 1) docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 10:4:1: W293 Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 10:18:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 10:30:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 10:44:1: W293 [*] Blank line contains whitespace docs/contributing/tools/profiling/tardis_profiling_threads.ipynb:cell 10:45:43: UP032 [*] Use f-string instead of `format` call docs/index.rst:1:1: E999 SyntaxError: Expected a statement docs/index.rst:21:51: W291 [*] Trailing whitespace docs/index.rst:43:76: W291 [*] Trailing whitespace docs/index.rst:44:64: W291 [*] Trailing whitespace docs/index.rst:45:71: W291 [*] Trailing whitespace docs/index.rst:46:69: W291 [*] Trailing whitespace docs/index.rst:47:68: W291 [*] Trailing whitespace docs/index.rst:66:1: W293 [*] Blank line contains whitespace docs/index.rst:79:1: W293 [*] Blank line contains whitespace docs/index.rst:102:1: W293 [*] Blank line contains whitespace docs/io/configuration/components/models/converters/arepo_to_tardis.ipynb:cell 6:1:1: I001 [*] Import block is un-sorted or un-formatted docs/io/configuration/components/models/converters/arepo_to_tardis.ipynb:cell 6:1:17: F401 [*] `numpy` imported but unused docs/io/configuration/components/models/converters/arepo_to_tardis.ipynb:cell 6:4:8: F401 [*] `json` imported but unused docs/io/configuration/components/models/csvy_full_rad.csvy:1:4: E999 SyntaxError: Expected an expression docs/physics/plasma/detailed_balance/collisional_rate_coefficients.hdf:1:1: E902 stream did not contain valid UTF-8 docs/physics/plasma/detailed_balance/comparison.ipynb:cell 31:1:1: I001 [*] Import block is un-sorted or un-formatted docs/physics/plasma/detailed_balance/test_continuum_template_wkerzen_rate_coeffs.yml:2:26: E999 SyntaxError: Simple statements must be separated by newlines or semicolons docs/physics/tardisgamma/index.rst:1:1: E902 No such file or directory (os error 2) docs/physics/tardisgamma/packetinitialization.rst:1:1: E902 No such file or directory (os error 2) docs/resources/code_comparison/toy_models/blondin_compare.csvy:1:4: E999 SyntaxError: Expected an expression docs/resources/code_comparison/toy_models/blondin_compare_01.csvy:1:4: E999 SyntaxError: Expected an expression docs/resources/code_comparison/toy_models/blondin_compare_06.csvy:1:4: E999 SyntaxError: Expected an expression tardis/energy_input/util.py:383:5: RET505 Unnecessary `elif` after `return` statement tardis/io/model/parse_radiation_field_configuration.py:118:13: G004 Logging statement uses f-string tardis/model/matter/composition.py:206:9: RET505 Unnecessary `else` after `return` statement tardis/plasma/__init__.py:2:63: W291 Trailing whitespace tardis/plasma/__init__.py:5:32: F401 `tardis.plasma.base.BasePlasma` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/base.py:11:1: F403 `from tardis.plasma.properties.base import *` used; unable to detect undefined names tardis/plasma/base.py:45:9: RET505 Unnecessary `else` after `return` statement tardis/plasma/base.py:46:18: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/base.py:53:9: RET506 Unnecessary `else` after `raise` statement tardis/plasma/base.py:54:18: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/base.py:111:17: E722 Do not use bare `except` tardis/plasma/base.py:144:44: F405 `PreviousIterationProperty` may be undefined, or defined from star imports tardis/plasma/base.py:153:46: F405 `Input` may be undefined, or defined from star imports tardis/plasma/base.py:273:13: G004 Logging statement uses f-string tardis/plasma/base.py:296:20: F401 [*] `pygraphviz` imported but unused tardis/plasma/base.py:297:9: E722 Do not use bare `except` tardis/plasma/base.py:306:16: E712 Avoid equality comparisons to `True`; use `if latex_label:` for truth checks tardis/plasma/base.py:327:16: E712 Avoid equality comparisons to `True`; use `if latex_label:` for truth checks tardis/plasma/base.py:333:16: E712 Avoid equality comparisons to `True`; use `if latex_label:` for truth checks tardis/plasma/base.py:383:9: E722 Do not use bare `except` tardis/plasma/base.py:429:35: F405 `HiddenPlasmaProperty` may be undefined, or defined from star imports tardis/plasma/base.py:447:29: E722 Do not use bare `except` tardis/plasma/detailed_balance/rates/__init__.py:2:5: F401 `tardis.plasma.detailed_balance.rates.collision_strengths.UpsilonCMFGENSolver` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/detailed_balance/rates/__init__.py:3:5: F401 `tardis.plasma.detailed_balance.rates.collision_strengths.UpsilonRegemorterSolver` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/detailed_balance/rates/__init__.py:6:5: F401 `tardis.plasma.detailed_balance.rates.collisional_rates.ThermalCollisionalRateSolver` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/detailed_balance/rates/__init__.py:9:5: F401 `tardis.plasma.detailed_balance.rates.radiative_rates.RadiativeRatesSolver` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/properties/atomic.py:6:28: F401 [*] `radioactivedecay` imported but unused tardis/plasma/properties/atomic.py:11:33: F401 [*] `tardis.constants` imported but unused tardis/plasma/properties/atomic.py:379:17: UP032 [*] Use f-string instead of `format` call tardis/plasma/properties/atomic.py:558:9: RET505 Unnecessary `else` after `return` statement tardis/plasma/properties/atomic.py:589:9: RET505 Unnecessary `else` after `return` statement tardis/plasma/properties/atomic.py:602:17: G004 Logging statement uses f-string tardis/plasma/properties/atomic.py:643:9: RET505 Unnecessary `else` after `return` statement tardis/plasma/properties/base.py:78:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/base.py:117:25: G004 Logging statement uses f-string tardis/plasma/properties/base.py:135:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/base.py:163:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/base.py:178:9: RET505 Unnecessary `else` after `return` statement tardis/plasma/properties/continuum_processes/__init__.py:1:1: I001 [*] Import block is un-sorted or un-formatted tardis/plasma/properties/continuum_processes/__init__.py:2:5: F401 `tardis.plasma.properties.continuum_processes.photo_ion_rate_coeff.PhotoIonRateCoeff` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/properties/continuum_processes/__init__.py:4:1: F403 `from tardis.plasma.properties.continuum_processes.rates import *` used; unable to detect undefined names tardis/plasma/properties/continuum_processes/__init__.py:6:5: F401 `tardis.plasma.properties.continuum_processes.recomb_rate_coeff.StimRecombRateFactor` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/properties/continuum_processes/__init__.py:7:5: F401 `tardis.plasma.properties.continuum_processes.recomb_rate_coeff.SpontRecombRateCoeff` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/properties/continuum_processes/__init__.py:8:5: F401 `tardis.plasma.properties.continuum_processes.recomb_rate_coeff.StimRecombRateCoeff` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/properties/continuum_processes/fast_array_util.py:3:1: I001 [*] Import block is un-sorted or un-formatted tardis/plasma/properties/general.py:4:30: F401 [*] `astropy.units` imported but unused tardis/plasma/properties/general.py:33:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/general.py:74:21: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/general.py:118:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/helium_nlte.py:53:13: UP034 [*] Avoid extraneous parentheses tardis/plasma/properties/helium_nlte.py:130:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/helium_nlte.py:182:21: E722 Do not use bare `except` tardis/plasma/properties/helium_nlte.py:185:29: G004 Logging statement uses f-string tardis/plasma/properties/helium_nlte.py:218:23: S605 Starting a process with a shell: seems safe, but may be changed in the future; consider rewriting without `shell` tardis/plasma/properties/helium_nlte.py:235:18: UP015 [*] Unnecessary open mode parameters tardis/plasma/properties/helium_nlte.py:238:36: PIE808 [*] Unnecessary `start` argument in `range` tardis/plasma/properties/helium_nlte.py:261:69: F821 Undefined name `s1` tardis/plasma/properties/ion_population.py:206:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/ion_population.py:291:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/ion_population.py:370:25: G004 Logging statement uses f-string tardis/plasma/properties/ion_population.py:424:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/ion_population.py:495:25: G004 Logging statement uses f-string tardis/plasma/properties/level_population.py:1:1: I001 [*] Import block is un-sorted or un-formatted tardis/plasma/properties/level_population.py:28:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/nlte.py:2:8: F401 [*] `os` imported but unused tardis/plasma/properties/nlte.py:4:17: F401 [*] `numpy` imported but unused tardis/plasma/properties/nlte.py:10:53: F401 [*] `tardis.plasma.properties.ion_population.PhiSahaNebular` imported but unused tardis/plasma/properties/nlte_excitation_data.py:8:26: UP004 [*] Class `NLTEExcitationData` inherits from `object` tardis/plasma/properties/nlte_rate_equation_solver.py:316:25: UP032 [*] Use f-string instead of `format` call tardis/plasma/properties/nlte_rate_equation_solver.py:316:25: G001 Logging statement uses `str.format` tardis/plasma/properties/nlte_rate_equation_solver.py:325:25: G004 Logging statement uses f-string tardis/plasma/properties/partition_function.py:1:1: I001 [*] Import block is un-sorted or un-formatted tardis/plasma/properties/partition_function.py:145:9: RET505 Unnecessary `elif` after `return` statement tardis/plasma/properties/partition_function.py:161:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/partition_function.py:181:25: G004 Logging statement uses f-string tardis/plasma/properties/partition_function.py:192:21: G004 Logging statement uses f-string tardis/plasma/properties/partition_function.py:199:21: G004 Logging statement uses f-string tardis/plasma/properties/partition_function.py:252:21: RET506 Unnecessary `else` after `raise` statement tardis/plasma/properties/partition_function.py:395:21: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/plasma_input.py:2:5: F401 [*] `tardis.plasma.properties.base.ArrayInput` imported but unused tardis/plasma/properties/radiative_properties.py:1:1: I001 [*] Import block is un-sorted or un-formatted tardis/plasma/properties/radiative_properties.py:42:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/radiative_properties.py:178:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/plasma/properties/rate_matrix_index.py:1:1: I001 [*] Import block is un-sorted or un-formatted tardis/plasma/radiation_field/__init__.py:2:5: F401 `tardis.plasma.radiation_field.planck_rad_field.DilutePlanckianRadiationField` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/radiation_field/__init__.py:3:5: F401 `tardis.plasma.radiation_field.planck_rad_field.PlanckianRadiationField` imported but unused; consider removing, adding to `__all__`, or using a redundant alias tardis/plasma/tests/test_complete_plasmas.py:149:27: FLY002 Consider `f"{hash_string}_{prop}"` instead of string join tardis/plasma/tests/test_complete_plasmas.py:154:39: FLY002 Consider `f"{hash_string}_{nlte_prop}"` instead of string join tardis/plasma/tests/test_hdf_plasma.py:1:17: F401 [*] `numpy` imported but unused tardis/plasma/tests/test_nlte_excitation.py:1:1: I001 [*] Import block is un-sorted or un-formatted tardis/plasma/tests/test_nlte_excitation.py:5:27: F401 [*] `numpy.testing.assert_allclose` imported but unused tardis/plasma/tests/test_nlte_solver.py:1:1: I001 [*] Import block is un-sorted or un-formatted tardis/plasma/tests/test_nlte_solver.py:5:25: F811 [*] Redefinition of unused `npt` from line 2 tardis/plasma/tests/test_plasma_continuum.py:1:1: I001 [*] Import block is un-sorted or un-formatted tardis/simulation/base.py:1:1: I001 [*] Import block is un-sorted or un-formatted tardis/simulation/base.py:155:14: UP008 Use `super()` instead of `super(__class__, self)` tardis/simulation/base.py:199:13: RET506 Unnecessary `else` after `raise` statement tardis/simulation/base.py:263:17: G004 Logging statement uses f-string tardis/simulation/base.py:270:9: RET505 Unnecessary `else` after `return` statement tardis/simulation/base.py:451:13: G004 Logging statement uses f-string tardis/simulation/base.py:549:13: G004 Logging statement uses f-string tardis/simulation/base.py:656:25: G004 Logging statement uses f-string tardis/simulation/base.py:659:13: G004 Logging statement uses f-string tardis/simulation/base.py:664:13: G004 Logging statement uses f-string tardis/simulation/base.py:715:13: TRY300 Consider moving this statement to an `else` block tardis/simulation/base.py:717:26: G004 Logging statement uses f-string tardis/visualization/widgets/shell_info.py:1:1: I001 [*] Import block is un-sorted or un-formatted tardis/visualization/widgets/shell_info.py:1:25: F401 [*] `tardis.base.run_tardis` imported but unused tardis/visualization/widgets/shell_info.py:2:51: F401 [*] `tardis.io.atom_data.atom_web_download.download_atom_data` imported but unused tardis/visualization/widgets/shell_info.py:12:17: F401 [*] `numpy` imported but unused tardis/visualization/widgets/shell_info.py:299:25: PIE808 [*] Unnecessary `start` argument in `range` tardis_env3.yml:3:10: E999 SyntaxError: Expected an expression Found 236 errors. [*] 108 fixable with the `--fix` option (37 hidden fixes can be enabled with the `--unsafe-fixes` option). ```
tardis-bot commented 3 months ago

*beep* *bop*

Hi, human.

The docs workflow has succeeded :heavy_check_mark:

Click here to see your results.

tardis-bot commented 2 months ago

*beep* *bop* Hi human, I ran benchmarks as you asked comparing master (3a391ae6aa0cb056b48c2febb23fa364323a5610) and the latest commit (71cc4564b5ed3d5031653ea894f6c3821156ae90). Here are the logs produced by ASV. Results can also be downloaded as artifacts here.

Significantly changed benchmarks:

```diff ```

All benchmarks:

```diff Benchmarks that have stayed the same: | Change | Before [47d64bfb] | After [71cc4564] | Ratio | Benchmark (Parameter) | |----------|------------------------------|---------------------|---------|-------------------------------------------------------------------------------------------------------------------------------------| | | 1.51±0.3μs | 2.56±0.5μs | ~1.69 | transport_geometry_calculate_distances.BenchmarkTransportGeometryCalculateDistances.time_calculate_distance_line | | | 44.6±20μs | 61.2±20μs | ~1.37 | transport_montecarlo_interaction.BenchmarkTransportMontecarloInteraction.time_line_emission | | | 21.4±5μs | 26.7±7μs | ~1.25 | transport_montecarlo_packet_trackers.BenchmarkTransportMontecarloPacketTrackers.time_generate_rpacket_last_interaction_tracker_list | | | 3.09±0.5μs | 3.67±0.7μs | ~1.19 | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_vpacket_within_shell | | | 2.00±1μs | 2.32±1μs | ~1.16 | transport_montecarlo_estimators_radfield_estimator_calcs.BenchmarkMontecarloMontecarloNumbaPacket.time_update_line_estimators | | | 611±200ns | 701±90ns | ~1.15 | opacities_opacity.BenchmarkMontecarloMontecarloNumbaOpacities.time_photoabsorption_opacity_calculation | | | 6.71±1μs | 7.53±2μs | ~1.12 | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_vpacket_volley | | | 561±100ns | 621±200ns | ~1.11 | opacities_opacity.BenchmarkMontecarloMontecarloNumbaOpacities.time_pair_creation_opacity_calculation | | | 701±100ns | 601±200ns | ~0.86 | opacities_opacity.BenchmarkMontecarloMontecarloNumbaOpacities.time_compton_opacity_calculation | | | 44.8±20μs | 48.4±30μs | 1.08 | transport_montecarlo_interaction.BenchmarkTransportMontecarloInteraction.time_line_scatter | | | 2.69±0ms | 2.83±0ms | 1.05 | opacities_opacity_state.BenchmarkOpacitiesOpacityState.time_opacity_state_initialize('scatter') | | | 724±0.4ns | 743±0.2ns | 1.03 | transport_montecarlo_interaction.BenchmarkTransportMontecarloInteraction.time_thomson_scatter | | | 3.71±0.02ms | 3.76±0.01ms | 1.01 | opacities_opacity_state.BenchmarkOpacitiesOpacityState.time_opacity_state_initialize('macroatom') | | | 37.5±0.04s | 37.6±0.01s | 1.00 | run_tardis.BenchmarkRunTardis.time_run_tardis | | | 1.02±0m | 1.03±0m | 1.00 | run_tardis.BenchmarkRunTardis.time_run_tardis_rpacket_tracking | | | 2.08±0m | 2.08±0m | 1.00 | spectrum_formal_integral.BenchmarkTransportMontecarloFormalIntegral.time_FormalIntegrator_functions | | | 206±0.08ns | 204±0.3ns | 0.99 | spectrum_formal_integral.BenchmarkTransportMontecarloFormalIntegral.time_intensity_black_body | | | 32.1±0.03μs | 31.8±0.1μs | 0.99 | transport_montecarlo_packet_trackers.BenchmarkTransportMontecarloPacketTrackers.time_generate_rpacket_tracker_list | | | 64.3±0.5ms | 64.0±0.3ms | 0.99 | transport_montecarlo_packet_trackers.BenchmarkTransportMontecarloPacketTrackers.time_rpacket_trackers_to_dataframe | | | 1.72±0.01ms | 1.68±0.01ms | 0.98 | transport_montecarlo_main_loop.BenchmarkTransportMontecarloMontecarloMainLoop.time_montecarlo_main_loop | | | 2.62±0.4ms | 2.53±0.4ms | 0.96 | transport_montecarlo_single_packet_loop.BenchmarkTransportMontecarloSinglePacketLoop.time_single_packet_loop | | | 6.62±1μs | 6.33±0.6μs | 0.96 | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_vpacket | | | 3.30±0.3μs | 3.04±0.4μs | 0.92 | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_bad_vpacket | | | 1.30±0μs | 1.19±0μs | 0.91 | transport_geometry_calculate_distances.BenchmarkTransportGeometryCalculateDistances.time_calculate_distance_boundary | ```

If you want to see the graph of the results, you can check it here

andrewfullard commented 3 weeks ago

Tests rely on https://github.com/tardis-sn/tardis-regression-data/pull/24 merging first.

andrewfullard commented 3 weeks ago

As far as I can tell it looks fine, but it's always hard to tell with the restructure PRs which parts are renames or functional changes worth paying attention to, or are just files and functions being moved around to places that make more sense.

In this case @jvshields I think the tests are most illustrative because we compare this new structure with the previous way(s) of doing things.

andrewfullard commented 3 weeks ago

Tests are now failing for a different but related reason. electron_densities seems to stick around in memory for too long. Unclear why.

codecov[bot] commented 2 weeks ago

Codecov Report

Attention: Patch coverage is 84.37500% with 40 lines in your changes missing coverage. Please review.

Project coverage is 70.70%. Comparing base (3a391ae) to head (71cc456). Report is 12 commits behind head on master.

Files with missing lines Patch % Lines
...asma/detailed_balance/rates/collision_strengths.py 76.36% 26 Missing :warning:
...s/plasma/detailed_balance/rates/radiative_rates.py 31.57% 13 Missing :warning:
...plasma/detailed_balance/rates/collisional_rates.py 97.22% 1 Missing :warning:
Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #2770 +/- ## ========================================== - Coverage 70.87% 70.70% -0.17% ========================================== Files 209 213 +4 Lines 15589 15823 +234 ========================================== + Hits 11049 11188 +139 - Misses 4540 4635 +95 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.