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  throw(ERROR__OP_WITH_WRONG_DIM<civector>)
37 #else
38  throw()
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  throw(ERROR__OP_WITH_WRONG_DIM<civector>)
44 #else
45  throw()
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  throw(ERROR__OP_WITH_WRONG_DIM<civector>)
51 #else
52  throw()
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  throw(ERROR__OP_WITH_WRONG_DIM<civector>)
58 #else
59  throw()
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  throw(ERROR__OP_WITH_WRONG_DIM<civector>)
66 #else
67  throw()
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  throw(ERROR__OP_WITH_WRONG_DIM<civector>)
73 #else
74  throw()
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  throw(ERROR__OP_WITH_WRONG_DIM<civector>)
80 #else
81  throw()
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  throw(ERROR__OP_WITH_WRONG_DIM<civector>)
87 #else
88  throw()
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:57
cxsc::ivector_slice
The Data Type ivector_slice.
Definition: ivector.hpp:962
cxsc::operator*
civector operator*(const cimatrix_subv &rv, const cinterval &s)
Implementation of multiplication operation.
Definition: cimatrix.inl:731
cxsc::ivector
The Data Type ivector.
Definition: ivector.hpp:54
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:54
cxsc::cvector_slice
The Data Type cvector_slice.
Definition: cvector.hpp:844