ARTS 2.5.11 (git: 725533f0)
m_reduce.h File Reference

Implementation of Reduce. More...

#include <cstring>
#include "array.h"
#include "exceptions.h"
#include "matpack_data.h"

Go to the source code of this file.

Functions

Index num_elem_from_dim_sizes (const ArrayOfIndex &dim_sizes)
 
void select_dims_by_size (ArrayOfIndex &dim_sizes, const Index min_num_elem, const Vector &type)
 
void select_dims_by_size (ArrayOfIndex &dim_sizes, const Index min_num_elem, const Matrix &type)
 
void select_dims_by_size (ArrayOfIndex &dim_sizes, const Index min_num_elem, const Tensor3 &type)
 
void select_dims_by_size (ArrayOfIndex &dim_sizes, const Index min_num_elem, const Tensor4 &type)
 
void select_dims_by_size (ArrayOfIndex &dim_sizes, const Index min_num_elem, const Tensor5 &type)
 
void select_dims_by_size (ArrayOfIndex &dim_sizes, const Index min_num_elem, const Tensor6 &type)
 
void select_dims_by_size (ArrayOfIndex &dim_sizes, const Index min_num_elem, const Tensor7 &type)
 
void Reduce (Numeric &o, const Vector &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Numeric &o, const Matrix &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Numeric &o, const Tensor3 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Numeric &o, const Tensor4 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Numeric &o, const Tensor5 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Numeric &o, const Tensor6 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Numeric &o, const Tensor7 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Vector &o, const Matrix &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Vector &o, const Tensor3 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Vector &o, const Tensor4 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Vector &o, const Tensor5 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Vector &o, const Tensor6 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Vector &o, const Tensor7 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Matrix &o, const Tensor3 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Matrix &o, const Tensor4 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Matrix &o, const Tensor5 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Matrix &o, const Tensor6 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Matrix &o, const Tensor7 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Tensor3 &o, const Tensor4 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Tensor3 &o, const Tensor5 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Tensor3 &o, const Tensor6 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Tensor3 &o, const Tensor7 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Tensor4 &o, const Tensor5 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Tensor4 &o, const Tensor6 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Tensor4 &o, const Tensor7 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Tensor5 &o, const Tensor6 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Tensor5 &o, const Tensor7 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 
void Reduce (Tensor6 &o, const Tensor7 &i, const Verbosity &)
 WORKSPACE METHOD: Reduce.
 

Detailed Description

Implementation of Reduce.

Author
Richard Larsson ric.l.nosp@m.arss.nosp@m.on@gm.nosp@m.ail..nosp@m.com
Date
Wed Feb 25 2014

This file contains the implementation of the supergeneric method Reduce.

Definition in file m_reduce.h.

Function Documentation

◆ num_elem_from_dim_sizes()

Index num_elem_from_dim_sizes ( const ArrayOfIndex dim_sizes)
inline

◆ Reduce() [1/28]

void Reduce ( Matrix &  o,
const Tensor3 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 397 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [2/28]

void Reduce ( Matrix &  o,
const Tensor4 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 423 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [3/28]

void Reduce ( Matrix &  o,
const Tensor5 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 449 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [4/28]

void Reduce ( Matrix &  o,
const Tensor6 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 475 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [5/28]

void Reduce ( Matrix &  o,
const Tensor7 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 501 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [6/28]

void Reduce ( Numeric &  o,
const Matrix &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 132 of file m_reduce.h.

◆ Reduce() [7/28]

void Reduce ( Numeric &  o,
const Tensor3 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 149 of file m_reduce.h.

◆ Reduce() [8/28]

void Reduce ( Numeric &  o,
const Tensor4 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 166 of file m_reduce.h.

◆ Reduce() [9/28]

void Reduce ( Numeric &  o,
const Tensor5 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 183 of file m_reduce.h.

◆ Reduce() [10/28]

void Reduce ( Numeric &  o,
const Tensor6 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 201 of file m_reduce.h.

◆ Reduce() [11/28]

void Reduce ( Numeric &  o,
const Tensor7 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 219 of file m_reduce.h.

◆ Reduce() [12/28]

void Reduce ( Numeric &  o,
const Vector &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 115 of file m_reduce.h.

Referenced by Reduce_sg_MatrixTensor3_g(), Reduce_sg_MatrixTensor4_g(), Reduce_sg_MatrixTensor5_g(), Reduce_sg_MatrixTensor6_g(), Reduce_sg_MatrixTensor7_g(), Reduce_sg_NumericMatrix_g(), Reduce_sg_NumericTensor3_g(), Reduce_sg_NumericTensor4_g(), Reduce_sg_NumericTensor5_g(), Reduce_sg_NumericTensor6_g(), Reduce_sg_NumericTensor7_g(), Reduce_sg_NumericVector_g(), Reduce_sg_Tensor3Tensor4_g(), Reduce_sg_Tensor3Tensor5_g(), Reduce_sg_Tensor3Tensor6_g(), Reduce_sg_Tensor3Tensor7_g(), Reduce_sg_Tensor4Tensor5_g(), Reduce_sg_Tensor4Tensor6_g(), Reduce_sg_Tensor4Tensor7_g(), Reduce_sg_Tensor5Tensor6_g(), Reduce_sg_Tensor5Tensor7_g(), Reduce_sg_Tensor6Tensor7_g(), Reduce_sg_VectorMatrix_g(), Reduce_sg_VectorTensor3_g(), Reduce_sg_VectorTensor4_g(), Reduce_sg_VectorTensor5_g(), Reduce_sg_VectorTensor6_g(), and Reduce_sg_VectorTensor7_g().

◆ Reduce() [13/28]

void Reduce ( Tensor3 &  o,
const Tensor4 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 529 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [14/28]

void Reduce ( Tensor3 &  o,
const Tensor5 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 555 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [15/28]

void Reduce ( Tensor3 &  o,
const Tensor6 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 581 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [16/28]

void Reduce ( Tensor3 &  o,
const Tensor7 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 607 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [17/28]

void Reduce ( Tensor4 &  o,
const Tensor5 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 635 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [18/28]

void Reduce ( Tensor4 &  o,
const Tensor6 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 661 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [19/28]

void Reduce ( Tensor4 &  o,
const Tensor7 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 687 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [20/28]

void Reduce ( Tensor5 &  o,
const Tensor6 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 715 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [21/28]

void Reduce ( Tensor5 &  o,
const Tensor7 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 742 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [22/28]

void Reduce ( Tensor6 &  o,
const Tensor7 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 771 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [23/28]

void Reduce ( Vector &  o,
const Matrix &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 239 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [24/28]

void Reduce ( Vector &  o,
const Tensor3 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 265 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [25/28]

void Reduce ( Vector &  o,
const Tensor4 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 291 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [26/28]

void Reduce ( Vector &  o,
const Tensor5 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 317 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [27/28]

void Reduce ( Vector &  o,
const Tensor6 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 343 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ Reduce() [28/28]

void Reduce ( Vector &  o,
const Tensor7 &  i,
const Verbosity verbosity 
)
inline

WORKSPACE METHOD: Reduce.

Reduces a larger class to a smaller class of same size.

The Reduce command reduces all "1"-dimensions to nil. Examples:

1) 1 Vector can be reduced to a Numeric 2) 2x1 Matrix can be reduced to 2 Vector 3) 1x3x1 Tensor3 can be reduced to 3 Vector 4) 1x1x1x1 Tensor4 can be reduced to a Numeric 5) 3x1x4x1x5 Tensor5 can only be reduced to 3x4x5 Tensor3 6) 1x1x1x1x2x3 Tensor6 can be reduced to 2x3 Matrix 7) 2x3x4x5x6x7x1 Tensor7 can be reduced to 2x3x4x5x6x7 Tensor6

And so on

Author
Oliver Lemke
Richard Larsson
Parameters
[out]oSupergeneric output
[in]iGeneric Input

Definition at line 369 of file m_reduce.h.

References Array< base >::nelem(), num_elem_from_dim_sizes(), and select_dims_by_size().

◆ select_dims_by_size() [1/7]

void select_dims_by_size ( ArrayOfIndex dim_sizes,
const Index  min_num_elem,
const Matrix &  type 
)
inline

Definition at line 42 of file m_reduce.h.

◆ select_dims_by_size() [2/7]

void select_dims_by_size ( ArrayOfIndex dim_sizes,
const Index  min_num_elem,
const Tensor3 &  type 
)
inline

Definition at line 51 of file m_reduce.h.

◆ select_dims_by_size() [3/7]

void select_dims_by_size ( ArrayOfIndex dim_sizes,
const Index  min_num_elem,
const Tensor4 &  type 
)
inline

Definition at line 61 of file m_reduce.h.

◆ select_dims_by_size() [4/7]

void select_dims_by_size ( ArrayOfIndex dim_sizes,
const Index  min_num_elem,
const Tensor5 &  type 
)
inline

Definition at line 72 of file m_reduce.h.

◆ select_dims_by_size() [5/7]

void select_dims_by_size ( ArrayOfIndex dim_sizes,
const Index  min_num_elem,
const Tensor6 &  type 
)
inline

Definition at line 84 of file m_reduce.h.

◆ select_dims_by_size() [6/7]

void select_dims_by_size ( ArrayOfIndex dim_sizes,
const Index  min_num_elem,
const Tensor7 &  type 
)
inline

Definition at line 97 of file m_reduce.h.

◆ select_dims_by_size() [7/7]

void select_dims_by_size ( ArrayOfIndex dim_sizes,
const Index  min_num_elem,
const Vector &  type 
)
inline