|
ergo
|
Routine get_dens_from_fock_full() for getting density matrix from a given Fock matrix using diagonalization. More...
#include "densfromf_full.h"#include "output.h"#include <memory.h>#include <cstdio>#include <cmath>#include <cstdlib>#include <vector>#include "memorymanag.h"#include "machine_epsilon.h"#include "utilities.h"#include "matrix_algebra.h"#include "units.h"#include "gblas.h"Functions | |
| int | get_F_orbs (int n, const ergo_real *F, const ergo_real *ovl, ergo_real *cmo, ergo_real *eigv) |
| get_f_orbs: use diagonalization to find the molecular orbitals corresponding to given Fock matrix f. | |
| static void | get_dens_from_cmo_zeroT (int n, const ergo_real *cmo, const ergo_real *eigv, int noOfOccupiedOrbs, ergo_real *dens) |
| static void | get_dens_from_cmo_FermiDiracDistr (int n, const ergo_real *cmo, const ergo_real *eigv, int noOfOccupiedOrbs, ergo_real *dens, ergo_real electronicTemperature) |
| int | get_dens_from_fock_full (int n, int noOfOccupiedOrbs, ergo_real *result_P, const ergo_real *F, const ergo_real *ovl, ergo_real factor, ergo_real electronicTemperature, ergo_real *const lumoVec, ergo_real *const homoVec) |
Routine get_dens_from_fock_full() for getting density matrix from a given Fock matrix using diagonalization.
| static void get_dens_from_cmo_FermiDiracDistr | ( | int | n, |
| const ergo_real * | cmo, | ||
| const ergo_real * | eigv, | ||
| int | noOfOccupiedOrbs, | ||
| ergo_real * | dens, | ||
| ergo_real | electronicTemperature | ||
| ) | [static] |
References do_output(), LOG_CAT_INFO, LOG_AREA_DENSFROMF, and mat::trace().
Referenced by get_dens_from_fock_full().
| static void get_dens_from_cmo_zeroT | ( | int | n, |
| const ergo_real * | cmo, | ||
| const ergo_real * | eigv, | ||
| int | noOfOccupiedOrbs, | ||
| ergo_real * | dens | ||
| ) | [static] |
References do_output(), LOG_CAT_INFO, LOG_AREA_DENSFROMF, multiply_matrices_general_T_1(), and UNIT_one_eV.
Referenced by get_dens_from_fock_full().
| int get_dens_from_fock_full | ( | int | n, |
| int | noOfOccupiedOrbs, | ||
| ergo_real * | result_P, | ||
| const ergo_real * | F, | ||
| const ergo_real * | ovl, | ||
| ergo_real | factor, | ||
| ergo_real | electronicTemperature, | ||
| ergo_real *const | lumoVec, | ||
| ergo_real *const | homoVec | ||
| ) |
References ergo_malloc(), get_F_orbs(), get_dens_from_cmo_zeroT(), get_dens_from_cmo_FermiDiracDistr(), ergo_free(), and LOG_AREA_DENSFROMF.
Referenced by get_dens_from_fock_general(), and load_density_and_project_full().
| int get_F_orbs | ( | int | n, |
| const ergo_real * | F, | ||
| const ergo_real * | ovl, | ||
| ergo_real * | cmo, | ||
| ergo_real * | eigv | ||
| ) |
get_f_orbs: use diagonalization to find the molecular orbitals corresponding to given Fock matrix f.
References ergo_malloc(), do_output(), LOG_CAT_INFO, LOG_AREA_DENSFROMF, mat::sygv(), LOG_CAT_ERROR, and ergo_free().
Referenced by do_CI(), and get_dens_from_fock_full().