ase:jacapo:pdos
差分
このページの2つのバージョン間の差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
| ase:jacapo:pdos [2019/05/24 16:41] – 作成 kimi | ase:jacapo:pdos [2022/08/23 13:34] (現在) – 外部編集 127.0.0.1 | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| ====== Projected DOS related method ====== | ====== Projected DOS related method ====== | ||
| + | ===== Atom-projected DOS ===== | ||
| + | < | ||
| + | get_ados(self, | ||
| + | attempt at maintaining backward compatibility with get_ados | ||
| + | returning data | ||
| + | |||
| + | Now when we call calc.get_ados() it will return settings, | ||
| + | |||
| + | get_ados_data(self, | ||
| + | get atom projected data | ||
| + | |||
| + | : | ||
| + | |||
| + | atoms | ||
| + | list of atom indices (integers) | ||
| + | |||
| + | orbitals | ||
| + | list of strings | ||
| + | [' | ||
| + | [' | ||
| + | [' | ||
| + | |||
| + | cutoff : string | ||
| + | cutoff radius you want the results for ' | ||
| + | |||
| + | spin | ||
| + | : list of integers | ||
| + | spin you want the results for [0] or [1] or [0,1] for both | ||
| + | |||
| + | returns (egrid, ados) | ||
| + | egrid has the fermi level at 0 eV | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | < | ||
| + | set_ados(self, | ||
| + | setup calculation of atom-projected density of states | ||
| + | |||
| + | : | ||
| + | |||
| + | energywindow : (float, float) | ||
| + | sets (emin,emax) in eV referenced to the Fermi level | ||
| + | |||
| + | energywidth : float | ||
| + | the gaussian used in smearing | ||
| + | |||
| + | npoints : integer | ||
| + | the number of points to sample the DOS at | ||
| + | |||
| + | cutoff : float | ||
| + | the cutoff radius in angstroms for the integration. | ||
| + | </ | ||
| + | ===== Multicentered projected dos ===== | ||
| + | |||
| + | < | ||
| + | get_mdos(self) | ||
| + | return multicentered projected dos parameters | ||
| + | |||
| + | get_mdos_data(self, | ||
| + | returns data from multicentered projection | ||
| + | |||
| + | |||
| + | returns (mdos, rotmat) | ||
| + | |||
| + | the rotation matrices are retrieved from the text file. I am | ||
| + | not sure what you would do with these, but there was a note | ||
| + | about them in the old documentation so I put the code to | ||
| + | retrieve them here. the syntax for the return value is: | ||
| + | rotmat[atom# | ||
| + | center on the atom# for label. I do not not know what the | ||
| + | label refers to. | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | < | ||
| + | set_mdos(self, | ||
| + | Setup multicentered projected DOS. | ||
| + | |||
| + | mcenters | ||
| + | a list of tuples containing (atom#, | ||
| + | (0,0,0,1.0) specifies (atom 0, l=0, m=0, weight=1.0) an s orbital | ||
| + | on atom 0 | ||
| + | |||
| + | (1,1,1,1.0) specifies (atom 1, l=1, m=1, weight=1.0) a p orbital | ||
| + | with m = +1 on atom 0 | ||
| + | |||
| + | l=0 s-orbital | ||
| + | l=1 p-orbital | ||
| + | l=2 d-orbital | ||
| + | |||
| + | m in range of ( -l ... 0 ... +l ) | ||
| + | |||
| + | The direction cosines for which the spherical harmonics are | ||
| + | set up are using the next different atom in the list | ||
| + | (cyclic) as direction pointer, so the z-direction is chosen | ||
| + | along the direction to this next atom. At the moment the | ||
| + | rotation matrices is only given in the text file, you can | ||
| + | use grep' | ||
| + | |||
| + | adapated from old MultiCenterProjectedDOS.py | ||
| + | </ | ||
ase/jacapo/pdos.1558683712.txt.gz · 最終更新: (外部編集)