ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
matrix_methods.h
Go to the documentation of this file.
1#ifndef MATRIX_METHODS
2#define MATRIX_METHODS
3
4#include <vector>
5
6
7
8std::vector<double> ReshapeMToV(std::vector<std::vector<double>>& matrix);
9std::vector<std::vector<double>> MAddM(std::vector<std::vector<double>>& a, std::vector<std::vector<double>>& b);
10std::vector<double> VSubV(std::vector<double>& a, std::vector<double>& b);
11std::vector<double> VAddV(std::vector<double>& a, std::vector<double>& b);
12std::vector<std::vector<double>> ReshapeVToM(std::vector<double>& matrix);
13std::vector<double> DotInMAndV1(std::vector<std::vector<double>>& matrix, std::vector<double>& vec);
14std::vector<double> DotInMAndV2(std::vector<std::vector<double>>& matrix, std::vector<double>& vec);
15double DotInVAndV(std::vector<double>& vec1, std::vector<double>& vec2);
16std::vector<std::vector<double>> OuterVAndV(std::vector<double>& a, std::vector<double>& b);
17std::vector<std::vector<double>> MPlus(std::vector<std::vector<double>>& a, double b);
18std::vector<std::vector<double>> MSubM(std::vector<std::vector<double>>& a, std::vector<std::vector<double>>& b);
19std::vector<double> DotInVAndFloat(std::vector<double>& vec, double b);
20
21
22
23#endif
std::vector< double > DotInMAndV2(std::vector< std::vector< double > > &matrix, std::vector< double > &vec)
Definition matrix_methods.cpp:65
std::vector< double > VSubV(std::vector< double > &a, std::vector< double > &b)
Definition matrix_methods.cpp:30
std::vector< double > DotInVAndFloat(std::vector< double > &vec, double b)
Definition matrix_methods.cpp:127
std::vector< double > ReshapeMToV(std::vector< std::vector< double > > &matrix)
Definition matrix_methods.cpp:5
std::vector< std::vector< double > > OuterVAndV(std::vector< double > &a, std::vector< double > &b)
Definition matrix_methods.cpp:88
std::vector< std::vector< double > > MPlus(std::vector< std::vector< double > > &a, double b)
Definition matrix_methods.cpp:101
std::vector< double > DotInMAndV1(std::vector< std::vector< double > > &matrix, std::vector< double > &vec)
Definition matrix_methods.cpp:53
std::vector< std::vector< double > > ReshapeVToM(std::vector< double > &matrix)
Definition matrix_methods.cpp:40
std::vector< double > VAddV(std::vector< double > &a, std::vector< double > &b)
Definition matrix_methods.cpp:137
double DotInVAndV(std::vector< double > &vec1, std::vector< double > &vec2)
Definition matrix_methods.cpp:78
std::vector< std::vector< double > > MAddM(std::vector< std::vector< double > > &a, std::vector< std::vector< double > > &b)
Definition matrix_methods.cpp:16
std::vector< std::vector< double > > MSubM(std::vector< std::vector< double > > &a, std::vector< std::vector< double > > &b)
Definition matrix_methods.cpp:114