diff --git a/main.cpp b/main.cpp index 31467fdd2c65030b6294fec2caac46ba102440bd..a4baa9f6a080b4087fb24406969830f2cdb9ff08 100644 --- a/main.cpp +++ b/main.cpp @@ -132,6 +132,9 @@ static void runParamSweep(const std::string& modelstr, const eis::Range& omega, if(parameters.empty()) return; + for(const eis::Range& range : parameters) + range.print(eis::Log::INFO); + eis::Log(eis::Log::INFO)<<"Saving sweep to "<<PARA_SWEEP_OUTPUT_DIR; std::filesystem::create_directory(PARA_SWEEP_OUTPUT_DIR); diff --git a/normalize.cpp b/normalize.cpp index a7cb4dfbbd4bcba608e26d314d695bf59d3c7f3a..f32488cb4b03016181485be19408ea4822621eb2 100644 --- a/normalize.cpp +++ b/normalize.cpp @@ -30,20 +30,24 @@ void eis::eraseSingularites(std::vector<eis::DataPoint>& data) void eis::normalize(std::vector<eis::DataPoint>& data) { - fvalue maxRe = 0; - fvalue maxIm = 0; + fvalue maxRe = std::numeric_limits<fvalue>::min(); + fvalue maxIm = std::numeric_limits<fvalue>::min(); + fvalue minRe = std::numeric_limits<fvalue>::max(); for(const DataPoint& dataPoint : data) { - maxRe = fabs(dataPoint.im.real()) > maxRe ? fabs(dataPoint.im.real()) : maxRe; + maxRe = fabs(dataPoint.im.real()) > maxRe ? fabs(dataPoint.im.real()) : maxRe; maxIm = fabs(dataPoint.im.imag()) > maxIm ? fabs(dataPoint.im.imag()) : maxIm; + + if(minRe > dataPoint.im.real()) + minRe = dataPoint.im.real(); } - maxRe = maxRe == 0 ? 1 : maxRe; + maxRe = maxRe == minRe ? 1 : maxRe-minRe; maxIm = maxIm == 0 ? 1 : maxIm; for(DataPoint& dataPoint : data) { - dataPoint.im.real(dataPoint.im.real() / maxRe); + dataPoint.im.real((dataPoint.im.real()-minRe) / maxRe); dataPoint.im.imag(dataPoint.im.imag() / maxIm); } }