gtsam
3rdparty
Eigen
blas
blas/double.cpp
Go to the documentation of this file.
1
// This file is part of Eigen, a lightweight C++ template library
2
// for linear algebra.
3
//
4
// Copyright (C) 2009 Gael Guennebaud <gael.guennebaud@inria.fr>
5
// Copyright (C) 2012 Chen-Pang He <jdh8@ms63.hinet.net>
6
//
7
// This Source Code Form is subject to the terms of the Mozilla
8
// Public License v. 2.0. If a copy of the MPL was not distributed
9
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
10
11
#define SCALAR double
12
#define SCALAR_SUFFIX d
13
#define SCALAR_SUFFIX_UP "D"
14
#define ISCOMPLEX 0
15
16
#include "
level1_impl.h
"
17
#include "
level1_real_impl.h
"
18
#include "
level2_impl.h
"
19
#include "
level2_real_impl.h
"
20
#include "
level3_impl.h
"
21
22
double
EIGEN_BLAS_FUNC
(
sdot
)(
int
*
n
,
float
*
x
,
int
*
incx
,
float
*
y
,
int
*
incy
)
23
{
24
if
(*
n
<=0)
return
0;
25
26
if
(*
incx
==1 && *
incy
==1)
return
(
make_vector
(
x
,*
n
).cast<
double
>().cwiseProduct(
make_vector
(
y
,*
n
).cast<
double
>())).sum();
27
else
if
(*
incx
>0 && *
incy
>0)
return
(
make_vector
(
x
,*
n
,*
incx
).cast<
double
>().cwiseProduct(
make_vector
(
y
,*
n
,*
incy
).cast<
double
>())).sum();
28
else
if
(*incx<0 && *incy>0)
return
(
make_vector
(
x
,*
n
,-*
incx
).reverse().cast<
double
>().cwiseProduct(
make_vector
(
y
,*
n
,*
incy
).cast<
double
>())).sum();
29
else
if
(*
incx
>0 && *
incy
<0)
return
(
make_vector
(
x
,*
n
,*
incx
).cast<
double
>().cwiseProduct(
make_vector
(
y
,*
n
,-*
incy
).reverse().cast<
double
>())).sum();
30
else
if
(*
incx
<0 && *
incy
<0)
return
(
make_vector
(
x
,*
n
,-*
incx
).reverse().cast<
double
>().cwiseProduct(
make_vector
(
y
,*
n
,-*
incy
).reverse().cast<
double
>())).sum();
31
else
return
0;
32
}
level3_impl.h
x
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
Definition:
gnuplot_common_settings.hh:12
make_vector
Map< Matrix< T, Dynamic, 1 >, 0, InnerStride< Dynamic > > make_vector(T *data, int size, int incr)
Definition:
gtsam/3rdparty/Eigen/blas/common.h:123
level2_impl.h
n
int n
Definition:
BiCGSTAB_simple.cpp:1
incy
int RealScalar int RealScalar int * incy
Definition:
level1_cplx_impl.h:119
EIGEN_BLAS_FUNC
#define EIGEN_BLAS_FUNC(X)
Definition:
gtsam/3rdparty/Eigen/blas/common.h:173
level2_real_impl.h
incx
RealScalar RealScalar int * incx
Definition:
level1_cplx_impl.h:29
y
Scalar * y
Definition:
level1_cplx_impl.h:124
sdot
double EIGEN_BLAS_FUNC() sdot(int *n, float *x, int *incx, float *y, int *incy)
Definition:
blas/double.cpp:22
level1_real_impl.h
level1_impl.h
gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:11:29