00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00012
00013
00014
00015 #ifndef STARLAB_GRAPE6_H
00016 # define STARLAB_GRAPE6_H
00017
00018 extern "C" void g6_set_tunit_(int *new_tunit);
00019 extern "C" void g6_set_xunit_(int *new_xunit);
00020
00021 extern "C" int g6_open_(int *cluster_id);
00022 extern "C" int g6_close_(int *cluster_id);
00023
00024 extern "C" int g6_reset_(int *cluster_id);
00025 extern "C" int g6_reset_fofpga_(int *cluster_id);
00026
00027 extern "C" int g6_npipes_();
00028
00029 extern "C" void g6_set_ti_(int *cluster_id, double *ti);
00030 extern "C" int g6_set_j_particle_(int *cluster_id,
00031 int *address,
00032 int *index,
00033 double *tj,
00034 double *dtj,
00035 double *mass,
00036 double k18[3],
00037 double j6[3],
00038 double a2[3],
00039 double v[3],
00040 double x[3]);
00041
00042
00043
00044
00045
00046 extern "C" void g6calc_firsthalf_(int *cluster_id,
00047 int *nj,
00048 int *ni,
00049 int index[],
00050 vec xi[],
00051 vec vi[],
00052 vec aold[],
00053 vec j6old[],
00054 double phiold[],
00055 double *eps2,
00056 double h2[]);
00057
00058 extern "C" int g6calc_lasthalf_(int *cluster_id,
00059 int *nj,
00060 int *ni,
00061 int index[],
00062 vec xi[],
00063 vec vi[],
00064 double *eps2,
00065 double h2[],
00066 vec acc[],
00067 vec jerk[],
00068 double pot[]);
00069
00070 extern "C" int g6calc_lasthalf2_(int *cluster_id,
00071 int *nj,
00072 int *ni,
00073 int index[],
00074 vec xi[],
00075 vec vi[],
00076 double *eps2,
00077 double h2[],
00078 vec acc[],
00079 vec jerk[],
00080 double pot[],
00081 int nnbindex[]);
00082
00083 extern "C" int g6_read_neighbour_list_(int *cluster_id);
00084 extern "C" int g6_read_neighbour_list_old_(int *cluster_id);
00085
00086 extern "C" int g6_get_neighbour_list_(int *cluster_id,
00087 int *pipe,
00088 int *max_length,
00089 int *nblen,
00090 int nbl[]);
00091
00092 extern "C" int g6_initialize_jp_buffer_(int *clusterid, int *size);
00093 extern "C" int g6_flush_jp_buffer_(int *clusterid);
00094
00095 #endif
00096
00097
00098
00099
00100
00101
00102