Example #1
0
 def __init__(self,
              wavelength,
              focus_diameter,
              pulse_energy,
              profile_model=None,
              pulse_energy_variation=None,
              pulse_energy_spread=None,
              pulse_energy_variation_n=None,
              polarization="ignore"):
     self.photon = Photon(wavelength=wavelength)
     self.pulse_energy_mean = pulse_energy
     self.set_pulse_energy_variation(pulse_energy_variation,
                                     pulse_energy_spread,
                                     pulse_energy_variation_n)
     self.profile = Profile(model=profile_model,
                            focus_diameter=focus_diameter)
     if polarization not in [
             "vertical", "horizontal", "unpolarized", "ignore"
     ]:
         log_and_raise_error(
             logger,
             "polarization = \"%s\" is an invalid input for initialization of Source instance."
         )
         return
     self.polarization = polarization
     log_debug(logger, "Source configured")