AttributeError: 'GaussianDC' object has no attribute '_radius'
Exception in thread Thread-2:
Traceback (most recent call last):
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/threading.py", line 1041, in _bootstrap_inner
self.run()
~~~~~~~~^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/control/threading.py", line 176, in run
self._simulation.run()
~~~~~~~~~~~~~~~~~~~~^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/timings.py", line 32, in wrapper
result = method(self, *args, **kwargs)
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/simulation.py", line 109, in run
self._execute(iteration)
~~~~~~~~~~~~~^^^^^^^^^^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/simulation.py", line 248, in execute
self._particle_tracking.propagate_particles(self._progress)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/timings.py", line 32, in wrapper
result = method(self, *args, **kwargs)
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/particle_tracking/manager.py", line 90, in propagate_particles
self.initialize(queued_particles, progress)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/timings.py", line 32, in wrapper
result = method(self, *args, **kwargs)
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/particle_tracking/manager.py", line 70, in initialize
self._model.initialize(particles, progress)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/particle_tracking/models.py", line 273, in initialize
self.runge_kutta.propagate(particles, progress)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/particle_tracking/models.py", line 179, in propagate
E = self.electric_field_for(particles, progress)
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/particle_tracking/models.py", line 83, in electric_field_for
return self._em_fields.electric_field_at(particles.position_four_vector, progress)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/timings.py", line 32, in wrapper
result = method(self, *args, **kwargs)
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/particle_tracking/em_fields/__init__.py", line 78, in electric_field_at
return sum(map(
lambda manager: manager.electric_field_at(position_four_vectors, progress),
self._field_managers
))
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/particle_tracking/em_fields/__init__.py", line 79, in <lambda>
lambda manager: manager.electric_field_at(position_four_vectors, progress),
~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/timings.py", line 32, in wrapper
result = method(self, *args, **kwargs)
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/beams/beams.py", line 95, in electric_field_at
return sum(map(
lambda beam: beam.electric_field_at(position_four_vectors, progress),
self._beams
))
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/beams/beams.py", line 96, in <lambda>
lambda beam: beam.electric_field_at(position_four_vectors, progress),
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/beams/factory.py", line 173, in electric_field_at
return sum(map(
lambda bunch: bunch.electric_field_at(position_four_vectors, progress),
self._bunch_train.relevant_bunches(progress)
))
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/beams/factory.py", line 174, in <lambda>
lambda bunch: bunch.electric_field_at(position_four_vectors, progress),
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/beams/bunches/bunch.py", line 226, in electric_field_at
return self.electric_and_magnetic_field_at(position_four_vectors, progress)[0]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/beams/bunches/bunch.py", line 271, in electric_and_magnetic_field_at
* self._bunch_electric_field_model.eval(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self.compute_positions_in_bunch_frame(position_four_vectors)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/home/username/miniconda3/envs/vipm-sim/lib/python3.13/site-packages/virtual_ipm/simulation/beams/bunches/electric_field_models.py", line 120, in eval
/ (2 * constants.pi * constants.epsilon_0 * self._shape._radius**2)
^^^^^^^^^^^^^^^^^^^
AttributeError: 'GaussianDC' object has no attribute '_radius'
Edited by Lukas Golino