You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Update output formats, prepare for ABACUS 3.11 version (#6522)
* add iter and itep into the output wave function file name in pw basis, change out_interval to out_freq_ion
* fix bugs, default value of out_freq_ion is 0, if one needs out_freq_elec, he/she should first turn on out_freq_ion
* fix bug in read_input_ptest
* fix bug in read_input_item_test.cpp
* read_wfc
* update output file names of command out_wfc_pw
* update description for out_wfc_pw
* add inp into lcao_after_scf
* update out_chg and out_pot
* update elf
* chagne eigs1.txt to eig.txt, change eig.txt to eig_occ.txt
* update output of pw documents
* update output of pw basis set
* update dos and eig and eig_occ to adapt to g index
* fix bugs in pw outputs
* change chgs1 to chg
* update file names and fix small bugs
* out_dos update
* update and fix band.txt
* fix bug
* update catch_properties, can deal with nspin=2 case to print wave function in pw basis
* fix bug in 072_PW_ELF
* fix 054 056 057 examples in 01_PW
* fix 01_PW 100
* fix mulliken charge output
* fix bugs in 02_NAO_Gamma
* fix bugs in 03_NAO_multik
* update to fix bugs in 03_NAO_multik
* remove k in hkk1.txt skk1.txt tkk1.txt
* update output formats
* do not output ks_pw dos when performing SDFT calculations
* add parameter in 007_PW_OW_GPU
* update result.ref
* fix some chg files
* delete out_interval in INPUT
* update documents
* update 01_PW/203 example
* update chage step -1
* fix bugs
* fix bug in 23 example
* fix bug
* fix OFDFT example
* fix bug in EXX
Copy file name to clipboardExpand all lines: docs/advanced/elec_properties/Mulliken.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
# Mulliken Charge Analysis
2
2
3
3
From version 2.1.0, ABACUS has the function of Mulliken population analysis. The example can be found in [examples/mulliken](https://github.com/deepmodeling/abacus-develop/tree/develop/examples/mulliken). \
4
-
To use this function, set [out_mul](./input-main.md#out_mul) to `1` in the INPUT file. After calculation, there will be an output file named `mulliken.txt` in the output directory. In MD calculations, the output interval is controlled by the keyword [out_interval](./input-main.md#out_interval). In the file, there are contents like (`nspin 1`):
4
+
To use this function, set [out_mul](./input-main.md#out_mul) to `1` in the INPUT file. After calculation, there will be an output file named `mulliken.txt` in the output directory. In MD calculations, the output interval is controlled by the keyword [out_freq_ion](./input-main.md#out_freq_ion). In the file, there are contents like (`nspin 1`):
Copy file name to clipboardExpand all lines: docs/advanced/elec_properties/hs_matrix.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -45,7 +45,7 @@ The CSR format stores a sparse m × n matrix M in row form using three (one-dime
45
45
- The arrays V and COL_INDEX are of length NNZ, and contain the non-zero values and the column indices of those values respectively.
46
46
- The array ROW_INDEX is of length m + 1 and encodes the index in V and COL_INDEX where the given row starts. This is equivalent to ROW_INDEX[j] encoding the total number of nonzeros above row j. The last element is NNZ , i.e., the fictitious index in V immediately after the last valid index NNZ - 1.
47
47
48
-
For calculations involving ionic movements, the output frequency of the matrix is controlled by [out_interval](../input_files/input-main.md#out_interval) and [out_app_flag](../input_files/input-main.md#out_app_flag).
48
+
For calculations involving ionic movements, the output frequency of the matrix is controlled by [out_freq_ion](../input_files/input-main.md#out_freq_ion) and [out_app_flag](../input_files/input-main.md#out_app_flag).
49
49
50
50
## get_s
51
51
We also offer the option of only calculating the overlap matrix without running SCF. For that purpose, in `INPUT` file we need to set the value keyword [calculation](../input_files/input-main.md#calculation) to be `get_s`.
Copy file name to clipboardExpand all lines: docs/advanced/elec_properties/position_matrix.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,7 +18,7 @@ Each file or each section of the appended file starts with "STEP: " followed by
18
18
19
19
Each block here contains the matrix for the corresponding cell. There are three columns in each block, giving the matrix elements in x, y, z directions, respectively. There are altogether nbasis * nbasis lines in each block, which emulates the matrix elements.
20
20
21
-
In molecular dynamics (MD) calculations, if [out_app_flag](../input_files/input-main.md#out_app_flag) is set to true, then `data-rR-tr` is written in an append manner. Otherwise, output files will be put in a separate directory, `matrix`, and named as `$x`_data-rR-tr, where `$x` is the number of MD step. In addition, the output frequency is controlled by [out_interval](../input_files/input-main.md#out_interval). For example, if we are running a 10-step MD with out_interval = 3, then `$x` will be 0, 3, 6, and 9.
21
+
In molecular dynamics (MD) calculations, if [out_app_flag](../input_files/input-main.md#out_app_flag) is set to true, then `data-rR-tr` is written in an append manner. Otherwise, output files will be put in a separate directory, `matrix`, and named as `$x`_data-rR-tr, where `$x` is the number of MD step. In addition, the output frequency is controlled by [out_freq_ion](../input_files/input-main.md#out_freq_ion). For example, if we are running a 10-step MD with out_freq_ion = 3, then `$x` will be 0, 3, 6, and 9.
22
22
23
23
## get_s
24
24
We also offer the option of only calculating the position matrix without running SCF. For that purpose, in `INPUT` file we need to set the keyword [calculation](../input_files/input-main.md#calculation) to `get_s`, and [out_mat_r](../input_files/input-main.md#out_mat_r) to `true`.
@@ -1636,6 +1636,13 @@ These variables are used to control the geometry relaxation.
1636
1636
1637
1637
These variables are used to control the output of properties.
1638
1638
1639
+
### out_freq_ion
1640
+
1641
+
-**Type**: Integer
1642
+
-**Description**: After self-consistent-field calculations, control the interval of ionic movements for printing properties. These properties cover charge density, local potential, electrostatic potential, Hamiltonian matrix, overlap matrix, density matrix, Mulliken population analysis and so on.
1643
+
-**Default**: 0
1644
+
-**Note**: If you want to use out_freq_elec, please set out_freq_ion to 1, otherwise out_freq_elec is useless
1645
+
1639
1646
### out_freq_elec
1640
1647
1641
1648
-**Type**: Integer
@@ -1665,29 +1672,10 @@ These variables are used to control the output of properties.
1665
1672
1666
1673
In EXX(exact exchange) calculations, (i.e. *[dft_fuctional](#dft_functional)==hse/hf/pbe0/scan0* or *[rpa](#rpa)==True*), the Hexx(R) files will be output in the folder `OUT.${suffix}` too, which can be read in NSCF calculation.
1667
1674
1668
-
In molecular dynamics simulations, the output frequency is controlled by [out_interval](#out_interval).
1675
+
In molecular dynamics simulations, the output frequency is controlled by [out_freq_ion](#out_freq_ion).
1669
1676
-**Default**: 0 3
1670
1677
-**Note**: In the 3.10-LTS version, the file names are SPIN1_CHG.cube and SPIN1_CHG_INI.cube, etc.
1671
1678
1672
-
### out_xc_r
1673
-
1674
-
-**Type**: Integer \[Integer\](optional)
1675
-
-**Description**:
1676
-
The first integer controls whether to output the exchange-correlation (in Bohr^-3) on real space grids using Libxc to folder `OUT.${suffix}`:
The meaning of the files is presented in [Libxc](https://libxc.gitlab.io/manual/libxc-5.1.x/)
1683
-
1684
-
The second integer controls the precision of the charge density output, if not given, will use `3` as default.
1685
-
1686
-
---
1687
-
The circle order of the charge density on real space grids is: x is the outer loop, then y and finally z (z is moving fastest).
1688
-
1689
-
-**Default**: -1 3
1690
-
1691
1679
### out_pot
1692
1680
1693
1681
-**Type**: Integer
@@ -1703,7 +1691,7 @@ These variables are used to control the output of properties.
1703
1691
- nspin = 2: `pots1_ini.cube` and `pots2_ini.cube`;
1704
1692
- nspin = 4: `pots1_ini.cube`, `pots2_ini.cube`, `pots3_ini.cube`, and `pots4_ini.cube`
1705
1693
1706
-
In molecular dynamics calculations, the output frequency is controlled by [out_interval](#out_interval).
1694
+
In molecular dynamics calculations, the output frequency is controlled by [out_freq_ion](#out_freq_ion).
1707
1695
-**Default**: 0
1708
1696
-**Note**: In the 3.10-LTS version, the file names are SPIN1_POT.cube and SPIN1_POT_INI.cube, etc.
1709
1697
@@ -1735,14 +1723,18 @@ These variables are used to control the output of properties.
1735
1723
1736
1724
-**Type**: Integer
1737
1725
-**Availability**: Output electronic wave functions in plane wave basis, or transform the real-space electronic wave function into plane wave basis (see get_wf option in [calculation](#calculation) with NAO basis)
1738
-
-**Description**: Whether to output the electronic wavefunction coefficients into files and store them in the folder `OUT.${suffix}`. The files are named as `wf{s}{spin index}{k}{k-point index}{_pw} + {".txt"/".dat"}`. Here, 's' refers to spin, where s1 means spin up channel while s2 means spin down channel, and 's12' refer to spinor wave functions that contains both spin channels with spin-orbital coupling or noncollinear calculations enabled.
1726
+
-**Description**: Whether to output the electronic wavefunction coefficients into files and store them in the folder `OUT.${suffix}`. The files are named as `wf{k}{k-point index}{s}{spin index}{g}{geometry index}{e}{electronic iteration index}{_pw} + {".txt"/".dat"}`. Here, the s index refers to spin but the label will not show up for non-spin-polarized calculations, where s1 means spin up channel while s2 means spin down channel, and s4 refers to spinor wave functions that contains both spin channels with spin-orbital coupling or noncollinear calculations enabled. For scf or nscf calculations, g index will not appear, but the g index appears for geometry relaxation and molecular dynamics, where one can use the [out_freq_ion](#out_freq_ion) command to control. To print out the electroinc wave functions every few SCF iterations, use the [out_freq_elec](#out_freq_elec) command and the e index will appear in the file name.
1739
1727
- 0: no output
1740
1728
- 1: (txt format)
1741
-
- non-gamma-only: `wfs1k1_pw.txt` or `wfs1k2_pw.txt`, ...;
1729
+
- non-gamma-only with nspin=1: `wfk1_pw.txt`, `wfk2_pw.txt`, ...;
1730
+
- non-gamma-only with nspin=2: `wfk1s1_pw.txt`, `wfk1s2_pw.txt`, `wfk2s1_pw.txt`, `wfk2s2_pw.txt`, ...;
1731
+
- non-gamma-only with nspin=4: `wfk1s4_pw.txt`, `wfk2s4_pw.txt`, ...;
1742
1732
- 2: (binary format)
1743
-
- non-gamma-only: `wfs1k1_pw.dat` or `wfs1k2_pw.dat`, ....
1733
+
- non-gamma-only with nspin=1: `wfk1_pw.dat`, `wfk2_pw.dat`, ...;
1734
+
- non-gamma-only with nspin=2: `wfk1s1_pw.dat`, `wfk1s2_pw.dat`, `wfk2s1_pw.dat`, `wfk2s2_pw.dat`, ...;
1735
+
- non-gamma-only with nspin=4: `wfk1s4_pw.dat`, `wfk2s4_pw.dat`, ...;
1744
1736
-**Default**: 0
1745
-
-**Note**: In the 3.10-LTS version, the file names are WAVEFUNC1.dat, WAVEFUNC2.dat, etc.
1737
+
-**Note**: In the 3.10-LTS version, the file names are `WAVEFUNC1.dat`, `WAVEFUNC2.dat`, etc.
1746
1738
1747
1739
### out_wfc_lcao
1748
1740
@@ -1759,7 +1751,7 @@ These variables are used to control the output of properties.
1759
1751
1760
1752
The corresponding sequence of the orbitals can be seen in [Basis Set](../pp_orb.md#basis-set).
1761
1753
1762
-
Also controled by [out_interval](#out_interval) and [out_app_flag](#out_app_flag).
1754
+
Also controled by [out_freq_ion](#out_freq_ion) and [out_app_flag](#out_app_flag).
1763
1755
-**Default**: False
1764
1756
-**Note**: In the 3.10-LTS version, the file names are WFC_NAO_GAMMA1_ION1.txt and WFC_NAO_K1_ION1.txt, etc.
1765
1757
@@ -1789,7 +1781,7 @@ These variables are used to control the output of properties.
1789
1781
1790
1782
-**Type**: Boolean \[Integer\](optional)
1791
1783
-**Description**: Whether to output the eigenvalues of the Hamiltonian matrix (in eV) into the running log during electronic iterations and into a file at the end of calculations. The former can be used with the 'out_freq_elec' parameter while the latter option allows the output precision to be set via a second parameter, with a default value of 8. The output file names are:
1792
-
- nspin = 1 or 4: `eigs1.txt`;
1784
+
- nspin = 1 or 4: `eig.txt`;
1793
1785
- nspin = 2: `eigs1.txt` and `eigs2.txt`;
1794
1786
- For more information, refer to the [band.md](../elec_properties/band.md)
1795
1787
-**Default**: False
@@ -1836,7 +1828,7 @@ These variables are used to control the output of properties.
1836
1828
1837
1829
-**Type**: Boolean \[Integer\](optional)
1838
1830
-**Availability**: Numerical atomic orbital basis
1839
-
-**Description**: Whether to print the upper triangular part of the Hamiltonian matrices and overlap matrices for each k-point into files in the directory `OUT.${suffix}`. The second number controls precision. For more information, please refer to [hs_matrix.md](../elec_properties/hs_matrix.md#out_mat_hs). Also controled by [out_interval](#out_interval) and [out_app_flag](#out_app_flag).
1831
+
-**Description**: Whether to print the upper triangular part of the Hamiltonian matrices and overlap matrices for each k-point into files in the directory `OUT.${suffix}`. The second number controls precision. For more information, please refer to [hs_matrix.md](../elec_properties/hs_matrix.md#out_mat_hs). Also controled by [out_freq_ion](#out_freq_ion) and [out_app_flag](#out_app_flag).
1840
1832
- For gamma only case:
1841
1833
- nspin = 1: `hks1_nao.txt` for the Hamiltonian matrix and `sks1_nao.txt` for the overlap matrix;
1842
1834
- nspin = 2: `hks1_nao.txt` and `hks2_nao.txt` for the Hamiltonian matrix and `sks1_nao.txt` for the overlap matrix. Note that the code will not output `sks2_nao.txt` because it is the same as `sks1_nao.txt`;
@@ -1880,7 +1872,7 @@ These variables are used to control the output of properties.
1880
1872
1881
1873
-**Type**: Boolean
1882
1874
-**Availability**: Numerical atomic orbital basis (not gamma-only algorithm)
1883
-
-**Description**: Generate files containing the kinetic energy matrix $T(R)$. The format will be the same as the Hamiltonian matrix $H(R)$ and overlap matrix $S(R)$ as mentioned in [out_mat_hs2](#out_mat_hs2). The name of the files will be `trs1_nao.csr` and so on. Also controled by [out_interval](#out_interval) and [out_app_flag](#out_app_flag).
1875
+
-**Description**: Generate files containing the kinetic energy matrix $T(R)$. The format will be the same as the Hamiltonian matrix $H(R)$ and overlap matrix $S(R)$ as mentioned in [out_mat_hs2](#out_mat_hs2). The name of the files will be `trs1_nao.csr` and so on. Also controled by [out_freq_ion](#out_freq_ion) and [out_app_flag](#out_app_flag).
1884
1876
-**Default**: False
1885
1877
-**Unit**: Ry
1886
1878
-**Note**: In the 3.10-LTS version, the file name is data-TR-sparse_SPIN0.csr.
@@ -1889,7 +1881,7 @@ These variables are used to control the output of properties.
1889
1881
1890
1882
-**Type**: Boolean
1891
1883
-**Availability**: Numerical atomic orbital basis (not gamma-only algorithm)
1892
-
-**Description**: Whether to print files containing the derivatives of the Hamiltonian matrix. The format will be the same as the Hamiltonian matrix $H(R)$ and overlap matrix $S(R)$ as mentioned in [out_mat_hs2](#out_mat_hs2). The name of the files will be `dhrxs1_nao.csr`, `dhrys1_nao.csr`, `dhrzs1_nao.csr` and so on. Also controled by [out_interval](#out_interval) and [out_app_flag](#out_app_flag).
1884
+
-**Description**: Whether to print files containing the derivatives of the Hamiltonian matrix. The format will be the same as the Hamiltonian matrix $H(R)$ and overlap matrix $S(R)$ as mentioned in [out_mat_hs2](#out_mat_hs2). The name of the files will be `dhrxs1_nao.csr`, `dhrys1_nao.csr`, `dhrzs1_nao.csr` and so on. Also controled by [out_freq_ion](#out_freq_ion) and [out_app_flag](#out_app_flag).
1893
1885
-**Default**: False
1894
1886
-**Unit**: Ry/Bohr
1895
1887
-**Note**: In the 3.10-LTS version, the file name is data-dHRx-sparse_SPIN0.csr and so on.
@@ -1898,7 +1890,7 @@ These variables are used to control the output of properties.
1898
1890
1899
1891
-**Type**: Boolean
1900
1892
-**Availability**: Numerical atomic orbital basis (not gamma-only algorithm)
1901
-
-**Description**: Whether to print files containing the derivatives of the overlap matrix. The format will be the same as the overlap matrix $dH(R)$ as mentioned in [out_mat_dh](#out_mat_dh). The name of the files will be `dsrxs1.csr` and so on. Also controled by [out_interval](#out_interval) and [out_app_flag](#out_app_flag). This feature can be used with `calculation get_s`.
1893
+
-**Description**: Whether to print files containing the derivatives of the overlap matrix. The format will be the same as the overlap matrix $dH(R)$ as mentioned in [out_mat_dh](#out_mat_dh). The name of the files will be `dsrxs1.csr` and so on. Also controled by [out_freq_ion](#out_freq_ion) and [out_app_flag](#out_app_flag). This feature can be used with `calculation get_s`.
1902
1894
-**Default**: False
1903
1895
-**Unit**: Ry/Bohr
1904
1896
-**Note**: In the 3.10-LTS version, the file name is data-dSRx-sparse_SPIN0.csr and so on.
@@ -1928,6 +1920,25 @@ These variables are used to control the output of properties.
1928
1920
-**Description**: Whether to print the expectation value of the angular momentum operator $\hat{L}_x$, $\hat{L}_y$, and $\hat{L}_z$ in the basis of the localized atomic orbitals. The files are named `OUT.${suffix}/${suffix}_Lx.dat`, `OUT.${suffix}/${suffix}_Ly.dat`, and `OUT.${suffix}/${suffix}_Lz.dat`. The second integer controls the precision of the output.
1929
1921
-**Default**: False 8
1930
1922
1923
+
### out_xc_r
1924
+
1925
+
-**Type**: Integer \[Integer\](optional)
1926
+
-**Description**:
1927
+
The first integer controls whether to output the exchange-correlation (in Bohr^-3) on real space grids using Libxc to folder `OUT.${suffix}`:
The meaning of the files is presented in [Libxc](https://libxc.gitlab.io/manual/libxc-5.1.x/)
1934
+
1935
+
The second integer controls the precision of the charge density output, if not given, will use `3` as default.
1936
+
1937
+
---
1938
+
The circle order of the charge density on real space grids is: x is the outer loop, then y and finally z (z is moving fastest).
1939
+
1940
+
-**Default**: -1 3
1941
+
1931
1942
### out_eband_terms
1932
1943
1933
1944
-**Type**: Boolean
@@ -1946,7 +1957,7 @@ These variables are used to control the output of properties.
1946
1957
1947
1958
-**Type**: Boolean
1948
1959
-**Availability**: Numerical atomic orbital basis
1949
-
-**Description**: Whether to print the Mulliken population analysis result into `OUT.${suffix}/mulliken.txt`. In molecular dynamics calculations, the output frequency is controlled by [out_interval](#out_interval).
1960
+
-**Description**: Whether to print the Mulliken population analysis result into `OUT.${suffix}/mulliken.txt`. In molecular dynamics calculations, the output frequency is controlled by [out_freq_ion](#out_freq_ion).
1950
1961
-**Default**: False
1951
1962
1952
1963
### out_app_flag
@@ -1963,12 +1974,6 @@ These variables are used to control the output of properties.
1963
1974
-**Description**: Controls the length of decimal part of output data, such as charge density, Hamiltonian matrix, Overlap matrix and so on.
1964
1975
-**Default**: 8
1965
1976
1966
-
### out_interval
1967
-
1968
-
-**Type**: Integer
1969
-
-**Description**: After self-consistent-field calculations, control the interval of ionic movements for printing properties. These properties cover charge density, local potential, electrostatic potential, Hamiltonian matrix, overlap matrix, density matrix, Mulliken population analysis and so on.
1970
-
-**Default**: 1
1971
-
1972
1977
### out_element_info
1973
1978
1974
1979
-**Type**: Boolean
@@ -2035,7 +2040,7 @@ These variables are used to control the output of properties.
2035
2040
The second integer controls the precision of the kinetic energy density output, if not given, will use `3` as default. For purpose restarting from this file and other high-precision involved calculation, recommend to use `10`.
2036
2041
2037
2042
---
2038
-
In molecular dynamics calculations, the output frequency is controlled by [out_interval](#out_interval).
2043
+
In molecular dynamics calculations, the output frequency is controlled by [out_freq_ion](#out_freq_ion).
0 commit comments