pyLaserPulse.catalogue_components.bulk_components¶
Created on Tue Jun 20 09:22:08 2023
@author: james feehan
Module of classes for branded bulk components.
Classes
AA Optoelectronic AOM MT200-A02-xx, 200 MHz. |
|
|
Bandpass filter with parameters based on the Andover 155FS10-25 filer. |
|
Bandpass filter with parameters roughly based on the Thorlabs NIR/Laserline bandpass range. |
|
PBS with parameters roughly based on the Thorlabs broadband PBS range. |
|
Zero-order half wave plate. |
|
Zero-order quarter wave plate. |
- class pyLaserPulse.catalogue_components.bulk_components.half_wave_plate(grid, lambda_c, angle)¶
Zero-order half wave plate. Assumes perfect half-wave retardation for all wavelengths.
- Parameters:
grid (pyLaserPulse.grid.grid object)
lambda_c (float) – Central wavelength of the transmission window in m
angle (float) – Angle with respect to the x-axis.
- __init__(grid, lambda_c, angle)¶
- Parameters:
loss (float) – Insertion loss at the signal wavelength.
transmission_bandwidth (float) – Transmission bandwidth. Can also be interpreted as reflection bandwidth for reflective optics.
lambda_c (float) – Central wavelength of transmission window.
epsilon (complex) –
Defines type of component (polarizer or retarder). Defined for field. For example:
epsilon = 0 + 1j for a quarter wave plate, epsilon = -1 for a half wave plate, epsilon = 0.1 for 20 dB polarization extinction.
theta (float) – Angle subtended by component optical axis and x-axis.
beamsplitting (float) – Intensity fraction remaining in pulse.field if output coupler and coupler_type=”beamsplitter”
g (pyLaserPulse.grid.grid object)
crosstalk (float) – Polarization degradation caused by the component.
order (int) – Steepness of the super-Gaussian transmission window edges.
output_coupler (boolean) – If True, the component is an output coupler and some of the main beam (pulse.field) is tapped off.
coupler_type (string) – “polarization” or “beamsplitter”. If the former, Jones matrix for polarization-based output coupler is used. If the latter, Jones matrix for polarization-independent beam splitting is used for the output coupler.
beta_list (list) – None by default. Contains Taylor coefficients [beta_2, beta_3, …, beta_n] which define the dispersion profile of the component.
gdm (float) – Polarization group delay mismatch. Units: s. Delay accumulated between polarization components after propagating through the component. If gdm > 0, x is the slow axis.
- class pyLaserPulse.catalogue_components.bulk_components.quarter_wave_plate(grid, lambda_c, angle)¶
Zero-order quarter wave plate. Assumes perfect quarter-wave retardation for all wavelengths.
- Parameters:
grid (pyLaserPulse.grid.grid object)
lambda_c (float) – Central wavelength of the transmission window in m
angle (float) – Angle with respect to the x-axis.
- __init__(grid, lambda_c, angle)¶
- Parameters:
loss (float) – Insertion loss at the signal wavelength.
transmission_bandwidth (float) – Transmission bandwidth. Can also be interpreted as reflection bandwidth for reflective optics.
lambda_c (float) – Central wavelength of transmission window.
epsilon (complex) –
Defines type of component (polarizer or retarder). Defined for field. For example:
epsilon = 0 + 1j for a quarter wave plate, epsilon = -1 for a half wave plate, epsilon = 0.1 for 20 dB polarization extinction.
theta (float) – Angle subtended by component optical axis and x-axis.
beamsplitting (float) – Intensity fraction remaining in pulse.field if output coupler and coupler_type=”beamsplitter”
g (pyLaserPulse.grid.grid object)
crosstalk (float) – Polarization degradation caused by the component.
order (int) – Steepness of the super-Gaussian transmission window edges.
output_coupler (boolean) – If True, the component is an output coupler and some of the main beam (pulse.field) is tapped off.
coupler_type (string) – “polarization” or “beamsplitter”. If the former, Jones matrix for polarization-based output coupler is used. If the latter, Jones matrix for polarization-independent beam splitting is used for the output coupler.
beta_list (list) – None by default. Contains Taylor coefficients [beta_2, beta_3, …, beta_n] which define the dispersion profile of the component.
gdm (float) – Polarization group delay mismatch. Units: s. Delay accumulated between polarization components after propagating through the component. If gdm > 0, x is the slow axis.
- class pyLaserPulse.catalogue_components.bulk_components.Thorlabs_broadband_PBS(grid, lambda_c, output_coupler)¶
PBS with parameters roughly based on the Thorlabs broadband PBS range.
- Parameters:
grid (pyLaserPulse.grid.grid object)
lambda_c (float) – Central wavelength of the transmission window in m
output_coupler (bool) – If True, this component behaves like an output coupler or tap.
- __init__(grid, lambda_c, output_coupler)¶
- Parameters:
loss (float) – Insertion loss at the signal wavelength.
transmission_bandwidth (float) – Transmission bandwidth. Can also be interpreted as reflection bandwidth for reflective optics.
lambda_c (float) – Central wavelength of transmission window.
epsilon (complex) –
Defines type of component (polarizer or retarder). Defined for field. For example:
epsilon = 0 + 1j for a quarter wave plate, epsilon = -1 for a half wave plate, epsilon = 0.1 for 20 dB polarization extinction.
theta (float) – Angle subtended by component optical axis and x-axis.
beamsplitting (float) – Intensity fraction remaining in pulse.field if output coupler and coupler_type=”beamsplitter”
g (pyLaserPulse.grid.grid object)
crosstalk (float) – Polarization degradation caused by the component.
order (int) – Steepness of the super-Gaussian transmission window edges.
output_coupler (boolean) – If True, the component is an output coupler and some of the main beam (pulse.field) is tapped off.
coupler_type (string) – “polarization” or “beamsplitter”. If the former, Jones matrix for polarization-based output coupler is used. If the latter, Jones matrix for polarization-independent beam splitting is used for the output coupler.
beta_list (list) – None by default. Contains Taylor coefficients [beta_2, beta_3, …, beta_n] which define the dispersion profile of the component.
gdm (float) – Polarization group delay mismatch. Units: s. Delay accumulated between polarization components after propagating through the component. If gdm > 0, x is the slow axis.
- class pyLaserPulse.catalogue_components.bulk_components.Thorlabs_Laserline_bandpass(grid, transmission_bandwidth, lambda_c)¶
Bandpass filter with parameters roughly based on the Thorlabs NIR/Laserline bandpass range.
- Parameters:
grid (pyLaserPulse.grid.grid object)
transmission_bandwidth (float) – Transmission window FWHM in m.
lambda_c (float) – Central wavelength of the transmission window in m
output_coupler (bool) – If True, this component behaves like an output coupler or tap.
- __init__(grid, transmission_bandwidth, lambda_c)¶
- Parameters:
loss (float) – Insertion loss at the signal wavelength.
transmission_bandwidth (float) – Transmission bandwidth. Can also be interpreted as reflection bandwidth for reflective optics.
lambda_c (float) – Central wavelength of transmission window.
epsilon (complex) –
Defines type of component (polarizer or retarder). Defined for field. For example:
epsilon = 0 + 1j for a quarter wave plate, epsilon = -1 for a half wave plate, epsilon = 0.1 for 20 dB polarization extinction.
theta (float) – Angle subtended by component optical axis and x-axis.
beamsplitting (float) – Intensity fraction remaining in pulse.field if output coupler and coupler_type=”beamsplitter”
g (pyLaserPulse.grid.grid object)
crosstalk (float) – Polarization degradation caused by the component.
order (int) – Steepness of the super-Gaussian transmission window edges.
output_coupler (boolean) – If True, the component is an output coupler and some of the main beam (pulse.field) is tapped off.
coupler_type (string) – “polarization” or “beamsplitter”. If the former, Jones matrix for polarization-based output coupler is used. If the latter, Jones matrix for polarization-independent beam splitting is used for the output coupler.
beta_list (list) – None by default. Contains Taylor coefficients [beta_2, beta_3, …, beta_n] which define the dispersion profile of the component.
gdm (float) – Polarization group delay mismatch. Units: s. Delay accumulated between polarization components after propagating through the component. If gdm > 0, x is the slow axis.
- class pyLaserPulse.catalogue_components.bulk_components.Andover_155FS10_25_bandpass(grid, peak_transmission=0.324244)¶
Bandpass filter with parameters based on the Andover 155FS10-25 filer. Transmission bandwidth is 10 nm.
- Parameters:
grid (pyLaserPulse.grid.grid object)
peak_transmission (float) – Peak of transmission window. The measured data from the Andover website (component_loss_profiles/Andover_155FS10_25_bandpass) is usually used, but some papers suggest much higher peak transmission is possible. The manufacturer’s specification is 0.324244.
- __init__(grid, peak_transmission=0.324244)¶
- Parameters:
loss (float) – Insertion loss at the signal wavelength.
transmission_bandwidth (float) – Transmission bandwidth. Can also be interpreted as reflection bandwidth for reflective optics.
lambda_c (float) – Central wavelength of transmission window.
epsilon (complex) –
Defines type of component (polarizer or retarder). Defined for field. For example:
epsilon = 0 + 1j for a quarter wave plate, epsilon = -1 for a half wave plate, epsilon = 0.1 for 20 dB polarization extinction.
theta (float) – Angle subtended by component optical axis and x-axis.
beamsplitting (float) – Intensity fraction remaining in pulse.field if output coupler and coupler_type=”beamsplitter”
g (pyLaserPulse.grid.grid object)
crosstalk (float) – Polarization degradation caused by the component.
order (int) – Steepness of the super-Gaussian transmission window edges.
output_coupler (boolean) – If True, the component is an output coupler and some of the main beam (pulse.field) is tapped off.
coupler_type (string) – “polarization” or “beamsplitter”. If the former, Jones matrix for polarization-based output coupler is used. If the latter, Jones matrix for polarization-independent beam splitting is used for the output coupler.
beta_list (list) – None by default. Contains Taylor coefficients [beta_2, beta_3, …, beta_n] which define the dispersion profile of the component.
gdm (float) – Polarization group delay mismatch. Units: s. Delay accumulated between polarization components after propagating through the component. If gdm > 0, x is the slow axis.
- class pyLaserPulse.catalogue_components.bulk_components.AA_Optoelectronic_AOM_MT200_A02_980_1100(grid, time_open, rate_reduction_factor, input_rep_rate)¶
AA Optoelectronic AOM MT200-A02-xx, 200 MHz.
- Parameters:
grid (pyLaserPulse.grid.grid object)
time_open (float) – Time in s that the pulse picker is ‘open’, i.e., lets light through Cannot be less than 20 ns (specified rise time of 10 ns).
rate_reduction_factor (int) – Ratio of the input and output repetition rates of the pulse picker.
input_rep_rate (float) – Repetition rate of the seed laser before the pulse picker.
Notes
The diffraction efficiency of free-space AOMs is dependent on the wavelength and beam diameter. The minimum specified diffraction efficiency of 80% is used in this model.
- __init__(grid, time_open, rate_reduction_factor, input_rep_rate)¶
- Parameters:
loss (float) – Insertion loss at the signal wavelength.
transmission_bandwidth (float) – Transmission bandwidth. Can also be interpreted as reflection bandwidth for reflective optics.
lambda_c (float) – Central wavelength of transmission window.
epsilon (complex) –
Defines type of component (polarizer or retarder). Defined for field. For example:
epsilon = 0 + 1j for a quarter wave plate, epsilon = -1 for a half wave plate, epsilon = 0.1 for 20 dB polarization extinction.
theta (float) – Angle subtended by component optical axis and x-axis.
beamsplitting (float) – Intensity fraction remaining in pulse.field if output coupler and coupler_type=”beamsplitter”
g (pyLaserPulse.grid.grid object)
crosstalk (float) – Polarization degradation caused by the component.
time_open (float) – Time in s that the pulse picker is ‘open’, i.e., lets light through See Notes below.
rate_reduction_factor (int) – Ratio of the input and output repetition rates of the pulse picker. See Notes below.
input_rep_rate (float) – Repetition rate of the seed laser before the pulse picker. See Notes below.
order (int) – Steepness of the super-Gaussian transmission window edges.
output_coupler (boolean) – If True, the component is an output coupler and some of the main beam (pulse.field) is tapped off.
coupler_type (string) – “polarization” or “beamsplitter”. If the former, Jones matrix for polarization-based output coupler is used. If the latter, Jones matrix for polarization-independent beam splitting is used for the output coupler.
beta_list (list) – None by default. Contains Taylor coefficients [beta_2, beta_3, …, beta_n] which define the dispersion profile of the component.
gdm (float) – Polarization group delay mismatch. Units: s. Delay accumulated between polarization components after propagating through the component. If gdm > 0, x is the slow axis.