Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 21 additions & 3 deletions source/source_lcao/module_deepks/LCAO_deepks_interface.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include "LCAO_deepks_io.h" // mohan add 2024-07-22
#include "source_estate/cal_dm.h"
#include "source_lcao/module_hcontainer/hcontainer.h"
#include "source_lcao/module_hcontainer/hcontainer_funcs.h"
#include "source_lcao/module_hcontainer/output_hcontainer.h"
#include "source_io/module_parameter/parameter.h"
#include "source_base/global_variable.h"
Expand Down Expand Up @@ -444,12 +445,23 @@ void LCAO_Deepks_Interface<TK, TR>::out_deepks_labels(const double& etot,
+ (PARAM.inp.deepks_out_labels == 1 ? "deepks_hrtot.csr" : "deepks_hamiltonian_r.csr");
hamilt::HContainer<TR>* hR_tot = (p_ham->getHR());

const int nbasis = hR_tot->get_nbasis();
#ifdef __MPI
Parallel_Orbitals serialV;
serialV.init(nbasis, nbasis, nbasis, ParaV->comm());
serialV.set_serial(nbasis, nbasis);
serialV.set_atomic_trace(ucell.get_iat2iwt(), ucell.nat, nbasis);
hamilt::HContainer<TR> hR_serial(&serialV);
hamilt::gatherParallels(*hR_tot, &hR_serial, 0);
#else
hamilt::HContainer<TR> hR_serial(*hR_tot);
#endif
if (rank == 0)
{
std::ofstream ofs_hr(file_hrtot, std::ios::out);
ofs_hr << "Matrix Dimension of H(R): " << hR_tot->get_nbasis() << std::endl;
ofs_hr << "Matrix Dimension of H(R): " << nbasis << std::endl;
ofs_hr << "Matrix number of H(R): " << hR_tot->size_R_loop() << std::endl;
hamilt::Output_HContainer<TR> out_hr(hR_tot, ofs_hr, sparse_threshold, precision);
hamilt::Output_HContainer<TR> out_hr(&hR_serial, ofs_hr, sparse_threshold, precision);
out_hr.write(true); // write all the matrices, including empty ones
ofs_hr.close();
}
Expand All @@ -461,12 +473,18 @@ void LCAO_Deepks_Interface<TK, TR>::out_deepks_labels(const double& etot,
const std::string file_vdeltar = PARAM.globalv.global_out_dir + "deepks_hrdelta.csr";
hamilt::HContainer<TR>* h_deltaR = p_ham->get_V_delta_R();

#ifdef __MPI
hamilt::HContainer<TR> h_deltaR_serial(&serialV);
hamilt::gatherParallels(*h_deltaR, &h_deltaR_serial, 0);
#else
hamilt::HContainer<TR> h_deltaR_serial(*h_deltaR);
#endif
if (rank == 0)
{
std::ofstream ofs_hr(file_vdeltar, std::ios::out);
ofs_hr << "Matrix Dimension of H_delta(R): " << h_deltaR->get_nbasis() << std::endl;
ofs_hr << "Matrix number of H_delta(R): " << h_deltaR->size_R_loop() << std::endl;
hamilt::Output_HContainer<TR> out_hr(h_deltaR, ofs_hr, sparse_threshold, precision);
hamilt::Output_HContainer<TR> out_hr(&h_deltaR_serial, ofs_hr, sparse_threshold, precision);
out_hr.write(true); // write all the matrices, including empty ones
ofs_hr.close();
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Matrix Dimension of H_delta(R): 23
Matrix number of H_delta(R): 1
0 0 0 144
-1.17226740e-02 -7.57658616e-05 1.61519520e-03 2.14838886e-03 -1.34740806e-03 -8.30754807e-03 7.47161074e-04 -3.31336838e-03 -1.94293588e-03 2.75341536e-03 4.07871413e-04 4.10885575e-03 -7.57658616e-05 -2.29579487e-03 7.50289951e-04 1.02377862e-04 -5.48909920e-05 -2.94642184e-04 -8.25177686e-04 1.94818297e-04 -1.19266527e-04 -7.46808290e-05 -8.73270929e-04 3.20285418e-04 1.61519520e-03 7.50289951e-04 -5.96371822e-04 -5.81645379e-05 1.37541461e-03 3.71901393e-03 -1.08600805e-04 -5.51784265e-04 -1.08973508e-04 -2.26761593e-04 2.01147715e-04 -2.82691276e-04 2.14838886e-03 1.02377862e-04 -5.81645379e-05 -3.34036572e-03 3.80487988e-04 6.01680816e-04 5.43170647e-04 2.59440381e-03 -2.85153605e-04 3.33506511e-04 -1.05075443e-03 -3.77203641e-03 -1.34740806e-03 -5.48909920e-05 1.37541461e-03 3.80487988e-04 4.66309048e-04 -2.79020310e-03 2.98197496e-04 -7.00712687e-04 -7.72562067e-05 -1.48728519e-04 -2.30021977e-04 -3.50951237e-04 -8.30754807e-03 -2.94642184e-04 3.71901393e-03 6.01680816e-04 -2.79020310e-03 -1.26915681e-02 6.40881586e-04 -6.12780257e-05 -1.56385352e-03 1.75141762e-03 -4.37464862e-04 1.26280909e-05 7.47161074e-04 -8.25177686e-04 -1.08600805e-04 5.43170647e-04 2.98197496e-04 6.40881586e-04 -1.80813878e-03 -6.96488950e-05 2.45238335e-04 9.54997836e-05 1.72195202e-04 2.89724169e-04 -3.31336838e-03 1.94818297e-04 -5.51784265e-04 2.59440381e-03 -7.00712687e-04 -6.12780257e-05 -6.96488950e-05 -2.13180521e-03 -4.05397975e-05 1.71581618e-04 8.85356707e-04 3.60025084e-03 -1.94293588e-03 -1.19266527e-04 -1.08973508e-04 -2.85153605e-04 -7.72562067e-05 -1.56385352e-03 2.45238335e-04 -4.05397975e-05 -6.06345144e-04 7.81662817e-04 -1.54549695e-04 2.40887746e-05 2.75341536e-03 -7.46808290e-05 -2.26761593e-04 3.33506511e-04 -1.48728519e-04 1.75141762e-03 9.54997836e-05 1.71581618e-04 7.81662817e-04 -5.88627411e-04 -2.89432341e-04 -2.73772524e-04 4.07871413e-04 -8.73270929e-04 2.01147715e-04 -1.05075443e-03 -2.30021977e-04 -4.37464862e-04 1.72195202e-04 8.85356707e-04 -1.54549695e-04 -2.89432341e-04 -2.37112515e-03 -1.20550576e-03 4.10885575e-03 3.20285418e-04 -2.82691276e-04 -3.77203641e-03 -3.50951237e-04 1.26280909e-05 2.89724169e-04 3.60025084e-03 2.40887746e-05 -2.73772524e-04 -1.20550576e-03 -7.09398430e-03
0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11
0 12 24 36 48 60 72 84 96 108 120 132 144 144 144 144 144 144 144 144 144 144 144 144
0 0 0 529
-1.17226740e-02 -3.62139850e-03 -7.57658616e-05 -9.43627902e-04 1.61519520e-03 -4.88126962e-03 2.14838886e-03 -5.69092611e-04 -1.34740806e-03 -2.17211583e-03 -8.30754807e-03 1.86867772e-03 7.47161074e-04 4.24371075e-03 -3.31336838e-03 -3.08073383e-04 -1.94293588e-03 1.84789083e-03 2.75341536e-03 -4.52073594e-04 4.07871413e-04 1.43137381e-03 4.10885575e-03 -3.62139850e-03 -3.31857643e-03 5.55124135e-05 3.97210123e-04 -4.50233142e-04 2.17069899e-03 1.85031146e-03 1.16739328e-04 4.32408136e-04 5.70274689e-05 6.99594086e-04 8.77920587e-04 -3.74216359e-05 9.07138684e-04 -2.62303837e-03 7.06198588e-05 -2.95999181e-04 1.42369135e-03 6.63247569e-04 2.20553361e-04 8.23578297e-04 3.58777368e-04 3.75990027e-03 -7.57658616e-05 5.55124135e-05 -2.29579487e-03 1.05517608e-03 7.50289951e-04 -9.10169189e-05 1.02377862e-04 -7.14728269e-05 -5.48909920e-05 -2.21731453e-04 -2.94642184e-04 -1.21531930e-04 -8.25177686e-04 2.75393644e-04 1.94818297e-04 2.58520504e-04 -1.19266527e-04 -5.18116647e-05 -7.46808290e-05 2.18067883e-04 -8.73270929e-04 -5.57969648e-04 3.20285418e-04 -9.43627902e-04 3.97210123e-04 1.05517608e-03 6.27129594e-04 2.10459678e-03 -1.27654053e-03 4.22599368e-04 -3.24706105e-04 -8.00733857e-04 -1.24619255e-03 -2.64164211e-03 -7.12039715e-04 3.97104856e-04 3.86729044e-04 6.13908324e-04 -1.21192491e-04 -1.27023518e-04 -1.27553282e-04 -2.84217179e-05 -2.61293083e-04 4.81255708e-04 -9.33661463e-04 4.67067072e-04 1.61519520e-03 -4.50233142e-04 7.50289951e-04 2.10459678e-03 -5.96371822e-04 2.29609857e-03 -5.81645379e-05 4.50571959e-04 1.37541461e-03 9.15962708e-04 3.71901393e-03 5.93156794e-04 -1.08600805e-04 -5.69854124e-04 -5.51784265e-04 -4.70073968e-05 -1.08973508e-04 1.08735999e-04 -2.26761593e-04 -3.08497239e-04 2.01147715e-04 -1.30198784e-03 -2.82691276e-04 -4.88126962e-03 2.17069899e-03 -9.10169189e-05 -1.27654053e-03 2.29609857e-03 -1.17946700e-02 -3.65752097e-03 -4.36949713e-04 -1.04991930e-03 -1.62944026e-03 -8.44403565e-03 1.79978067e-03 1.45734825e-03 4.45177303e-03 3.06765884e-03 -6.61583941e-04 -1.92602393e-03 -1.62896982e-03 2.38699965e-03 -1.34201368e-03 -1.60643312e-03 1.01382835e-03 -3.99355953e-03 2.14838886e-03 1.85031146e-03 1.02377862e-04 4.22599368e-04 -5.81645379e-05 -3.65752097e-03 -3.34036572e-03 1.35458391e-04 3.80487988e-04 3.67953176e-04 6.01680816e-04 8.31307908e-04 5.43170647e-04 1.07691641e-03 2.59440381e-03 -2.15248177e-04 -2.85153605e-04 -1.38080932e-03 3.33506511e-04 -6.12806701e-04 -1.05075443e-03 -3.24643167e-05 -3.77203641e-03 -5.69092611e-04 1.16739328e-04 -7.14728269e-05 -3.24706105e-04 4.50571959e-04 -4.36949713e-04 1.35458391e-04 -2.52025047e-03 5.47037477e-04 -3.72802097e-04 -1.08319501e-03 -2.53748022e-04 -8.37977755e-04 4.25201851e-04 -1.28245874e-04 2.69077723e-04 -7.65612532e-05 1.78789433e-05 3.00822298e-04 2.01309516e-04 8.80835967e-04 -9.65086570e-05 -4.10402146e-04 -1.34740806e-03 4.32408136e-04 -5.48909920e-05 -8.00733857e-04 1.37541461e-03 -1.04991930e-03 3.80487988e-04 5.47037477e-04 4.66309048e-04 -2.37927182e-03 -2.79020310e-03 -7.57048101e-04 2.98197496e-04 5.10331568e-04 -7.00712687e-04 -7.83000417e-05 -7.72562067e-05 1.46308569e-04 -1.48728519e-04 -3.56662803e-04 -2.30021977e-04 -1.02634361e-03 -3.50951237e-04 -2.17211583e-03 5.70274689e-05 -2.21731453e-04 -1.24619255e-03 9.15962708e-04 -1.62944026e-03 3.67953176e-04 -3.72802097e-04 -2.37927182e-03 -3.17636479e-04 -3.57230311e-03 -5.79161721e-04 1.88119336e-04 5.32895704e-04 -4.33752888e-04 2.21933361e-05 1.63097910e-04 9.65159816e-05 1.95088303e-04 2.11139203e-04 -3.63635539e-04 1.41676091e-03 -3.12986333e-04 -8.30754807e-03 6.99594086e-04 -2.94642184e-04 -2.64164211e-03 3.71901393e-03 -8.44403565e-03 6.01680816e-04 -1.08319501e-03 -2.79020310e-03 -3.57230311e-03 -1.26915681e-02 -5.67704352e-04 6.40881586e-04 2.52353706e-03 -6.12780257e-05 -3.97812123e-04 -1.56385352e-03 3.12831896e-05 1.75141762e-03 -5.52685598e-04 -4.37464862e-04 1.06022860e-03 1.26280909e-05 1.86867772e-03 8.77920587e-04 -1.21531930e-04 -7.12039715e-04 5.93156794e-04 1.79978067e-03 8.31307908e-04 -2.53748022e-04 -7.57048101e-04 -5.79161721e-04 -5.67704352e-04 -1.87025156e-03 -5.03563736e-04 -1.99325653e-03 7.33280233e-05 1.43780052e-04 5.95513212e-04 -8.69591639e-05 -1.07247375e-03 5.14077802e-04 1.89341367e-04 1.97742222e-05 -5.93739376e-05 7.47161074e-04 -3.74216359e-05 -8.25177686e-04 3.97104856e-04 -1.08600805e-04 1.45734825e-03 5.43170647e-04 -8.37977755e-04 2.98197496e-04 1.88119336e-04 6.40881586e-04 -5.03563736e-04 -1.80813878e-03 -5.80109174e-04 -6.96488950e-05 -5.96140210e-05 2.45238335e-04 2.42989359e-04 9.54997836e-05 1.09138808e-03 1.72195202e-04 -7.57142452e-04 2.89724169e-04 4.24371075e-03 9.07138684e-04 2.75393644e-04 3.86729044e-04 -5.69854124e-04 4.45177303e-03 1.07691641e-03 4.25201851e-04 5.10331568e-04 5.32895704e-04 2.52353706e-03 -1.99325653e-03 -5.80109174e-04 -3.88395486e-03 -7.80058099e-05 2.48044905e-04 8.24811995e-04 -1.35230180e-05 -1.66664666e-03 -3.24481106e-05 5.25573118e-04 -1.88659888e-03 1.21499755e-04 -3.31336838e-03 -2.62303837e-03 1.94818297e-04 6.13908324e-04 -5.51784265e-04 3.06765884e-03 2.59440381e-03 -1.28245874e-04 -7.00712687e-04 -4.33752888e-04 -6.12780257e-05 7.33280233e-05 -6.96488950e-05 -7.80058099e-05 -2.13180521e-03 2.36142590e-04 -4.05397975e-05 2.24871509e-03 1.71581618e-04 2.66907522e-04 8.85356707e-04 2.23424203e-04 3.60025084e-03 -3.08073383e-04 7.06198588e-05 2.58520504e-04 -1.21192491e-04 -4.70073968e-05 -6.61583941e-04 -2.15248177e-04 2.69077723e-04 -7.83000417e-05 2.21933361e-05 -3.97812123e-04 1.43780052e-04 -5.96140210e-05 2.48044905e-04 2.36142590e-04 -1.52959026e-04 -1.18960326e-04 -1.30874299e-05 1.95942523e-04 -9.74404173e-05 -7.49881215e-05 5.55136968e-07 -1.83179620e-04 -1.94293588e-03 -2.95999181e-04 -1.19266527e-04 -1.27023518e-04 -1.08973508e-04 -1.92602393e-03 -2.85153605e-04 -7.65612532e-05 -7.72562067e-05 1.63097910e-04 -1.56385352e-03 5.95513212e-04 2.45238335e-04 8.24811995e-04 -4.05397975e-05 -1.18960326e-04 -6.06345144e-04 5.27778316e-05 7.81662817e-04 -3.57182818e-04 -1.54549695e-04 7.53587456e-05 2.40887746e-05 1.84789083e-03 1.42369135e-03 -5.18116647e-05 -1.27553282e-04 1.08735999e-04 -1.62896982e-03 -1.38080932e-03 1.78789433e-05 1.46308569e-04 9.65159816e-05 3.12831896e-05 -8.69591639e-05 2.42989359e-04 -1.35230180e-05 2.24871509e-03 -1.30874299e-05 5.27778316e-05 -3.79019608e-04 -1.27242112e-04 -1.94073358e-04 -4.33793272e-04 -1.54117619e-04 -1.79992794e-03 2.75341536e-03 6.63247569e-04 -7.46808290e-05 -2.84217179e-05 -2.26761593e-04 2.38699965e-03 3.33506511e-04 3.00822298e-04 -1.48728519e-04 1.95088303e-04 1.75141762e-03 -1.07247375e-03 9.54997836e-05 -1.66664666e-03 1.71581618e-04 1.95942523e-04 7.81662817e-04 -1.27242112e-04 -5.88627411e-04 8.54510996e-04 -2.89432341e-04 -5.24942201e-04 -2.73772524e-04 -4.52073594e-04 2.20553361e-04 2.18067883e-04 -2.61293083e-04 -3.08497239e-04 -1.34201368e-03 -6.12806701e-04 2.01309516e-04 -3.56662803e-04 2.11139203e-04 -5.52685598e-04 5.14077802e-04 1.09138808e-03 -3.24481106e-05 2.66907522e-04 -9.74404173e-05 -3.57182818e-04 -1.94073358e-04 8.54510996e-04 1.25682163e-03 -3.89499039e-04 4.78108647e-04 -9.56639530e-04 4.07871413e-04 8.23578297e-04 -8.73270929e-04 4.81255708e-04 2.01147715e-04 -1.60643312e-03 -1.05075443e-03 8.80835967e-04 -2.30021977e-04 -3.63635539e-04 -4.37464862e-04 1.89341367e-04 1.72195202e-04 5.25573118e-04 8.85356707e-04 -7.49881215e-05 -1.54549695e-04 -4.33793272e-04 -2.89432341e-04 -3.89499039e-04 -2.37112515e-03 -5.15360701e-04 -1.20550576e-03 1.43137381e-03 3.58777368e-04 -5.57969648e-04 -9.33661463e-04 -1.30198784e-03 1.01382835e-03 -3.24643167e-05 -9.65086570e-05 -1.02634361e-03 1.41676091e-03 1.06022860e-03 1.97742222e-05 -7.57142452e-04 -1.88659888e-03 2.23424203e-04 5.55136968e-07 7.53587456e-05 -1.54117619e-04 -5.24942201e-04 4.78108647e-04 -5.15360701e-04 2.76519524e-03 -4.59410571e-04 4.10885575e-03 3.75990027e-03 3.20285418e-04 4.67067072e-04 -2.82691276e-04 -3.99355953e-03 -3.77203641e-03 -4.10402146e-04 -3.50951237e-04 -3.12986333e-04 1.26280909e-05 -5.93739376e-05 2.89724169e-04 1.21499755e-04 3.60025084e-03 -1.83179620e-04 2.40887746e-05 -1.79992794e-03 -2.73772524e-04 -9.56639530e-04 -1.20550576e-03 -4.59410571e-04 -7.09398430e-03
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
0 23 46 69 92 115 138 161 184 207 230 253 276 299 322 345 368 391 414 437 460 483 506 529
Loading
Loading