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

A proposal for new Hamiltonian constructor #2

Open
mariya-nasution opened this issue Nov 18, 2018 · 1 comment
Open

A proposal for new Hamiltonian constructor #2

mariya-nasution opened this issue Nov 18, 2018 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@mariya-nasution
Copy link

Currently, we must pass a list of pseudopotentials to Hamiltonian constructor as positional parameters:

Ham = Hamiltonian( atoms, pspfiles, ecutwfc )

If we want to use all-electrons calculation, we use the following constructor (with pspfiles removed):

Ham = Hamiltonian( atoms, ecutwfc )

I think it is good to use ecutwfc as the first positional argument and use keyword parameters to specify other arguments. I also think it is very convenient to have keyword pspset = "GTH-PADE" or similar and let the constructor choose pseudopotential based on list of atomic species.

Ham = Hamiltonian( ecutwfc, atoms, pspset="GTH-PADE" )

Having to specify pspfiles manually while we have a standardized set of pseudopotentials is rather tedious for me.

@f-fathurrahman f-fathurrahman self-assigned this Nov 27, 2018
@f-fathurrahman f-fathurrahman added the enhancement New feature or request label Nov 27, 2018
@f-fathurrahman
Copy link
Owner

I think atoms::Atoms will still be the first positional argument.

Meanwhile ecutwfc might become keyword argument as it is only particular to plane wave basis set. This will apparent when we extend Hamiltonian to other basis sets.

I also think that using pspset keyword is a good idea.

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

No branches or pull requests

2 participants