From 943fd61a24ef23b53d4a708f049ab096e16391e1 Mon Sep 17 00:00:00 2001 From: jcoulter12 Date: Fri, 23 Feb 2024 21:07:02 -0500 Subject: [PATCH] minor bugfix in chemical potential determination -- max/min energy determination segfaulted when more processes than kpoints were used --- src/statistics_sweep.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/statistics_sweep.cpp b/src/statistics_sweep.cpp index 5e97e54b..29807125 100644 --- a/src/statistics_sweep.cpp +++ b/src/statistics_sweep.cpp @@ -302,11 +302,11 @@ StatisticsSweep::findChemicalPotentialFromDoping(const double &doping, // when we have completely empty bands or completely full bands. if (doping == 0. && temperature == 0.) {// case of computing fermi level if (numElectronsDoped == 0.) { - fermiLevel = *min_element(energies.begin(), energies.end()); + if(energies.size() > 0) fermiLevel = *min_element(energies.begin(), energies.end()); chemicalPotential = fermiLevel; return chemicalPotential; } else if (numElectronsDoped == float(numBands)) { - fermiLevel = *max_element(energies.begin(), energies.end()); + if(energies.size() > 0) fermiLevel = *max_element(energies.begin(), energies.end()); chemicalPotential = fermiLevel; return chemicalPotential; }