Realspace cutoff and lattice point generator utilities
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=wp), | private, | parameter | :: | cn_default | = | 30.0_wp |
Coordination number cutoff |
real(kind=wp), | private, | parameter | :: | disp2_default | = | 60.0_wp |
Two-body interaction cutoff |
real(kind=wp), | private, | parameter | :: | disp3_default | = | 40.0_wp |
Three-body interaction cutoff |
Create lattice points within a given cutoff
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(in) | :: | periodic(:) |
Periodic dimensions |
||
real(kind=wp), | intent(in) | :: | lat(:,:) |
Lattice parameters |
||
real(kind=wp), | intent(in) | :: | rthr |
Real space cutoff |
||
real(kind=wp), | intent(out), | allocatable | :: | trans(:,:) |
Generated lattice points |
Generate lattice points from repeatitions
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | lat(:,:) |
Lattice vectors |
||
integer, | intent(in) | :: | rep(:) |
Repeatitions of lattice points to generate |
||
logical, | intent(in) | :: | origin |
Include the origin in the generated lattice points |
||
real(kind=wp), | intent(out), | allocatable | :: | trans(:,:) |
Generated lattice points |
Collection of real space cutoffs
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=wp), | public | :: | cn | = | cn_default |
Coordination number cutoff |
|
real(kind=wp), | public | :: | disp2 | = | disp2_default |
Two-body interaction cutoff |
|
real(kind=wp), | public | :: | disp3 | = | disp3_default |
Three-body interaction cutoff |
Create lattice points within a given cutoff
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical, | intent(in) | :: | periodic(:) |
Periodic dimensions |
||
real(kind=wp), | intent(in) | :: | lat(:,:) |
Lattice parameters |
||
real(kind=wp), | intent(in) | :: | rthr |
Real space cutoff |
||
real(kind=wp), | intent(out), | allocatable | :: | trans(:,:) |
Generated lattice points |
Generate lattice points from repeatitions
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | lat(:,:) |
Lattice vectors |
||
integer, | intent(in) | :: | rep(:) |
Repeatitions of lattice points to generate |
||
logical, | intent(in) | :: | origin |
Include the origin in the generated lattice points |
||
real(kind=wp), | intent(out), | allocatable | :: | trans(:,:) |
Generated lattice points |
Generate a supercell based on a realspace cutoff, this subroutine doesn’t know anything about the convergence behaviour of the associated property.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | lat(3,3) | |||
real(kind=wp), | intent(in) | :: | rthr | |||
integer, | intent(out) | :: | rep(3) |