4 * This source code is part of
8 * GROningen MAchine for Chemical Simulations
12 * Copyright (c) 1991-2001
13 * BIOSON Research Institute, Dept. of Biophysical Chemistry
14 * University of Groningen, The Netherlands
16 * This program is free software; you can redistribute it and/or
17 * modify it under the terms of the GNU General Public License
18 * as published by the Free Software Foundation; either version 2
19 * of the License, or (at your option) any later version.
21 * If you want to redistribute modifications, please consider that
22 * scientific software is very special. Version control is crucial -
23 * bugs must be traceable. We will be happy to consider code for
24 * inclusion in the official distribution, but derived work must not
25 * be called official GROMACS. Details are found in the README & COPYING
26 * files - if they are missing, get the official version at www.gromacs.org.
28 * To help us fund GROMACS development, we humbly ask that you cite
29 * the papers on the package - you can find them in the top README file.
31 * Do check out http://www.gromacs.org , or mail us at gromacs@gromacs.org .
34 * Giving Russians Opium May Alter Current Situation
40 static char *SRCID_x86_3dnow_h = "$Id$";
45 #if (defined USE_3DNOW && !defined DOUBLE)
48 void vecinvsqrt_3dnow(float in[],float out[],int n);
49 void vecrecip_3dnow(float in[],float out[],int n);
52 void inl0100_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
53 float shiftvec[],float fshift[],int gid[],float pos[],
54 float faction[],int type[],int ntype,float nbfp[],
56 void inl0110_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
57 float shiftvec[],float fshift[],int gid[],float pos[],
58 float faction[],int type[],int ntype,float nbfp[],
59 float Vnb[], int nsatoms[]);
60 void inl0300_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
61 float shiftvec[],float fshift[],int gid[],float pos[],
62 float faction[],int type[],int ntype,float nbfp[],
63 float Vnb[],float tabscale,float VFtab[]);
64 void inl0310_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
65 float shiftvec[],float fshift[],int gid[],float pos[],
66 float faction[],int type[],int ntype,float nbfp[],
67 float Vnb[],float tabscale,float VFtab[], int nsatoms[]);
68 void inl1000_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
69 float shiftvec[],float fshift[],int gid[],float pos[],
70 float faction[],float charge[],float facel,float Vc[]);
71 void inl1010_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
72 float shiftvec[],float fshift[],int gid[],float pos[],
73 float faction[],float charge[],float facel, float Vc[],
75 void inl1020_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
76 float shiftvec[],float fshift[],int gid[],float pos[],
77 float faction[],float charge[],float facel,float Vc[]);
78 void inl1030_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
79 float shiftvec[],float fshift[],int gid[],float pos[],
80 float faction[],float charge[],float facel,float Vc[]);
81 void inl1100_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
82 float shiftvec[],float fshift[],int gid[],float pos[],
83 float faction[],float charge[],float facel,float Vc[],
84 int type[],int ntype,float nbfp[],float Vnb[]);
85 void inl1110_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
86 float shiftvec[],float fshift[],int gid[],float pos[],
87 float faction[],float charge[],float facel,float Vc[],
88 int type[],int ntype,float nbfp[],float Vnb[],
90 void inl1120_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
91 float shiftvec[],float fshift[],int gid[],float pos[],
92 float faction[],float charge[],float facel,float Vc[],
93 int type[],int ntype,float nbfp[],float Vnb[]);
94 void inl1130_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
95 float shiftvec[],float fshift[],int gid[],float pos[],
96 float faction[],float charge[],float facel,float Vc[],
97 int type[],int ntype,float nbfp[],float Vnb[]);
98 void inl3000_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
99 float shiftvec[],float fshift[],int gid[],float pos[],
100 float faction[],float charge[],float facel,float Vc[],
101 float tabscale,float VFtab[]);
102 void inl3010_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
103 float shiftvec[],float fshift[],int gid[],float pos[],
104 float faction[],float charge[],float facel,float Vc[],
105 float tabscale,float VFtab[], int nsatoms[]);
106 void inl3020_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
107 float shiftvec[],float fshift[],int gid[],float pos[],
108 float faction[],float charge[],float facel,float Vc[],
109 float tabscale,float VFtab[]);
110 void inl3030_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
111 float shiftvec[],float fshift[],int gid[],float pos[],
112 float faction[],float charge[],float facel,float Vc[],
113 float tabscale,float VFtab[]);
114 void inl3100_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
115 float shiftvec[],float fshift[],int gid[],float pos[],
116 float faction[],float charge[],float facel,float Vc[],
117 int type[],int ntype,float nbfp[],float Vnb[],
118 float tabscale, float VFtab[]);
119 void inl3110_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
120 float shiftvec[],float fshift[],int gid[],float pos[],
121 float faction[],float charge[],float facel,float Vc[],
122 int type[],int ntype,float nbfp[],float Vnb[],
123 float tabscale, float VFtab[], int nsatoms[]);
124 void inl3120_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
125 float shiftvec[],float fshift[],int gid[],float pos[],
126 float faction[],float charge[],float facel,float Vc[],
127 int type[],int ntype,float nbfp[],float Vnb[],
128 float tabscale, float VFtab[]);
129 void inl3130_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
130 float shiftvec[],float fshift[],int gid[],float pos[],
131 float faction[],float charge[],float facel,float Vc[],
132 int type[],int ntype,float nbfp[],float Vnb[],
133 float tabscale, float VFtab[]);
134 void inl3300_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
135 float shiftvec[],float fshift[],int gid[],float pos[],
136 float faction[],float charge[],float facel,float Vc[],
137 int type[],int ntype,float nbfp[],float Vnb[],
138 float tabscale,float VFtab[]);
139 void inl3310_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
140 float shiftvec[],float fshift[],int gid[],float pos[],
141 float faction[],float charge[],float facel,float Vc[],
142 int type[],int ntype,float nbfp[],float Vnb[],
143 float tabscale,float VFtab[], int nsatoms[]);
144 void inl3320_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
145 float shiftvec[],float fshift[],int gid[],float pos[],
146 float faction[],float charge[],float facel,float Vc[],
147 int type[],int ntype,float nbfp[],float Vnb[],
148 float tabscale,float VFtab[]);
149 void inl3330_3dnow(int nri,int iinr[],int jindex[],int jjnr[],int shift[],
150 float shiftvec[],float fshift[],int gid[],float pos[],
151 float faction[],float charge[],float facel,float Vc[],
152 int type[],int ntype,float nbfp[],float Vnb[],
153 float tabscale,float VFtab[]);