Loading...
Searching...
No Matches
NEBSplineExtrema.cpp File Reference
#include "eon/NEBSplineExtrema.h"
#include "eon/ConFileIO.h"
#include <cmath>
#include <format>
#include <fstream>
#include <limits>

Go to the source code of this file.

Namespaces

namespace  eonc
 RAII resource manager for the ARTn C library with global synchronization.
namespace  eonc::neb

Functions

ExtremaResult eonc::neb::findSplineExtrema (const std::vector< std::shared_ptr< Matter > > &path, const std::vector< std::shared_ptr< AtomMatrix > > &tangent, long numImages)
 Find extrema along the MEP using cubic spline interpolation.
void eonc::neb::printImageData (const std::vector< std::shared_ptr< Matter > > &path, const std::vector< std::shared_ptr< AtomMatrix > > &tangent, const std::vector< std::shared_ptr< EigenmodeStrategy > > &eigenmode_solvers, long numImages, bool estimateEigenvalues, bool writeToFile, size_t idx, eonc::log::Scoped log)
 Print NEB image data to log and optionally to file.
std::vector< readcon::ConFrame > eonc::neb::pathToConFrames (const std::vector< std::shared_ptr< Matter > > &path, const std::vector< std::shared_ptr< AtomMatrix > > &tangent, const std::vector< std::shared_ptr< EigenmodeStrategy > > &eigenmode_solvers, long numImages, bool estimateEigenvalues, std::optional< size_t > bandIndex=std::nullopt)
 Build stamped ConFrames for a NEB band (same metadata as writePathCon).
eonc::io::IoStatus eonc::neb::writePathCon (const std::vector< std::shared_ptr< Matter > > &path, const std::vector< std::shared_ptr< AtomMatrix > > &tangent, const std::vector< std::shared_ptr< EigenmodeStrategy > > &eigenmode_solvers, long numImages, bool estimateEigenvalues, std::string filename, std::optional< size_t > bandIndex=std::nullopt)
 Write a NEB band as a multi-frame .con via readcon ConFrameBuilder::clone().