Open lars-mejnertsen-seetreat opened 1 month ago
Trying to load Varian_TrueBeam6MV_02 (and header file) produces TypeError: unknown particle code -3 error. I was able to load Varian_TrueBeam6MV_01 with no issues.
TypeError: unknown particle code -3
I did change the file extensions to overcome #181.
Run the example from Reading IAEA phase space:
from ParticlePhaseSpace import PhaseSpace, DataLoaders from pathlib import Path import numpy as np # get data file: file_name = Path("Varian_TrueBeam6MV_02.phsp") # read in data_schema = np.dtype( [ ("particle type", "i1"), ("Ek", "f4"), ("x", "f4"), ("y", "f4"), ("z", "f4"), ("Cosine X", "f4"), ("Cosine Y", "f4"), ] ) constants = {"weight": np.float32(1.)} ps_data = DataLoaders.Load_IAEA( data_schema=data_schema, constants=constants, input_data=file_name, n_records=int(1e5), )
--------------------------------------------------------------------------- TypeError Traceback (most recent call last) Cell In[2], line 19 4 data_schema = np.dtype( 5 [ 6 (\"particle type\", \"i1\"), (...) 13 ] 14 ) 17 constants = {\"weight\": np.float32(1.)} ---> 19 ps_data = DataLoaders.Load_IAEA( 20 data_schema=data_schema, 21 constants=constants, 22 input_data=file_name, 23 n_records=int(1e5), 24 ) File ~/phase-spaces/.venv/lib/python3.11/site-packages/ParticlePhaseSpace/DataLoaders.py:403, in Load_IAEA.__init__(self, data_schema, constants, input_data, n_records, offset, **kwargs) 401 self._n_records = n_records 402 self._offset = offset --> 403 super().__init__(input_data, **kwargs) File ~/phase-spaces/.venv/lib/python3.11/site-packages/ParticlePhaseSpace/DataLoaders.py:53, in _DataLoadersBase.__init__(self, input_data, particle_type, units) 51 self._input_data = input_data 52 self._check_input_data() ---> 53 self._import_data() 54 self._check_loaded_data() File ~/phase-spaces/.venv/lib/python3.11/site-packages/ParticlePhaseSpace/DataLoaders.py:435, in Load_IAEA._import_data(self) 431 self.data[self._columns[constant]] = pd.Series(self._constants[constant] * 432 np.ones(self.data.shape[0]), dtype=\"category\") 434 # OK; add the fields I assume is not in the data --> 435 particle_types_pdg = self._iaea_types_to_pdg(data['particle type']) 436 self._check_n_particles_in_header(particle_types_pdg) 437 self.data[self._columns['particle type']] = particle_types_pdg File ~/phase-spaces/.venv/lib/python3.11/site-packages/ParticlePhaseSpace/DataLoaders.py:483, in Load_IAEA._iaea_types_to_pdg(self, varian_types) 481 for type in np.unique(varian_types): 482 if not type in [1, 2, 3, 4, 5]: --> 483 raise TypeError(f'unknown particle code {type}') 484 pdg_types[varian_types==1] = 22 # gammas 485 pdg_types[varian_types == 2] = 11 # electrons TypeError: unknown particle code -3
Trying to load Varian_TrueBeam6MV_02 (and header file) produces
TypeError: unknown particle code -3
error. I was able to load Varian_TrueBeam6MV_01 with no issues.I did change the file extensions to overcome #181.
Steps to Reproduce
Run the example from Reading IAEA phase space:
Error