本文整理汇总了C++中CI::test方法的典型用法代码示例。如果您正苦于以下问题:C++ CI::test方法的具体用法?C++ CI::test怎么用?C++ CI::test使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CI
的用法示例。
在下文中一共展示了CI::test方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: append
void append(const CI &ci,
const String &I, const Subspace<Spin> &S,
std::vector<Excitation> &V) {
// this particular traversal is used to generate semi-ordered list
int idx = (int)ci.template strings<Spin>()[I];
size_t i = I.size();
while (i--) {
if (!I[i]) continue; // empty orbital
for (size_t j = 0; j < I.size(); ++j) {
if (I[j] && (i != j)) continue; // not an empty orbital
String J = I.swap(i, j);
if (!ci.test(J)) continue;
int jdx = (int)ci.template strings<Spin>()[J];
if (!S.test(jdx)) continue; // string not in S
Excitation t;
t.sgn = (float)sgn(I, i, j);
t.integral = (int)index(i,j);
t.I = idx;
t.J = jdx;
V.push_back(t);
}
}
}