MPQC 3.0.0-alpha
Loading...
Searching...
No Matches
full.hpp
1#ifndef MPQC_CI_FULL_HPP
2#define MPQC_CI_FULL_HPP
3
4#include "mpqc/ci/ci.hpp"
5#include "mpqc/ci/subspace.hpp"
6#include "mpqc/math/matrix.hpp"
7
8namespace mpqc {
9namespace ci {
10
11 struct Full {
12 template<class Index>
13 static SubspaceGrid grid(const CI<Full, Index> &ci,
14 const std::vector< Subspace<Alpha> > &A,
15 const std::vector< Subspace<Beta> > &B)
16 {
17 mpqc::matrix<bool> mask = mpqc::matrix<bool>::Constant(A.size(), B.size(), true);
18 return SubspaceGrid(A, B, mask);
19 }
21 template<class Index>
22 static bool test(const CI<Full, Index> &ci,
23 const String &a)
24 {
25 return true;
26 }
28 template<class Index>
29 static bool test(const CI<Full, Index> &ci,
30 const Space<Alpha> &a,
31 const Space<Beta> &b)
32 {
33 return true;
34 }
35 };
36
37} // namespace ci
38} // namespace mpqc
39
40#endif // MPQC_CI_FULL_HPP
Contains new MPQC code since version 3.
Definition integralenginepool.hpp:37
CI class template.
Definition ci.hpp:75
Definition full.hpp:11
static bool test(const CI< Full, Index > &ci, const String &a)
tests if the excitation to a is allowed
Definition full.hpp:22
static bool test(const CI< Full, Index > &ci, const Space< Alpha > &a, const Space< Beta > &b)
tests if simultaneous excitation to space a and space b is allowed
Definition full.hpp:29
A CI space, marked by Spin S and rank.
Definition subspace.hpp:32
Definition string.hpp:24
Grid of subspaces, represented as blocks of determinants defined by alpha/beta pair,...
Definition subspace.hpp:103
A range of a space where all objects in the subspace range are assumed to have the same space rank.
Definition subspace.hpp:51
Matrix class derived from Eigen::Matrix with additional MPQC integration.
Definition matrix.hpp:23

Generated at Wed Sep 25 2024 02:45:30 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.12.0.