Octopus
isdf_serial.F90 File Reference

Go to the source code of this file.

Modules

module  isdf_serial_oct_m
 Serial prototype for benchmarking and validating ISDF implementation.
 

Data Types

type  isdf_serial_oct_m::isdf_options_t
 ISDF input options. More...
 

Functions/Subroutines

subroutine isdf_serial_oct_m::isdf_options_init (this, namespace, st)
 Initialise isdf_inp_options_t instance. More...
 
subroutine, public isdf_serial_oct_m::serial_interpolative_separable_density_fitting_vectors (namespace, mesh, st, int_indices, phi, isdf_vectors)
 Compute a set of ISDF interpolation vectors in serial, for code validation. More...
 
subroutine isdf_serial_oct_m::isdf_construct_interpolation_vectors_packed (namespace, mesh, phi, indices, isdf_vectors)
 Compute a set of ISDF interpolation vectors, where intermediate quantities such as phi are constructed such that the first index runs over states, and the second runs over grid points. More...
 
subroutine isdf_serial_oct_m::collate_batches_get_state (mesh, st, max_state, psi)
 Loop over states per block, which makes applying the maximum state limit much simpler Use this to compare to the output of collate_batches Not distributed in states or domain. More...
 
subroutine isdf_serial_oct_m::collate_batches (np, st, max_state, psi)
 Put batches into a single 2D array. More...
 
subroutine isdf_serial_oct_m::sample_phi_at_centroids (phi_r, indices, phi_mu)
 Sample KS states at centroid points. More...
 
subroutine isdf_serial_oct_m::construct_zct (zct)
 Construct the product of Z and C matrices from the element-wise product of the quasi-density matrix. More...
 
subroutine isdf_serial_oct_m::construct_cct (indices, zct, cct)
 Construct the product \(CC^T\) from \(ZC^T\) by masking the first dimension of \(ZC^T\). More...
 
subroutine isdf_serial_oct_m::construct_density_matrix_packed (phi, phi_mu, P_r_mu)
 @ brief Construct the density matrix with shape (np, n_int). Denoted packed, because it expects phi in state-major format. More...
 
subroutine isdf_serial_oct_m::construct_density_matrix_all_centroids_packed (phi_mu, P_mu_nu)
 @ brief Construct the density matrix with shape (n_int, n_int). Denoted packed, because it expects phi in state-major format. More...
 
subroutine, public isdf_serial_oct_m::quantify_error_and_visualise (namespace, st, space, mesh, ions, phi, indices, isdf_vectors, output_cubes)
 Wrapper for quantifying the error in the expansion of the product basis. More...
 
subroutine isdf_serial_oct_m::approximate_pair_products (psi_mu, zeta, product_basis)
 Construct a set of approximate pair products using the ISDF interpolation vectors. More...
 
subroutine isdf_serial_oct_m::error_in_product_basis (mesh, product_basis, approx_product_basis, error, mean_error)
 Quantify the error in the product basis expansion. More...
 
subroutine isdf_serial_oct_m::output_matrix (namespace, fname, matrix)
 Helper routine to output a 2D matrix. More...
 
subroutine isdf_serial_oct_m::generate_product_state_cubes (namespace, space, mesh, ions, file_prefix, data, limits)
 Helper function to output a set of pair product states. More...
 
integer function isdf_serial_oct_m::highest_occupied_index (st, ik_index)
 Return the index of highest occupied Kohn-Sham state for k-point ik. More...
 

Variables

integer, parameter isdf_serial_oct_m::ik = 1
 Hard-coded for Gamma-point, spin-unpolarised calculations. More...