#include "datafunc.h" class FD { public: FD(); ~FD(); int init_res(double*,double*); int out_res(char*); void forward_sphere(sphere,int); void forward_cube(cube,int); private: double xmin,xmax,ymin,ymax,dx,dy; int M,N; double height; double** res; }; FD::FD() { res = NULL; } FD::~FD() { if(res!=NULL) { for (int i = 0; i < M; i++) delete[] res[i]; delete[] res; } } int FD::init_res(double* range,double* interval) { xmin = *range; xmax = *(range+1); ymin = *(range+2); ymax = *(range+3); height = *(range+4); height *= -1.0; dx = *interval; dy = *(interval+1); M = int (xmax - xmin)/dx + 1; N = int (ymax - ymin)/dy + 1; xmax = xmin + (M-1)*dx; ymax = ymin + (N-1)*dy; res = new double* [M]; for (int i=0;i