ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/SHAPES/SphereHarm.hpp
Revision: 1360
Committed: Tue Jul 20 20:02:15 2004 UTC (19 years, 11 months ago) by gezelter
File size: 1356 byte(s)
Log Message:
Changes for CGI and for gengetopts --unamed-opt="PDBFILE"

File Contents

# Content
1 #ifndef __SPHEREHARM_HPP__
2 #define __SPHEREHARM_HPP__
3
4 #include <errno.h>
5 #include <math.h>
6 #include <stdio.h>
7 #include <stdlib.h>
8 #include <string.h>
9 #include <vector>
10 #include <iostream>
11 #include <fstream>
12
13 #include "fftw3.h"
14 #include "cospmls.h"
15 #include "makeweights.h"
16 #include "FST_semi_memo.h"
17 #include "SHFunc.hpp"
18
19 using namespace std;
20
21 class SphereHarm{
22
23 public:
24 SphereHarm( int bandWidth );
25 virtual ~SphereHarm();
26 void doTransforms(vector<double> gridData);
27 void printShapesFileStart(char name[200], char particle[80], double mass,
28 double momInert[3][3]);
29 void printShapesStreamStart(ostream& shapes, char particle[80], double mass,
30 double momInert[3][3]);
31 void printToShapesFile(char name[200], int index, double tolVal);
32 void printToShapesStream(ostream& shapes, int index, double tolVal);
33 double normFactor(int L, int M);
34 double factorialFunc(double n);
35
36 protected:
37 int l, m;
38 int dummy1, dummy2, nfuncs;
39
40 int bw, size;
41 int cutoff, order;
42 int rank, howmany_rank;
43 double *rdata, *idata;
44 double *rcoeffs, *icoeffs;
45 double *weights;
46 double *seminaive_naive_tablespace, *workspace;
47 double **seminaive_naive_table;
48 double tstart, tstop;
49 double biggest, cm, sm;
50 fftw_plan dctPlan, fftPlan;
51 fftw_iodim dims[1], howmany_dims[1];
52
53 };
54
55 #endif