diff --git a/README.md b/README.md index c25ed8b..ff9da3d 100644 --- a/README.md +++ b/README.md @@ -208,8 +208,7 @@ $\displaystyle\Bigg(\frac{1}{\sqrt{2(n+1)}}\Bigg)\Bigg(\displaystyle\frac{e^{-x^ $$\psi_{n+1}(x) = \displaystyle\Bigg(\sqrt{\frac{2}{n+1}}\Bigg)x\psi_{n}(x) -\Bigg(\sqrt{\frac{n}{n+1}}\Bigg)\psi_{n-1}(x) \quad \mathbf{(12)}$$ - - +Besides the use of this recurrence in this package, the same authors implemented a version of it in a Cython module of QuTip: [_distributions.pyx](https://github.com/qutip/qutip/blob/master/qutip/_distributions.pyx), to be used in the HarmonicOscillatorWaveFunction class from the [distributions.py](https://github.com/qutip/qutip/blob/master/qutip/distributions.py) module. ## ⚡️The Numba Module - Hybrid Solution diff --git a/docs/fast_wave.html b/docs/fast_wave.html new file mode 100644 index 0000000..eb00b43 --- /dev/null +++ b/docs/fast_wave.html @@ -0,0 +1,770 @@ + + + + + + + fast_wave API documentation + + + + + + + + + + + + + +
+
+

+fast_wave

+ +

This project presents an optimized approach for calculating the position wave functions of a Fock state of a quantum harmonic oscillator, with applications in Photonic Quantum Computing simulations. Leveraging Numba [1] and Cython [2], this approach outperforms the Mr Mustard package [3, 4] in computing a single wave function value at a single position and at multiple positions.

+ +

✨ Advantages

+ +
    +
  • Highly Efficient: This package includes two fixed-point modules focused on speed. One is implemented using Numba, an open-source Just-in-Time (JIT) compiler, and the other module is implemented in Cython, a programming language that combines the ease of use of Python with the speed of C.
  • +
  • Highly Accurate: The functions in this package have precision next to the precision of Wolfram Mathematica and MATLAB. In addition, there is a module for calculating wave functions with arbitrary precision using the mpmath package.
  • +
  • Past response cache: This package provides a caching module designed to enhance the performance of functions that take multiple positions of a NumPy array as input. This module stores previously computed results by leveraging Python's functools.lru_cache, eliminating the need for redundant calculations. This caching module is inspired by the caching module from Mr. Mustard, a package from the photonic quantum computing company Xanadu.
  • +
+ +

🛠️ Setup

+ +

To use this package, simply run the following command in the command line:

+ +
+
pip install fast-wave
+
+
+ +

🎨 Examples

+ +

The functions psi_n_multiple_fock_multiple_position calculate the values of the wavefunction $\psi_{0 → n} ( X_m )$ for multiple Fock states ($n$) and multiple positions ($X_{m}$).

+ +

Inputs:

+ +
    +
  • n: An integer specifying the maximum Fock state ($n$).
  • +
  • X_m: A 1D numpy array with m positions, representing the input values where $\psi_{0 → n}$ will be evaluated. For example, np.array([1.0, 2.0]) has dimension $(m,)$, where $m=2$ in this case.
  • +
+ +

Outputs:

+ +
    +
  • numpy Matrix: The output has dimensions $(n+1) × m$, where: +
      +
    • $n+1$: Corresponds to the Fock states $[0, 1, ..., n]$.
    • +
    • $m$: Represents the positions given in X_m.
    • +
  • +
+ +

Demonstration:

+ +

Using the provided inputs:

+ +
+
>>> import fast_wave.wavefunction_numba as wn
+Functionality Test Passed: True
+>>> import fast_wave.wavefunction_cython as wc
+>>> import numpy as np
+>>> wn.psi_n_multiple_fock_multiple_position(1,np.array([1.0 ,2.0])) 
+array([[0.45558067, 0.10165379],
+    [0.64428837, 0.28752033]])
+>>> wc.psi_n_multiple_fock_multiple_position(1,np.array([1.0 ,2.0]))
+array([[0.45558067, 0.10165379],
+    [0.64428837, 0.28752033]])
+
+
+ +

Explanation of the Output:

+ +
    +
  • For n=1 and X_m = np.array([1.0, 2.0]):
  • +
  • The output matrix has dimensions $(n+1) × m = 2 × 2$.
  • +
  • The first row contains $\psi_{0}(x_1)$ and $\psi_{0}(x_2)$.
  • +
  • The second row contains $\psi_{1}(x_1)$ and $\psi_{1}(x_2)$.
  • +
+ +

There are other examples in the examples folder: Speed Tests: Numba & Cython; Precision Tests: mpmath. In the first one there is a comparison with the Mr Mustard package.

+ +

🌊 The Wavefunction

+ +

The wavefunction, $\Psi(y,t)$, is a fundamental concept in quantum mechanics that describes the quantum state of a particle or system. Its absolute square, $|\Psi(y,t)|^2$, represents the probability density of finding the particle at position $\mathbf{y}$ and time $\mathbf{t}$. Due to the normalization property: $\int_{-\infty}^{\infty} |\Psi(y,t)|^2 dy = 1$ it's guaranteed that for a given time $\mathbf{t}$, the total probability of finding the particle somewhere in space is unity [5].

+ +

Schrödinger Equation

+ +

The wavefunction is the solution to the Schrödinger equation, a fundamental equation in quantum mechanics:

+ +

$$ +-\Bigg({\hbar^{2} \over 2m}\Bigg) {\partial^2 \Psi(y,t) \over \partial y^{2}} + \Bigg({m\omega^2 y^2 \over 2}\Bigg) \Psi(y,t) = \mathbf{i}\hbar \, {\partial \Psi(y,t) \over \partial t} \quad \mathbf{(1)} +$$

+ +

where $\mathbf{\hbar}$ is the reduced Planck constant, $\mathbf{m}$ is the mass of the particle, and $\mathbf{\omega}$ is the angular frequency of the harmonic potential. The symbol $\mathbf{i}$ represents the imaginary unit. When seeking the solution to this equation, we separated the variables as follows: $\Psi(y,t) = \psi(y)f(t)$, and we find as a result for $f(t)$ [5]:

+ +

$$ f(t) = C \, e^{-iEt/\hbar} \quad \mathbf{(2)}$$

+ +

where $\mathbf{C}$ may be considered an arbitrary complex constant and $\mathbf{E}$, the system separation constant can be interpreted as the system's energy. Substituting into the wavefunction we have [5]:

+ +

$$ \Psi(y,t) = C \, e^{-iEt/\hbar} \, \psi(y) \quad \mathbf{(3)}$$

+ +

The term $e^{-iEt/\hbar}$ is called the phase factor of $\Psi(y,t)$. In order to find $\psi(y)$ we then solve the time-independent Schröndiger equation [5]:

+ +

$$ +-\Bigg({\hbar^{2} \over 2m }\Bigg) \psi''(y) + \Bigg({m\omega^2 y^2 \over 2 }\Bigg) \psi(y) = E \, \psi(y) \quad \mathbf{(4)} +$$

+ +

Quantum Harmonic Oscillator

+ +

By solving equation (4), we obtain a family of energy eigenfunctions defined as follows [5]:

+ +

$$ +\psi_n(y) = \Bigg({ m\omega \over \pi\hbar }\Bigg)^{1/4} \Bigg({ 1 \over \sqrt{2^n n!}}\Bigg) H_n\Bigg(\sqrt{m\omega \over \hbar }y\Bigg) \, e^{-m\omega y^2/2\hbar} , \quad n \in \mathbb{N}_{0} \quad \mathbf{(5)} +$$

+ +

where $\mathbf{n}$ represents a non-negative integer corresponding to the different energy states of the system, with energies given by $E_n = [n + (1/2)]\hbar \omega$. The term $H_n$ denotes the Hermite polynomial of degree $\mathbf{n}$; thus, for each energy state $\mathbf{n}$, there is an associated Hermite polynomial of degree $\mathbf{n}$ within its eigenfunction [5]:

+ +


+ +
+  +
+

Wavefunctions and energies for different $\mathbf{n}$ values. [6]

+
+ +


+ +

The energy eigenfunction for an energy state $\mathbf{n}$ is the wavefunction for an energy state $\mathbf{n}$ of a Quantum Harmonic Oscillator. From this definition, we can then represent the wave function $\Psi(x,t)$ as a series expansion of its family of energy eigenfunctions ${\psi_{n}(x)}$ [5]:

+ +

$$ +\Psi(y,t) = \sum_{n=0}^{\infty} c_{n} \, \psi_{n}(y) \, e^{-\mathbf{i}E_{n}t/\hbar} \quad \mathbf{(6)} +$$

+ +

where $\mathbf{c_{n}}$ are complex constants that determine the contribution of each eigenfunction $\psi_{n}(y)$ to the total wavefunction $\Psi(y,t)$. These coefficients are chosen to ensure that the wavefunction satisfies the initial condition of the problem ($t=0$) [5].

+ +

Fock states

+ +

When defining the dimensionless variable $x = \Big(m\omega/\hbar\Big)^{1/2}y$, referred to as the reduced coordinate, it follows that $dy = \Big(\hbar/m\omega\Big)^{1/2}dx$. As a result, we can write [7]:

+ +

$\displaystyle\int_{-\infty}^{+\infty} |\psi(y)|^{2} dy = 1 \implies \int_{-\infty}^{+\infty}\Bigg[\Bigg({m\omega \over \pi\hbar }\Bigg)^{1/2} \Bigg({1 \over 2^n n!}\Bigg) H_n^{2}\Bigg(\sqrt{ m\omega \over \hbar}y\Bigg) e^{-m\omega y^2/\hbar} \Bigg] dy \implies$

+ +

$\displaystyle\int_{-\infty}^{+\infty} \Bigg[ \Bigg({m\omega \over \pi\hbar } \Bigg)^{1/2} \Bigg( { 1 \over 2^n n! } \Bigg) H_{n}^{2}(x) \, e^{-x^{2}}\Bigg]\Bigg[{ \hbar \over \omega m }\Bigg]^{1/2}dx = 1 \implies \int_{-\infty}^{+\infty} \Bigg[ \Bigg({ 1 \over 2^n n!\sqrt{\pi} } \Bigg) H_{n}^{2}(x) \, e^{-x^{2}}\Bigg]dx = 1 \implies$

+ +

$\displaystyle\int_{-\infty}^{+\infty} \, \Bigg| \Bigg( {1 \over 2^n n!\sqrt{\pi} } \Bigg)^{1/2} H_{n}(x) \, e^{-x^{2}/2} \Bigg|^{2}dx = 1 \implies \int_{-\infty}^{+\infty} |\psi(x)|^{2} dx = 1\implies$

+ +

$$\psi_{n}(x) = \Bigg( {1 \over 2^n n!\sqrt{\pi} }\Bigg)^{1/2} H_{n}(x) \quad e^{-x^{2}/2} \quad \mathbf{(7)}$$

+ +

This demonstrates that the wavefunction of a Quantum Harmonic Oscillator can be represented in a more dimensionless form, known as the Hermite function, it is also sometimes referred to as the Gauss Hermite function (equation $\mathbf{7}$) [8]. A more simplified form for this type of function is this: $\psi_{n}(x) = \mathcal{N_{n}} \, H_{n}(x) \, e^{-x^{2}/2}$, where $\mathcal{N_{n}} = [1 /(2^n n!\sqrt{\pi})]^{1/2}$ is referred to as the normalization constant [9].

+ +

This type of representation for the wavefunction enables the modeling of wave functions for Fock states, which are energy eigenstates with a well-defined number of particles. When the particles are considered photons, $\mathbf{n}$, the degree of the Hermite polynomial, also represents the number of photons. Consequently, the Fock states ($\ket{n}$) become eigenstates of the photon number operator $\hat{n}$, such that $\hat{n}\ket{n}=n\ket{n}$. Moreover, the energy states now correspond to the energy levels of an optical system containing $n$-photons [10].

+ +

$\ket{\psi_{n}} = \displaystyle{1 \over \sqrt{n!} }(a^{\dagger})^{n}\ket{\psi_{0}} \implies \psi_{n}(q) = { 1 \over \sqrt{n!} }{ 1 \over \sqrt{2^n} }\Bigg(q - {\partial \over \partial q }\Bigg)^{n}\psi_{0}(q) \implies $

+ +

$\psi_{n}(q) = \displaystyle{1 \over \sqrt{n!}}{1 \over \sqrt{2^n} } H_{n}(q) \psi_{0}(q) \implies \psi_{n}(q) = \displaystyle{1 \over \sqrt{n!} }{1 \over \sqrt{2^n} } H_{n}(q) \Big(\pi^{-1/4}\Big) e^{-q^{2}/2} \implies$

+ +

$$\psi_{n}(q) = \displaystyle\Bigg({1 \over 2^n n!\sqrt{\pi} }\Bigg)^{1/2} H_{n}(q) \quad e^{-q^{2}/2} \quad \mathbf{(8)}$$

+ +

where $\mathbf{q}$ is interpreted as the normalized field amplitude associated with the position quadrature ($\hat{q}$​) and has a dimensionless character similar to $\mathbf{x}$ [10].

+ +

The wavefunction $\mathbf{n}$ of a Fock state is the projection of the state $\ket{n}$, and as we can observe, the wavefunctions of a Fock state for $n$-photon systems can be interpreted as a family of dimensionless energy eigenfunctions (Hermite functions), similar to those shown by equation $\mathbf{(7)}$ [10].

+ +

🔁 The Wavefunction Recurrence

+ +

In essence, Mr Mustard's strategy is to use the Renormalized Hermite Polynomial [3, 4] for the computation of the wavefunction of a quantum harmonic oscillator. Below, we show the recurrence for calculating the Renormalized Hermite Polynomial, as well as the method for calculating it using the traditional Hermite polynomial:

+ +

$$H_{n+1}^{re}(x) = \displaystyle{2 \over \sqrt{n+1} }\Big[xH_{n}^{re}(x) - H_{n-1}^{re}(x)\sqrt{n-1}\Big] \quad \mathbf{(8)} $$

+ +

$$H_{n}^{re}(x) = \displaystyle{H_{n}(x) \over \sqrt{n!}} \quad \mathbf{(10)} $$

+ +

When we use this polynomial in calculating the wavefunction of a Quantum Harmonic Oscillator, the equation is as follows:

+ +

$$\psi_{n}(x) = \displaystyle\Bigg({1 \over 2^n\sqrt{\pi} }\Bigg)^{1/2}H_{n}^{re}(x) \quad e^{-{x^2 \over 2 }} \quad \mathbf{(11)} $$

+ +

In this package, we implemented a recurrence based on the recursive solution to the wavefunction of the Quantum Harmonic Oscillator presented in the work of José Maria Pérez-Jordá [11]. The recurrence we implemented was for $\psi_{n+1}$, which we obtained from the recursive definition of the Hermite polynomial [12], as suggested by José Maria Pérez-Jordá in his article:

+ +

$H_{n+1}(x) = 2xH_{n}(x) - 2nH_{n-1}(x) \implies $

+ +

$\Bigg( \displaystyle{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}}\Bigg)H_{n+1}(x) = \Bigg( \displaystyle{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}}\Bigg)2xH_{n}(x) -\Bigg( \displaystyle{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}}\Bigg)2nH_{n-1}(x) \implies$

+ +

$\Bigg( \displaystyle{e^{-x^{2}/2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}}\Bigg)H_{n+1}(x) = \Bigg( \displaystyle{e^{-x^{2}/2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}}\Bigg)2xH_{n}(x) -2n\psi_{n-1}(x) \implies $

+ +

$\displaystyle{1 \over \sqrt{2n}}\Bigg( \displaystyle{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}}\Bigg)H_{n+1}(x) = {1 \over \sqrt{2n} }\Bigg( \displaystyle{e^{-x^2 /2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}}\Bigg)2xH_{n}(x) -{2n \over \sqrt{2n}} \, \psi_{n-1}(x) \implies$

+ +

$\Bigg(\displaystyle{e^{-x^2 / 2} \over \sqrt{2^n n!\pi^{1/2}}}\Bigg) H_{n+1}(x) = 2x\psi_{n}(x) - {2n \over \sqrt{2n}} \, \psi_{n-1}(x) \implies$

+ +

$\displaystyle\Bigg({1 \over \sqrt{2(n+1)} }\Bigg)\Bigg(\displaystyle{e^{-x^2 / 2} \over \sqrt{2^n n!\pi^{1/2}} }\Bigg) H_{n+1}(x) = \displaystyle\Bigg({1 \over \sqrt{2(n+1)}}\Bigg)2x\psi_{n}(x) - \displaystyle\Bigg({1 \over \sqrt{2(n+1)}}\Bigg) \, {2n \over \sqrt{2n} } \, \psi_{n-1}(x) \implies$

+ +

$$\psi_{n+1}(x) = \displaystyle\Bigg(\sqrt{2 \over n+1}\Bigg)x\psi_{n}(x) -\Bigg(\sqrt{n \over n+1}\Bigg)\psi_{n-1}(x) \quad \mathbf{(12)}$$

+ +

Besides the use of this recurrence in this package, the same authors implemented a version of it in a Cython module of QuTip: _distributions.pyx, to be used in the HarmonicOscillatorWaveFunction class from the distributions.py module.

+ +

⚡️The Numba Module - Hybrid Solution

+ +

We use a hybrid solution with two algorithms for calculating the wave function for calculating a single Fock wave function's values at multiple positions (Single Fock and Multiple Position) (psi_n_single_fock_multiple_position). For $n>60$ or more than 35 positions, we use the recurrence for the wave function. For $n\le 60$ and at most 35 positions we use a precomputed matrix with the normalized coefficients of the Hermite polynomial as follows:

+ +

$$\psi_{i}(x) = \displaystyle{1 \over \sqrt{2^i i!\pi^{1/2}}}H_{i}(x)e^{-x^{2}/2} = {1 \over \sqrt{2^{i}i!\pi^{1/2}}}\mathbf{C_{n}[i]} \cdot \mathbf{x^{p}} e^{-x^{2}/2} \implies $$

+ +

$$\psi_{i}(x) = \mathbf{C^{s}_{n}[i]\cdot x^{p}e^{-x^{2}/2} \quad \mathbf{(13)}}$$

+ +

where $\mathbf{C^{s}_{n}[i]}$ is the row vector of normalized coefficients that multiply each power of $x$ up to $x^n$. The entire matrix $\mathbf{C^s_n}$ of such rows is precomputed up to degree $n=60$. $\mathbf{x^{p}}$ is a column vector of powers up to n, with zeros in places where the coefficient is zero; for example, for $i=3$, $\mathbf{x^{p}} = [x^{3}, 0.0, x^{1}, 0.0]^T$. This hybrid algorithm is also used in Single Fock and Single Position (psi_n_single_fock_single_position) problems, though it offers no computational advantage in these cases. Additionally, there is an argument named CS_matrix for these Single Fock functions, set to True to enable the use of this matrix. In other words, you can use only the recurrence relation for the wave function at any value. The use of this coefficient matrix is limited to values up to 60 (determined empirically), as beyond this point, the function may encounter precision errors, resulting in incoherent outputs [13].

+ +

⚡️ The Numba Module - Arguments

+ +

For this algorithm to perform as efficiently as possible, Numba's Just-in-Time compilation is used in conjunction with lru_cache (Least Recently Used - Cache Management). The following arguments were used in the @nb.jit decorator:

+ +
    +
  • nopython=True: This argument forces the Numba compiler to operate in "nopython" mode, which means that all the code within the function must be compilable to pure machine code without falling back to the Python interpreter. This results in significant performance improvements by eliminating the overhead of the Python interpreter.
  • +
  • looplift=True: This argument allows Numba to "lift" loops out of "nopython" mode. That is, if there are loops in the code that cannot be compiled in "nopython" mode, Numba will try to move them outside of the compiled part and execute them as normal Python code.
  • +
  • nogil=True: This argument releases the Python Global Interpreter Lock (GIL) while the function is executing. It is useful for allowing the Numba-compiled code to run in parallel with other Python threads, increasing performance in multi-threaded programs.
  • +
  • boundscheck=False: Disables array bounds checking. Normally, Numba checks if array indices are within valid bounds. Disabling this check can increase performance but may result in undefined behavior if there are out-of-bounds accesses.
  • +
  • cache=True: Enables caching of the compiled function. The first time the function is compiled, Numba stores the compiled version in a cache. On subsequent executions, Numba can reuse the compiled version from the cache instead of recompiling the function, reducing the function's startup time.
  • +
+ +

⚙️ The Cython Module

+ +

The Cython module includes compiled files for Linux (.so) and Windows (.pyd), which allows it to be used in Google Colab (Linux). Additionally, this module supports three versions of Python 3: 3.10, 3.11, and 3.12. All these files are placed in the package folder upon installation. The source code of the Cython module is available in the repository in .pyx format. In the functions of the Cython module, some decorators are used to increase speed:

+ +
    +
  • @cython.nogil: This decorator allows a Cython function to release the Global Interpreter Lock (GIL), making it possible to execute that block of code concurrently in multiple threads.
  • +
  • @cython.cfunc: This decorator tells Cython to treat the function as a C function, meaning it can be called from other Cython or C code, not just Python. The function will have C-level calling conventions.
  • +
  • @cython.locals(...): Declares local variable types to optimize performance.
  • +
  • @cython.boundscheck(False): Disables bounds checking for arrays/lists to boost speed, but at the cost of safety.
  • +
+ +

📖 References

+ +

Our journey through the quantum realm is inspired by the following:

+ +
    +
  1. Lam, S. K., Pitrou, A., & Seibert, S. (2015). _Numba: A LLVM-based Python JIT compiler_. In _Proceedings of the Second Workshop on the LLVM Compiler Infrastructure in HPC_ (LLVM '15) (pp. 7-12). Association for Computing Machinery. https://doi.org/10.1145/2833157.2833162
  2. +
  3. Behnel, S., Bradshaw, R., Citro, C., Dalcin, L., Seljebotn, D. S., & Smith, K. (2011). Cython: The best of both worlds. Computing in Science & Engineering, 13(2), 31-39. https://doi.org/10.1109/MCSE.2010.118
  4. +
  5. Yao, Y., Miatto, F., & Quesada, N. (2024). _Riemannian optimization of photonic quantum circuits in phase and Fock space_ [Preprint]. arXiv:2209.06069. https://doi.org/10.21468/SciPostPhys.17.3.082
  6. +
  7. Miatto, F. M., & Quesada, N. (2020). _Fast optimization of parametrized quantum optical circuits_ (Quantum, 4, 366). https://doi.org/10.22331/q-2020-11-30-366
  8. +
  9. Bowers, P. L. (2020). Lectures on Quantum Mechanics: A Primer for Mathematicians. Cambridge University Press. ISBN: 1108429769 (9781108429764)
  10. +
  11. Aerts, D., Beltran, L. Quantum Structure in Cognition: Human Language as a Boson Gas of Entangled Words. Found Sci 25, 755–802 (2020). https://doi.org/10.1007/s10699-019-09633-4
  12. +
  13. Beiser, A. (2003). Concepts of Modern Physics. 6th ed. McGraw Hill. ISBN: 0072448482 (9780072448481)
  14. +
  15. Celeghini, E., Gadella, M., & del Olmo, M. A. (2021). Hermite functions and Fourier series. Symmetry, 13(5), Article 853. https://doi.org/10.3390/sym13050853
  16. +
  17. Schleich, W. P. (2001). Quantum optics in phase space. Wiley-VCH. ISBN: 352729435X (9783527294350)
  18. +
  19. Leonhardt, U. (2010). Essential Quantum Optics: From Quantum Measurements to Black Holes. Cambridge: Cambridge University Press. ISBN: 0521869781 (9780521869782)
  20. +
  21. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, 39(1), 015402. https://doi.org/10.1088/1361-6404/aa9584
  22. +
  23. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press. ISBN: 0521192250 (9780521192255)
  24. +
  25. Cordeiro, M., Bezerra, I. P., & Vasconcelos, H. H. M. (2024). Efficient computation of the wave function ψn(x) using Hermite coefficient matrix in Python. In 7º Workshop Escola de Computação e Informação Quântica (7ª WECIQ) (pp. 56-60). CEFET/RJ.
  26. +
+ +

🤝 Contributing

+ +

Contributions, whether filing an issue, proposing improvements, or submitting a pull request, are welcome! Please feel free to explore, ask questions, and share your ideas.

+ +

📜 License

+ +

This project is available under the BSD 3-Clause License. See the LICENSE file for more details.

+ +

📬 Contact

+ +

If you have any questions or want to reach out to the team, please send me an email at matheusgomescord@gmail.com.

+
+ + + + + +
  1"""
+  2    This project presents an optimized approach for calculating the position wave functions of a Fock state of a quantum harmonic oscillator, with applications in Photonic Quantum Computing simulations. Leveraging [Numba](https://numba.pydata.org/)  [[1](#references)] and [Cython](https://cython.org/) [[2](#references)], this approach outperforms the [Mr Mustard](https://mrmustard.readthedocs.io/en/stable/) package [[3, 4](#references)] in computing a single wave function value at a single position and at multiple positions.
+  3
+  4    ## ✨ Advantages
+  5
+  6
+  7    - **Highly Efficient**: This package includes two fixed-point modules focused on speed. One is implemented using *Numba*, an open-source Just-in-Time (JIT) compiler, and the other module is implemented in *Cython*, a programming language that combines the ease of use of Python with the speed of C.
+  8    - **Highly Accurate**: The functions in this package have precision next to the precision of Wolfram Mathematica and MATLAB. In addition, there is a module for calculating wave functions with arbitrary precision using the *mpmath* package.
+  9    - **Past response cache**: This package provides a caching module designed to enhance the performance of functions that take multiple positions of a *NumPy* array as input. This module stores previously computed results by leveraging Python's functools.lru_cache, eliminating the need for redundant calculations. This caching module is inspired by the [caching module](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26) from Mr. Mustard, a package from the photonic quantum computing company Xanadu.
+ 10
+ 11
+ 12    ## 🛠️ Setup
+ 13    To use this package, simply run the following command in the command line: 
+ 14    ```bash
+ 15    pip install fast-wave
+ 16    ``` 
+ 17
+ 18    ## 🎨 Examples
+ 19
+ 20    The functions `psi_n_multiple_fock_multiple_position` calculate the values of the wavefunction $\psi_{0 → n} \( X_m \)$ for multiple Fock states ($n$) and multiple positions ($X_{m}$).
+ 21
+ 22    **Inputs:**
+ 23
+ 24    * `n`: An integer specifying the maximum Fock state ($n$).
+ 25    * `X_m`: A 1D `numpy` array with `m` positions, representing the input values where $\psi_{0 → n}$ will be evaluated. For example, `np.array([1.0, 2.0])` has dimension $(m,)$, where $m=2$ in this case.
+ 26
+ 27    **Outputs:**
+ 28
+ 29    - `numpy` **Matrix**: The output has dimensions $(n+1) × m$, where:
+ 30        - $n+1$: Corresponds to the Fock states $[0, 1, ..., n]$.
+ 31        - $m$: Represents the positions given in `X_m`.
+ 32
+ 33    **Demonstration:**
+ 34
+ 35    Using the provided inputs:
+ 36
+ 37    ```python
+ 38    >>> import fast_wave.wavefunction_numba as wn
+ 39    Functionality Test Passed: True
+ 40    >>> import fast_wave.wavefunction_cython as wc
+ 41    >>> import numpy as np
+ 42    >>> wn.psi_n_multiple_fock_multiple_position(1,np.array([1.0 ,2.0])) 
+ 43    array([[0.45558067, 0.10165379],
+ 44        [0.64428837, 0.28752033]])
+ 45    >>> wc.psi_n_multiple_fock_multiple_position(1,np.array([1.0 ,2.0]))
+ 46    array([[0.45558067, 0.10165379],
+ 47        [0.64428837, 0.28752033]])
+ 48    ```
+ 49
+ 50    **Explanation of the Output:**
+ 51
+ 52    * For `n=1` and `X_m = np.array([1.0, 2.0])`:
+ 53    - The output matrix has dimensions $(n+1) × m = 2 × 2$.
+ 54    - The first row contains $\psi_{0}(x_1)$ and $\psi_{0}(x_2)$.
+ 55    - The second row contains $\psi_{1}(x_1)$ and $\psi_{1}(x_2)$.
+ 56
+ 57    There are other examples in the examples folder: [Speed Tests: Numba & Cython](https://colab.research.google.com/github/fobos123deimos/fast-wave/blob/main/examples/speed_tests_numba_and_cython.ipynb); [Precision Tests: mpmath](https://colab.research.google.com/github/fobos123deimos/fast-wave/blob/main/examples/precision_tests_mpmath.ipynb). In the first one there is a comparison with the [Mr Mustard](https://mrmustard.readthedocs.io/en/stable/) package.
+ 58
+ 59    ## 🌊 The Wavefunction
+ 60
+ 61    The wavefunction, $\Psi(y,t)$, is a fundamental concept in quantum mechanics that describes the quantum state of a particle or system. Its absolute square, $|\Psi(y,t)|^2$, represents the probability density of finding the particle at position $\mathbf{y}$ and time $\mathbf{t}$. Due to the normalization property: $\int_{-\infty}^{\infty} |\Psi(y,t)|^2 dy = 1$ it's guaranteed that for a given time $\mathbf{t}$, the total probability of finding the particle somewhere in space is unity [[5](#references)].
+ 62
+ 63    ###  Schrödinger Equation
+ 64
+ 65    The wavefunction is the solution to the Schrödinger equation, a fundamental equation in quantum mechanics:
+ 66
+ 67    $$
+ 68    -\Bigg(\{\hbar^{2} \over 2m\}\Bigg) \{\partial^2 \Psi(y,t) \over \partial y^{2}\} + \Bigg(\{m\omega^2 y^2 \over 2\}\Bigg) \Psi(y,t) = \mathbf{i}\hbar \, \{\partial \Psi(y,t) \over \partial t\} \quad \mathbf{(1)}
+ 69    $$
+ 70
+ 71    where $\mathbf{\hbar}$ is the reduced Planck constant, $\mathbf{m}$ is the mass of the particle, and $\mathbf{\omega}$ is the angular frequency of the harmonic potential. The symbol $\mathbf{i}$ represents the imaginary unit. When seeking the solution to this equation, we separated the variables as follows: $\Psi(y,t) = \psi(y)f(t)$, and we find as a result for $f(t)$ [[5](#references)]:
+ 72
+ 73    $$ f(t) = C \, e^{-iEt/\hbar} \quad \mathbf{(2)}$$
+ 74
+ 75    where $\mathbf{C}$ may be considered an arbitrary complex constant and $\mathbf{E}$, the system separation constant can be interpreted as the system's energy. Substituting into the wavefunction we have [[5](#references)]:
+ 76
+ 77    $$ \Psi(y,t) = C \, e^{-iEt/\hbar} \, \psi(y) \quad \mathbf{(3)}$$
+ 78
+ 79    The term $e^{-iEt/\hbar}$ is called the **phase factor** of $\Psi(y,t)$. In order to find $\psi(y)$ we then solve the **time-independent Schröndiger equation** [[5](#references)]:
+ 80
+ 81    $$
+ 82    -\Bigg(\{\hbar^{2} \over 2m \}\Bigg) \psi''(y) + \Bigg(\{m\omega^2 y^2 \over 2 \}\Bigg) \psi(y) = E \, \psi(y) \quad \mathbf{(4)}
+ 83    $$
+ 84
+ 85
+ 86    ### Quantum Harmonic Oscillator
+ 87
+ 88    By solving equation **(4)**, we obtain a family of energy eigenfunctions defined as follows [[5](#references)]:
+ 89
+ 90    $$
+ 91    \psi_n(y) = \Bigg(\{ m\omega \over \pi\hbar \}\Bigg)^{1/4} \Bigg(\{ 1 \over \sqrt{2^n n!}\}\Bigg) H_n\Bigg(\sqrt{m\omega \over \hbar }y\Bigg) \, e^{-m\omega y^2/2\hbar} , \quad  n \in \mathbb{N}_{0} \quad \mathbf{(5)}
+ 92    $$
+ 93
+ 94    where $\mathbf{n}$ represents a non-negative integer corresponding to the different energy states of the system, with energies given by $E_n = [n + (1/2)]\hbar \omega$. The term $H_n$ denotes the Hermite polynomial of degree $\mathbf{n}$; thus, for each energy state $\mathbf{n}$, there is an associated Hermite polynomial of degree $\mathbf{n}$ within its eigenfunction [[5](#references)]:
+ 95
+ 96    <br>
+ 97
+ 98    <div style="text-align: center;">
+ 99        <img src="https://github.com/user-attachments/assets/cd191cda-94cf-47f3-8835-85425e932b22" alt=" " style="max-width: 100%; ">
+100        <figcaption style="font-style: italic; color: #666; text-align: center;">
+101        <p style="font-style: italic; color: #666;"> Wavefunctions and energies for different $\mathbf{n}$ values. <a href="#references">[6]</a></p>
+102    </div>
+103
+104    <br>
+105
+106    The energy eigenfunction for an energy state $\mathbf{n}$ is the wavefunction for an energy state $\mathbf{n}$ of a Quantum Harmonic Oscillator. From this definition, we can then represent the wave function $\Psi(x,t)$ as a series expansion of its family of energy eigenfunctions $\{\psi_{n}(x)\}$ [[5](#references)]:
+107
+108    $$
+109    \Psi(y,t) = \sum_{n=0}^{\infty} c_{n} \, \psi_{n}(y) \, e^{-\mathbf{i}E_{n}t/\hbar} \quad \mathbf{(6)}
+110    $$
+111
+112    where $\mathbf{c_{n}}$ are complex constants that determine the contribution of each eigenfunction $\psi_{n}(y)$ to the total wavefunction $\Psi(y,t)$. These coefficients are chosen to ensure that the wavefunction satisfies the initial condition of the problem ($t=0$) [[5](#references)].
+113
+114    ### Fock states
+115
+116    When defining the dimensionless variable $x = \Big(m\omega/\hbar\Big)^{1/2}y$, referred to as the **reduced coordinate**, it follows that $dy = \Big(\hbar/m\omega\Big)^{1/2}dx$. As a result, we can write [[7](#references)]:
+117
+118
+119    $\displaystyle\int_{-\infty}^{+\infty} |\psi(y)|^{2} dy = 1 \implies \int_{-\infty}^{+\infty}\Bigg[\Bigg(\{m\omega \over \pi\hbar \}\Bigg)^{1/2} \Bigg(\{1 \over 2^n n!\}\Bigg) H_n^{2}\Bigg(\sqrt{ m\omega \over \hbar}y\Bigg) e^{-m\omega y^2/\hbar} \Bigg] dy \implies$ 
+120
+121
+122    $\displaystyle\int_{-\infty}^{+\infty} \Bigg[ \Bigg(\{m\omega \over \pi\hbar \} \Bigg)^{1/2} \Bigg( \{ 1 \over 2^n n! \} \Bigg) H_{n}^{2}(x) \, e^{-x^{2}}\Bigg]\Bigg[\{ \hbar \over \omega m \}\Bigg]^{1/2}dx = 1 \implies \int_{-\infty}^{+\infty} \Bigg[ \Bigg(\{ 1  \over 2^n n!\sqrt{\pi} \} \Bigg) H_{n}^{2}(x) \, e^{-x^{2}}\Bigg]dx = 1 \implies$
+123
+124
+125    $\displaystyle\int_{-\infty}^{+\infty} \, \Bigg| \Bigg( \{1 \over 2^n n!\sqrt{\pi} \} \Bigg)^{1/2} H_{n}(x) \, e^{-x^{2}/2} \Bigg|^{2}dx = 1 \implies \int_{-\infty}^{+\infty} |\psi(x)|^{2} dx = 1\implies$
+126
+127    $$\psi_{n}(x) = \Bigg( \{1  \over 2^n n!\sqrt{\pi} \}\Bigg)^{1/2} H_{n}(x) \quad e^{-x^{2}/2} \quad \mathbf{(7)}$$
+128
+129    This demonstrates that the wavefunction of a Quantum Harmonic Oscillator can be represented in a more dimensionless form, known as the **Hermite function**, it is also sometimes referred to as the **Gauss Hermite function** (equation $\mathbf{7}$) [[8](#references)]. A more simplified form for this type of function is this: $\psi_{n}(x) = \mathcal{N_{n}} \, H_{n}(x) \, e^{-x^{2}/2}$, where $\mathcal{N_{n}} = [1 /(2^n n!\sqrt{\pi})]^{1/2}$ is referred to as the normalization constant [[9](#references)].
+130
+131    This type of representation for the wavefunction enables the modeling of wave functions for **Fock states**, which are energy eigenstates with a well-defined number of particles. When the particles are considered photons, $\mathbf{n}$, the degree of the Hermite polynomial, also represents the number of photons. Consequently, the Fock states ($\ket{n}$) become eigenstates of the photon number operator $\hat{n}$, such that $\hat{n}\ket{n}=n\ket{n}$. Moreover, the energy states now correspond to the energy levels of an optical system containing $n$-photons [[10](#references)].
+132
+133
+134    $\ket{\psi_{n}} = \displaystyle\{1 \over \sqrt{n!} \}(a^{\dagger})^{n}\ket{\psi_{0}} \implies \psi_{n}(q) = \{ 1 \over \sqrt{n!} \}\{ 1 \over \sqrt{2^n} \}\Bigg(q - \{\partial \over \partial q \}\Bigg)^{n}\psi_{0}(q) \implies $
+135
+136    $\psi_{n}(q) = \displaystyle\{1 \over \sqrt{n!}\}\{1 \over \sqrt{2^n} \}  H_{n}(q)  \psi_{0}(q) \implies \psi_{n}(q) = \displaystyle\{1 \over \sqrt{n!} \}\{1  \over \sqrt{2^n} \}  H_{n}(q) \Big(\pi^{-1/4}\Big) e^{-q^{2}/2} \implies$
+137
+138    $$\psi_{n}(q) = \displaystyle\Bigg(\{1 \over 2^n n!\sqrt{\pi} \}\Bigg)^{1/2} H_{n}(q) \quad e^{-q^{2}/2} \quad \mathbf{(8)}$$
+139
+140    where $\mathbf{q}$ is interpreted as the normalized field amplitude associated with the position quadrature ($\hat{q}$​) and has a dimensionless character similar to $\mathbf{x}$ [[10](#references)]. 
+141
+142    The wavefunction $\mathbf{n}$ of a Fock state is the projection of the state $\ket{n}$, and as we can observe, the wavefunctions of a Fock state for $n$-photon systems can be interpreted as a family of dimensionless energy eigenfunctions (Hermite functions), similar to those shown by equation $\mathbf{(7)}$ [[10](#references)].
+143
+144    ## 🔁 The Wavefunction Recurrence
+145
+146    In essence, Mr Mustard's strategy is to use the [Renormalized Hermite Polynomial](https://mrmustard.readthedocs.io/en/stable/code/api/mrmustard.math.hermite_renormalized.html) [[3, 4](#references)] for the computation of the wavefunction of a quantum harmonic oscillator. Below, we show the recurrence for calculating the Renormalized Hermite Polynomial, as well as the method for calculating it using the traditional Hermite polynomial:
+147
+148    $$H_{n+1}^{re}(x) = \displaystyle\{2 \over \sqrt{n+1} \}\Big[xH_{n}^{re}(x) - H_{n-1}^{re}(x)\sqrt{n-1}\Big] \quad \mathbf{(8)} $$ 
+149
+150    $$H_{n}^{re}(x) = \displaystyle\{H_{n}(x) \over \sqrt{n!}} \quad \mathbf{(10)} $$ 
+151
+152    When we use this polynomial in calculating the wavefunction of a Quantum Harmonic Oscillator, the equation is as follows:
+153
+154    $$\psi_{n}(x) = \displaystyle\Bigg(\{1 \over 2^n\sqrt{\pi} \}\Bigg)^{1/2}H_{n}^{re}(x) \quad e^{-\{x^2 \over 2 \}} \quad \mathbf{(11)} $$ 
+155
+156    In this package, we implemented a recurrence based on the recursive solution to the wavefunction of the Quantum Harmonic Oscillator presented in the work of *José Maria Pérez-Jordá* [[11](#references)]. The recurrence we implemented was for $\psi_{n+1}$, which we obtained from the recursive definition of the Hermite polynomial [[12](#references)], as suggested by *José Maria Pérez-Jordá* in his article:
+157
+158
+159    $H_{n+1}(x) = 2xH_{n}(x) - 2nH_{n-1}(x) \implies $
+160
+161
+162    $\Bigg( \displaystyle\{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)H_{n+1}(x) = \Bigg( \displaystyle\{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)2xH_{n}(x) -\Bigg( \displaystyle\{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)2nH_{n-1}(x) \implies$
+163
+164
+165    $\Bigg( \displaystyle\{e^{-x^{2}/2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)H_{n+1}(x) = \Bigg( \displaystyle\{e^{-x^{2}/2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)2xH_{n}(x) -2n\psi_{n-1}(x) \implies $
+166
+167
+168    $\displaystyle\{1 \over \sqrt{2n}\}\Bigg( \displaystyle\{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)H_{n+1}(x) = \{1 \over \sqrt{2n} \}\Bigg( \displaystyle\{e^{-x^2 /2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)2xH_{n}(x) -\{2n \over \sqrt{2n}\} \, \psi_{n-1}(x) \implies$
+169
+170
+171    $\Bigg(\displaystyle\{e^{-x^2 / 2} \over \sqrt{2^n n!\pi^{1/2}}\}\Bigg) H_{n+1}(x) = 2x\psi_{n}(x) - \{2n \over \sqrt{2n}\} \, \psi_{n-1}(x) \implies$
+172
+173
+174    $\displaystyle\Bigg(\{1 \over \sqrt{2(n+1)} \}\Bigg)\Bigg(\displaystyle\{e^{-x^2 / 2}  \over \sqrt{2^n n!\pi^{1/2}} \}\Bigg) H_{n+1}(x) = \displaystyle\Bigg(\{1 \over \sqrt{2(n+1)}\}\Bigg)2x\psi_{n}(x) - \displaystyle\Bigg(\{1 \over \sqrt{2(n+1)}\}\Bigg) \, \{2n \over \sqrt{2n} \} \, \psi_{n-1}(x) \implies$
+175
+176
+177    $$\psi_{n+1}(x) = \displaystyle\Bigg(\sqrt{2 \over n+1}\Bigg)x\psi_{n}(x) -\Bigg(\sqrt{n \over n+1}\Bigg)\psi_{n-1}(x) \quad \mathbf{(12)}$$
+178
+179    
+180    Besides the use of this recurrence in this package, the same authors implemented a version of it in a Cython module of QuTip: [_distributions.pyx](https://github.com/qutip/qutip/blob/master/qutip/_distributions.pyx), to be used in the HarmonicOscillatorWaveFunction class from the [distributions.py](https://github.com/qutip/qutip/blob/master/qutip/distributions.py) module.
+181
+182
+183    ## ⚡️The Numba Module - Hybrid Solution
+184
+185    We use a hybrid solution with two algorithms for calculating the wave function for calculating a single Fock wave function's values at multiple positions (Single Fock and Multiple Position) (`psi_n_single_fock_multiple_position`). For $n>60$ or more than 35 positions, we use the recurrence for the wave function. For $n\le 60$ and at most 35 positions we use a precomputed matrix with the normalized coefficients of the Hermite polynomial as follows:
+186
+187
+188    $$\psi_{i}(x) = \displaystyle\{1 \over \sqrt{2^i i!\pi^{1/2}}\}H_{i}(x)e^{-x^{2}/2} = \{1 \over \sqrt{2^{i}i!\pi^{1/2}}\}\mathbf{C_{n}[i]} \cdot  \mathbf{x^{p}} e^{-x^{2}/2} \implies $$
+189
+190
+191    $$\psi_{i}(x) = \mathbf{C^{s}_{n}[i]\cdot x^{p}e^{-x^{2}/2} \quad \mathbf{(13)}}$$
+192
+193
+194    where $\mathbf{C^{s}_{n}[i]}$ is the row vector of normalized coefficients that multiply each power of $x$ up to $x^n$. The entire matrix $\mathbf{C^s_n}$ of such rows is precomputed up to degree $n=60$.  $\mathbf{x^{p}}$ is a column vector of powers up to n, with zeros in places where the coefficient is zero; for example, for $i=3$, $\mathbf{x^{p}} = [x^{3}, 0.0, x^{1}, 0.0]^T$. This hybrid algorithm is also used in Single Fock and Single Position (`psi_n_single_fock_single_position`) problems, though it offers no computational advantage in these cases. Additionally, there is an argument named **CS_matrix** for these Single Fock functions, set to **True** to enable the use of this matrix. In other words, you can use only the recurrence relation for the wave function at any value. The use of this coefficient matrix is limited to values up to **60** (determined empirically), as beyond this point, the function may encounter precision errors, resulting in incoherent outputs [[13](#references)].
+195
+196    ## ⚡️ The Numba Module - Arguments
+197
+198    For this algorithm to perform as efficiently as possible, Numba's Just-in-Time compilation is used in conjunction with [lru_cache (Least Recently Used - Cache Management)](https://docs.python.org/3/library/functools.html). The following arguments were used in the **@nb.jit** decorator:
+199
+200    - **nopython=True:** This argument forces the Numba compiler to operate in "nopython" mode, which means that all the code within the function must be compilable to pure machine code without falling back to the Python interpreter. This results in significant performance improvements by eliminating the overhead of the Python interpreter.
+201    - **looplift=True:** This argument allows Numba to "lift" loops out of "nopython" mode. That is, if there are loops in the code that cannot be compiled in "nopython" mode, Numba will try to move them outside of the compiled part and execute them as normal Python code.
+202    - **nogil=True:** This argument releases the Python Global Interpreter Lock (GIL) while the function is executing. It is useful for allowing the Numba-compiled code to run in parallel with other Python threads, increasing performance in multi-threaded programs.
+203    - **boundscheck=False:** Disables array bounds checking. Normally, Numba checks if array indices are within valid bounds. Disabling this check can increase performance but may result in undefined behavior if there are out-of-bounds accesses.
+204    - **cache=True:** Enables caching of the compiled function. The first time the function is compiled, Numba stores the compiled version in a cache. On subsequent executions, Numba can reuse the compiled version from the cache instead of recompiling the function, reducing the function's startup time.
+205
+206    ## ⚙️ The Cython Module
+207
+208    The Cython module includes compiled files for Linux (**.so**) and Windows (**.pyd**), which allows it to be used in Google Colab (Linux). Additionally, this module supports three versions of Python 3: 3.10, 3.11, and 3.12. All these files are placed in the package folder upon installation. The source code of the Cython module is available in the repository in **.pyx** format. In the functions of the Cython module, some decorators are used to increase speed:
+209
+210    - **@cython.nogil**: This decorator allows a Cython function to release the Global Interpreter Lock (GIL), making it possible to execute that block of code concurrently in multiple threads.
+211    - **@cython.cfunc**:  This decorator tells Cython to treat the function as a C function, meaning it can be called from other Cython or C code, not just Python. The function will have C-level calling conventions.
+212    - **@cython.locals(...)**: Declares local variable types to optimize performance.
+213    - **@cython.boundscheck(False)**: Disables bounds checking for arrays/lists to boost speed, but at the cost of safety. 
+214
+215
+216    ## 📖 References
+217
+218    Our journey through the quantum realm is inspired by the following:
+219
+220    1. Lam, S. K., Pitrou, A., & Seibert, S. (2015). _Numba: A LLVM-based Python JIT compiler_. In _Proceedings of the Second Workshop on the LLVM Compiler Infrastructure in HPC_ (LLVM '15) (pp. 7-12). Association for Computing Machinery. https://doi.org/10.1145/2833157.2833162
+221    2. Behnel, S., Bradshaw, R., Citro, C., Dalcin, L., Seljebotn, D. S., & Smith, K. (2011). *Cython: The best of both worlds*. Computing in Science & Engineering, 13(2), 31-39. https://doi.org/10.1109/MCSE.2010.118
+222    3. Yao, Y., Miatto, F., & Quesada, N. (2024). _Riemannian optimization of photonic quantum circuits in phase and Fock space_ [Preprint]. arXiv:2209.06069. [https://doi.org/10.21468/SciPostPhys.17.3.082](https://doi.org/10.21468/SciPostPhys.17.3.082)
+223    4. Miatto, F. M., & Quesada, N. (2020). *_Fast optimization of parametrized quantum optical circuits_* (*Quantum*, 4, 366). [https://doi.org/10.22331/q-2020-11-30-366](https://doi.org/10.22331/q-2020-11-30-366)
+224    5. Bowers, P. L. (2020). *Lectures on Quantum Mechanics: A Primer for Mathematicians*. Cambridge University Press. ISBN: [1108429769](https://www.worldcat.org/isbn/1108429769) ([9781108429764](https://www.worldcat.org/isbn/9781108429764))
+225    6. Aerts, D., Beltran, L. *Quantum Structure in Cognition: Human Language as a Boson Gas of Entangled Words*. Found Sci 25, 755–802 (2020). [https://doi.org/10.1007/s10699-019-09633-4](https://doi.org/10.1007/s10699-019-09633-4)
+226    7. Beiser, A. (2003). *Concepts of Modern Physics*. 6th ed. McGraw Hill. ISBN: [0072448482](https://www.worldcat.org/isbn/0072448482) ([9780072448481](https://www.worldcat.org/isbn/9780072448481))
+227    8. Celeghini, E., Gadella, M., & del Olmo, M. A. (2021). *Hermite functions and Fourier series*. Symmetry, 13(5), Article 853. [https://doi.org/10.3390/sym13050853](https://doi.org/10.3390/sym13050853)
+228    9. Schleich, W. P. (2001). *Quantum optics in phase space*. Wiley-VCH. ISBN: [352729435X](https://www.worldcat.org/isbn/352729435X) ([9783527294350](https://www.worldcat.org/isbn/9783527294350))
+229    10. Leonhardt, U. (2010). Essential Quantum Optics: From Quantum Measurements to Black Holes. Cambridge: Cambridge University Press. ISBN: [0521869781](https://www.worldcat.org/isbn/0521869781) ([9780521869782](https://www.worldcat.org/isbn/9780521869782))
+230    11. Pérez-Jordá, J. M. (2017). *On the recursive solution of the quantum harmonic oscillator*. European Journal of Physics, 39(1), 015402. [https://doi.org/10.1088/1361-6404/aa9584](https://doi.org/10.1088/1361-6404/aa9584)
+231    12. Olver, F. W. J., & Maximon, L. C. (2010). *NIST Handbook of Mathematical Functions*. Cambridge University Press. ISBN: [0521192250](https://www.worldcat.org/isbn/0521192250) ([9780521192255](https://www.worldcat.org/isbn/9780521192255))
+232    13. Cordeiro, M., Bezerra, I. P., & Vasconcelos, H. H. M. (2024). *Efficient computation of the wave function ψn(x) using Hermite coefficient matrix in Python*. In 7º Workshop Escola de Computação e Informação Quântica (7ª WECIQ) (pp. 56-60). CEFET/RJ.
+233
+234    ## 🤝 Contributing
+235
+236    Contributions, whether filing an issue, proposing improvements, or submitting a pull request, are welcome! Please feel free to explore, ask questions, and share your ideas.
+237
+238    ## 📜 License
+239
+240    This project is available under the *BSD 3-Clause License*. See the LICENSE file for more details.
+241
+242    ## 📬 Contact
+243
+244    If you have any questions or want to reach out to the team, please send me an email at [matheusgomescord@gmail.com](matheusgomescord@gmail.com).
+245
+246"""
+
+ + +
+
+ + \ No newline at end of file diff --git a/docs/fast_wave/caching.html b/docs/fast_wave/caching.html new file mode 100644 index 0000000..09e39d6 --- /dev/null +++ b/docs/fast_wave/caching.html @@ -0,0 +1,1036 @@ + + + + + + + fast_wave.caching API documentation + + + + + + + + + + + + + +
+
+

+fast_wave.caching

+ + + + + + +
  1# Copyright 2022 Xanadu Quantum Technologies Inc.
+  2
+  3# Licensed under the Apache License, Version 2.0 (the "License");
+  4# you may not use this file except in compliance with the License.
+  5# You may obtain a copy of the License at
+  6
+  7#     http://www.apache.org/licenses/LICENSE-2.0
+  8
+  9# Unless required by applicable law or agreed to in writing, software
+ 10# distributed under the License is distributed on an "AS IS" BASIS,
+ 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ 12# See the License for the specific language governing permissions and
+ 13# limitations under the License.
+ 14
+ 15from functools import lru_cache, wraps
+ 16import numpy as np
+ 17
+ 18def int_array_cache_Numba_single_fock(fn):
+ 19    """
+ 20    Cache decorator for functions that receive real multiple positions (numpy array) 
+ 21    and is a problem Single Fock in the Numba module.
+ 22
+ 23    This decorator caches function results to improve performance, particularly when `fn` 
+ 24    is called multiple times with the same arguments. The function to be decorated must accept 
+ 25    an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is 
+ 26    converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types.
+ 27
+ 28    Args:
+ 29        fn (callable): The function to be decorated, which takes three arguments:
+ 30            - n (np.uint64): The state number.
+ 31            - x_array (np.ndarray[np.float64]): Array representing the positions.
+ 32            - CS_matrix (bool): A flag to indicate CS matrix.
+ 33
+ 34    Returns:
+ 35        `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information.
+ 36
+ 37    References:
+ 38        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+ 39        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+ 40    """
+ 41    @lru_cache
+ 42    def cached_wrapper(n, x_tuple, CS_matrix=True):
+ 43        x_array = np.array(x_tuple, dtype=np.float64)
+ 44        return fn(n, x_array, CS_matrix)
+ 45
+ 46    @wraps(fn)
+ 47    def wrapper(n, x_array, CS_matrix=True):
+ 48        return cached_wrapper(n, tuple(x_array), CS_matrix)
+ 49
+ 50    wrapper.cache_info = cached_wrapper.cache_info
+ 51    wrapper.cache_clear = cached_wrapper.cache_clear
+ 52
+ 53    return wrapper
+ 54
+ 55
+ 56def int_array_cache_Numba_multiple_fock(fn):
+ 57    """
+ 58    Cache decorator for functions that receive real multiple positions (numpy array) 
+ 59    and is a problem Multiple Fock in the Numba module.
+ 60
+ 61    This decorator caches function results to improve performance, particularly when `fn` 
+ 62    is called multiple times with the same arguments. The function to be decorated must accept 
+ 63    an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is 
+ 64    converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types.
+ 65
+ 66    Args:
+ 67        fn (callable): The function to be decorated, which takes two arguments:
+ 68            - n (np.uint64): The state number.
+ 69            - x_array (np.ndarray[np.float64]): Array representing the positions.
+ 70
+ 71    Returns:
+ 72        `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information.
+ 73
+ 74    References:
+ 75        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+ 76        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+ 77    """
+ 78    @lru_cache
+ 79    def cached_wrapper(n, x_tuple):
+ 80        x_array = np.array(x_tuple, dtype=np.float64)
+ 81        return fn(n, x_array)
+ 82
+ 83    @wraps(fn)
+ 84    def wrapper(n, x_array):
+ 85        return cached_wrapper(n, tuple(x_array))
+ 86
+ 87    wrapper.cache_info = cached_wrapper.cache_info
+ 88    wrapper.cache_clear = cached_wrapper.cache_clear
+ 89
+ 90    return wrapper
+ 91
+ 92
+ 93def int_array_cache_Cython(fn):
+ 94    """
+ 95    Cache decorator for functions that receive real multiple positions (numpy array) 
+ 96    in the Cython module.
+ 97
+ 98    This decorator caches function results to improve performance, particularly when `fn` 
+ 99    is called multiple times with the same arguments. The function to be decorated must accept 
+100    an integer `n` and a numpy array `x_array`. The numpy array is converted to a tuple for 
+101    caching purposes, as `lru_cache` only accepts hashable types.
+102
+103    Args:
+104        fn (callable): The function to be decorated, which takes two arguments:
+105            - n (np.uint64): The state number.
+106            - x_array (np.ndarray[np.float64]): Array representing the positions.
+107
+108    Returns:
+109        `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information.
+110
+111    References:
+112        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+113        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+114    """
+115    @lru_cache
+116    def cached_wrapper(n, x_tuple):
+117        x_array = np.array(x_tuple, dtype=np.float64)
+118        return fn(n, x_array)
+119
+120    @wraps(fn)
+121    def wrapper(n, x_array):
+122        return cached_wrapper(n, tuple(x_array))
+123
+124    wrapper.cache_info = cached_wrapper.cache_info
+125    wrapper.cache_clear = cached_wrapper.cache_clear
+126
+127    return wrapper
+128
+129
+130def int_array_cache_Numba_complex_single_fock(fn):
+131    """
+132    Cache decorator for functions that receive complex multiple positions (numpy array) 
+133    and is a problem Single Fock in the Numba module.
+134
+135    This decorator caches function results to improve performance, particularly when `fn` 
+136    is called multiple times with the same arguments. The function to be decorated must accept 
+137    an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is 
+138    converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types.
+139
+140    Args:
+141        fn (callable): The function to be decorated, which takes three arguments:
+142            - n (np.uint64): The state number.
+143            - x_array (np.ndarray[np.complex128]): Array representing the positions.
+144            - CS_matrix (bool): A flag to indicate CS matrix.
+145
+146    Returns:
+147        `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information.
+148         
+149    References:
+150        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+151        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+152    """
+153    @lru_cache
+154    def cached_wrapper(n, x_tuple, CS_matrix):
+155        x_array = np.array(x_tuple, dtype=np.complex128)
+156        return fn(n, x_array, CS_matrix)
+157
+158    @wraps(fn)
+159    def wrapper(n, x_array, CS_matrix):
+160        return cached_wrapper(n, tuple(x_array), CS_matrix)
+161
+162    wrapper.cache_info = cached_wrapper.cache_info
+163    wrapper.cache_clear = cached_wrapper.cache_clear
+164
+165    return wrapper
+166
+167
+168def int_array_cache_Numba_complex_multiple_fock(fn):
+169    """
+170    Cache decorator for functions that receive complex multiple positions (numpy array) 
+171    in the Numba module.
+172
+173    This decorator caches function results to improve performance, particularly when `fn` 
+174    is called multiple times with the same arguments. The function to be decorated must accept 
+175    an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is 
+176    converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types.
+177
+178    Args:
+179        fn (callable): The function to be decorated, which takes two arguments:
+180            - n (np.uint64): The state number.
+181            - x_array (np.ndarray[np.complex128]): Array representing the positions.
+182
+183    Returns:
+184        `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information.
+185
+186    References:
+187        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+188        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+189    """
+190    @lru_cache
+191    def cached_wrapper(n, x_tuple):
+192        x_array = np.array(x_tuple, dtype=np.complex128)
+193        return fn(n, x_array)
+194
+195    @wraps(fn)
+196    def wrapper(n, x_array):
+197        return cached_wrapper(n, tuple(x_array))
+198
+199    wrapper.cache_info = cached_wrapper.cache_info
+200    wrapper.cache_clear = cached_wrapper.cache_clear
+201
+202    return wrapper
+203
+204def int_array_cache_Cython_complex(fn):
+205    """
+206    Cache decorator for functions that receive complex multiple positions (numpy array)
+207    and is a problem Single Fock in the Cython module.
+208
+209    This decorator caches function results to improve performance, particularly when `fn`
+210    is called multiple times with the same arguments. The function to be decorated must accept 
+211    an integer `n` and a numpy array `x_array`. The numpy array is converted to a tuple for 
+212    caching purposes, as `lru_cache` only accepts hashable types.
+213
+214    Args:
+215        fn (callable): The function to be decorated. It must take two arguments:
+216            - n (np.uint64): The state number.
+217            - x_array (np.ndarray of dtype=np.complex128): The positions.
+218
+219    Returns:
+220        `callable` : A wrapped version of **fn** with caching enabled. This wrapped function also exposes the following methods for cache management.
+221
+222    References:
+223        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+224        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+225    """
+226    @lru_cache
+227    def cached_wrapper(n, x_tuple):
+228        x_array = np.array(x_tuple, dtype=np.complex128)
+229        return fn(n, x_array)
+230
+231    @wraps(fn)
+232    def wrapper(n, x_array):
+233        return cached_wrapper(n, tuple(x_array))
+234
+235    wrapper.cache_info = cached_wrapper.cache_info
+236    wrapper.cache_clear = cached_wrapper.cache_clear
+237
+238    return wrapper
+
+ + +
+
+ +
+ + def + int_array_cache_Numba_single_fock(fn): + + + +
+ +
19def int_array_cache_Numba_single_fock(fn):
+20    """
+21    Cache decorator for functions that receive real multiple positions (numpy array) 
+22    and is a problem Single Fock in the Numba module.
+23
+24    This decorator caches function results to improve performance, particularly when `fn` 
+25    is called multiple times with the same arguments. The function to be decorated must accept 
+26    an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is 
+27    converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types.
+28
+29    Args:
+30        fn (callable): The function to be decorated, which takes three arguments:
+31            - n (np.uint64): The state number.
+32            - x_array (np.ndarray[np.float64]): Array representing the positions.
+33            - CS_matrix (bool): A flag to indicate CS matrix.
+34
+35    Returns:
+36        `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information.
+37
+38    References:
+39        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+40        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+41    """
+42    @lru_cache
+43    def cached_wrapper(n, x_tuple, CS_matrix=True):
+44        x_array = np.array(x_tuple, dtype=np.float64)
+45        return fn(n, x_array, CS_matrix)
+46
+47    @wraps(fn)
+48    def wrapper(n, x_array, CS_matrix=True):
+49        return cached_wrapper(n, tuple(x_array), CS_matrix)
+50
+51    wrapper.cache_info = cached_wrapper.cache_info
+52    wrapper.cache_clear = cached_wrapper.cache_clear
+53
+54    return wrapper
+
+ + +

Cache decorator for functions that receive real multiple positions (numpy array) +and is a problem Single Fock in the Numba module.

+ +

This decorator caches function results to improve performance, particularly when fn +is called multiple times with the same arguments. The function to be decorated must accept +an integer n, a numpy array x_array, and a boolean CS_matrix. The numpy array is +converted to a tuple for caching purposes, as lru_cache only accepts hashable types.

+ +
Arguments:
+ +
    +
  • fn (callable): The function to be decorated, which takes three arguments: +
      +
    • n (np.uint64): The state number.
    • +
    • x_array (np.ndarray[np.float64]): Array representing the positions.
    • +
    • CS_matrix (bool): A flag to indicate CS matrix.
    • +
  • +
+ +
Returns:
+ +
+

callable : A wrapped version of fn with caching enabled, including methods to access cache information.

+
+ +
References:
+ +
+
    +
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. +
+
+
+ + +
+
+ +
+ + def + int_array_cache_Numba_multiple_fock(fn): + + + +
+ +
57def int_array_cache_Numba_multiple_fock(fn):
+58    """
+59    Cache decorator for functions that receive real multiple positions (numpy array) 
+60    and is a problem Multiple Fock in the Numba module.
+61
+62    This decorator caches function results to improve performance, particularly when `fn` 
+63    is called multiple times with the same arguments. The function to be decorated must accept 
+64    an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is 
+65    converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types.
+66
+67    Args:
+68        fn (callable): The function to be decorated, which takes two arguments:
+69            - n (np.uint64): The state number.
+70            - x_array (np.ndarray[np.float64]): Array representing the positions.
+71
+72    Returns:
+73        `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information.
+74
+75    References:
+76        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+77        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+78    """
+79    @lru_cache
+80    def cached_wrapper(n, x_tuple):
+81        x_array = np.array(x_tuple, dtype=np.float64)
+82        return fn(n, x_array)
+83
+84    @wraps(fn)
+85    def wrapper(n, x_array):
+86        return cached_wrapper(n, tuple(x_array))
+87
+88    wrapper.cache_info = cached_wrapper.cache_info
+89    wrapper.cache_clear = cached_wrapper.cache_clear
+90
+91    return wrapper
+
+ + +

Cache decorator for functions that receive real multiple positions (numpy array) +and is a problem Multiple Fock in the Numba module.

+ +

This decorator caches function results to improve performance, particularly when fn +is called multiple times with the same arguments. The function to be decorated must accept +an integer n, a numpy array x_array, and a boolean CS_matrix. The numpy array is +converted to a tuple for caching purposes, as lru_cache only accepts hashable types.

+ +
Arguments:
+ +
    +
  • fn (callable): The function to be decorated, which takes two arguments: +
      +
    • n (np.uint64): The state number.
    • +
    • x_array (np.ndarray[np.float64]): Array representing the positions.
    • +
  • +
+ +
Returns:
+ +
+

callable : A wrapped version of fn with caching enabled, including methods to access cache information.

+
+ +
References:
+ +
+
    +
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. +
+
+
+ + +
+
+ +
+ + def + int_array_cache_Cython(fn): + + + +
+ +
 94def int_array_cache_Cython(fn):
+ 95    """
+ 96    Cache decorator for functions that receive real multiple positions (numpy array) 
+ 97    in the Cython module.
+ 98
+ 99    This decorator caches function results to improve performance, particularly when `fn` 
+100    is called multiple times with the same arguments. The function to be decorated must accept 
+101    an integer `n` and a numpy array `x_array`. The numpy array is converted to a tuple for 
+102    caching purposes, as `lru_cache` only accepts hashable types.
+103
+104    Args:
+105        fn (callable): The function to be decorated, which takes two arguments:
+106            - n (np.uint64): The state number.
+107            - x_array (np.ndarray[np.float64]): Array representing the positions.
+108
+109    Returns:
+110        `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information.
+111
+112    References:
+113        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+114        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+115    """
+116    @lru_cache
+117    def cached_wrapper(n, x_tuple):
+118        x_array = np.array(x_tuple, dtype=np.float64)
+119        return fn(n, x_array)
+120
+121    @wraps(fn)
+122    def wrapper(n, x_array):
+123        return cached_wrapper(n, tuple(x_array))
+124
+125    wrapper.cache_info = cached_wrapper.cache_info
+126    wrapper.cache_clear = cached_wrapper.cache_clear
+127
+128    return wrapper
+
+ + +

Cache decorator for functions that receive real multiple positions (numpy array) +in the Cython module.

+ +

This decorator caches function results to improve performance, particularly when fn +is called multiple times with the same arguments. The function to be decorated must accept +an integer n and a numpy array x_array. The numpy array is converted to a tuple for +caching purposes, as lru_cache only accepts hashable types.

+ +
Arguments:
+ +
    +
  • fn (callable): The function to be decorated, which takes two arguments: +
      +
    • n (np.uint64): The state number.
    • +
    • x_array (np.ndarray[np.float64]): Array representing the positions.
    • +
  • +
+ +
Returns:
+ +
+

callable : A wrapped version of fn with caching enabled, including methods to access cache information.

+
+ +
References:
+ +
+
    +
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. +
+
+
+ + +
+
+ +
+ + def + int_array_cache_Numba_complex_single_fock(fn): + + + +
+ +
131def int_array_cache_Numba_complex_single_fock(fn):
+132    """
+133    Cache decorator for functions that receive complex multiple positions (numpy array) 
+134    and is a problem Single Fock in the Numba module.
+135
+136    This decorator caches function results to improve performance, particularly when `fn` 
+137    is called multiple times with the same arguments. The function to be decorated must accept 
+138    an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is 
+139    converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types.
+140
+141    Args:
+142        fn (callable): The function to be decorated, which takes three arguments:
+143            - n (np.uint64): The state number.
+144            - x_array (np.ndarray[np.complex128]): Array representing the positions.
+145            - CS_matrix (bool): A flag to indicate CS matrix.
+146
+147    Returns:
+148        `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information.
+149         
+150    References:
+151        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+152        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+153    """
+154    @lru_cache
+155    def cached_wrapper(n, x_tuple, CS_matrix):
+156        x_array = np.array(x_tuple, dtype=np.complex128)
+157        return fn(n, x_array, CS_matrix)
+158
+159    @wraps(fn)
+160    def wrapper(n, x_array, CS_matrix):
+161        return cached_wrapper(n, tuple(x_array), CS_matrix)
+162
+163    wrapper.cache_info = cached_wrapper.cache_info
+164    wrapper.cache_clear = cached_wrapper.cache_clear
+165
+166    return wrapper
+
+ + +

Cache decorator for functions that receive complex multiple positions (numpy array) +and is a problem Single Fock in the Numba module.

+ +

This decorator caches function results to improve performance, particularly when fn +is called multiple times with the same arguments. The function to be decorated must accept +an integer n, a numpy array x_array, and a boolean CS_matrix. The numpy array is +converted to a tuple for caching purposes, as lru_cache only accepts hashable types.

+ +
Arguments:
+ +
    +
  • fn (callable): The function to be decorated, which takes three arguments: +
      +
    • n (np.uint64): The state number.
    • +
    • x_array (np.ndarray[np.complex128]): Array representing the positions.
    • +
    • CS_matrix (bool): A flag to indicate CS matrix.
    • +
  • +
+ +
Returns:
+ +
+

callable : A wrapped version of fn with caching enabled, including methods to access cache information.

+
+ +
References:
+ +
+
    +
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. +
+
+
+ + +
+
+ +
+ + def + int_array_cache_Numba_complex_multiple_fock(fn): + + + +
+ +
169def int_array_cache_Numba_complex_multiple_fock(fn):
+170    """
+171    Cache decorator for functions that receive complex multiple positions (numpy array) 
+172    in the Numba module.
+173
+174    This decorator caches function results to improve performance, particularly when `fn` 
+175    is called multiple times with the same arguments. The function to be decorated must accept 
+176    an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is 
+177    converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types.
+178
+179    Args:
+180        fn (callable): The function to be decorated, which takes two arguments:
+181            - n (np.uint64): The state number.
+182            - x_array (np.ndarray[np.complex128]): Array representing the positions.
+183
+184    Returns:
+185        `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information.
+186
+187    References:
+188        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+189        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+190    """
+191    @lru_cache
+192    def cached_wrapper(n, x_tuple):
+193        x_array = np.array(x_tuple, dtype=np.complex128)
+194        return fn(n, x_array)
+195
+196    @wraps(fn)
+197    def wrapper(n, x_array):
+198        return cached_wrapper(n, tuple(x_array))
+199
+200    wrapper.cache_info = cached_wrapper.cache_info
+201    wrapper.cache_clear = cached_wrapper.cache_clear
+202
+203    return wrapper
+
+ + +

Cache decorator for functions that receive complex multiple positions (numpy array) +in the Numba module.

+ +

This decorator caches function results to improve performance, particularly when fn +is called multiple times with the same arguments. The function to be decorated must accept +an integer n, a numpy array x_array, and a boolean CS_matrix. The numpy array is +converted to a tuple for caching purposes, as lru_cache only accepts hashable types.

+ +
Arguments:
+ +
    +
  • fn (callable): The function to be decorated, which takes two arguments: +
      +
    • n (np.uint64): The state number.
    • +
    • x_array (np.ndarray[np.complex128]): Array representing the positions.
    • +
  • +
+ +
Returns:
+ +
+

callable : A wrapped version of fn with caching enabled, including methods to access cache information.

+
+ +
References:
+ +
+
    +
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. +
+
+
+ + +
+
+ +
+ + def + int_array_cache_Cython_complex(fn): + + + +
+ +
205def int_array_cache_Cython_complex(fn):
+206    """
+207    Cache decorator for functions that receive complex multiple positions (numpy array)
+208    and is a problem Single Fock in the Cython module.
+209
+210    This decorator caches function results to improve performance, particularly when `fn`
+211    is called multiple times with the same arguments. The function to be decorated must accept 
+212    an integer `n` and a numpy array `x_array`. The numpy array is converted to a tuple for 
+213    caching purposes, as `lru_cache` only accepts hashable types.
+214
+215    Args:
+216        fn (callable): The function to be decorated. It must take two arguments:
+217            - n (np.uint64): The state number.
+218            - x_array (np.ndarray of dtype=np.complex128): The positions.
+219
+220    Returns:
+221        `callable` : A wrapped version of **fn** with caching enabled. This wrapped function also exposes the following methods for cache management.
+222
+223    References:
+224        1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)),
+225        which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
+226    """
+227    @lru_cache
+228    def cached_wrapper(n, x_tuple):
+229        x_array = np.array(x_tuple, dtype=np.complex128)
+230        return fn(n, x_array)
+231
+232    @wraps(fn)
+233    def wrapper(n, x_array):
+234        return cached_wrapper(n, tuple(x_array))
+235
+236    wrapper.cache_info = cached_wrapper.cache_info
+237    wrapper.cache_clear = cached_wrapper.cache_clear
+238
+239    return wrapper
+
+ + +

Cache decorator for functions that receive complex multiple positions (numpy array) +and is a problem Single Fock in the Cython module.

+ +

This decorator caches function results to improve performance, particularly when fn +is called multiple times with the same arguments. The function to be decorated must accept +an integer n and a numpy array x_array. The numpy array is converted to a tuple for +caching purposes, as lru_cache only accepts hashable types.

+ +
Arguments:
+ +
    +
  • fn (callable): The function to be decorated. It must take two arguments: +
      +
    • n (np.uint64): The state number.
    • +
    • x_array (np.ndarray of dtype=np.complex128): The positions.
    • +
  • +
+ +
Returns:
+ +
+

callable : A wrapped version of fn with caching enabled. This wrapped function also exposes the following methods for cache management.

+
+ +
References:
+ +
+
    +
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. +
+
+
+ + +
+
+ + \ No newline at end of file diff --git a/docs/fast_wave/wavefunction_cython.html b/docs/fast_wave/wavefunction_cython.html new file mode 100644 index 0000000..652efe2 --- /dev/null +++ b/docs/fast_wave/wavefunction_cython.html @@ -0,0 +1,674 @@ + + + + + + + fast_wave.wavefunction_cython API documentation + + + + + + + + + + + + + +
+
+

+fast_wave.wavefunction_cython

+ + + + + +
+
+
+ + def + psi_n_single_fock_single_position(n, x): + + +
+ + +

Compute the wavefunction for a real scalar x using the adapted recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (double): Position at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

double : The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_single_position(0, 1.0)
+0.45558067201133257
+>>> psi_n_single_fock_single_position(61, 1.0)
+-0.2393049199171131
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+
+ + def + psi_n_single_fock_single_position_complex(n, x): + + +
+ + +

Compute the wavefunction for a complex scalar x using the adapted recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (double complex): Position at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

double complex : The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j)
+(-1.4008797330262455-3.0609780602975003j)
+>>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j)
+(-511062135.47555304+131445997.75753704j)
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+
+ + def + psi_n_single_fock_multiple_position(n, x): + + +
+ + +

Compute the wavefunction for a real vector x using the adapted recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (np.ndarray[np.float64_t]): Position at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

np.ndarray[np.float64_t] : The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]))
+array([0.45558067, 0.10165379])
+>>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]))
+array([-0.23930492, -0.01677378])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+
+ + def + psi_n_single_fock_multiple_position_complex(n, x): + + +
+ + +

Compute the wavefunction for a complex vector x using the adapted recurrence relation.

+ +

There is another version of this code, implemented by the same authors who developed this function, in a Cython module of QuTip: _distributions.pyx, to be used in the HarmonicOscillatorWaveFunction class from the distributions.py module.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (np.ndarray[np.complex128_t]): Position at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

np.ndarray[np.complex128_t]: The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+array([ 0.40583486-0.63205035j, -0.49096842+0.56845369j])
+>>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+array([-7.56548941e+03+9.21498621e+02j, -1.64189542e+08-3.70892077e+08j])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+
+ + def + psi_n_multiple_fock_single_position(n, x): + + +
+ + +

Compute the wavefunction for a real scalar x to all Fock states up to n using the adapted recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (double): Position at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

np.ndarray[np.float64_t] : The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_multiple_fock_single_position(0, 1.0)
+array([0.45558067, 0.64428837])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+
+ + def + psi_n_multiple_fock_single_position_complex(n, x): + + +
+ + +

Compute the wavefunction for a complex scalar x to all Fock states up to n using the adapted recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (double complex): Position at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

np.ndarray[np.complex128_t] : The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_multiple_fock_single_position_complex(0, 1.0 + 2.0j)
+array([-1.40087973-3.06097806j,  6.67661026-8.29116292j])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+
+ + def + psi_n_multiple_fock_multiple_position(n, x): + + +
+ + +

Compute the wavefunction for a real vector x to all Fock states up to n using the adapted recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (np.ndarray[np.float64_t]): Positions at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

np.ndarray[np.ndarray[np.float64_t]]: The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_multiple_fock_multiple_position(1, np.array([1.0, 2.0]))
+array([[0.45558067, 0.10165379],
+       [0.64428837, 0.28752033]])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+
+ + def + psi_n_multiple_fock_multiple_position_complex(n, x): + + +
+ + +

Compute the wavefunction for a complex vector x to all Fock states up to n using the adapted recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (np.ndarray[np.complex128_t]): Positions at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

np.ndarray[np.ndarray[np.complex128_t]]: The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_multiple_fock_multiple_position_complex(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+array([[ 0.40583486-0.63205035j, -0.49096842+0.56845369j],
+       [ 1.46779135-0.31991701j, -2.99649822+0.21916143j]])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+ + \ No newline at end of file diff --git a/docs/fast_wave/wavefunction_mpmath.html b/docs/fast_wave/wavefunction_mpmath.html new file mode 100644 index 0000000..e43597a --- /dev/null +++ b/docs/fast_wave/wavefunction_mpmath.html @@ -0,0 +1,1161 @@ + + + + + + + fast_wave.wavefunction_mpmath API documentation + + + + + + + + + + + + + +
+
+

+fast_wave.wavefunction_mpmath

+ + + + + + +
  1# BSD 3-Clause License
+  2#
+  3# Copyright (c) 2024, Matheus Gomes Cordeiro 
+  4# All rights reserved.
+  5#
+  6# Redistribution and use in source and binary forms, with or without
+  7# modification, are permitted provided that the following conditions are met:
+  8#
+  9# 1. Redistributions of source code must retain the above copyright notice, this
+ 10#    list of conditions and the following disclaimer.
+ 11#
+ 12# 2. Redistributions in binary form must reproduce the above copyright notice,
+ 13#    this list of conditions and the following disclaimer in the documentation
+ 14#    and/or other materials provided with the distribution.
+ 15#
+ 16# 3. Neither the name of the copyright holder nor the names of its
+ 17#    contributors may be used to endorse or promote products derived from
+ 18#    this software without specific prior written permission.
+ 19#
+ 20# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ 21# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ 22# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ 23# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ 24# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ 25# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ 26# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ 27# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ 28# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ 29# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ 30
+ 31from mpmath import mp, matrix
+ 32
+ 33def psi_n_single_fock_single_position(n, x, prec):
+ 34    """
+ 35    Calculates the nth wavefunction for a real scalar `x` with arbitrary precision using mpmath.
+ 36
+ 37    Args:
+ 38        n (int): Quantum state number.
+ 39        x (float): Position at which to evaluate the wavefunction.
+ 40        prec (numpy.uint64): Desired precision for the calculation (number of decimal digits).
+ 41
+ 42    Returns:
+ 43        `mpmath.ctx_mp_python.mpf` : evaluated wavefunction with the specified precision.
+ 44
+ 45    Examples:
+ 46        >>> psi_n_single_fock_single_position(0, 1.0, 60)
+ 47        mpf('0.45558067201133253483370525689785138607662639040929439687915331')
+ 48        >>> psi_n_single_fock_single_position(61, 1.0, 60)
+ 49        mpf('-0.239304919917113097789996116536717211865611421191819349290628243')
+ 50
+ 51    References:
+ 52        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision 
+ 53        floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+ 54    """
+ 55
+ 56    mp.dps = prec
+ 57    x = mp.mpf(str(x))
+ 58    n = mp.mpf(str(n))
+ 59    return  mp.hermite(n, x) * mp.power(mp.mpf('2.0'),(mp.mpf('-0.5') * n)) * mp.power(mp.gamma(n+1.0), mp.mpf('-0.5')) * mp.power(mp.pi , mp.mpf('-0.25')) * mp.exp(-mp.power(x , mp.mpf('2.0')) / mp.mpf('2.0')) 
+ 60
+ 61def psi_n_single_fock_single_position_complex(n, x, prec):
+ 62    """
+ 63    Calculates the nth wavefunction for a complex scalar `x` with arbitrary precision using mpmath.
+ 64
+ 65    Args:
+ 66        n (np.uint64): Quantum state number.
+ 67        x (np.complex128): Position at which to evaluate the wavefunction.
+ 68        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+ 69
+ 70    Returns:
+ 71        `mpmath.ctx_mp_python.mpc` : The evaluated wavefunction with the specified precision.
+ 72
+ 73    Examples:
+ 74        >>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j, 60)
+ 75        mpc(real='-1.40087973302624535996319358379185603705205815719366827159881527', imag='-3.06097806029750039193292973729038840279841978760336147713769087')
+ 76        >>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j, 60)
+ 77        mpc(real='-511062135.475553070892329856229109412939170026007243421420322129', imag='131445997.757536932748911867174534983962121585813389430606204944')
+ 78
+ 79    References:
+ 80        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+ 81    """
+ 82
+ 83    mp.dps = prec
+ 84    x = mp.mpc(str(x.real),str(x.imag))
+ 85    n = mp.mpf(str(n))
+ 86    return  mp.hermite(n, x) * mp.power(mp.mpf('2.0'),(mp.mpf('-0.5') * n)) * mp.power(mp.gamma(n+1.0), mp.mpf('-0.5')) * mp.power(mp.pi , mp.mpf('-0.25')) * mp.exp(-mp.power(x , mp.mpf('2.0')) / mp.mpf('2.0')) 
+ 87
+ 88def psi_n_single_fock_multiple_position(n, X, prec):
+ 89    """
+ 90    Calculates the nth wavefunction for a real vector `x` with arbitrary precision using mpmath.
+ 91
+ 92    Args:
+ 93        n (np.uint64): Quantum state number.
+ 94        x (np.ndarray[np.float64]): Positions at which to evaluate the wavefunction.
+ 95        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+ 96
+ 97    Returns:
+ 98        `mpmath.matrices.matrices._matrix` : The evaluated wavefunction with the specified precision.
+ 99
+100    Examples:
+101        >>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]), 20)
+102        matrix(
+103        [['0.45558067201133253483', '0.10165378830641791152']])
+104        >>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]), 20)
+105        matrix(
+106        [['-0.23930491991711309779', '-0.016773782204892582343']])
+107
+108    References:
+109        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+110    """
+111
+112    return  matrix([psi_n_single_fock_single_position(n, x, prec) for x in X]).T
+113
+114def psi_n_single_fock_multiple_position_complex(n, X, prec):
+115    """
+116    Calculates the nth wavefunction for a complex vector `x` with arbitrary precision using mpmath.
+117
+118    Args:
+119        n (np.uint64): Quantum state number.
+120        x (np.ndarray[np.complex128]): Positions at which to evaluate the wavefunction.
+121        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+122
+123    Returns:
+124        `mpmath.matrices.matrices._matrix` : The evaluated wavefunction with the specified precision.
+125
+126    Examples:
+127        >>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)
+128        matrix(
+129        [[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), 
+130        mpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')]])
+131        >>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)
+132        matrix(
+133        [[mpc(real='-7565.4894098859360141926', imag='921.4986211518276840917'), 
+134        mpc(real='-164189541.53192908120809', imag='-370892077.23796911662203')]])
+135
+136    References:
+137        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+138    """
+139
+140
+141    return  matrix([psi_n_single_fock_single_position_complex(n, x, prec) for x in X]).T
+142
+143def psi_n_multiple_fock_single_position(n, x, prec):
+144
+145    """
+146    Determines the wavefunction for a real scalar `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations.
+147
+148    Args:
+149        n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
+150        x (np.float64): Position at which to evaluate the wavefunctions.
+151        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+152
+153    Returns:
+154        `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision.
+155
+156    Examples:
+157        >>> psi_n_multiple_fock_single_position(1, 1.0, 60)
+158        matrix(
+159        [['0.455580672011332534833705256897851386076626390409294396879153', 
+160        '0.644288365113475181510837645362740498634994248687269122618738']])
+161
+162    References:
+163        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+164    """
+165
+166    return  matrix([psi_n_single_fock_single_position(i, x, prec) for i in range(n+1)]).T
+167
+168def psi_n_multiple_fock_single_position_complex(n, x, prec):
+169    """
+170    Determines the wavefunction for a complex scalar `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations.
+171
+172    Args:
+173        n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
+174        x (np.complex128): Position at which to evaluate the wavefunctions.
+175        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+176
+177    Returns:
+178        `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision.
+179
+180    Examples:
+181        >>> c_wavefunction_mmod_arb_prec(1, 1.0 + 2.0j, 20)
+182        matrix(
+183        [[mpc(real='-1.400879733026245359964', imag='-3.0609780602975003919354'), 
+184        mpc(real='6.6766102562991123531695', imag='-8.2911629223978481324862')]])
+185
+186    References:
+187        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+188    """
+189
+190    return  matrix([psi_n_single_fock_single_position_complex(i, x, prec) for i in range(n+1)]).T
+191
+192def psi_n_multiple_fock_multiple_position(n, X, prec):   
+193    """
+194    Determines the wavefunction for a real vector `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations.
+195
+196    Args:
+197        n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
+198        x (np.ndarray[np.float64]): Positions at which to evaluate the wavefunctions.
+199        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+200
+201    Returns:
+202        `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision.
+203
+204    Examples:
+205        >>> wavefunction_mmmd_arb_prec(1, np.array([1.0, 2.0]), 20)
+206        matrix(
+207        [['0.45558067201133253483', '0.10165378830641791152'],
+208        ['0.64428836511347518151', '0.28752033217907949445']])
+209
+210    References:
+211        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+212    """
+213
+214    return  matrix([[psi_n_single_fock_single_position(i, x, prec) for x in X] for i in range(n+1)])
+215
+216def psi_n_multiple_fock_multiple_position_complex(n, X, prec):   
+217    """
+218    Determines the wavefunction for a complex vector `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations.
+219
+220    Args:
+221        n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
+222        x (np.ndarray[np.complex128]): Positions at which to evaluate the wavefunctions.
+223        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+224
+225    Returns:
+226        `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision.
+227
+228    Examples:
+229        >>> c_wavefunction_mmmd_arb_prec(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)
+230        [[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), 
+231        mpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')],
+232        [mpc(real='1.4677913476441970351171', imag='-0.31991701106983521979673'), 
+233        mpc(real='-2.9964982238469495343176', imag='0.21916142736845211639935')]]
+234
+235    References:
+236        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+237    """
+238
+239    return  matrix([[psi_n_single_fock_single_position_complex(i, x, prec) for x in X] for i in range(n+1)])
+
+ + +
+
+ +
+ + def + psi_n_single_fock_single_position(n, x, prec): + + + +
+ +
34def psi_n_single_fock_single_position(n, x, prec):
+35    """
+36    Calculates the nth wavefunction for a real scalar `x` with arbitrary precision using mpmath.
+37
+38    Args:
+39        n (int): Quantum state number.
+40        x (float): Position at which to evaluate the wavefunction.
+41        prec (numpy.uint64): Desired precision for the calculation (number of decimal digits).
+42
+43    Returns:
+44        `mpmath.ctx_mp_python.mpf` : evaluated wavefunction with the specified precision.
+45
+46    Examples:
+47        >>> psi_n_single_fock_single_position(0, 1.0, 60)
+48        mpf('0.45558067201133253483370525689785138607662639040929439687915331')
+49        >>> psi_n_single_fock_single_position(61, 1.0, 60)
+50        mpf('-0.239304919917113097789996116536717211865611421191819349290628243')
+51
+52    References:
+53        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision 
+54        floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+55    """
+56
+57    mp.dps = prec
+58    x = mp.mpf(str(x))
+59    n = mp.mpf(str(n))
+60    return  mp.hermite(n, x) * mp.power(mp.mpf('2.0'),(mp.mpf('-0.5') * n)) * mp.power(mp.gamma(n+1.0), mp.mpf('-0.5')) * mp.power(mp.pi , mp.mpf('-0.25')) * mp.exp(-mp.power(x , mp.mpf('2.0')) / mp.mpf('2.0')) 
+
+ + +

Calculates the nth wavefunction for a real scalar x with arbitrary precision using mpmath.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (float): Position at which to evaluate the wavefunction.
  • +
  • prec (numpy.uint64): Desired precision for the calculation (number of decimal digits).
  • +
+ +
Returns:
+ +
+

mpmath.ctx_mp_python.mpf : evaluated wavefunction with the specified precision.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_single_position(0, 1.0, 60)
+mpf('0.45558067201133253483370525689785138607662639040929439687915331')
+>>> psi_n_single_fock_single_position(61, 1.0, 60)
+mpf('-0.239304919917113097789996116536717211865611421191819349290628243')
+
+
+
+ +
References:
+ +
+
    +
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision + floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. +
+
+
+ + +
+
+ +
+ + def + psi_n_single_fock_single_position_complex(n, x, prec): + + + +
+ +
62def psi_n_single_fock_single_position_complex(n, x, prec):
+63    """
+64    Calculates the nth wavefunction for a complex scalar `x` with arbitrary precision using mpmath.
+65
+66    Args:
+67        n (np.uint64): Quantum state number.
+68        x (np.complex128): Position at which to evaluate the wavefunction.
+69        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+70
+71    Returns:
+72        `mpmath.ctx_mp_python.mpc` : The evaluated wavefunction with the specified precision.
+73
+74    Examples:
+75        >>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j, 60)
+76        mpc(real='-1.40087973302624535996319358379185603705205815719366827159881527', imag='-3.06097806029750039193292973729038840279841978760336147713769087')
+77        >>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j, 60)
+78        mpc(real='-511062135.475553070892329856229109412939170026007243421420322129', imag='131445997.757536932748911867174534983962121585813389430606204944')
+79
+80    References:
+81        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+82    """
+83
+84    mp.dps = prec
+85    x = mp.mpc(str(x.real),str(x.imag))
+86    n = mp.mpf(str(n))
+87    return  mp.hermite(n, x) * mp.power(mp.mpf('2.0'),(mp.mpf('-0.5') * n)) * mp.power(mp.gamma(n+1.0), mp.mpf('-0.5')) * mp.power(mp.pi , mp.mpf('-0.25')) * mp.exp(-mp.power(x , mp.mpf('2.0')) / mp.mpf('2.0')) 
+
+ + +

Calculates the nth wavefunction for a complex scalar x with arbitrary precision using mpmath.

+ +
Arguments:
+ +
    +
  • n (np.uint64): Quantum state number.
  • +
  • x (np.complex128): Position at which to evaluate the wavefunction.
  • +
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • +
+ +
Returns:
+ +
+

mpmath.ctx_mp_python.mpc : The evaluated wavefunction with the specified precision.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j, 60)
+mpc(real='-1.40087973302624535996319358379185603705205815719366827159881527', imag='-3.06097806029750039193292973729038840279841978760336147713769087')
+>>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j, 60)
+mpc(real='-511062135.475553070892329856229109412939170026007243421420322129', imag='131445997.757536932748911867174534983962121585813389430606204944')
+
+
+
+ +
References:
+ +
+
    +
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. +
+
+
+ + +
+
+ +
+ + def + psi_n_single_fock_multiple_position(n, X, prec): + + + +
+ +
 89def psi_n_single_fock_multiple_position(n, X, prec):
+ 90    """
+ 91    Calculates the nth wavefunction for a real vector `x` with arbitrary precision using mpmath.
+ 92
+ 93    Args:
+ 94        n (np.uint64): Quantum state number.
+ 95        x (np.ndarray[np.float64]): Positions at which to evaluate the wavefunction.
+ 96        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+ 97
+ 98    Returns:
+ 99        `mpmath.matrices.matrices._matrix` : The evaluated wavefunction with the specified precision.
+100
+101    Examples:
+102        >>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]), 20)
+103        matrix(
+104        [['0.45558067201133253483', '0.10165378830641791152']])
+105        >>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]), 20)
+106        matrix(
+107        [['-0.23930491991711309779', '-0.016773782204892582343']])
+108
+109    References:
+110        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+111    """
+112
+113    return  matrix([psi_n_single_fock_single_position(n, x, prec) for x in X]).T
+
+ + +

Calculates the nth wavefunction for a real vector x with arbitrary precision using mpmath.

+ +
Arguments:
+ +
    +
  • n (np.uint64): Quantum state number.
  • +
  • x (np.ndarray[np.float64]): Positions at which to evaluate the wavefunction.
  • +
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • +
+ +
Returns:
+ +
+

mpmath.matrices.matrices._matrix : The evaluated wavefunction with the specified precision.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]), 20)
+matrix(
+[['0.45558067201133253483', '0.10165378830641791152']])
+>>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]), 20)
+matrix(
+[['-0.23930491991711309779', '-0.016773782204892582343']])
+
+
+
+ +
References:
+ +
+
    +
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. +
+
+
+ + +
+
+ +
+ + def + psi_n_single_fock_multiple_position_complex(n, X, prec): + + + +
+ +
115def psi_n_single_fock_multiple_position_complex(n, X, prec):
+116    """
+117    Calculates the nth wavefunction for a complex vector `x` with arbitrary precision using mpmath.
+118
+119    Args:
+120        n (np.uint64): Quantum state number.
+121        x (np.ndarray[np.complex128]): Positions at which to evaluate the wavefunction.
+122        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+123
+124    Returns:
+125        `mpmath.matrices.matrices._matrix` : The evaluated wavefunction with the specified precision.
+126
+127    Examples:
+128        >>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)
+129        matrix(
+130        [[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), 
+131        mpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')]])
+132        >>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)
+133        matrix(
+134        [[mpc(real='-7565.4894098859360141926', imag='921.4986211518276840917'), 
+135        mpc(real='-164189541.53192908120809', imag='-370892077.23796911662203')]])
+136
+137    References:
+138        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+139    """
+140
+141
+142    return  matrix([psi_n_single_fock_single_position_complex(n, x, prec) for x in X]).T
+
+ + +

Calculates the nth wavefunction for a complex vector x with arbitrary precision using mpmath.

+ +
Arguments:
+ +
    +
  • n (np.uint64): Quantum state number.
  • +
  • x (np.ndarray[np.complex128]): Positions at which to evaluate the wavefunction.
  • +
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • +
+ +
Returns:
+ +
+

mpmath.matrices.matrices._matrix : The evaluated wavefunction with the specified precision.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)
+matrix(
+[[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), 
+mpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')]])
+>>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)
+matrix(
+[[mpc(real='-7565.4894098859360141926', imag='921.4986211518276840917'), 
+mpc(real='-164189541.53192908120809', imag='-370892077.23796911662203')]])
+
+
+
+ +
References:
+ +
+
    +
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. +
+
+
+ + +
+
+ +
+ + def + psi_n_multiple_fock_single_position(n, x, prec): + + + +
+ +
144def psi_n_multiple_fock_single_position(n, x, prec):
+145
+146    """
+147    Determines the wavefunction for a real scalar `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations.
+148
+149    Args:
+150        n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
+151        x (np.float64): Position at which to evaluate the wavefunctions.
+152        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+153
+154    Returns:
+155        `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision.
+156
+157    Examples:
+158        >>> psi_n_multiple_fock_single_position(1, 1.0, 60)
+159        matrix(
+160        [['0.455580672011332534833705256897851386076626390409294396879153', 
+161        '0.644288365113475181510837645362740498634994248687269122618738']])
+162
+163    References:
+164        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+165    """
+166
+167    return  matrix([psi_n_single_fock_single_position(i, x, prec) for i in range(n+1)]).T
+
+ + +

Determines the wavefunction for a real scalar x for all Fock states up to n, employing mpmath for arbitrary-precision calculations.

+ +
Arguments:
+ +
    +
  • n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
  • +
  • x (np.float64): Position at which to evaluate the wavefunctions.
  • +
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • +
+ +
Returns:
+ +
+

mpmath.matrices.matrices._matrix : The evaluated wavefunctions with the specified precision.

+
+ +
Examples:
+ +
+
+
>>> psi_n_multiple_fock_single_position(1, 1.0, 60)
+matrix(
+[['0.455580672011332534833705256897851386076626390409294396879153', 
+'0.644288365113475181510837645362740498634994248687269122618738']])
+
+
+
+ +
References:
+ +
+
    +
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. +
+
+
+ + +
+
+ +
+ + def + psi_n_multiple_fock_single_position_complex(n, x, prec): + + + +
+ +
169def psi_n_multiple_fock_single_position_complex(n, x, prec):
+170    """
+171    Determines the wavefunction for a complex scalar `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations.
+172
+173    Args:
+174        n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
+175        x (np.complex128): Position at which to evaluate the wavefunctions.
+176        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+177
+178    Returns:
+179        `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision.
+180
+181    Examples:
+182        >>> c_wavefunction_mmod_arb_prec(1, 1.0 + 2.0j, 20)
+183        matrix(
+184        [[mpc(real='-1.400879733026245359964', imag='-3.0609780602975003919354'), 
+185        mpc(real='6.6766102562991123531695', imag='-8.2911629223978481324862')]])
+186
+187    References:
+188        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+189    """
+190
+191    return  matrix([psi_n_single_fock_single_position_complex(i, x, prec) for i in range(n+1)]).T
+
+ + +

Determines the wavefunction for a complex scalar x for all Fock states up to n, employing mpmath for arbitrary-precision calculations.

+ +
Arguments:
+ +
    +
  • n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
  • +
  • x (np.complex128): Position at which to evaluate the wavefunctions.
  • +
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • +
+ +
Returns:
+ +
+

mpmath.matrices.matrices._matrix : The evaluated wavefunctions with the specified precision.

+
+ +
Examples:
+ +
+
+
>>> c_wavefunction_mmod_arb_prec(1, 1.0 + 2.0j, 20)
+matrix(
+[[mpc(real='-1.400879733026245359964', imag='-3.0609780602975003919354'), 
+mpc(real='6.6766102562991123531695', imag='-8.2911629223978481324862')]])
+
+
+
+ +
References:
+ +
+
    +
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. +
+
+
+ + +
+
+ +
+ + def + psi_n_multiple_fock_multiple_position(n, X, prec): + + + +
+ +
193def psi_n_multiple_fock_multiple_position(n, X, prec):   
+194    """
+195    Determines the wavefunction for a real vector `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations.
+196
+197    Args:
+198        n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
+199        x (np.ndarray[np.float64]): Positions at which to evaluate the wavefunctions.
+200        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+201
+202    Returns:
+203        `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision.
+204
+205    Examples:
+206        >>> wavefunction_mmmd_arb_prec(1, np.array([1.0, 2.0]), 20)
+207        matrix(
+208        [['0.45558067201133253483', '0.10165378830641791152'],
+209        ['0.64428836511347518151', '0.28752033217907949445']])
+210
+211    References:
+212        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+213    """
+214
+215    return  matrix([[psi_n_single_fock_single_position(i, x, prec) for x in X] for i in range(n+1)])
+
+ + +

Determines the wavefunction for a real vector x for all Fock states up to n, employing mpmath for arbitrary-precision calculations.

+ +
Arguments:
+ +
    +
  • n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
  • +
  • x (np.ndarray[np.float64]): Positions at which to evaluate the wavefunctions.
  • +
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • +
+ +
Returns:
+ +
+

mpmath.matrices.matrices._matrix : The evaluated wavefunctions with the specified precision.

+
+ +
Examples:
+ +
+
+
>>> wavefunction_mmmd_arb_prec(1, np.array([1.0, 2.0]), 20)
+matrix(
+[['0.45558067201133253483', '0.10165378830641791152'],
+['0.64428836511347518151', '0.28752033217907949445']])
+
+
+
+ +
References:
+ +
+
    +
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. +
+
+
+ + +
+
+ +
+ + def + psi_n_multiple_fock_multiple_position_complex(n, X, prec): + + + +
+ +
217def psi_n_multiple_fock_multiple_position_complex(n, X, prec):   
+218    """
+219    Determines the wavefunction for a complex vector `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations.
+220
+221    Args:
+222        n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
+223        x (np.ndarray[np.complex128]): Positions at which to evaluate the wavefunctions.
+224        prec (np.uint64): Desired precision for the calculation (number of decimal digits).
+225
+226    Returns:
+227        `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision.
+228
+229    Examples:
+230        >>> c_wavefunction_mmmd_arb_prec(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)
+231        [[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), 
+232        mpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')],
+233        [mpc(real='1.4677913476441970351171', imag='-0.31991701106983521979673'), 
+234        mpc(real='-2.9964982238469495343176', imag='0.21916142736845211639935')]]
+235
+236    References:
+237        1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
+238    """
+239
+240    return  matrix([[psi_n_single_fock_single_position_complex(i, x, prec) for x in X] for i in range(n+1)])
+
+ + +

Determines the wavefunction for a complex vector x for all Fock states up to n, employing mpmath for arbitrary-precision calculations.

+ +
Arguments:
+ +
    +
  • n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
  • +
  • x (np.ndarray[np.complex128]): Positions at which to evaluate the wavefunctions.
  • +
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • +
+ +
Returns:
+ +
+

mpmath.matrices.matrices._matrix : The evaluated wavefunctions with the specified precision.

+
+ +
Examples:
+ +
+
+
>>> c_wavefunction_mmmd_arb_prec(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)
+[[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), 
+mpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')],
+[mpc(real='1.4677913476441970351171', imag='-0.31991701106983521979673'), 
+mpc(real='-2.9964982238469495343176', imag='0.21916142736845211639935')]]
+
+
+
+ +
References:
+ +
+
    +
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. +
+
+
+ + +
+
+ + \ No newline at end of file diff --git a/docs/fast_wave/wavefunction_numba.html b/docs/fast_wave/wavefunction_numba.html new file mode 100644 index 0000000..5e83473 --- /dev/null +++ b/docs/fast_wave/wavefunction_numba.html @@ -0,0 +1,1707 @@ + + + + + + + fast_wave.wavefunction_numba API documentation + + + + + + + + + + + + + +
+
+

+fast_wave.wavefunction_numba

+ + + + + + +
  1# BSD 3-Clause License
+  2#
+  3# Copyright (c) 2024, Matheus Gomes Cordeiro 
+  4# All rights reserved.
+  5#
+  6# Redistribution and use in source and binary forms, with or without
+  7# modification, are permitted provided that the following conditions are met:
+  8#
+  9# 1. Redistributions of source code must retain the above copyright notice, this
+ 10#    list of conditions and the following disclaimer.
+ 11#
+ 12# 2. Redistributions in binary form must reproduce the above copyright notice,
+ 13#    this list of conditions and the following disclaimer in the documentation
+ 14#    and/or other materials provided with the distribution.
+ 15#
+ 16# 3. Neither the name of the copyright holder nor the names of its
+ 17#    contributors may be used to endorse or promote products derived from
+ 18#    this software without specific prior written permission.
+ 19#
+ 20# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ 21# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ 22# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ 23# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ 24# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ 25# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ 26# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ 27# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ 28# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ 29# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ 30
+ 31import math
+ 32from sympy import symbols, diff, exp, Poly
+ 33
+ 34import numpy as np
+ 35import numba as nb
+ 36
+ 37# Adjusting numba settings to optimize parallel computations
+ 38nb.set_num_threads(nb.get_num_threads())
+ 39
+ 40# Global variables for coefficient matrix and compilation status check
+ 41c_s_matrix = None
+ 42
+ 43compilation_test = None
+ 44
+ 45def hermite_sympy(n):
+ 46    """
+ 47    Compute the nth Hermite polynomial using symbolic differentiation.
+ 48
+ 49    Args:
+ 50        n (int): Order of the Hermite polynomial.
+ 51
+ 52    Returns:
+ 53        `sympy.Poly` : The nth Hermite polynomial as a sympy expression.
+ 54
+ 55    Examples:
+ 56        >>> hermite_sympy(2)
+ 57        4*x**2 - 2
+ 58
+ 59    References:
+ 60        1. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press. https://search.worldcat.org/pt/title/502037224?oclcNum=502037224
+ 61        2. NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15.
+ 62        3. Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html
+ 63    """
+ 64
+ 65    x = symbols("x")
+ 66    return 1 if n == 0 else ((-1) ** n) * exp(x ** 2) * diff(exp(-x ** 2), x, n)
+ 67
+ 68
+ 69def create_normalized_hermite_coefficients_matrix(n_max):
+ 70    """
+ 71    Create a matrix of coefficients for normalized Hermite polynomials up to order `n_max`.
+ 72
+ 73    Args:
+ 74        n_max (int): The maximum order of Hermite polynomials to compute.
+ 75
+ 76    Returns:
+ 77        `np.ndarray` : A 2D numpy array containing the coefficients for the Hermite polynomials.
+ 78
+ 79    Examples:
+ 80        >>> create_normalized_hermite_coefficients_matrix(3)
+ 81        array([[ 0.        ,  0.        ,  0.        ,  0.75112554],
+ 82               [ 0.        ,  0.        ,  1.06225193,  0.        ],
+ 83               [ 0.        ,  1.06225193,  0.        , -0.53112597],
+ 84               [ 0.86732507,  0.        , -1.30098761,  0.        ]])
+ 85
+ 86    References:
+ 87        1. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press.
+ 88        2. NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15.
+ 89        3. Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html
+ 90    """
+ 91
+ 92    x = symbols("x")
+ 93    C_s = np.zeros((n_max + 1, n_max + 1), dtype=np.float64)
+ 94    C_s[0, n_max] = 1
+ 95
+ 96    for n in range(1, n_max + 1):
+ 97        c = Poly(hermite_sympy(n), x).all_coeffs()
+ 98        for index in range(n, -1, -1):
+ 99            C_s[n, (n_max + 1) - index - 1] = float(c[n - index])
+100
+101    for i in range(n_max + 1):
+102        C_s[i] /=  (np.pi**0.50 * (2**i) * math.gamma(i+1))**0.5
+103
+104    return C_s 
+105
+106
+107@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+108def psi_n_single_fock_single_position(n, x, CS_matrix = True):
+109    """
+110    Compute the wavefunction for a real scalar `x` using a pre-computed matrix of normalized Hermite polynomial coefficients 
+111    until n=60 and then use the adapted recurrence relation for higher orders.
+112
+113    Args:
+114        n (int): Quantum state number.
+115        x (float): Position at which to evaluate the wavefunction.
+116        CS_matrix (bool, optional): If True, use the optimized method for n <= 60, which relies on a pre-computed matrix 
+117                                        of coefficients for faster computation. For n > 60 or if False, use the general recursion 
+118                                        method. Defaults to True.
+119
+120    Returns:
+121        `float` : The evaluated wavefunction.
+122
+123    Examples:
+124        >>> psi_n_single_fock_single_position(0, 1.0)
+125        0.45558067201133257
+126        >>> psi_n_single_fock_single_position(61, 1.0)
+127        -0.2393049199171131
+128
+129    References:
+130        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+131           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+132    """      
+133    
+134    if(n<=60 and CS_matrix):
+135        c_size = c_s_matrix.shape[0]
+136        n_coeffs = c_s_matrix[n]
+137        result = 0.0
+138        for i in range(c_size-n-1,c_size,2):
+139            result += n_coeffs[i]*(x**(c_size-i-1))
+140
+141        return result * np.exp(-(x ** 2) / 2)
+142    else:
+143        r0 = 0.0
+144        r1 = (np.pi ** (-0.25)) * np.exp(-(x ** 2) / 2)
+145        r2 = 0.0
+146
+147        for index in range(n):
+148            r2 = 2 * x * (r1 / np.sqrt(2 * (index + 1))) - np.sqrt(index / (index + 1)) * r0 
+149            r0 = r1
+150            r1 = r2
+151
+152        return r1
+153    
+154
+155@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+156def psi_n_single_fock_single_position_complex(n, x, CS_matrix = True):
+157    """
+158    Compute the wavefunction for a complex scalar `x` using a pre-computed matrix of normalized Hermite polynomial coefficients 
+159    until n=60 and then use the adapted recurrence relation for higher orders.
+160
+161    Args:
+162        n (int): Quantum state number.
+163        x (complex): Position at which to evaluate the wavefunction.
+164        CS_matrix (bool, optional): If True, use the optimized method for n <= 60, which relies on a pre-computed matrix 
+165                                     of coefficients for faster computation. For n > 60 or if False, use the general recursion 
+166                                     method. Defaults to True.
+167
+168    Returns:
+169        `complex`: The evaluated wavefunction.
+170
+171    Examples:
+172        >>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j)
+173        (-1.4008797330262455 - 3.0609780602975003j)
+174        >>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j)
+175        (-511062135.47555304 + 131445997.75753704j)
+176
+177    References:
+178        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+179           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+180    """
+181
+182    if(n<=60 and CS_matrix):
+183        c_size = c_s_matrix.shape[0]
+184        n_coeffs = c_s_matrix[n]
+185        result = 0.0 + 0.0j
+186        for i in range(c_size-n-1,c_size,2):
+187            result += n_coeffs[i]*(x**(c_size-i-1))
+188
+189        return result * np.exp(-(x ** 2) / 2)
+190    else:
+191        r0 = 0.0 + 0.0j
+192        r1 = (np.pi ** (-0.25)) * np.exp(-(x ** 2) / 2)
+193        r2 = 0.0 + 0.0j
+194
+195        for index in range(n):
+196            r2 = 2 * x * (r1 / np.sqrt(2 * (index + 1))) - np.sqrt(index / (index + 1)) * r0 
+197            r0 = r1
+198            r1 = r2
+199
+200        return r1
+201
+202
+203@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+204def psi_n_single_fock_multiple_position(n, x, CS_matrix = True):
+205    """
+206    Compute the wavefunction for a real vector `x` using a pre-computed matrix of normalized Hermite polynomial coefficients 
+207    until n=60 and x_size = 35. For higher orders, use the adapted recurrence relation.
+208
+209    Args:
+210        n (int): Quantum state number.
+211        x (numpy.ndarray): Positions at which to evaluate the wavefunction.
+212        CS_matrix (bool, optional): If True, use the optimized method for n <= 60 and x_size <= 35, which relies on a pre-computed matrix 
+213                                     of coefficients for faster computation. For n > 60, or x_size > 35 or if False, use the general recursion 
+214                                     method. Defaults to True.
+215
+216    Returns:
+217        `numpy.ndarray`: The evaluated wavefunction.
+218
+219    Examples:
+220        >>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]))
+221        array([0.45558067, 0.10165379])
+222        >>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]))
+223        array([-0.23930492, -0.01677378])
+224
+225    References:
+226        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+227           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+228    """
+229
+230    x_size = x.shape[0]
+231
+232    if(n<=60 and x_size<= 35 and CS_matrix):
+233        c_size = c_s_matrix.shape[0]
+234        n_coeffs = c_s_matrix[n]
+235        result = np.array([0.0] * (x_size))
+236        for j in range(x_size):
+237            for i in range(c_size-n-1,c_size,2):
+238                result[j] += n_coeffs[i]*(x[j]**(c_size-i-1))
+239            result[j] *= np.exp(-(x[j] ** 2) / 2)
+240        return result
+241    else:
+242        result = np.array([[0.0]*(x_size)]*(n+1))
+243        result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+244
+245        for index in range(n):
+246            result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+247            
+248        return result[-1]
+249    
+250
+251
+252@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+253def psi_n_single_fock_multiple_position_complex(n, x, CS_matrix = True):
+254    """
+255    Compute the wavefunction for a complex vector `x` using a pre-computed matrix of normalized Hermite polynomial coefficients 
+256    until n=60 and x_size = 35. For higher orders, use the adapted recurrence relation.
+257
+258    Args:
+259        n (int): Quantum state number.
+260        x (numpy.ndarray): Positions at which to evaluate the wavefunction.
+261        CS_matrix (bool, optional): If True, use the optimized method for n <= 60 and x_size <= 35, which relies on a pre-computed matrix 
+262                                     of coefficients for faster computation. For n > 60, or x_size > 35 or if False, use the general recursion 
+263                                     method. Defaults to True.
+264
+265    Returns:
+266        `numpy.ndarray`: The evaluated wavefunction.
+267
+268    Examples:
+269        >>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+270        array([ 0.40583486-0.63205035j, -0.49096842+0.56845369j])
+271        >>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+272        array([-7.56548941e+03+9.21498621e+02j, -1.64189542e+08-3.70892077e+08j])
+273
+274    References:
+275        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+276           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+277    """
+278
+279    x_size = x.shape[0]
+280
+281    if(n<=60 and x_size<= 35 and CS_matrix):
+282        c_size = c_s_matrix.shape[0]
+283        n_coeffs = c_s_matrix[n]
+284        result = np.array([0.0 + 0.0j] * (x_size))
+285        for j in range(x_size):
+286            for i in range(c_size-n-1,c_size,2):
+287                result[j] += n_coeffs[i]*(x[j]**(c_size-i-1))
+288            result[j] *= np.exp(-(x[j] ** 2) / 2)
+289        return result
+290    else:
+291        result = np.array([[0.0 + 0.0j]*(x_size)]*(n+1))
+292        result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+293
+294        for index in range(n):
+295            result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+296            
+297        return result[-1]
+298
+299
+300@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+301def psi_n_multiple_fock_single_position(n, x):
+302    """
+303    Compute the wavefunction for a real scalar `x` to all Fock states up to `n` using the recurrence relation.
+304
+305    Args:
+306        n (int): Quantum state number.
+307        x (float): Position at which to evaluate the wavefunction.
+308
+309    Returns:
+310        `numpy.ndarray`: The evaluated wavefunction.
+311
+312    Examples:
+313        >>> psi_n_multiple_fock_single_position(1, 1.0)
+314        array([0.45558067, 0.64428837])
+315
+316    References:
+317        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+318           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+319    """
+320
+321    result = np.array([0.0] * (n+1))
+322    result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+323
+324    for index in range(n):
+325        result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+326        
+327    return result
+328
+329
+330@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+331def psi_n_multiple_fock_single_position_complex(n, x): 
+332    """
+333    Compute the wavefunction for a complex scalar `x` to all Fock states up to `n` using the recurrence relation.
+334
+335    Args:
+336        n (int): Quantum state number.
+337        x (complex): Position at which to evaluate the wavefunction.
+338
+339    Returns:
+340        `numpy.ndarray`: The evaluated wavefunction.
+341
+342    Examples:
+343        >>> psi_n_multiple_fock_single_position_complex(1, 1.0 + 2.0j)
+344        array([-1.40087973-3.06097806j,  6.67661026-8.29116292j])
+345
+346    References:
+347        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+348           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+349    """
+350    
+351    result = np.array([0.0 + 0.0j] * (n+1))
+352    result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+353
+354    for index in range(n):
+355        result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+356        
+357    return result
+358
+359
+360
+361@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+362def psi_n_multiple_fock_multiple_position(n, x):
+363    """
+364    Compute the wavefunction for a real vector `x` to all Fock states up to `n` using the recurrence relation.
+365
+366    Args:
+367        n (int): Quantum state number.
+368        x (numpy.ndarray): Positions at which to evaluate the wavefunction.
+369
+370    Returns:
+371        `numpy.ndarray`: The evaluated wavefunction.
+372
+373    Examples:
+374        >>> psi_n_multiple_fock_multiple_position(1, np.array([1.0, 2.0]))
+375        array([[0.45558067, 0.10165379],
+376               [0.64428837, 0.28752033]])
+377
+378    References:
+379        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+380           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+381    """
+382    
+383    x_size = x.shape[0]
+384    result = np.array([[0.0]*(x_size)]*(n+1))
+385    result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+386
+387    for index in range(n):
+388        result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+389        
+390    return result
+391
+392
+393@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+394def psi_n_multiple_fock_multiple_position_complex(n, x):
+395    """
+396    Compute the wavefunction for a complex vector `x` to all Fock states up to `n` using the recurrence relation.
+397
+398    Args:
+399        n (int): Quantum state number.
+400        x (numpy.ndarray): Positions at which to evaluate the wavefunction.
+401
+402    Returns:
+403        `numpy.ndarray`: The evaluated wavefunction.
+404
+405    Examples:
+406        >>> psi_n_multiple_fock_multiple_position_complex(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+407        array([[ 0.40583486-0.63205035j, -0.49096842+0.56845369j],
+408               [ 1.46779135-0.31991701j, -2.99649822+0.21916143j]])
+409
+410    References:
+411        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+412           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+413    """
+414    
+415    x_size = x.shape[0]
+416    result = np.array([[0.0 + 0.0j]*(x_size)]*(n+1))
+417    result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+418
+419    for index in range(n):
+420        result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+421        
+422    return result
+423        
+424"""
+425Main execution block to initialize the coefficient matrix and test the wavefunction computation.
+426
+427References
+428----------
+429- Python's official documentation offers insights into best practices for structuring and executing Python scripts:
+430  https://docs.python.org/3/tutorial/modules.html 
+431  .
+432"""
+433
+434c_s_matrix = create_normalized_hermite_coefficients_matrix(60)
+435
+436try:
+437
+438    # Basic functionality test
+439    test_output_sfsp_CS_matrix_2 = psi_n_single_fock_single_position(2, 10.0)
+440    test_output_sfsp_2 = psi_n_single_fock_single_position(2, 10.0, CS_matrix=False)
+441    test_output_sfsp_CS_matrix_61 = psi_n_single_fock_single_position(61, 10.0)
+442    test_output_sfsp_61 = psi_n_single_fock_single_position(61, 10.0, CS_matrix=False)
+443    test_output_mfsp = psi_n_multiple_fock_single_position(2, 10.0)
+444    test_output_sfmp_CS_matrix_2 = psi_n_single_fock_multiple_position(2, np.array([10.0,4.5]))
+445    test_output_sfmp_2 = psi_n_single_fock_multiple_position(2, np.array([10.0,4.5]), CS_matrix=False)
+446    test_output_sfmp_CS_matrix_61 = psi_n_single_fock_multiple_position(61, np.array([10.0,4.5]))
+447    test_output_sfmp_61 = psi_n_single_fock_multiple_position(61, np.array([10.0,4.5]), CS_matrix=False)
+448    test_output_mfmp = psi_n_multiple_fock_multiple_position(2, np.array([10.0,4.5]))
+449    test_output_sfsp_c_CS_matrix_2 = psi_n_single_fock_single_position_complex(2, 10.0 + 0.0j)
+450    test_output_sfsp_c_2 = psi_n_single_fock_single_position_complex(2, 10.0 + 0.0j, CS_matrix=False)
+451    test_output_sfsp_c_CS_matrix_61 = psi_n_single_fock_single_position_complex(61, 10.0 + 0.0j)
+452    test_output_sfsp_c_61 = psi_n_single_fock_single_position_complex(61, 10.0 + 0.0j, CS_matrix=False)
+453    test_output_mfsp_c = psi_n_multiple_fock_single_position_complex(2, 10.0 + 0.0j)
+454    test_output_sfmp_c_CS_matrix_2 = psi_n_single_fock_multiple_position_complex(2, np.array([10.0 + 0.0j,4.5 + 0.0j]))
+455    test_output_sfmp_c_2 = psi_n_single_fock_multiple_position_complex(2, np.array([10.0 + 0.0j,4.5 + 0.0j]), CS_matrix=False)
+456    test_output_sfmp_c_CS_matrix_61 = psi_n_single_fock_multiple_position_complex(61, np.array([10.0 + 0.0j,4.5 + 0.0j]))
+457    test_output_sfmp_c_61 = psi_n_single_fock_multiple_position_complex(61, np.array([10.0 + 0.0j,4.5 + 0.0j]), CS_matrix=False)
+458    test_output_mfmp_c = psi_n_multiple_fock_multiple_position_complex(2, np.array([10.0 + 0.0j,4.5 + 0.0j]))
+459    compilation_test = True
+460    print(f"Functionality Test Passed: {compilation_test}")
+461except Exception as e:
+462    compilation_test = False
+463    print(f"Numba Compilation Error: {e}")
+
+ + +
+
+
+ c_s_matrix = + + array([[ 0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ..., + 0.00000000e+00, 0.00000000e+00, 7.51125544e-01], + [ 0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ..., + 0.00000000e+00, 1.06225193e+00, 0.00000000e+00], + [ 0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ..., + 1.06225193e+00, 0.00000000e+00, -5.31125966e-01], + ..., + [ 0.00000000e+00, 0.00000000e+00, 2.63024748e-31, ..., + 1.40707622e+01, 0.00000000e+00, -2.42599349e-01], + [ 0.00000000e+00, 4.84267813e-32, 0.00000000e+00, ..., + 0.00000000e+00, -2.63530347e+00, 0.00000000e+00], + [ 8.84148017e-33, 0.00000000e+00, -7.82470995e-30, ..., + -1.44341516e+01, 0.00000000e+00, 2.40569193e-01]]) + + +
+ + + + +
+
+
+ compilation_test = +True + + +
+ + + + +
+
+ +
+ + def + hermite_sympy(n): + + + +
+ +
46def hermite_sympy(n):
+47    """
+48    Compute the nth Hermite polynomial using symbolic differentiation.
+49
+50    Args:
+51        n (int): Order of the Hermite polynomial.
+52
+53    Returns:
+54        `sympy.Poly` : The nth Hermite polynomial as a sympy expression.
+55
+56    Examples:
+57        >>> hermite_sympy(2)
+58        4*x**2 - 2
+59
+60    References:
+61        1. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press. https://search.worldcat.org/pt/title/502037224?oclcNum=502037224
+62        2. NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15.
+63        3. Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html
+64    """
+65
+66    x = symbols("x")
+67    return 1 if n == 0 else ((-1) ** n) * exp(x ** 2) * diff(exp(-x ** 2), x, n)
+
+ + +

Compute the nth Hermite polynomial using symbolic differentiation.

+ +
Arguments:
+ +
    +
  • n (int): Order of the Hermite polynomial.
  • +
+ +
Returns:
+ +
+

sympy.Poly : The nth Hermite polynomial as a sympy expression.

+
+ +
Examples:
+ +
+
+
>>> hermite_sympy(2)
+4*x**2 - 2
+
+
+
+ +
References:
+ +
+
    +
  1. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press. https://search.worldcat.org/pt/title/502037224?oclcNum=502037224
  2. +
  3. NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15.
  4. +
  5. Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html
  6. +
+
+
+ + +
+
+ +
+ + def + create_normalized_hermite_coefficients_matrix(n_max): + + + +
+ +
 70def create_normalized_hermite_coefficients_matrix(n_max):
+ 71    """
+ 72    Create a matrix of coefficients for normalized Hermite polynomials up to order `n_max`.
+ 73
+ 74    Args:
+ 75        n_max (int): The maximum order of Hermite polynomials to compute.
+ 76
+ 77    Returns:
+ 78        `np.ndarray` : A 2D numpy array containing the coefficients for the Hermite polynomials.
+ 79
+ 80    Examples:
+ 81        >>> create_normalized_hermite_coefficients_matrix(3)
+ 82        array([[ 0.        ,  0.        ,  0.        ,  0.75112554],
+ 83               [ 0.        ,  0.        ,  1.06225193,  0.        ],
+ 84               [ 0.        ,  1.06225193,  0.        , -0.53112597],
+ 85               [ 0.86732507,  0.        , -1.30098761,  0.        ]])
+ 86
+ 87    References:
+ 88        1. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press.
+ 89        2. NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15.
+ 90        3. Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html
+ 91    """
+ 92
+ 93    x = symbols("x")
+ 94    C_s = np.zeros((n_max + 1, n_max + 1), dtype=np.float64)
+ 95    C_s[0, n_max] = 1
+ 96
+ 97    for n in range(1, n_max + 1):
+ 98        c = Poly(hermite_sympy(n), x).all_coeffs()
+ 99        for index in range(n, -1, -1):
+100            C_s[n, (n_max + 1) - index - 1] = float(c[n - index])
+101
+102    for i in range(n_max + 1):
+103        C_s[i] /=  (np.pi**0.50 * (2**i) * math.gamma(i+1))**0.5
+104
+105    return C_s 
+
+ + +

Create a matrix of coefficients for normalized Hermite polynomials up to order n_max.

+ +
Arguments:
+ +
    +
  • n_max (int): The maximum order of Hermite polynomials to compute.
  • +
+ +
Returns:
+ +
+

np.ndarray : A 2D numpy array containing the coefficients for the Hermite polynomials.

+
+ +
Examples:
+ +
+
+
>>> create_normalized_hermite_coefficients_matrix(3)
+array([[ 0.        ,  0.        ,  0.        ,  0.75112554],
+       [ 0.        ,  0.        ,  1.06225193,  0.        ],
+       [ 0.        ,  1.06225193,  0.        , -0.53112597],
+       [ 0.86732507,  0.        , -1.30098761,  0.        ]])
+
+
+
+ +
References:
+ +
+
    +
  1. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press.
  2. +
  3. NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15.
  4. +
  5. Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html
  6. +
+
+
+ + +
+
+ +
+
@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+ + def + psi_n_single_fock_single_position(n, x, CS_matrix=True): + + + +
+ +
108@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+109def psi_n_single_fock_single_position(n, x, CS_matrix = True):
+110    """
+111    Compute the wavefunction for a real scalar `x` using a pre-computed matrix of normalized Hermite polynomial coefficients 
+112    until n=60 and then use the adapted recurrence relation for higher orders.
+113
+114    Args:
+115        n (int): Quantum state number.
+116        x (float): Position at which to evaluate the wavefunction.
+117        CS_matrix (bool, optional): If True, use the optimized method for n <= 60, which relies on a pre-computed matrix 
+118                                        of coefficients for faster computation. For n > 60 or if False, use the general recursion 
+119                                        method. Defaults to True.
+120
+121    Returns:
+122        `float` : The evaluated wavefunction.
+123
+124    Examples:
+125        >>> psi_n_single_fock_single_position(0, 1.0)
+126        0.45558067201133257
+127        >>> psi_n_single_fock_single_position(61, 1.0)
+128        -0.2393049199171131
+129
+130    References:
+131        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+132           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+133    """      
+134    
+135    if(n<=60 and CS_matrix):
+136        c_size = c_s_matrix.shape[0]
+137        n_coeffs = c_s_matrix[n]
+138        result = 0.0
+139        for i in range(c_size-n-1,c_size,2):
+140            result += n_coeffs[i]*(x**(c_size-i-1))
+141
+142        return result * np.exp(-(x ** 2) / 2)
+143    else:
+144        r0 = 0.0
+145        r1 = (np.pi ** (-0.25)) * np.exp(-(x ** 2) / 2)
+146        r2 = 0.0
+147
+148        for index in range(n):
+149            r2 = 2 * x * (r1 / np.sqrt(2 * (index + 1))) - np.sqrt(index / (index + 1)) * r0 
+150            r0 = r1
+151            r1 = r2
+152
+153        return r1
+
+ + +

Compute the wavefunction for a real scalar x using a pre-computed matrix of normalized Hermite polynomial coefficients +until n=60 and then use the adapted recurrence relation for higher orders.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (float): Position at which to evaluate the wavefunction.
  • +
  • CS_matrix (bool, optional): If True, use the optimized method for n <= 60, which relies on a pre-computed matrix +of coefficients for faster computation. For n > 60 or if False, use the general recursion +method. Defaults to True.
  • +
+ +
Returns:
+ +
+

float : The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_single_position(0, 1.0)
+0.45558067201133257
+>>> psi_n_single_fock_single_position(61, 1.0)
+-0.2393049199171131
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+ +
+
@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+ + def + psi_n_single_fock_single_position_complex(n, x, CS_matrix=True): + + + +
+ +
156@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+157def psi_n_single_fock_single_position_complex(n, x, CS_matrix = True):
+158    """
+159    Compute the wavefunction for a complex scalar `x` using a pre-computed matrix of normalized Hermite polynomial coefficients 
+160    until n=60 and then use the adapted recurrence relation for higher orders.
+161
+162    Args:
+163        n (int): Quantum state number.
+164        x (complex): Position at which to evaluate the wavefunction.
+165        CS_matrix (bool, optional): If True, use the optimized method for n <= 60, which relies on a pre-computed matrix 
+166                                     of coefficients for faster computation. For n > 60 or if False, use the general recursion 
+167                                     method. Defaults to True.
+168
+169    Returns:
+170        `complex`: The evaluated wavefunction.
+171
+172    Examples:
+173        >>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j)
+174        (-1.4008797330262455 - 3.0609780602975003j)
+175        >>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j)
+176        (-511062135.47555304 + 131445997.75753704j)
+177
+178    References:
+179        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+180           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+181    """
+182
+183    if(n<=60 and CS_matrix):
+184        c_size = c_s_matrix.shape[0]
+185        n_coeffs = c_s_matrix[n]
+186        result = 0.0 + 0.0j
+187        for i in range(c_size-n-1,c_size,2):
+188            result += n_coeffs[i]*(x**(c_size-i-1))
+189
+190        return result * np.exp(-(x ** 2) / 2)
+191    else:
+192        r0 = 0.0 + 0.0j
+193        r1 = (np.pi ** (-0.25)) * np.exp(-(x ** 2) / 2)
+194        r2 = 0.0 + 0.0j
+195
+196        for index in range(n):
+197            r2 = 2 * x * (r1 / np.sqrt(2 * (index + 1))) - np.sqrt(index / (index + 1)) * r0 
+198            r0 = r1
+199            r1 = r2
+200
+201        return r1
+
+ + +

Compute the wavefunction for a complex scalar x using a pre-computed matrix of normalized Hermite polynomial coefficients +until n=60 and then use the adapted recurrence relation for higher orders.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (complex): Position at which to evaluate the wavefunction.
  • +
  • CS_matrix (bool, optional): If True, use the optimized method for n <= 60, which relies on a pre-computed matrix +of coefficients for faster computation. For n > 60 or if False, use the general recursion +method. Defaults to True.
  • +
+ +
Returns:
+ +
+

complex: The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j)
+(-1.4008797330262455 - 3.0609780602975003j)
+>>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j)
+(-511062135.47555304 + 131445997.75753704j)
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+ +
+
@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+ + def + psi_n_single_fock_multiple_position(n, x, CS_matrix=True): + + + +
+ +
204@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+205def psi_n_single_fock_multiple_position(n, x, CS_matrix = True):
+206    """
+207    Compute the wavefunction for a real vector `x` using a pre-computed matrix of normalized Hermite polynomial coefficients 
+208    until n=60 and x_size = 35. For higher orders, use the adapted recurrence relation.
+209
+210    Args:
+211        n (int): Quantum state number.
+212        x (numpy.ndarray): Positions at which to evaluate the wavefunction.
+213        CS_matrix (bool, optional): If True, use the optimized method for n <= 60 and x_size <= 35, which relies on a pre-computed matrix 
+214                                     of coefficients for faster computation. For n > 60, or x_size > 35 or if False, use the general recursion 
+215                                     method. Defaults to True.
+216
+217    Returns:
+218        `numpy.ndarray`: The evaluated wavefunction.
+219
+220    Examples:
+221        >>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]))
+222        array([0.45558067, 0.10165379])
+223        >>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]))
+224        array([-0.23930492, -0.01677378])
+225
+226    References:
+227        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+228           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+229    """
+230
+231    x_size = x.shape[0]
+232
+233    if(n<=60 and x_size<= 35 and CS_matrix):
+234        c_size = c_s_matrix.shape[0]
+235        n_coeffs = c_s_matrix[n]
+236        result = np.array([0.0] * (x_size))
+237        for j in range(x_size):
+238            for i in range(c_size-n-1,c_size,2):
+239                result[j] += n_coeffs[i]*(x[j]**(c_size-i-1))
+240            result[j] *= np.exp(-(x[j] ** 2) / 2)
+241        return result
+242    else:
+243        result = np.array([[0.0]*(x_size)]*(n+1))
+244        result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+245
+246        for index in range(n):
+247            result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+248            
+249        return result[-1]
+
+ + +

Compute the wavefunction for a real vector x using a pre-computed matrix of normalized Hermite polynomial coefficients +until n=60 and x_size = 35. For higher orders, use the adapted recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (numpy.ndarray): Positions at which to evaluate the wavefunction.
  • +
  • CS_matrix (bool, optional): If True, use the optimized method for n <= 60 and x_size <= 35, which relies on a pre-computed matrix +of coefficients for faster computation. For n > 60, or x_size > 35 or if False, use the general recursion +method. Defaults to True.
  • +
+ +
Returns:
+ +
+

numpy.ndarray: The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]))
+array([0.45558067, 0.10165379])
+>>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]))
+array([-0.23930492, -0.01677378])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+ +
+
@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+ + def + psi_n_single_fock_multiple_position_complex(n, x, CS_matrix=True): + + + +
+ +
253@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+254def psi_n_single_fock_multiple_position_complex(n, x, CS_matrix = True):
+255    """
+256    Compute the wavefunction for a complex vector `x` using a pre-computed matrix of normalized Hermite polynomial coefficients 
+257    until n=60 and x_size = 35. For higher orders, use the adapted recurrence relation.
+258
+259    Args:
+260        n (int): Quantum state number.
+261        x (numpy.ndarray): Positions at which to evaluate the wavefunction.
+262        CS_matrix (bool, optional): If True, use the optimized method for n <= 60 and x_size <= 35, which relies on a pre-computed matrix 
+263                                     of coefficients for faster computation. For n > 60, or x_size > 35 or if False, use the general recursion 
+264                                     method. Defaults to True.
+265
+266    Returns:
+267        `numpy.ndarray`: The evaluated wavefunction.
+268
+269    Examples:
+270        >>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+271        array([ 0.40583486-0.63205035j, -0.49096842+0.56845369j])
+272        >>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+273        array([-7.56548941e+03+9.21498621e+02j, -1.64189542e+08-3.70892077e+08j])
+274
+275    References:
+276        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+277           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+278    """
+279
+280    x_size = x.shape[0]
+281
+282    if(n<=60 and x_size<= 35 and CS_matrix):
+283        c_size = c_s_matrix.shape[0]
+284        n_coeffs = c_s_matrix[n]
+285        result = np.array([0.0 + 0.0j] * (x_size))
+286        for j in range(x_size):
+287            for i in range(c_size-n-1,c_size,2):
+288                result[j] += n_coeffs[i]*(x[j]**(c_size-i-1))
+289            result[j] *= np.exp(-(x[j] ** 2) / 2)
+290        return result
+291    else:
+292        result = np.array([[0.0 + 0.0j]*(x_size)]*(n+1))
+293        result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+294
+295        for index in range(n):
+296            result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+297            
+298        return result[-1]
+
+ + +

Compute the wavefunction for a complex vector x using a pre-computed matrix of normalized Hermite polynomial coefficients +until n=60 and x_size = 35. For higher orders, use the adapted recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (numpy.ndarray): Positions at which to evaluate the wavefunction.
  • +
  • CS_matrix (bool, optional): If True, use the optimized method for n <= 60 and x_size <= 35, which relies on a pre-computed matrix +of coefficients for faster computation. For n > 60, or x_size > 35 or if False, use the general recursion +method. Defaults to True.
  • +
+ +
Returns:
+ +
+

numpy.ndarray: The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+array([ 0.40583486-0.63205035j, -0.49096842+0.56845369j])
+>>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+array([-7.56548941e+03+9.21498621e+02j, -1.64189542e+08-3.70892077e+08j])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+ +
+
@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+ + def + psi_n_multiple_fock_single_position(n, x): + + + +
+ +
301@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+302def psi_n_multiple_fock_single_position(n, x):
+303    """
+304    Compute the wavefunction for a real scalar `x` to all Fock states up to `n` using the recurrence relation.
+305
+306    Args:
+307        n (int): Quantum state number.
+308        x (float): Position at which to evaluate the wavefunction.
+309
+310    Returns:
+311        `numpy.ndarray`: The evaluated wavefunction.
+312
+313    Examples:
+314        >>> psi_n_multiple_fock_single_position(1, 1.0)
+315        array([0.45558067, 0.64428837])
+316
+317    References:
+318        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+319           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+320    """
+321
+322    result = np.array([0.0] * (n+1))
+323    result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+324
+325    for index in range(n):
+326        result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+327        
+328    return result
+
+ + +

Compute the wavefunction for a real scalar x to all Fock states up to n using the recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (float): Position at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

numpy.ndarray: The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_multiple_fock_single_position(1, 1.0)
+array([0.45558067, 0.64428837])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+ +
+
@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+ + def + psi_n_multiple_fock_single_position_complex(n, x): + + + +
+ +
331@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+332def psi_n_multiple_fock_single_position_complex(n, x): 
+333    """
+334    Compute the wavefunction for a complex scalar `x` to all Fock states up to `n` using the recurrence relation.
+335
+336    Args:
+337        n (int): Quantum state number.
+338        x (complex): Position at which to evaluate the wavefunction.
+339
+340    Returns:
+341        `numpy.ndarray`: The evaluated wavefunction.
+342
+343    Examples:
+344        >>> psi_n_multiple_fock_single_position_complex(1, 1.0 + 2.0j)
+345        array([-1.40087973-3.06097806j,  6.67661026-8.29116292j])
+346
+347    References:
+348        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+349           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+350    """
+351    
+352    result = np.array([0.0 + 0.0j] * (n+1))
+353    result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+354
+355    for index in range(n):
+356        result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+357        
+358    return result
+
+ + +

Compute the wavefunction for a complex scalar x to all Fock states up to n using the recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (complex): Position at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

numpy.ndarray: The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_multiple_fock_single_position_complex(1, 1.0 + 2.0j)
+array([-1.40087973-3.06097806j,  6.67661026-8.29116292j])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+ +
+
@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+ + def + psi_n_multiple_fock_multiple_position(n, x): + + + +
+ +
362@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+363def psi_n_multiple_fock_multiple_position(n, x):
+364    """
+365    Compute the wavefunction for a real vector `x` to all Fock states up to `n` using the recurrence relation.
+366
+367    Args:
+368        n (int): Quantum state number.
+369        x (numpy.ndarray): Positions at which to evaluate the wavefunction.
+370
+371    Returns:
+372        `numpy.ndarray`: The evaluated wavefunction.
+373
+374    Examples:
+375        >>> psi_n_multiple_fock_multiple_position(1, np.array([1.0, 2.0]))
+376        array([[0.45558067, 0.10165379],
+377               [0.64428837, 0.28752033]])
+378
+379    References:
+380        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+381           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+382    """
+383    
+384    x_size = x.shape[0]
+385    result = np.array([[0.0]*(x_size)]*(n+1))
+386    result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+387
+388    for index in range(n):
+389        result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+390        
+391    return result
+
+ + +

Compute the wavefunction for a real vector x to all Fock states up to n using the recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (numpy.ndarray): Positions at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

numpy.ndarray: The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_multiple_fock_multiple_position(1, np.array([1.0, 2.0]))
+array([[0.45558067, 0.10165379],
+       [0.64428837, 0.28752033]])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+ +
+
@nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True)
+ + def + psi_n_multiple_fock_multiple_position_complex(n, x): + + + +
+ +
394@nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True)
+395def psi_n_multiple_fock_multiple_position_complex(n, x):
+396    """
+397    Compute the wavefunction for a complex vector `x` to all Fock states up to `n` using the recurrence relation.
+398
+399    Args:
+400        n (int): Quantum state number.
+401        x (numpy.ndarray): Positions at which to evaluate the wavefunction.
+402
+403    Returns:
+404        `numpy.ndarray`: The evaluated wavefunction.
+405
+406    Examples:
+407        >>> psi_n_multiple_fock_multiple_position_complex(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+408        array([[ 0.40583486-0.63205035j, -0.49096842+0.56845369j],
+409               [ 1.46779135-0.31991701j, -2.99649822+0.21916143j]])
+410
+411    References:
+412        1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 
+413           39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
+414    """
+415    
+416    x_size = x.shape[0]
+417    result = np.array([[0.0 + 0.0j]*(x_size)]*(n+1))
+418    result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) 
+419
+420    for index in range(n):
+421        result[index+1]  = 2*x*(result[index]/np.sqrt(2*(index+1))) - np.sqrt(index/(index+1)) * result[index-1]
+422        
+423    return result
+
+ + +

Compute the wavefunction for a complex vector x to all Fock states up to n using the recurrence relation.

+ +
Arguments:
+ +
    +
  • n (int): Quantum state number.
  • +
  • x (numpy.ndarray): Positions at which to evaluate the wavefunction.
  • +
+ +
Returns:
+ +
+

numpy.ndarray: The evaluated wavefunction.

+
+ +
Examples:
+ +
+
+
>>> psi_n_multiple_fock_multiple_position_complex(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]))
+array([[ 0.40583486-0.63205035j, -0.49096842+0.56845369j],
+       [ 1.46779135-0.31991701j, -2.99649822+0.21916143j]])
+
+
+
+ +
References:
+ +
+
    +
  1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. +
+
+
+ + +
+
+ + \ No newline at end of file diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..bc75bec --- /dev/null +++ b/docs/index.html @@ -0,0 +1,7 @@ + + + + + + + diff --git a/docs/search.js b/docs/search.js new file mode 100644 index 0000000..2583cc1 --- /dev/null +++ b/docs/search.js @@ -0,0 +1,46 @@ +window.pdocSearch = (function(){ +/** elasticlunr - http://weixsong.github.io * Copyright (C) 2017 Oliver Nightingale * Copyright (C) 2017 Wei Song * MIT Licensed */!function(){function e(e){if(null===e||"object"!=typeof e)return e;var t=e.constructor();for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}var t=function(e){var n=new t.Index;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),e&&e.call(n,n),n};t.version="0.9.5",lunr=t,t.utils={},t.utils.warn=function(e){return function(t){e.console&&console.warn&&console.warn(t)}}(this),t.utils.toString=function(e){return void 0===e||null===e?"":e.toString()},t.EventEmitter=function(){this.events={}},t.EventEmitter.prototype.addListener=function(){var e=Array.prototype.slice.call(arguments),t=e.pop(),n=e;if("function"!=typeof t)throw new TypeError("last argument must be a function");n.forEach(function(e){this.hasHandler(e)||(this.events[e]=[]),this.events[e].push(t)},this)},t.EventEmitter.prototype.removeListener=function(e,t){if(this.hasHandler(e)){var n=this.events[e].indexOf(t);-1!==n&&(this.events[e].splice(n,1),0==this.events[e].length&&delete this.events[e])}},t.EventEmitter.prototype.emit=function(e){if(this.hasHandler(e)){var t=Array.prototype.slice.call(arguments,1);this.events[e].forEach(function(e){e.apply(void 0,t)},this)}},t.EventEmitter.prototype.hasHandler=function(e){return e in this.events},t.tokenizer=function(e){if(!arguments.length||null===e||void 0===e)return[];if(Array.isArray(e)){var n=e.filter(function(e){return null===e||void 0===e?!1:!0});n=n.map(function(e){return t.utils.toString(e).toLowerCase()});var i=[];return n.forEach(function(e){var n=e.split(t.tokenizer.seperator);i=i.concat(n)},this),i}return e.toString().trim().toLowerCase().split(t.tokenizer.seperator)},t.tokenizer.defaultSeperator=/[\s\-]+/,t.tokenizer.seperator=t.tokenizer.defaultSeperator,t.tokenizer.setSeperator=function(e){null!==e&&void 0!==e&&"object"==typeof e&&(t.tokenizer.seperator=e)},t.tokenizer.resetSeperator=function(){t.tokenizer.seperator=t.tokenizer.defaultSeperator},t.tokenizer.getSeperator=function(){return t.tokenizer.seperator},t.Pipeline=function(){this._queue=[]},t.Pipeline.registeredFunctions={},t.Pipeline.registerFunction=function(e,n){n in t.Pipeline.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[n]=e},t.Pipeline.getRegisteredFunction=function(e){return e in t.Pipeline.registeredFunctions!=!0?null:t.Pipeline.registeredFunctions[e]},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(e){var i=t.Pipeline.getRegisteredFunction(e);if(!i)throw new Error("Cannot load un-registered function: "+e);n.add(i)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(e){t.Pipeline.warnIfFunctionNotRegistered(e),this._queue.push(e)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i+1,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i,0,n)},t.Pipeline.prototype.remove=function(e){var t=this._queue.indexOf(e);-1!==t&&this._queue.splice(t,1)},t.Pipeline.prototype.run=function(e){for(var t=[],n=e.length,i=this._queue.length,o=0;n>o;o++){for(var r=e[o],s=0;i>s&&(r=this._queue[s](r,o,e),void 0!==r&&null!==r);s++);void 0!==r&&null!==r&&t.push(r)}return t},t.Pipeline.prototype.reset=function(){this._queue=[]},t.Pipeline.prototype.get=function(){return this._queue},t.Pipeline.prototype.toJSON=function(){return this._queue.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})},t.Index=function(){this._fields=[],this._ref="id",this.pipeline=new t.Pipeline,this.documentStore=new t.DocumentStore,this.index={},this.eventEmitter=new t.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},t.Index.prototype.on=function(){var e=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,e)},t.Index.prototype.off=function(e,t){return this.eventEmitter.removeListener(e,t)},t.Index.load=function(e){e.version!==t.version&&t.utils.warn("version mismatch: current "+t.version+" importing "+e.version);var n=new this;n._fields=e.fields,n._ref=e.ref,n.documentStore=t.DocumentStore.load(e.documentStore),n.pipeline=t.Pipeline.load(e.pipeline),n.index={};for(var i in e.index)n.index[i]=t.InvertedIndex.load(e.index[i]);return n},t.Index.prototype.addField=function(e){return this._fields.push(e),this.index[e]=new t.InvertedIndex,this},t.Index.prototype.setRef=function(e){return this._ref=e,this},t.Index.prototype.saveDocument=function(e){return this.documentStore=new t.DocumentStore(e),this},t.Index.prototype.addDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.addDoc(i,e),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));this.documentStore.addFieldLength(i,n,o.length);var r={};o.forEach(function(e){e in r?r[e]+=1:r[e]=1},this);for(var s in r){var u=r[s];u=Math.sqrt(u),this.index[n].addToken(s,{ref:i,tf:u})}},this),n&&this.eventEmitter.emit("add",e,this)}},t.Index.prototype.removeDocByRef=function(e){if(e&&this.documentStore.isDocStored()!==!1&&this.documentStore.hasDoc(e)){var t=this.documentStore.getDoc(e);this.removeDoc(t,!1)}},t.Index.prototype.removeDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.hasDoc(i)&&(this.documentStore.removeDoc(i),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));o.forEach(function(e){this.index[n].removeToken(e,i)},this)},this),n&&this.eventEmitter.emit("remove",e,this))}},t.Index.prototype.updateDoc=function(e,t){var t=void 0===t?!0:t;this.removeDocByRef(e[this._ref],!1),this.addDoc(e,!1),t&&this.eventEmitter.emit("update",e,this)},t.Index.prototype.idf=function(e,t){var n="@"+t+"/"+e;if(Object.prototype.hasOwnProperty.call(this._idfCache,n))return this._idfCache[n];var i=this.index[t].getDocFreq(e),o=1+Math.log(this.documentStore.length/(i+1));return this._idfCache[n]=o,o},t.Index.prototype.getFields=function(){return this._fields.slice()},t.Index.prototype.search=function(e,n){if(!e)return[];e="string"==typeof e?{any:e}:JSON.parse(JSON.stringify(e));var i=null;null!=n&&(i=JSON.stringify(n));for(var o=new t.Configuration(i,this.getFields()).get(),r={},s=Object.keys(e),u=0;u0&&t.push(e);for(var i in n)"docs"!==i&&"df"!==i&&this.expandToken(e+i,t,n[i]);return t},t.InvertedIndex.prototype.toJSON=function(){return{root:this.root}},t.Configuration=function(e,n){var e=e||"";if(void 0==n||null==n)throw new Error("fields should not be null");this.config={};var i;try{i=JSON.parse(e),this.buildUserConfig(i,n)}catch(o){t.utils.warn("user configuration parse failed, will use default configuration"),this.buildDefaultConfig(n)}},t.Configuration.prototype.buildDefaultConfig=function(e){this.reset(),e.forEach(function(e){this.config[e]={boost:1,bool:"OR",expand:!1}},this)},t.Configuration.prototype.buildUserConfig=function(e,n){var i="OR",o=!1;if(this.reset(),"bool"in e&&(i=e.bool||i),"expand"in e&&(o=e.expand||o),"fields"in e)for(var r in e.fields)if(n.indexOf(r)>-1){var s=e.fields[r],u=o;void 0!=s.expand&&(u=s.expand),this.config[r]={boost:s.boost||0===s.boost?s.boost:1,bool:s.bool||i,expand:u}}else t.utils.warn("field name in user configuration not found in index instance fields");else this.addAllFields2UserConfig(i,o,n)},t.Configuration.prototype.addAllFields2UserConfig=function(e,t,n){n.forEach(function(n){this.config[n]={boost:1,bool:e,expand:t}},this)},t.Configuration.prototype.get=function(){return this.config},t.Configuration.prototype.reset=function(){this.config={}},lunr.SortedSet=function(){this.length=0,this.elements=[]},lunr.SortedSet.load=function(e){var t=new this;return t.elements=e,t.length=e.length,t},lunr.SortedSet.prototype.add=function(){var e,t;for(e=0;e1;){if(r===e)return o;e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o]}return r===e?o:-1},lunr.SortedSet.prototype.locationFor=function(e){for(var t=0,n=this.elements.length,i=n-t,o=t+Math.floor(i/2),r=this.elements[o];i>1;)e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o];return r>e?o:e>r?o+1:void 0},lunr.SortedSet.prototype.intersect=function(e){for(var t=new lunr.SortedSet,n=0,i=0,o=this.length,r=e.length,s=this.elements,u=e.elements;;){if(n>o-1||i>r-1)break;s[n]!==u[i]?s[n]u[i]&&i++:(t.add(s[n]),n++,i++)}return t},lunr.SortedSet.prototype.clone=function(){var e=new lunr.SortedSet;return e.elements=this.toArray(),e.length=e.elements.length,e},lunr.SortedSet.prototype.union=function(e){var t,n,i;this.length>=e.length?(t=this,n=e):(t=e,n=this),i=t.clone();for(var o=0,r=n.toArray();oThis project presents an optimized approach for calculating the position wave functions of a Fock state of a quantum harmonic oscillator, with applications in Photonic Quantum Computing simulations. Leveraging Numba [1] and Cython [2], this approach outperforms the Mr Mustard package [3, 4] in computing a single wave function value at a single position and at multiple positions.

\n\n

\u2728 Advantages

\n\n
    \n
  • Highly Efficient: This package includes two fixed-point modules focused on speed. One is implemented using Numba, an open-source Just-in-Time (JIT) compiler, and the other module is implemented in Cython, a programming language that combines the ease of use of Python with the speed of C.
  • \n
  • Highly Accurate: The functions in this package have precision next to the precision of Wolfram Mathematica and MATLAB. In addition, there is a module for calculating wave functions with arbitrary precision using the mpmath package.
  • \n
  • Past response cache: This package provides a caching module designed to enhance the performance of functions that take multiple positions of a NumPy array as input. This module stores previously computed results by leveraging Python's functools.lru_cache, eliminating the need for redundant calculations. This caching module is inspired by the caching module from Mr. Mustard, a package from the photonic quantum computing company Xanadu.
  • \n
\n\n

\ud83d\udee0\ufe0f Setup

\n\n

To use this package, simply run the following command in the command line:

\n\n
\n
pip install fast-wave\n
\n
\n\n

\ud83c\udfa8 Examples

\n\n

The functions psi_n_multiple_fock_multiple_position calculate the values of the wavefunction $\\psi_{0 \u2192 n} ( X_m )$ for multiple Fock states ($n$) and multiple positions ($X_{m}$).

\n\n

Inputs:

\n\n
    \n
  • n: An integer specifying the maximum Fock state ($n$).
  • \n
  • X_m: A 1D numpy array with m positions, representing the input values where $\\psi_{0 \u2192 n}$ will be evaluated. For example, np.array([1.0, 2.0]) has dimension $(m,)$, where $m=2$ in this case.
  • \n
\n\n

Outputs:

\n\n
    \n
  • numpy Matrix: The output has dimensions $(n+1) \u00d7 m$, where:\n
      \n
    • $n+1$: Corresponds to the Fock states $[0, 1, ..., n]$.
    • \n
    • $m$: Represents the positions given in X_m.
    • \n
  • \n
\n\n

Demonstration:

\n\n

Using the provided inputs:

\n\n
\n
>>> import fast_wave.wavefunction_numba as wn\nFunctionality Test Passed: True\n>>> import fast_wave.wavefunction_cython as wc\n>>> import numpy as np\n>>> wn.psi_n_multiple_fock_multiple_position(1,np.array([1.0 ,2.0])) \narray([[0.45558067, 0.10165379],\n    [0.64428837, 0.28752033]])\n>>> wc.psi_n_multiple_fock_multiple_position(1,np.array([1.0 ,2.0]))\narray([[0.45558067, 0.10165379],\n    [0.64428837, 0.28752033]])\n
\n
\n\n

Explanation of the Output:

\n\n
    \n
  • For n=1 and X_m = np.array([1.0, 2.0]):
  • \n
  • The output matrix has dimensions $(n+1) \u00d7 m = 2 \u00d7 2$.
  • \n
  • The first row contains $\\psi_{0}(x_1)$ and $\\psi_{0}(x_2)$.
  • \n
  • The second row contains $\\psi_{1}(x_1)$ and $\\psi_{1}(x_2)$.
  • \n
\n\n

There are other examples in the examples folder: Speed Tests: Numba & Cython; Precision Tests: mpmath. In the first one there is a comparison with the Mr Mustard package.

\n\n

\ud83c\udf0a The Wavefunction

\n\n

The wavefunction, $\\Psi(y,t)$, is a fundamental concept in quantum mechanics that describes the quantum state of a particle or system. Its absolute square, $|\\Psi(y,t)|^2$, represents the probability density of finding the particle at position $\\mathbf{y}$ and time $\\mathbf{t}$. Due to the normalization property: $\\int_{-\\infty}^{\\infty} |\\Psi(y,t)|^2 dy = 1$ it's guaranteed that for a given time $\\mathbf{t}$, the total probability of finding the particle somewhere in space is unity [5].

\n\n

Schr\u00f6dinger Equation

\n\n

The wavefunction is the solution to the Schr\u00f6dinger equation, a fundamental equation in quantum mechanics:

\n\n

$$\n-\\Bigg({\\hbar^{2} \\over 2m}\\Bigg) {\\partial^2 \\Psi(y,t) \\over \\partial y^{2}} + \\Bigg({m\\omega^2 y^2 \\over 2}\\Bigg) \\Psi(y,t) = \\mathbf{i}\\hbar \\, {\\partial \\Psi(y,t) \\over \\partial t} \\quad \\mathbf{(1)}\n$$

\n\n

where $\\mathbf{\\hbar}$ is the reduced Planck constant, $\\mathbf{m}$ is the mass of the particle, and $\\mathbf{\\omega}$ is the angular frequency of the harmonic potential. The symbol $\\mathbf{i}$ represents the imaginary unit. When seeking the solution to this equation, we separated the variables as follows: $\\Psi(y,t) = \\psi(y)f(t)$, and we find as a result for $f(t)$ [5]:

\n\n

$$ f(t) = C \\, e^{-iEt/\\hbar} \\quad \\mathbf{(2)}$$

\n\n

where $\\mathbf{C}$ may be considered an arbitrary complex constant and $\\mathbf{E}$, the system separation constant can be interpreted as the system's energy. Substituting into the wavefunction we have [5]:

\n\n

$$ \\Psi(y,t) = C \\, e^{-iEt/\\hbar} \\, \\psi(y) \\quad \\mathbf{(3)}$$

\n\n

The term $e^{-iEt/\\hbar}$ is called the phase factor of $\\Psi(y,t)$. In order to find $\\psi(y)$ we then solve the time-independent Schr\u00f6ndiger equation [5]:

\n\n

$$\n-\\Bigg({\\hbar^{2} \\over 2m }\\Bigg) \\psi''(y) + \\Bigg({m\\omega^2 y^2 \\over 2 }\\Bigg) \\psi(y) = E \\, \\psi(y) \\quad \\mathbf{(4)}\n$$

\n\n

Quantum Harmonic Oscillator

\n\n

By solving equation (4), we obtain a family of energy eigenfunctions defined as follows [5]:

\n\n

$$\n\\psi_n(y) = \\Bigg({ m\\omega \\over \\pi\\hbar }\\Bigg)^{1/4} \\Bigg({ 1 \\over \\sqrt{2^n n!}}\\Bigg) H_n\\Bigg(\\sqrt{m\\omega \\over \\hbar }y\\Bigg) \\, e^{-m\\omega y^2/2\\hbar} , \\quad n \\in \\mathbb{N}_{0} \\quad \\mathbf{(5)}\n$$

\n\n

where $\\mathbf{n}$ represents a non-negative integer corresponding to the different energy states of the system, with energies given by $E_n = [n + (1/2)]\\hbar \\omega$. The term $H_n$ denotes the Hermite polynomial of degree $\\mathbf{n}$; thus, for each energy state $\\mathbf{n}$, there is an associated Hermite polynomial of degree $\\mathbf{n}$ within its eigenfunction [5]:

\n\n


\n\n
\n \"\n
\n

Wavefunctions and energies for different $\\mathbf{n}$ values. [6]

\n
\n\n


\n\n

The energy eigenfunction for an energy state $\\mathbf{n}$ is the wavefunction for an energy state $\\mathbf{n}$ of a Quantum Harmonic Oscillator. From this definition, we can then represent the wave function $\\Psi(x,t)$ as a series expansion of its family of energy eigenfunctions ${\\psi_{n}(x)}$ [5]:

\n\n

$$\n\\Psi(y,t) = \\sum_{n=0}^{\\infty} c_{n} \\, \\psi_{n}(y) \\, e^{-\\mathbf{i}E_{n}t/\\hbar} \\quad \\mathbf{(6)}\n$$

\n\n

where $\\mathbf{c_{n}}$ are complex constants that determine the contribution of each eigenfunction $\\psi_{n}(y)$ to the total wavefunction $\\Psi(y,t)$. These coefficients are chosen to ensure that the wavefunction satisfies the initial condition of the problem ($t=0$) [5].

\n\n

Fock states

\n\n

When defining the dimensionless variable $x = \\Big(m\\omega/\\hbar\\Big)^{1/2}y$, referred to as the reduced coordinate, it follows that $dy = \\Big(\\hbar/m\\omega\\Big)^{1/2}dx$. As a result, we can write [7]:

\n\n

$\\displaystyle\\int_{-\\infty}^{+\\infty} |\\psi(y)|^{2} dy = 1 \\implies \\int_{-\\infty}^{+\\infty}\\Bigg[\\Bigg({m\\omega \\over \\pi\\hbar }\\Bigg)^{1/2} \\Bigg({1 \\over 2^n n!}\\Bigg) H_n^{2}\\Bigg(\\sqrt{ m\\omega \\over \\hbar}y\\Bigg) e^{-m\\omega y^2/\\hbar} \\Bigg] dy \\implies$

\n\n

$\\displaystyle\\int_{-\\infty}^{+\\infty} \\Bigg[ \\Bigg({m\\omega \\over \\pi\\hbar } \\Bigg)^{1/2} \\Bigg( { 1 \\over 2^n n! } \\Bigg) H_{n}^{2}(x) \\, e^{-x^{2}}\\Bigg]\\Bigg[{ \\hbar \\over \\omega m }\\Bigg]^{1/2}dx = 1 \\implies \\int_{-\\infty}^{+\\infty} \\Bigg[ \\Bigg({ 1 \\over 2^n n!\\sqrt{\\pi} } \\Bigg) H_{n}^{2}(x) \\, e^{-x^{2}}\\Bigg]dx = 1 \\implies$

\n\n

$\\displaystyle\\int_{-\\infty}^{+\\infty} \\, \\Bigg| \\Bigg( {1 \\over 2^n n!\\sqrt{\\pi} } \\Bigg)^{1/2} H_{n}(x) \\, e^{-x^{2}/2} \\Bigg|^{2}dx = 1 \\implies \\int_{-\\infty}^{+\\infty} |\\psi(x)|^{2} dx = 1\\implies$

\n\n

$$\\psi_{n}(x) = \\Bigg( {1 \\over 2^n n!\\sqrt{\\pi} }\\Bigg)^{1/2} H_{n}(x) \\quad e^{-x^{2}/2} \\quad \\mathbf{(7)}$$

\n\n

This demonstrates that the wavefunction of a Quantum Harmonic Oscillator can be represented in a more dimensionless form, known as the Hermite function, it is also sometimes referred to as the Gauss Hermite function (equation $\\mathbf{7}$) [8]. A more simplified form for this type of function is this: $\\psi_{n}(x) = \\mathcal{N_{n}} \\, H_{n}(x) \\, e^{-x^{2}/2}$, where $\\mathcal{N_{n}} = [1 /(2^n n!\\sqrt{\\pi})]^{1/2}$ is referred to as the normalization constant [9].

\n\n

This type of representation for the wavefunction enables the modeling of wave functions for Fock states, which are energy eigenstates with a well-defined number of particles. When the particles are considered photons, $\\mathbf{n}$, the degree of the Hermite polynomial, also represents the number of photons. Consequently, the Fock states ($\\ket{n}$) become eigenstates of the photon number operator $\\hat{n}$, such that $\\hat{n}\\ket{n}=n\\ket{n}$. Moreover, the energy states now correspond to the energy levels of an optical system containing $n$-photons [10].

\n\n

$\\ket{\\psi_{n}} = \\displaystyle{1 \\over \\sqrt{n!} }(a^{\\dagger})^{n}\\ket{\\psi_{0}} \\implies \\psi_{n}(q) = { 1 \\over \\sqrt{n!} }{ 1 \\over \\sqrt{2^n} }\\Bigg(q - {\\partial \\over \\partial q }\\Bigg)^{n}\\psi_{0}(q) \\implies $

\n\n

$\\psi_{n}(q) = \\displaystyle{1 \\over \\sqrt{n!}}{1 \\over \\sqrt{2^n} } H_{n}(q) \\psi_{0}(q) \\implies \\psi_{n}(q) = \\displaystyle{1 \\over \\sqrt{n!} }{1 \\over \\sqrt{2^n} } H_{n}(q) \\Big(\\pi^{-1/4}\\Big) e^{-q^{2}/2} \\implies$

\n\n

$$\\psi_{n}(q) = \\displaystyle\\Bigg({1 \\over 2^n n!\\sqrt{\\pi} }\\Bigg)^{1/2} H_{n}(q) \\quad e^{-q^{2}/2} \\quad \\mathbf{(8)}$$

\n\n

where $\\mathbf{q}$ is interpreted as the normalized field amplitude associated with the position quadrature ($\\hat{q}$\u200b) and has a dimensionless character similar to $\\mathbf{x}$ [10].

\n\n

The wavefunction $\\mathbf{n}$ of a Fock state is the projection of the state $\\ket{n}$, and as we can observe, the wavefunctions of a Fock state for $n$-photon systems can be interpreted as a family of dimensionless energy eigenfunctions (Hermite functions), similar to those shown by equation $\\mathbf{(7)}$ [10].

\n\n

\ud83d\udd01 The Wavefunction Recurrence

\n\n

In essence, Mr Mustard's strategy is to use the Renormalized Hermite Polynomial [3, 4] for the computation of the wavefunction of a quantum harmonic oscillator. Below, we show the recurrence for calculating the Renormalized Hermite Polynomial, as well as the method for calculating it using the traditional Hermite polynomial:

\n\n

$$H_{n+1}^{re}(x) = \\displaystyle{2 \\over \\sqrt{n+1} }\\Big[xH_{n}^{re}(x) - H_{n-1}^{re}(x)\\sqrt{n-1}\\Big] \\quad \\mathbf{(8)} $$

\n\n

$$H_{n}^{re}(x) = \\displaystyle{H_{n}(x) \\over \\sqrt{n!}} \\quad \\mathbf{(10)} $$

\n\n

When we use this polynomial in calculating the wavefunction of a Quantum Harmonic Oscillator, the equation is as follows:

\n\n

$$\\psi_{n}(x) = \\displaystyle\\Bigg({1 \\over 2^n\\sqrt{\\pi} }\\Bigg)^{1/2}H_{n}^{re}(x) \\quad e^{-{x^2 \\over 2 }} \\quad \\mathbf{(11)} $$

\n\n

In this package, we implemented a recurrence based on the recursive solution to the wavefunction of the Quantum Harmonic Oscillator presented in the work of Jos\u00e9 Maria P\u00e9rez-Jord\u00e1 [11]. The recurrence we implemented was for $\\psi_{n+1}$, which we obtained from the recursive definition of the Hermite polynomial [12], as suggested by Jos\u00e9 Maria P\u00e9rez-Jord\u00e1 in his article:

\n\n

$H_{n+1}(x) = 2xH_{n}(x) - 2nH_{n-1}(x) \\implies $

\n\n

$\\Bigg( \\displaystyle{e^{-x^2 / 2} \\over \\sqrt{2^{n-1}(n-1)!\\pi^{1/2}}}\\Bigg)H_{n+1}(x) = \\Bigg( \\displaystyle{e^{-x^2 / 2} \\over \\sqrt{2^{n-1}(n-1)!\\pi^{1/2}}}\\Bigg)2xH_{n}(x) -\\Bigg( \\displaystyle{e^{-x^2 / 2} \\over \\sqrt{2^{n-1}(n-1)!\\pi^{1/2}}}\\Bigg)2nH_{n-1}(x) \\implies$

\n\n

$\\Bigg( \\displaystyle{e^{-x^{2}/2} \\over \\sqrt{2^{n-1}(n-1)!\\pi^{1/2}}}\\Bigg)H_{n+1}(x) = \\Bigg( \\displaystyle{e^{-x^{2}/2} \\over \\sqrt{2^{n-1}(n-1)!\\pi^{1/2}}}\\Bigg)2xH_{n}(x) -2n\\psi_{n-1}(x) \\implies $

\n\n

$\\displaystyle{1 \\over \\sqrt{2n}}\\Bigg( \\displaystyle{e^{-x^2 / 2} \\over \\sqrt{2^{n-1}(n-1)!\\pi^{1/2}}}\\Bigg)H_{n+1}(x) = {1 \\over \\sqrt{2n} }\\Bigg( \\displaystyle{e^{-x^2 /2} \\over \\sqrt{2^{n-1}(n-1)!\\pi^{1/2}}}\\Bigg)2xH_{n}(x) -{2n \\over \\sqrt{2n}} \\, \\psi_{n-1}(x) \\implies$

\n\n

$\\Bigg(\\displaystyle{e^{-x^2 / 2} \\over \\sqrt{2^n n!\\pi^{1/2}}}\\Bigg) H_{n+1}(x) = 2x\\psi_{n}(x) - {2n \\over \\sqrt{2n}} \\, \\psi_{n-1}(x) \\implies$

\n\n

$\\displaystyle\\Bigg({1 \\over \\sqrt{2(n+1)} }\\Bigg)\\Bigg(\\displaystyle{e^{-x^2 / 2} \\over \\sqrt{2^n n!\\pi^{1/2}} }\\Bigg) H_{n+1}(x) = \\displaystyle\\Bigg({1 \\over \\sqrt{2(n+1)}}\\Bigg)2x\\psi_{n}(x) - \\displaystyle\\Bigg({1 \\over \\sqrt{2(n+1)}}\\Bigg) \\, {2n \\over \\sqrt{2n} } \\, \\psi_{n-1}(x) \\implies$

\n\n

$$\\psi_{n+1}(x) = \\displaystyle\\Bigg(\\sqrt{2 \\over n+1}\\Bigg)x\\psi_{n}(x) -\\Bigg(\\sqrt{n \\over n+1}\\Bigg)\\psi_{n-1}(x) \\quad \\mathbf{(12)}$$

\n\n

Besides the use of this recurrence in this package, the same authors implemented a version of it in a Cython module of QuTip: _distributions.pyx, to be used in the HarmonicOscillatorWaveFunction class from the distributions.py module.

\n\n

\u26a1\ufe0fThe Numba Module - Hybrid Solution

\n\n

We use a hybrid solution with two algorithms for calculating the wave function for calculating a single Fock wave function's values at multiple positions (Single Fock and Multiple Position) (psi_n_single_fock_multiple_position). For $n>60$ or more than 35 positions, we use the recurrence for the wave function. For $n\\le 60$ and at most 35 positions we use a precomputed matrix with the normalized coefficients of the Hermite polynomial as follows:

\n\n

$$\\psi_{i}(x) = \\displaystyle{1 \\over \\sqrt{2^i i!\\pi^{1/2}}}H_{i}(x)e^{-x^{2}/2} = {1 \\over \\sqrt{2^{i}i!\\pi^{1/2}}}\\mathbf{C_{n}[i]} \\cdot \\mathbf{x^{p}} e^{-x^{2}/2} \\implies $$

\n\n

$$\\psi_{i}(x) = \\mathbf{C^{s}_{n}[i]\\cdot x^{p}e^{-x^{2}/2} \\quad \\mathbf{(13)}}$$

\n\n

where $\\mathbf{C^{s}_{n}[i]}$ is the row vector of normalized coefficients that multiply each power of $x$ up to $x^n$. The entire matrix $\\mathbf{C^s_n}$ of such rows is precomputed up to degree $n=60$. $\\mathbf{x^{p}}$ is a column vector of powers up to n, with zeros in places where the coefficient is zero; for example, for $i=3$, $\\mathbf{x^{p}} = [x^{3}, 0.0, x^{1}, 0.0]^T$. This hybrid algorithm is also used in Single Fock and Single Position (psi_n_single_fock_single_position) problems, though it offers no computational advantage in these cases. Additionally, there is an argument named CS_matrix for these Single Fock functions, set to True to enable the use of this matrix. In other words, you can use only the recurrence relation for the wave function at any value. The use of this coefficient matrix is limited to values up to 60 (determined empirically), as beyond this point, the function may encounter precision errors, resulting in incoherent outputs [13].

\n\n

\u26a1\ufe0f The Numba Module - Arguments

\n\n

For this algorithm to perform as efficiently as possible, Numba's Just-in-Time compilation is used in conjunction with lru_cache (Least Recently Used - Cache Management). The following arguments were used in the @nb.jit decorator:

\n\n
    \n
  • nopython=True: This argument forces the Numba compiler to operate in \"nopython\" mode, which means that all the code within the function must be compilable to pure machine code without falling back to the Python interpreter. This results in significant performance improvements by eliminating the overhead of the Python interpreter.
  • \n
  • looplift=True: This argument allows Numba to \"lift\" loops out of \"nopython\" mode. That is, if there are loops in the code that cannot be compiled in \"nopython\" mode, Numba will try to move them outside of the compiled part and execute them as normal Python code.
  • \n
  • nogil=True: This argument releases the Python Global Interpreter Lock (GIL) while the function is executing. It is useful for allowing the Numba-compiled code to run in parallel with other Python threads, increasing performance in multi-threaded programs.
  • \n
  • boundscheck=False: Disables array bounds checking. Normally, Numba checks if array indices are within valid bounds. Disabling this check can increase performance but may result in undefined behavior if there are out-of-bounds accesses.
  • \n
  • cache=True: Enables caching of the compiled function. The first time the function is compiled, Numba stores the compiled version in a cache. On subsequent executions, Numba can reuse the compiled version from the cache instead of recompiling the function, reducing the function's startup time.
  • \n
\n\n

\u2699\ufe0f The Cython Module

\n\n

The Cython module includes compiled files for Linux (.so) and Windows (.pyd), which allows it to be used in Google Colab (Linux). Additionally, this module supports three versions of Python 3: 3.10, 3.11, and 3.12. All these files are placed in the package folder upon installation. The source code of the Cython module is available in the repository in .pyx format. In the functions of the Cython module, some decorators are used to increase speed:

\n\n
    \n
  • @cython.nogil: This decorator allows a Cython function to release the Global Interpreter Lock (GIL), making it possible to execute that block of code concurrently in multiple threads.
  • \n
  • @cython.cfunc: This decorator tells Cython to treat the function as a C function, meaning it can be called from other Cython or C code, not just Python. The function will have C-level calling conventions.
  • \n
  • @cython.locals(...): Declares local variable types to optimize performance.
  • \n
  • @cython.boundscheck(False): Disables bounds checking for arrays/lists to boost speed, but at the cost of safety.
  • \n
\n\n

\ud83d\udcd6 References

\n\n

Our journey through the quantum realm is inspired by the following:

\n\n
    \n
  1. Lam, S. K., Pitrou, A., & Seibert, S. (2015). _Numba: A LLVM-based Python JIT compiler_. In _Proceedings of the Second Workshop on the LLVM Compiler Infrastructure in HPC_ (LLVM '15) (pp. 7-12). Association for Computing Machinery. https://doi.org/10.1145/2833157.2833162
  2. \n
  3. Behnel, S., Bradshaw, R., Citro, C., Dalcin, L., Seljebotn, D. S., & Smith, K. (2011). Cython: The best of both worlds. Computing in Science & Engineering, 13(2), 31-39. https://doi.org/10.1109/MCSE.2010.118
  4. \n
  5. Yao, Y., Miatto, F., & Quesada, N. (2024). _Riemannian optimization of photonic quantum circuits in phase and Fock space_ [Preprint]. arXiv:2209.06069. https://doi.org/10.21468/SciPostPhys.17.3.082
  6. \n
  7. Miatto, F. M., & Quesada, N. (2020). _Fast optimization of parametrized quantum optical circuits_ (Quantum, 4, 366). https://doi.org/10.22331/q-2020-11-30-366
  8. \n
  9. Bowers, P. L. (2020). Lectures on Quantum Mechanics: A Primer for Mathematicians. Cambridge University Press. ISBN: 1108429769 (9781108429764)
  10. \n
  11. Aerts, D., Beltran, L. Quantum Structure in Cognition: Human Language as a Boson Gas of Entangled Words. Found Sci 25, 755\u2013802 (2020). https://doi.org/10.1007/s10699-019-09633-4
  12. \n
  13. Beiser, A. (2003). Concepts of Modern Physics. 6th ed. McGraw Hill. ISBN: 0072448482 (9780072448481)
  14. \n
  15. Celeghini, E., Gadella, M., & del Olmo, M. A. (2021). Hermite functions and Fourier series. Symmetry, 13(5), Article 853. https://doi.org/10.3390/sym13050853
  16. \n
  17. Schleich, W. P. (2001). Quantum optics in phase space. Wiley-VCH. ISBN: 352729435X (9783527294350)
  18. \n
  19. Leonhardt, U. (2010). Essential Quantum Optics: From Quantum Measurements to Black Holes. Cambridge: Cambridge University Press. ISBN: 0521869781 (9780521869782)
  20. \n
  21. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, 39(1), 015402. https://doi.org/10.1088/1361-6404/aa9584
  22. \n
  23. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press. ISBN: 0521192250 (9780521192255)
  24. \n
  25. Cordeiro, M., Bezerra, I. P., & Vasconcelos, H. H. M. (2024). Efficient computation of the wave function \u03c8n(x) using Hermite coefficient matrix in Python. In 7\u00ba Workshop Escola de Computa\u00e7\u00e3o e Informa\u00e7\u00e3o Qu\u00e2ntica (7\u00aa WECIQ) (pp. 56-60). CEFET/RJ.
  26. \n
\n\n

\ud83e\udd1d Contributing

\n\n

Contributions, whether filing an issue, proposing improvements, or submitting a pull request, are welcome! Please feel free to explore, ask questions, and share your ideas.

\n\n

\ud83d\udcdc License

\n\n

This project is available under the BSD 3-Clause License. See the LICENSE file for more details.

\n\n

\ud83d\udcec Contact

\n\n

If you have any questions or want to reach out to the team, please send me an email at matheusgomescord@gmail.com.

\n"}, "fast_wave.caching": {"fullname": "fast_wave.caching", "modulename": "fast_wave.caching", "kind": "module", "doc": "

\n"}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"fullname": "fast_wave.caching.int_array_cache_Numba_single_fock", "modulename": "fast_wave.caching", "qualname": "int_array_cache_Numba_single_fock", "kind": "function", "doc": "

Cache decorator for functions that receive real multiple positions (numpy array) \nand is a problem Single Fock in the Numba module.

\n\n

This decorator caches function results to improve performance, particularly when fn \nis called multiple times with the same arguments. The function to be decorated must accept \nan integer n, a numpy array x_array, and a boolean CS_matrix. The numpy array is \nconverted to a tuple for caching purposes, as lru_cache only accepts hashable types.

\n\n
Arguments:
\n\n
    \n
  • fn (callable): The function to be decorated, which takes three arguments:\n
      \n
    • n (np.uint64): The state number.
    • \n
    • x_array (np.ndarray[np.float64]): Array representing the positions.
    • \n
    • CS_matrix (bool): A flag to indicate CS matrix.
    • \n
  • \n
\n\n
Returns:
\n\n
\n

callable : A wrapped version of fn with caching enabled, including methods to access cache information.

\n
\n\n
References:
\n\n
\n
    \n
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link),\n which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. \n
\n
\n", "signature": "(fn):", "funcdef": "def"}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"fullname": "fast_wave.caching.int_array_cache_Numba_multiple_fock", "modulename": "fast_wave.caching", "qualname": "int_array_cache_Numba_multiple_fock", "kind": "function", "doc": "

Cache decorator for functions that receive real multiple positions (numpy array) \nand is a problem Multiple Fock in the Numba module.

\n\n

This decorator caches function results to improve performance, particularly when fn \nis called multiple times with the same arguments. The function to be decorated must accept \nan integer n, a numpy array x_array, and a boolean CS_matrix. The numpy array is \nconverted to a tuple for caching purposes, as lru_cache only accepts hashable types.

\n\n
Arguments:
\n\n
    \n
  • fn (callable): The function to be decorated, which takes two arguments:\n
      \n
    • n (np.uint64): The state number.
    • \n
    • x_array (np.ndarray[np.float64]): Array representing the positions.
    • \n
  • \n
\n\n
Returns:
\n\n
\n

callable : A wrapped version of fn with caching enabled, including methods to access cache information.

\n
\n\n
References:
\n\n
\n
    \n
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link),\n which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. \n
\n
\n", "signature": "(fn):", "funcdef": "def"}, "fast_wave.caching.int_array_cache_Cython": {"fullname": "fast_wave.caching.int_array_cache_Cython", "modulename": "fast_wave.caching", "qualname": "int_array_cache_Cython", "kind": "function", "doc": "

Cache decorator for functions that receive real multiple positions (numpy array) \nin the Cython module.

\n\n

This decorator caches function results to improve performance, particularly when fn \nis called multiple times with the same arguments. The function to be decorated must accept \nan integer n and a numpy array x_array. The numpy array is converted to a tuple for \ncaching purposes, as lru_cache only accepts hashable types.

\n\n
Arguments:
\n\n
    \n
  • fn (callable): The function to be decorated, which takes two arguments:\n
      \n
    • n (np.uint64): The state number.
    • \n
    • x_array (np.ndarray[np.float64]): Array representing the positions.
    • \n
  • \n
\n\n
Returns:
\n\n
\n

callable : A wrapped version of fn with caching enabled, including methods to access cache information.

\n
\n\n
References:
\n\n
\n
    \n
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link),\n which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. \n
\n
\n", "signature": "(fn):", "funcdef": "def"}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"fullname": "fast_wave.caching.int_array_cache_Numba_complex_single_fock", "modulename": "fast_wave.caching", "qualname": "int_array_cache_Numba_complex_single_fock", "kind": "function", "doc": "

Cache decorator for functions that receive complex multiple positions (numpy array) \nand is a problem Single Fock in the Numba module.

\n\n

This decorator caches function results to improve performance, particularly when fn \nis called multiple times with the same arguments. The function to be decorated must accept \nan integer n, a numpy array x_array, and a boolean CS_matrix. The numpy array is \nconverted to a tuple for caching purposes, as lru_cache only accepts hashable types.

\n\n
Arguments:
\n\n
    \n
  • fn (callable): The function to be decorated, which takes three arguments:\n
      \n
    • n (np.uint64): The state number.
    • \n
    • x_array (np.ndarray[np.complex128]): Array representing the positions.
    • \n
    • CS_matrix (bool): A flag to indicate CS matrix.
    • \n
  • \n
\n\n
Returns:
\n\n
\n

callable : A wrapped version of fn with caching enabled, including methods to access cache information.

\n
\n\n
References:
\n\n
\n
    \n
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link),\n which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. \n
\n
\n", "signature": "(fn):", "funcdef": "def"}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"fullname": "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock", "modulename": "fast_wave.caching", "qualname": "int_array_cache_Numba_complex_multiple_fock", "kind": "function", "doc": "

Cache decorator for functions that receive complex multiple positions (numpy array) \nin the Numba module.

\n\n

This decorator caches function results to improve performance, particularly when fn \nis called multiple times with the same arguments. The function to be decorated must accept \nan integer n, a numpy array x_array, and a boolean CS_matrix. The numpy array is \nconverted to a tuple for caching purposes, as lru_cache only accepts hashable types.

\n\n
Arguments:
\n\n
    \n
  • fn (callable): The function to be decorated, which takes two arguments:\n
      \n
    • n (np.uint64): The state number.
    • \n
    • x_array (np.ndarray[np.complex128]): Array representing the positions.
    • \n
  • \n
\n\n
Returns:
\n\n
\n

callable : A wrapped version of fn with caching enabled, including methods to access cache information.

\n
\n\n
References:
\n\n
\n
    \n
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link),\n which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. \n
\n
\n", "signature": "(fn):", "funcdef": "def"}, "fast_wave.caching.int_array_cache_Cython_complex": {"fullname": "fast_wave.caching.int_array_cache_Cython_complex", "modulename": "fast_wave.caching", "qualname": "int_array_cache_Cython_complex", "kind": "function", "doc": "

Cache decorator for functions that receive complex multiple positions (numpy array)\nand is a problem Single Fock in the Cython module.

\n\n

This decorator caches function results to improve performance, particularly when fn\nis called multiple times with the same arguments. The function to be decorated must accept \nan integer n and a numpy array x_array. The numpy array is converted to a tuple for \ncaching purposes, as lru_cache only accepts hashable types.

\n\n
Arguments:
\n\n
    \n
  • fn (callable): The function to be decorated. It must take two arguments:\n
      \n
    • n (np.uint64): The state number.
    • \n
    • x_array (np.ndarray of dtype=np.complex128): The positions.
    • \n
  • \n
\n\n
Returns:
\n\n
\n

callable : A wrapped version of fn with caching enabled. This wrapped function also exposes the following methods for cache management.

\n
\n\n
References:
\n\n
\n
    \n
  1. This code is a modified version of the tensor_int_cache provided in Mr Mustard (link),\n which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved.
  2. \n
\n
\n", "signature": "(fn):", "funcdef": "def"}, "fast_wave.wavefunction_cython": {"fullname": "fast_wave.wavefunction_cython", "modulename": "fast_wave.wavefunction_cython", "kind": "module", "doc": "

\n"}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"fullname": "fast_wave.wavefunction_cython.psi_n_single_fock_single_position", "modulename": "fast_wave.wavefunction_cython", "qualname": "psi_n_single_fock_single_position", "kind": "function", "doc": "

Compute the wavefunction for a real scalar x using the adapted recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (double): Position at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

double : The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_single_position(0, 1.0)\n0.45558067201133257\n>>> psi_n_single_fock_single_position(61, 1.0)\n-0.2393049199171131\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"fullname": "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex", "modulename": "fast_wave.wavefunction_cython", "qualname": "psi_n_single_fock_single_position_complex", "kind": "function", "doc": "

Compute the wavefunction for a complex scalar x using the adapted recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (double complex): Position at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

double complex : The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j)\n(-1.4008797330262455-3.0609780602975003j)\n>>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j)\n(-511062135.47555304+131445997.75753704j)\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"fullname": "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position", "modulename": "fast_wave.wavefunction_cython", "qualname": "psi_n_single_fock_multiple_position", "kind": "function", "doc": "

Compute the wavefunction for a real vector x using the adapted recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (np.ndarray[np.float64_t]): Position at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

np.ndarray[np.float64_t] : The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]))\narray([0.45558067, 0.10165379])\n>>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]))\narray([-0.23930492, -0.01677378])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"fullname": "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex", "modulename": "fast_wave.wavefunction_cython", "qualname": "psi_n_single_fock_multiple_position_complex", "kind": "function", "doc": "

Compute the wavefunction for a complex vector x using the adapted recurrence relation.

\n\n

There is another version of this code, implemented by the same authors who developed this function, in a Cython module of QuTip: _distributions.pyx, to be used in the HarmonicOscillatorWaveFunction class from the distributions.py module.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (np.ndarray[np.complex128_t]): Position at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

np.ndarray[np.complex128_t]: The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]))\narray([ 0.40583486-0.63205035j, -0.49096842+0.56845369j])\n>>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]))\narray([-7.56548941e+03+9.21498621e+02j, -1.64189542e+08-3.70892077e+08j])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"fullname": "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position", "modulename": "fast_wave.wavefunction_cython", "qualname": "psi_n_multiple_fock_single_position", "kind": "function", "doc": "

Compute the wavefunction for a real scalar x to all Fock states up to n using the adapted recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (double): Position at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

np.ndarray[np.float64_t] : The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_multiple_fock_single_position(0, 1.0)\narray([0.45558067, 0.64428837])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"fullname": "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex", "modulename": "fast_wave.wavefunction_cython", "qualname": "psi_n_multiple_fock_single_position_complex", "kind": "function", "doc": "

Compute the wavefunction for a complex scalar x to all Fock states up to n using the adapted recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (double complex): Position at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

np.ndarray[np.complex128_t] : The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_multiple_fock_single_position_complex(0, 1.0 + 2.0j)\narray([-1.40087973-3.06097806j,  6.67661026-8.29116292j])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"fullname": "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position", "modulename": "fast_wave.wavefunction_cython", "qualname": "psi_n_multiple_fock_multiple_position", "kind": "function", "doc": "

Compute the wavefunction for a real vector x to all Fock states up to n using the adapted recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (np.ndarray[np.float64_t]): Positions at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

np.ndarray[np.ndarray[np.float64_t]]: The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_multiple_fock_multiple_position(1, np.array([1.0, 2.0]))\narray([[0.45558067, 0.10165379],\n       [0.64428837, 0.28752033]])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"fullname": "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex", "modulename": "fast_wave.wavefunction_cython", "qualname": "psi_n_multiple_fock_multiple_position_complex", "kind": "function", "doc": "

Compute the wavefunction for a complex vector x to all Fock states up to n using the adapted recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (np.ndarray[np.complex128_t]): Positions at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

np.ndarray[np.ndarray[np.complex128_t]]: The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_multiple_fock_multiple_position_complex(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]))\narray([[ 0.40583486-0.63205035j, -0.49096842+0.56845369j],\n       [ 1.46779135-0.31991701j, -2.99649822+0.21916143j]])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_mpmath": {"fullname": "fast_wave.wavefunction_mpmath", "modulename": "fast_wave.wavefunction_mpmath", "kind": "module", "doc": "

\n"}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"fullname": "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position", "modulename": "fast_wave.wavefunction_mpmath", "qualname": "psi_n_single_fock_single_position", "kind": "function", "doc": "

Calculates the nth wavefunction for a real scalar x with arbitrary precision using mpmath.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (float): Position at which to evaluate the wavefunction.
  • \n
  • prec (numpy.uint64): Desired precision for the calculation (number of decimal digits).
  • \n
\n\n
Returns:
\n\n
\n

mpmath.ctx_mp_python.mpf : evaluated wavefunction with the specified precision.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_single_position(0, 1.0, 60)\nmpf('0.45558067201133253483370525689785138607662639040929439687915331')\n>>> psi_n_single_fock_single_position(61, 1.0, 60)\nmpf('-0.239304919917113097789996116536717211865611421191819349290628243')\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision \n floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. \n
\n
\n", "signature": "(n, x, prec):", "funcdef": "def"}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"fullname": "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex", "modulename": "fast_wave.wavefunction_mpmath", "qualname": "psi_n_single_fock_single_position_complex", "kind": "function", "doc": "

Calculates the nth wavefunction for a complex scalar x with arbitrary precision using mpmath.

\n\n
Arguments:
\n\n
    \n
  • n (np.uint64): Quantum state number.
  • \n
  • x (np.complex128): Position at which to evaluate the wavefunction.
  • \n
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • \n
\n\n
Returns:
\n\n
\n

mpmath.ctx_mp_python.mpc : The evaluated wavefunction with the specified precision.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j, 60)\nmpc(real='-1.40087973302624535996319358379185603705205815719366827159881527', imag='-3.06097806029750039193292973729038840279841978760336147713769087')\n>>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j, 60)\nmpc(real='-511062135.475553070892329856229109412939170026007243421420322129', imag='131445997.757536932748911867174534983962121585813389430606204944')\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. \n
\n
\n", "signature": "(n, x, prec):", "funcdef": "def"}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"fullname": "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position", "modulename": "fast_wave.wavefunction_mpmath", "qualname": "psi_n_single_fock_multiple_position", "kind": "function", "doc": "

Calculates the nth wavefunction for a real vector x with arbitrary precision using mpmath.

\n\n
Arguments:
\n\n
    \n
  • n (np.uint64): Quantum state number.
  • \n
  • x (np.ndarray[np.float64]): Positions at which to evaluate the wavefunction.
  • \n
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • \n
\n\n
Returns:
\n\n
\n

mpmath.matrices.matrices._matrix : The evaluated wavefunction with the specified precision.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]), 20)\nmatrix(\n[['0.45558067201133253483', '0.10165378830641791152']])\n>>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]), 20)\nmatrix(\n[['-0.23930491991711309779', '-0.016773782204892582343']])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. \n
\n
\n", "signature": "(n, X, prec):", "funcdef": "def"}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"fullname": "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex", "modulename": "fast_wave.wavefunction_mpmath", "qualname": "psi_n_single_fock_multiple_position_complex", "kind": "function", "doc": "

Calculates the nth wavefunction for a complex vector x with arbitrary precision using mpmath.

\n\n
Arguments:
\n\n
    \n
  • n (np.uint64): Quantum state number.
  • \n
  • x (np.ndarray[np.complex128]): Positions at which to evaluate the wavefunction.
  • \n
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • \n
\n\n
Returns:
\n\n
\n

mpmath.matrices.matrices._matrix : The evaluated wavefunction with the specified precision.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)\nmatrix(\n[[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), \nmpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')]])\n>>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)\nmatrix(\n[[mpc(real='-7565.4894098859360141926', imag='921.4986211518276840917'), \nmpc(real='-164189541.53192908120809', imag='-370892077.23796911662203')]])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. \n
\n
\n", "signature": "(n, X, prec):", "funcdef": "def"}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"fullname": "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position", "modulename": "fast_wave.wavefunction_mpmath", "qualname": "psi_n_multiple_fock_single_position", "kind": "function", "doc": "

Determines the wavefunction for a real scalar x for all Fock states up to n, employing mpmath for arbitrary-precision calculations.

\n\n
Arguments:
\n\n
    \n
  • n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
  • \n
  • x (np.float64): Position at which to evaluate the wavefunctions.
  • \n
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • \n
\n\n
Returns:
\n\n
\n

mpmath.matrices.matrices._matrix : The evaluated wavefunctions with the specified precision.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_multiple_fock_single_position(1, 1.0, 60)\nmatrix(\n[['0.455580672011332534833705256897851386076626390409294396879153', \n'0.644288365113475181510837645362740498634994248687269122618738']])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. \n
\n
\n", "signature": "(n, x, prec):", "funcdef": "def"}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"fullname": "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex", "modulename": "fast_wave.wavefunction_mpmath", "qualname": "psi_n_multiple_fock_single_position_complex", "kind": "function", "doc": "

Determines the wavefunction for a complex scalar x for all Fock states up to n, employing mpmath for arbitrary-precision calculations.

\n\n
Arguments:
\n\n
    \n
  • n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
  • \n
  • x (np.complex128): Position at which to evaluate the wavefunctions.
  • \n
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • \n
\n\n
Returns:
\n\n
\n

mpmath.matrices.matrices._matrix : The evaluated wavefunctions with the specified precision.

\n
\n\n
Examples:
\n\n
\n
\n
>>> c_wavefunction_mmod_arb_prec(1, 1.0 + 2.0j, 20)\nmatrix(\n[[mpc(real='-1.400879733026245359964', imag='-3.0609780602975003919354'), \nmpc(real='6.6766102562991123531695', imag='-8.2911629223978481324862')]])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. \n
\n
\n", "signature": "(n, x, prec):", "funcdef": "def"}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"fullname": "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position", "modulename": "fast_wave.wavefunction_mpmath", "qualname": "psi_n_multiple_fock_multiple_position", "kind": "function", "doc": "

Determines the wavefunction for a real vector x for all Fock states up to n, employing mpmath for arbitrary-precision calculations.

\n\n
Arguments:
\n\n
    \n
  • n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
  • \n
  • x (np.ndarray[np.float64]): Positions at which to evaluate the wavefunctions.
  • \n
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • \n
\n\n
Returns:
\n\n
\n

mpmath.matrices.matrices._matrix : The evaluated wavefunctions with the specified precision.

\n
\n\n
Examples:
\n\n
\n
\n
>>> wavefunction_mmmd_arb_prec(1, np.array([1.0, 2.0]), 20)\nmatrix(\n[['0.45558067201133253483', '0.10165378830641791152'],\n['0.64428836511347518151', '0.28752033217907949445']])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. \n
\n
\n", "signature": "(n, X, prec):", "funcdef": "def"}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"fullname": "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex", "modulename": "fast_wave.wavefunction_mpmath", "qualname": "psi_n_multiple_fock_multiple_position_complex", "kind": "function", "doc": "

Determines the wavefunction for a complex vector x for all Fock states up to n, employing mpmath for arbitrary-precision calculations.

\n\n
Arguments:
\n\n
    \n
  • n (np.uint64): Quantum state number up to which the wavefunctions are calculated.
  • \n
  • x (np.ndarray[np.complex128]): Positions at which to evaluate the wavefunctions.
  • \n
  • prec (np.uint64): Desired precision for the calculation (number of decimal digits).
  • \n
\n\n
Returns:
\n\n
\n

mpmath.matrices.matrices._matrix : The evaluated wavefunctions with the specified precision.

\n
\n\n
Examples:
\n\n
\n
\n
>>> c_wavefunction_mmmd_arb_prec(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20)\n[[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), \nmpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')],\n[mpc(real='1.4677913476441970351171', imag='-0.31991701106983521979673'), \nmpc(real='-2.9964982238469495343176', imag='0.21916142736845211639935')]]\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/
  2. \n
\n
\n", "signature": "(n, X, prec):", "funcdef": "def"}, "fast_wave.wavefunction_numba": {"fullname": "fast_wave.wavefunction_numba", "modulename": "fast_wave.wavefunction_numba", "kind": "module", "doc": "

\n"}, "fast_wave.wavefunction_numba.c_s_matrix": {"fullname": "fast_wave.wavefunction_numba.c_s_matrix", "modulename": "fast_wave.wavefunction_numba", "qualname": "c_s_matrix", "kind": "variable", "doc": "

\n", "default_value": "array([[ 0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ...,\n 0.00000000e+00, 0.00000000e+00, 7.51125544e-01],\n [ 0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ...,\n 0.00000000e+00, 1.06225193e+00, 0.00000000e+00],\n [ 0.00000000e+00, 0.00000000e+00, 0.00000000e+00, ...,\n 1.06225193e+00, 0.00000000e+00, -5.31125966e-01],\n ...,\n [ 0.00000000e+00, 0.00000000e+00, 2.63024748e-31, ...,\n 1.40707622e+01, 0.00000000e+00, -2.42599349e-01],\n [ 0.00000000e+00, 4.84267813e-32, 0.00000000e+00, ...,\n 0.00000000e+00, -2.63530347e+00, 0.00000000e+00],\n [ 8.84148017e-33, 0.00000000e+00, -7.82470995e-30, ...,\n -1.44341516e+01, 0.00000000e+00, 2.40569193e-01]])"}, "fast_wave.wavefunction_numba.compilation_test": {"fullname": "fast_wave.wavefunction_numba.compilation_test", "modulename": "fast_wave.wavefunction_numba", "qualname": "compilation_test", "kind": "variable", "doc": "

\n", "default_value": "True"}, "fast_wave.wavefunction_numba.hermite_sympy": {"fullname": "fast_wave.wavefunction_numba.hermite_sympy", "modulename": "fast_wave.wavefunction_numba", "qualname": "hermite_sympy", "kind": "function", "doc": "

Compute the nth Hermite polynomial using symbolic differentiation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Order of the Hermite polynomial.
  • \n
\n\n
Returns:
\n\n
\n

sympy.Poly : The nth Hermite polynomial as a sympy expression.

\n
\n\n
Examples:
\n\n
\n
\n
>>> hermite_sympy(2)\n4*x**2 - 2\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press. https://search.worldcat.org/pt/title/502037224?oclcNum=502037224
  2. \n
  3. NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15.
  4. \n
  5. Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html
  6. \n
\n
\n", "signature": "(n):", "funcdef": "def"}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"fullname": "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix", "modulename": "fast_wave.wavefunction_numba", "qualname": "create_normalized_hermite_coefficients_matrix", "kind": "function", "doc": "

Create a matrix of coefficients for normalized Hermite polynomials up to order n_max.

\n\n
Arguments:
\n\n
    \n
  • n_max (int): The maximum order of Hermite polynomials to compute.
  • \n
\n\n
Returns:
\n\n
\n

np.ndarray : A 2D numpy array containing the coefficients for the Hermite polynomials.

\n
\n\n
Examples:
\n\n
\n
\n
>>> create_normalized_hermite_coefficients_matrix(3)\narray([[ 0.        ,  0.        ,  0.        ,  0.75112554],\n       [ 0.        ,  0.        ,  1.06225193,  0.        ],\n       [ 0.        ,  1.06225193,  0.        , -0.53112597],\n       [ 0.86732507,  0.        , -1.30098761,  0.        ]])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press.
  2. \n
  3. NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15.
  4. \n
  5. Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html
  6. \n
\n
\n", "signature": "(n_max):", "funcdef": "def"}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"fullname": "fast_wave.wavefunction_numba.psi_n_single_fock_single_position", "modulename": "fast_wave.wavefunction_numba", "qualname": "psi_n_single_fock_single_position", "kind": "function", "doc": "

Compute the wavefunction for a real scalar x using a pre-computed matrix of normalized Hermite polynomial coefficients \nuntil n=60 and then use the adapted recurrence relation for higher orders.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (float): Position at which to evaluate the wavefunction.
  • \n
  • CS_matrix (bool, optional): If True, use the optimized method for n <= 60, which relies on a pre-computed matrix \nof coefficients for faster computation. For n > 60 or if False, use the general recursion \nmethod. Defaults to True.
  • \n
\n\n
Returns:
\n\n
\n

float : The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_single_position(0, 1.0)\n0.45558067201133257\n>>> psi_n_single_fock_single_position(61, 1.0)\n-0.2393049199171131\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x, CS_matrix=True):", "funcdef": "def"}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"fullname": "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex", "modulename": "fast_wave.wavefunction_numba", "qualname": "psi_n_single_fock_single_position_complex", "kind": "function", "doc": "

Compute the wavefunction for a complex scalar x using a pre-computed matrix of normalized Hermite polynomial coefficients \nuntil n=60 and then use the adapted recurrence relation for higher orders.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (complex): Position at which to evaluate the wavefunction.
  • \n
  • CS_matrix (bool, optional): If True, use the optimized method for n <= 60, which relies on a pre-computed matrix \nof coefficients for faster computation. For n > 60 or if False, use the general recursion \nmethod. Defaults to True.
  • \n
\n\n
Returns:
\n\n
\n

complex: The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j)\n(-1.4008797330262455 - 3.0609780602975003j)\n>>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j)\n(-511062135.47555304 + 131445997.75753704j)\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x, CS_matrix=True):", "funcdef": "def"}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"fullname": "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position", "modulename": "fast_wave.wavefunction_numba", "qualname": "psi_n_single_fock_multiple_position", "kind": "function", "doc": "

Compute the wavefunction for a real vector x using a pre-computed matrix of normalized Hermite polynomial coefficients \nuntil n=60 and x_size = 35. For higher orders, use the adapted recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (numpy.ndarray): Positions at which to evaluate the wavefunction.
  • \n
  • CS_matrix (bool, optional): If True, use the optimized method for n <= 60 and x_size <= 35, which relies on a pre-computed matrix \nof coefficients for faster computation. For n > 60, or x_size > 35 or if False, use the general recursion \nmethod. Defaults to True.
  • \n
\n\n
Returns:
\n\n
\n

numpy.ndarray: The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]))\narray([0.45558067, 0.10165379])\n>>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]))\narray([-0.23930492, -0.01677378])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x, CS_matrix=True):", "funcdef": "def"}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"fullname": "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex", "modulename": "fast_wave.wavefunction_numba", "qualname": "psi_n_single_fock_multiple_position_complex", "kind": "function", "doc": "

Compute the wavefunction for a complex vector x using a pre-computed matrix of normalized Hermite polynomial coefficients \nuntil n=60 and x_size = 35. For higher orders, use the adapted recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (numpy.ndarray): Positions at which to evaluate the wavefunction.
  • \n
  • CS_matrix (bool, optional): If True, use the optimized method for n <= 60 and x_size <= 35, which relies on a pre-computed matrix \nof coefficients for faster computation. For n > 60, or x_size > 35 or if False, use the general recursion \nmethod. Defaults to True.
  • \n
\n\n
Returns:
\n\n
\n

numpy.ndarray: The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]))\narray([ 0.40583486-0.63205035j, -0.49096842+0.56845369j])\n>>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]))\narray([-7.56548941e+03+9.21498621e+02j, -1.64189542e+08-3.70892077e+08j])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x, CS_matrix=True):", "funcdef": "def"}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"fullname": "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position", "modulename": "fast_wave.wavefunction_numba", "qualname": "psi_n_multiple_fock_single_position", "kind": "function", "doc": "

Compute the wavefunction for a real scalar x to all Fock states up to n using the recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (float): Position at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

numpy.ndarray: The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_multiple_fock_single_position(1, 1.0)\narray([0.45558067, 0.64428837])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"fullname": "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex", "modulename": "fast_wave.wavefunction_numba", "qualname": "psi_n_multiple_fock_single_position_complex", "kind": "function", "doc": "

Compute the wavefunction for a complex scalar x to all Fock states up to n using the recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (complex): Position at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

numpy.ndarray: The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_multiple_fock_single_position_complex(1, 1.0 + 2.0j)\narray([-1.40087973-3.06097806j,  6.67661026-8.29116292j])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"fullname": "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position", "modulename": "fast_wave.wavefunction_numba", "qualname": "psi_n_multiple_fock_multiple_position", "kind": "function", "doc": "

Compute the wavefunction for a real vector x to all Fock states up to n using the recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (numpy.ndarray): Positions at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

numpy.ndarray: The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_multiple_fock_multiple_position(1, np.array([1.0, 2.0]))\narray([[0.45558067, 0.10165379],\n       [0.64428837, 0.28752033]])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"fullname": "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex", "modulename": "fast_wave.wavefunction_numba", "qualname": "psi_n_multiple_fock_multiple_position_complex", "kind": "function", "doc": "

Compute the wavefunction for a complex vector x to all Fock states up to n using the recurrence relation.

\n\n
Arguments:
\n\n
    \n
  • n (int): Quantum state number.
  • \n
  • x (numpy.ndarray): Positions at which to evaluate the wavefunction.
  • \n
\n\n
Returns:
\n\n
\n

numpy.ndarray: The evaluated wavefunction.

\n
\n\n
Examples:
\n\n
\n
\n
>>> psi_n_multiple_fock_multiple_position_complex(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]))\narray([[ 0.40583486-0.63205035j, -0.49096842+0.56845369j],\n       [ 1.46779135-0.31991701j, -2.99649822+0.21916143j]])\n
\n
\n
\n\n
References:
\n\n
\n
    \n
  1. P\u00e9rez-Jord\u00e1, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. European Journal of Physics, \n 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584
  2. \n
\n
\n", "signature": "(n, x):", "funcdef": "def"}}, "docInfo": {"fast_wave": {"qualname": 0, "fullname": 2, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3850}, "fast_wave.caching": {"qualname": 0, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"qualname": 6, "fullname": 9, "annotation": 0, "default_value": 0, "signature": 11, "bases": 0, "doc": 244}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"qualname": 6, "fullname": 9, "annotation": 0, "default_value": 0, "signature": 11, "bases": 0, "doc": 231}, "fast_wave.caching.int_array_cache_Cython": {"qualname": 4, "fullname": 7, "annotation": 0, "default_value": 0, "signature": 11, "bases": 0, "doc": 219}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"qualname": 7, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 11, "bases": 0, "doc": 244}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"qualname": 7, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 11, "bases": 0, "doc": 225}, "fast_wave.caching.int_array_cache_Cython_complex": {"qualname": 5, "fullname": 8, "annotation": 0, "default_value": 0, "signature": 11, "bases": 0, "doc": 232}, "fast_wave.wavefunction_cython": {"qualname": 0, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 197}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 225}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 245}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 335}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 179}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 195}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 207}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 234}, "fast_wave.wavefunction_mpmath": {"qualname": 0, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 21, "bases": 0, "doc": 236}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 21, "bases": 0, "doc": 271}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 21, "bases": 0, "doc": 291}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 21, "bases": 0, "doc": 361}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 21, "bases": 0, "doc": 224}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 21, "bases": 0, "doc": 244}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 21, "bases": 0, "doc": 249}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 21, "bases": 0, "doc": 295}, "fast_wave.wavefunction_numba": {"qualname": 0, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "fast_wave.wavefunction_numba.c_s_matrix": {"qualname": 3, "fullname": 7, "annotation": 0, "default_value": 88, "signature": 0, "bases": 0, "doc": 3}, "fast_wave.wavefunction_numba.compilation_test": {"qualname": 2, "fullname": 6, "annotation": 0, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "fast_wave.wavefunction_numba.hermite_sympy": {"qualname": 2, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 11, "bases": 0, "doc": 162}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"qualname": 5, "fullname": 9, "annotation": 0, "default_value": 0, "signature": 12, "bases": 0, "doc": 215}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 27, "bases": 0, "doc": 262}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 27, "bases": 0, "doc": 289}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 27, "bases": 0, "doc": 317}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 27, "bases": 0, "doc": 362}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 175}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 190}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"qualname": 6, "fullname": 10, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 201}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"qualname": 7, "fullname": 11, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 228}}, "length": 39, "save": true}, "index": {"qualname": {"root": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}, "c": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 2}}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 15}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.wavefunction_numba.compilation_test": {"tf": 1}}, "df": 1}}}}}}}}}, "e": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}}}}}}, "n": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 24, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}}, "df": 4}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}}}}}}}}}}, "s": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 20}}}}}, "y": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1}}}}}, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 28}}}}, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 20}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}}}}, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 24}}, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 24}}}}}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave.wavefunction_numba.compilation_test": {"tf": 1}}, "df": 1}}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}}}}}}}, "fullname": {"root": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba": {"tf": 1}, "fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.compilation_test": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 39}}}, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 28}}}}, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba": {"tf": 1}, "fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.compilation_test": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 39, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.wavefunction_cython": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba": {"tf": 1}, "fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.compilation_test": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 31}}}}}}}}}}}}, "c": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave.caching": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}}, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 11}}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 15}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.wavefunction_numba.compilation_test": {"tf": 1}}, "df": 1}}}}}}}}}, "e": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}, "n": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 24, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.wavefunction_numba": {"tf": 1}, "fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.compilation_test": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}}}}}}}}}}, "s": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 20}}}}}, "y": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1}}}}}, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 20}}}}}}}, "p": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave.wavefunction_mpmath": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 9}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}}}}, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 24}}, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 24}}}}}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave.wavefunction_numba.compilation_test": {"tf": 1}}, "df": 1}}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}}}}}}}, "annotation": {"root": {"docs": {}, "df": 0}}, "default_value": {"root": {"0": {"0": {"0": {"0": {"0": {"0": {"0": {"0": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "+": {"0": {"0": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 4.795831523312719}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "1": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 2}}, "df": 1}, "6": {"2": {"2": {"5": {"1": {"9": {"3": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "+": {"0": {"0": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 4.795831523312719}}, "df": 1}, "1": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 2}}, "df": 1}, "2": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 2}}, "df": 1}, "3": {"0": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}, "1": {"1": {"2": {"5": {"9": {"6": {"6": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}, "2": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}, "3": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "4": {"0": {"5": {"6": {"9": {"1": {"9": {"3": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "7": {"0": {"7": {"6": {"2": {"2": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "+": {"0": {"1": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "2": {"5": {"9": {"9": {"3": {"4": {"9": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "4": {"3": {"4": {"1": {"5": {"1": {"6": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "+": {"0": {"1": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}, "5": {"1": {"1": {"2": {"5": {"5": {"4": {"4": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}, "6": {"3": {"0": {"2": {"4": {"7": {"4": {"8": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"3": {"0": {"3": {"4": {"7": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "+": {"0": {"0": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "7": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1.4142135623730951}}, "df": 1}, "8": {"2": {"4": {"7": {"0": {"9": {"9": {"5": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "4": {"1": {"4": {"8": {"0": {"1": {"7": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "2": {"6": {"7": {"8": {"1": {"3": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}, "docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 2.6457513110645907}}, "df": 1, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.compilation_test": {"tf": 1}}, "df": 1}}}}}}, "signature": {"root": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 3.1622776601683795}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 3.1622776601683795}, "fast_wave.caching.int_array_cache_Cython": {"tf": 3.1622776601683795}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 3.1622776601683795}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 3.1622776601683795}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 3.1622776601683795}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 4.242640687119285}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 4.242640687119285}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 4.242640687119285}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 4.242640687119285}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 4.242640687119285}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 4.242640687119285}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 4.242640687119285}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 4.242640687119285}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 3.1622776601683795}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 3.1622776601683795}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 4.69041575982343}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 4.69041575982343}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 4.69041575982343}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 4.69041575982343}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 3.7416573867739413}}, "df": 32, "f": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}, "n": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 26}, "x": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 24}, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}}}, "c": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}}}, "bases": {"root": {"docs": {}, "df": 0}}, "doc": {"root": {"0": {"0": {"7": {"2": {"4": {"4": {"8": {"4": {"8": {"2": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "1": {"5": {"4": {"0": {"2": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "6": {"7": {"7": {"3": {"7": {"8": {"2": {"2": {"0": {"4": {"8": {"9": {"2": {"5": {"8": {"2": {"3": {"4": {"3": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "5": {"2": {"1": {"1": {"9": {"2": {"2": {"5": {"0": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "8": {"6": {"9": {"7": {"8": {"1": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "6": {"0": {"6": {"9": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "9": {"7": {"8": {"0": {"6": {"0": {"2": {"9": {"7": {"5": {"0": {"0": {"3": {"9": {"1": {"9": {"3": {"2": {"9": {"2": {"9": {"7": {"3": {"7": {"2": {"9": {"0": {"3": {"8": {"8": {"4": {"0": {"2": {"7": {"9": {"8": {"4": {"1": {"9": {"7": {"8": {"7": {"6": {"0": {"3": {"3": {"6": {"1": {"4": {"7": {"7": {"1": {"3": {"7": {"6": {"9": {"0": {"8": {"7": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"4": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0, "j": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 2}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0, "j": {"docs": {"fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 2}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "2": {"2": {"5": {"1": {"9": {"3": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "8": {"2": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "9": {"6": {"3": {"3": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}, "docs": {"fast_wave": {"tf": 5.385164807134504}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 2.23606797749979}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 3}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 3.4641016151377544}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 3.1622776601683795}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 3.3166247903554}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 3.7416573867739413}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 3}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 3.4641016151377544}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 2.8284271247461903}}, "df": 33, "}": {"docs": {}, "df": 0, "^": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "]": {"docs": {}, "df": 0, "^": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "1": {"0": {"0": {"7": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "s": {"1": {"0": {"6": {"9": {"9": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "1": {"6": {"5": {"3": {"7": {"8": {"8": {"3": {"0": {"6": {"4": {"1": {"7": {"9": {"1": {"1": {"5": {"2": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}}, "df": 5}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "8": {"8": {"docs": {}, "df": 0, "/": {"1": {"3": {"6": {"1": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1}, "1": {"0": {"8": {"4": {"2": {"9": {"7": {"6": {"9": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "docs": {}, "df": 0}, "4": {"5": {"docs": {}, "df": 0, "/": {"2": {"8": {"3": {"3": {"1": {"5": {"7": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "8": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {"fast_wave": {"tf": 2}}, "df": 1}, "2": {"docs": {"fast_wave": {"tf": 2}}, "df": 1}, "3": {"1": {"4": {"4": {"5": {"9": {"9": {"7": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 2}}, "df": 1}, "5": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3}, "6": {"4": {"1": {"8": {"9": {"5": {"4": {"1": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "7": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {"fast_wave": {"tf": 7.615773105863909}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 2.23606797749979}}, "df": 27, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "/": {"2": {"docs": {"fast_wave": {"tf": 2.6457513110645907}}, "df": 1, "}": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "d": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "4": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "docs": {}, "df": 0}, "\\": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "}": {"docs": {}, "df": 0, "^": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "2": {"0": {"0": {"1": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "3": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "1": {"0": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3}, "1": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "5": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "7": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}, "docs": {}, "df": 0}, "2": {"0": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3}, "1": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "2": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}, "3": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}, "4": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 5}, "1": {"4": {"6": {"8": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "docs": {}, "df": 0}, "9": {"8": {"6": {"2": {"1": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "+": {"0": {"2": {"docs": {}, "df": 0, "j": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"1": {"6": {"1": {"4": {"2": {"7": {"3": {"6": {"8": {"4": {"5": {"2": {"1": {"1": {"6": {"3": {"9": {"9": {"3": {"5": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "3": {"docs": {}, "df": 0, "j": {"docs": {"fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "2": {"3": {"3": {"1": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "q": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "3": {"7": {"9": {"6": {"9": {"1": {"1": {"6": {"6": {"2": {"2": {"0": {"3": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"3": {"0": {"4": {"9": {"1": {"9": {"9": {"1": {"7": {"1": {"1": {"3": {"0": {"9": {"7": {"7": {"8": {"9": {"9": {"9": {"6": {"1": {"1": {"6": {"5": {"3": {"6": {"7": {"1": {"7": {"2": {"1": {"1": {"8": {"6": {"5": {"6": {"1": {"1": {"4": {"2": {"1": {"1": {"9": {"1": {"8": {"1": {"9": {"3": {"4": {"9": {"2": {"9": {"0": {"6": {"2": {"8": {"2": {"4": {"3": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "1": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "2": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "8": {"3": {"3": {"1": {"6": {"2": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "7": {"5": {"2": {"0": {"3": {"3": {"2": {"1": {"7": {"9": {"0": {"7": {"9": {"4": {"9": {"4": {"4": {"5": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}}, "df": 3}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}, "9": {"1": {"1": {"6": {"2": {"9": {"2": {"2": {"3": {"9": {"7": {"8": {"4": {"8": {"1": {"3": {"2": {"4": {"8": {"6": {"2": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0, "j": {"docs": {"fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 2}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 5}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 26, "m": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "^": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 2.6457513110645907}}, "df": 1, "\\": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}, "x": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 2}}, "df": 1}, "\\": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "n": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "h": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "\\": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}}, "3": {"0": {"0": {"9": {"8": {"7": {"6": {"1": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 1}}, "df": 1}, "1": {"9": {"9": {"1": {"7": {"0": {"1": {"1": {"0": {"6": {"9": {"8": {"3": {"5": {"2": {"1": {"9": {"7": {"9": {"6": {"7": {"3": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0, "j": {"docs": {"fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 1}}, "df": 1}, "3": {"9": {"0": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "m": {"1": {"3": {"0": {"5": {"0": {"8": {"5": {"3": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"2": {"7": {"2": {"9": {"4": {"3": {"5": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 3}, "6": {"6": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}, "7": {"0": {"8": {"9": {"2": {"0": {"7": {"7": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 4}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 4}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 25}, "docs": {"fast_wave": {"tf": 3.1622776601683795}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 16}, "4": {"0": {"0": {"8": {"7": {"9": {"7": {"3": {"3": {"0": {"2": {"6": {"2": {"4": {"5": {"3": {"5": {"9": {"9": {"6": {"3": {"1": {"9": {"3": {"5": {"8": {"3": {"7": {"9": {"1": {"8": {"5": {"6": {"0": {"3": {"7": {"0": {"5": {"2": {"0": {"5": {"8": {"1": {"5": {"7": {"1": {"9": {"3": {"6": {"6": {"8": {"2": {"7": {"1": {"5": {"9": {"8": {"8": {"1": {"5": {"2": {"7": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "4": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"8": {"3": {"4": {"8": {"6": {"3": {"6": {"7": {"0": {"8": {"7": {"0": {"3": {"3": {"3": {"0": {"8": {"6": {"0": {"3": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 4}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"5": {"5": {"8": {"0": {"6": {"7": {"2": {"0": {"1": {"1": {"3": {"3": {"2": {"5": {"3": {"4": {"8": {"3": {"3": {"7": {"0": {"5": {"2": {"5": {"6": {"8": {"9": {"7": {"8": {"5": {"1": {"3": {"8": {"6": {"0": {"7": {"6": {"6": {"2": {"6": {"3": {"9": {"0": {"4": {"0": {"9": {"2": {"9": {"4": {"3": {"9": {"6": {"8": {"7": {"9": {"1": {"5": {"3": {"3": {"1": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "7": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}}, "df": 7}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "6": {"7": {"7": {"9": {"1": {"3": {"4": {"7": {"6": {"4": {"4": {"1": {"9": {"7": {"0": {"3": {"5": {"1": {"1": {"7": {"1": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"docs": {"fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "7": {"5": {"5": {"5": {"3": {"0": {"4": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 1, "+": {"1": {"3": {"1": {"4": {"4": {"5": {"9": {"9": {"7": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "7": {"0": {"8": {"9": {"2": {"3": {"2": {"9": {"8": {"5": {"6": {"2": {"2": {"9": {"1": {"0": {"9": {"4": {"1": {"2": {"9": {"3": {"9": {"1": {"7": {"0": {"0": {"2": {"6": {"0": {"0": {"7": {"2": {"4": {"3": {"4": {"2": {"1": {"4": {"2": {"0": {"3": {"2": {"2": {"1": {"2": {"9": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "8": {"9": {"4": {"0": {"9": {"8": {"8": {"5": {"9": {"3": {"6": {"0": {"1": {"4": {"1": {"9": {"2": {"6": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"0": {"9": {"6": {"8": {"4": {"2": {"0": {"6": {"0": {"7": {"2": {"1": {"6": {"9": {"3": {"7": {"1": {"7": {"7": {"7": {"8": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0, "+": {"0": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 4}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "8": {"6": {"2": {"1": {"1": {"5": {"1": {"8": {"2": {"7": {"6": {"8": {"4": {"0": {"9": {"1": {"7": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 2.449489742783178}}, "df": 1, "*": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "*": {"docs": {}, "df": 0, "*": {"2": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}}}}}, "5": {"0": {"2": {"0": {"3": {"7": {"2": {"2": {"4": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "1": {"1": {"0": {"6": {"2": {"1": {"3": {"5": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 3}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "3": {"1": {"1": {"2": {"5": {"9": {"7": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"2": {"9": {"0": {"8": {"1": {"2": {"0": {"8": {"0": {"9": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "6": {"5": {"4": {"8": {"9": {"4": {"1": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "+": {"0": {"3": {"docs": {}, "df": 0, "+": {"9": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "8": {"4": {"5": {"3": {"6": {"8": {"6": {"3": {"4": {"0": {"5": {"9": {"4": {"6": {"8": {"6": {"5": {"2": {"7": {"7": {"7": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"docs": {}, "df": 0, "j": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {"fast_wave": {"tf": 3.1622776601683795}}, "df": 1}, "6": {"0": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 8}, "1": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 12}, "3": {"2": {"0": {"5": {"0": {"3": {"5": {"1": {"6": {"1": {"5": {"2": {"8": {"2": {"6": {"0": {"7": {"9": {"8": {"6": {"0": {"6": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0, "j": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "4": {"0": {"4": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "a": {"9": {"5": {"8": {"4": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}, "docs": {}, "df": 0}, "1": {"8": {"9": {"5": {"4": {"2": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "+": {"0": {"8": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "4": {"2": {"8": {"8": {"3": {"6": {"5": {"1": {"1": {"3": {"4": {"7": {"5": {"1": {"8": {"1": {"5": {"1": {"0": {"8": {"3": {"7": {"6": {"4": {"5": {"3": {"6": {"2": {"7": {"4": {"0": {"4": {"9": {"8": {"6": {"3": {"4": {"9": {"9": {"4": {"2": {"4": {"8": {"6": {"8": {"7": {"2": {"6": {"9": {"1": {"2": {"2": {"6": {"1": {"8": {"7": {"3": {"8": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "7": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}}, "df": 5}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "7": {"6": {"6": {"1": {"0": {"2": {"5": {"6": {"2": {"9": {"9": {"1": {"1": {"2": {"3": {"5": {"3": {"1": {"6": {"9": {"5": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "6": {"docs": {"fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 4, "t": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "7": {"0": {"8": {"9": {"2": {"0": {"7": {"7": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "+": {"0": {"8": {"docs": {}, "df": 0, "j": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"1": {"1": {"2": {"5": {"5": {"4": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"docs": {}, "df": 0, "\u2013": {"8": {"0": {"2": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "6": {"5": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "7": {"5": {"3": {"6": {"9": {"3": {"2": {"7": {"4": {"8": {"9": {"1": {"1": {"8": {"6": {"7": {"1": {"7": {"4": {"5": {"3": {"4": {"9": {"8": {"3": {"9": {"6": {"2": {"1": {"2": {"1": {"5": {"8": {"5": {"8": {"1": {"3": {"3": {"8": {"9": {"4": {"3": {"0": {"6": {"0": {"6": {"2": {"0": {"4": {"9": {"4": {"4": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "7": {"0": {"4": {"docs": {}, "df": 0, "j": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 2}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 3}, "8": {"5": {"3": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "6": {"7": {"3": {"2": {"5": {"0": {"7": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 4}, "9": {"2": {"1": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "7": {"8": {"0": {"0": {"7": {"2": {"4": {"4": {"8": {"4": {"8": {"1": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "5": {"2": {"1": {"1": {"9": {"2": {"2": {"5": {"5": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "8": {"6": {"9": {"7": {"8": {"2": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "1": {"1": {"0": {"8": {"4": {"2": {"9": {"7": {"6": {"4": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "3": {"5": {"2": {"7": {"2": {"9": {"4": {"3": {"5": {"0": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"6": {"4": {"9": {"8": {"2": {"2": {"3": {"8": {"4": {"6": {"9": {"4": {"9": {"5": {"3": {"4": {"3": {"1": {"7": {"6": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0, "+": {"0": {"docs": {"fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {"fast_wave": {"tf": 29.29163703175362}, "fast_wave.caching": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 8.602325267042627}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 8.366600265340756}, "fast_wave.caching.int_array_cache_Cython": {"tf": 8.246211251235321}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 8.602325267042627}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 8.366600265340756}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 8.246211251235321}, "fast_wave.wavefunction_cython": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 10.344080432788601}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 11.045361017187261}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 11.61895003862225}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 13}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 9.486832980505138}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 9.848857801796104}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 10.295630140987}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 10.954451150103322}, "fast_wave.wavefunction_mpmath": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 11.045361017187261}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 11.575836902790225}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 12.569805089976535}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 13.638181696985855}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 10.392304845413264}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 10.583005244258363}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 11.045361017187261}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 11.575836902790225}, "fast_wave.wavefunction_numba": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.c_s_matrix": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.compilation_test": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 9}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 10.04987562112089}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 10.63014581273465}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 11.313708498984761}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 11.832159566199232}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 12.84523257866513}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 9.433981132056603}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 9.797958971132712}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 10.295630140987}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 10.954451150103322}}, "df": 39, "t": {"docs": {"fast_wave": {"tf": 4.123105625617661}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 7, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 5.744562646538029}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 8}}, "e": {"docs": {"fast_wave": {"tf": 13.038404810405298}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 3}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 3}, "fast_wave.caching.int_array_cache_Cython": {"tf": 3}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 3}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 3}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 3.1622776601683795}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 3}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 2.23606797749979}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 2.449489742783178}}, "df": 33, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}, "n": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 3}, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2}}, "df": 1}}, "m": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "a": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 3.7416573867739413}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "u": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "u": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}}, "df": 3}}, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "w": {"docs": {}, "df": 0, "o": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 5}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2.6457513110645907}}, "df": 1, "s": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}, "o": {"docs": {"fast_wave": {"tf": 6.708203932499369}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 2.449489742783178}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 2.23606797749979}, "fast_wave.caching.int_array_cache_Cython": {"tf": 2.23606797749979}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 2.449489742783178}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 2.23606797749979}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 32, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 2, "s": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}}, "df": 5}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 9}}, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 5}}, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}, "p": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "d": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}}}}, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 5, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "e": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 4, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "s": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3}}, "c": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 8, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 2.23606797749979}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 2}}, "df": 9}}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 3.3166247903554}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 23, "s": {"docs": {"fast_wave": {"tf": 2.8284271247461903}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}}}}}, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 9}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 3}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 6, "s": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.7320508075688772}}, "df": 1}}}}}}}}}, "w": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "i": {"docs": {}, "df": 0, "c": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}, "s": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}}}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 3.3166247903554}}, "df": 1}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1, "^": {"2": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}, "y": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 3.3166247903554}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 9}}}}, "x": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2.23606797749979}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}}}}}}}}}, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "p": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "\\": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}}}, "^": {"docs": {}, "df": 0, "{": {"1": {"docs": {}, "df": 0, "/": {"2": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 2.6457513110645907}}, "df": 1}}}}}}}}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "s": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 7.14142842854285}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 22}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "\u00e9": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "z": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}}, "l": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "p": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "a": {"docs": {"fast_wave": {"tf": 6.928203230275509}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 2.6457513110645907}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 2.449489742783178}, "fast_wave.caching.int_array_cache_Cython": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 2.6457513110645907}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 2.23606797749979}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 33, "n": {"docs": {"fast_wave": {"tf": 3.3166247903554}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7, "d": {"docs": {"fast_wave": {"tf": 4.898979485566356}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 11}, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "y": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}}}}}}, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}, "t": {"docs": {"fast_wave": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 25}, "d": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}}, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 12}}}}}}, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}}, "df": 5, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "p": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6, "s": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}}, "r": {"docs": {}, "df": 0, "b": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 3, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 9}}}}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 3.1622776601683795}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 2.449489742783178}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 2.449489742783178}, "fast_wave.caching.int_array_cache_Cython": {"tf": 2.449489742783178}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 2.449489742783178}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 2.449489742783178}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 24, "s": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}, "e": {"docs": {"fast_wave": {"tf": 3.3166247903554}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 5}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 2}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 33}}}}}}}, "x": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, ":": {"2": {"2": {"0": {"9": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}}}}}}}}, "s": {"docs": {"fast_wave": {"tf": 5.291502622129181}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 8, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "k": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "m": {"docs": {}, "df": 0, "p": {"docs": {"fast_wave": {"tf": 3}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "l": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 2}}, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 19, "o": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "^": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}}}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "d": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 5}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "f": {"docs": {"fast_wave": {"tf": 8.660254037844387}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 2}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 33, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}}}}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "n": {"docs": {"fast_wave": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1}}}}, "r": {"docs": {"fast_wave": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 5, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}}, "df": 3, "s": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}, "g": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8, "/": {"1": {"0": {"docs": {"fast_wave": {"tf": 2.6457513110645907}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "/": {"1": {"0": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 16}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}}}}, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "/": {"5": {"0": {"2": {"0": {"3": {"7": {"2": {"2": {"4": {"docs": {}, "df": 0, "?": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1}}}}}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 7.211102550927978}}, "df": 1, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "b": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}, "l": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3}}}}}, "f": {"docs": {"fast_wave": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3, "o": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 6}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 2.23606797749979}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 2.23606797749979}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 32, "m": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "a": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "c": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave": {"tf": 4.358898943540674}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 29}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}}, "df": 7}}}, "s": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 4.58257569495584}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 8, "s": {"docs": {"fast_wave": {"tf": 3.3166247903554}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}}, "df": 9}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}}, "i": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 10}}, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 2}}, "df": 1, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}}, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 5}}}}, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "n": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.7320508075688772}}, "df": 6}, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"6": {"4": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}}, "df": 9}, "docs": {}, "df": 0}, "docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}}, "df": 3, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}}}}}, "a": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}}, "df": 2}}}}, "c": {"docs": {"fast_wave": {"tf": 3}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 5, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 2.6457513110645907}}, "df": 1}}, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8, "s": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 5}}}}, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}, "d": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}}, "df": 6}}}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2.6457513110645907}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 2}, "fast_wave.caching.int_array_cache_Cython": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 2}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 2}}, "df": 7, "s": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}}, "df": 7}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "n": {"docs": {"fast_wave": {"tf": 3.1622776601683795}}, "df": 1, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3}}}}}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1}}}, "e": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 18, "d": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 5}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 5, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "\u00e7": {"docs": {}, "df": 0, "\u00e3": {"docs": {}, "df": 0, "o": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 2}}, "df": 1}, "d": {"docs": {"fast_wave": {"tf": 2.8284271247461903}}, "df": 1}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"1": {"2": {"8": {"docs": {"fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 10}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 16}}}}, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}}}, "c": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 2}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "j": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}}}, "e": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 6}}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "b": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2.8284271247461903}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "p": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}}, "df": 6}}}}}}}}, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 4.123105625617661}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "s": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 9}, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "j": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "t": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 2}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "w": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 3.605551275463989}}, "df": 1, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 4.123105625617661}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 25, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 5}}}}}}}}}}}, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 3.605551275463989}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 15, "i": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}, "e": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "r": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "l": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1}}}}}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 3.3166247903554}}, "df": 1}}, "n": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 31}}, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "o": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}}, "n": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "c": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "e": {"docs": {"fast_wave": {"tf": 4}}, "df": 1, "l": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "q": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}}, "df": 6}}}}}}}, "s": {"docs": {"fast_wave": {"tf": 3.3166247903554}}, "df": 1, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 3}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 31, "s": {"docs": {"fast_wave": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 13}}}, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 3.1622776601683795}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 21}}}}, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "z": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 2}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1}}, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}}}}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}}, "o": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "w": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}}}}, "v": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "u": {"docs": {}, "df": 0, "p": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "k": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "c": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1}}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}}, "df": 2}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "{": {"2": {"docs": {"fast_wave": {"tf": 2}}, "df": 1, "^": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 2.449489742783178}}, "df": 1}, "{": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 2.6457513110645907}}, "df": 1}, "i": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "!": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "^": {"docs": {}, "df": 0, "{": {"1": {"docs": {}, "df": 0, "/": {"2": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "c": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}}}}}}}}}, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "n": {"docs": {"fast_wave": {"tf": 2}}, "df": 1, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "n": {"docs": {"fast_wave": {"tf": 2.449489742783178}}, "df": 1, "!": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "{": {"1": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}}}}, "+": {"1": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}}}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "\u00f6": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 12}}}}}, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "m": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "c": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "q": {"docs": {"fast_wave": {"tf": 3.3166247903554}}, "df": 1, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 4.69041575982343}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 31}}}}, "d": {"docs": {"fast_wave": {"tf": 4.123105625617661}}, "df": 1, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}, "\u00e2": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "^": {"docs": {}, "df": 0, "{": {"2": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "/": {"2": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}}}, "h": {"docs": {"fast_wave": {"tf": 4.69041575982343}}, "df": 1, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"fast_wave": {"tf": 3}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "v": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2}}, "df": 1}}, "s": {"docs": {"fast_wave": {"tf": 2}}, "df": 1, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}}, "t": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "q": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3}}}}}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "l": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "^": {"docs": {}, "df": 0, "{": {"2": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}}, "/": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "}": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 3.605551275463989}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 2}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 7}}}}}}, "y": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "c": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, ":": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 2.6457513110645907}}, "df": 1}, "c": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}, "l": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "f": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}}, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 16}}}}}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1}}}}}}}}}}, ":": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}}}}}}}}}}, "m": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1, "n": {"docs": {"fast_wave": {"tf": 7.416198487095663}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 8, "c": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}}, "df": 5}}}}}}, "o": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 26, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}}, "r": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}, "r": {"docs": {"fast_wave": {"tf": 2}}, "df": 1}}}}}}}}, "o": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "f": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "^": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "+": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "\u00e7": {"docs": {}, "df": 0, "\u00e3": {"docs": {}, "df": 0, "o": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}}, "df": 5}}}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}}, "df": 2}}}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {"fast_wave": {"tf": 6}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 2.23606797749979}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 2.23606797749979}, "fast_wave.caching.int_array_cache_Cython": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 2.23606797749979}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 2}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 8, "b": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1}}, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 2.23606797749979}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}}}}}}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 4}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}}, "a": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 2}}, "df": 4, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {"fast_wave": {"tf": 3.1622776601683795}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 2, "s": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}}}}}}, "!": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "^": {"docs": {}, "df": 0, "{": {"1": {"docs": {}, "df": 0, "/": {"2": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}}}}}, "f": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 5}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 16}}}, "l": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3, "e": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "m": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "r": {"docs": {}, "df": 0, "u": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "u": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "k": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "f": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}}}}, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 10}}}}}}, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}, "c": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}, "t": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 4}}, "n": {"docs": {"fast_wave": {"tf": 8.426149773176359}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 33, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 3.872983346207417}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}}, "df": 5}, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 31}}}, "p": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 15}}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "p": {"docs": {"fast_wave": {"tf": 2.23606797749979}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 2.23606797749979}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 25}, "+": {"1": {"docs": {"fast_wave": {"tf": 3.7416573867739413}}, "df": 1, "}": {"docs": {}, "df": 0, "^": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}, "docs": {}, "df": 0}, "o": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 6}}}}, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "w": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "p": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 2}}, "df": 1}}}}}}, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}, "!": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "\\": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1}}}}}}}}, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "^": {"docs": {}, "df": 0, "{": {"1": {"docs": {}, "df": 0, "/": {"2": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}}}}}, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "}": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "^": {"docs": {}, "df": 0, "{": {"2": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}}, "\\": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "[": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "]": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "^": {"docs": {}, "df": 0, "{": {"2": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "docs": {}, "df": 0}}, ">": {"6": {"0": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "b": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.7320508075688772}}, "df": 3}}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 8, "[": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "p": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 15}}}}}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1.4142135623730951}}, "df": 5}}}, "m": {"docs": {"fast_wave": {"tf": 4.242640687119285}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17, "r": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}}, "df": 7, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}}}}, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 3.7416573867739413}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 22}, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 3.872983346207417}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 8, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2}}, "df": 1, "o": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "v": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "l": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}}, "df": 3}}, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "@": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "f": {"docs": {"fast_wave": {"tf": 3.7416573867739413}}, "df": 1, "{": {"7": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "t": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "\\": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "m": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "c": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "^": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "n": {"docs": {"fast_wave": {"tf": 3}}, "df": 1}, "q": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "x": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "^": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "p": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}}}}, "b": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave": {"tf": 2.8284271247461903}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 16}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 6}}}}}}, "x": {"docs": {"fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.4142135623730951}}, "df": 1, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3}}}}}, "s": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "y": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 2}}}}}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "r": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "k": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}}, "df": 2, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 2}}, "df": 9}}}}, "f": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}}, "df": 1}, "c": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 2}}, "df": 4}}, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 5, "s": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}, "\\": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 2.449489742783178}}, "df": 1, "^": {"2": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}, "/": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "w": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 1}}, "m": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 2}}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 16, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 13}}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "e": {"docs": {"fast_wave": {"tf": 4.47213595499958}}, "df": 1, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "c": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}, "n": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 3.4641016151377544}}, "df": 1}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "d": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}}, "x": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 27}}}}}}, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1}}}}}}}}, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 24, "d": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 25}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 3}}, "df": 1}}}}}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}}, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}}}}}}}, "u": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 2.23606797749979}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 22}}}, "e": {"docs": {"fast_wave": {"tf": 3.3166247903554}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 5, "d": {"docs": {"fast_wave": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3}}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "r": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}, "p": {"docs": {"fast_wave": {"tf": 2}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 14, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"6": {"4": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 14}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}, "j": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 23, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}, "o": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "r": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}}}}}}, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}}, "d": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}}, "df": 6}}}, "s": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1}, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 33}}}}}}}}, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}}}}, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 17}}}}}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 3, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "d": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 2}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}}, "df": 19, "m": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "c": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 32}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "o": {"docs": {}, "df": 0, "w": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 6}}}}}}, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}}}, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}}, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}}}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 2}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "s": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1.7320508075688772}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}}, "df": 7, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}}, "df": 6}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}}}}, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 1}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}}}}}}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 2}}, "df": 1}}}}}}}}}}}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 2.449489742783178}}, "df": 1}}}}}, "{": {"1": {"docs": {"fast_wave": {"tf": 2.23606797749979}}, "df": 1}, "2": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "e": {"docs": {"fast_wave": {"tf": 3}}, "df": 1}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 2}}}}}}}}}}, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 8}, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}}}}, "u": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "y": {"docs": {"fast_wave": {"tf": 2}}, "df": 1}, "x": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}}, "df": 4}}}}, "i": {"docs": {"fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1}}, "df": 16}, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "y": {"docs": {"fast_wave": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 2}, "e": {"docs": {"fast_wave": {"tf": 3.1622776601683795}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 8, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "y": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "z": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1, "g": {"docs": {"fast_wave": {"tf": 6.48074069840786}}, "df": 1, "]": {"docs": {}, "df": 0, "^": {"docs": {}, "df": 0, "{": {"1": {"docs": {}, "df": 0, "/": {"2": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}}, "|": {"docs": {}, "df": 0, "^": {"docs": {}, "df": 0, "{": {"2": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "docs": {}, "df": 0}}}}, "[": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}, "c": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 2}}, "df": 1, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "l": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 6, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}}, "df": 4}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "w": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "w": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "s": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "x": {"docs": {"fast_wave": {"tf": 7.280109889280518}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1.4142135623730951}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 2.23606797749979}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.4142135623730951}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.4142135623730951}}, "df": 31, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "u": {"docs": {"fast_wave": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_single_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Numba_complex_multiple_fock": {"tf": 1}, "fast_wave.caching.int_array_cache_Cython_complex": {"tf": 1}}, "df": 7}}}}}, "^": {"2": {"docs": {"fast_wave": {"tf": 2.8284271247461903}}, "df": 1}, "docs": {}, "df": 0, "{": {"1": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "2": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "]": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "x": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "/": {"2": {"docs": {"fast_wave": {"tf": 2.8284271247461903}}, "df": 1}, "docs": {}, "df": 0}}}, "3": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "}": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}, "\\": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.7320508075688772}}, "df": 1}}}, "l": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}, "t": {"docs": {"fast_wave": {"tf": 3.872983346207417}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_single_fock_single_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_single_fock_multiple_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_cython.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_single_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position": {"tf": 2.449489742783178}, "fast_wave.wavefunction_mpmath.psi_n_single_fock_multiple_position_complex": {"tf": 2.449489742783178}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_mpmath.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 2.6457513110645907}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 2.8284271247461903}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_single_position_complex": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position": {"tf": 1.7320508075688772}, "fast_wave.wavefunction_numba.psi_n_multiple_fock_multiple_position_complex": {"tf": 1.7320508075688772}}, "df": 27}, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}}, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "v": {"docs": {"fast_wave.wavefunction_numba.hermite_sympy": {"tf": 1}, "fast_wave.wavefunction_numba.create_normalized_hermite_coefficients_matrix": {"tf": 1}}, "df": 2}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"fast_wave.wavefunction_numba.psi_n_single_fock_single_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_single_position_complex": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position": {"tf": 1}, "fast_wave.wavefunction_numba.psi_n_single_fock_multiple_position_complex": {"tf": 1}}, "df": 4}}}}}}}, "y": {"docs": {"fast_wave": {"tf": 4.69041575982343}}, "df": 1, "^": {"2": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "/": {"2": {"docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}, "docs": {}, "df": 0, "\\": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}, "docs": {}, "df": 0, "{": {"2": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}}, "\\": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "u": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "r": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "o": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}, "k": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "{": {"docs": {}, "df": 0, "n": {"docs": {"fast_wave": {"tf": 1.4142135623730951}}, "df": 1}, "\\": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "z": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {"fast_wave": {"tf": 1}}, "df": 1, "s": {"docs": {"fast_wave": {"tf": 1}}, "df": 1}}}}}}}}, "pipeline": ["trimmer"], "_isPrebuiltIndex": true}; + + // mirrored in build-search-index.js (part 1) + // Also split on html tags. this is a cheap heuristic, but good enough. + elasticlunr.tokenizer.setSeperator(/[\s\-.;&_'"=,()]+|<[^>]*>/); + + let searchIndex; + if (docs._isPrebuiltIndex) { + console.info("using precompiled search index"); + searchIndex = elasticlunr.Index.load(docs); + } else { + console.time("building search index"); + // mirrored in build-search-index.js (part 2) + searchIndex = elasticlunr(function () { + this.pipeline.remove(elasticlunr.stemmer); + this.pipeline.remove(elasticlunr.stopWordFilter); + this.addField("qualname"); + this.addField("fullname"); + this.addField("annotation"); + this.addField("default_value"); + this.addField("signature"); + this.addField("bases"); + this.addField("doc"); + this.setRef("fullname"); + }); + for (let doc of docs) { + searchIndex.addDoc(doc); + } + console.timeEnd("building search index"); + } + + return (term) => searchIndex.search(term, { + fields: { + qualname: {boost: 4}, + fullname: {boost: 2}, + annotation: {boost: 2}, + default_value: {boost: 2}, + signature: {boost: 2}, + bases: {boost: 2}, + doc: {boost: 1}, + }, + expand: true + }); +})(); \ No newline at end of file diff --git a/images/Fast_Wave_faveicon.ico b/images/Fast_Wave_faveicon.ico new file mode 100644 index 0000000..4c25315 Binary files /dev/null and b/images/Fast_Wave_faveicon.ico differ diff --git a/images/Fast_Wave_logo.png b/images/Fast_Wave_logo.png new file mode 100644 index 0000000..c0dff63 Binary files /dev/null and b/images/Fast_Wave_logo.png differ diff --git a/pdoc b/pdoc new file mode 100644 index 0000000..e69de29 diff --git a/setup.cfg b/setup.cfg index aaa922b..81e998b 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,6 +1,6 @@ [metadata] name = fast_wave -version = 1.5.1 +version = 1.6.0 description = Package for the calculation of the time-independent wavefunction. author = Matheus Gomes Cordeiro author_email = matheusgomescord@gmail.com diff --git a/setup.py b/setup.py index 7de1d80..ea3a490 100644 --- a/setup.py +++ b/setup.py @@ -6,7 +6,7 @@ long_description = fh.read() name = "fast_wave" -version = "1.5.1" +version = "1.6.0" description = "Package for the calculation of the time-independent wavefunction." author_email = "matheusgomescord@gmail.com" url = "https://github.com/pikachu123deimos/fast-wave" diff --git a/src/fast_wave/__init__.py b/src/fast_wave/__init__.py index e69de29..8d7e7f0 100644 --- a/src/fast_wave/__init__.py +++ b/src/fast_wave/__init__.py @@ -0,0 +1,247 @@ + +""" + This project presents an optimized approach for calculating the position wave functions of a Fock state of a quantum harmonic oscillator, with applications in Photonic Quantum Computing simulations. Leveraging [Numba](https://numba.pydata.org/) [[1](#references)] and [Cython](https://cython.org/) [[2](#references)], this approach outperforms the [Mr Mustard](https://mrmustard.readthedocs.io/en/stable/) package [[3, 4](#references)] in computing a single wave function value at a single position and at multiple positions. + + ## ✨ Advantages + + + - **Highly Efficient**: This package includes two fixed-point modules focused on speed. One is implemented using *Numba*, an open-source Just-in-Time (JIT) compiler, and the other module is implemented in *Cython*, a programming language that combines the ease of use of Python with the speed of C. + - **Highly Accurate**: The functions in this package have precision next to the precision of Wolfram Mathematica and MATLAB. In addition, there is a module for calculating wave functions with arbitrary precision using the *mpmath* package. + - **Past response cache**: This package provides a caching module designed to enhance the performance of functions that take multiple positions of a *NumPy* array as input. This module stores previously computed results by leveraging Python's functools.lru_cache, eliminating the need for redundant calculations. This caching module is inspired by the [caching module](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26) from Mr. Mustard, a package from the photonic quantum computing company Xanadu. + + + ## 🛠️ Setup + To use this package, simply run the following command in the command line: + ```bash + pip install fast-wave + ``` + + ## 🎨 Examples + + The functions `psi_n_multiple_fock_multiple_position` calculate the values of the wavefunction $\psi_{0 → n} \( X_m \)$ for multiple Fock states ($n$) and multiple positions ($X_{m}$). + + **Inputs:** + + * `n`: An integer specifying the maximum Fock state ($n$). + * `X_m`: A 1D `numpy` array with `m` positions, representing the input values where $\psi_{0 → n}$ will be evaluated. For example, `np.array([1.0, 2.0])` has dimension $(m,)$, where $m=2$ in this case. + + **Outputs:** + + - `numpy` **Matrix**: The output has dimensions $(n+1) × m$, where: + - $n+1$: Corresponds to the Fock states $[0, 1, ..., n]$. + - $m$: Represents the positions given in `X_m`. + + **Demonstration:** + + Using the provided inputs: + + ```python + >>> import fast_wave.wavefunction_numba as wn + Functionality Test Passed: True + >>> import fast_wave.wavefunction_cython as wc + >>> import numpy as np + >>> wn.psi_n_multiple_fock_multiple_position(1,np.array([1.0 ,2.0])) + array([[0.45558067, 0.10165379], + [0.64428837, 0.28752033]]) + >>> wc.psi_n_multiple_fock_multiple_position(1,np.array([1.0 ,2.0])) + array([[0.45558067, 0.10165379], + [0.64428837, 0.28752033]]) + ``` + + **Explanation of the Output:** + + * For `n=1` and `X_m = np.array([1.0, 2.0])`: + - The output matrix has dimensions $(n+1) × m = 2 × 2$. + - The first row contains $\psi_{0}(x_1)$ and $\psi_{0}(x_2)$. + - The second row contains $\psi_{1}(x_1)$ and $\psi_{1}(x_2)$. + + There are other examples in the examples folder: [Speed Tests: Numba & Cython](https://colab.research.google.com/github/fobos123deimos/fast-wave/blob/main/examples/speed_tests_numba_and_cython.ipynb); [Precision Tests: mpmath](https://colab.research.google.com/github/fobos123deimos/fast-wave/blob/main/examples/precision_tests_mpmath.ipynb). In the first one there is a comparison with the [Mr Mustard](https://mrmustard.readthedocs.io/en/stable/) package. + + ## 🌊 The Wavefunction + + The wavefunction, $\Psi(y,t)$, is a fundamental concept in quantum mechanics that describes the quantum state of a particle or system. Its absolute square, $|\Psi(y,t)|^2$, represents the probability density of finding the particle at position $\mathbf{y}$ and time $\mathbf{t}$. Due to the normalization property: $\int_{-\infty}^{\infty} |\Psi(y,t)|^2 dy = 1$ it's guaranteed that for a given time $\mathbf{t}$, the total probability of finding the particle somewhere in space is unity [[5](#references)]. + + ### Schrödinger Equation + + The wavefunction is the solution to the Schrödinger equation, a fundamental equation in quantum mechanics: + + $$ + -\Bigg(\{\hbar^{2} \over 2m\}\Bigg) \{\partial^2 \Psi(y,t) \over \partial y^{2}\} + \Bigg(\{m\omega^2 y^2 \over 2\}\Bigg) \Psi(y,t) = \mathbf{i}\hbar \, \{\partial \Psi(y,t) \over \partial t\} \quad \mathbf{(1)} + $$ + + where $\mathbf{\hbar}$ is the reduced Planck constant, $\mathbf{m}$ is the mass of the particle, and $\mathbf{\omega}$ is the angular frequency of the harmonic potential. The symbol $\mathbf{i}$ represents the imaginary unit. When seeking the solution to this equation, we separated the variables as follows: $\Psi(y,t) = \psi(y)f(t)$, and we find as a result for $f(t)$ [[5](#references)]: + + $$ f(t) = C \, e^{-iEt/\hbar} \quad \mathbf{(2)}$$ + + where $\mathbf{C}$ may be considered an arbitrary complex constant and $\mathbf{E}$, the system separation constant can be interpreted as the system's energy. Substituting into the wavefunction we have [[5](#references)]: + + $$ \Psi(y,t) = C \, e^{-iEt/\hbar} \, \psi(y) \quad \mathbf{(3)}$$ + + The term $e^{-iEt/\hbar}$ is called the **phase factor** of $\Psi(y,t)$. In order to find $\psi(y)$ we then solve the **time-independent Schröndiger equation** [[5](#references)]: + + $$ + -\Bigg(\{\hbar^{2} \over 2m \}\Bigg) \psi''(y) + \Bigg(\{m\omega^2 y^2 \over 2 \}\Bigg) \psi(y) = E \, \psi(y) \quad \mathbf{(4)} + $$ + + + ### Quantum Harmonic Oscillator + + By solving equation **(4)**, we obtain a family of energy eigenfunctions defined as follows [[5](#references)]: + + $$ + \psi_n(y) = \Bigg(\{ m\omega \over \pi\hbar \}\Bigg)^{1/4} \Bigg(\{ 1 \over \sqrt{2^n n!}\}\Bigg) H_n\Bigg(\sqrt{m\omega \over \hbar }y\Bigg) \, e^{-m\omega y^2/2\hbar} , \quad n \in \mathbb{N}_{0} \quad \mathbf{(5)} + $$ + + where $\mathbf{n}$ represents a non-negative integer corresponding to the different energy states of the system, with energies given by $E_n = [n + (1/2)]\hbar \omega$. The term $H_n$ denotes the Hermite polynomial of degree $\mathbf{n}$; thus, for each energy state $\mathbf{n}$, there is an associated Hermite polynomial of degree $\mathbf{n}$ within its eigenfunction [[5](#references)]: + +
+ +
+  +
+

Wavefunctions and energies for different $\mathbf{n}$ values. [6]

+
+ +
+ + The energy eigenfunction for an energy state $\mathbf{n}$ is the wavefunction for an energy state $\mathbf{n}$ of a Quantum Harmonic Oscillator. From this definition, we can then represent the wave function $\Psi(x,t)$ as a series expansion of its family of energy eigenfunctions $\{\psi_{n}(x)\}$ [[5](#references)]: + + $$ + \Psi(y,t) = \sum_{n=0}^{\infty} c_{n} \, \psi_{n}(y) \, e^{-\mathbf{i}E_{n}t/\hbar} \quad \mathbf{(6)} + $$ + + where $\mathbf{c_{n}}$ are complex constants that determine the contribution of each eigenfunction $\psi_{n}(y)$ to the total wavefunction $\Psi(y,t)$. These coefficients are chosen to ensure that the wavefunction satisfies the initial condition of the problem ($t=0$) [[5](#references)]. + + ### Fock states + + When defining the dimensionless variable $x = \Big(m\omega/\hbar\Big)^{1/2}y$, referred to as the **reduced coordinate**, it follows that $dy = \Big(\hbar/m\omega\Big)^{1/2}dx$. As a result, we can write [[7](#references)]: + + + $\displaystyle\int_{-\infty}^{+\infty} |\psi(y)|^{2} dy = 1 \implies \int_{-\infty}^{+\infty}\Bigg[\Bigg(\{m\omega \over \pi\hbar \}\Bigg)^{1/2} \Bigg(\{1 \over 2^n n!\}\Bigg) H_n^{2}\Bigg(\sqrt{ m\omega \over \hbar}y\Bigg) e^{-m\omega y^2/\hbar} \Bigg] dy \implies$ + + + $\displaystyle\int_{-\infty}^{+\infty} \Bigg[ \Bigg(\{m\omega \over \pi\hbar \} \Bigg)^{1/2} \Bigg( \{ 1 \over 2^n n! \} \Bigg) H_{n}^{2}(x) \, e^{-x^{2}}\Bigg]\Bigg[\{ \hbar \over \omega m \}\Bigg]^{1/2}dx = 1 \implies \int_{-\infty}^{+\infty} \Bigg[ \Bigg(\{ 1 \over 2^n n!\sqrt{\pi} \} \Bigg) H_{n}^{2}(x) \, e^{-x^{2}}\Bigg]dx = 1 \implies$ + + + $\displaystyle\int_{-\infty}^{+\infty} \, \Bigg| \Bigg( \{1 \over 2^n n!\sqrt{\pi} \} \Bigg)^{1/2} H_{n}(x) \, e^{-x^{2}/2} \Bigg|^{2}dx = 1 \implies \int_{-\infty}^{+\infty} |\psi(x)|^{2} dx = 1\implies$ + + $$\psi_{n}(x) = \Bigg( \{1 \over 2^n n!\sqrt{\pi} \}\Bigg)^{1/2} H_{n}(x) \quad e^{-x^{2}/2} \quad \mathbf{(7)}$$ + + This demonstrates that the wavefunction of a Quantum Harmonic Oscillator can be represented in a more dimensionless form, known as the **Hermite function**, it is also sometimes referred to as the **Gauss Hermite function** (equation $\mathbf{7}$) [[8](#references)]. A more simplified form for this type of function is this: $\psi_{n}(x) = \mathcal{N_{n}} \, H_{n}(x) \, e^{-x^{2}/2}$, where $\mathcal{N_{n}} = [1 /(2^n n!\sqrt{\pi})]^{1/2}$ is referred to as the normalization constant [[9](#references)]. + + This type of representation for the wavefunction enables the modeling of wave functions for **Fock states**, which are energy eigenstates with a well-defined number of particles. When the particles are considered photons, $\mathbf{n}$, the degree of the Hermite polynomial, also represents the number of photons. Consequently, the Fock states ($\ket{n}$) become eigenstates of the photon number operator $\hat{n}$, such that $\hat{n}\ket{n}=n\ket{n}$. Moreover, the energy states now correspond to the energy levels of an optical system containing $n$-photons [[10](#references)]. + + + $\ket{\psi_{n}} = \displaystyle\{1 \over \sqrt{n!} \}(a^{\dagger})^{n}\ket{\psi_{0}} \implies \psi_{n}(q) = \{ 1 \over \sqrt{n!} \}\{ 1 \over \sqrt{2^n} \}\Bigg(q - \{\partial \over \partial q \}\Bigg)^{n}\psi_{0}(q) \implies $ + + $\psi_{n}(q) = \displaystyle\{1 \over \sqrt{n!}\}\{1 \over \sqrt{2^n} \} H_{n}(q) \psi_{0}(q) \implies \psi_{n}(q) = \displaystyle\{1 \over \sqrt{n!} \}\{1 \over \sqrt{2^n} \} H_{n}(q) \Big(\pi^{-1/4}\Big) e^{-q^{2}/2} \implies$ + + $$\psi_{n}(q) = \displaystyle\Bigg(\{1 \over 2^n n!\sqrt{\pi} \}\Bigg)^{1/2} H_{n}(q) \quad e^{-q^{2}/2} \quad \mathbf{(8)}$$ + + where $\mathbf{q}$ is interpreted as the normalized field amplitude associated with the position quadrature ($\hat{q}$​) and has a dimensionless character similar to $\mathbf{x}$ [[10](#references)]. + + The wavefunction $\mathbf{n}$ of a Fock state is the projection of the state $\ket{n}$, and as we can observe, the wavefunctions of a Fock state for $n$-photon systems can be interpreted as a family of dimensionless energy eigenfunctions (Hermite functions), similar to those shown by equation $\mathbf{(7)}$ [[10](#references)]. + + ## 🔁 The Wavefunction Recurrence + + In essence, Mr Mustard's strategy is to use the [Renormalized Hermite Polynomial](https://mrmustard.readthedocs.io/en/stable/code/api/mrmustard.math.hermite_renormalized.html) [[3, 4](#references)] for the computation of the wavefunction of a quantum harmonic oscillator. Below, we show the recurrence for calculating the Renormalized Hermite Polynomial, as well as the method for calculating it using the traditional Hermite polynomial: + + $$H_{n+1}^{re}(x) = \displaystyle\{2 \over \sqrt{n+1} \}\Big[xH_{n}^{re}(x) - H_{n-1}^{re}(x)\sqrt{n-1}\Big] \quad \mathbf{(8)} $$ + + $$H_{n}^{re}(x) = \displaystyle\{H_{n}(x) \over \sqrt{n!}} \quad \mathbf{(10)} $$ + + When we use this polynomial in calculating the wavefunction of a Quantum Harmonic Oscillator, the equation is as follows: + + $$\psi_{n}(x) = \displaystyle\Bigg(\{1 \over 2^n\sqrt{\pi} \}\Bigg)^{1/2}H_{n}^{re}(x) \quad e^{-\{x^2 \over 2 \}} \quad \mathbf{(11)} $$ + + In this package, we implemented a recurrence based on the recursive solution to the wavefunction of the Quantum Harmonic Oscillator presented in the work of *José Maria Pérez-Jordá* [[11](#references)]. The recurrence we implemented was for $\psi_{n+1}$, which we obtained from the recursive definition of the Hermite polynomial [[12](#references)], as suggested by *José Maria Pérez-Jordá* in his article: + + + $H_{n+1}(x) = 2xH_{n}(x) - 2nH_{n-1}(x) \implies $ + + + $\Bigg( \displaystyle\{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)H_{n+1}(x) = \Bigg( \displaystyle\{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)2xH_{n}(x) -\Bigg( \displaystyle\{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)2nH_{n-1}(x) \implies$ + + + $\Bigg( \displaystyle\{e^{-x^{2}/2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)H_{n+1}(x) = \Bigg( \displaystyle\{e^{-x^{2}/2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)2xH_{n}(x) -2n\psi_{n-1}(x) \implies $ + + + $\displaystyle\{1 \over \sqrt{2n}\}\Bigg( \displaystyle\{e^{-x^2 / 2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)H_{n+1}(x) = \{1 \over \sqrt{2n} \}\Bigg( \displaystyle\{e^{-x^2 /2} \over \sqrt{2^{n-1}(n-1)!\pi^{1/2}}\}\Bigg)2xH_{n}(x) -\{2n \over \sqrt{2n}\} \, \psi_{n-1}(x) \implies$ + + + $\Bigg(\displaystyle\{e^{-x^2 / 2} \over \sqrt{2^n n!\pi^{1/2}}\}\Bigg) H_{n+1}(x) = 2x\psi_{n}(x) - \{2n \over \sqrt{2n}\} \, \psi_{n-1}(x) \implies$ + + + $\displaystyle\Bigg(\{1 \over \sqrt{2(n+1)} \}\Bigg)\Bigg(\displaystyle\{e^{-x^2 / 2} \over \sqrt{2^n n!\pi^{1/2}} \}\Bigg) H_{n+1}(x) = \displaystyle\Bigg(\{1 \over \sqrt{2(n+1)}\}\Bigg)2x\psi_{n}(x) - \displaystyle\Bigg(\{1 \over \sqrt{2(n+1)}\}\Bigg) \, \{2n \over \sqrt{2n} \} \, \psi_{n-1}(x) \implies$ + + + $$\psi_{n+1}(x) = \displaystyle\Bigg(\sqrt{2 \over n+1}\Bigg)x\psi_{n}(x) -\Bigg(\sqrt{n \over n+1}\Bigg)\psi_{n-1}(x) \quad \mathbf{(12)}$$ + + + Besides the use of this recurrence in this package, the same authors implemented a version of it in a Cython module of QuTip: [_distributions.pyx](https://github.com/qutip/qutip/blob/master/qutip/_distributions.pyx), to be used in the HarmonicOscillatorWaveFunction class from the [distributions.py](https://github.com/qutip/qutip/blob/master/qutip/distributions.py) module. + + + ## ⚡️The Numba Module - Hybrid Solution + + We use a hybrid solution with two algorithms for calculating the wave function for calculating a single Fock wave function's values at multiple positions (Single Fock and Multiple Position) (`psi_n_single_fock_multiple_position`). For $n>60$ or more than 35 positions, we use the recurrence for the wave function. For $n\le 60$ and at most 35 positions we use a precomputed matrix with the normalized coefficients of the Hermite polynomial as follows: + + + $$\psi_{i}(x) = \displaystyle\{1 \over \sqrt{2^i i!\pi^{1/2}}\}H_{i}(x)e^{-x^{2}/2} = \{1 \over \sqrt{2^{i}i!\pi^{1/2}}\}\mathbf{C_{n}[i]} \cdot \mathbf{x^{p}} e^{-x^{2}/2} \implies $$ + + + $$\psi_{i}(x) = \mathbf{C^{s}_{n}[i]\cdot x^{p}e^{-x^{2}/2} \quad \mathbf{(13)}}$$ + + + where $\mathbf{C^{s}_{n}[i]}$ is the row vector of normalized coefficients that multiply each power of $x$ up to $x^n$. The entire matrix $\mathbf{C^s_n}$ of such rows is precomputed up to degree $n=60$. $\mathbf{x^{p}}$ is a column vector of powers up to n, with zeros in places where the coefficient is zero; for example, for $i=3$, $\mathbf{x^{p}} = [x^{3}, 0.0, x^{1}, 0.0]^T$. This hybrid algorithm is also used in Single Fock and Single Position (`psi_n_single_fock_single_position`) problems, though it offers no computational advantage in these cases. Additionally, there is an argument named **CS_matrix** for these Single Fock functions, set to **True** to enable the use of this matrix. In other words, you can use only the recurrence relation for the wave function at any value. The use of this coefficient matrix is limited to values up to **60** (determined empirically), as beyond this point, the function may encounter precision errors, resulting in incoherent outputs [[13](#references)]. + + ## ⚡️ The Numba Module - Arguments + + For this algorithm to perform as efficiently as possible, Numba's Just-in-Time compilation is used in conjunction with [lru_cache (Least Recently Used - Cache Management)](https://docs.python.org/3/library/functools.html). The following arguments were used in the **@nb.jit** decorator: + + - **nopython=True:** This argument forces the Numba compiler to operate in "nopython" mode, which means that all the code within the function must be compilable to pure machine code without falling back to the Python interpreter. This results in significant performance improvements by eliminating the overhead of the Python interpreter. + - **looplift=True:** This argument allows Numba to "lift" loops out of "nopython" mode. That is, if there are loops in the code that cannot be compiled in "nopython" mode, Numba will try to move them outside of the compiled part and execute them as normal Python code. + - **nogil=True:** This argument releases the Python Global Interpreter Lock (GIL) while the function is executing. It is useful for allowing the Numba-compiled code to run in parallel with other Python threads, increasing performance in multi-threaded programs. + - **boundscheck=False:** Disables array bounds checking. Normally, Numba checks if array indices are within valid bounds. Disabling this check can increase performance but may result in undefined behavior if there are out-of-bounds accesses. + - **cache=True:** Enables caching of the compiled function. The first time the function is compiled, Numba stores the compiled version in a cache. On subsequent executions, Numba can reuse the compiled version from the cache instead of recompiling the function, reducing the function's startup time. + + ## ⚙️ The Cython Module + + The Cython module includes compiled files for Linux (**.so**) and Windows (**.pyd**), which allows it to be used in Google Colab (Linux). Additionally, this module supports three versions of Python 3: 3.10, 3.11, and 3.12. All these files are placed in the package folder upon installation. The source code of the Cython module is available in the repository in **.pyx** format. In the functions of the Cython module, some decorators are used to increase speed: + + - **@cython.nogil**: This decorator allows a Cython function to release the Global Interpreter Lock (GIL), making it possible to execute that block of code concurrently in multiple threads. + - **@cython.cfunc**: This decorator tells Cython to treat the function as a C function, meaning it can be called from other Cython or C code, not just Python. The function will have C-level calling conventions. + - **@cython.locals(...)**: Declares local variable types to optimize performance. + - **@cython.boundscheck(False)**: Disables bounds checking for arrays/lists to boost speed, but at the cost of safety. + + + ## 📖 References + + Our journey through the quantum realm is inspired by the following: + + 1. Lam, S. K., Pitrou, A., & Seibert, S. (2015). _Numba: A LLVM-based Python JIT compiler_. In _Proceedings of the Second Workshop on the LLVM Compiler Infrastructure in HPC_ (LLVM '15) (pp. 7-12). Association for Computing Machinery. https://doi.org/10.1145/2833157.2833162 + 2. Behnel, S., Bradshaw, R., Citro, C., Dalcin, L., Seljebotn, D. S., & Smith, K. (2011). *Cython: The best of both worlds*. Computing in Science & Engineering, 13(2), 31-39. https://doi.org/10.1109/MCSE.2010.118 + 3. Yao, Y., Miatto, F., & Quesada, N. (2024). _Riemannian optimization of photonic quantum circuits in phase and Fock space_ [Preprint]. arXiv:2209.06069. [https://doi.org/10.21468/SciPostPhys.17.3.082](https://doi.org/10.21468/SciPostPhys.17.3.082) + 4. Miatto, F. M., & Quesada, N. (2020). *_Fast optimization of parametrized quantum optical circuits_* (*Quantum*, 4, 366). [https://doi.org/10.22331/q-2020-11-30-366](https://doi.org/10.22331/q-2020-11-30-366) + 5. Bowers, P. L. (2020). *Lectures on Quantum Mechanics: A Primer for Mathematicians*. Cambridge University Press. ISBN: [1108429769](https://www.worldcat.org/isbn/1108429769) ([9781108429764](https://www.worldcat.org/isbn/9781108429764)) + 6. Aerts, D., Beltran, L. *Quantum Structure in Cognition: Human Language as a Boson Gas of Entangled Words*. Found Sci 25, 755–802 (2020). [https://doi.org/10.1007/s10699-019-09633-4](https://doi.org/10.1007/s10699-019-09633-4) + 7. Beiser, A. (2003). *Concepts of Modern Physics*. 6th ed. McGraw Hill. ISBN: [0072448482](https://www.worldcat.org/isbn/0072448482) ([9780072448481](https://www.worldcat.org/isbn/9780072448481)) + 8. Celeghini, E., Gadella, M., & del Olmo, M. A. (2021). *Hermite functions and Fourier series*. Symmetry, 13(5), Article 853. [https://doi.org/10.3390/sym13050853](https://doi.org/10.3390/sym13050853) + 9. Schleich, W. P. (2001). *Quantum optics in phase space*. Wiley-VCH. ISBN: [352729435X](https://www.worldcat.org/isbn/352729435X) ([9783527294350](https://www.worldcat.org/isbn/9783527294350)) + 10. Leonhardt, U. (2010). Essential Quantum Optics: From Quantum Measurements to Black Holes. Cambridge: Cambridge University Press. ISBN: [0521869781](https://www.worldcat.org/isbn/0521869781) ([9780521869782](https://www.worldcat.org/isbn/9780521869782)) + 11. Pérez-Jordá, J. M. (2017). *On the recursive solution of the quantum harmonic oscillator*. European Journal of Physics, 39(1), 015402. [https://doi.org/10.1088/1361-6404/aa9584](https://doi.org/10.1088/1361-6404/aa9584) + 12. Olver, F. W. J., & Maximon, L. C. (2010). *NIST Handbook of Mathematical Functions*. Cambridge University Press. ISBN: [0521192250](https://www.worldcat.org/isbn/0521192250) ([9780521192255](https://www.worldcat.org/isbn/9780521192255)) + 13. Cordeiro, M., Bezerra, I. P., & Vasconcelos, H. H. M. (2024). *Efficient computation of the wave function ψn(x) using Hermite coefficient matrix in Python*. In 7º Workshop Escola de Computação e Informação Quântica (7ª WECIQ) (pp. 56-60). CEFET/RJ. + + ## 🤝 Contributing + + Contributions, whether filing an issue, proposing improvements, or submitting a pull request, are welcome! Please feel free to explore, ask questions, and share your ideas. + + ## 📜 License + + This project is available under the *BSD 3-Clause License*. See the LICENSE file for more details. + + ## 📬 Contact + + If you have any questions or want to reach out to the team, please send me an email at [matheusgomescord@gmail.com](matheusgomescord@gmail.com). + +""" diff --git a/src/fast_wave/caching.py b/src/fast_wave/caching.py index b88d40e..65bb667 100644 --- a/src/fast_wave/caching.py +++ b/src/fast_wave/caching.py @@ -16,92 +16,69 @@ import numpy as np def int_array_cache_Numba_single_fock(fn): - """ - Cache decorator for functions that receive real multiple positions (numpy array) and is a problem Single Fock in the Numba module. - - This decorator caches function results to improve performance, particularly when `fn` is called - multiple times with the same arguments. The function to be decorated must accept an integer `n`, - a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is converted to a tuple for - caching purposes, as `lru_cache` only accepts hashable types. - - Parameters - ---------- - fn : callable - The function to be decorated, which takes three arguments: - - n: np.uint64 representing the state number. - - x_array: np.ndarray with dtype=np.float64 representing the positions. - - CS_matrix: bool. - - Returns - ------- - callable - A wrapped version of `fn` with caching enabled, including methods to access cache information: - - cache_info: Returns cache statistics. - - cache_clear: Clears the cache. - - .. note:: - - This code is a modified version of the tensor_int_cache provided in Mr Mustard `_, - which is released under Apache License, Version 2.0 , with the following - copyright notice: - - Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. - + Cache decorator for functions that receive real multiple positions (numpy array) + and is a problem Single Fock in the Numba module. + + This decorator caches function results to improve performance, particularly when `fn` + is called multiple times with the same arguments. The function to be decorated must accept + an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is + converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types. + + Args: + fn (callable): The function to be decorated, which takes three arguments: + - n (np.uint64): The state number. + - x_array (np.ndarray[np.float64]): Array representing the positions. + - CS_matrix (bool): A flag to indicate CS matrix. + + Returns: + `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information. + + References: + 1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. """ - @lru_cache - def cached_wrapper(n, x_tuple,CS_matrix = True): + def cached_wrapper(n, x_tuple, CS_matrix=True): x_array = np.array(x_tuple, dtype=np.float64) - return fn(n,x_array,CS_matrix) + return fn(n, x_array, CS_matrix) @wraps(fn) - def wrapper(n, x_array,CS_matrix = True): - return cached_wrapper(n, tuple(x_array),CS_matrix) + def wrapper(n, x_array, CS_matrix=True): + return cached_wrapper(n, tuple(x_array), CS_matrix) wrapper.cache_info = cached_wrapper.cache_info wrapper.cache_clear = cached_wrapper.cache_clear return wrapper -def int_array_cache_Numba_multiple_fock(fn): +def int_array_cache_Numba_multiple_fock(fn): """ - Cache decorator for functions that receive real multiple positions (numpy array) and is a problem Multiple Fock in the Numba module. - - This decorator caches function results to improve performance, particularly when `fn` is called - multiple times with the same arguments. The function to be decorated must accept an integer `n`, - a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is converted to a tuple for - caching purposes, as `lru_cache` only accepts hashable types. - - Parameters - ---------- - fn : callable - The function to be decorated, which takes three arguments: - - n: np.uint64 representing the state number. - - x_array: np.ndarray with dtype=np.float64 representing the positions. + Cache decorator for functions that receive real multiple positions (numpy array) + and is a problem Multiple Fock in the Numba module. - Returns - ------- - callable - A wrapped version of `fn` with caching enabled, including methods to access cache information: - - cache_info: Returns cache statistics. - - cache_clear: Clears the cache. + This decorator caches function results to improve performance, particularly when `fn` + is called multiple times with the same arguments. The function to be decorated must accept + an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is + converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types. - .. note:: + Args: + fn (callable): The function to be decorated, which takes two arguments: + - n (np.uint64): The state number. + - x_array (np.ndarray[np.float64]): Array representing the positions. - This code is a modified version of the tensor_int_cache provided in Mr Mustard `_, - which is released under Apache License, Version 2.0 , with the following - copyright notice: + Returns: + `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information. - Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. - + References: + 1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. """ - @lru_cache def cached_wrapper(n, x_tuple): x_array = np.array(x_tuple, dtype=np.float64) - return fn(n,x_array) + return fn(n, x_array) @wraps(fn) def wrapper(n, x_array): @@ -112,44 +89,33 @@ def wrapper(n, x_array): return wrapper -def int_array_cache_Cython(fn): +def int_array_cache_Cython(fn): """ - Cache decorator for functions that receive real multiple positions (numpy array) in the Cython module. + Cache decorator for functions that receive real multiple positions (numpy array) + in the Cython module. - This decorator caches function results to improve performance, particularly when `fn` is called - multiple times with the same arguments. The function to be decorated must accept an integer `n` and - a numpy array `x_array`. The numpy array is converted to a tuple for + This decorator caches function results to improve performance, particularly when `fn` + is called multiple times with the same arguments. The function to be decorated must accept + an integer `n` and a numpy array `x_array`. The numpy array is converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types. - Parameters - ---------- - fn : callable - The function to be decorated, which takes three arguments: - - n: np.uint64 representing the state number. - - x_array: np.ndarray with dtype=np.float64 representing the positions. - - Returns - ------- - callable - A wrapped version of `fn` with caching enabled, including methods to access cache information: - - cache_info: Returns cache statistics. - - cache_clear: Clears the cache. - - .. note:: + Args: + fn (callable): The function to be decorated, which takes two arguments: + - n (np.uint64): The state number. + - x_array (np.ndarray[np.float64]): Array representing the positions. - This code is a modified version of the tensor_int_cache provided in Mr Mustard `_, - which is released under Apache License, Version 2.0 , with the following - copyright notice: + Returns: + `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information. - Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. - + References: + 1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. """ - @lru_cache def cached_wrapper(n, x_tuple): x_array = np.array(x_tuple, dtype=np.float64) - return fn(n,x_array) + return fn(n, x_array) @wraps(fn) def wrapper(n, x_array): @@ -162,92 +128,69 @@ def wrapper(n, x_array): def int_array_cache_Numba_complex_single_fock(fn): - """ - Cache decorator for functions that receive complex multiple positions (numpy array) and is a problem Single Fock in the Numba module. - - This decorator caches function results to improve performance, particularly when `fn` is called - multiple times with the same arguments. The function to be decorated must accept an integer `n`, - a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is converted to a tuple for - caching purposes, as `lru_cache` only accepts hashable types. - - Parameters - ---------- - fn : callable - The function to be decorated, which takes three arguments: - - n: np.uint64 representing the state number. - - x_array: np.ndarray with dtype=np.complex128 representing the positions. - - CS_matrix: bool. - - Returns - ------- - callable - A wrapped version of `fn` with caching enabled, including methods to access cache information: - - cache_info: Returns cache statistics. - - cache_clear: Clears the cache. - - .. note:: - - This code is a modified version of the tensor_int_cache provided in Mr Mustard `_, - which is released under Apache License, Version 2.0 , with the following - copyright notice: - - Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. - + Cache decorator for functions that receive complex multiple positions (numpy array) + and is a problem Single Fock in the Numba module. + + This decorator caches function results to improve performance, particularly when `fn` + is called multiple times with the same arguments. The function to be decorated must accept + an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is + converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types. + + Args: + fn (callable): The function to be decorated, which takes three arguments: + - n (np.uint64): The state number. + - x_array (np.ndarray[np.complex128]): Array representing the positions. + - CS_matrix (bool): A flag to indicate CS matrix. + + Returns: + `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information. + + References: + 1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. """ - @lru_cache - def cached_wrapper(n, x_tuple,CS_matrix): + def cached_wrapper(n, x_tuple, CS_matrix): x_array = np.array(x_tuple, dtype=np.complex128) - return fn(n,x_array,CS_matrix) + return fn(n, x_array, CS_matrix) @wraps(fn) - def wrapper(n, x_array,CS_matrix): - return cached_wrapper(n, tuple(x_array),CS_matrix) + def wrapper(n, x_array, CS_matrix): + return cached_wrapper(n, tuple(x_array), CS_matrix) wrapper.cache_info = cached_wrapper.cache_info wrapper.cache_clear = cached_wrapper.cache_clear return wrapper -def int_array_cache_Numba_complex_multiple_fock(fn): +def int_array_cache_Numba_complex_multiple_fock(fn): """ - Cache decorator for functions that receive complex multiple positions (numpy array) in the Numba module. - - This decorator caches function results to improve performance, particularly when `fn` is called - multiple times with the same arguments. The function to be decorated must accept an integer `n`, - a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is converted to a tuple for - caching purposes, as `lru_cache` only accepts hashable types. + Cache decorator for functions that receive complex multiple positions (numpy array) + in the Numba module. - Parameters - ---------- - fn : callable - The function to be decorated, which takes three arguments: - - n: np.uint64 representing the state number. - - x_array: np.ndarray with dtype=np.complex128 representing the positions. + This decorator caches function results to improve performance, particularly when `fn` + is called multiple times with the same arguments. The function to be decorated must accept + an integer `n`, a numpy array `x_array`, and a boolean `CS_matrix`. The numpy array is + converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types. - Returns - ------- - callable - A wrapped version of `fn` with caching enabled, including methods to access cache information: - - cache_info: Returns cache statistics. - - cache_clear: Clears the cache. + Args: + fn (callable): The function to be decorated, which takes two arguments: + - n (np.uint64): The state number. + - x_array (np.ndarray[np.complex128]): Array representing the positions. - .. note:: - - This code is a modified version of the tensor_int_cache provided in Mr Mustard `_, - which is released under Apache License, Version 2.0 , with the following - copyright notice: - - Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. + Returns: + `callable` : A wrapped version of **fn** with caching enabled, including methods to access cache information. + References: + 1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. """ - @lru_cache def cached_wrapper(n, x_tuple): x_array = np.array(x_tuple, dtype=np.complex128) - return fn(n,x_array) + return fn(n, x_array) @wraps(fn) def wrapper(n, x_array): @@ -256,45 +199,34 @@ def wrapper(n, x_array): wrapper.cache_info = cached_wrapper.cache_info wrapper.cache_clear = cached_wrapper.cache_clear + return wrapper def int_array_cache_Cython_complex(fn): - """ - Cache decorator for functions that receive real multiple positions (numpy array) and is a problem Single Fock in the Cython module. + Cache decorator for functions that receive complex multiple positions (numpy array) + and is a problem Single Fock in the Cython module. - This decorator caches function results to improve performance, particularly when `fn` is called - multiple times with the same arguments. The function to be decorated must accept an integer `n` and - a numpy array `x_array`. The numpy array is converted to a tuple for + This decorator caches function results to improve performance, particularly when `fn` + is called multiple times with the same arguments. The function to be decorated must accept + an integer `n` and a numpy array `x_array`. The numpy array is converted to a tuple for caching purposes, as `lru_cache` only accepts hashable types. - Parameters - ---------- - fn : callable - The function to be decorated, which takes three arguments: - - n: np.uint64 representing the state number. - - x_array: np.ndarray with dtype=np.complex128 representing the positions. + Args: + fn (callable): The function to be decorated. It must take two arguments: + - n (np.uint64): The state number. + - x_array (np.ndarray of dtype=np.complex128): The positions. - Returns - ------- - callable - A wrapped version of `fn` with caching enabled, including methods to access cache information: - - cache_info: Returns cache statistics. - - cache_clear: Clears the cache. - - .. note:: - - This code is a modified version of the tensor_int_cache provided in Mr Mustard `_, - which is released under Apache License, Version 2.0 , with the following - copyright notice: - - Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. + Returns: + `callable` : A wrapped version of **fn** with caching enabled. This wrapped function also exposes the following methods for cache management. + References: + 1. This code is a modified version of the `tensor_int_cache` provided in Mr Mustard ([link](https://github.com/XanaduAI/MrMustard/blob/develop/mrmustard/math/caching.py#L26)), + which is released under Apache License, Version 2.0, with the following copyright notice: Copyright 2022 Xanadu Quantum Technologies Inc. All rights reserved. """ - @lru_cache def cached_wrapper(n, x_tuple): x_array = np.array(x_tuple, dtype=np.complex128) - return fn(n,x_array) + return fn(n, x_array) @wraps(fn) def wrapper(n, x_array): @@ -303,4 +235,4 @@ def wrapper(n, x_array): wrapper.cache_info = cached_wrapper.cache_info wrapper.cache_clear = cached_wrapper.cache_clear - return wrapper + return wrapper \ No newline at end of file diff --git a/src/fast_wave/wavefunction_cython.pyx b/src/fast_wave/wavefunction_cython.pyx index 398b611..432c793 100644 --- a/src/fast_wave/wavefunction_cython.pyx +++ b/src/fast_wave/wavefunction_cython.pyx @@ -42,36 +42,25 @@ from cmath import exp as cexp, sqrt as csqrt, pi as cpi @cython.boundscheck(False) @cython.cdivision(True) cpdef double psi_n_single_fock_single_position(int n, double x): - """ - Compute the wavefunction to a real scalar x using adapted recurrence relation. - - Parameters - ---------- - n : int - Quantum state number. - x : double - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - double - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_single_fock_single_position(0, 1.0) - 0.45558067201133257 - >>> psi_n_single_fock_single_position(61, 1.0) - -0.2393049199171131 - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a real scalar `x` using the adapted recurrence relation. + + Args: + n (int): Quantum state number. + x (double): Position at which to evaluate the wavefunction. + + Returns: + `double` : The evaluated wavefunction. + + Examples: + >>> psi_n_single_fock_single_position(0, 1.0) + 0.45558067201133257 + >>> psi_n_single_fock_single_position(61, 1.0) + -0.2393049199171131 + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ cdef np.ndarray[np.float64_t, ndim=1] n_coeffs @@ -97,36 +86,25 @@ cpdef double psi_n_single_fock_single_position(int n, double x): @cython.boundscheck(False) @cython.cdivision(True) cpdef double complex psi_n_single_fock_single_position_complex(int n, double complex x): - """ - Compute the wavefunction to a complex scalar x using adapted recurrence relation. - - Parameters - ---------- - n : int - Quantum state number. - x : double - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - double - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_single_fock_single_position_complex(0,1.0+2.0j) - (-1.4008797330262455-3.0609780602975003j) - >>> psi_n_single_fock_single_position_complex(61,1.0+2.0j) - (-511062135.47555304+131445997.75753704j) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a complex scalar `x` using the adapted recurrence relation. + + Args: + n (int): Quantum state number. + x (double complex): Position at which to evaluate the wavefunction. + + Returns: + `double complex` : The evaluated wavefunction. + + Examples: + >>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j) + (-1.4008797330262455-3.0609780602975003j) + >>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j) + (-511062135.47555304+131445997.75753704j) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ cdef np.ndarray[np.float64_t, ndim=1] n_coeffs @@ -152,36 +130,25 @@ cpdef double complex psi_n_single_fock_single_position_complex(int n, double com @cython.boundscheck(False) @cython.cdivision(True) cpdef np.ndarray[np.float64_t, ndim=1] psi_n_single_fock_multiple_position(int n, np.ndarray[np.float64_t, ndim=1] x): - """ - Compute the wavefunction to a real vector x using adapted recurrence relation. - - Parameters - ---------- - n : int - Quantum state number. - x : np.ndarray[np.float64_t] - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - np.ndarray[np.float64_t] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0])) - array([0.45558067, 0.10165379]) - >>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0])) - array([-0.23930492, -0.01677378]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a real vector `x` using the adapted recurrence relation. + + Args: + n (int): Quantum state number. + x (np.ndarray[np.float64_t]): Position at which to evaluate the wavefunction. + + Returns: + `np.ndarray[np.float64_t]` : The evaluated wavefunction. + + Examples: + >>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0])) + array([0.45558067, 0.10165379]) + >>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0])) + array([-0.23930492, -0.01677378]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ x_size = x.shape[0] @@ -209,36 +176,27 @@ cpdef np.ndarray[np.float64_t, ndim=1] psi_n_single_fock_multiple_position(int n @cython.boundscheck(False) @cython.cdivision(True) cpdef np.ndarray[np.complex128_t, ndim=1] psi_n_single_fock_multiple_position_complex(int n, np.ndarray[np.complex128_t, ndim=1] x): - """ - Compute the wavefunction to a complex vector x using adapted recurrence relation. - - Parameters - ---------- - n : int - Quantum state number. - x : np.ndarray[np.complex128_t] - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - np.ndarray[np.complex128_t] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j])) - array([ 0.40583486-0.63205035j, -0.49096842+0.56845369j]) - >>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j])) - array([-7.56548941e+03+9.21498621e+02j, -1.64189542e+08-3.70892077e+08j]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a complex vector `x` using the adapted recurrence relation. + + There is another version of this code, implemented by the same authors who developed this function, in a Cython module of QuTip: [_distributions.pyx](https://github.com/qutip/qutip/blob/master/qutip/_distributions.pyx), to be used in the `HarmonicOscillatorWaveFunction` class from the [distributions.py](https://github.com/qutip/qutip/blob/master/qutip/distributions.py) module. + + Args: + n (int): Quantum state number. + x (np.ndarray[np.complex128_t]): Position at which to evaluate the wavefunction. + + Returns: + `np.ndarray[np.complex128_t]`: The evaluated wavefunction. + + Examples: + >>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j])) + array([ 0.40583486-0.63205035j, -0.49096842+0.56845369j]) + >>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j])) + array([-7.56548941e+03+9.21498621e+02j, -1.64189542e+08-3.70892077e+08j]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ x_size = x.shape[0] @@ -267,34 +225,23 @@ cpdef np.ndarray[np.complex128_t, ndim=1] psi_n_single_fock_multiple_position_co @cython.boundscheck(False) @cython.cdivision(True) cpdef np.ndarray[np.float64_t, ndim=1] psi_n_multiple_fock_single_position(int n, double x): - """ - Compute the wavefunction to a real scalar x to all fock states until n using adapted recurrence relation. - - Parameters - ---------- - n : int - Quantum state number. - x : double - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - np.ndarray[np.float64_t] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_multiple_fock_single_position(0, 1.0) - array([0.45558067, 0.64428837]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a real scalar `x` to all Fock states up to `n` using the adapted recurrence relation. + + Args: + n (int): Quantum state number. + x (double): Position at which to evaluate the wavefunction. + + Returns: + `np.ndarray[np.float64_t]` : The evaluated wavefunction. + + Examples: + >>> psi_n_multiple_fock_single_position(0, 1.0) + array([0.45558067, 0.64428837]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ cdef np.ndarray[np.float64_t, ndim=1] result = np.zeros((n + 1), dtype=np.float64) @@ -314,34 +261,23 @@ cpdef np.ndarray[np.float64_t, ndim=1] psi_n_multiple_fock_single_position(int n @cython.boundscheck(False) @cython.cdivision(True) cpdef np.ndarray[np.complex128_t, ndim=1] psi_n_multiple_fock_single_position_complex(int n, double complex x): - """ - Compute the wavefunction to a complex scalar x to all fock states until n using adapted recurrence relation. - - Parameters - ---------- - n : int - Quantum state number. - x : double complex - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - np.ndarray[np.complex128_t] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_multiple_fock_single_position_complex(0, 1.0 +2.0j) - array([-1.40087973-3.06097806j, 6.67661026-8.29116292j]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a complex scalar `x` to all Fock states up to `n` using the adapted recurrence relation. + + Args: + n (int): Quantum state number. + x (double complex): Position at which to evaluate the wavefunction. + + Returns: + `np.ndarray[np.complex128_t]` : The evaluated wavefunction. + + Examples: + >>> psi_n_multiple_fock_single_position_complex(0, 1.0 + 2.0j) + array([-1.40087973-3.06097806j, 6.67661026-8.29116292j]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ cdef np.ndarray[np.complex128_t, ndim=1] result = np.zeros((n + 1), dtype=np.complex128) @@ -361,35 +297,24 @@ cpdef np.ndarray[np.complex128_t, ndim=1] psi_n_multiple_fock_single_position_co @cython.boundscheck(False) @cython.cdivision(True) cpdef np.ndarray[np.float64_t, ndim=2] psi_n_multiple_fock_multiple_position(int n, np.ndarray[np.float64_t, ndim=1] x): - """ - Compute the wavefunction to a real vector x to all fock states until n using adapted recurrence relation. - - Parameters - ---------- - n : int - Quantum state number. - x : np.ndarray[np.float64_t] - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - np.ndarray[np.ndarray[np.float64_t]] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_multiple_fock_multiple_position(1, np.array([1.0, 2.0])) - array([[0.45558067, 0.10165379], - [0.64428837, 0.28752033]]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a real vector `x` to all Fock states up to `n` using the adapted recurrence relation. + + Args: + n (int): Quantum state number. + x (np.ndarray[np.float64_t]): Positions at which to evaluate the wavefunction. + + Returns: + `np.ndarray[np.ndarray[np.float64_t]]`: The evaluated wavefunction. + + Examples: + >>> psi_n_multiple_fock_multiple_position(1, np.array([1.0, 2.0])) + array([[0.45558067, 0.10165379], + [0.64428837, 0.28752033]]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ x_size = x.shape[0] @@ -417,35 +342,24 @@ cpdef np.ndarray[np.float64_t, ndim=2] psi_n_multiple_fock_multiple_position(int @cython.boundscheck(False) @cython.cdivision(True) cpdef np.ndarray[np.complex128_t, ndim=2] psi_n_multiple_fock_multiple_position_complex(int n, np.ndarray[np.complex128_t, ndim=1] x): - """ - Compute the wavefunction to a complex vector x to all fock states until n using adapted recurrence relation. - - Parameters - ---------- - n : int - Quantum state number. - x : np.ndarray[np.complex128_t] - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - np.ndarray[np.ndarray[np.complex128_t]] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_multiple_fock_multiple_position_complex(1,np.array([1.0 + 1.0j, 2.0 + 2.0j])) - array([[ 0.40583486-0.63205035j, -0.49096842+0.56845369j], - [ 1.46779135-0.31991701j, -2.99649822+0.21916143j]]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a complex vector `x` to all Fock states up to `n` using the adapted recurrence relation. + + Args: + n (int): Quantum state number. + x (np.ndarray[np.complex128_t]): Positions at which to evaluate the wavefunction. + + Returns: + `np.ndarray[np.ndarray[np.complex128_t]]`: The evaluated wavefunction. + + Examples: + >>> psi_n_multiple_fock_multiple_position_complex(1, np.array([1.0 + 1.0j, 2.0 + 2.0j])) + array([[ 0.40583486-0.63205035j, -0.49096842+0.56845369j], + [ 1.46779135-0.31991701j, -2.99649822+0.21916143j]]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ x_size = x.shape[0] diff --git a/src/fast_wave/wavefunction_mpmath.py b/src/fast_wave/wavefunction_mpmath.py index 504661d..44efd49 100644 --- a/src/fast_wave/wavefunction_mpmath.py +++ b/src/fast_wave/wavefunction_mpmath.py @@ -29,42 +29,28 @@ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. from mpmath import mp, matrix -import mpmath -import numpy as np +def psi_n_single_fock_single_position(n, x, prec): + """ + Calculates the nth wavefunction for a real scalar `x` with arbitrary precision using mpmath. -def psi_n_single_fock_single_position(n: np.uint64, x: np.float64, prec: np.uint64) -> mpmath.ctx_mp_python.mpf: + Args: + n (int): Quantum state number. + x (float): Position at which to evaluate the wavefunction. + prec (numpy.uint64): Desired precision for the calculation (number of decimal digits). - """ - Calculates the nth wavefunction to an real scalar x with arbitrary precision using mpmath. - - Parameters: - ---------- - n : np.uint64 - Quantum state number. - x : np.float64 - Position(s) at which to evaluate the wavefunction. - prec : np.uint64 - Desired precision for the calculation (number of decimal digits). - - Returns: - ------- - mpmath.ctx_mp_python.mpf - The evaluated wavefunction with the specified precision. - - Examples - -------- - ```python - >>> psi_n_single_fock_single_position(0,1.0,60) - mpf('0.45558067201133253483370525689785138607662639040929439687915331') - >>> psi_n_single_fock_single_position(61,1.0,60) - mpf('-0.239304919917113097789996116536717211865611421191819349290628243') - ``` + `mpmath.ctx_mp_python.mpf` : evaluated wavefunction with the specified precision. + + Examples: + >>> psi_n_single_fock_single_position(0, 1.0, 60) + mpf('0.45558067201133253483370525689785138607662639040929439687915331') + >>> psi_n_single_fock_single_position(61, 1.0, 60) + mpf('-0.239304919917113097789996116536717211865611421191819349290628243') References: - ---------- - - The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ + 1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision + floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ """ mp.dps = prec @@ -72,42 +58,26 @@ def psi_n_single_fock_single_position(n: np.uint64, x: np.float64, prec: np.uint n = mp.mpf(str(n)) return mp.hermite(n, x) * mp.power(mp.mpf('2.0'),(mp.mpf('-0.5') * n)) * mp.power(mp.gamma(n+1.0), mp.mpf('-0.5')) * mp.power(mp.pi , mp.mpf('-0.25')) * mp.exp(-mp.power(x , mp.mpf('2.0')) / mp.mpf('2.0')) +def psi_n_single_fock_single_position_complex(n, x, prec): + """ + Calculates the nth wavefunction for a complex scalar `x` with arbitrary precision using mpmath. + Args: + n (np.uint64): Quantum state number. + x (np.complex128): Position at which to evaluate the wavefunction. + prec (np.uint64): Desired precision for the calculation (number of decimal digits). - - -def psi_n_single_fock_single_position_complex(n: np.uint64, x: np.complex128, prec: np.uint64) -> mpmath.ctx_mp_python.mpc: - - """ - Calculates the nth wavefunction to a complex scalar x with arbitrary precision using mpmath. - - Parameters: - ---------- - n : np.uint64 - Quantum state number. - x : np.complex128 - Position(s) at which to evaluate the wavefunction. - prec : np.uint64 - Desired precision for the calculation (number of decimal digits). - - Returns: - ------- - mpmath.ctx_mp_python.mpc - The evaluated wavefunction with the specified precision. - - Examples - -------- - ```python - >>> psi_n_single_fock_single_position_complex(0,1.0+2.0j,60) - mpc(real='-1.40087973302624535996319358379185603705205815719366827159881527', imag='-3.06097806029750039193292973729038840279841978760336147713769087') - >>> psi_n_single_fock_single_position_complex(61,1.0+2.0j,60) - mpc(real='-511062135.475553070892329856229109412939170026007243421420322129', imag='131445997.757536932748911867174534983962121585813389430606204944') - ``` + `mpmath.ctx_mp_python.mpc` : The evaluated wavefunction with the specified precision. + + Examples: + >>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j, 60) + mpc(real='-1.40087973302624535996319358379185603705205815719366827159881527', imag='-3.06097806029750039193292973729038840279841978760336147713769087') + >>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j, 60) + mpc(real='-511062135.475553070892329856229109412939170026007243421420322129', imag='131445997.757536932748911867174534983962121585813389430606204944') References: - ---------- - - The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ + 1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ """ mp.dps = prec @@ -115,248 +85,155 @@ def psi_n_single_fock_single_position_complex(n: np.uint64, x: np.complex128, pr n = mp.mpf(str(n)) return mp.hermite(n, x) * mp.power(mp.mpf('2.0'),(mp.mpf('-0.5') * n)) * mp.power(mp.gamma(n+1.0), mp.mpf('-0.5')) * mp.power(mp.pi , mp.mpf('-0.25')) * mp.exp(-mp.power(x , mp.mpf('2.0')) / mp.mpf('2.0')) +def psi_n_single_fock_multiple_position(n, X, prec): + """ + Calculates the nth wavefunction for a real vector `x` with arbitrary precision using mpmath. + Args: + n (np.uint64): Quantum state number. + x (np.ndarray[np.float64]): Positions at which to evaluate the wavefunction. + prec (np.uint64): Desired precision for the calculation (number of decimal digits). - - - -def psi_n_single_fock_multiple_position(n: np.uint64, X: np.ndarray[np.float64], prec: np.uint64) -> mpmath.matrices.matrices._matrix: - - - """ - Calculates the nth wavefunction to a real vector x with arbitrary precision using mpmath. - - Parameters: - ---------- - n : np.uint64 - Quantum state number. - x : np.ndarray[np.float64] - Position(s) at which to evaluate the wavefunction. - prec : np.uint64 - Desired precision for the calculation (number of decimal digits). - - Returns: - ------- - mpmath.matrices.matrices._matrix - The evaluated wavefunction with the specified precision. - - Examples - -------- - ```python - >>> psi_n_single_fock_multiple_position(0,np.array([1.0,2.0]),20) - matrix( - [['0.45558067201133253483', '0.10165378830641791152']]) - >>> psi_n_single_fock_multiple_position(61,np.array([1.0,2.0]),20) - matrix( - [['-0.23930491991711309779', '-0.016773782204892582343']]) - ``` + `mpmath.matrices.matrices._matrix` : The evaluated wavefunction with the specified precision. + + Examples: + >>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0]), 20) + matrix( + [['0.45558067201133253483', '0.10165378830641791152']]) + >>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0]), 20) + matrix( + [['-0.23930491991711309779', '-0.016773782204892582343']]) References: - ---------- - - The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ + 1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ """ - return matrix([psi_n_single_fock_single_position(n, x, prec) for x in X]).T +def psi_n_single_fock_multiple_position_complex(n, X, prec): + """ + Calculates the nth wavefunction for a complex vector `x` with arbitrary precision using mpmath. + Args: + n (np.uint64): Quantum state number. + x (np.ndarray[np.complex128]): Positions at which to evaluate the wavefunction. + prec (np.uint64): Desired precision for the calculation (number of decimal digits). - - - -def psi_n_single_fock_multiple_position_complex(n: np.uint64, X: np.ndarray[np.complex128], prec: np.uint64) -> mpmath.matrices.matrices._matrix: - - """ - Calculates the nth wavefunction to a complex vector x with arbitrary precision using mpmath. - - Parameters: - ---------- - n : np.uint64 - Quantum state number. - x : np.ndarray[np.complex128] - Position(s) at which to evaluate the wavefunction. - prec : np.uint64 - Desired precision for the calculation (number of decimal digits). - - Returns: - ------- - mpmath.matrices.matrices._matrix - The evaluated wavefunction with the specified precision. - - Examples - -------- - ```python - >>> psi_n_single_fock_multiple_position_complex(0,np.array([1.0 + 1.0j, 2.0 + 2.0j]),20) - matrix( - [[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), mpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')]]) - >>> psi_n_single_fock_multiple_position_complex(61,np.array([1.0 + 1.0j, 2.0 + 2.0j]),20) - matrix( - [[mpc(real='-7565.4894098859360141926', imag='921.4986211518276840917'), mpc(real='-164189541.53192908120809', imag='-370892077.23796911662203')]]) - ``` + `mpmath.matrices.matrices._matrix` : The evaluated wavefunction with the specified precision. + + Examples: + >>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20) + matrix( + [[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), + mpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')]]) + >>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20) + matrix( + [[mpc(real='-7565.4894098859360141926', imag='921.4986211518276840917'), + mpc(real='-164189541.53192908120809', imag='-370892077.23796911662203')]]) References: - ---------- - - The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ + 1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ """ - return matrix([psi_n_single_fock_single_position_complex(n, x, prec) for x in X]).T - + return matrix([psi_n_single_fock_single_position_complex(n, x, prec) for x in X]).T +def psi_n_multiple_fock_single_position(n, x, prec): + """ + Determines the wavefunction for a real scalar `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations. -def psi_n_multiple_fock_single_position(n: np.uint64, x: np.float64, prec: np.uint64) -> mpmath.matrices.matrices._matrix: + Args: + n (np.uint64): Quantum state number up to which the wavefunctions are calculated. + x (np.float64): Position at which to evaluate the wavefunctions. + prec (np.uint64): Desired precision for the calculation (number of decimal digits). - """ - Determines the wavefunction for a real scalar x to all fock states until n, employing mpmath for arbitrary-precision calculations. - - Parameters: - ---------- - n : np.uint64 - Quantum state number. - x : np.float64 - Position(s) at which to evaluate the wavefunction. - prec : np.uint64 - Desired precision for the calculation (number of decimal digits). - - Returns: - ------- - mpmath.matrices.matrices._matrix - The evaluated wavefunction with the specified precision. - - Examples - -------- - ```python - >>> psi_n_multiple_fock_single_position(1,1.0,60) - matrix( - [['0.455580672011332534833705256897851386076626390409294396879153', '0.644288365113475181510837645362740498634994248687269122618738']]) - ``` + `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision. + + Examples: + >>> psi_n_multiple_fock_single_position(1, 1.0, 60) + matrix( + [['0.455580672011332534833705256897851386076626390409294396879153', + '0.644288365113475181510837645362740498634994248687269122618738']]) References: - ---------- - - The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ + 1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ """ - return matrix([psi_n_single_fock_single_position(i, x, prec) for i in range(n+1)]).T +def psi_n_multiple_fock_single_position_complex(n, x, prec): + """ + Determines the wavefunction for a complex scalar `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations. + Args: + n (np.uint64): Quantum state number up to which the wavefunctions are calculated. + x (np.complex128): Position at which to evaluate the wavefunctions. + prec (np.uint64): Desired precision for the calculation (number of decimal digits). - - -def psi_n_multiple_fock_single_position_complex(n: np.uint64, x: np.complex128, prec: np.uint64) -> mpmath.matrices.matrices._matrix: - - """ - Determines the wavefunction for a complex scalar x to all fock states until n, employing mpmath for arbitrary-precision calculations. - - Parameters: - ---------- - n : np.uint64 - Quantum state number. - x : np.complex128 - Position(s) at which to evaluate the wavefunction. - prec : np.uint64 - Desired precision for the calculation (number of decimal digits). - - Returns: - ------- - mpmath.matrices.matrices._matrix - The evaluated wavefunction with the specified precision. - - Examples - -------- - ```python - >>> c_wavefunction_mmod_arb_prec(1,1.0 +2.0j,20) - matrix( - [[mpc(real='-1.400879733026245359964', imag='-3.0609780602975003919354'), mpc(real='6.6766102562991123531695', imag='-8.2911629223978481324862')]]) - ``` + `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision. + + Examples: + >>> c_wavefunction_mmod_arb_prec(1, 1.0 + 2.0j, 20) + matrix( + [[mpc(real='-1.400879733026245359964', imag='-3.0609780602975003919354'), + mpc(real='6.6766102562991123531695', imag='-8.2911629223978481324862')]]) References: - ---------- - - The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ + 1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ """ return matrix([psi_n_single_fock_single_position_complex(i, x, prec) for i in range(n+1)]).T +def psi_n_multiple_fock_multiple_position(n, X, prec): + """ + Determines the wavefunction for a real vector `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations. + Args: + n (np.uint64): Quantum state number up to which the wavefunctions are calculated. + x (np.ndarray[np.float64]): Positions at which to evaluate the wavefunctions. + prec (np.uint64): Desired precision for the calculation (number of decimal digits). - - -def psi_n_multiple_fock_multiple_position(n: np.uint64, X: np.ndarray[np.float64], prec: np.uint64) -> mpmath.matrices.matrices._matrix: - - """ - Determines the wavefunction for a real vector x to all fock states until n, employing mpmath for arbitrary-precision calculations. - - Parameters: - ---------- - n : np.uint64 - Quantum state number. - x : np.ndarray[np.float64] - Position(s) at which to evaluate the wavefunction. - prec : np.uint64 - Desired precision for the calculation (number of decimal digits). - - Returns: - ------- - mpmath.matrices.matrices._matrix - The evaluated wavefunction with the specified precision. - - Examples - -------- - ```python - >>> wavefunction_mmmd_arb_prec(1,np.array([1.0,2.0]),20) - matrix( - [['0.45558067201133253483', '0.10165378830641791152'], - ['0.64428836511347518151', '0.28752033217907949445']]) - ``` + `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision. + + Examples: + >>> wavefunction_mmmd_arb_prec(1, np.array([1.0, 2.0]), 20) + matrix( + [['0.45558067201133253483', '0.10165378830641791152'], + ['0.64428836511347518151', '0.28752033217907949445']]) References: - ---------- - - The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ + 1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ """ return matrix([[psi_n_single_fock_single_position(i, x, prec) for x in X] for i in range(n+1)]) +def psi_n_multiple_fock_multiple_position_complex(n, X, prec): + """ + Determines the wavefunction for a complex vector `x` for all Fock states up to `n`, employing mpmath for arbitrary-precision calculations. + Args: + n (np.uint64): Quantum state number up to which the wavefunctions are calculated. + x (np.ndarray[np.complex128]): Positions at which to evaluate the wavefunctions. + prec (np.uint64): Desired precision for the calculation (number of decimal digits). - - -def psi_n_multiple_fock_multiple_position_complex(n: np.uint64, X: np.ndarray[np.complex128], prec: np.uint64) -> mpmath.matrices.matrices._matrix: - - """ - Determines the wavefunction for a complex vector x to all fock states until n, employing mpmath for arbitrary-precision calculations. - - Parameters: - ---------- - n : np.uint64 - Quantum state number. - x : np.ndarray[np.float128] - Position(s) at which to evaluate the wavefunction. - prec : np.uint64 - Desired precision for the calculation (number of decimal digits). - - Returns: - ------- - mpmath.matrices.matrices._matrix - The evaluated wavefunction with the specified precision. - - Examples - -------- - ```python - >>> c_wavefunction_mmmd_arb_prec(1,np.array([1.0+1.0j,2.0+2.0j]),20) - [[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), mpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')], - [mpc(real='1.4677913476441970351171', imag='-0.31991701106983521979673'), mpc(real='-2.9964982238469495343176', imag='0.21916142736845211639935')]]) - ``` + `mpmath.matrices.matrices._matrix` : The evaluated wavefunctions with the specified precision. + + Examples: + >>> c_wavefunction_mmmd_arb_prec(1, np.array([1.0 + 1.0j, 2.0 + 2.0j]), 20) + [[mpc(real='0.40583486367087033308603', imag='-0.63205035161528260798606'), + mpc(real='-0.49096842060721693717778', imag='0.56845368634059468652777')], + [mpc(real='1.4677913476441970351171', imag='-0.31991701106983521979673'), + mpc(real='-2.9964982238469495343176', imag='0.21916142736845211639935')]] References: - ---------- - - The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ + 1. The mpmath development team. (2023). mpmath: a Python library for arbitrary-precision floating-point arithmetic (version 1.3.0). Retrieved from http://mpmath.org/ """ return matrix([[psi_n_single_fock_single_position_complex(i, x, prec) for x in X] for i in range(n+1)]) diff --git a/src/fast_wave/wavefunction_numba.py b/src/fast_wave/wavefunction_numba.py index 552d89c..dca2112 100644 --- a/src/fast_wave/wavefunction_numba.py +++ b/src/fast_wave/wavefunction_numba.py @@ -39,67 +39,56 @@ # Global variables for coefficient matrix and compilation status check c_s_matrix = None + compilation_test = None -def hermite_sympy(n: np.uint64) -> Poly: +def hermite_sympy(n): """ Compute the nth Hermite polynomial using symbolic differentiation. - Parameters - ---------- - n : np.uint64 - Order of the Hermite polynomial. - - Returns - ------- - Poly - The nth Hermite polynomial as a sympy expression. - - Examples - -------- - ``` - >>> hermite_sympy(2) - 4*x**2 - 2 - ``` - - References - ---------- - - Wikipedia contributors. (2021). Hermite polynomials. In Wikipedia, The Free Encyclopedia. Retrieved from https://en.wikipedia.org/wiki/Hermite_polynomials + Args: + n (int): Order of the Hermite polynomial. + + Returns: + `sympy.Poly` : The nth Hermite polynomial as a sympy expression. + + Examples: + >>> hermite_sympy(2) + 4*x**2 - 2 + + References: + 1. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press. https://search.worldcat.org/pt/title/502037224?oclcNum=502037224 + 2. NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15. + 3. Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html """ + x = symbols("x") return 1 if n == 0 else ((-1) ** n) * exp(x ** 2) * diff(exp(-x ** 2), x, n) -def create_normalized_hermite_coefficients_matrix(n_max: np.uint64) -> np.ndarray: +def create_normalized_hermite_coefficients_matrix(n_max): """ - Create a matrix of coefficients for normalized Hermite polynomials up to order `n_max`. - - Parameters - ---------- - n_max : np.uint64 - The maximum order of Hermite polynomials to compute. - - Returns - ------- - np.ndarray - A 2D numpy array containing the coefficients for the Hermite polynomials. - - Examples - -------- - ``` - >>> create_normalized_hermite_coefficients_matrix(3) - array([[ 0. , 0. , 0. , 0.75112554], - [ 0. , 0. , 1.06225193, 0. ], - [ 0. , 1.06225193, 0. , -0.53112597], - [ 0.86732507, 0. , -1.30098761, 0. ]]) - ``` - - References - ---------- - - Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press. - - NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15. - - Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html + Create a matrix of coefficients for normalized Hermite polynomials up to order `n_max`. + + Args: + n_max (int): The maximum order of Hermite polynomials to compute. + + Returns: + `np.ndarray` : A 2D numpy array containing the coefficients for the Hermite polynomials. + + Examples: + >>> create_normalized_hermite_coefficients_matrix(3) + array([[ 0. , 0. , 0. , 0.75112554], + [ 0. , 0. , 1.06225193, 0. ], + [ 0. , 1.06225193, 0. , -0.53112597], + [ 0.86732507, 0. , -1.30098761, 0. ]]) + + References: + 1. Olver, F. W. J., & Maximon, L. C. (2010). NIST Handbook of Mathematical Functions. Cambridge University Press. + 2. NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.0.28 of 2020-09-15. + 3. Sympy Documentation: https://docs.sympy.org/latest/modules/polys/index.html """ + x = symbols("x") C_s = np.zeros((n_max + 1, n_max + 1), dtype=np.float64) C_s[0, n_max] = 1 @@ -116,42 +105,31 @@ def create_normalized_hermite_coefficients_matrix(n_max: np.uint64) -> np.ndarra @nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True) -def psi_n_single_fock_single_position(n: np.uint64, x:np.float64, CS_matrix:bool = True) -> np.float64: - - """ - Compute the wavefunction to a real scalar x using a pre-computed matrix of normalized Hermite polynomial coefficients until n=60 and - then use the adapted recurrence relation for higher orders. - - Parameters - ---------- - n : np.uint64 - Quantum state number. - x : np.float64 - Position(s) at which to evaluate the wavefunction. - CS_matrix : bool, optional - If True, use the optimized method for n <= 60, which relies on a pre-computed matrix of coefficients for faster computation. - For n > 60 or if False, use the general recursion method. Defaults to True. - - - Returns - ------- - np.float64 - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_single_fock_single_position(0, 1.0) - 0.45558067201133257 - >>> psi_n_single_fock_single_position(61, 1.0) - -0.2393049199171131 - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 +def psi_n_single_fock_single_position(n, x, CS_matrix = True): """ + Compute the wavefunction for a real scalar `x` using a pre-computed matrix of normalized Hermite polynomial coefficients + until n=60 and then use the adapted recurrence relation for higher orders. + + Args: + n (int): Quantum state number. + x (float): Position at which to evaluate the wavefunction. + CS_matrix (bool, optional): If True, use the optimized method for n <= 60, which relies on a pre-computed matrix + of coefficients for faster computation. For n > 60 or if False, use the general recursion + method. Defaults to True. + + Returns: + `float` : The evaluated wavefunction. + + Examples: + >>> psi_n_single_fock_single_position(0, 1.0) + 0.45558067201133257 + >>> psi_n_single_fock_single_position(61, 1.0) + -0.2393049199171131 + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 + """ if(n<=60 and CS_matrix): c_size = c_s_matrix.shape[0] @@ -175,41 +153,30 @@ def psi_n_single_fock_single_position(n: np.uint64, x:np.float64, CS_matrix:bool @nb.jit(nopython=True, looplift=True, nogil=True, boundscheck=False, cache=True) -def psi_n_single_fock_single_position_complex(n: np.uint64, x: np.complex128, CS_matrix:bool = True) -> np.complex128: - +def psi_n_single_fock_single_position_complex(n, x, CS_matrix = True): """ - Compute the wavefunction to a complex scalar x using a pre-computed matrix of normalized Hermite polynomial coefficients until n=60 and - then use the adapted recurrence relation for higher orders. - - Parameters - ---------- - n : np.uint64 - Quantum state number. - x : np.complex128 - Position(s) at which to evaluate the wavefunction. - CS_matrix : bool, optional - If True, use the optimized method for n <= 60, which relies on a pre-computed matrix of coefficients for faster computation. - For n > 60 or if False, use the general recursion method. Defaults to True. - - - Returns - ------- - np.complex128 - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_single_fock_single_position_complex(0,1.0+2.0j) - (-1.4008797330262455-3.0609780602975003j) - >>> psi_n_single_fock_single_position_complex(61,1.0+2.0j) - (-511062135.47555304+131445997.75753704j) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a complex scalar `x` using a pre-computed matrix of normalized Hermite polynomial coefficients + until n=60 and then use the adapted recurrence relation for higher orders. + + Args: + n (int): Quantum state number. + x (complex): Position at which to evaluate the wavefunction. + CS_matrix (bool, optional): If True, use the optimized method for n <= 60, which relies on a pre-computed matrix + of coefficients for faster computation. For n > 60 or if False, use the general recursion + method. Defaults to True. + + Returns: + `complex`: The evaluated wavefunction. + + Examples: + >>> psi_n_single_fock_single_position_complex(0, 1.0 + 2.0j) + (-1.4008797330262455 - 3.0609780602975003j) + >>> psi_n_single_fock_single_position_complex(61, 1.0 + 2.0j) + (-511062135.47555304 + 131445997.75753704j) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ if(n<=60 and CS_matrix): @@ -234,42 +201,30 @@ def psi_n_single_fock_single_position_complex(n: np.uint64, x: np.complex128, CS @nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True) -def psi_n_single_fock_multiple_position(n: np.uint64, x: np.ndarray[np.float64], CS_matrix: bool = True) -> np.ndarray[np.float64]: - +def psi_n_single_fock_multiple_position(n, x, CS_matrix = True): """ - Compute the wavefunction to a real vector x using a pre-computed matrix of normalized Hermite polynomial coefficients until n=60 and - then use the adapted recurrence relation for higher orders. - - Parameters - ---------- - n : np.uint64 - Quantum state number. - x : np.ndarray[np.float64] - Position(s) at which to evaluate the wavefunction. - CS_matrix : bool, optional - If True, use the optimized method for n <= 60, which relies on a pre-computed matrix of coefficients for faster computation. - For n > 60 or if False, use the general recursion method. Defaults to True. - - - - Returns - ------- - np.ndarray[np.float64] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_single_fock_multiple_position(0,np.array([1.0, 2.0])) - array([0.45558067, 0.10165379]) - >>> psi_n_single_fock_multiple_position(61,np.array([1.0, 2.0])) - array([-0.23930492, -0.01677378]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a real vector `x` using a pre-computed matrix of normalized Hermite polynomial coefficients + until n=60 and x_size = 35. For higher orders, use the adapted recurrence relation. + + Args: + n (int): Quantum state number. + x (numpy.ndarray): Positions at which to evaluate the wavefunction. + CS_matrix (bool, optional): If True, use the optimized method for n <= 60 and x_size <= 35, which relies on a pre-computed matrix + of coefficients for faster computation. For n > 60, or x_size > 35 or if False, use the general recursion + method. Defaults to True. + + Returns: + `numpy.ndarray`: The evaluated wavefunction. + + Examples: + >>> psi_n_single_fock_multiple_position(0, np.array([1.0, 2.0])) + array([0.45558067, 0.10165379]) + >>> psi_n_single_fock_multiple_position(61, np.array([1.0, 2.0])) + array([-0.23930492, -0.01677378]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ x_size = x.shape[0] @@ -295,42 +250,30 @@ def psi_n_single_fock_multiple_position(n: np.uint64, x: np.ndarray[np.float64], @nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True) -def psi_n_single_fock_multiple_position_complex(n: np.uint64, x: np.ndarray[np.complex128], CS_matrix: bool = True) -> np.ndarray[np.complex128]: - +def psi_n_single_fock_multiple_position_complex(n, x, CS_matrix = True): """ - Compute the wavefunction to a complex vector x using a pre-computed matrix of normalized Hermite polynomial coefficients until n=60 and - then use the adapted recurrence relation for higher orders. - - Parameters - ---------- - n : np.uint64 - Quantum state number. - x : np.ndarray[np.complex128] - Position(s) at which to evaluate the wavefunction. - CS_matrix : bool, optional - If True, use the optimized method for n <= 60, which relies on a pre-computed matrix of coefficients for faster computation. - For n > 60 or if False, use the general recursion method. Defaults to True. - - - - Returns - ------- - np.ndarray[np.complex128] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_single_fock_multiple_position_complex(0,np.array([1.0 + 1.0j, 2.0 + 2.0j])) - array([ 0.40583486-0.63205035j, -0.49096842+0.56845369j]) - >>> psi_n_single_fock_multiple_position_complex(61,np.array([1.0 + 1.0j, 2.0 + 2.0j])) - array([-7.56548941e+03+9.21498621e+02j, -1.64189542e+08-3.70892077e+08j]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a complex vector `x` using a pre-computed matrix of normalized Hermite polynomial coefficients + until n=60 and x_size = 35. For higher orders, use the adapted recurrence relation. + + Args: + n (int): Quantum state number. + x (numpy.ndarray): Positions at which to evaluate the wavefunction. + CS_matrix (bool, optional): If True, use the optimized method for n <= 60 and x_size <= 35, which relies on a pre-computed matrix + of coefficients for faster computation. For n > 60, or x_size > 35 or if False, use the general recursion + method. Defaults to True. + + Returns: + `numpy.ndarray`: The evaluated wavefunction. + + Examples: + >>> psi_n_single_fock_multiple_position_complex(0, np.array([1.0 + 1.0j, 2.0 + 2.0j])) + array([ 0.40583486-0.63205035j, -0.49096842+0.56845369j]) + >>> psi_n_single_fock_multiple_position_complex(61, np.array([1.0 + 1.0j, 2.0 + 2.0j])) + array([-7.56548941e+03+9.21498621e+02j, -1.64189542e+08-3.70892077e+08j]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ x_size = x.shape[0] @@ -355,37 +298,26 @@ def psi_n_single_fock_multiple_position_complex(n: np.uint64, x: np.ndarray[np.c @nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True) -def psi_n_multiple_fock_single_position(n: np.uint64, x:np.float64) -> np.ndarray[np.float64]: - +def psi_n_multiple_fock_single_position(n, x): """ - Compute the wavefunction to a real scalar x to all fock states until n using the recurrence relation. - - Parameters - ---------- - n : np.uint64 - Quantum state number. - x : np.float64 - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - np.ndarray[np.float64] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_multiple_fock_single_position(1,1.0) - array([0.45558067, 0.64428837]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a real scalar `x` to all Fock states up to `n` using the recurrence relation. + + Args: + n (int): Quantum state number. + x (float): Position at which to evaluate the wavefunction. + + Returns: + `numpy.ndarray`: The evaluated wavefunction. + + Examples: + >>> psi_n_multiple_fock_single_position(1, 1.0) + array([0.45558067, 0.64428837]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ - + result = np.array([0.0] * (n+1)) result[0] = (np.pi ** (-0.25))*np.exp(-(x ** 2) / 2) @@ -396,35 +328,24 @@ def psi_n_multiple_fock_single_position(n: np.uint64, x:np.float64) -> np.ndarra @nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True) -def psi_n_multiple_fock_single_position_complex(n: np.uint64, x: np.complex128) -> np.ndarray[np.complex128]: - +def psi_n_multiple_fock_single_position_complex(n, x): """ - Compute the wavefunction to a complex scalar x to all fock states until n using the recurrence relation. - - Parameters - ---------- - n : np.uint64 - Quantum state number. - x : np.complex128 - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - np.ndarray[np.complex128] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_multiple_fock_single_position_complex(1,1.0 +2.0j) - array([-1.40087973-3.06097806j, 6.67661026-8.29116292j]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a complex scalar `x` to all Fock states up to `n` using the recurrence relation. + + Args: + n (int): Quantum state number. + x (complex): Position at which to evaluate the wavefunction. + + Returns: + `numpy.ndarray`: The evaluated wavefunction. + + Examples: + >>> psi_n_multiple_fock_single_position_complex(1, 1.0 + 2.0j) + array([-1.40087973-3.06097806j, 6.67661026-8.29116292j]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ result = np.array([0.0 + 0.0j] * (n+1)) @@ -438,36 +359,25 @@ def psi_n_multiple_fock_single_position_complex(n: np.uint64, x: np.complex128) @nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True) -def psi_n_multiple_fock_multiple_position(n: np.uint64, x: np.ndarray[np.float64]) -> np.ndarray[np.ndarray[np.float64]]: - +def psi_n_multiple_fock_multiple_position(n, x): """ - Compute the wavefunction to a real vector x to all fock states until n using the recurrence relation. - - Parameters - ---------- - n : np.uint64 - Quantum state number. - x : np.ndarray[np.float64] - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - np.ndarray[np.ndarray[np.float64]] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_multiple_fock_multiple_position(1,np.array([1.0, 2.0])) - array([[0.45558067, 0.10165379], - [0.64428837, 0.28752033]]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a real vector `x` to all Fock states up to `n` using the recurrence relation. + + Args: + n (int): Quantum state number. + x (numpy.ndarray): Positions at which to evaluate the wavefunction. + + Returns: + `numpy.ndarray`: The evaluated wavefunction. + + Examples: + >>> psi_n_multiple_fock_multiple_position(1, np.array([1.0, 2.0])) + array([[0.45558067, 0.10165379], + [0.64428837, 0.28752033]]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ x_size = x.shape[0] @@ -481,36 +391,25 @@ def psi_n_multiple_fock_multiple_position(n: np.uint64, x: np.ndarray[np.float64 @nb.jit(nopython=True, looplift=True,nogil=True, boundscheck=False, cache=True) -def psi_n_multiple_fock_multiple_position_complex(n: np.uint64, x: np.ndarray[np.complex128]) -> np.ndarray[np.ndarray[np.float64]]: - +def psi_n_multiple_fock_multiple_position_complex(n, x): """ - Compute the wavefunction to a complex vector x to all fock states until n using the recurrence relation. - - Parameters - ---------- - n : np.uint64 - Quantum state number. - x : np.ndarray[np.complex128] - Position(s) at which to evaluate the wavefunction. - - - Returns - ------- - np.ndarray[np.ndarray[np.complex128]] - The evaluated wavefunction. - - Examples - -------- - ```python - >>> psi_n_multiple_fock_multiple_position_complex(1,np.array([1.0 + 1.0j, 2.0 + 2.0j])) - array([[ 0.40583486-0.63205035j, -0.49096842+0.56845369j], - [ 1.46779135-0.31991701j, -2.99649822+0.21916143j]]) - ``` - - References - ---------- - - Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, 39(1), - 015402. doi:10.1088/1361-6404/aa9584 + Compute the wavefunction for a complex vector `x` to all Fock states up to `n` using the recurrence relation. + + Args: + n (int): Quantum state number. + x (numpy.ndarray): Positions at which to evaluate the wavefunction. + + Returns: + `numpy.ndarray`: The evaluated wavefunction. + + Examples: + >>> psi_n_multiple_fock_multiple_position_complex(1, np.array([1.0 + 1.0j, 2.0 + 2.0j])) + array([[ 0.40583486-0.63205035j, -0.49096842+0.56845369j], + [ 1.46779135-0.31991701j, -2.99649822+0.21916143j]]) + + References: + 1. Pérez-Jordá, J. M. (2017). On the recursive solution of the quantum harmonic oscillator. *European Journal of Physics*, + 39(1), 015402. doi: https://iopscience.iop.org/article/10.1088/1361-6404/aa9584 """ x_size = x.shape[0]