KERNEL TRUNCATION/IPAD: Difference between revisions

From VASP Wiki
No edit summary
No edit summary
Line 16: Line 16:
<pre>
<pre>
KERNEL_TRUNCATION {
KERNEL_TRUNCATION {
     LTRUNCATE     = T
     LTRUNCATE       = T
     IDIMENSIONALITY = 2
     IDIMENSIONALITY = 2
    ISURFACE        = 3
    IPAD            = 2
    FACTOR          = 1
}
</pre>
In this case an additional empty cell is added along the z direciton as padding. The coulomb interaction is truncated beyond a z length. This ensures maximum usage of the simulation box.
<pre>
KERNEL_TRUNCATION {
    LTRUNCATE      = T
    IDIMENSIONALITY = 2
    ISURFACE        = 3
     IPAD            = 1
     IPAD            = 1
    FACTOR          = 0.5
}
}
</pre>
</pre>


This corresponds to truncation along the surface normal (z-direction) for a 2D material with one layer of padding.
This corresponds to truncation along the surface normal (z-direction) for a 2D material with no padding and z/2 length for the coulomb truncation.
This setting corresponds to using coulomb truncation without padding. In this case half of the simulation box is in a sense wasted but the algorithm is simpler. This combination can be useful for debug.


== Related tags and articles ==
== Related tags and articles ==

Revision as of 08:17, 14 October 2025

KERNEL_TRUNCATION/IPAD = integer 

Default: KERNEL_TRUNCATION/IPAD = 3 if KERNEL_TRUNCATION/IDIMENSIONALITY = 0
= 2 if KERNEL_TRUNCATION/IDIMENSIONALITY = 2

Description: KERNEL_TRUNCATION/IPAD controls the padding strategy used for the Coulomb kernel truncation in reciprocal space. Padding defines how much additional empty space is introduced around the charge density before applying truncation.[1] This affects both the accuracy of the truncated Coulomb potential and the computational cost.


Setting KERNEL_TRUNCATION/IPAD allows fine control over how much zero-padding is applied along each reciprocal-space direction. Padding ensures that the truncated Coulomb kernel does not artificially interact with its periodic replicas in non-periodic directions.

Typically, increasing KERNEL_TRUNCATION/IPAD improves accuracy at the expense of computational cost.

Mind: KERNEL_TRUNCATION/LTRUNCATE must be set to .TRUE. for KERNEL_TRUNCATION/IPAD to have any effect.

Example

KERNEL_TRUNCATION {
     LTRUNCATE       = T
     IDIMENSIONALITY = 2
     ISURFACE        = 3
     IPAD            = 2
     FACTOR          = 1
}

In this case an additional empty cell is added along the z direciton as padding. The coulomb interaction is truncated beyond a z length. This ensures maximum usage of the simulation box.

KERNEL_TRUNCATION {
     LTRUNCATE       = T
     IDIMENSIONALITY = 2
     ISURFACE        = 3
     IPAD            = 1
     FACTOR          = 0.5
}

This corresponds to truncation along the surface normal (z-direction) for a 2D material with no padding and z/2 length for the coulomb truncation. This setting corresponds to using coulomb truncation without padding. In this case half of the simulation box is in a sense wasted but the algorithm is simpler. This combination can be useful for debug.

Related tags and articles

KERNEL_TRUNCATION/LTRUNCATE, KERNEL_TRUNCATION/IDIMENSIONALITY, KERNEL_TRUNCATION/LCOARSEN, KERNEL_TRUNCATION/ISURFACE

References