36#include <itpp/itexports.h>
45ITPP_EXPORT ivec
find(
const bvec &invector);
104 for (
int i =
size - 1;
i >= 0;
i--)
128 for (
int n = 1; n <
points; ++n) {
129 output(n) = output(n-1)+step;
162ITPP_EXPORT vec
zigzag_space(
double t0,
double t1,
int K = 5);
228template <
typename Num_T>
231 int n_rows =
c.
size();
232 int n_cols = r.
size();
234 for (
int i = 0;
i < n_rows; ++
i) {
235 int j_limit = std::min(n_cols, n_rows -
i);
237 output(
i +
j,
j) =
c(
i);
240 for (
int j = 1;
j < n_cols; ++
j) {
241 int i_limit = std::min(n_rows, n_cols -
j);
243 output(
i,
i +
j) = r(
j);
250template <
typename Num_T>
255 for (
int i = 0;
i < s; ++
i) {
256 for (
int j = 0;
j < s -
i; ++
j) {
257 output(
i +
j,
j) =
c(
i);
260 for (
int j = 1;
j < s; ++
j) {
261 for (
int i = 0;
i < s -
j; ++
i) {
262 output(
i,
i +
j) =
c(
j);
269ITPP_EXPORT
const cmat
toeplitz(
const cvec &c);
285ITPP_EXPORT
void house(
const vec &x, vec &v,
double &beta);
291ITPP_EXPORT
void givens(
double a,
double b,
double &c,
double &s);
297ITPP_EXPORT
void givens(
double a,
double b, mat &m);
303ITPP_EXPORT mat
givens(
double a,
double b);
309ITPP_EXPORT
void givens_t(
double a,
double b, mat &m);
315ITPP_EXPORT mat
givens_t(
double a,
double b);
int size() const
Returns the number of data elements in the array object.
void set_size(int n, bool copy=false)
Resizing an Array<T>.
Mat< T > mat_3x3(T m00, T m01, T m02, T m10, T m11, T m12, T m20, T m21, T m22)
Matrix of size 3 by 3.
Mat< T > mat_1x2(T m00, T m01)
Matrix of size 1 by 2.
Mat< T > mat_2x1(T m00, T m10)
Matrix of size 2 by 1.
Mat< T > mat_3x1(T m00, T m10, T m20)
Matrix of size 3 by 1.
Mat< T > mat_2x2(T m00, T m01, T m10, T m11)
Matrix of size 2 by 2.
Mat< T > mat_1x3(T m00, T m01, T m02)
Matrix of size 1 by 3.
Mat< T > mat_2x3(T m00, T m01, T m02, T m10, T m11, T m12)
Matrix of size 2 by 3.
Mat< T > mat_3x2(T m00, T m01, T m10, T m11, T m20, T m21)
Matrix of size 3 by 2.
Mat< T > mat_1x1(T m00)
Matrix of size 1 by 1.
Vec< T > vec_3(T v0, T v1, T v2)
Vector of length 3.
Vec< T > vec_1(T v0)
Vector of length 1.
Vec< T > vec_2(T v0, T v1)
Vector of length 2.
Definitions of converters between different vector and matrix types.
T to(double x)
Convert double to T.
int size(const Vec< T > &v)
Length of vector.
int length(const Vec< T > &v)
Length of vector.
vec angle(const cvec &x)
Angle.
void givens_t(double a, double b, mat &m)
Calculate the transposed Givens rotation matrix.
void house(const vec &x, vec &v, double &beta)
Calcualte the Householder vector.
mat rotation_matrix(int dim, int plane1, int plane2, double angle)
Create a rotation matrix that rotates the given plane angle radians. Note that the order of the plane...
ivec find(const bvec &invector)
Return a integer vector with indicies where bvec == 1.
void givens(double a, double b, double &c, double &s)
Calculate the Givens rotation values.
vec linspace(double from, double to, int points)
linspace (works in the same way as the MATLAB version)
ITPP_EXPORT vec zeros(int size)
A Double vector of zeros.
const cmat toeplitz(const cvec &c)
Generate symmetric Toeplitz matrix from vector c (complex valued)
ITPP_EXPORT cvec zeros_c(int size)
A Double Complex vector of zeros.
ITPP_EXPORT cmat eye_c(int size)
A Double Complex (size,size) unit matrix.
imat hadamard(int size)
Hadamard matrix.
ITPP_EXPORT ivec ones_i(int size)
A Int vector of ones.
ITPP_EXPORT imat eye_i(int size)
A Int (size,size) unit matrix.
vec impulse(int size)
Impulse vector.
ITPP_EXPORT bmat eye_b(int size)
A Binary (size,size) unit matrix.
imat conference(int n)
Conference matrix.
ITPP_EXPORT cvec ones_c(int size)
A float Complex vector of ones.
ITPP_EXPORT bvec ones_b(int size)
A Binary vector of ones.
ITPP_EXPORT bvec zeros_b(int size)
A Binary vector of zeros.
ITPP_EXPORT vec ones(int size)
A float vector of ones.
imat jacobsthal(int p)
Jacobsthal matrix.
vec zigzag_space(double t0, double t1, int K)
Zig-zag space function (variation on linspace)
ITPP_EXPORT ivec zeros_i(int size)
A Int vector of zeros.
Matrix Class Definitions.
Mat< bin > bmat
bin matrix
template vec linspace_fixed_step(double, double, double)
Template instantiation of linspace_fixed_step.
template void eye(int, mat &)
Template instantiation of eye.
int floor_i(double x)
The nearest smaller integer.
Templated Vector Class Definitions.