Graph.filter_function(control_hamiltonian, noise_operator, frequencies, sample_count=100, projection_operator=None, *, name=None)

Evaluate the filter function for a control Hamiltonian and a noise operator at the given frequency elements.


  • control_hamiltonian (Pwc) – The control Hamiltonian Hc(t)H_\mathrm{c}(t)
  • noise_operator (Pwc) – The noise operator N(t)N(t)
  • frequencies (list or tuple or np.ndarray) – The elements in the frequency domain at which to return the values of the filter function.
  • sample_count (int or None , optional) – The number of points in time, MM
  • projection_operator (np.ndarray or None , optional) – The projection operator PP
  • name (str or None , optional) – The name of the node.


The filter function.

Return type



Graph.frequency_domain_noise_operator : Control-frame noise operator in the frequency domain.


The filter function is defined as 1:

F(f) = \frac{1}{\mathrm{Tr}(P)} \mathrm{Tr} \left( P \mathcal{F} \left\\{ \tilde N^\prime(t) \right\\}(f) \mathcal{F} \left\\{ \tilde N^\prime(t) \right\\}(f)^\dagger P \right),

with the control-frame noise operator in the frequency domain

\mathcal{F} \left\\{ \tilde N^\prime(t) \right\\}(f) = \int_0^\tau e^{-i 2\pi f t} \tilde N^\prime(t) \mathrm{d}t,


N~(t)=N~(t)Tr(PN~(t)P)Tr(P)I \tilde N^\prime(t) = \tilde N(t) - \frac{\mathrm{Tr}\left( P \tilde N(t) P \right)}{\mathrm{Tr}(P)} \mathbb{I}

is the traceless control-frame noise operator in the time domain,

N~(t)=Uc(t)N(t)Uc(t) \tilde N(t) = U_c^\dagger(t) N(t) U_c(t)

is the control-frame noise operator in the time domain, and Uc(t)U_c(t)


[1] H. Ball, M. J. Biercuk, A. R. R. Carvalho, J. Chen, M. Hush, L. A. De Castro, L. Li, P. J. Liebermann, H. J. Slatyer, and C. Edmunds, Quantum Sci. Technol. 6, 044011 (2021).

Was this useful?