Phasing models#

Phasing models deal with the photo-generated phase pulses in the input probe signal of an MKID-array; i.e. with a Phase array, inside the Detector object. Essentially, the starting point of each phase pulse indicates the arrival time of the photon that generated it—assuming that the pulse itself does not overlap with other pulses. Moreover, the height of the pulse provides information about the photon’s energy—actually, fitting the pulse’s profile is a more robust approximation. The initial Phase array builds upon a Charge array tailored for superconducting photo-detectors—once their underlying physics is fully implemented.

More information can be found on the website [5].

Create and Store a detector#

The models Save detector and Load detector can be used respectively to create and to store a Detector to/from a file.

These models can be used when you want to store or to inject a Detector into the current Pipeline.

Save detector#

This model saves the current Detector into a file. Accepted file formats are .h5, .hdf5, .hdf and .asdf.

- name: save_detector
  func: pyxel.models.save_detector
  enabled: true
  arguments:
    filename: my_detector.h5
pyxel.models.save_detector(detector, filename)[source]

Save the current detector into a file.

Load detector#

This model loads a Detector from a file and injects it in the current pipeline. Accepted file formats are .h5, .hdf5, .hdf and .asdf.

- name: load_detector
  func: pyxel.models.load_detector
  enabled: true
  arguments:
    filename: my_detector.h5
pyxel.models.load_detector(detector, filename)[source]

Load a new detector from a file.

Raises:

TypeError – If the loaded detector has not the same type of the current detector.

Pulse processing#

Note

This model is specific for the MKID detector.

ChargePhase

This model only applies to the MKID detector.

When a photon impinges upon an MKID, it generates a phase pulse in its input probe signal, on top of the background phase-height noise (from two-level-system states and amplifier noise). Each MKID has a phase-height responsivity \(r = \frac{\lambda}{\phi}\); where \(\lambda\) is the wavelength associated with the photons under study and \(\phi\) is the mean phase height.

This model is derived from [19]; more information can be found on the website [5].

Example of YAML configuration model:

- name: pulse_processing
  func: pyxel.models.phasing.pulse_processing
  enabled: true
  arguments:
    wavelength:
    responsivity:
    scaling_factor: 2.5e2
pyxel.models.phasing.pulse_processing(detector, wavelength, responsivity, scaling_factor=250.0, t_c=1.26, eta_pb=0.59, f=0.2)[source]#

Phase-pulse processor.

This model is derived from [19]; more information can be found on the website [5].

Parameters:
  • detector (MKID) – Pyxel MKID detector object.

  • wavelength (float) – Wavelength. Unit: um.

  • responsivity (float) – Responsivity of the pixel.

  • scaling_factor (float) – Scaling factor taking into account the missing pieces of superconducting physics, as well as the resonator quality factor, the bias power, the quasi-particle losses, etc.

  • t_c (float [used also in /pyxel/models/readout_electronics/dead_time.py]) – Material dependent critical temperature. Unit: K

  • eta_pb (float) – Superconducting pair-breaking efficiency.

  • f (float) – Fano’s factor.