|
#define | bcOptSmFOS EXTERN_C_NAME(bcoptsmfos) |
|
#define | FOR_3D(i1, i2, i3, I1, I2, I3) int I1Base =I1.getBase(), I2Base =I2.getBase(), I3Base =I3.getBase(); int I1Bound=I1.getBound(), I2Bound=I2.getBound(), I3Bound=I3.getBound(); for(i3=I3Base; i3<=I3Bound; i3++) for(i2=I2Base; i2<=I2Bound; i2++) for(i1=I1Base; i1<=I1Bound; i1++) |
|
#define | FOR_3(i1, i2, i3, I1, I2, I3) I1Base =I1.getBase(), I2Base =I2.getBase(), I3Base =I3.getBase(); I1Bound=I1.getBound(), I2Bound=I2.getBound(), I3Bound=I3.getBound(); for(i3=I3Base; i3<=I3Bound; i3++) for(i2=I2Base; i2<=I2Bound; i2++) for(i1=I1Base; i1<=I1Bound; i1++) |
|
#define | exTrue(x, y, t) sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(-ky/(eps*cc)) |
|
#define | eyTrue(x, y, t) sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*( kx/(eps*cc)) |
|
#define | hzTrue(x, y, t) sin(twoPi*(kx*(x)+ky*(y)-cc*(t))) |
|
#define | exLaplacianTrue(x, y, t) sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(+ky*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc)) |
|
#define | eyLaplacianTrue(x, y, t) sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(-kx*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc)) |
|
#define | hzLaplacianTrue(x, y, t) sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*( -(twoPi*twoPi*(kx*kx+ky*ky) ) ) |
|
#define | hzGaussianPulse(xi) exp(-betaGaussianPlaneWave*((xi)*(xi))) |
|
#define | exGaussianPulse(xi) hzGaussianPulse(xi)*(-ky/(eps*cc)) |
|
#define | eyGaussianPulse(xi) hzGaussianPulse(xi)*( kx/(eps*cc)) |
|
#define | hzLaplacianGaussianPulse(xi) ((4.*betaGaussianPlaneWave*betaGaussianPlaneWave*(kx*kx+ky*ky))*xi*xi-(2.*betaGaussianPlaneWave*(kx*kx+ky*ky)))*exp(-betaGaussianPlaneWave*((xi)*(xi))) |
|
#define | exLaplacianGaussianPulse(xi) hzLaplacianGaussianPulse(xi,t)*(-ky/(eps*cc)) |
|
#define | eyLaplacianGaussianPulse(xi) hzLaplacianGaussianPulse(xi,t)*( kx/(eps*cc)) |
|
#define | exTrue3d(x, y, z, t) sin(twoPi*(kx*(x)+ky*(y)+kz*(z)-cc*(t)))*(-ky/(eps*cc)) |
|
#define | eyTrue3d(x, y, z, t) sin(twoPi*(kx*(x)+ky*(y)+kz*(z)-cc*(t)))*( kx/(eps*cc)) |
|
#define | ezTrue3d(x, y, z, t) 0 |
|
#define | hxTrue3d(x, y, z, t) 0 |
|
#define | hyTrue3d(x, y, z, t) 0 |
|
#define | hzTrue3d(x, y, z, t) sin(twoPi*(kx*(x)+ky*(y)+kz*(z)-cc*(t))) |
|
#define | exLaplacianTrue3d(x, y, z, t) sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(+ky*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc)) |
|
#define | eyLaplacianTrue3d(x, y, z, t) sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(-kx*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc)) |
|
#define | ezLaplacianTrue3d(x, y, z, t) 0 |
|
#define | hxLaplacianTrue3d(x, y, z, t) 0 |
|
#define | hyLaplacianTrue3d(x, y, z, t) 0 |
|
#define | hzLaplacianTrue3d(x, y, z, t) sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*( -(twoPi*twoPi*(kx*kx+ky*ky) ) ) |
|
#define | U(i0, i1, i2, i3) up[i0+uDim0*(i1+uDim1*(i2+uDim2*(i3)))] |
|
#define | X(i0, i1, i2, i3) xp[i0+xDim0*(i1+xDim1*(i2+xDim2*(i3)))] |
|
#define | U0(x, y, z, n, t) (vcenter[n-uc]*(t) + rx[n-uc]*((x)-xcenter) + ry[n-uc]*((y)-ycenter)) |
|
#define | U0T(x, y, z, n, t) (vcenter[n-uc] + rxt[n-uc]*((x)-xcenter) + ryt[n-uc]*((y)-ycenter)) |
|
#define | U0X(x, y, z, n, t) ( rx[n-uc] ) |
|
#define | U0Y(x, y, z, n, t) ( ry[n-uc] ) |
|
#define | dbc(s, a, side, axis) (pdbc[(s)+2*((a)+3*((side)+2*(axis)))]) |
|
#define | addBoundaryForcing(side, axis) (pAddBoundaryForcing[(side)+2*(axis)]) |
|
#define | bcfOffset(side, axis) pbcfOffset[(side)+2*(axis)] |
|
|
void | bcOptSmFOS (const int &nd, const int &nd1a, const int &nd1b, const int &nd2a, const int &nd2b, const int &nd3a, const int &nd3b, const int &gridIndexRange, real &u, const int &mask, const real &rsxy, const real &xy, const int &ndMatProp, const int &matIndex, const real &matValpc, const real &matVal, const real &det, const int &boundaryCondition, const int &addBoundaryForcing, const int &interfaceType, const int &dim, const real &bcf00, const real &bcf10, const real &bcf01, const real &bcf11, const real &bcf02, const real &bcf12, const real &bcf0, const int64_t &bcfOffset, const int &ndpin, const int &pinbc, const int &ndpv, const real &pinValues, const int &ipar, const real &rpar, const DataBase *pdb, const int &ierr) |
|