| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(out) | :: | this | |||
| class(Abstract_Periodic_Box), | intent(in) | :: | periodic_box | |||
| class(Abstract_Reciprocal_Lattice), | intent(in) | :: | reciprocal_lattice | |||
| type(Component_Wrapper), | intent(in) | :: | components(:) | |||
| logical, | intent(in) | :: | are_dipolar(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(inout) | :: | this | |||
| class(Abstract_Periodic_Box), | intent(in), | target | :: | periodic_box | ||
| type(Component_Wrapper), | intent(in), | target | :: | components(:) |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(inout) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | i_component |
Structure factors \[ S_\pm(\vec{k}_{1:2}) = \sum_{\vec{x}, \vec{\mu}} (\pm k_{1:2} \mu_3 + i \vec{k}_{1:2} \cdot \vec{\mu}_{1:2}) e^{\pm k_{1:2} x_3} e^{i \vec{k}_{1:2} \cdot \vec{x}_{1:2}} \]
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | n_1 | |||
| integer, | intent(in) | :: | n_2 |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | n_1 | |||
| integer, | intent(in) | :: | n_2 |
Structure factors update when a particle is translated: \( (\vec{x}, \vec{\mu}) \to (\vec{x}^\prime, \vec{\mu}) \). \[ \Delta S_\pm(\vec{k}_{1:2}) = (\pm k_{1:2} \mu_3 + i \vec{k}_{1:2} \cdot \vec{\mu}_{1:2}) \left( e^{\pm k_{1:2} x^\prime_3} e^{i \vec{k}_{1:2} \cdot \vec{x}^\prime_{1:2}} - e^{\pm k_{1:2} x_3} e^{i \vec{k}_{1:2} \cdot \vec{x}_{1:2}} \right) \] Warning: only half wave vectors are updated.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(inout) | :: | this | |||
| integer, | intent(in) | :: | i_component | |||
| real(kind=DP), | intent(in) | :: | new_position(:) | |||
| type(Concrete_Particle), | intent(in) | :: | old |
Structure factors update when a particle is transmuted: \( (\vec{x}, \vec{\mu}) \to (\vec{x}, \vec{\mu}^\prime) \). \[ \Delta S_\pm(\vec{k}_{1:2}) = \left[ \pm k_{1:2} (\mu^\prime_3 - \mu_3) + i \vec{k}_{1:2} \cdot (\vec{\mu}^\prime_{1:2} - \vec{\mu}_{1:2}) \right] e^{\pm k_{1:2} x_3} e^{i \vec{k}_{1:2} \cdot \vec{x}_{1:2}} \] Warning: only half wave vectors are updated.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(inout) | :: | this | |||
| integer, | intent(in) | :: | ij_components(:) | |||
| real(kind=DP), | intent(in) | :: | new_dipole_moment(:) | |||
| type(Concrete_Particle), | intent(in) | :: | old |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(inout) | :: | this | |||
| integer, | intent(in) | :: | i_component | |||
| real(kind=DP), | intent(in) | :: | new_dipole_moment(:) | |||
| type(Concrete_Particle), | intent(in) | :: | old |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(inout) | :: | this | |||
| integer, | intent(in) | :: | i_component | |||
| type(Concrete_Particle), | intent(in) | :: | particle |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(inout) | :: | this | |||
| integer, | intent(in) | :: | i_component | |||
| type(Concrete_Particle), | intent(in) | :: | particle |
Structure factors update when 2 particles of coordinates \( (\vec{x}_1, \vec{\mu}_1) \) and \( (\vec{x}_2, \vec{\mu}_2) \) are switched. \[ \Delta S_\pm(\vec{k}_{1:2}) = \left[ \pm k_{1:2} (\mu_{1, 3} - \mu_{2, 3}) + i \vec{k}_{1:2} \cdot (\vec{\mu}_{1, 1:2} - \vec{\mu}_{2, 1:2}) \right] \\ \left( e^{\pm k_{1:2} x_{2, 3}} e^{i \vec{k}_{1:2} \cdot \vec{x}_{2, 1:2}} - e^{\pm k_{1:2} x_{1, 3}} e^{i \vec{k}_{1:2} \cdot \vec{x}_{1, 1:2}} \right) \]
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Abstract_DLC_Structures), | intent(inout) | :: | this | |||
| integer, | intent(in) | :: | ij_components(:) | |||
| type(Concrete_Particle), | intent(in) | :: | particles(:) |