cart-elc

Source code for CART-ELC
git clone git://git.laack.co/cart-elc.git
Log | Files | Refs | README | LICENSE

MatrixCwiseUnaryOps.h (3350B)


      1 // This file is part of Eigen, a lightweight C++ template library
      2 // for linear algebra.
      3 //
      4 // Copyright (C) 2008-2009 Gael Guennebaud <gael.guennebaud@inria.fr>
      5 // Copyright (C) 2006-2008 Benoit Jacob <jacob.benoit.1@gmail.com>
      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 // This file is included into the body of the base classes supporting matrix specific coefficient-wise functions.
     12 // This include MatrixBase and SparseMatrixBase.
     13 
     14 
     15 typedef CwiseUnaryOp<internal::scalar_abs_op<Scalar>, const Derived> CwiseAbsReturnType;
     16 typedef CwiseUnaryOp<internal::scalar_abs2_op<Scalar>, const Derived> CwiseAbs2ReturnType;
     17 typedef CwiseUnaryOp<internal::scalar_arg_op<Scalar>, const Derived> CwiseArgReturnType;
     18 typedef CwiseUnaryOp<internal::scalar_sqrt_op<Scalar>, const Derived> CwiseSqrtReturnType;
     19 typedef CwiseUnaryOp<internal::scalar_sign_op<Scalar>, const Derived> CwiseSignReturnType;
     20 typedef CwiseUnaryOp<internal::scalar_inverse_op<Scalar>, const Derived> CwiseInverseReturnType;
     21 
     22 /// \returns an expression of the coefficient-wise absolute value of \c *this
     23 ///
     24 /// Example: \include MatrixBase_cwiseAbs.cpp
     25 /// Output: \verbinclude MatrixBase_cwiseAbs.out
     26 ///
     27 EIGEN_DOC_UNARY_ADDONS(cwiseAbs,absolute value)
     28 ///
     29 /// \sa cwiseAbs2()
     30 ///
     31 EIGEN_DEVICE_FUNC
     32 EIGEN_STRONG_INLINE const CwiseAbsReturnType
     33 cwiseAbs() const { return CwiseAbsReturnType(derived()); }
     34 
     35 /// \returns an expression of the coefficient-wise squared absolute value of \c *this
     36 ///
     37 /// Example: \include MatrixBase_cwiseAbs2.cpp
     38 /// Output: \verbinclude MatrixBase_cwiseAbs2.out
     39 ///
     40 EIGEN_DOC_UNARY_ADDONS(cwiseAbs2,squared absolute value)
     41 ///
     42 /// \sa cwiseAbs()
     43 ///
     44 EIGEN_DEVICE_FUNC
     45 EIGEN_STRONG_INLINE const CwiseAbs2ReturnType
     46 cwiseAbs2() const { return CwiseAbs2ReturnType(derived()); }
     47 
     48 /// \returns an expression of the coefficient-wise square root of *this.
     49 ///
     50 /// Example: \include MatrixBase_cwiseSqrt.cpp
     51 /// Output: \verbinclude MatrixBase_cwiseSqrt.out
     52 ///
     53 EIGEN_DOC_UNARY_ADDONS(cwiseSqrt,square-root)
     54 ///
     55 /// \sa cwisePow(), cwiseSquare()
     56 ///
     57 EIGEN_DEVICE_FUNC
     58 inline const CwiseSqrtReturnType
     59 cwiseSqrt() const { return CwiseSqrtReturnType(derived()); }
     60 
     61 /// \returns an expression of the coefficient-wise signum of *this.
     62 ///
     63 /// Example: \include MatrixBase_cwiseSign.cpp
     64 /// Output: \verbinclude MatrixBase_cwiseSign.out
     65 ///
     66 EIGEN_DOC_UNARY_ADDONS(cwiseSign,sign function)
     67 ///
     68 EIGEN_DEVICE_FUNC
     69 inline const CwiseSignReturnType
     70 cwiseSign() const { return CwiseSignReturnType(derived()); }
     71 
     72 
     73 /// \returns an expression of the coefficient-wise inverse of *this.
     74 ///
     75 /// Example: \include MatrixBase_cwiseInverse.cpp
     76 /// Output: \verbinclude MatrixBase_cwiseInverse.out
     77 ///
     78 EIGEN_DOC_UNARY_ADDONS(cwiseInverse,inverse)
     79 ///
     80 /// \sa cwiseProduct()
     81 ///
     82 EIGEN_DEVICE_FUNC
     83 inline const CwiseInverseReturnType
     84 cwiseInverse() const { return CwiseInverseReturnType(derived()); }
     85 
     86 /// \returns an expression of the coefficient-wise phase angle of \c *this
     87 ///
     88 /// Example: \include MatrixBase_cwiseArg.cpp
     89 /// Output: \verbinclude MatrixBase_cwiseArg.out
     90 ///
     91 EIGEN_DOC_UNARY_ADDONS(cwiseArg,arg)
     92 
     93 EIGEN_DEVICE_FUNC
     94 inline const CwiseArgReturnType
     95 cwiseArg() const { return CwiseArgReturnType(derived()); }