| 2875 | } |
| 2876 | |
| 2877 | OccupationResult occupations_kpoints( |
| 2878 | const std::vector<std::vector<double>>& eigenvalues_by_k, |
| 2879 | const std::vector<double>& kpoint_weights, |
| 2880 | double n_electrons, |
| 2881 | double sigma_ha, |
| 2882 | int ismear, |
| 2883 | double max_occupation_per_state, |
| 2884 | const std::array<int, 3>& kpoint_grid = {0, 0, 0}, |
| 2885 | const std::vector<int>& full_to_reduced_kpoint = {} |
| 2886 | ) { |
| 2887 | OccupationInput occ_input; |
| 2888 | occ_input.eigenvalues_by_k = eigenvalues_by_k; |
| 2889 | occ_input.kpoint_weights = kpoint_weights; |
| 2890 | occ_input.electron_count = n_electrons; |
| 2891 | occ_input.sigma_ha = sigma_ha; |
| 2892 | occ_input.ismear = ismear; |
| 2893 | occ_input.max_occupation_per_state = max_occupation_per_state; |
| 2894 | occ_input.kpoint_grid = kpoint_grid; |
| 2895 | occ_input.full_to_reduced_kpoint = full_to_reduced_kpoint; |
| 2896 | return compute_occupations_kpoints(occ_input); |
| 2897 | } |
| 2898 | |
| 2899 | double density_weighted_average_unpolarized( |
| 2900 | const std::vector<double>& rho_r, |
no test coverage detected