Skip to content
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

Remove tau sobolevs from plasma #2874

Open
wants to merge 17 commits into
base: master
Choose a base branch
from

Conversation

andrewfullard
Copy link
Contributor

@andrewfullard andrewfullard commented Nov 11, 2024

📝 Description

Type: 🚀 feature

This PR creates an alternative plasma without the tau Sobolevs, beta Sobolevs or macro atom properties. It modifies the plasma factory, formal integral and opacity state to handle this while still passing tests.

🚦 Testing

How did you test these changes?

  • Testing pipeline
  • Other method (describe)
  • My changes can't be tested (explain why)

☑️ Checklist

  • I requested two reviewers for this pull request
  • I updated the documentation according to my changes
  • I built the documentation by applying the build_docs label

Note: If you are not allowed to perform any of these actions, ping (@) a contributor.

@tardis-bot
Copy link
Contributor

tardis-bot commented Nov 11, 2024

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

175	F405  	[ ] `AdiabaticCoolingRate` may be undefined, or defined from star imports
11	G004  	[ ] Logging statement uses f-string
8	W293  	[*] Blank line contains whitespace
5	RET505	[ ] Unnecessary `else` after `return` statement
4	E999  	[ ] SyntaxError: Expected an expression
4	F401  	[*] `numpy` imported but unused
3	INP001	[ ] File `tardis/opacities/tests/test_opacity_solver.py` is part of an implicit namespace package. Add an `__init__.py`.
3	RET506	[ ] Unnecessary `else` after `raise` statement
3	I001  	[*] Import block is un-sorted or un-formatted
2	E722  	[ ] Do not use bare `except`
2	F403  	[ ] `from tardis.plasma.properties import *` used; unable to detect undefined names
1	ANN204	[ ] Missing return type annotation for special method `__getitem__`
1	E701  	[ ] Multiple statements on one line (colon)
1	W291  	[*] Trailing whitespace
1	W292  	[*] No newline at end of file
1	D202  	[*] No blank lines allowed after function docstring (found 1)
1	D406  	[*] Section name should end with a newline ("Returns")
1	D407  	[*] Missing dashed underline after section ("Returns")
1	D411  	[*] Missing blank line before section ("Parameters")
1	UP008 	[*] Use `super()` instead of `super(__class__, self)`
1	TRY300	[ ] Consider moving this statement to an `else` block

Complete output(might be large):

.github/workflows/post-release.yml:7:4: E999 SyntaxError: Expected an expression
.github/workflows/post-release.yml:124:37: W291 [*] Trailing whitespace
.github/workflows/pre-release.yml:7:4: E999 SyntaxError: Expected an expression
.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:48:1: W293 [*] Blank line contains whitespace
.github/workflows/release.yml:51:1: W293 [*] Blank line contains whitespace
.github/workflows/release.yml:58:1: W293 [*] Blank line contains whitespace
.github/workflows/release.yml:61:1: W293 [*] Blank line contains whitespace
.github/workflows/release.yml:64:1: W293 [*] Blank line contains whitespace
.github/workflows/release.yml:69:1: W293 [*] Blank line contains whitespace
.github/workflows/release.yml:73:1: W293 [*] Blank line contains whitespace
.github/workflows/release.yml:89:1: W293 [*] Blank line contains whitespace
.github/workflows/release.yml:97:23: W292 [*] No newline at end of file
.mailmap:1:38: E999 SyntaxError: Expected an expression
tardis/opacities/macro_atom/base.py:120:5: D411 [*] Missing blank line before section ("Parameters")
tardis/opacities/macro_atom/base.py:226:5: E722 Do not use bare `except`
tardis/opacities/macro_atom/base.py:245:14: UP008 Use `super()` instead of `super(__class__, self)`
tardis/opacities/macro_atom/base.py:347:9: E722 Do not use bare `except`
tardis/opacities/opacity_state.py:210:9: ANN204 Missing return type annotation for special method `__getitem__`
tardis/opacities/opacity_state.py:216:9: D407 [*] Missing dashed underline after section ("Returns")
tardis/opacities/opacity_state.py:216:9: D406 [*] Section name should end with a newline ("Returns")
tardis/opacities/opacity_state.py:251:5: D202 [*] No blank lines allowed after function docstring (found 1)
tardis/opacities/tests/test_opacity_solver.py:1:1: INP001 File `tardis/opacities/tests/test_opacity_solver.py` is part of an implicit namespace package. Add an `__init__.py`.
tardis/opacities/tests/test_opacity_solver.py:1:1: I001 [*] Import block is un-sorted or un-formatted
tardis/opacities/tests/test_opacity_solver.py:2:17: F401 [*] `numpy` imported but unused
tardis/opacities/tests/test_opacity_solver.py:7:44: F401 [*] `tardis.opacities.opacity_state.OpacityState` imported but unused
tardis/opacities/tests/test_opacity_solver.py:8:42: F401 [*] `tardis.opacities.tau_sobolev.calculate_sobolev_line_opacity` imported but unused
tardis/opacities/tests/test_opacity_state_numba.py:1:1: INP001 File `tardis/opacities/tests/test_opacity_state_numba.py` is part of an implicit namespace package. Add an `__init__.py`.
tardis/opacities/tests/test_opacity_state_numba.py:1:1: I001 [*] Import block is un-sorted or un-formatted
tardis/opacities/tests/test_tau_sobolev.py:1:1: INP001 File `tardis/opacities/tests/test_tau_sobolev.py` is part of an implicit namespace package. Add an `__init__.py`.
tardis/plasma/assembly/__init__.py:1:41: F401 `tardis.plasma.assembly.base.PlasmaSolverFactory` imported but unused; consider removing, adding to `__all__`, or using a redundant alias
tardis/plasma/properties/legacy_property_collections.py:10:1: F403 `from tardis.plasma.properties import *` used; unable to detect undefined names
tardis/plasma/properties/legacy_property_collections.py:19:9: F405 `DilutePlanckianRadField` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:20:9: F405 `NumberDensity` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:21:9: F405 `TimeExplosion` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:22:9: F405 `AtomicData` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:23:9: F405 `JBlues` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:24:9: F405 `LinkTRadTElectron` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:25:9: F405 `HeliumTreatment` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:26:9: F405 `ContinuumInteractionSpecies` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:27:9: F405 `NLTEIonizationSpecies` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:28:9: F405 `NLTEExcitationSpecies` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:33:9: F405 `TRadiative` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:34:9: F405 `DilutionFactor` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:35:9: F405 `BetaRadiation` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:36:9: F405 `Levels` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:37:9: F405 `Lines` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:38:9: F405 `PartitionFunction` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:39:9: F405 `GElectron` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:40:9: F405 `IonizationData` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:41:9: F405 `LinesLowerLevelIndex` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:42:9: F405 `LinesUpperLevelIndex` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:44:9: F405 `StimulatedEmissionFactor` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:45:9: F405 `SelectedAtoms` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:46:9: F405 `ElectronTemperature` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:49:55: F405 `PhiSahaLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:50:55: F405 `LevelBoltzmannFactorLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:52:44: F405 `MacroAtomData` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:55:6: F405 `PhiSahaNebular` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:55:22: F405 `ZetaData` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:55:32: F405 `BetaElectron` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:55:46: F405 `RadiationFieldCorrection` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:58:6: F405 `LevelBoltzmannFactorDiluteLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:60:49: F405 `LevelBoltzmannFactorNoNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:63:9: F405 `LevelBoltzmannFactorNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:64:9: F405 `NLTEData` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:65:9: F405 `PreviousElectronDensities` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:66:9: F405 `PreviousBetaSobolev` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:71:6: F405 `NLTEIndexHelper` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:71:23: F405 `NLTEPopulationSolverRoot` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:74:6: F405 `NLTEIndexHelper` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:74:23: F405 `NLTEPopulationSolverLU` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:78:9: F405 `HeliumNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:79:9: F405 `RadiationFieldCorrection` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:80:9: F405 `ZetaData` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:81:9: F405 `BetaElectron` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:82:9: F405 `LevelNumberDensityHeNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:83:9: F405 `IonNumberDensityHeNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:87:6: F405 `LevelNumberDensity` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:87:26: F405 `IonNumberDensity` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:90:6: F405 `HeliumNumericalNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:94:9: F405 `PhotoIonRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:95:9: F405 `StimRecombRateFactor` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:96:9: F405 `BfHeatingRateCoeffEstimator` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:97:9: F405 `StimRecombCoolingRateCoeffEstimator` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:98:9: F405 `YgData` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:103:9: F405 `StimRecombRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:104:9: F405 `PhotoIonizationData` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:105:9: F405 `SpontRecombRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:106:9: F405 `ThermalLevelBoltzmannFactorLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:107:9: F405 `ThermalLTEPartitionFunction` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:108:9: F405 `BetaElectron` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:109:9: F405 `ThermalGElectron` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:110:9: F405 `ThermalPhiSahaLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:111:9: F405 `SahaFactor` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:112:9: F405 `CorrPhotoIonRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:113:9: F405 `SpontRecombCoolingRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:114:9: F405 `RawRecombTransProbs` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:115:9: F405 `RawPhotoIonTransProbs` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:116:9: F405 `RawRadBoundBoundTransProbs` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:117:9: F405 `MarkovChainTransProbs` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:118:9: F405 `NonContinuumTransProbsMask` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:119:9: F405 `YgInterpolator` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:120:9: F405 `CollExcRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:121:9: F405 `CollDeexcRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:122:9: F405 `RawCollisionTransProbs` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:123:9: F405 `MarkovChainIndex` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:124:9: F405 `MarkovChainTransProbsCollector` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:126:9: F405 `MonteCarloTransProbs` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:127:9: F405 `FreeFreeCoolingRate` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:128:9: F405 `FreeBoundCoolingRate` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:130:9: F405 `LevelNumberDensityLTE` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:131:9: F405 `PhotoIonBoltzmannFactor` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:132:9: F405 `FreeBoundEmissionCDF` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:133:9: F405 `LevelIdxs2LineIdx` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:134:9: F405 `LevelIdxs2TransitionIdx` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:135:9: F405 `CollIonRateCoeffSeaton` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:136:9: F405 `CollRecombRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:138:9: F405 `ContinuumInteractionHandler` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:142:58: F405 `AdiabaticCoolingRate` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:145:9: F405 `RawTwoPhotonTransProbs` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:146:9: F405 `TwoPhotonData` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:147:9: F405 `TwoPhotonEmissionCDF` may be undefined, or defined from star imports
tardis/plasma/properties/legacy_property_collections.py:148:9: F405 `TwoPhotonFrequencySampler` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:1:1: F403 `from tardis.plasma.properties import *` used; unable to detect undefined names
tardis/plasma/properties/property_collections.py:10:9: F405 `DilutePlanckianRadField` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:11:9: F405 `NumberDensity` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:12:9: F405 `TimeExplosion` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:13:9: F405 `AtomicData` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:14:9: F405 `JBlues` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:15:9: F405 `LinkTRadTElectron` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:16:9: F405 `HeliumTreatment` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:17:9: F405 `ContinuumInteractionSpecies` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:18:9: F405 `NLTEIonizationSpecies` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:19:9: F405 `NLTEExcitationSpecies` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:24:9: F405 `TRadiative` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:25:9: F405 `DilutionFactor` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:26:9: F405 `BetaRadiation` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:27:9: F405 `Levels` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:28:9: F405 `Lines` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:29:9: F405 `PartitionFunction` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:30:9: F405 `GElectron` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:31:9: F405 `IonizationData` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:32:9: F405 `LinesLowerLevelIndex` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:33:9: F405 `LinesUpperLevelIndex` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:34:9: F405 `StimulatedEmissionFactor` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:35:9: F405 `SelectedAtoms` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:36:9: F405 `ElectronTemperature` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:39:55: F405 `PhiSahaLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:40:55: F405 `LevelBoltzmannFactorLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:43:6: F405 `PhiSahaNebular` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:43:22: F405 `ZetaData` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:43:32: F405 `BetaElectron` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:43:46: F405 `RadiationFieldCorrection` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:46:6: F405 `LevelBoltzmannFactorDiluteLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:48:49: F405 `LevelBoltzmannFactorNoNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:51:9: F405 `LevelBoltzmannFactorNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:52:9: F405 `NLTEData` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:53:9: F405 `PreviousElectronDensities` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:57:6: F405 `NLTEIndexHelper` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:57:23: F405 `NLTEPopulationSolverRoot` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:60:6: F405 `NLTEIndexHelper` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:60:23: F405 `NLTEPopulationSolverLU` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:64:9: F405 `HeliumNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:65:9: F405 `RadiationFieldCorrection` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:66:9: F405 `ZetaData` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:67:9: F405 `BetaElectron` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:68:9: F405 `LevelNumberDensityHeNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:69:9: F405 `IonNumberDensityHeNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:73:6: F405 `LevelNumberDensity` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:73:26: F405 `IonNumberDensity` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:76:6: F405 `HeliumNumericalNLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:80:9: F405 `PhotoIonRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:81:9: F405 `StimRecombRateFactor` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:82:9: F405 `BfHeatingRateCoeffEstimator` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:83:9: F405 `StimRecombCoolingRateCoeffEstimator` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:84:9: F405 `YgData` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:89:9: F405 `StimRecombRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:90:9: F405 `PhotoIonizationData` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:91:9: F405 `SpontRecombRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:92:9: F405 `ThermalLevelBoltzmannFactorLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:93:9: F405 `ThermalLTEPartitionFunction` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:94:9: F405 `BetaElectron` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:95:9: F405 `ThermalGElectron` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:96:9: F405 `ThermalPhiSahaLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:97:9: F405 `SahaFactor` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:98:9: F405 `CorrPhotoIonRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:99:9: F405 `SpontRecombCoolingRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:100:9: F405 `YgInterpolator` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:101:9: F405 `CollExcRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:102:9: F405 `CollDeexcRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:103:9: F405 `RawCollisionTransProbs` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:104:9: F405 `MarkovChainIndex` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:105:9: F405 `FreeFreeCoolingRate` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:106:9: F405 `FreeBoundCoolingRate` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:107:9: F405 `LevelNumberDensityLTE` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:108:9: F405 `PhotoIonBoltzmannFactor` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:109:9: F405 `FreeBoundEmissionCDF` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:110:9: F405 `LevelIdxs2LineIdx` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:111:9: F405 `LevelIdxs2TransitionIdx` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:112:9: F405 `CollIonRateCoeffSeaton` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:113:9: F405 `CollRecombRateCoeff` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:114:9: F405 `ContinuumInteractionHandler` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:117:58: F405 `AdiabaticCoolingRate` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:120:9: F405 `RawTwoPhotonTransProbs` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:121:9: F405 `TwoPhotonData` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:122:9: F405 `TwoPhotonEmissionCDF` may be undefined, or defined from star imports
tardis/plasma/properties/property_collections.py:123:9: F405 `TwoPhotonFrequencySampler` may be undefined, or defined from star imports
tardis/plasma/standard_plasmas.py:316:9: RET506 Unnecessary `else` after `raise` statement
tardis/simulation/base.py:197:13: RET506 Unnecessary `else` after `raise` statement
tardis/simulation/base.py:261:17: G004 Logging statement uses f-string
tardis/simulation/base.py:268:9: RET505 Unnecessary `else` after `return` statement
tardis/simulation/base.py:445:13: G004 Logging statement uses f-string
tardis/simulation/base.py:543:13: G004 Logging statement uses f-string
tardis/simulation/base.py:650:25: G004 Logging statement uses f-string
tardis/simulation/base.py:653:13: G004 Logging statement uses f-string
tardis/simulation/base.py:658:13: G004 Logging statement uses f-string
tardis/simulation/base.py:709:13: TRY300 Consider moving this statement to an `else` block
tardis/simulation/base.py:711:26: G004 Logging statement uses f-string
tardis/spectrum/formal_integral.py:1:1: I001 [*] Import block is un-sorted or un-formatted
tardis/spectrum/formal_integral.py:358:13: RET506 Unnecessary `else` after `raise` statement
tardis/spectrum/formal_integral.py:698:5: RET505 Unnecessary `else` after `return` statement
tardis/spectrum/formal_integral.py:734:5: RET505 Unnecessary `else` after `return` statement
tardis/spectrum/formal_integral_cuda.py:375:5: RET505 Unnecessary `else` after `return` statement
tardis/spectrum/formal_integral_cuda.py:420:5: RET505 Unnecessary `else` after `return` statement
tardis/workflows/simple_tardis_workflow.py:230:17: G004 Logging statement uses f-string
tardis/workflows/simple_tardis_workflow.py:449:17: G004 Logging statement uses f-string
tardis/workflows/standard_tardis_workflow.py:172:13: G004 Logging statement uses f-string
tardis/workflows/standard_tardis_workflow.py:212:17: G004 Logging statement uses f-string
Found 230 errors.
[*] 20 fixable with the `--fix` option (1 hidden fix can be enabled with the `--unsafe-fixes` option).

@andrewfullard
Copy link
Contributor Author

@jvshields the stardis failure is related to removing TauSobolev from the plasma which is of course no longer required.

@tardis-bot
Copy link
Contributor

tardis-bot commented Nov 11, 2024

*beep* *bop*

Hi, human.

The docs workflow has succeeded ✔️

Click here to see your results.

Copy link

codecov bot commented Nov 12, 2024

Codecov Report

Attention: Patch coverage is 79.08497% with 32 lines in your changes missing coverage. Please review.

Project coverage is 69.71%. Comparing base (763c11d) to head (43cc7b9).
Report is 2 commits behind head on master.

Files with missing lines Patch % Lines
tardis/opacities/tau_sobolev.py 65.00% 7 Missing ⚠️
tardis/opacities/macro_atom/macroatom_solver.py 50.00% 5 Missing ⚠️
tardis/spectrum/formal_integral.py 78.26% 5 Missing ⚠️
tardis/workflows/simple_tardis_workflow.py 0.00% 4 Missing ⚠️
tardis/plasma/standard_plasmas.py 0.00% 3 Missing ⚠️
tardis/opacities/opacity_solver.py 83.33% 2 Missing ⚠️
tardis/plasma/assembly/base.py 90.47% 2 Missing ⚠️
tardis/spectrum/tests/test_cuda_formal_integral.py 0.00% 2 Missing ⚠️
tardis/plasma/properties/property_collections.py 0.00% 1 Missing ⚠️
tardis/workflows/standard_tardis_workflow.py 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2874      +/-   ##
==========================================
- Coverage   70.22%   69.71%   -0.51%     
==========================================
  Files         214      216       +2     
  Lines       15981    16030      +49     
==========================================
- Hits        11223    11176      -47     
- Misses       4758     4854      +96     

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


🚨 Try these New Features:

@tardis-bot
Copy link
Contributor

tardis-bot commented Nov 12, 2024

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

Significantly changed benchmarks:

| Change   | Before [6ee870e0] <master>   | After [43cc7b9e]    |   Ratio | Benchmark (Parameter)                                                                                              |
|----------|------------------------------|---------------------|---------|--------------------------------------------------------------------------------------------------------------------|
| +        | 30.8±0.06μs                  | 43.0±0.02μs         |    1.39 | transport_montecarlo_packet_trackers.BenchmarkTransportMontecarloPacketTrackers.time_generate_rpacket_tracker_list |

All benchmarks:

Benchmarks that have stayed the same:

| Change   | Before [6ee870e0] <master>   | After [43cc7b9e]    | Ratio   | Benchmark (Parameter)                                                                                                               |
|----------|------------------------------|---------------------|---------|-------------------------------------------------------------------------------------------------------------------------------------|
|          | 2.64±0.01ms                  | 3.43±0ms            | ~1.30   | opacities_opacity_state.BenchmarkOpacitiesOpacityState.time_opacity_state_initialize('scatter')                                     |
|          | 7.47±2μs                     | 9.62±2μs            | ~1.29   | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_vpacket_volley                                    |
|          | 42.1±20μs                    | 52.7±40μs           | ~1.25   | transport_montecarlo_interaction.BenchmarkTransportMontecarloInteraction.time_line_emission                                         |
|          | 1.60±0.4μs                   | 1.79±0.2μs          | ~1.12   | transport_geometry_calculate_distances.BenchmarkTransportGeometryCalculateDistances.time_calculate_distance_line                    |
|          | 3.82±0.3μs                   | 3.18±0.5μs          | ~0.83   | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_vpacket_within_shell                              |
|          | 841±100ns                    | 631±100ns           | ~0.75   | opacities_opacity.BenchmarkMontecarloMontecarloNumbaOpacities.time_photoabsorption_opacity_calculation                              |
|          | 35.6±10μs                    | 20.9±5μs            | ~0.59   | transport_montecarlo_packet_trackers.BenchmarkTransportMontecarloPacketTrackers.time_generate_rpacket_last_interaction_tracker_list |
|          | 3.94±0.03ms                  | 4.26±0.02ms         | 1.08    | opacities_opacity_state.BenchmarkOpacitiesOpacityState.time_opacity_state_initialize('macroatom')                                   |
|          | 2.98±0.3μs                   | 3.21±0.5μs          | 1.07    | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_bad_vpacket                                       |
|          | 2.21±2μs                     | 2.32±2μs            | 1.05    | transport_montecarlo_estimators_radfield_estimator_calcs.BenchmarkMontecarloMontecarloNumbaPacket.time_update_line_estimators       |
|          | 1.74±0.02ms                  | 1.79±0.03ms         | 1.03    | transport_montecarlo_main_loop.BenchmarkTransportMontecarloMontecarloMainLoop.time_montecarlo_main_loop                             |
|          | 2.61±0.5ms                   | 2.70±0.4ms          | 1.03    | transport_montecarlo_single_packet_loop.BenchmarkTransportMontecarloSinglePacketLoop.time_single_packet_loop                        |
|          | 207±0.2ns                    | 209±0.3ns           | 1.01    | spectrum_formal_integral.BenchmarkTransportMontecarloFormalIntegral.time_intensity_black_body                                       |
|          | 1.20±0μs                     | 1.22±0μs            | 1.01    | transport_geometry_calculate_distances.BenchmarkTransportGeometryCalculateDistances.time_calculate_distance_boundary                |
|          | 2.08±0m                      | 2.07±0m             | 1.00    | spectrum_formal_integral.BenchmarkTransportMontecarloFormalIntegral.time_FormalIntegrator_functions                                 |
|          | 744±0.06ns                   | 745±0.7ns           | 1.00    | transport_montecarlo_interaction.BenchmarkTransportMontecarloInteraction.time_thomson_scatter                                       |
|          | 66.0±0.1ms                   | 66.1±0.2ms          | 1.00    | transport_montecarlo_packet_trackers.BenchmarkTransportMontecarloPacketTrackers.time_rpacket_trackers_to_dataframe                  |
|          | 6.74±0.9μs                   | 6.71±1μs            | 1.00    | transport_montecarlo_vpacket.BenchmarkMontecarloMontecarloNumbaVpacket.time_trace_vpacket                                           |
|          | 1.09±0m                      | 1.07±0m             | 0.98    | run_tardis.BenchmarkRunTardis.time_run_tardis_rpacket_tracking                                                                      |
|          | 571±100ns                    | 551±200ns           | 0.96    | opacities_opacity.BenchmarkMontecarloMontecarloNumbaOpacities.time_pair_creation_opacity_calculation                                |
|          | 41.5±0.06s                   | 39.6±0.02s          | 0.95    | run_tardis.BenchmarkRunTardis.time_run_tardis                                                                                       |
|          | 561±100ns                    | 521±200ns           | 0.93    | opacities_opacity.BenchmarkMontecarloMontecarloNumbaOpacities.time_compton_opacity_calculation                                      |
|          | 56.2±30μs                    | 52.4±50μs           | 0.93    | transport_montecarlo_interaction.BenchmarkTransportMontecarloInteraction.time_line_scatter                                          |

Benchmarks that have got worse:

| Change   | Before [6ee870e0] <master>   | After [43cc7b9e]    |   Ratio | Benchmark (Parameter)                                                                                              |
|----------|------------------------------|---------------------|---------|--------------------------------------------------------------------------------------------------------------------|
| +        | 30.8±0.06μs                  | 43.0±0.02μs         |    1.39 | transport_montecarlo_packet_trackers.BenchmarkTransportMontecarloPacketTrackers.time_generate_rpacket_tracker_list |

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

@andrewfullard
Copy link
Contributor Author

Requires regression data tardis-sn/tardis-regression-data#25

jvshields
jvshields previously approved these changes Nov 12, 2024
"""

@jit(nopython=True, parallel=True)
def numba_calculate_beta_sobolev(tau_sobolevs, beta_sobolevs):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

any reason why this is not a "global" function?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because it doesn't seem useful for any other case, it's basically just a small wrapper around the numba so that the DataFrame can be used for initializing the array.

Copy link
Member

@wkerzendorf wkerzendorf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

one question as shown.

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

Successfully merging this pull request may close these issues.

4 participants