occ
Loading...
Searching...
No Matches
structure_format.h File Reference
#include <array>
#include <map>
#include <nlohmann/json.hpp>
#include <string>
#include <vector>
Include dependency graph for structure_format.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  occ::io::SiteMultipoles
struct  occ::io::MoleculeSite
struct  occ::io::MoleculeType
struct  occ::io::BuckinghamPair
struct  occ::io::Potentials
struct  occ::io::Settings
struct  occ::io::Basis
 Everything needed to define the energy model, independent of crystal packing. More...
struct  occ::io::IndependentMolecule
struct  occ::io::CrystalData
struct  occ::io::ReferenceEnergies
struct  occ::io::StructureInput
 Complete input for crystal energy calculations. More...

Namespaces

namespace  occ
namespace  occ::io
 file input and output module including reading wavefunction files

Functions

void occ::io::to_json (nlohmann::json &j, const SiteMultipoles &m)
void occ::io::from_json (const nlohmann::json &j, SiteMultipoles &m)
void occ::io::to_json (nlohmann::json &j, const MoleculeSite &s)
void occ::io::from_json (const nlohmann::json &j, MoleculeSite &s)
void occ::io::to_json (nlohmann::json &j, const MoleculeType &mt)
void occ::io::from_json (const nlohmann::json &j, MoleculeType &mt)
void occ::io::to_json (nlohmann::json &j, const IndependentMolecule &im)
void occ::io::from_json (const nlohmann::json &j, IndependentMolecule &im)
void occ::io::to_json (nlohmann::json &j, const BuckinghamPair &bp)
void occ::io::from_json (const nlohmann::json &j, BuckinghamPair &bp)
void occ::io::to_json (nlohmann::json &j, const Potentials &p)
void occ::io::from_json (const nlohmann::json &j, Potentials &p)
void occ::io::to_json (nlohmann::json &j, const Settings &s)
void occ::io::from_json (const nlohmann::json &j, Settings &s)
void occ::io::to_json (nlohmann::json &j, const ReferenceEnergies &r)
void occ::io::from_json (const nlohmann::json &j, ReferenceEnergies &r)
void occ::io::to_json (nlohmann::json &j, const Basis &b)
void occ::io::from_json (const nlohmann::json &j, Basis &b)
void occ::io::to_json (nlohmann::json &j, const CrystalData &c)
void occ::io::from_json (const nlohmann::json &j, CrystalData &c)
void occ::io::to_json (nlohmann::json &j, const StructureInput &si)
void occ::io::from_json (const nlohmann::json &j, StructureInput &si)
StructureInput occ::io::read_structure_json (const std::string &path)
void occ::io::write_structure_json (const std::string &path, const StructureInput &input)
void occ::io::write_force_field_json (const std::string &path, const Basis &basis, const std::string &title="")
 Write only the force-field section (molecule definitions, multipoles, pair potentials, and model settings) to a standalone JSON file.
bool occ::io::is_structure_format (const std::string &json_path)
 Detect whether a JSON file uses the structure format.