Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Questions about orbital. #84

Open
dongsh0320 opened this issue Jan 2, 2025 · 6 comments
Open

Questions about orbital. #84

dongsh0320 opened this issue Jan 2, 2025 · 6 comments

Comments

@dongsh0320
Copy link

Dear developer,
From demo and another issue, for MoS2, I know that orbitals need to be 4 parts, [{"42 42": [0, 0]},..., {"42 42": [18, 18]}], [{"42 16": [0, 0]},..., {"42 16": [18, 12]}], [{"16 42": [0, 0]},..., {"16 42": [12, 18]}], and [{"16 16": [0, 0]},..., {"16 16": [12, 12]}].
Question 1: Does it mean we need to run deeph-train 4 times to get 4 trained models? And when to inference, we also need to use 4 trained models.
Question 2: If I want to study three-atom system, how do I write the orbital parameter? For two-atom system, we need $2 \times 2 = 4$ trained models. For three-atom system, we need $3 \times 3 = 9$ trained models, am I right?
obital:
[{"Z_1 Z_1": [0 0]},..., {"Z_1 Z_1": [n_1 n_1]}]
[{"Z_1 Z_2": [0 0]},..., {"Z_1 Z_2": [n_1 n_2]}]
[{"Z_1 Z_3": [0 0]},..., {"Z_1 Z_3": [n_1 n_3]}]
[{"Z_2 Z_1": [0 0]},..., {"Z_2 Z_1": [n_2 n_1]}]
[{"Z_2 Z_2": [0 0]},..., {"Z_2 Z_2": [n_2 n_2]}]
[{"Z_2 Z_3": [0 0]},..., {"Z_2 Z_3": [n_2 n_3]}]
[{"Z_3 Z_1": [0 0]},..., {"Z_3 Z_1": [n_3 n_1]}]
[{"Z_3 Z_2": [0 0]},..., {"Z_3 Z_2": [n_3 n_2]}]
[{"Z_3 Z_3": [0 0]},..., {"Z_3 Z_3": [n_3 n_3]}]

Thank you very muck!

@mzjb
Copy link
Owner

mzjb commented Jan 3, 2025

You can choose to use four models, a single model, or any other number of models for materials systems with two elements. In our paper, we used four models (which provide slightly higher accuracy), so the repository example includes configuration files for four models. The same applies to systems with three elements – whether to use 9 models, 1 model, or any other number is up to you.

@dongsh0320
Copy link
Author

Thank you for your timely reply.
I see. But for multi-element systems, the model can be particularly poor if it can't learn hopping between different elements, I guess.
In the process of learning DeepH, I met a new problem. When performing DFT calculations for MoS2, basis can be found such as Mo_gga_8au_100Ry_4s2p2d1f.orb. However in DeepH training, the orbital is 3s2p2d [0 0 0 1 1 2 2]. (If I remember correctly) It has been mentioned that the orbitals calculated by DFT should correspond to the orbitals when training, and DeepH does not currently support f orbital. Does this mean that when I performing DFT calculations, I only select the 3s2p2d orbitals from the basis function? Is there anything I need to pay attention to when specifying the orbitals?
I'm sorry that I'm also a beginner in DFT calculation. Could you please give me some guidance?
Looking forward to your reply, thank you very much!

@mzjb
Copy link
Owner

mzjb commented Jan 3, 2025

Regardless of the number of trained models used, DeepH must distinguish hopping between different element pairs.

DeepH does not restrict which orbitals can be used, so using such a basis set is fine.

@dongsh0320
Copy link
Author

Thank you for your timely reply.
Does that mean I can use Mo_gga_8au_100Ry_4s2p2d1f.orb for DFT calculation directly without restricting to 3s2p2d and then train a model using 3s2p2d?

@mzjb
Copy link
Owner

mzjb commented Jan 3, 2025

You should ensure that the orbitals are set to the same form during training if you use Mo_gga_8au_100Ry_4s2p2d1f.orb for calculations. Alternatively, you can consider using DeepH-E3, which provides more automated functionality, including selecting orbital forms automatically based on the DFT calculation results.

@dongsh0320
Copy link
Author

Thank you. I am also learning DeepH-E3 at the same time.
Thank you all for open sourcing such powerful packages.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants