TBTK
Need a break? Support the development by playing Polarity Puzzles
WannierParser.h
1 /* Copyright 2017 Kristofer Björnson
2  *
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
17 
24 #ifndef COM_DAFER45_TBTK_WANNIER_PARSER
25 #define COM_DAFER45_TBTK_WANNIER_PARSER
26 
27 #include "TBTK/Model.h"
28 #include "TBTK/ParallelepipedArrayState.h"
29 #include "TBTK/ReciprocalLattice.h"
30 #include "TBTK/Resource.h"
31 
32 #include <initializer_list>
33 #include <string>
34 #include <vector>
35 
36 namespace TBTK{
37 
38 class WannierParser{
39 public:
41 // UnitCell* parseMatrixElements(std::string filename);
42  UnitCell* parseMatrixElements(Resource &resource);
43 
45  std::vector<ParallelepipedArrayState*> parseWannierFunctions(
46 // std::string filename,
47  Resource &resource,
48  unsigned int resolutionX,
49  unsigned int resolutionY,
50  unsigned int resolutionZ,
51  unsigned int numStates,
52  const std::vector<std::vector<double>> &basisVectors
53  );
54 
56  std::vector<ParallelepipedArrayState*> parseWannierFunctions(
57  Resource &resource
58  );
59 
61  ReciprocalLattice* getReciprocalLattice();
62 
64 // unsigned int getMatrixDimension() const;
65 private:
67 // ReciprocalLattice *reciprocalLattice;
68 
70 // unsigned int matrixDimension;
71 };
72 
73 /*inline ReciprocalLattice* WannierParser::getReciprocalLattice(){
74  return reciprocalLattice;
75 }*/
76 
77 /*inline unsigned int WannierParser::getMatrixDimension() const{
78  return matrixDimension;
79 }*/
80 
81 }; //End of namespace TBTK
82 
83 #endif
84 
Container of Model related information.
Read and write string resources from file, URL, etc.
Definition: Boolean.h:32