#include "Eigen.h"#include "EonLogger.h"#include "FiniteDifference.h"#include "Matter.h"#include "Parameters.h"#include <vector>Go to the source code of this file.
Classes | |
| class | eonc::Hessian |
Namespaces | |
| namespace | eonc |
| RAII resource manager for the ARTn C library with global synchronization. | |
Functions | |
| bool | eonc::trivialModeCountIsPhysical (long removed, long fixedAtoms) |
| Whether removed zero-frequency modes are what the structure's symmetries give: 6 for a free cluster (3 translations and 3 rotations), 5 for a linear one, 3 for a periodic cell, where rotations are no symmetry of the lattice, and none once any atom is fixed. | |
| std::vector< double > | eonc::cartesianMode (const Matter &matter, const VectorXi &atoms, const Eigen::Ref< const VectorXd > &mode) |
| Cartesian displacement of every atom along one mass-weighted mode over the mobile degrees of freedom atoms: x = q / sqrt(m), unit norm, zero on atoms outside atoms. | |
| bool | eonc::writeNormalModes (Matter &matter, const VectorXi &atoms, const VectorXd &eigenvalues, const MatrixXd &modes, const std::string &path) |
| Writes one frame of matter per mode to path, the mode as the displacements section and mode_eigenvalue (eV / (Angstrom^2 amu)), hbar_omega (eV, negative for an imaginary mode) and wavenumber (cm^-1, same sign) as frame metadata. | |
| std::vector< int > | eonc::greedyColorCutoffGraph (const std::vector< std::vector< int > > &adj) |
| Greedy coloring of an undirected graph. | |
| std::vector< int > | eonc::colorMobileCutoffGraph (const Matter &matter, const VectorXi &atoms, double cutoff) |
| Conflict graph on atoms: two mobile atoms share an edge when their closed cutoff neighborhoods intersect, then greedy-colored. | |
Variables | |
| constexpr double | eonc::kEvToWavenumber = 8065.543937349212 |
| 1 eV in cm^-1, e / (h c) from the exact SI values. | |