Abstract base class for electronic solvers.
More...
|
|
generic | solve (self, hmat, smat, eval, error) |
| |
|
generic | solve (self, hmat, smat, eval, error) |
| |
|
procedure(solve_sp), deferred | solve_sp (self, hmat, smat, eval, error) |
| |
|
procedure(solve_dp), deferred | solve_dp (self, hmat, smat, eval, error) |
| |
| procedure | get_density (self, hmat, smat, eval, focc, density, error) |
| |
| procedure | get_wdensity (self, hmat, smat, eval, focc, density, error) |
| |
| procedure | delete (self) |
| | Delete the solver instance.
|
| |
| procedure(get_density), deferred | get_density (self, hmat, smat, eval, focc, density, error) |
| |
| procedure(get_density), deferred | get_wdensity (self, hmat, smat, eval, focc, density, error) |
| |
| procedure(delete), deferred | delete (self) |
| |
|
|
real(wp) | kt |
| | Electronic temperature.
|
| |
|
real(wp), dimension(:), allocatable | nel |
| | Number of electrons per spin channel.
|
| |
Abstract base class for electronic solvers.
◆ delete()
| procedure tblite_scf_diag::diag_solver_type::delete |
( |
class(diag_solver_type), intent(inout) | self | ) |
|
Delete the solver instance.
- Parameters
-
| [in,out] | self | Solver for the general eigenvalue problem |
◆ get_density()
| procedure tblite_scf_diag::diag_solver_type::get_density |
( |
class(diag_solver_type), intent(inout) | self, |
|
|
real(wp), dimension(:, :, :), intent(inout), contiguous | hmat, |
|
|
real(wp), dimension(:, :), intent(in), contiguous | smat, |
|
|
real(wp), dimension(:, :), intent(inout), contiguous | eval, |
|
|
real(wp), dimension(:, :), intent(inout), contiguous | focc, |
|
|
real(wp), dimension(:, :, :), intent(inout), contiguous | density, |
|
|
type(error_type), intent(out), allocatable | error ) |
- Parameters
-
| [in,out] | self | Solver for the general eigenvalue problem |
| [in] | smat | Overlap matrix |
| [in,out] | hmat | Hamiltonian matrix, contains eigenvectors on output |
| [in,out] | eval | Eigenvalues |
| [in,out] | focc | Occupation numbers |
| [in,out] | density | Density matrix |
| [out] | error | Error handling |
◆ get_wdensity()
| procedure tblite_scf_diag::diag_solver_type::get_wdensity |
( |
class(diag_solver_type), intent(inout) | self, |
|
|
real(wp), dimension(:, :, :), intent(inout), contiguous | hmat, |
|
|
real(wp), dimension(:, :), intent(in), contiguous | smat, |
|
|
real(wp), dimension(:, :), intent(inout), contiguous | eval, |
|
|
real(wp), dimension(:, :), intent(inout), contiguous | focc, |
|
|
real(wp), dimension(:, :, :), intent(inout), contiguous | density, |
|
|
type(error_type), intent(out), allocatable | error ) |
- Parameters
-
| [in,out] | self | Solver for the general eigenvalue problem |
| [in] | smat | Overlap matrix |
| [in,out] | hmat | Hamiltonian matrix containing eigenvectors from SCF |
| [in,out] | eval | Eigenvalues |
| [in,out] | focc | Occupation numbers |
| [in,out] | density | Density matrix |
| [out] | error | Error handling |
The documentation for this type was generated from the following file:
- /home/runner/work/tblite/tblite/src/tblite/scf/diag.f90