diff --git a/docs/index.rst b/docs/index.rst index e876442..5b546fc 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -29,6 +29,23 @@ We encourage installing this package via ``pip``, when possible: For more installation information refer to the `installation instructions `_ in the documentation. +System sizes and computational requirements +------------------------------------------- + +The computational cost of SQD is dominated by the eigenstate solver calls. At each step of the self-consistent configuration recovery iteration, `n_batches` of eigenstate solver calls are performed. The different calls are embarrassingly parallel. In this `tutorial `_, those calls are inside a `for` loop. **It is highly recommended to perform these calls in parallel**. + +The :func:`qiskit_addon_sqd.fermion.solve_fermion` function is multithreaded and capable of handling systems with ~25 spacial orbitals and ~10 electrons with subspace dimensions of ~$10^7$, using ~10-30 cores. + +Choosing subspace dimensions +---------------------------- + +The choice of the subspace dimension affects the accuracy and runtime of the eigenstate solver. The larger the subspace the more accurate the calculation, at the cost of increasing the runtime and memory requirements. It is not known *a priori* the optimal subspace size, thus a convergence study with the subspace dimension may be performed, as described in this `guide `_. + +The subspace dimension is set indirectly +---------------------------------------- + +In this package, the user controls the number of bitstrings contained in each subspace with the `samples_per_batch` argument in :func:`.qiskit_addon_sqd.subsampling.postselect_and_subsample`. The value of this argument determines an upper bound to the subspace dimension in the case of quantum chemistry applications. See this `example `_ for more details. + Deprecation Policy ------------------ @@ -56,20 +73,6 @@ License `Apache License 2.0 `_ -System sizes and computational requirements -------------------------------------------- -The computational cost of SQD is dominated by the eigenstate solver calls. At each step of the self-consistent configuration recovery iteration, `n_batches` of eigenstate solver calls are performed. The different calls are embarrassingly parallel. In this `tutorial `_, those calls are inside a `for` loop. **It is highly recommended to perform these calls in parallel**. - -The :func:`qiskit_addon_sqd.fermion.solve_fermion` function is multithreaded and capable of handling systems with ~25 spacial orbitals and ~10 electrons with subspace dimensions of ~$10^7$, using ~10-30 cores. - -Choosing subspace dimensions ----------------------------- -The choice of the subspace dimension affects the accuracy and runtime of the eigenstate solver. The larger the subspace the more accurate the calculation, at the cost of increasing the runtime and memory requirements. It is not known *a priori* the optimal subspace size, thus a convergence study with the subspace dimension may be performed, as described in this `guide `_. - -The subspace dimension is set indirectly ----------------------------------------- -In this package, the user controls the number of bitstrings contained in each subspace with the `samples_per_batch` argument in :func:`.qiskit_addon_sqd.subsampling.postselect_and_subsample`. The value of this argument determines an upper bound to the subspace dimension in the case of quantum chemistry applications. See this `example `_ for more details. - .. _references: References