In the PICMI_GaussianLaser, both $a_0$ and $E_0$ can be set. If both are not set, an error is thrown. If only one is given, the other is computed. But if both are set, there is no consistency check and both values are just taken as object attributes.
|
self.a0 = a0 |
|
self.E0 = E0 |
This hides any misconfigurations and makes the result then backend dependent (which value is used by the PIC code downstream).
(This was first discovered during fixes for tests in ComputationalRadiationPhysics/picongpu#5466.)
In the$a_0$ and $E_0$ can be set. If both are not set, an error is thrown. If only one is given, the other is computed. But if both are set, there is no consistency check and both values are just taken as object attributes.
PICMI_GaussianLaser, bothpicmi/PICMI_Python/lasers.py
Lines 116 to 117 in 37bb651
This hides any misconfigurations and makes the result then backend dependent (which value is used by the PIC code downstream).
(This was first discovered during fixes for tests in ComputationalRadiationPhysics/picongpu#5466.)