CDTK.Tools.EField module
- class CDTK.Tools.EField.EField(**opts)[source]
Bases:
object
Represents an oscillating field characterized by
E(t) = P A(t)
P: unit 3-vector, polarizarion axis of the field A(t): function, field amplitude as a function of time
P and A must have been defined at execution time.
Units for A(t) must be au both for time and E-field.
- plot(ti=0.0, tf=10.0, **opts)[source]
Use matplotlib to plot the time-profile of the pulse
ti – float, intial time tf – float, final time
- set_double_gaussian_pulse(omega, fwhm, fwhm2, ratio2, amp, t1=0.0, t2=0.0, phase=0, fluence=False)[source]
Gaussian shaped pulse with single photon energy
A(t) = amp * ((1-ratio2) * G(fwhm1,t0) + ratio2 * F(fwhm2,t0)) * cos( omega t + phase)
All input in au
omega – photon energy fwhm – full width at half maximum fwhm2 – full width at half maximum ratio2 – fluence ratio of second pulse part amp – maximum field amplitude t1 – center of pulse1 t2 – center of pulse2 phase – phase of the cosine carrier, units of Pi fluence – if amp is given as fluence, then normalized gaussians have to be used
No output, modifies self.A and self.Envelope
- set_gaussian_pulse(omega, fwhm, amp, t0=0, phase=0, fluence=False)[source]
Gaussian shaped pulse with single photon energy
A(t) = amp * G(fwhm,t0) * cos( omega t + phase)
All input in au
omega – photon energy fwhm – full width at half maximum amp – maximum field amplitude t0 – center of the pulse phase – phase of the cosine carrier, units of Pi fluence – if amp is given as fluence, then normalized gaussians have to be used
No output, modifies self.A and self.Envelope