41    class(mesh_t),           
intent(in)    :: mesh
 
   42    type(states_elec_t),     
intent(in)    :: st
 
   43    type(ions_t),            
intent(in)    :: ions
 
   44    real(real64),            
intent(out)   :: hirshfeld_charges(:)
 
   47    type(hirshfeld_t) :: hirshfeld
 
   52    call hirshfeld_init(hirshfeld, mesh, ions%namespace, ions%space, ions%latt, ions%atom, ions%natoms, ions%pos, st%d%nspin)
 
   54    do iatom = 1, ions%natoms
 
   55      call hirshfeld_charge(hirshfeld, ions%space, iatom, st%rho, hirshfeld_charges(iatom))
 
subroutine, public hirshfeld_init(this, mesh, namespace, space, latt, atom, natoms, pos, nspin)
 
subroutine, public hirshfeld_charge(this, space, iatom, density, charge)
 
subroutine, public hirshfeld_end(this)
 
This module defines the meshes, which are used in Octopus.
 
subroutine, public partial_charges_calculate(mesh, st, ions, hirshfeld_charges)
 
subroutine, public profiling_out(label)
Increment out counter and sum up difference between entry and exit time.
 
subroutine, public profiling_in(label, exclude)
Increment in counter and save entry time.