pyepr.resonator_profile_analysis.ResonatorProfileAnalysis¶
- class pyepr.resonator_profile_analysis.ResonatorProfileAnalysis(dataset, f_lims=(32, 36))¶
Analysis and calculation of resonator profiles.
- Parameters:
- datasetxr.xarray
The dataset containing the nutations. It must have both a ‘LO’ axis and a ‘pulse0_tp’ axis.
- f_limstuple, optional
The frequency limits of the resonator profile, by default (33,35)
- dataset¶
- n_files¶
- t¶
- f_lims¶
- process_nutations(noisedensity=None, threshold=2, nfft=1000)¶
Uses a power series to extract the resonator profile.
- Parameters:
- noisedensitytuple, optional
If not given the first trace is assumed to be so far off resonance that it is just noise.
- nfft: int, optional
The length of the fft to be used, zero padded if requred, default is 1000.
- threshold: int, optional
The multiples above the noise a single must be to not be excluded, default is 2.
- Returns:
- prof_data: np.ndarray
The resonator profile, give in nutation frequency (GHz)
- prof_frqs: np.ndarray
The frequency axis in GHz
- Parameters:
noisedensity (float)
threshold (int)
nfft (int)
- _process_fit(R_limit=0.5)¶
- fit(f_diff_threshold=2, cores=1, multi_mode=False, fc_guess=None)¶
Fit the resonator profile with a sum of lorentzians.
- Parameters:
- f_diff_thresholdfloat, optional
The difference between two peaks at which they will be merged into one, by default 0.03
- plot(fieldsweep=None, axs=None, fig=None)¶
plot.
- Parameters:
- fieldsweepFieldSweepAnalysis, optional
Overlays the FieldSweep if provided, by default None
- axsmatplotlib.Axes, optional
Axes to plot on, by default None
- figmatplotlib.Figure, optional
Figure to plot on, by default None
- Returns:
- Matplotlib.Figure
matplotlib figure object