Main Page
Modules
Namespaces
Classes
Files
File List
File Members
include
armadillo_bits
operator_schur.hpp
Go to the documentation of this file.
1
// Copyright (C) 2008-2010 NICTA (www.nicta.com.au)
2
// Copyright (C) 2008-2010 Conrad Sanderson
3
//
4
// This file is part of the Armadillo C++ library.
5
// It is provided without any warranty of fitness
6
// for any purpose. You can redistribute this file
7
// and/or modify it under the terms of the GNU
8
// Lesser General Public License (LGPL) as published
9
// by the Free Software Foundation, either version 3
10
// of the License or (at your option) any later version.
11
// (see http://www.opensource.org/licenses for more info)
12
13
16
17
18
// operator %, which we define it to do a schur product (element-wise multiplication)
19
20
22
template
<
typename
T1,
typename
T2>
23
arma_inline
24
const
eGlue<T1, T2, eglue_schur>
25
operator
%
26
(
27
const
Base<typename T1::elem_type,T1>
& X,
28
const
Base<typename T1::elem_type,T2>
& Y
29
)
30
{
31
arma_extra_debug_sigprint
();
32
33
return
eGlue<T1, T2, eglue_schur>
(X.
get_ref
(), Y.get_ref());
34
}
35
36
37
39
template
<
typename
T1,
typename
T2>
40
inline
41
const
mtGlue<typename promote_type<typename T1::elem_type, typename T2::elem_type>::result
, T1, T2,
glue_mixed_schur
>
42
operator
%
43
(
44
const
Base< typename force_different_type<typename T1::elem_type, typename T2::elem_type>::T1_result
, T1>& X,
45
const
Base< typename force_different_type<typename T1::elem_type, typename T2::elem_type>::T2_result
, T2>& Y
46
)
47
{
48
arma_extra_debug_sigprint
();
49
50
typedef
typename
T1::elem_type eT1;
51
typedef
typename
T2::elem_type eT2;
52
53
typedef
typename
promote_type<eT1,eT2>::result
out_eT;
54
55
promote_type<eT1,eT2>::check
();
56
57
return
mtGlue<out_eT, T1, T2, glue_mixed_schur>
( X.
get_ref
(), Y.get_ref() );
58
}
59
60
61
promote_type::result
is_promotable< T1, T2 >::result result
Definition:
promote_type.hpp:204
Base
Definition:
Base_bones.hpp:25
promote_type::check
static void check()
Definition:
promote_type.hpp:199
eGlue
Definition:
eGlue_bones.hpp:19
Base::get_ref
arma_inline const derived & get_ref() const
Definition:
Base_meat.hpp:22
glue_mixed_schur
Definition:
glue_mixed_bones.hpp:68
mtGlue
Definition:
forward_bones.hpp:94
arma_extra_debug_sigprint
#define arma_extra_debug_sigprint
Definition:
debug.hpp:1116
arma_inline
#define arma_inline
Definition:
compiler_setup.hpp:19
armadillo_matrix
Author(s):
autogenerated on Fri Apr 16 2021 02:31:58