C-XSC - A C++ Class Library for Extended Scientific Computing  2.5.4
civecimat.hpp
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: civecimat.hpp,v 1.24 2014/01/30 17:23:44 cxsc Exp $ */
25 
26 // Here are definitions for civector x imatrix-Functions
27 #ifndef _CXSC_CIVECIMAT_HPP_INCLUDED
28 #define _CXSC_CIVECIMAT_HPP_INCLUDED
29 
30 namespace cxsc {
31 
32  INLINE civector _civector(const imatrix &sl)
33 #if(CXSC_INDEX_CHECK)
34  throw(ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ);
35 #else
36  throw();
37 #endif
38  INLINE civector _civector(const imatrix_slice &sl)
39 #if(CXSC_INDEX_CHECK)
40  throw(ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ);
41 #else
42  throw();
43 #endif
44 
45  void accumulate(cidotprecision &dp, const imatrix_subv & rv1, const civector &rv2)
46 #if(CXSC_INDEX_CHECK)
47  throw(OP_WITH_WRONG_DIM);
48 #else
49  throw();
50 #endif
51  void accumulate(cidotprecision &dp, const civector & rv1, const imatrix_subv &rv2)
52 #if(CXSC_INDEX_CHECK)
53  throw(OP_WITH_WRONG_DIM);
54 #else
55  throw();
56 #endif
57  void accumulate(cidotprecision &dp, const imatrix_subv & rv1, const civector_slice &rv2)
58 #if(CXSC_INDEX_CHECK)
59  throw(OP_WITH_WRONG_DIM);
60 #else
61  throw();
62 #endif
63  void accumulate(cidotprecision &dp, const civector_slice & rv1, const imatrix_subv &rv2)
64 #if(CXSC_INDEX_CHECK)
65  throw(OP_WITH_WRONG_DIM);
66 #else
67  throw();
68 #endif
69 
70  INLINE void SetIm(civector &iv,const imatrix_subv &rv)
71 #if(CXSC_INDEX_CHECK)
72  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
73 #else
74  throw();
75 #endif
76  INLINE void SetRe(civector &iv,const imatrix_subv &rv)
77 #if(CXSC_INDEX_CHECK)
78  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
79 #else
80  throw();
81 #endif
82  INLINE void SetIm(civector_slice &iv,const imatrix_subv &rv)
83 #if(CXSC_INDEX_CHECK)
84  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
85 #else
86  throw();
87 #endif
88  INLINE void SetRe(civector_slice &iv,const imatrix_subv &rv)
89 #if(CXSC_INDEX_CHECK)
90  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
91 #else
92  throw();
93 #endif
94 
95 
96  INLINE civector operator *(const imatrix &m,const civector &v)
97 #if(CXSC_INDEX_CHECK)
98  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
99 #else
100  throw();
101 #endif
102  INLINE civector operator *(const imatrix_slice &ms,const civector &v)
103 #if(CXSC_INDEX_CHECK)
104  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
105 #else
106  throw();
107 #endif
108  INLINE civector operator *(const civector &v,const imatrix &m)
109 #if(CXSC_INDEX_CHECK)
110  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
111 #else
112  throw();
113 #endif
114  INLINE civector operator *(const civector &v,const imatrix_slice &ms)
115 #if(CXSC_INDEX_CHECK)
116  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
117 #else
118  throw();
119 #endif
120  INLINE civector &operator *=(civector &v,const imatrix &m)
121 #if(CXSC_INDEX_CHECK)
122  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
123 #else
124  throw();
125 #endif
126  INLINE civector &operator *=(civector &v,const imatrix_slice &ms)
127 #if(CXSC_INDEX_CHECK)
128  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
129 #else
130  throw();
131 #endif
132 
133  INLINE civector operator *(const civector_slice &v,const imatrix &m)
134 #if(CXSC_INDEX_CHECK)
135  throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
136 #else
137  throw();
138 #endif
139 
140 
141  INLINE civector operator *(const cvector &v,const imatrix &m)
142 #if(CXSC_INDEX_CHECK)
143  throw(ERROR_CIMATRIX_OP_WITH_WRONG_DIM);
144 #else
145  throw();
146 #endif
147  INLINE civector operator *(const cvector &v,const imatrix_slice &ms)
148 #if(CXSC_INDEX_CHECK)
149  throw(ERROR_CIMATRIX_OP_WITH_WRONG_DIM);
150 #else
151  throw();
152 #endif
153  INLINE civector operator *(const cvector_slice &v,const imatrix &m)
154 #if(CXSC_INDEX_CHECK)
155  throw(ERROR_CIMATRIX_OP_WITH_WRONG_DIM);
156 #else
157  throw();
158 #endif
159  INLINE civector operator *(const imatrix &m,const cvector &v)
160 #if(CXSC_INDEX_CHECK)
161  throw(ERROR_CIMATRIX_OP_WITH_WRONG_DIM);
162 #else
163  throw();
164 #endif
165  INLINE civector operator *(const imatrix_slice &ms,const cvector &v)
166 #if(CXSC_INDEX_CHECK)
167  throw(ERROR_CIMATRIX_OP_WITH_WRONG_DIM);
168 #else
169  throw();
170 #endif
171 
172 } // namespace cxsc
173 
174 #endif
175 
The namespace cxsc, providing all functionality of the class library C-XSC.
Definition: cdot.cpp:29
civector operator*(const cimatrix_subv &rv, const cinterval &s)
Implementation of multiplication operation.
Definition: cimatrix.inl:731
cimatrix & operator*=(cimatrix &m, const cinterval &c)
Implementation of multiplication and allocation operation.
Definition: cimatrix.inl:1605