26#ifndef dftefeAtomSphericalDataPSP_h
27#define dftefeAtomSphericalDataPSP_h
36#include <unordered_map>
38#include <libxml/parser.h>
39#include <libxml/xpath.h>
40#include <libxml/tree.h>
41#include <libxml/xpathInternals.h>
63 class AtomSphericalDataPSP :
public AtomSphericalData
77 const std::string fileName,
78 const std::vector<std::string> & fieldNames,
79 const std::vector<std::string> & metadataNames,
80 const SphericalHarmonicFunctions &sphericalHarmonicFunc);
82 ~AtomSphericalDataPSP() =
default;
85 addFieldName(
const std::string fieldName)
override;
88 getFileName()
const override;
90 std::vector<std::string>
91 getFieldNames()
const override;
93 std::vector<std::string>
94 getMetadataNames()
const override;
96 const std::vector<std::shared_ptr<SphericalData>> &
97 getSphericalData(
const std::string fieldName)
const override;
99 const std::shared_ptr<SphericalData>
100 getSphericalData(
const std::string fieldName,
101 const std::vector<int> &qNumbers)
const override;
104 getMetadata(
const std::string metadataName)
const override;
107 getQNumberID(
const std::string fieldName,
108 const std::vector<int> &qNumbers)
const override;
111 nSphericalData(std::string fieldName)
const override;
115 getSphericalDataFromXMLNode(
116 std::vector<std::shared_ptr<SphericalData>> &sphericalDataVec,
117 const std::vector<double> & radialPoints,
118 XPathInfo & xPathInfo,
119 const std::string & fieldName,
120 const SphericalHarmonicFunctions & sphericalHarmonicFunc);
122 std::string d_fileName, d_rootElementName;
123 std::vector<std::string> d_fieldNames;
124 std::vector<std::string> d_metadataNames;
125 std::unordered_map<std::string,
126 std::vector<std::shared_ptr<SphericalData>>>
128 std::unordered_map<std::string, std::map<std::vector<int>,
size_type>>
130 std::unordered_map<std::string, std::string> d_metadata;
132 const double d_PSPVLocalCutoff;
135 std::shared_ptr<utils::ScalarSpatialFunctionReal>
136 d_scalarSpatialFnAfterRadialGrid;
138 std::vector<double> d_radialPoints;
139 const SphericalHarmonicFunctions &d_sphericalHarmonicFunc;
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
unsigned int size_type
Definition: TypeConfig.h:8