@@ -209,16 +209,17 @@ def read_qub_levels_and_transitions(atomic_number, ion_stage, flog):
209209 id_lower = int (row [1 ])
210210 A = float (row [2 ])
211211 if A > 2e-30 :
212- namefrom = qub_energylevels [id_upper ].levelname
213- nameto = qub_energylevels [id_lower ].levelname
212+ level_upper = qub_energylevels [id_upper ]
213+ level_lower = qub_energylevels [id_lower ]
214+ assert level_upper is not None
215+ assert level_lower is not None
216+ namefrom = level_upper .levelname
217+ nameto = level_lower .levelname
214218 # WARNING replace with correct selection rules!
215- forbidden = qub_energylevels [ id_upper ] .parity == qub_energylevels [ id_lower ] .parity
219+ forbidden = level_upper .parity == level_lower .parity
216220 transition_count_of_level_name [namefrom ] += 1
217221 transition_count_of_level_name [nameto ] += 1
218- lamdaangstrom = 1.0e8 / (
219- qub_energylevels [id_upper ].energyabovegsinpercm
220- - qub_energylevels [id_lower ].energyabovegsinpercm
221- )
222+ lamdaangstrom = 1.0e8 / (level_upper .energyabovegsinpercm - level_lower .energyabovegsinpercm )
222223 if (id_lower , id_upper ) in upsilondict :
223224 coll_str = upsilondict [(id_lower , id_upper )]
224225 elif forbidden :
@@ -278,15 +279,16 @@ def read_qub_levels_and_transitions(atomic_number, ion_stage, flog):
278279 id_lower = int (row [1 ])
279280 A = float (row [2 ].replace ("-" , "E-" ).replace ("+" , "E+" ))
280281 if A > 2e-30 :
281- namefrom = qub_energylevels [id_upper ].levelname
282- nameto = qub_energylevels [id_lower ].levelname
283- forbidden = artisatomic .check_forbidden (qub_energylevels [id_upper ], qub_energylevels [id_lower ])
282+ level_upper = qub_energylevels [id_upper ]
283+ level_lower = qub_energylevels [id_lower ]
284+ assert level_upper is not None
285+ assert level_lower is not None
286+ namefrom = level_upper .levelname
287+ nameto = level_lower .levelname
288+ forbidden = artisatomic .check_forbidden (level_upper , level_lower )
284289 transition_count_of_level_name [namefrom ] += 1
285290 transition_count_of_level_name [nameto ] += 1
286- lamdaangstrom = 1.0e8 / (
287- qub_energylevels [id_upper ].energyabovegsinpercm
288- - qub_energylevels [id_lower ].energyabovegsinpercm
289- )
291+ lamdaangstrom = 1.0e8 / (level_upper .energyabovegsinpercm - level_lower .energyabovegsinpercm )
290292 if (id_lower , id_upper ) in upsilondict :
291293 coll_str = upsilondict [(id_lower , id_upper )]
292294 elif forbidden :
0 commit comments