vec.h File Reference

Templated Vector Class Definitions. More...

`#include <itpp/base/itassert.h>`
`#include <itpp/base/math/misc.h>`
`#include <itpp/base/copy_vector.h>`
`#include <itpp/base/factory.h>`
`#include <vector>`
`#include <itpp/itexports.h>`
`#include <itpp/base/mat.h>`

Go to the source code of this file.

## Classes

class | itpp::Vec< Num_T >
| Vector Class (Templated) More...

## Namespaces

namespace | itpp
| itpp namespace

## Functions

template<class Num_T >
Vec< Num_T > | itpp::operator+ (const Vec< Num_T > &v1, const Vec< Num_T > &v2)
| Addition of two vectors.
template<class Num_T >
Vec< Num_T > | itpp::operator+ (const Vec< Num_T > &v, Num_T t)
| Addition of a vector and a scalar.
template<class Num_T >
Vec< Num_T > | itpp::operator+ (Num_T t, const Vec< Num_T > &v)
| Addition of a scalar and a vector.
template<class Num_T >
Vec< Num_T > | itpp::operator- (const Vec< Num_T > &v1, const Vec< Num_T > &v2)
| Subtraction of a vector from a vector.
template<class Num_T >
Vec< Num_T > | itpp::operator- (const Vec< Num_T > &v, Num_T t)
| Subtraction of a scalar from a vector.
template<class Num_T >
Vec< Num_T > | itpp::operator- (Num_T t, const Vec< Num_T > &v)
| Subtraction of vector from scalar. Results in a vector.
template<class Num_T >
Vec< Num_T > | itpp::operator- (const Vec< Num_T > &v)
| Negation of vector.
template<class Num_T >
Num_T | itpp::dot (const Vec< Num_T > &v1, const Vec< Num_T > &v2)
| Inner (dot) product of two vectors v1 and v2.
template<class Num_T >
Num_T | itpp::operator* (const Vec< Num_T > &v1, const Vec< Num_T > &v2)
| Inner (dot) product of two vectors v1 and v2.
template<class Num_T >
Mat< Num_T > | itpp::outer_product (const Vec< Num_T > &v1, const Vec< Num_T > &v2, bool hermitian=false)
| Outer product of two vectors v1 and v2.
template<class Num_T >
Vec< Num_T > | itpp::operator* (const Vec< Num_T > &v, Num_T t)
| Multiplication of a vector and a scalar.
template<class Num_T >
Vec< Num_T > | itpp::operator* (Num_T t, const Vec< Num_T > &v)
| Multiplication of a scalar and a vector. Results in a vector.
template<class Num_T >
Vec< Num_T > | itpp::elem_mult (const Vec< Num_T > &a, const Vec< Num_T > &b)
| Element-wise multiplication of two vectors.
template<class Num_T >
Vec< Num_T > | itpp::elem_mult (const Vec< Num_T > &a, const Vec< Num_T > &b, const Vec< Num_T > &c)
| Element-wise multiplication of three vectors.
template<class Num_T >
Vec< Num_T > | itpp::elem_mult (const Vec< Num_T > &a, const Vec< Num_T > &b, const Vec< Num_T > &c, const Vec< Num_T > &d)
| Element-wise multiplication of four vectors.
template<class Num_T >
void | itpp::elem_mult_out (const Vec< Num_T > &a, const Vec< Num_T > &b, Vec< Num_T > &out)
| Element-wise multiplication of two vectors, storing the result in vector `out`.
template<class Num_T >
void | itpp::elem_mult_out (const Vec< Num_T > &a, const Vec< Num_T > &b, const Vec< Num_T > &c, Vec< Num_T > &out)
| Element-wise multiplication of three vectors, storing the result in vector `out`.
template<class Num_T >
void | itpp::elem_mult_out (const Vec< Num_T > &a, const Vec< Num_T > &b, const Vec< Num_T > &c, const Vec< Num_T > &d, Vec< Num_T > &out)
| Element-wise multiplication of four vectors, storing the result in vector `out`.
template<class Num_T >
void | itpp::elem_mult_inplace (const Vec< Num_T > &a, Vec< Num_T > &b)
| In-place element-wise multiplication of two vectors. Faster version of b = elem_mult(a,b).
template<class Num_T >
Num_T | itpp::elem_mult_sum (const Vec< Num_T > &a, const Vec< Num_T > &b)
| Element-wise multiplication of two vectors, followed by summation of the resultant elements. Fast version of sum(elem_mult(a,b)).
template<class Num_T >
Vec< Num_T > | itpp::operator/ (const Vec< Num_T > &v, Num_T t)
| Division of all elements in `v` with `t`.
template<class Num_T >
Vec< Num_T > | itpp::operator/ (Num_T t, const Vec< Num_T > &v)
| Division of `t` with all elements in `v`.
template<class Num_T >
Vec< Num_T > | itpp::elem_div (const Vec< Num_T > &a, const Vec< Num_T > &b)
| Elementwise division of two vectors.
template<class Num_T >
Vec< Num_T > | itpp::elem_div (Num_T t, const Vec< Num_T > &v)
| This function is deprecated. Please use operator/(Num_T, const Vec<Num_T &) instead.
template<class Num_T >
void | itpp::elem_div_out (const Vec< Num_T > &a, const Vec< Num_T > &b, Vec< Num_T > &out)
| Elementwise division of two vectors, storing the result in vector `out`.
template<class Num_T >
Num_T | itpp::elem_div_sum (const Vec< Num_T > &a, const Vec< Num_T > &b)
| Elementwise division of two vectors, followed by summation of the resultant elements. Fast version of sum(elem_div(a,b))
template<class Num_T >
Vec< Num_T > | itpp::concat (const Vec< Num_T > &v, Num_T a)
| Append element `a` to the end of the vector `v`.
template<class Num_T >
Vec< Num_T > | itpp::concat (Num_T a, const Vec< Num_T > &v)
| Concat element `a` to the beginning of the vector `v`.
template<class Num_T >
Vec< Num_T > | itpp::concat (const Vec< Num_T > &v1, const Vec< Num_T > &v2)
| Concat vectors `v1` and `v2`.
template<class Num_T >
Vec< Num_T > | itpp::concat (const Vec< Num_T > &v1, const Vec< Num_T > &v2, const Vec< Num_T > &v3)
| Concat vectors `v1`, `v2` and `v3`.
template<class Num_T >
Vec< Num_T > | itpp::concat (const Vec< Num_T > &v1, const Vec< Num_T > &v2, const Vec< Num_T > &v3, const Vec< Num_T > &v4)
| Concat vectors `v1`, `v2`, `v3` and `v4`.
template<class Num_T >
Vec< Num_T > | itpp::concat (const Vec< Num_T > &v1, const Vec< Num_T > &v2, const Vec< Num_T > &v3, const Vec< Num_T > &v4, const Vec< Num_T > &v5)
| Concat vectors `v1`, `v2` `v3`, `v4` and `v5`.

## Detailed Description

Templated Vector Class Definitions.

Author
  Tony Ottosson, Tobias Ringstrom, Adam Piatyszek and Conrad Sanderson

Copyright (C) 1995-2010 (see AUTHORS file for a list of contributors)

This file is part of IT++ - a C++ library of mathematical, signal processing, speech processing, and communications classes and functions.

IT++ is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

IT++ is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with IT++. If not, see http://www.gnu.org/licenses/.

Definition in file vec.h.

Generated on Mon Jun 10 2024 11:49:27 for IT++ by Doxygen 1.9.8