1
/* -- translated by f2c (version 20050501).
2
You must link the resulting object file with libf2c:
3
on Microsoft Windows system, link with libf2c.lib;
4
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
5
or, if you install libf2c.a in a standard place, with -lf2c -lm
6
-- in that order, at the end of the command line, as in
8
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
10
http://www.netlib.org/f2c/libf2c.zip
14
#include "arpack_internal.h"
17
doublereal igraphddot_(integer *n, doublereal *dx, integer *incx, doublereal *dy,
20
/* System generated locals */
25
static integer i__, m, ix, iy, mp1;
26
static doublereal dtemp;
29
/* forms the dot product of two vectors. */
30
/* uses unrolled loops for increments equal to one. */
31
/* jack dongarra, linpack, 3/11/78. */
32
/* modified 12/3/93, array(1) declarations changed to array(*) */
35
/* Parameter adjustments */
45
if (*incx == 1 && *incy == 1) {
49
/* code for unequal increments or equal increments */
55
ix = (-(*n) + 1) * *incx + 1;
58
iy = (-(*n) + 1) * *incy + 1;
61
for (i__ = 1; i__ <= i__1; ++i__) {
62
dtemp += dx[ix] * dy[iy];
70
/* code for both increments equal to 1 */
81
for (i__ = 1; i__ <= i__1; ++i__) {
82
dtemp += dx[i__] * dy[i__];
91
for (i__ = mp1; i__ <= i__1; i__ += 5) {
92
dtemp = dtemp + dx[i__] * dy[i__] + dx[i__ + 1] * dy[i__ + 1] + dx[
93
i__ + 2] * dy[i__ + 2] + dx[i__ + 3] * dy[i__ + 3] + dx[i__ +