acou3db4.cpp
来自「c++经典教材 Blitz++ v0.8」· C++ 代码 · 共 29 行
CPP
29 行
#include <blitz/array.h>#include <blitz/array/stencils.h>BZ_USING_NAMESPACE(blitz)void setupInitialConditions(Array<float,3>& P1, Array<float,3>& P2, Array<float,3>& P3, Array<float,3>& c, int N);BZ_DECLARE_STENCIL4(acoustic3D, P1, P2, P3, c) P3 = 2 * P2 + c * Laplacian3D(P2) - P1;BZ_END_STENCILfloat acoustic3D_BlitzStencil(int N, int niters){ Array<float,3> P1, P2, P3, c; allocateArrays(shape(N,N,N), P1, P2, P3, c); setupInitialConditions(P1, P2, P3, c, N); for (int iter=0; iter < niters; ++iter) { applyStencil(acoustic3D(), P1, P2, P3, c); cycleArrays(P1, P2, P3); } return P1(N/2,N/2,N/2);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?