@@ -11,6 +11,8 @@ namespace hamilt
1111template class HamiltLCAO <double , double >;
1212// case for nspin<4, multi-k-points
1313template class HamiltLCAO <std::complex <double >, double >;
14+ // case for nspin == 4, non-collinear spin case
15+ // template class HamiltLCAO<std::complex<double>, std::complex<double>>;
1416
1517template <typename T, typename T1> void HamiltLCAO<T, T1>::constructFixedReal()
1618{
@@ -83,8 +85,9 @@ template <typename T, typename T1> void HamiltLCAO<T, T1>::getMatrix(MatrixBlock
8385}
8486
8587// case for nspin==4
86- /* void HamiltLCAO<std::complex<double>, std::complex<double>>::matrix(MatrixBlock<std::complex<double>> hk_in,
87- MatrixBlock<std::complex<double>> sk_in)const
88+ /* template <>
89+ void HamiltLCAO<std::complex<double>, std::complex<double>>::matrix(MatrixBlock<std::complex<double>> &hk_in,
90+ MatrixBlock<std::complex<double>> &sk_in)
8891{
8992 this->getMatrix(hk_in, sk_in);
9093}*/
@@ -102,41 +105,16 @@ template <> void HamiltLCAO<double, double>::matrix(MatrixBlock<double> &hk_in,
102105 this ->getMatrix (hk_in, sk_in);
103106}
104107
105- // nspin==4 case not supported yet
106- /* void HamiltLCAO<std::complex<double>, std::complex<double>>::constructHamilt(const int iter, const MatrixBlock<double>
107- rho)
108- {
109- this->constructFixedReal();
110- this->constructUpdateReal();
111- }*/
112108template <typename T, typename T1>
113109void HamiltLCAO<T, T1>::constructHamilt(const int iter, const MatrixBlock<double > rho)
114110{
115111 this ->constructFixedReal ();
116112 this ->constructUpdateReal ();
117113}
118- /* template<>
119- void HamiltLCAO<double, double>::constructHamilt(const int iter, const MatrixBlock<double> rho)
120- {
121- this->constructFixedReal();
122- this->constructUpdateReal();
123- }*/
124-
125- /* void HamiltLCAO<std::complex<double>, std::complex<double>>::updateHk(const int ik)
126- {
127- this->hk_fixed_mock(ik);
128- this->hk_update_mock(ik);
129- };*/
130114template <typename T, typename T1> void HamiltLCAO<T, T1>::updateHk(const int ik)
131115{
132116 this ->hk_fixed_mock (ik);
133117 this ->hk_update_mock (ik);
134118}
135- /* template<>
136- void HamiltLCAO<double, double>::updateHk(const int ik)
137- {
138- this->hk_fixed_mock(ik);
139- this->hk_update_mock(ik);
140- }*/
141119
142120} // namespace hamilt
0 commit comments