Spec-Zone.ru › Eigen3

Eigen::ArrayBase

template<typename Derived>
class Eigen::ArrayBase< Derived >

Базовый класс для всех одномерных и двумерных массивов и связанных выражений.

Массив похож на плотный вектор или матрицу. В то время как матрицы представляют собой математические объекты с хорошо определёнными операторами линейной алгебры, массив — это просто набор скалярных значений, организованных в одномерном или двумерном виде. Вследствие этого все операции, применяемые к массиву, выполняются поэлементно. Кроме того, массивы поддерживают скалярные математические функции стандартной библиотеки C++ (например, std::sin(x)) и удобные конструкторы, позволяющие легко писать обобщённый код, работающий как со скалярными значениями, так и с массивами.

Этот класс является базовым классом, от которого наследуются все типы выражений массива.

Шаблонные параметры
Derived является производным типом, например, массивом или типом выражения.

Этот класс можно расширить с помощью механизма плагинов, описанного на странице Расширение MatrixBase (и других классов), определяя препроцессорную метку EIGEN_ARRAYBASE_PLUGIN.

См. также
класс MatrixBase, Иерархия классов
Inheritance graph
MatrixWrapper< Derived > matrix ()
шаблон<typename OtherDerived >
Derived & operator*= (const ArrayBase< OtherDerived > &other)
шаблон<typename OtherDerived >
Derived & operator+= (const ArrayBase< OtherDerived > &other)
шаблон<typename OtherDerived >
Derived & operator-= (const ArrayBase< OtherDerived > &other)
шаблон<typename OtherDerived >
Derived & operator/= (const ArrayBase< OtherDerived > &other)
Derived & operator= (const ArrayBase &other)
Derived & operator= (const Scalar &value)
- Публичные методы, унаследованные от Eigen::DenseBase< Derived >
bool all () const
bool allFinite () const
bool any () const
iterator begin ()
const_iterator begin () const
const_iterator cbegin () const
const_iterator cend () const
ColwiseReturnType colwise ()
ConstColwiseReturnType colwise () const
Index count () const
iterator end ()
const_iterator end () const
EvalReturnType eval () const
void fill (const Scalar &value)
шаблон<unsigned int Added, unsigned int Removed>
EIGEN_DEPRECATED const Derived & flagged () const
const WithFormat< Derived > format (const IOFormat &fmt) const
bool hasNaN () const
EIGEN_CONSTEXPR Index innerSize () const
шаблон<typename OtherDerived >
bool isApprox (const DenseBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
bool isApproxToConstant (const Scalar &value, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
bool isConstant (const Scalar &value, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
шаблон<typename OtherDerived >
bool isMuchSmallerThan (const DenseBase< OtherDerived > &other, const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
шаблон<typename Derived >
bool isMuchSmallerThan (const typename NumTraits< Scalar >::Real &other, const RealScalar &prec) const
bool isOnes (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
bool isZero (const RealScalar &prec=NumTraits< Scalar >::dummy_precision()) const
шаблон<typename OtherDerived >
EIGEN_DEPRECATED Derived & lazyAssign (const DenseBase< OtherDerived > &other)
шаблон<int NaNPropagation>
internal::traits< Derived >::Scalar maxCoeff () const
шаблон<int NaNPropagation, typename IndexType >
internal::traits< Derived >::Scalar maxCoeff (IndexType *index) const
END_OF_DOCUMENT_MARKER
template<int NaNPropagation, typename IndexType >
internal::traits< Derived >::Scalar maxCoeff (IndexType *row, IndexType *col) const
Scalar mean () const
template<int NaNPropagation>
internal::traits< Derived >::Scalar minCoeff () const
template<int NaNPropagation, typename IndexType >
internal::traits< Derived >::Scalar minCoeff (IndexType *index) const
template<int NaNPropagation, typename IndexType >
internal::traits< Derived >::Scalar minCoeff (IndexType *row, IndexType *col) const
const NestByValue< Derived > nestByValue () const
EIGEN_CONSTEXPR Index nonZeros () const
template<typename OtherDerived >
CommaInitializer< Derived > operator<< (const DenseBase< OtherDerived > &other)
CommaInitializer< Derived > operator<< (const Scalar &s)
Derived & operator= (const DenseBase &other)
template<typename OtherDerived >
Derived & operator= (const DenseBase< OtherDerived > &other)
template<typename OtherDerived >
Derived & operator= (const EigenBase< OtherDerived > &other)
Копирует обобщенное выражение other в *this. Подробнее...
EIGEN_CONSTEXPR Index outerSize () const
Scalar prod () const
template<typename Func >
internal::traits< Derived >::Scalar redux (const Func &func) const
template<int RowFactor, int ColFactor>
const Replicate< Derived, RowFactor, ColFactor > replicate () const
const Replicate< Derived, Dynamic, Dynamic > replicate (Index rowFactor, Index colFactor) const
void resize (Index newSize)
void resize (Index rows, Index cols)
ReverseReturnType reverse ()
ConstReverseReturnType reverse () const
void reverseInPlace ()
RowwiseReturnType rowwise ()
ConstRowwiseReturnType rowwise () const
template<typename ThenDerived , typename ElseDerived >
const Select< Derived, ThenDerived, ElseDerived > select (const DenseBase< ThenDerived > &thenMatrix, const DenseBase< ElseDerived > &elseMatrix) const
template<typename ThenDerived >
const Select< Derived, ThenDerived, typename ThenDerived::ConstantReturnType > select (const DenseBase< ThenDerived > &thenMatrix, const typename ThenDerived::Scalar &elseScalar) const
template<typename ElseDerived >
const Select< Derived, typename ElseDerived::ConstantReturnType, ElseDerived > select (const typename ElseDerived::Scalar &thenScalar, const DenseBase< ElseDerived > &elseMatrix) const
Derived & setConstant (const Scalar &value)
Derived & setLinSpaced (const Scalar &low, const Scalar &high)
Устанавливает вектор с линейно распределенными значениями. Подробнее...
Derived & setLinSpaced (Index size, const Scalar &low, const Scalar &high)
Устанавливает вектор с линейно распределенными значениями. Подробнее...
Derived & setOnes ()
Производное & setRandom ()
Производное & setZero ()
Скаляр sum () const
шаблон<typename OtherDerived >
void swap (const DenseBase< OtherDerived > &other)
шаблон<typename OtherDerived >
void swap (PlainObjectBase< OtherDerived > &other)
TransposeReturnType transpose ()
ConstTransposeReturnType transpose () const
void transposeInPlace ()
CoeffReturnType value () const
шаблон<typename Visitor >
void visit (Visitor &func) const
- Общедоступные члены-функции, унаследованные от Eigen::DenseCoeffsBase< Derived, DirectWriteAccessors >
EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
EIGEN_CONSTEXPR Index colStride () const EIGEN_NOEXCEPT
Производное & derived ()
const Производное & derived () const
EIGEN_CONSTEXPR Index innerStride () const EIGEN_NOEXCEPT
EIGEN_CONSTEXPR Index outerStride () const EIGEN_NOEXCEPT
EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
EIGEN_CONSTEXPR Index rowStride () const EIGEN_NOEXCEPT
EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT
- Общедоступные члены-функции, унаследованные от Eigen::DenseCoeffsBase< Derived, WriteAccessors >
Скаляр & coeffRef (Index index)
Скаляр & coeffRef (Index row, Index col)
EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
Производное & derived ()
const Производное & derived () const
Скаляр & operator() (Index index)
Скаляр & operator() (Index row, Index col)
Скаляр & operator[] (Index index)
EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT
Скаляр & w ()
Скаляр & x ()
Скаляр & y ()
Скаляр & z ()
- Общедоступные члены-функции, унаследованные от Eigen::DenseCoeffsBase< Derived, ReadOnlyAccessors >
CoeffReturnType coeff (Index index) const
CoeffReturnType coeff (Index row, Index col) const
EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
Derived & derived ()
const Derived & derived () const
CoeffReturnType operator() (Index index) const
CoeffReturnType operator() (Index row, Index col) const
CoeffReturnType operator[] (Index index) const
EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT
CoeffReturnType w () const
CoeffReturnType x () const
CoeffReturnType y () const
CoeffReturnType z () const
- Общедоступные члены-функции, унаследованные от Eigen::EigenBase< Derived >
EIGEN_CONSTEXPR Index cols () const EIGEN_NOEXCEPT
Derived & derived ()
const Derived & derived () const
EIGEN_CONSTEXPR Index rows () const EIGEN_NOEXCEPT
EIGEN_CONSTEXPR Index size () const EIGEN_NOEXCEPT

(Обратите внимание, что это не члены-функции.)

template<typename Derived , typename ExponentDerived >
const Eigen::CwiseBinaryOp< Eigen::internal::scalar_pow_op< typename Derived::Scalar, typename ExponentDerived::Scalar >, const Derived, const ExponentDerived > pow (const Eigen::ArrayBase< Derived > &x, const Eigen::ArrayBase< ExponentDerived > &exponents)
template<typename Derived , typename ScalarExponent >
const CwiseBinaryOp< internal::scalar_pow_op< Derived::Scalar, ScalarExponent >, Derived, Constant< ScalarExponent > > pow (const Eigen::ArrayBase< Derived > &x, const ScalarExponent &exponent)
template<typename Scalar , typename Derived >
const CwiseBinaryOp< internal::scalar_pow_op< Scalar, Derived::Scalar >, Constant< Scalar >, Derived > pow (const Scalar &x, const Eigen::ArrayBase< Derived > &x)
- Связанные функции, унаследованные от Eigen::DenseBase< Derived >
template<typename Derived >
std::ostream & operator<< (std::ostream &s, const DenseBase< Derived > &m)
- Публичные типы, унаследованные от Eigen::DenseBase< Derived >
перечисление {
RowsAtCompileTime ,
ColsAtCompileTime ,
SizeAtCompileTime ,
MaxRowsAtCompileTime ,
MaxColsAtCompileTime ,
MaxSizeAtCompileTime ,
IsVectorAtCompileTime ,
NumDimensions ,
Flags ,
IsRowMajor ,
InnerSizeAtCompileTime ,
InnerStrideAtCompileTime ,
OuterStrideAtCompileTime
}
typedef random_access_iterator_type const_iterator
typedef random_access_iterator_type iterator
typedef Array< typename internal::traits< Derived >::Scalar, internal::traits< Derived >::RowsAtCompileTime, internal::traits< Derived >::ColsAtCompileTime, AutoAlign|(internal::traits< Derived >::Flags &RowMajorBit ? RowMajor :ColMajor), internal::traits< Derived >::MaxRowsAtCompileTime, internal::traits< Derived >::MaxColsAtCompileTime > PlainArray
typedef Matrix< typename internal::traits< Derived >::Scalar, internal::traits< Derived >::RowsAtCompileTime, internal::traits< Derived >::ColsAtCompileTime, AutoAlign|(internal::traits< Derived >::Flags &RowMajorBit ? RowMajor :ColMajor), internal::traits< Derived >::MaxRowsAtCompileTime, internal::traits< Derived >::MaxColsAtCompileTime > PlainMatrix
typedef internal::conditional< internal::is_same< typename internal::traits< Derived >::XprKind, MatrixXpr >::value, PlainMatrix, PlainArray >::type PlainObject
Тип обычной матрицы или массива, соответствующий этому выражению. Подробнее...
typedef internal::traits< Derived >::Scalar Scalar
typedef internal::traits< Derived >::StorageIndex StorageIndex
Тип, используемый для хранения индексов. Подробнее...
typedef Scalar value_type
- Публичные типы, унаследованные от Eigen::EigenBase< Derived >
typedef Eigen::Index Index
Интерфейсный тип индексов. Подробнее...
- Статические публичные методы-члены, унаследованные от Eigen::DenseBase< Derived >
static const ConstantReturnType Constant (const Scalar &value)
static const ConstantReturnType Constant (Index rows, Index cols, const Scalar &value)
static const ConstantReturnType Constant (Index size, const Scalar &value)
static const RandomAccessLinSpacedReturnType LinSpaced (const Scalar &low, const Scalar &high)
Устанавливает линейно распределённый вектор. Подробнее...
static const RandomAccessLinSpacedReturnType LinSpaced (Index size, const Scalar &low, const Scalar &high)
Устанавливает линейно распределённый вектор. Подробнее...
static EIGEN_DEPRECATED const RandomAccessLinSpacedReturnType LinSpaced (Sequential_t, const Scalar &low, const Scalar &high)
static EIGEN_DEPRECATED const RandomAccessLinSpacedReturnType LinSpaced (Sequential_t, Index size, const Scalar &low, const Scalar &high)
template<typename CustomNullaryOp >
static const CwiseNullaryOp< CustomNullaryOp, PlainObject > NullaryExpr (const CustomNullaryOp &func)
template<typename CustomNullaryOp >
static const CwiseNullaryOp< CustomNullaryOp, PlainObject > NullaryExpr (Index rows, Index cols, const CustomNullaryOp &func)
template<typename CustomNullaryOp >
static const CwiseNullaryOp< CustomNullaryOp, PlainObject > NullaryExpr (Index size, const CustomNullaryOp &func)
static const ConstantReturnType Ones ()
static const ConstantReturnType Ones (Index rows, Index cols)
static const ConstantReturnType Ones (Index size)
static const RandomReturnType Random ()
static const RandomReturnType Random (Index rows, Index cols)
static const RandomReturnType Random (Index size)
static const ConstantReturnType Zero ()
static const ConstantReturnType Zero (Index rows, Index cols)
static const ConstantReturnType Zero (Index size)
- Защищенные члены-функции, унаследованные от Eigen::DenseBase< Derived >
DenseBase ()

matrix()

template<typename Derived >
MatrixWrapper<Derived> Eigen::ArrayBase< Derived >::matrix ( )
inline
Возвращает
выражение Matrix этого массива
См. также
MatrixBase::array()

operator*=()

template<typename Derived >
template<typename OtherDerived >
Derived & Eigen::ArrayBase< Derived >::operator*= ( const ArrayBase< OtherDerived > & other )
inline

заменяет *this на *this * other поэлементно.

Возвращает
ссылку на *this

operator+=()

template<typename Derived >
template<typename OtherDerived >
Derived & Eigen::ArrayBase< Derived >::operator+= ( const ArrayBase< OtherDerived > & other )
inline

заменяет *this на *this + other.

Возвращает
ссылку на *this

operator-=()

template<typename Derived >
template<typename OtherDerived >
Derived & Eigen::ArrayBase< Derived >::operator-= ( const ArrayBase< OtherDerived > & other )
inline

заменяет *this на *this - other.

Возвращает
ссылку на *this

operator/=()

template<typename Derived >
template<typename OtherDerived >
Derived & Eigen::ArrayBase< Derived >::operator/= ( const ArrayBase< OtherDerived > & other )
inline

заменяет *this на *this / other поэлементно.

Возвращает
ссылку на *this

operator=() [1/2]

template<typename Derived >
Derived& Eigen::ArrayBase< Derived >::operator= ( const ArrayBase< Derived > & other )
inline

Специальный случай оператора =, чтобы предотвратить генерацию компилятором по умолчанию оператора = (проблема с g++ 4.1)

operator=() [2/2]

template<typename Derived >
Derived& Eigen::ArrayBase< Derived >::operator= ( const Scalar & значение )
inline

Устанавливает все элементы в значение.

См. также
DenseBase::setConstant(), DenseBase::fill()

pow() [1/3]

template<typename Derived , typename ExponentDerived >
const Eigen::CwiseBinaryOp< Eigen::internal::scalar_pow_op< typename Derived::Scalar, typename ExponentDerived::Scalar >, const Derived, const ExponentDerived > pow ( const Eigen::ArrayBase< Derived > & x,
const Eigen::ArrayBase< ExponentDerived > & показатели
)
related
Возвращает
выражение с поэлементной степенью x в заданном массиве показателей.

Эта функция вычисляет поэлементную степень.

Пример:

Array<double,1,3> x(8,25,3),
                  e(1./3.,0.5,2.);
cout << "[" << x << "]^[" << e << "] = " << x.pow(e) << endl; // using ArrayBase::pow
cout << "[" << x << "]^[" << e << "] = " << pow(x,e) << endl; // using Eigen::pow

Вывод:

[ 8 25  3]^[0.333   0.5     2] = 2 5 9
[ 8 25  3]^[0.333   0.5     2] = 2 5 9
См. также
ArrayBase::pow()

pow() [2/3]

template<typename Derived , typename ScalarExponent >
const CwiseBinaryOp< internal::scalar_pow_op< Derived::Scalar, ScalarExponent >, Derived, Constant< ScalarExponent > > pow ( const Eigen::ArrayBase< Derived > & x,
const ScalarExponent & показатель
)
related
Возвращает
выражение с поэлементной степенью x в заданном постоянном показателе.
Шаблонные параметры
ScalarExponent тип скаляра показателя. Он должен быть совместим с типом скаляра данного выражения (Derived::Scalar).
См. также
ArrayBase::pow()

pow() [3/3]

template<typename Scalar , typename Derived >
const CwiseBinaryOp< internal::scalar_pow_op< Scalar, Derived::Scalar >, Constant< Scalar >, Derived > pow ( const Scalar & x,
const Eigen::ArrayBase< Derived > & x
)
related
Возвращает
выражение с поэлементной степенью скаляра x в заданном массиве показателей.

Эта функция вычисляет поэлементную степень между скаляром и массивом показателей.

Шаблонные параметры
Scalar тип скаляра x. Он должен быть совместим с типом скаляра данного массива выражения (Derived::Scalar).

Пример:

Array<double,1,3> e(2,-3,1./3.);
cout << "10^[" << e << "] = " << pow(10,e) << endl;

Вывод:

10^[    2    -3 0.333] =   100 0.001  2.15
См. также
ArrayBase::pow()

Документация для этого класса была сгенерирована из следующих файлов:
  • ArrayBase.h
  • GlobalFunctions.h
  • SelfCwiseBinaryOp.h

© Eigen.
Licensed under the MPL2 License.
https://eigen.tuxfamily.org/dox/classEigen_1_1ArrayBase.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API