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

Adding support for CASTEP #20

Merged
merged 16 commits into from
Jun 13, 2023
Merged

Adding support for CASTEP #20

merged 16 commits into from
Jun 13, 2023

Conversation

zhubonan
Copy link
Contributor

This PR brings various improvements, notably:

  • Added support for CASTEP with abstractions for potential support of other plane wave codes in the future.
  • Now using time-reversal symmetry to further reduce the number of supercell kpoints requested for a primitive cell path.
  • Documentation update.
  • Test cases are updated with reduce supercell size. Wave function data are now stored directly in the repository and does not require external hosting. The relative small sizes of the wave function files (<10MB) are acceptable, for now.

This abstract away details of reading wavefunction. Pave way for
CASTEP support.
Only for collinear spin, non-gamma-only calculations.
Still missing interfaces for generating the kpoints files.
Need to enable it in the commandline interface.
The two primiary functions read_kpoints and write_kpoints dispatches
to code-specific functions.
This allows including the test data directly in the repository.
Test with 211 supercell of Si instead of 222
Time reversal symmetry can be used to reduce the number of kpoints
in the supercell. This because kpoints that are NOT related by
time reversal symmetry may have the related K in the supercell
related by time reversal.

This reduces the number of kpoints sampled in the supercell. Backward
compatility should be maintained as the change only affects the number
of SC kpoints generated initially.

Kpoints in the wavefunction are checked for equivalent taking account
of time reversal symmetry, if applicable.
@codecov
Copy link

codecov bot commented Jun 13, 2023

Codecov Report

Merging #20 (c0e122a) into main (be4a8ba) will decrease coverage by 0.27%.
The diff coverage is 91.04%.

@@            Coverage Diff             @@
##             main      #20      +/-   ##
==========================================
- Coverage   88.63%   88.37%   -0.27%     
==========================================
  Files           8       10       +2     
  Lines        1399     1608     +209     
==========================================
+ Hits         1240     1421     +181     
- Misses        159      187      +28     
Impacted Files Coverage Δ
easyunfold/effective_mass.py 86.11% <ø> (ø)
easyunfold/unfold.py 85.62% <85.24%> (-2.47%) ⬇️
easyunfold/cli.py 88.07% <87.50%> (-1.36%) ⬇️
easyunfold/wavefun.py 91.56% <91.56%> (ø)
easyunfold/utils.py 93.78% <93.78%> (ø)
easyunfold/__init__.py 100.00% <100.00%> (ø)

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@zhubonan zhubonan merged commit 8fc881b into main Jun 13, 2023
@zhubonan zhubonan deleted the pr-wfc-support branch June 13, 2023 16:14
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

Successfully merging this pull request may close these issues.

1 participant