|
Quantum 3xplorer (Q3)
An AI-native quantum simulation engine
|
Reads one dataset from a UPF v1 or v2 file. More...
#include <upf_reader.hpp>
Static Public Member Functions | |
| static std::unique_ptr< Pseudopotential > | read (const std::string &filename) |
Reads one dataset from a UPF v1 or v2 file.
Definition at line 41 of file upf_reader.hpp.
|
inlinestatic |
Determine whether this is an ultrasoft PP by reading the header type first. We need to peek at the pseudopotential type to decide which subclass to create.
For v1, we need to read the header first to determine the type. Read a temporary PP to get the type, then re-read with the correct class. Since v1 readers mutate the passed reference, we read into a temporary first.
Definition at line 43 of file upf_reader.hpp.
References q3::upf_utilities::canonical_pseudopotential_type(), q3::upf_utilities::check_atomic_wavefunction_norm(), q3::UPFv1Reader::read(), q3::UltrasoftUPFv1Reader::read(), q3::UPFv2Reader::read(), q3::PawUPFv2Reader::read(), q3::UltrasoftUPFv2Reader::read(), and q3::upf_utilities::xml_attribute().
Referenced by q3::UPFPseudopotentialFormat::read().