aboutsummaryrefslogtreecommitdiff
path: root/boltzgen/kernel/memory/layout/SOA.py
blob: 05e9e84d8c785f8389af141e36e15e9dbba5513a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class SOA:
    def __init__(self, descriptor, index, geometry):
        self.descriptor = descriptor
        self.index    = index(geometry)
        self.geometry = geometry

    def cell_preshift(self, gid):
        return gid

    def pop_offset(self, i):
        return i * self.geometry.volume

    def neighbor_offset(self, c_i):
        return self.index.neighbor(c_i)