C-XSC - A C++ Class Library for Extended Scientific Computing  2.5.4
iveccvec.inl
1 /*
2 ** CXSC is a C++ library for eXtended Scientific Computing (V 2.5.4)
3 **
4 ** Copyright (C) 1990-2000 Institut fuer Angewandte Mathematik,
5 ** Universitaet Karlsruhe, Germany
6 ** (C) 2000-2014 Wiss. Rechnen/Softwaretechnologie
7 ** Universitaet Wuppertal, Germany
8 **
9 ** This library is free software; you can redistribute it and/or
10 ** modify it under the terms of the GNU Library General Public
11 ** License as published by the Free Software Foundation; either
12 ** version 2 of the License, or (at your option) any later version.
13 **
14 ** This library is distributed in the hope that it will be useful,
15 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
16 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 ** Library General Public License for more details.
18 **
19 ** You should have received a copy of the GNU Library General Public
20 ** License along with this library; if not, write to the Free
21 ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 */
23 
24 /* CVS $Id: iveccvec.inl,v 1.25 2014/01/30 17:23:45 cxsc Exp $ */
25 
26 #ifndef _CXSC_IVECCVEC_INL_INCLUDED
27 #define _CXSC_IVECCVEC_INL_INCLUDED
28 
29 #include "cinterval.hpp"
30 
31 namespace cxsc {
32 
33 
34  INLINE cinterval operator *(const cvector & rv1, const ivector &rv2)
35 #if(CXSC_INDEX_CHECK)
36 
37 #else
38  noexcept
39 #endif
40  { return _vvcimult<cvector,ivector,cinterval>(rv1,rv2); }
41  INLINE cinterval operator *(const cvector_slice &sl, const ivector &rv)
42 #if(CXSC_INDEX_CHECK)
43 
44 #else
45  noexcept
46 #endif
47  { return _vsvcimult<cvector_slice,ivector,cinterval>(sl,rv); }
48  INLINE cinterval operator *(const cvector &rv, const ivector_slice &sl)
49 #if(CXSC_INDEX_CHECK)
50 
51 #else
52  noexcept
53 #endif
54  { return _vsvcimult<ivector_slice,cvector,cinterval>(sl,rv); }
55  INLINE cinterval operator *(const cvector_slice & sl1, const ivector_slice &sl2)
56 #if(CXSC_INDEX_CHECK)
57 
58 #else
59  noexcept
60 #endif
61  { return _vsvscimult<cvector_slice,ivector_slice,cinterval>(sl1,sl2); }
62 
63  INLINE cinterval operator *(const ivector & rv1, const cvector &rv2)
64 #if(CXSC_INDEX_CHECK)
65 
66 #else
67  noexcept
68 #endif
69  { return _vvcimult<cvector,ivector,cinterval>(rv2,rv1); }
70  INLINE cinterval operator *(const ivector_slice &sl, const cvector &rv)
71 #if(CXSC_INDEX_CHECK)
72 
73 #else
74  noexcept
75 #endif
76  { return _vsvcimult<ivector_slice,cvector,cinterval>(sl,rv); }
77  INLINE cinterval operator *(const ivector &rv, const cvector_slice &sl)
78 #if(CXSC_INDEX_CHECK)
79 
80 #else
81  noexcept
82 #endif
83  { return _vsvcimult<cvector_slice,ivector,cinterval>(sl,rv); }
84  INLINE cinterval operator *(const ivector_slice & sl1, const cvector_slice &sl2)
85 #if(CXSC_INDEX_CHECK)
86 
87 #else
88  noexcept
89 #endif
90  { return _vsvscimult<cvector_slice,ivector_slice,cinterval>(sl2,sl1); }
91 
92 } // namespace cxsc
93 
94 #endif
95 
cxsc::cvector
The Data Type cvector.
Definition: cvector.hpp:58
cxsc::ivector_slice
The Data Type ivector_slice.
Definition: ivector.hpp:963
cxsc::operator*
civector operator*(const cimatrix_subv &rv, const cinterval &s) noexcept
Implementation of multiplication operation.
Definition: cimatrix.inl:731
cxsc::ivector
The Data Type ivector.
Definition: ivector.hpp:55
cxsc
The namespace cxsc, providing all functionality of the class library C-XSC.
Definition: cdot.cpp:29
cxsc::cinterval
The Scalar Type cinterval.
Definition: cinterval.hpp:55
cxsc::cvector_slice
The Data Type cvector_slice.
Definition: cvector.hpp:845