"""Access scheme that builds periodicity into the kernel, by introducing a condition on every load,
such that at the borders the periodic value is loaded. The periodicity is specified as a tuple of booleans, one for
"""Access scheme that builds periodicity into the kernel.
Introduces a condition on every load, such that at the borders the periodic value is loaded. The periodicity is specified as a tuple of booleans, one for
each direction. The second parameter `ghost_layers` specifies the number of assumed ghost layers of the field.
For the periodic kernel itself no ghost layers are required, however other kernels might need them.
"""
...
...
@@ -113,7 +95,7 @@ class PeriodicTwoFieldsAccessor(PdfFieldAccessor):
return[field(i)foriinrange(len(stencil))]
classAABBEvenTimeStepAccessor(PdfFieldAccessor):
classAAEvenTimeStepAccessor(PdfFieldAccessor):
@staticmethod
defread(field,stencil):
return[field(i)foriinrange(len(stencil))]
...
...
@@ -123,7 +105,7 @@ class AABBEvenTimeStepAccessor(PdfFieldAccessor):