| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| class(Abstract_Box_Size_Memento), | private, | pointer | :: | box_size_memento | => | null() | |
| integer, | private | :: | reci_numbers(num_dimensions) | = | 0 | ||
| real(kind=DP), | private | :: | permittivity | = | 0._DP | ||
| real(kind=DP), | private | :: | alpha_x_box_edge | = | 0._DP | ||
| real(kind=DP), | private, | 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_\alpha(\vec{k}) = \begin{cases} 0 & \text{if } \vec{k} = \vec{0} \\ \frac{e^{-k^2/4\alpha^2}}{2\epsilon V k^2} & \text{else} \end{cases} \]
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DES_Reci_Weight), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | n_1 | |||
| integer, | intent(in) | :: | n_2 | |||
| integer, | intent(in) | :: | n_3 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Null_DES_Reci_Weight), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | n_1 | |||
| integer, | intent(in) | :: | n_2 | |||
| integer, | intent(in) | :: | n_3 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DES_Reci_Weight), | intent(out) | :: | this | |||
| class(Abstract_Box_Size_Memento), | intent(in) | :: | box_size_memento | |||
| class(Abstract_Reciprocal_Lattice), | intent(in) | :: | reciprocal_lattice | |||
| class(Abstract_Permittivity), | intent(in) | :: | permittivity | |||
| class(Abstract_DES_Convergence_Parameter), | intent(in) | :: | alpha |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DES_Reci_Weight), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DES_Reci_Weight), | intent(inout) | :: | this | |||
| class(Abstract_Box_Size_Memento), | intent(in), | target | :: | box_size_memento |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DES_Reci_Weight), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Null_DES_Reci_Weight), | intent(out) | :: | this | |||
| class(Abstract_Box_Size_Memento), | intent(in) | :: | box_size_memento | |||
| class(Abstract_Reciprocal_Lattice), | intent(in) | :: | reciprocal_lattice | |||
| class(Abstract_Permittivity), | intent(in) | :: | permittivity | |||
| class(Abstract_DES_Convergence_Parameter), | intent(in) | :: | alpha |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Null_DES_Reci_Weight), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Null_DES_Reci_Weight), | intent(inout) | :: | this | |||
| class(Abstract_Box_Size_Memento), | intent(in), | target | :: | box_size_memento |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Null_DES_Reci_Weight), | intent(inout) | :: | this |