diff options
author | dan miller | 2007-10-19 04:28:53 +0000 |
---|---|---|
committer | dan miller | 2007-10-19 04:28:53 +0000 |
commit | 0fc46fc9590912bf6925c899edd02d7a2cdf5f79 (patch) | |
tree | 51bcae7a1b8381a6bf6fd8025a7de1e30fe0045d /libraries/ode-0.9\/ode/src/fastdot.c | |
parent | small bit of refactoring (diff) | |
download | opensim-SC-0fc46fc9590912bf6925c899edd02d7a2cdf5f79.zip opensim-SC-0fc46fc9590912bf6925c899edd02d7a2cdf5f79.tar.gz opensim-SC-0fc46fc9590912bf6925c899edd02d7a2cdf5f79.tar.bz2 opensim-SC-0fc46fc9590912bf6925c899edd02d7a2cdf5f79.tar.xz |
adding ode source to /libraries
Diffstat (limited to 'libraries/ode-0.9\/ode/src/fastdot.c')
-rwxr-xr-x | libraries/ode-0.9\/ode/src/fastdot.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/libraries/ode-0.9\/ode/src/fastdot.c b/libraries/ode-0.9\/ode/src/fastdot.c new file mode 100755 index 0000000..148d2dd --- /dev/null +++ b/libraries/ode-0.9\/ode/src/fastdot.c | |||
@@ -0,0 +1,30 @@ | |||
1 | /* generated code, do not edit. */ | ||
2 | |||
3 | #include "ode/matrix.h" | ||
4 | |||
5 | |||
6 | dReal dDot (const dReal *a, const dReal *b, int n) | ||
7 | { | ||
8 | dReal p0,q0,m0,p1,q1,m1,sum; | ||
9 | sum = 0; | ||
10 | n -= 2; | ||
11 | while (n >= 0) { | ||
12 | p0 = a[0]; q0 = b[0]; | ||
13 | m0 = p0 * q0; | ||
14 | p1 = a[1]; q1 = b[1]; | ||
15 | m1 = p1 * q1; | ||
16 | sum += m0; | ||
17 | sum += m1; | ||
18 | a += 2; | ||
19 | b += 2; | ||
20 | n -= 2; | ||
21 | } | ||
22 | n += 2; | ||
23 | while (n > 0) { | ||
24 | sum += (*a) * (*b); | ||
25 | a++; | ||
26 | b++; | ||
27 | n--; | ||
28 | } | ||
29 | return sum; | ||
30 | } | ||