#include "cstd.h" /** eta = PML profiles, = 0 in physical region on each axis eta[axis][index] - note different lengths on different axes ep = 1 - dt^2 eta epp = 1/(1 + dt^2 eta) precomputed arrays, stored in fdpars maxoff = half-order c[axis][offset] = FD coefficient arrays, stored in fdpars */ void asg_pstep3d(float *** restrict bulk, float *** restrict p0, float *** restrict p1, float *** restrict p2, float *** restrict v0, float *** restrict v1, float *** restrict v2, float ** restrict ep, float ** restrict epp, float * restrict sdiv, int * gsc, int * gec, int * lbc, int * rbc, int maxoff, float ** restrict c) { int i0, i1, i2; int ioff; for (i2=gsc[2]; i2 <= gec[2]; i2++) { for (i1=gsc[1]; i1 <= gec[1]; i1++) { for (i0=gsc[0]; i0 <= gec[0]; i0++) sdiv[i0]=0.0f; for (ioff = 0; ioff