File qutip-3.1.0-correlation.patch of Package python-qutip
diff -Npru qutip-3.1.0.orig/qutip/correlation.py qutip-3.1.0/qutip/correlation.py
--- qutip-3.1.0.orig/qutip/correlation.py 2016-03-31 16:36:44.768351980 -0400
+++ qutip-3.1.0/qutip/correlation.py 2016-03-31 16:37:50.696212288 -0400
@@ -74,7 +74,7 @@ def correlation_2op_1t(H, state0, taulis
options=Options(ntraj=[20, 100])):
"""
Calculate the two-operator two-time correlation function:
- :math: `\left<A(t+\\tau)B(t)\\right>`
+ :math:`\left<A(t+\\tau)B(t)\\right>`
along one time axis using the quantum regression theorem and the evolution
solver indicated by the `solver` parameter.
@@ -170,7 +170,7 @@ def correlation_2op_2t(H, state0, tlist,
tlist : *list* / *array*
list of times for :math:`t`. tlist must be positive and contain the
element `0`. When taking steady-steady correlations only one tlist
- value is necessary, i.e. :math:`t \rightarrow \infty`; here tlist is
+ value is necessary, i.e. :math:`t \\rightarrow \\infty`; here tlist is
automatically set, ignoring user input.
taulist : *list* / *array*
@@ -336,7 +336,7 @@ def correlation_3op_2t(H, state0, tlist,
tlist : *list* / *array*
list of times for :math:`t`. tlist must be positive and contain the
element `0`. When taking steady-steady correlations only one tlist
- value is necessary, i.e. :math:`t \rightarrow \infty`; here tlist is
+ value is necessary, i.e. :math:`t \\rightarrow \infty`; here tlist is
automatically set, ignoring user input.
taulist : *list* / *array*
@@ -402,7 +402,7 @@ def coherence_function_g1(H, taulist, c_
.. math::
- g^{(1)}(\\tau) = \lim_{t \to \infty}
+ g^{(1)}(\\tau) = \lim_{t \\to \infty}
\\frac{\\langle a^\\dagger(t+\\tau)a(t)\\rangle}
{\\langle a^\\dagger(t)a(t)\\rangle}
@@ -463,7 +463,7 @@ def coherence_function_g2(H, taulist, c_
.. math::
- g^{(2)}(\\tau) = \lim_{t \to \infty}
+ g^{(2)}(\\tau) = \lim_{t \\to \infty}
\\frac{\\langle a^\\dagger(t)a^\\dagger(t+\\tau)
a(t+\\tau)a(t)\\rangle}
{\\langle a^\\dagger(t)a(t)\\rangle^2}
@@ -524,13 +524,13 @@ def coherence_function_g2(H, taulist, c_
def spectrum(H, wlist, c_ops, a_op, b_op, solver="es", use_pinv=False):
"""
Calculate the spectrum of the correlation function
- :math:`\lim_{t \to \infty} \left<A(t+\\tau)B(t)\\right>`,
+ :math:`\lim_{t \\to \infty} \left<A(t+\\tau)B(t)\\right>`,
i.e., the Fourier transform of the correlation function:
.. math::
S(\omega) = \int_{-\infty}^{\infty}
- \lim_{t \to \infty} \left<A(t+\\tau)B(t)\\right>
+ \lim_{t \\to \infty} \left<A(t+\\tau)B(t)\\right>
e^{-i\omega\\tau} d\\tau.
using the solver indicated by the `solver` parameter. Note: this spectrum
@@ -638,7 +638,7 @@ def correlation_ss(H, taulist, c_ops, a_
.. math::
- \lim_{t \to \infty} \left<A(t+\\tau)B(t)\\right>
+ \lim_{t \\to \infty} \left<A(t+\\tau)B(t)\\right>
along one time axis (given steady-state initial conditions) using the
quantum regression theorem and the evolution solver indicated by the
@@ -665,8 +665,8 @@ def correlation_ss(H, taulist, c_ops, a_
reverse : bool
If `True`, calculate
- :math:`\lim_{t \to \infty} \left<A(t)B(t+\\tau)\\right>` instead of
- :math:`\lim_{t \to \infty} \left<A(t+\\tau)B(t)\\right>`.
+ :math:`\lim_{t \\to \infty} \left<A(t)B(t+\\tau)\\right>` instead of
+ :math:`\lim_{t \\to \infty} \left<A(t+\\tau)B(t)\\right>`.
solver : str
choice of solver (`me` for master-equation and
@@ -726,7 +726,7 @@ def correlation(H, state0, tlist, taulis
tlist : *list* / *array*
list of times for :math:`t`. tlist must be positive and contain the
element `0`. When taking steady-steady correlations only one tlist
- value is necessary, i.e. :math:`t \rightarrow \infty`; here tlist is
+ value is necessary, i.e. :math:`t \\rightarrow \infty`; here tlist is
automatically set, ignoring user input.
taulist : *list* / *array*
@@ -890,7 +890,7 @@ def correlation_4op_2t(H, state0, tlist,
tlist : *list* / *array*
list of times for :math:`t`. tlist must be positive and contain the
element `0`. When taking steady-steady correlations only one tlist
- value is necessary, i.e. :math:`t \rightarrow \infty`; here tlist is
+ value is necessary, i.e. :math:`t \\rightarrow \infty`; here tlist is
automatically set, ignoring user input.
taulist : *list* / *array*
@@ -956,13 +956,13 @@ def correlation_4op_2t(H, state0, tlist,
def spectrum_ss(H, wlist, c_ops, a_op, b_op):
"""
Calculate the spectrum of the correlation function
- :math:`\lim_{t \to \infty} \left<A(t+\\tau)B(t)\\right>`,
+ :math:`\lim_{t \\to \infty} \left<A(t+\\tau)B(t)\\right>`,
i.e., the Fourier transform of the correlation function:
.. math::
S(\omega) = \int_{-\infty}^{\infty}
- \lim_{t \to \infty} \left<A(t+\\tau)B(t)\\right>
+ \lim_{t \\to \infty} \left<A(t+\\tau)B(t)\\right>
e^{-i\omega\\tau} d\\tau.
using an eseries based solver Note: this spectrum is only defined for
@@ -1006,13 +1006,13 @@ def spectrum_ss(H, wlist, c_ops, a_op, b
def spectrum_pi(H, wlist, c_ops, a_op, b_op, use_pinv=False):
"""
Calculate the spectrum of the correlation function
- :math:`\lim_{t \to \infty} \left<A(t+\\tau)B(t)\\right>`,
+ :math:`\lim_{t \\to \infty} \left<A(t+\\tau)B(t)\\right>`,
i.e., the Fourier transform of the correlation function:
.. math::
S(\omega) = \int_{-\infty}^{\infty}
- \lim_{t \to \infty} \left<A(t+\\tau)B(t)\\right>
+ \lim_{t \\to \infty} \left<A(t+\\tau)B(t)\\right>
e^{-i\omega\\tau} d\\tau.
using a psuedo-inverse method. Note: this spectrum is only defined for
@@ -1065,7 +1065,7 @@ def _correlation_2t(H, state0, tlist, ta
"""
Internal function for calling solvers in order to calculate the
three-operator two-time correlation function:
- <A(t)B(t+tau)C(t)>
+ :math:`\left<A(t)B(t+\\tau)C(t)\\right>`
"""
# Note: the current form of the correlator is sufficient for all possible
@@ -1104,7 +1104,7 @@ def _correlation_me_2t(H, state0, tlist,
"""
Internal function for calculating the three-operator two-time
correlation function:
- <A(t)B(t+tau)C(t)>
+ :math:`\left<A(t)B(t+\\tau)C(t)\\right>`
using a master equation solver.
"""
@@ -1148,7 +1148,7 @@ def _correlation_es_2t(H, state0, tlist,
"""
Internal function for calculating the three-operator two-time
correlation function:
- <A(t)B(t+tau)C(t)>
+ :math:`\left<A(t)B(t+\\tau)C(t)\\right>`
using an exponential series solver.
"""
@@ -1219,7 +1219,7 @@ def _correlation_mc_2t(H, state0, tlist,
"""
Internal function for calculating the three-operator two-time
correlation function:
- <A(t)B(t+tau)C(t)>
+ :math:`\left<A(t)B(t+\\tau)C(t)\\right>`
using a Monte Carlo solver.
"""
@@ -1292,7 +1292,7 @@ def _correlation_mc_2t(H, state0, tlist,
]
# final correlation vector computed by combining the averages
- corr_mat[t_idx, :] += \
+ corr_mat[t_idx, :] = corr_mat[t_idx,:] + \
1/(4*options.ntraj[0]) * (c_tau[0] - c_tau[2] -
1j*c_tau[1] + 1j*c_tau[3])
if t_idx == 1: