![]() |
Octopus
|
Functions/Subroutines | |
subroutine, public | output_matrix (namespace, fname, matrix) |
Helper routine to output a 2D matrix. More... | |
subroutine, public | isdf_potential (namespace, poisson_solver, isdf_vectors, V_r_nu) |
Compute the effective potential in the ISDF vector basis. More... | |
integer function, public | local_number_of_states (st, max_state) |
Number of states contributing to the expansion, local to current process. More... | |
subroutine, public | gather_psi_mu_over_states (st, psi_mu, psi_global) |
Gather state-distributed psi from multiple processes. More... | |
subroutine, public | output_psi_mu_for_all_states (namespace, st, max_state, psi_mu) |
Output the gathered psi_mu for all states, such that the matrix is the same irregardless of state parallelism. More... | |
Variables | |
integer, parameter, private | ik = 1 |
All molecular calculations performed at the Gamma-point. More... | |
subroutine, public isdf_utils_oct_m::output_matrix | ( | type(namespace_t), intent(in) | namespace, |
character(len=*), intent(in) | fname, | ||
real(real64), dimension(:, :), intent(in), contiguous | matrix | ||
) |
Helper routine to output a 2D matrix.
Definition at line 147 of file isdf_utils.F90.
subroutine, public isdf_utils_oct_m::isdf_potential | ( | type(namespace_t), intent(in) | namespace, |
type(poisson_t), intent(in) | poisson_solver, | ||
real(real64), dimension(:, :), intent(in), contiguous | isdf_vectors, | ||
real(real64), dimension(:, :), intent(out), contiguous | V_r_nu | ||
) |
Compute the effective potential in the ISDF vector basis.
[ V_\mu^{\zeta}(\mathbf{r}) = \int \frac{\zeta_\mu(\mathbf{r}^\prime)}{|\mathbf{r}-\mathbf{r}^\prime|} d\mathbf{r}^\prime. ]
[in] | poisson_solver | Poisson solver settings |
[in] | isdf_vectors | ISDF vectors \( \{ \zeta \} \), with shape(np, n_int) |
[out] | v_r_nu | Effective potential |
Definition at line 181 of file isdf_utils.F90.
integer function, public isdf_utils_oct_m::local_number_of_states | ( | type(states_elec_t), intent(in) | st, |
integer, intent(in) | max_state | ||
) |
Number of states contributing to the expansion, local to current process.
Number of states between the first state of the block 1 on this process and the min of max_state
and the last state of block N on this process. For processes where minst of the first block > max_state
, return 0.
[in] | st | States instance |
[in] | max_state | Index of final state to consider - Global state indexing |
Definition at line 207 of file isdf_utils.F90.
subroutine, public isdf_utils_oct_m::gather_psi_mu_over_states | ( | type(states_elec_t), intent(in) | st, |
real(real64), dimension(:, :), intent(in), contiguous | psi_mu, | ||
real(real64), dimension(:, :), intent(out), contiguous | psi_global | ||
) |
Gather state-distributed psi from multiple processes.
For testing purposes only. Does not handle gathering of domains
[in] | psi_mu | State-distributed states array |
Definition at line 231 of file isdf_utils.F90.
subroutine, public isdf_utils_oct_m::output_psi_mu_for_all_states | ( | type(namespace_t), intent(in) | namespace, |
type(states_elec_t), intent(in) | st, | ||
integer, intent(in) | max_state, | ||
real(real64), dimension(:, :), intent(in), contiguous | psi_mu | ||
) |
Output the gathered psi_mu
for all states, such that the matrix is the same irregardless of state parallelism.
[in] | max_state | Global index of maximum state used in ISDF |
[in] | psi_mu | Stated-distributed/DD \(\varphi_i(\mathbf{r}_\mu)\) |
Definition at line 286 of file isdf_utils.F90.
|
private |
All molecular calculations performed at the Gamma-point.
Definition at line 142 of file isdf_utils.F90.