| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| class(Abstract_Periodic_Box), | private, | pointer | :: | periodic_box | => | null() | |
| integer, | private | :: | reci_numbers(num_dimensions) | = | 0 | ||
| real(kind=DP), | private | :: | permittivity | = | 0._DP | ||
| real(kind=DP), | private, | dimension(:, :), allocatable | :: | weight |
| procedure, public :: construct => Abstract_construct | |
| procedure, public :: destroy => Abstract_destroy | |
| procedure, public :: target => Abstract_target | |
| procedure, public :: reset => Abstract_reset | |
| procedure, public :: get => Abstract_get |
\[ w(\vec{k}_{1:2}) = \begin{cases} 0 & \text{if } \vec{k}_{1:2} = \vec{0} \\ \frac{1}{2\epsilon S} \frac{1}{k_{1:2} (e^{k_{1:2} L_3} - 1)} & \text{else} \end{cases} \]
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Weight), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | n_1 | |||
| integer, | intent(in) | :: | n_2 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Null_DLC_Weight), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | n_1 | |||
| integer, | intent(in) | :: | n_2 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Weight), | intent(out) | :: | this | |||
| class(Abstract_Periodic_Box), | intent(in) | :: | periodic_box | |||
| class(Abstract_Reciprocal_Lattice), | intent(in) | :: | reciprocal_lattice | |||
| class(Abstract_Permittivity), | intent(in) | :: | permittivity |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Weight), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Weight), | intent(inout) | :: | this | |||
| class(Abstract_Periodic_Box), | intent(in), | target | :: | periodic_box |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Weight), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Null_DLC_Weight), | intent(out) | :: | this | |||
| class(Abstract_Periodic_Box), | intent(in) | :: | periodic_box | |||
| class(Abstract_Reciprocal_Lattice), | intent(in) | :: | reciprocal_lattice | |||
| class(Abstract_Permittivity), | intent(in) | :: | permittivity |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Null_DLC_Weight), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Null_DLC_Weight), | intent(inout) | :: | this | |||
| class(Abstract_Periodic_Box), | intent(in), | target | :: | periodic_box |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Null_DLC_Weight), | intent(inout) | :: | this |