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:

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.