ergo
|
Go to the source code of this file.
Functions | |
int | compute_overlap_matrix (const BasisInfoStruct &basisInfoA, const BasisInfoStruct &basisInfoB, ergo_real *result) |
int | compute_operator_matrix_full (const BasisInfoStruct &basisInfoA, const BasisInfoStruct &basisInfoB, int pow_x, int pow_y, int pow_z, ergo_real *result) |
int | compute_operator_matrix_sparse (const BasisInfoStruct &basisInfoA, const BasisInfoStruct &basisInfoB, int pow_x, int pow_y, int pow_z, int n_A, int n_B, std::vector< int > &nvaluesList, std::vector< std::vector< int > > &colindList, std::vector< std::vector< ergo_real > > &valuesList) |
computes the matrix of a dipole/quadrupole/etc operator. |
int compute_operator_matrix_full | ( | const BasisInfoStruct & | basisInfoA, |
const BasisInfoStruct & | basisInfoB, | ||
int | pow_x, | ||
int | pow_y, | ||
int | pow_z, | ||
ergo_real * | result | ||
) |
References BasisInfoStruct::noOfBasisFuncs, compute_operator_matrix_sparse(), do_output(), LOG_CAT_ERROR, and LOG_AREA_INTEGRALS.
Referenced by ErgoOperator::getOper(), compute_overlap_matrix(), and saveDipole().
int compute_operator_matrix_sparse | ( | const BasisInfoStruct & | basisInfoA, |
const BasisInfoStruct & | basisInfoB, | ||
int | pow_x, | ||
int | pow_y, | ||
int | pow_z, | ||
int | n_A, | ||
int | n_B, | ||
std::vector< int > & | nvaluesList, | ||
std::vector< std::vector< int > > & | colindList, | ||
std::vector< std::vector< ergo_real > > & | valuesList | ||
) |
computes the matrix of a dipole/quadrupole/etc operator.
The columns and rows enumerate
basisInfoA | and |
basisInfoB | respectively. The operator is in the form: X = (x^pow_x*y^pow_y*z^pow_z). The resulting matrix (possibly rectangular) is returned in nvaluesList, colindList, valuesList. Overlap matrix is associated with triple (0,0,0), X component of the dipole moment with (1,0,0), etc. The parameters |
pow_x | |
pow_y | |
pow_z | determine the operator. The parameters |
n_A | |
n_B | give the number of basis functions in each of the two basis sets. The result is stored using the lists |
nvaluesList | |
colindList | |
valuesList | each having length n_A. |
References BasisInfoStruct::noOfBasisFuncs, do_output(), LOG_CAT_ERROR, LOG_AREA_INTEGRALS, LOG_CAT_INFO, get_largest_simple_integral(), get_basis_func_extent_list(), MATRIX_ELEMENT_THRESHOLD_VALUE, BasisInfoStruct::basisFuncList, BasisFuncStruct_::centerCoords, BoxSystem::create_box_system(), BoxSystem::get_items_near_point(), distance(), get_product_simple_primitives(), DistributionSpecStruct_::coeff, DistributionSpecStruct_::centerCoords, DistributionSpecStruct_::monomialInts, and compute_integral_of_simple_prim().
Referenced by compute_operator_matrix_full(), compute_R_matrix_sparse(), and compute_operator_matrix_sparse_symm().
int compute_overlap_matrix | ( | const BasisInfoStruct & | basisInfoA, |
const BasisInfoStruct & | basisInfoB, | ||
ergo_real * | result | ||
) |
References compute_operator_matrix_full().
Referenced by es_getexc(), es_get_polarisability(), saveOverlap(), and load_density_and_project_full().