This file contains macros to load elements of single sites of a field.
More...
#include <stdlib.h>
Go to the source code of this file.
|
#define | coord_to_index(ix, mu) |
|
#define | index_to_coord(i, ix, mu) |
|
#define | _FIELD_AT(s, i) |
|
#define | _3FIELD_AT(s, i, mu) |
|
#define | _4FIELD_AT(s, i, mu) |
|
#define | _6FIELD_AT(s, i, mu) |
|
#define | _DFIELD_AT(s, i, mu, size) |
|
#define | _FIELD_AT_PTR(s, i, _master_shift) |
|
#define | _4FIELD_AT_PTR(s, __i, mu, _master_shift) |
|
#define | _3FIELD_AT_PTR(s, i, mu, _master_shift) |
|
#define | _6FIELD_AT_PTR(s, i, mu, _master_shift) |
|
#define | _DFIELD_AT_PTR(s, i, mu, _master_shift, __size) |
|
#define | _FIELD_BLK(s, i) |
|
#define | _4FIELD_BLK(s, i) |
|
#define | _DFIELD_BLK(s, i, size) |
|
#define | _BUF_FIELD_BLK(s, i) |
|
#define | _BUF_4FIELD_BLK(s, i) |
|
#define | _BUF_DFIELD_BLK(s, i, _size) |
|
This file contains macros to load elements of single sites of a field.
◆ _3FIELD_AT
#define _3FIELD_AT |
( |
| s, |
|
|
| i, |
|
|
| mu ) |
Value:(((s)->ptr) + ((i - (s)->type->master_shift) * 3 + mu))
◆ _3FIELD_AT_PTR
#define _3FIELD_AT_PTR |
( |
| s, |
|
|
| i, |
|
|
| mu, |
|
|
| _master_shift ) |
Value:(s + ((i - _master_shift) * 3 + mu))
◆ _4FIELD_AT
#define _4FIELD_AT |
( |
| s, |
|
|
| i, |
|
|
| mu ) |
Value:(((s)->ptr) + coord_to_index(i - (s)->type->master_shift, mu))
◆ _4FIELD_AT_PTR
#define _4FIELD_AT_PTR |
( |
| s, |
|
|
| __i, |
|
|
| mu, |
|
|
| _master_shift ) |
Value:(s + coord_to_index(__i - _master_shift, mu))
◆ _4FIELD_BLK
#define _4FIELD_BLK |
( |
| s, |
|
|
| i ) |
Value:(((s)->ptr) + 4 * ((s)->type->master_start[(i)] - (s)->type->master_shift))
◆ _6FIELD_AT
#define _6FIELD_AT |
( |
| s, |
|
|
| i, |
|
|
| mu ) |
Value:(((s)->ptr) + ((i - (s)->type->master_shift) * 6 + mu))
◆ _6FIELD_AT_PTR
#define _6FIELD_AT_PTR |
( |
| s, |
|
|
| i, |
|
|
| mu, |
|
|
| _master_shift ) |
Value:(s + ((i - _master_shift) * 6 + mu))
◆ _BUF_4FIELD_BLK
#define _BUF_4FIELD_BLK |
( |
| s, |
|
|
| i ) |
Value:(((s)->ptr) + 4 * ((s)->type->rbuf_start[(i)]))
◆ _BUF_DFIELD_BLK
#define _BUF_DFIELD_BLK |
( |
| s, |
|
|
| i, |
|
|
| _size ) |
Value:(((s)->ptr) + (_size) * ((s)->type->rbuf_start[(i)] - (s)->type->master_shift))
◆ _BUF_FIELD_BLK
#define _BUF_FIELD_BLK |
( |
| s, |
|
|
| i ) |
Value:(((s)->ptr) + ((s)->type->rbuf_start[(i)] - (s)->type->master_shift))
◆ _DFIELD_AT
#define _DFIELD_AT |
( |
| s, |
|
|
| i, |
|
|
| mu, |
|
|
| size ) |
Value: ((size == 4) ? _4FIELD_AT(s, i, mu) : ((s)->ptr + ((i - (s)->type->master_shift) * size + mu)))
◆ _DFIELD_AT_PTR
#define _DFIELD_AT_PTR |
( |
| s, |
|
|
| i, |
|
|
| mu, |
|
|
| _master_shift, |
|
|
| __size ) |
Value: ((__size == 4) ? _4FIELD_AT_PTR(s, i, mu, _master_shift) : (s + ((i - _master_shift) * __size + mu)))
◆ _DFIELD_BLK
#define _DFIELD_BLK |
( |
| s, |
|
|
| i, |
|
|
| size ) |
Value:(((s)->ptr) + size * ((s)->type->master_start[(i)] - (s)->type->master_shift))
◆ _FIELD_AT
#define _FIELD_AT |
( |
| s, |
|
|
| i ) |
Value:(((s)->ptr) + i - (s)->type->master_shift)
◆ _FIELD_AT_PTR
#define _FIELD_AT_PTR |
( |
| s, |
|
|
| i, |
|
|
| _master_shift ) |
◆ _FIELD_BLK
#define _FIELD_BLK |
( |
| s, |
|
|
| i ) |
Value:(((s)->ptr) + ((s)->type->master_start[(i)]) - (s)->type->master_shift)
◆ coord_to_index
#define coord_to_index |
( |
| ix, |
|
|
| mu ) |
◆ index_to_coord
#define index_to_coord |
( |
| i, |
|
|
| ix, |
|
|
| mu ) |
Value: (mu) = ((i) & 3); \
(ix) = ((i) >> 2)