C-XSC - A C++ Class Library for Extended Scientific Computing
2.5.4
|
00001 /* 00002 ** CXSC is a C++ library for eXtended Scientific Computing (V 2.5.4) 00003 ** 00004 ** Copyright (C) 1990-2000 Institut fuer Angewandte Mathematik, 00005 ** Universitaet Karlsruhe, Germany 00006 ** (C) 2000-2014 Wiss. Rechnen/Softwaretechnologie 00007 ** Universitaet Wuppertal, Germany 00008 ** 00009 ** This library is free software; you can redistribute it and/or 00010 ** modify it under the terms of the GNU Library General Public 00011 ** License as published by the Free Software Foundation; either 00012 ** version 2 of the License, or (at your option) any later version. 00013 ** 00014 ** This library is distributed in the hope that it will be useful, 00015 ** but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00017 ** Library General Public License for more details. 00018 ** 00019 ** You should have received a copy of the GNU Library General Public 00020 ** License along with this library; if not, write to the Free 00021 ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00022 */ 00023 00024 /* CVS $Id: l_ivector.hpp,v 1.19 2014/01/30 17:23:46 cxsc Exp $ */ 00025 00026 #ifndef _CXSC_LIVECTOR_HPP_INCLUDED 00027 #define _CXSC_LIVECTOR_HPP_INCLUDED 00028 00029 #include "xscclass.hpp" 00030 #include "except.hpp" 00031 #include "idot.hpp" 00032 #include "l_interval.hpp" // used for declaration of Inf, Sup,... 00033 //#include "cxscmatr.hpp" 00034 #include "rvector.hpp" 00035 #include "ivector.hpp" 00036 #include "l_rvector.hpp" 00037 #include "vector.hpp" 00038 00039 00040 #include <iostream> 00041 00042 //#include "matrix.hpp" // hat hier eigentlich nichts zu suchen, sonst aber Internal Compiler Error #9 00043 00044 namespace cxsc { 00045 00046 class l_ivector_slice; 00047 00049 00054 class l_ivector 00055 { 00056 friend class l_ivector_slice; 00057 friend class l_imatrix; 00058 friend class l_imatrix_subv; 00059 private: 00060 l_interval *dat; 00061 int l,u,size; 00062 00063 public: 00064 //#if(CXSC_INDEX_CHECK) 00065 #ifdef _CXSC_FRIEND_TPL 00066 //------------ Templates -------------------------------------------------- 00067 // l_interval 00068 template <class V,class MS,class S> friend void _vmsconstr(V &v,const MS &m) 00069 #if(CXSC_INDEX_CHECK) 00070 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<MS>); 00071 #else 00072 throw(); 00073 #endif 00074 template <class V,class M,class S> friend void _vmconstr(V &v,const M &m) 00075 #if(CXSC_INDEX_CHECK) 00076 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>); 00077 #else 00078 throw(); 00079 #endif 00080 template <class V> friend void _vresize(V &rv) throw(); 00081 template <class V,class S> friend void _vresize(V &rv, const int &len) 00082 #if(CXSC_INDEX_CHECK) 00083 throw(ERROR__WRONG_BOUNDARIES<V>); 00084 #else 00085 throw(); 00086 #endif 00087 template <class V,class S> friend void _vresize(V &rv, const int &lb, const int &ub) 00088 #if(CXSC_INDEX_CHECK) 00089 throw(ERROR__WRONG_BOUNDARIES<V>); 00090 #else 00091 throw(); 00092 #endif 00093 template <class V1,class V2,class S> friend V1 &_vvassign(V1 &rv1,const V2 &rv2) throw(); 00094 template <class V,class S> friend V & _vsassign(V &rv,const S &r) throw(); 00095 template <class V,class VS,class S> friend V & _vvsassign(V &rv,const VS &sl) throw(); 00096 template <class VS,class V> friend VS & _vsvassign(VS &sl,const V &rv) 00097 #if(CXSC_INDEX_CHECK) 00098 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 00099 #else 00100 throw(); 00101 #endif 00102 template <class V,class M,class S> friend V &_vmassign(V &v,const M &m) 00103 #if(CXSC_INDEX_CHECK) 00104 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>); 00105 #else 00106 throw(); 00107 #endif 00108 template <class M,class V,class S> friend M &_mvassign(M &m,const V &v) throw(); 00109 template <class V1,class V2> friend V1 &_vvsetinf(V1 &rv1, const V2 &rv2) 00110 #if(CXSC_INDEX_CHECK) 00111 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00112 #else 00113 throw(); 00114 #endif 00115 template <class V1,class V2> friend V1 &_vvsetsup(V1 &rv1, const V2 &rv2) 00116 #if(CXSC_INDEX_CHECK) 00117 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00118 #else 00119 throw(); 00120 #endif 00121 template <class V,class VS> friend V &_vvssetinf(V &rv, const VS &sl) 00122 #if(CXSC_INDEX_CHECK) 00123 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00124 #else 00125 throw(); 00126 #endif 00127 template <class V,class VS> friend V &_vvssetsup(V &rv, const VS &sl) 00128 #if(CXSC_INDEX_CHECK) 00129 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00130 #else 00131 throw(); 00132 #endif 00133 template <class V,class MV> friend V &_vmvsetinf(V &rv,const MV &v) 00134 #if(CXSC_INDEX_CHECK) 00135 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00136 #else 00137 throw(); 00138 #endif 00139 template <class V,class MV> friend V &_vmvsetsup(V &rv,const MV &v) 00140 #if(CXSC_INDEX_CHECK) 00141 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00142 #else 00143 throw(); 00144 #endif 00145 template <class V1,class V2> friend V1 &_vvusetinf(V1 &rv1, const V2 &rv2) 00146 #if(CXSC_INDEX_CHECK) 00147 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00148 #else 00149 throw(); 00150 #endif 00151 template <class V1,class V2> friend V1 &_vvusetsup(V1 &rv1, const V2 &rv2) 00152 #if(CXSC_INDEX_CHECK) 00153 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00154 #else 00155 throw(); 00156 #endif 00157 template <class V,class VS> friend V &_vvsusetinf(V &rv, const VS &sl) 00158 #if(CXSC_INDEX_CHECK) 00159 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00160 #else 00161 throw(); 00162 #endif 00163 template <class V,class VS> friend V &_vvsusetsup(V &rv, const VS &sl) 00164 #if(CXSC_INDEX_CHECK) 00165 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00166 #else 00167 throw(); 00168 #endif 00169 template <class V,class MV> friend V &_vmvusetinf(V &rv,const MV &v) 00170 #if(CXSC_INDEX_CHECK) 00171 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00172 #else 00173 throw(); 00174 #endif 00175 template <class V,class MV> friend V &_vmvusetsup(V &rv,const MV &v) 00176 #if(CXSC_INDEX_CHECK) 00177 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00178 #else 00179 throw(); 00180 #endif 00181 template <class V,class S> friend V &_vssetinf(V &v, const S &s) throw(); 00182 template <class V,class S> friend V &_vssetsup(V &v, const S &s) throw(); 00183 template <class V,class S> friend V &_vsusetinf(V &v, const S &s) throw(); 00184 template <class V,class S> friend V &_vsusetsup(V &v, const S &s) throw(); 00185 template <class V,class E> friend E _vabs(const V &rv) throw(); 00186 template <class VS,class E> friend E _vsabs(const VS &sl) throw(); 00187 template <class MV,class V> friend V _mvabs(const MV &mv) throw(); 00188 template <class V,class E> friend E _vdiam(const V &rv) throw(); 00189 template <class V,class E> friend E _vmid(const V &rv) throw(); 00190 template <class V,class E> friend E _vinf(const V &rv) throw(); 00191 template <class V,class E> friend E _vsup(const V &rv) throw(); 00192 00193 //-------- vector-vector ----------------------- 00194 template <class DP,class V1,class V2> friend void _vvaccu(DP &dp, const V1 & rv1, const V2 &rv2) 00195 #if(CXSC_INDEX_CHECK) 00196 throw(OP_WITH_WRONG_DIM); 00197 #else 00198 throw(); 00199 #endif 00200 template <class DP,class VS,class V> friend void _vsvaccu(DP &dp, const VS & sl, const V &rv) 00201 #if(CXSC_INDEX_CHECK) 00202 throw(OP_WITH_WRONG_DIM); 00203 #else 00204 throw(); 00205 #endif 00206 00207 template <class V1,class V2,class E> friend E _vvlimult(const V1 & rv1, const V2 &rv2) 00208 #if(CXSC_INDEX_CHECK) 00209 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00210 #else 00211 throw(); 00212 #endif 00213 template <class VS,class V,class E> friend E _vsvlimult(const VS & sl, const V &rv) 00214 #if(CXSC_INDEX_CHECK) 00215 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00216 #else 00217 throw(); 00218 #endif 00219 00220 template <class V,class S> friend V &_vsmultassign(V &rv,const S &r) throw(); 00221 template <class V1,class V2,class E> friend E _vvplus(const V1 &rv1, const V2 &rv2) 00222 #if(CXSC_INDEX_CHECK) 00223 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00224 #else 00225 throw(); 00226 #endif 00227 template <class V,class VS,class E> friend E _vvsplus(const V &rv,const VS &sl) 00228 #if(CXSC_INDEX_CHECK) 00229 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00230 #else 00231 throw(); 00232 #endif 00233 template <class VS1,class VS2,class E> friend E _vsvsplus(const VS1 &s1,const VS2 &s2) 00234 #if(CXSC_INDEX_CHECK) 00235 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00236 #else 00237 throw(); 00238 #endif 00239 template <class VS1,class VS2,class E> friend E _vsvsminus(const VS1 &s1,const VS2 &s2) 00240 #if(CXSC_INDEX_CHECK) 00241 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00242 #else 00243 throw(); 00244 #endif 00245 template <class V1,class V2> friend V1 &_vvplusassign(V1 &rv1, const V2 &rv2) 00246 #if(CXSC_INDEX_CHECK) 00247 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00248 #else 00249 throw(); 00250 #endif 00251 template <class V,class VS> friend V &_vvsplusassign(V &rv, const VS &sl) 00252 #if(CXSC_INDEX_CHECK) 00253 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00254 #else 00255 throw(); 00256 #endif 00257 template <class VS,class V> friend VS &_vsvplusassign(VS &sl, const V &rv) 00258 #if(CXSC_INDEX_CHECK) 00259 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 00260 #else 00261 throw(); 00262 #endif 00263 template <class VS1,class VS2> friend VS1 &_vsvsplusassign(VS1 &sl1, const VS2 &sl2) 00264 #if(CXSC_INDEX_CHECK) 00265 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00266 #else 00267 throw(); 00268 #endif 00269 template <class VS1,class VS2> friend VS1 &_vsvsminusassign(VS1 &sl1, const VS2 &sl2) 00270 #if(CXSC_INDEX_CHECK) 00271 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00272 #else 00273 throw(); 00274 #endif 00275 template <class V1,class V2> friend V1 &_vvminusassign(V1 &rv1, const V2 &rv2) 00276 #if(CXSC_INDEX_CHECK) 00277 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00278 #else 00279 throw(); 00280 #endif 00281 template <class V,class VS> friend V &_vvsminusassign(V &rv, const VS &sl) 00282 #if(CXSC_INDEX_CHECK) 00283 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00284 #else 00285 throw(); 00286 #endif 00287 template <class VS,class V> friend VS &_vsvminusassign(VS &sl, const V &rv) 00288 #if(CXSC_INDEX_CHECK) 00289 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 00290 #else 00291 throw(); 00292 #endif 00293 template <class V> friend V _vminus(const V &rv) throw(); 00294 template <class VS,class V> friend V _vsminus(const VS &sl) throw(); 00295 template <class V1,class V2,class E> friend E _vvminus(const V1 &rv1, const V2 &rv2) 00296 #if(CXSC_INDEX_CHECK) 00297 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00298 #else 00299 throw(); 00300 #endif 00301 template <class V,class VS,class E> friend E _vvsminus(const V &rv, const VS &sl) 00302 #if(CXSC_INDEX_CHECK) 00303 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00304 #else 00305 throw(); 00306 #endif 00307 template <class VS,class V,class E> friend E _vsvminus(const VS &sl,const V &rv) 00308 #if(CXSC_INDEX_CHECK) 00309 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00310 #else 00311 throw(); 00312 #endif 00313 template <class V1,class V2,class E> friend E _vvconv(const V1 &rv1, const V2 &rv2) 00314 #if(CXSC_INDEX_CHECK) 00315 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00316 #else 00317 throw(); 00318 #endif 00319 template <class V,class VS,class E> friend E _vvsconv(const V &rv,const VS &sl) 00320 #if(CXSC_INDEX_CHECK) 00321 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00322 #else 00323 throw(); 00324 #endif 00325 template <class VS1,class VS2,class E> friend E _vsvsconv(const VS1 &s1,const VS2 &s2) 00326 #if(CXSC_INDEX_CHECK) 00327 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00328 #else 00329 throw(); 00330 #endif 00331 template <class V1,class V2> friend V1 &_vvconvassign(V1 &rv1, const V2 &rv2) 00332 #if(CXSC_INDEX_CHECK) 00333 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00334 #else 00335 throw(); 00336 #endif 00337 template <class V,class VS> friend V &_vvsconvassign(V &rv, const VS &sl) 00338 #if(CXSC_INDEX_CHECK) 00339 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00340 #else 00341 throw(); 00342 #endif 00343 template <class VS,class V> friend VS &_vsvconvassign(VS &sl, const V &rv) 00344 #if(CXSC_INDEX_CHECK) 00345 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 00346 #else 00347 throw(); 00348 #endif 00349 template <class VS1,class VS2> friend VS1 &_vsvsconvassign(VS1 &sl1, const VS2 &sl2) 00350 #if(CXSC_INDEX_CHECK) 00351 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00352 #else 00353 throw(); 00354 #endif 00355 template <class V1,class V2,class E> friend E _vvsect(const V1 &rv1, const V2 &rv2) 00356 #if(CXSC_INDEX_CHECK) 00357 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00358 #else 00359 throw(); 00360 #endif 00361 template <class V,class VS,class E> friend E _vvssect(const V &rv,const VS &sl) 00362 #if(CXSC_INDEX_CHECK) 00363 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00364 #else 00365 throw(); 00366 #endif 00367 template <class VS1,class VS2,class E> friend E _vsvssect(const VS1 &s1,const VS2 &s2) 00368 #if(CXSC_INDEX_CHECK) 00369 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00370 #else 00371 throw(); 00372 #endif 00373 template <class V1,class V2> friend V1 &_vvsectassign(V1 &rv1, const V2 &rv2) 00374 #if(CXSC_INDEX_CHECK) 00375 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 00376 #else 00377 throw(); 00378 #endif 00379 template <class V,class VS> friend V &_vvssectassign(V &rv, const VS &sl) 00380 #if(CXSC_INDEX_CHECK) 00381 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00382 #else 00383 throw(); 00384 #endif 00385 template <class VS,class V> friend VS &_vsvsectassign(VS &sl, const V &rv) 00386 #if(CXSC_INDEX_CHECK) 00387 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 00388 #else 00389 throw(); 00390 #endif 00391 template <class VS1,class VS2> friend VS1 &_vsvssectassign(VS1 &sl1, const VS2 &sl2) 00392 #if(CXSC_INDEX_CHECK) 00393 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00394 #else 00395 throw(); 00396 #endif 00397 template <class MV1,class MV2,class E> friend E _mvmvsect(const MV1 &rv1, const MV2 &rv2) 00398 #if(CXSC_INDEX_CHECK) 00399 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00400 #else 00401 throw(); 00402 #endif 00403 template <class MV,class V,class E> friend E _mvvsect(const MV &rv1, const V &rv2) 00404 #if(CXSC_INDEX_CHECK) 00405 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00406 #else 00407 throw(); 00408 #endif 00409 template <class MV,class V> friend MV &_mvvsectassign(MV &v,const V &rv) 00410 #if(CXSC_INDEX_CHECK) 00411 throw(ERROR__OP_WITH_WRONG_DIM<MV>); 00412 #else 00413 throw(); 00414 #endif 00415 template <class V,class MV> friend V &_vmvsectassign(V &rv,const MV &v) 00416 #if(CXSC_INDEX_CHECK) 00417 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00418 #else 00419 throw(); 00420 #endif 00421 template <class MV1,class MV2,class E> friend E _mvmvconv(const MV1 &rv1, const MV2 &rv2) 00422 #if(CXSC_INDEX_CHECK) 00423 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00424 #else 00425 throw(); 00426 #endif 00427 template <class MV,class V,class E> friend E _mvvconv(const MV &rv1, const V &rv2) 00428 #if(CXSC_INDEX_CHECK) 00429 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00430 #else 00431 throw(); 00432 #endif 00433 template <class MV,class V> friend MV &_mvvconvassign(MV &v,const V &rv) 00434 #if(CXSC_INDEX_CHECK) 00435 throw(ERROR__OP_WITH_WRONG_DIM<MV>); 00436 #else 00437 throw(); 00438 #endif 00439 template <class V,class MV> friend V &_vmvconvassign(V &rv,const MV &v) 00440 #if(CXSC_INDEX_CHECK) 00441 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00442 #else 00443 throw(); 00444 #endif 00445 template <class V,class MV,class S> friend S _vmvlimult(const V &rv1, const MV &rv2) 00446 #if(CXSC_INDEX_CHECK) 00447 throw(ERROR__OP_WITH_WRONG_DIM<MV>); 00448 #else 00449 throw(); 00450 #endif 00451 //--------- vector-scalar ----------------- 00452 template <class V,class S,class E> friend E _vsdiv(const V &rv, const S &s) throw(); 00453 template <class V,class S> friend V &_vsdivassign(V &rv,const S &r) throw(); 00454 template <class VS,class S,class E> friend E _vssdiv(const VS &sl, const S &s) throw(); 00455 template <class V,class S,class E> friend E _vsmult(const V &rv, const S &s) throw(); 00456 template <class VS,class S,class E> friend E _vssmult(const VS &sl, const S &s) throw(); 00457 template <class MV,class S,class E> friend E _mvsmult(const MV &rv, const S &s) throw(); 00458 template <class MV1,class MV2,class E> friend E _mvmvplus(const MV1 &rv1, const MV2 &rv2) 00459 #if(CXSC_INDEX_CHECK) 00460 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00461 #else 00462 throw(); 00463 #endif 00464 template <class MV,class V,class E> friend E _mvvplus(const MV &rv1, const V &rv2) 00465 #if(CXSC_INDEX_CHECK) 00466 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00467 #else 00468 throw(); 00469 #endif 00470 template <class MV,class V,class E> friend E _mvvminus(const MV &rv1, const V &rv2) 00471 #if(CXSC_INDEX_CHECK) 00472 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00473 #else 00474 throw(); 00475 #endif 00476 template <class V,class MV,class E> friend E _vmvminus(const V &rv1, const MV &rv2) 00477 #if(CXSC_INDEX_CHECK) 00478 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00479 #else 00480 throw(); 00481 #endif 00482 template <class MV1,class MV2,class E> friend E _mvmvminus(const MV1 &rv1, const MV2 &rv2) 00483 #if(CXSC_INDEX_CHECK) 00484 throw(ERROR__OP_WITH_WRONG_DIM<E>); 00485 #else 00486 throw(); 00487 #endif 00488 template <class MV,class V> friend MV &_mvvplusassign(MV &v,const V &rv) 00489 #if(CXSC_INDEX_CHECK) 00490 throw(ERROR__OP_WITH_WRONG_DIM<MV>); 00491 #else 00492 throw(); 00493 #endif 00494 template <class MV,class V> friend MV &_mvvminusassign(MV &v,const V &rv) 00495 #if(CXSC_INDEX_CHECK) 00496 throw(ERROR__OP_WITH_WRONG_DIM<MV>); 00497 #else 00498 throw(); 00499 #endif 00500 template <class MV,class S,class E> friend E _mvsdiv(const MV &rv, const S &s) throw(); 00501 template <class MV,class V> friend MV &_mvvassign(MV &v,const V &rv) 00502 #if(CXSC_INDEX_CHECK) 00503 throw(ERROR__OP_WITH_WRONG_DIM<MV>); 00504 #else 00505 throw(); 00506 #endif 00507 00508 template <class V1,class V2> friend bool _vveq(const V1 &rv1, const V2 &rv2) throw(); 00509 template <class VS,class V> friend bool _vsveq(const VS &sl, const V &rv) throw(); 00510 template <class V1,class V2> friend bool _vvneq(const V1 &rv1, const V2 &rv2) throw(); 00511 template <class VS,class V> friend bool _vsvneq(const VS &sl, const V &rv) throw(); 00512 template <class V1,class V2> friend bool _vvless(const V1 &rv1, const V2 &rv2) throw(); 00513 template <class VS,class V> friend bool _vsvless(const VS &sl, const V &rv) throw(); 00514 template <class V1,class V2> friend bool _vvleq(const V1 &rv1, const V2 &rv2) throw(); 00515 template <class VS,class V> friend bool _vsvleq(const VS &sl, const V &rv) throw(); 00516 template <class V,class VS> friend bool _vvsless(const V &rv, const VS &sl) throw(); 00517 template <class V,class VS> friend bool _vvsleq(const V &rv, const VS &sl) throw(); 00518 template <class V> friend bool _vnot(const V &rv) throw(); 00519 template <class V> friend void *_vvoid(const V &rv) throw(); 00520 template <class VS1,class VS2> friend bool _vsvseq(const VS1 &sl1, const VS2 &sl2) throw(); 00521 template <class VS1,class VS2> friend bool _vsvsneq(const VS1 &sl1, const VS2 &sl2) throw(); 00522 template <class VS1,class VS2> friend bool _vsvsless(const VS1 &sl1, const VS2 &sl2) throw(); 00523 template <class VS1,class VS2> friend bool _vsvsleq(const VS1 &sl1, const VS2 &sl2) throw(); 00524 template <class VS> friend bool _vsnot(const VS &sl) throw(); 00525 template <class VS> friend void *_vsvoid(const VS &sl) throw(); 00526 template <class V> friend std::ostream &_vout(std::ostream &s, const V &rv) throw(); 00527 template <class V> friend std::istream &_vin(std::istream &s, V &rv) throw(); 00528 00529 //------------- vector-matrix --------------- 00530 template <class DP,class V,class SV> friend void _vmvaccu(DP &dp, const V & rv1, const SV &rv2) 00531 #if(CXSC_INDEX_CHECK) 00532 throw(OP_WITH_WRONG_DIM); 00533 #else 00534 throw(); 00535 #endif 00536 00537 template <class V,class MV2,class S> friend V &_vmvassign(V &v,const MV2 &rv) throw(); 00538 template <class M,class V,class E> friend E _mvlimult(const M &m,const V &v) 00539 #if(CXSC_INDEX_CHECK) 00540 throw(ERROR__OP_WITH_WRONG_DIM<M>); 00541 #else 00542 throw(); 00543 #endif 00544 template <class V,class M,class E> friend E _vmlimult(const V &v,const M &m) 00545 #if(CXSC_INDEX_CHECK) 00546 throw(ERROR__OP_WITH_WRONG_DIM<M>); 00547 #else 00548 throw(); 00549 #endif 00550 template <class V,class M,class S> friend V &_vmimultassign(V &v,const M &m) 00551 #if(CXSC_INDEX_CHECK) 00552 throw(ERROR__OP_WITH_WRONG_DIM<M>); 00553 #else 00554 throw(); 00555 #endif 00556 template <class V,class M,class S> friend V &_vmlimultassign(V &v,const M &m) 00557 #if(CXSC_INDEX_CHECK) 00558 throw(ERROR__OP_WITH_WRONG_DIM<M>); 00559 #else 00560 throw(); 00561 #endif 00562 template <class MS,class V,class E> friend E _msvlimult(const MS &ms,const V &v) 00563 #if(CXSC_INDEX_CHECK) 00564 throw(ERROR__OP_WITH_WRONG_DIM<MS>); 00565 #else 00566 throw(); 00567 #endif 00568 template <class V,class MS,class E> friend E _vmslimult(const V &v,const MS &ms) 00569 #if(CXSC_INDEX_CHECK) 00570 throw(ERROR__OP_WITH_WRONG_DIM<MS>); 00571 #else 00572 throw(); 00573 #endif 00574 template <class V,class MS,class S> friend V &_vmslimultassign(V &v,const MS &ms) 00575 #if(CXSC_INDEX_CHECK) 00576 throw(ERROR__OP_WITH_WRONG_DIM<MS>); 00577 #else 00578 throw(); 00579 #endif 00580 00581 // Real 00582 template <class DP,class VS1,class VS2> friend void _vsvsaccu(DP &dp, const VS1 & sl1, const VS2 &sl2) 00583 #if(CXSC_INDEX_CHECK) 00584 throw(OP_WITH_WRONG_DIM); 00585 #else 00586 throw(); 00587 #endif 00588 00589 // l_rvector x ivector ---------------- 00590 // vector - matrix ------------ 00591 /* friend TINLINE l_ivector _mvslimult<imatrix,l_rvector_slice,l_ivector>(const imatrix &m,const l_rvector_slice &v) 00592 #if(CXSC_INDEX_CHECK) 00593 throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM); 00594 #else 00595 throw(); 00596 #endif */ 00597 /* friend TINLINE l_ivector _vsmlimult<l_rvector_slice,imatrix,l_ivector>(const l_rvector_slice &v,const imatrix &m) 00598 #if(CXSC_INDEX_CHECK) 00599 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM); 00600 #else 00601 throw(); 00602 #endif */ 00603 00604 00605 #endif 00606 00607 00608 //------ Konstruktoren ---------------------------------------------------- 00610 INLINE l_ivector () throw(); 00612 explicit INLINE l_ivector(const int &i) throw(); 00613 #ifdef OLD_CXSC 00614 00615 explicit INLINE l_ivector(const class index &i) throw(); // for backwards compatibility 00616 #endif 00617 00618 explicit INLINE l_ivector(const int &i1,const int &i2) 00619 #if(CXSC_INDEX_CHECK) 00620 throw(ERROR_LIVECTOR_WRONG_BOUNDARIES,ERROR_LIVECTOR_NO_MORE_MEMORY); 00621 #else 00622 throw(); 00623 #endif 00624 00625 INLINE l_ivector(const l_imatrix_subv &) throw(); 00627 explicit INLINE l_ivector(const l_interval &) throw(); 00629 explicit INLINE l_ivector(const l_imatrix &) 00630 #if(CXSC_INDEX_CHECK) 00631 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ); 00632 #else 00633 throw(); 00634 #endif 00635 00636 explicit INLINE l_ivector(const l_imatrix_slice &sl) 00637 #if(CXSC_INDEX_CHECK) 00638 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ); 00639 #else 00640 throw(); 00641 #endif 00642 00643 INLINE l_ivector(const l_ivector_slice &rs) throw(); 00645 INLINE l_ivector(const l_ivector &v) throw(); 00646 // Real 00648 explicit INLINE l_ivector(const real &) throw(); 00650 explicit INLINE l_ivector(const rvector_slice &rs) throw(); 00652 explicit INLINE l_ivector(const rvector &v) throw(); 00654 explicit INLINE l_ivector(const rmatrix &) 00655 #if(CXSC_INDEX_CHECK) 00656 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ); 00657 #else 00658 throw(); 00659 #endif 00660 00661 explicit INLINE l_ivector(const rmatrix_slice &sl) 00662 #if(CXSC_INDEX_CHECK) 00663 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ); 00664 #else 00665 throw(); 00666 #endif 00667 00668 explicit INLINE l_ivector(const rmatrix_subv &) throw(); 00669 00670 // l_real 00672 explicit INLINE l_ivector(const l_real &) throw(); 00674 explicit INLINE l_ivector(const l_rvector_slice &rs) throw(); 00676 explicit INLINE l_ivector(const l_rvector &v) throw(); 00678 explicit INLINE l_ivector(const l_rmatrix &) 00679 #if(CXSC_INDEX_CHECK) 00680 throw(ERROR_LRMATRIX_TYPE_CAST_OF_THICK_OBJ); 00681 #else 00682 throw(); 00683 #endif 00684 00685 explicit INLINE l_ivector(const l_rmatrix_slice &sl) 00686 #if(CXSC_INDEX_CHECK) 00687 throw(ERROR_LRMATRIX_TYPE_CAST_OF_THICK_OBJ); 00688 #else 00689 throw(); 00690 #endif 00691 00692 explicit INLINE l_ivector(const l_rmatrix_subv &) throw(); 00693 00694 // interval 00696 explicit INLINE l_ivector(const interval &) throw(); 00698 explicit INLINE l_ivector(const ivector_slice &rs) throw(); 00700 explicit INLINE l_ivector(const ivector &v) throw(); 00702 explicit INLINE l_ivector(const imatrix &) 00703 #if(CXSC_INDEX_CHECK) 00704 throw(ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ); 00705 #else 00706 throw(); 00707 #endif 00708 00709 explicit INLINE l_ivector(const imatrix_slice &sl) 00710 #if(CXSC_INDEX_CHECK) 00711 throw(ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ); 00712 #else 00713 throw(); 00714 #endif 00715 00716 explicit INLINE l_ivector(const imatrix_subv &) throw(); 00717 00718 // l_interval 00720 INLINE l_ivector &operator =(const l_ivector &rv) throw(); 00722 INLINE l_ivector &operator =(const l_ivector_slice &sl) throw(); 00724 INLINE l_ivector &operator =(const l_interval &r) throw(); 00726 INLINE l_ivector &operator =(const l_imatrix &m) 00727 #if(CXSC_INDEX_CHECK) 00728 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ); 00729 #else 00730 throw(); 00731 #endif 00732 00733 INLINE l_ivector &operator =(const l_imatrix_slice &) 00734 #if(CXSC_INDEX_CHECK) 00735 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ); 00736 #else 00737 throw(); 00738 #endif 00739 00740 INLINE l_ivector &operator =(const l_imatrix_subv &) throw(); 00741 // Real 00743 INLINE l_ivector &operator =(const rvector &rv) throw(); 00745 INLINE l_ivector &operator =(const rvector_slice &sl) throw(); 00747 INLINE l_ivector &operator =(const real &r) throw(); 00749 INLINE l_ivector &operator =(const rmatrix &m) 00750 #if(CXSC_INDEX_CHECK) 00751 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ); 00752 #else 00753 throw(); 00754 #endif 00755 00756 INLINE l_ivector &operator =(const rmatrix_slice &) 00757 #if(CXSC_INDEX_CHECK) 00758 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ); 00759 #else 00760 throw(); 00761 #endif 00762 00763 INLINE l_ivector &operator =(const rmatrix_subv &) throw(); 00764 00765 // l_real 00767 INLINE l_ivector &operator =(const l_rvector &rv) throw(); 00769 INLINE l_ivector &operator =(const l_rvector_slice &sl) throw(); 00771 INLINE l_ivector &operator =(const l_real &r) throw(); 00773 INLINE l_ivector &operator =(const l_rmatrix &m) 00774 #if(CXSC_INDEX_CHECK) 00775 throw(ERROR_LRMATRIX_TYPE_CAST_OF_THICK_OBJ); 00776 #else 00777 throw(); 00778 #endif 00779 00780 INLINE l_ivector &operator =(const l_rmatrix_slice &) 00781 #if(CXSC_INDEX_CHECK) 00782 throw(ERROR_LRMATRIX_TYPE_CAST_OF_THICK_OBJ); 00783 #else 00784 throw(); 00785 #endif 00786 00787 INLINE l_ivector &operator =(const l_rmatrix_subv &) throw(); 00788 00789 // interval 00791 INLINE l_ivector &operator =(const ivector &rv) throw(); 00793 INLINE l_ivector &operator =(const ivector_slice &sl) throw(); 00795 INLINE l_ivector &operator =(const interval &r) throw(); 00797 INLINE l_ivector &operator =(const imatrix &m) 00798 #if(CXSC_INDEX_CHECK) 00799 throw(ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ); 00800 #else 00801 throw(); 00802 #endif 00803 00804 INLINE l_ivector &operator =(const imatrix_slice &) 00805 #if(CXSC_INDEX_CHECK) 00806 throw(ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ); 00807 #else 00808 throw(); 00809 #endif 00810 00811 INLINE l_ivector &operator =(const imatrix_subv &) throw(); 00812 00813 //--------- Destruktor ---------------------------------------------------- 00814 INLINE ~l_ivector() { delete [] dat; } 00815 00816 //------ Standardfunktionen ----------------------------------------------- 00817 00818 friend INLINE l_interval::l_interval(const l_ivector &) 00819 #if(CXSC_INDEX_CHECK) 00820 throw(ERROR_LIVECTOR_TYPE_CAST_OF_THICK_OBJ,ERROR_LIVECTOR_USE_OF_UNINITIALIZED_OBJ); 00821 #else 00822 throw(); 00823 #endif 00824 00825 friend INLINE int Lb(const l_ivector &rv) throw() { return rv.l; } 00827 friend INLINE int Ub(const l_ivector &rv) throw() { return rv.u; } 00829 friend INLINE int VecLen(const l_ivector &rv) throw() { return rv.size; } 00831 friend INLINE l_ivector & SetLb(l_ivector &rv, const int &l) throw() { rv.l=l; rv.u=l+rv.size-1; return rv;} 00833 friend INLINE l_ivector & SetUb(l_ivector &rv, const int &u) throw() { rv.u=u; rv.l=u-rv.size+1; return rv;} 00835 INLINE l_interval & operator [](const int &i) const 00836 #if(CXSC_INDEX_CHECK) 00837 throw(ERROR_LIVECTOR_ELEMENT_NOT_IN_VEC); 00838 #else 00839 throw(); 00840 #endif 00841 00842 INLINE l_ivector & operator ()() throw() { return *this; } 00844 INLINE l_ivector_slice operator ()(const int &i) 00845 #if(CXSC_INDEX_CHECK) 00846 throw(ERROR_LIVECTOR_SUB_ARRAY_TOO_BIG); 00847 #else 00848 throw(); 00849 #endif 00850 00851 INLINE l_ivector_slice operator ()(const int &i1,const int &i2) 00852 #if(CXSC_INDEX_CHECK) 00853 throw(ERROR_LIVECTOR_SUB_ARRAY_TOO_BIG); 00854 #else 00855 throw(); 00856 #endif 00857 00858 INLINE operator void*() throw(); 00859 //#else 00860 //#endif 00861 }; 00862 00863 00865 00870 class l_ivector_slice 00871 { 00872 friend class l_ivector; 00873 friend class l_imatrix; 00874 private: 00875 l_interval *dat; 00876 int l,u,size; 00877 int start,end; 00878 00879 public: 00880 //#if(CXSC_INDEX_CHECK) 00881 #ifdef _CXSC_FRIEND_TPL 00882 //------------------------- Templates ------------------------------------------- 00883 // l_interval / l_interval 00884 00885 template <class VS1,class VS2> friend VS1 & _vsvsassign(VS1 &sl1,const VS2 &sl2) 00886 #if(CXSC_INDEX_CHECK) 00887 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00888 #else 00889 throw(); 00890 #endif 00891 template <class V,class VS,class S> friend V & _vvsassign(V &rv,const VS &sl) throw(); 00892 template <class VS,class V> friend VS & _vsvassign(VS &sl,const V &rv) 00893 #if(CXSC_INDEX_CHECK) 00894 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 00895 #else 00896 throw(); 00897 #endif 00898 template <class VS,class S> friend VS & _vssassign(VS &sl,const S &r) throw(); 00899 template <class VS,class V> friend VS &_vsvsetinf(VS &sl, const V &rv) 00900 #if(CXSC_INDEX_CHECK) 00901 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 00902 #else 00903 throw(); 00904 #endif 00905 template <class VS,class V> friend VS &_vsvsetsup(VS &sl, const V &rv) 00906 #if(CXSC_INDEX_CHECK) 00907 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 00908 #else 00909 throw(); 00910 #endif 00911 template <class VS1,class VS2> friend VS1 &_vsvssetinf(VS1 &sl1, const VS2 &sl2) 00912 #if(CXSC_INDEX_CHECK) 00913 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00914 #else 00915 throw(); 00916 #endif 00917 template <class VS1,class VS2> friend VS1 &_vsvssetsup(VS1 &sl1, const VS2 &sl2) 00918 #if(CXSC_INDEX_CHECK) 00919 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00920 #else 00921 throw(); 00922 #endif 00923 template <class VS,class V> friend VS &_vsvusetinf(VS &sl, const V &rv) 00924 #if(CXSC_INDEX_CHECK) 00925 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 00926 #else 00927 throw(); 00928 #endif 00929 template <class VS,class V> friend VS &_vsvusetsup(VS &sl, const V &rv) 00930 #if(CXSC_INDEX_CHECK) 00931 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 00932 #else 00933 throw(); 00934 #endif 00935 template <class VS1,class VS2> friend VS1 &_vsvsusetinf(VS1 &sl1, const VS2 &sl2) 00936 #if(CXSC_INDEX_CHECK) 00937 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00938 #else 00939 throw(); 00940 #endif 00941 template <class VS1,class VS2> friend VS1 &_vsvsusetsup(VS1 &sl1, const VS2 &sl2) 00942 #if(CXSC_INDEX_CHECK) 00943 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00944 #else 00945 throw(); 00946 #endif 00947 00948 template <class VS,class E> friend E _vsabs(const VS &sl) throw(); 00949 template <class VS,class E> friend E _vsdiam(const VS &sl) throw(); 00950 template <class VS,class E> friend E _vsmid(const VS &sl) throw(); 00951 template <class VS,class E> friend E _vsinf(const VS &sl) throw(); 00952 template <class VS,class E> friend E _vssup(const VS &sl) throw(); 00953 template <class VS,class S> friend VS &_vsssetinf(VS &vs, const S &s) throw(); 00954 template <class VS,class S> friend VS &_vsssetsup(VS &vs, const S &s) throw(); 00955 template <class VS,class S> friend VS &_vssusetinf(VS &vs, const S &s) throw(); 00956 template <class VS,class S> friend VS &_vssusetsup(VS &vs, const S &s) throw(); 00957 00958 template <class DP,class VS,class V> friend void _vsvaccu(DP &dp, const VS & sl, const V &rv) 00959 #if(CXSC_INDEX_CHECK) 00960 throw(OP_WITH_WRONG_DIM); 00961 #else 00962 throw(); 00963 #endif 00964 template <class DP,class VS1,class VS2> friend void _vsvsaccu(DP &dp, const VS1 & sl1, const VS2 &sl2) 00965 #if(CXSC_INDEX_CHECK) 00966 throw(OP_WITH_WRONG_DIM); 00967 #else 00968 throw(); 00969 #endif 00970 00971 template <class VS,class S,class E> friend E _vssdiv(const VS &sl, const S &s) throw(); 00972 template <class VS,class S,class E> friend E _vssmult(const VS &sl, const S &s) throw(); 00973 template <class VS,class V,class E> friend E _vsvlimult(const VS & sl, const V &rv) 00974 #if(CXSC_INDEX_CHECK) 00975 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00976 #else 00977 throw(); 00978 #endif 00979 template <class VS,class S> friend VS &_vssmultassign(VS &rv,const S &r) throw(); 00980 template <class VS,class S> friend VS &_vssdivassign(VS &rv,const S &r) throw(); 00981 template <class V,class VS,class E> friend E _vvsplus(const V &rv,const VS &sl) 00982 #if(CXSC_INDEX_CHECK) 00983 throw(ERROR__OP_WITH_WRONG_DIM<V>); 00984 #else 00985 throw(); 00986 #endif 00987 template <class VS1,class VS2,class E> friend E _vsvsplus(const VS1 &s1,const VS2 &s2) 00988 #if(CXSC_INDEX_CHECK) 00989 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00990 #else 00991 throw(); 00992 #endif 00993 template <class VS1,class VS2,class E> friend E _vsvsminus(const VS1 &s1,const VS2 &s2) 00994 #if(CXSC_INDEX_CHECK) 00995 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 00996 #else 00997 throw(); 00998 #endif 00999 template <class V,class VS> friend V &_vvsplusassign(V &rv, const VS &sl) 01000 #if(CXSC_INDEX_CHECK) 01001 throw(ERROR__OP_WITH_WRONG_DIM<V>); 01002 #else 01003 throw(); 01004 #endif 01005 template <class VS,class V> friend VS &_vsvplusassign(VS &sl, const V &rv) 01006 #if(CXSC_INDEX_CHECK) 01007 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 01008 #else 01009 throw(); 01010 #endif 01011 template <class VS1,class VS2> friend VS1 &_vsvsplusassign(VS1 &sl1, const VS2 &sl2) 01012 #if(CXSC_INDEX_CHECK) 01013 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 01014 #else 01015 throw(); 01016 #endif 01017 template <class VS1,class VS2> friend VS1 &_vsvsminusassign(VS1 &sl1, const VS2 &sl2) 01018 #if(CXSC_INDEX_CHECK) 01019 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 01020 #else 01021 throw(); 01022 #endif 01023 template <class V,class VS> friend V &_vvsminusassign(V &rv, const VS &sl) 01024 #if(CXSC_INDEX_CHECK) 01025 throw(ERROR__OP_WITH_WRONG_DIM<V>); 01026 #else 01027 throw(); 01028 #endif 01029 template <class VS,class V> friend VS &_vsvminusassign(VS &sl, const V &rv) 01030 #if(CXSC_INDEX_CHECK) 01031 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 01032 #else 01033 throw(); 01034 #endif 01035 template <class VS,class V> friend V _vsminus(const VS &sl) throw(); 01036 template <class V,class VS,class E> friend E _vvsminus(const V &rv, const VS &sl) 01037 #if(CXSC_INDEX_CHECK) 01038 throw(ERROR__OP_WITH_WRONG_DIM<E>); 01039 #else 01040 throw(); 01041 #endif 01042 template <class VS,class V,class E> friend E _vsvminus(const VS &sl,const V &rv) 01043 #if(CXSC_INDEX_CHECK) 01044 throw(ERROR__OP_WITH_WRONG_DIM<E>); 01045 #else 01046 throw(); 01047 #endif 01048 template <class V,class VS,class E> friend E _vvssect(const V &rv,const VS &sl) 01049 #if(CXSC_INDEX_CHECK) 01050 throw(ERROR__OP_WITH_WRONG_DIM<E>); 01051 #else 01052 throw(); 01053 #endif 01054 template <class VS1,class VS2,class E> friend E _vsvssect(const VS1 &s1,const VS2 &s2) 01055 #if(CXSC_INDEX_CHECK) 01056 throw(ERROR__OP_WITH_WRONG_DIM<E>); 01057 #else 01058 throw(); 01059 #endif 01060 template <class V,class VS> friend V &_vvssectassign(V &rv, const VS &sl) 01061 #if(CXSC_INDEX_CHECK) 01062 throw(ERROR__OP_WITH_WRONG_DIM<V>); 01063 #else 01064 throw(); 01065 #endif 01066 template <class VS,class V> friend VS &_vsvsectassign(VS &sl, const V &rv) 01067 #if(CXSC_INDEX_CHECK) 01068 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 01069 #else 01070 throw(); 01071 #endif 01072 template <class VS1,class VS2> friend VS1 &_vsvssectassign(VS1 &sl1, const VS2 &sl2) 01073 #if(CXSC_INDEX_CHECK) 01074 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 01075 #else 01076 throw(); 01077 #endif 01078 template <class V,class VS,class E> friend E _vvsconv(const V &rv,const VS &sl) 01079 #if(CXSC_INDEX_CHECK) 01080 throw(ERROR__OP_WITH_WRONG_DIM<E>); 01081 #else 01082 throw(); 01083 #endif 01084 template <class VS1,class VS2,class E> friend E _vsvsconv(const VS1 &s1,const VS2 &s2) 01085 #if(CXSC_INDEX_CHECK) 01086 throw(ERROR__OP_WITH_WRONG_DIM<E>); 01087 #else 01088 throw(); 01089 #endif 01090 template <class V,class VS> friend V &_vvsconvassign(V &rv, const VS &sl) 01091 #if(CXSC_INDEX_CHECK) 01092 throw(ERROR__OP_WITH_WRONG_DIM<V>); 01093 #else 01094 throw(); 01095 #endif 01096 template <class VS,class V> friend VS &_vsvconvassign(VS &sl, const V &rv) 01097 #if(CXSC_INDEX_CHECK) 01098 throw(ERROR__OP_WITH_WRONG_DIM<VS>); 01099 #else 01100 throw(); 01101 #endif 01102 template <class VS1,class VS2> friend VS1 &_vsvsconvassign(VS1 &sl1, const VS2 &sl2) 01103 #if(CXSC_INDEX_CHECK) 01104 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 01105 #else 01106 throw(); 01107 #endif 01108 template <class VS,class M,class S> friend VS &_vsmlimultassign(VS &v,const M &m) 01109 #if(CXSC_INDEX_CHECK) 01110 throw(ERROR__OP_WITH_WRONG_DIM<M>); 01111 #else 01112 throw(); 01113 #endif 01114 01115 template <class VS,class V> friend bool _vsveq(const VS &sl, const V &rv) throw(); 01116 template <class VS,class V> friend bool _vsvneq(const VS &sl, const V &rv) throw(); 01117 template <class VS,class V> friend bool _vsvless(const VS &sl, const V &rv) throw(); 01118 template <class VS,class V> friend bool _vsvleq(const VS &sl, const V &rv) throw(); 01119 template <class V,class VS> friend bool _vvsless(const V &rv, const VS &sl) throw(); 01120 template <class V,class VS> friend bool _vvsleq(const V &rv, const VS &sl) throw(); 01121 template <class VS1,class VS2,class E> friend E _vsvslimult(const VS1 & sl1, const VS2 &sl2) 01122 #if(CXSC_INDEX_CHECK) 01123 throw(ERROR__OP_WITH_WRONG_DIM<VS1>); 01124 #else 01125 throw(); 01126 #endif 01127 template <class VS1,class VS2> friend bool _vsvseq(const VS1 &sl1, const VS2 &sl2) throw(); 01128 template <class VS1,class VS2> friend bool _vsvsneq(const VS1 &sl1, const VS2 &sl2) throw(); 01129 template <class VS1,class VS2> friend bool _vsvsless(const VS1 &sl1, const VS2 &sl2) throw(); 01130 template <class VS1,class VS2> friend bool _vsvsleq(const VS1 &sl1, const VS2 &sl2) throw(); 01131 template <class VS> friend bool _vsnot(const VS &sl) throw(); 01132 template <class VS> friend void *_vsvoid(const VS &sl) throw(); 01133 template <class V> friend std::ostream &_vsout(std::ostream &s, const V &rv) throw(); 01134 template <class V> friend std::istream &_vsin(std::istream &s, V &rv) throw(); 01135 01136 // l_interval / Real 01137 template <class V,class MS,class E> friend E _vmslimult(const V &v,const MS &ms) 01138 #if(CXSC_INDEX_CHECK) 01139 throw(ERROR__OP_WITH_WRONG_DIM<MS>); 01140 #else 01141 throw(); 01142 #endif 01143 // l_interval / l_real 01144 template <class DP,class V1,class V2> friend void _vvaccu(DP &dp, const V1 & rv1, const V2 &rv2) 01145 #if(CXSC_INDEX_CHECK) 01146 throw(OP_WITH_WRONG_DIM); 01147 #else 01148 throw(); 01149 #endif 01150 01151 // l_real 01152 template <class V1,class V2,class S> friend V1 &_vvassign(V1 &rv1,const V2 &rv2) throw(); 01153 template <class V,class S> friend V & _vsassign(V &rv,const S &r) throw(); 01154 01155 template <class V,class M,class S> friend V &_vmassign(V &v,const M &m) 01156 #if(CXSC_INDEX_CHECK) 01157 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>); 01158 #else 01159 throw(); 01160 #endif 01161 template <class M,class V,class S> friend M &_mvassign(M &m,const V &v) throw(); 01162 template <class V,class MV2,class S> friend V &_vmvassign(V &v,const MV2 &rv) throw(); 01163 01164 template <class V1,class V2,class E> friend E _vvconv(const V1 &rv1, const V2 &rv2) 01165 #if(CXSC_INDEX_CHECK) 01166 throw(ERROR__OP_WITH_WRONG_DIM<E>); 01167 #else 01168 throw(); 01169 #endif 01170 01171 //--l_real -------- vector-scalar ------------ 01172 template <class MV,class S,class E> friend E _mvsmult(const MV &rv, const S &s) throw(); 01173 template <class V,class S,class E> friend E _vsmult(const V &rv, const S &s) throw(); 01174 template <class V,class S,class E> friend E _vsdiv(const V &rv, const S &s) throw(); 01175 template <class V,class S> friend V &_vsdivassign(V &rv,const S &r) throw(); 01176 template <class V,class S> friend V &_vsmultassign(V &rv,const S &r) throw(); 01177 01178 //--l_real--------- Vector-vector--------- 01179 template <class V1,class V2,class E> friend E _vvlimult(const V1 & rv1, const V2 &rv2) 01180 #if(CXSC_INDEX_CHECK) 01181 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 01182 #else 01183 throw(); 01184 #endif 01185 template <class V1,class V2,class E> friend E _vvplus(const V1 &rv1, const V2 &rv2) 01186 #if(CXSC_INDEX_CHECK) 01187 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 01188 #else 01189 throw(); 01190 #endif 01191 template <class V1,class V2> friend V1 &_vvplusassign(V1 &rv1, const V2 &rv2) 01192 #if(CXSC_INDEX_CHECK) 01193 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 01194 #else 01195 throw(); 01196 #endif 01197 template <class V1,class V2> friend V1 &_vvminusassign(V1 &rv1, const V2 &rv2) 01198 #if(CXSC_INDEX_CHECK) 01199 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 01200 #else 01201 throw(); 01202 #endif 01203 template <class V1,class V2,class E> friend E _vvminus(const V1 &rv1, const V2 &rv2) 01204 #if(CXSC_INDEX_CHECK) 01205 throw(ERROR__OP_WITH_WRONG_DIM<E>); 01206 #else 01207 throw(); 01208 #endif 01209 template <class V1,class V2> friend V1 &_vvconvassign(V1 &rv1, const V2 &rv2) 01210 #if(CXSC_INDEX_CHECK) 01211 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 01212 #else 01213 throw(); 01214 #endif 01215 template <class V1,class V2,class E> friend E _vvsect(const V1 &rv1, const V2 &rv2) 01216 #if(CXSC_INDEX_CHECK) 01217 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 01218 #else 01219 throw(); 01220 #endif 01221 template <class V1,class V2> friend V1 &_vvsectassign(V1 &rv1, const V2 &rv2) 01222 #if(CXSC_INDEX_CHECK) 01223 throw(ERROR__OP_WITH_WRONG_DIM<V1>); 01224 #else 01225 throw(); 01226 #endif 01227 01228 //-- l_real -------- Vector-matrix ---------- 01229 template <class V,class MS,class S> friend void _vmsconstr(V &v,const MS &m) 01230 #if(CXSC_INDEX_CHECK) 01231 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<MS>); 01232 #else 01233 throw(); 01234 #endif 01235 template <class V,class M,class S> friend void _vmconstr(V &v,const M &m) 01236 #if(CXSC_INDEX_CHECK) 01237 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>); 01238 #else 01239 throw(); 01240 #endif 01241 template <class M,class V,class E> friend E _mvlimult(const M &m,const V &v) 01242 #if(CXSC_INDEX_CHECK) 01243 throw(ERROR__OP_WITH_WRONG_DIM<M>); 01244 #else 01245 throw(); 01246 #endif 01247 template <class MS,class V,class E> friend E _msvlimult(const MS &ms,const V &v) 01248 #if(CXSC_INDEX_CHECK) 01249 throw(ERROR__OP_WITH_WRONG_DIM<MS>); 01250 #else 01251 throw(); 01252 #endif 01253 template <class V,class M,class E> friend E _vmlimult(const V &v,const M &m) 01254 #if(CXSC_INDEX_CHECK) 01255 throw(ERROR__OP_WITH_WRONG_DIM<M>); 01256 #else 01257 throw(); 01258 #endif 01259 template <class V,class MS,class S> friend V &_vmslimultassign(V &v,const MS &ms) 01260 #if(CXSC_INDEX_CHECK) 01261 throw(ERROR__OP_WITH_WRONG_DIM<MS>); 01262 #else 01263 throw(); 01264 #endif 01265 template <class V,class M,class S> friend V &_vmlimultassign(V &v,const M &m) 01266 #if(CXSC_INDEX_CHECK) 01267 throw(ERROR__OP_WITH_WRONG_DIM<M>); 01268 #else 01269 throw(); 01270 #endif 01271 01272 /* friend TINLINE l_ivector &_vsmassign<l_ivector_slice,imatrix,l_interval>(l_ivector_slice &v,const imatrix &m) 01273 #if(CXSC_INDEX_CHECK) 01274 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ); 01275 #else 01276 throw(); 01277 #endif */ 01278 01279 //-- interval -------- Vector-matrix ---------- 01280 /* friend TINLINE l_ivector _mvslimult<imatrix,l_ivector_slice,l_ivector>(const imatrix &m,const l_ivector_slice &v) 01281 #if(CXSC_INDEX_CHECK) 01282 throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM); 01283 #else 01284 throw(); 01285 #endif */ 01286 /* friend TINLINE l_ivector _msvslimult<imatrix_slice,l_ivector_slice,l_ivector>(const imatrix_slice &ms,const l_ivector_slice &v) 01287 #if(CXSC_INDEX_CHECK) 01288 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM); 01289 #else 01290 throw(); 01291 #endif */ 01292 /* friend TINLINE l_ivector _vsmlimult<l_ivector_slice,imatrix,l_ivector>(const l_ivector_slice &v,const imatrix &m) 01293 #if(CXSC_INDEX_CHECK) 01294 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM); 01295 #else 01296 throw(); 01297 #endif */ 01298 /* friend TINLINE l_ivector _vsmslimult<l_ivector_slice,imatrix_slice,l_ivector>(const l_ivector_slice &v,const imatrix_slice &ms) 01299 #if(CXSC_INDEX_CHECK) 01300 throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM); 01301 #else 01302 throw(); 01303 #endif */ 01304 /* friend TINLINE l_ivector &_vsmslimultassign<l_ivector_slice,imatrix_slice,l_interval>(l_ivector_slice &v,const imatrix_slice &m) 01305 #if(CXSC_INDEX_CHECK) 01306 throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM); 01307 #else 01308 throw(); 01309 #endif */ 01310 01311 #endif 01312 01313 //--------------------- Konstruktoren ----------------------------------- 01315 explicit INLINE l_ivector_slice(l_ivector &a, const int &lb, const int &ub) throw():dat(a.dat),l(a.l),u(a.u),size(ub-lb+1),start(lb),end(ub) { } 01317 explicit INLINE l_ivector_slice(l_ivector_slice &a, const int &lb, const int &ub) throw():dat(a.dat),l(a.l),u(a.u),size(ub-lb+1),start(lb),end(ub) { } 01318 public: 01320 INLINE l_ivector_slice(const l_ivector_slice &a) throw():dat(a.dat),l(a.l),u(a.u),size(a.size),start(a.start),end(a.end) { } 01321 public: 01322 // l_interval 01324 INLINE l_ivector_slice & operator =(const l_ivector_slice &sl) 01325 #if(CXSC_INDEX_CHECK) 01326 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01327 #else 01328 throw(); 01329 #endif 01330 01331 INLINE l_ivector_slice & operator =(const l_ivector &rv) 01332 #if(CXSC_INDEX_CHECK) 01333 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01334 #else 01335 throw(); 01336 #endif 01337 01338 INLINE l_ivector_slice & operator =(const l_interval &r) throw(); 01340 INLINE l_ivector_slice & operator =(const l_imatrix &m) 01341 #if(CXSC_INDEX_CHECK) 01342 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>,ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ); 01343 #else 01344 throw(); 01345 #endif 01346 01347 INLINE l_ivector_slice & operator =(const l_imatrix_slice &m) 01348 #if(CXSC_INDEX_CHECK) 01349 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>,ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ); 01350 #else 01351 throw(); 01352 #endif 01353 01354 INLINE l_ivector_slice &operator =(const l_imatrix_subv &) throw(); 01355 // Real 01357 INLINE l_ivector_slice & operator =(const rvector_slice &sl) 01358 #if(CXSC_INDEX_CHECK) 01359 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01360 #else 01361 throw(); 01362 #endif 01363 01364 INLINE l_ivector_slice & operator =(const rvector &rv) 01365 #if(CXSC_INDEX_CHECK) 01366 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01367 #else 01368 throw(); 01369 #endif 01370 01371 INLINE l_ivector_slice & operator =(const real &r) throw(); 01373 INLINE l_ivector_slice & operator =(const rmatrix &m) 01374 #if(CXSC_INDEX_CHECK) 01375 throw(ERROR__OP_WITH_WRONG_DIM<rvector>,ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ); 01376 #else 01377 throw(); 01378 #endif 01379 01380 INLINE l_ivector_slice & operator =(const rmatrix_slice &m) 01381 #if(CXSC_INDEX_CHECK) 01382 throw(ERROR__OP_WITH_WRONG_DIM<rvector>,ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ); 01383 #else 01384 throw(); 01385 #endif 01386 01387 INLINE l_ivector_slice &operator =(const rmatrix_subv &mv) throw(); 01388 01389 // l_real 01391 INLINE l_ivector_slice & operator =(const l_rvector_slice &sl) 01392 #if(CXSC_INDEX_CHECK) 01393 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01394 #else 01395 throw(); 01396 #endif 01397 01398 INLINE l_ivector_slice & operator =(const l_rvector &rv) 01399 #if(CXSC_INDEX_CHECK) 01400 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01401 #else 01402 throw(); 01403 #endif 01404 01405 INLINE l_ivector_slice & operator =(const l_real &r) throw(); 01407 INLINE l_ivector_slice & operator =(const l_rmatrix &m) 01408 #if(CXSC_INDEX_CHECK) 01409 throw(ERROR__OP_WITH_WRONG_DIM<l_rvector>,ERROR_LRMATRIX_TYPE_CAST_OF_THICK_OBJ); 01410 #else 01411 throw(); 01412 #endif 01413 01414 INLINE l_ivector_slice & operator =(const l_rmatrix_slice &m) 01415 #if(CXSC_INDEX_CHECK) 01416 throw(ERROR__OP_WITH_WRONG_DIM<l_rvector>,ERROR_LRMATRIX_TYPE_CAST_OF_THICK_OBJ); 01417 #else 01418 throw(); 01419 #endif 01420 01421 INLINE l_ivector_slice &operator =(const l_rmatrix_subv &mv) throw(); 01422 01423 // interval 01425 INLINE l_ivector_slice & operator =(const ivector_slice &sl) 01426 #if(CXSC_INDEX_CHECK) 01427 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01428 #else 01429 throw(); 01430 #endif 01431 01432 INLINE l_ivector_slice & operator =(const ivector &rv) 01433 #if(CXSC_INDEX_CHECK) 01434 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01435 #else 01436 throw(); 01437 #endif 01438 01439 INLINE l_ivector_slice & operator =(const interval &r) throw(); 01441 INLINE l_ivector_slice & operator =(const imatrix &m) 01442 #if(CXSC_INDEX_CHECK) 01443 throw(ERROR__OP_WITH_WRONG_DIM<ivector>,ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ); 01444 #else 01445 throw(); 01446 #endif 01447 01448 INLINE l_ivector_slice & operator =(const imatrix_slice &m) 01449 #if(CXSC_INDEX_CHECK) 01450 throw(ERROR__OP_WITH_WRONG_DIM<ivector>,ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ); 01451 #else 01452 throw(); 01453 #endif 01454 01455 INLINE l_ivector_slice &operator =(const imatrix_subv &mv) throw(); 01456 01457 //--------------------- Standardfunktionen ------------------------------ 01458 01459 friend INLINE l_interval::l_interval(const l_ivector_slice &sl) 01460 #if(CXSC_INDEX_CHECK) 01461 throw(ERROR_LIVECTOR_TYPE_CAST_OF_THICK_OBJ,ERROR_LIVECTOR_USE_OF_UNINITIALIZED_OBJ); 01462 #else 01463 throw(); 01464 #endif 01465 01466 friend INLINE int Lb(const l_ivector_slice &sl) throw() { return sl.start; } 01468 friend INLINE int Ub(const l_ivector_slice &sl) throw() { return sl.end; } 01470 friend INLINE int VecLen(const l_ivector_slice &sl) throw() { return sl.end-sl.start+1; } 01472 INLINE l_interval & operator [](const int &i) const 01473 #if(CXSC_INDEX_CHECK) 01474 throw(ERROR_LIVECTOR_ELEMENT_NOT_IN_VEC); 01475 #else 01476 throw(); 01477 #endif 01478 01479 INLINE l_ivector_slice & operator ()() throw() { return *this; } 01481 INLINE l_ivector_slice operator ()(const int &i) 01482 #if(CXSC_INDEX_CHECK) 01483 throw(ERROR_LIVECTOR_SUB_ARRAY_TOO_BIG); 01484 #else 01485 throw(); 01486 #endif 01487 01488 INLINE l_ivector_slice operator ()(const int &i1,const int &i2) 01489 #if(CXSC_INDEX_CHECK) 01490 throw(ERROR_LIVECTOR_SUB_ARRAY_TOO_BIG); 01491 #else 01492 throw(); 01493 #endif 01494 INLINE operator void*() throw(); 01495 01497 INLINE l_ivector_slice &operator *=(const l_interval &r) throw(); 01499 INLINE l_ivector_slice &operator /=(const l_interval &r) throw(); 01501 INLINE l_ivector_slice &operator *=(const l_imatrix &m) 01502 #if(CXSC_INDEX_CHECK) 01503 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM); 01504 #else 01505 throw(); 01506 #endif 01507 01508 INLINE l_ivector_slice &operator *=(const l_imatrix_slice &m) 01509 #if(CXSC_INDEX_CHECK) 01510 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM); 01511 #else 01512 throw(); 01513 #endif 01514 01515 INLINE l_ivector_slice &operator +=(const l_ivector &rv) 01516 #if(CXSC_INDEX_CHECK) 01517 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01518 #else 01519 throw(); 01520 #endif 01521 01522 INLINE l_ivector_slice &operator +=(const l_ivector_slice &sl2) 01523 #if(CXSC_INDEX_CHECK) 01524 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01525 #else 01526 throw(); 01527 #endif 01528 01529 INLINE l_ivector_slice &operator -=(const l_ivector &rv) 01530 #if(CXSC_INDEX_CHECK) 01531 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01532 #else 01533 throw(); 01534 #endif 01535 01536 INLINE l_ivector_slice &operator -=(const l_ivector_slice &sl2) 01537 #if(CXSC_INDEX_CHECK) 01538 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01539 #else 01540 throw(); 01541 #endif 01542 01543 INLINE l_ivector_slice &operator |=(const l_ivector &rv) 01544 #if(CXSC_INDEX_CHECK) 01545 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01546 #else 01547 throw(); 01548 #endif 01549 01550 INLINE l_ivector_slice &operator |=(const l_ivector_slice &sl2) 01551 #if(CXSC_INDEX_CHECK) 01552 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01553 #else 01554 throw(); 01555 #endif 01556 01557 INLINE l_ivector_slice &operator &=(const l_ivector &rv) 01558 #if(CXSC_INDEX_CHECK) 01559 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01560 #else 01561 throw(); 01562 #endif 01563 01564 INLINE l_ivector_slice &operator &=(const l_ivector_slice &sl2) 01565 #if(CXSC_INDEX_CHECK) 01566 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01567 #else 01568 throw(); 01569 #endif 01570 01572 INLINE l_ivector_slice &operator *=(const real &r) throw(); 01574 INLINE l_ivector_slice &operator /=(const real &r) throw(); 01576 INLINE l_ivector_slice &operator +=(const rvector &rv) 01577 #if(CXSC_INDEX_CHECK) 01578 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01579 #else 01580 throw(); 01581 #endif 01582 01583 INLINE l_ivector_slice &operator +=(const rvector_slice &sl2) 01584 #if(CXSC_INDEX_CHECK) 01585 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01586 #else 01587 throw(); 01588 #endif 01589 01590 INLINE l_ivector_slice &operator -=(const rvector &rv) 01591 #if(CXSC_INDEX_CHECK) 01592 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01593 #else 01594 throw(); 01595 #endif 01596 01597 INLINE l_ivector_slice &operator -=(const rvector_slice &sl2) 01598 #if(CXSC_INDEX_CHECK) 01599 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01600 #else 01601 throw(); 01602 #endif 01603 01604 INLINE l_ivector_slice &operator |=(const rvector &rv) 01605 #if(CXSC_INDEX_CHECK) 01606 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01607 #else 01608 throw(); 01609 #endif 01610 01611 INLINE l_ivector_slice &operator |=(const rvector_slice &sl2) 01612 #if(CXSC_INDEX_CHECK) 01613 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01614 #else 01615 throw(); 01616 #endif 01617 01618 INLINE l_ivector_slice &operator &=(const rvector &rv) 01619 #if(CXSC_INDEX_CHECK) 01620 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01621 #else 01622 throw(); 01623 #endif 01624 01625 INLINE l_ivector_slice &operator &=(const rvector_slice &sl2) 01626 #if(CXSC_INDEX_CHECK) 01627 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01628 #else 01629 throw(); 01630 #endif 01631 01632 INLINE l_ivector_slice &operator *=(const rmatrix &m) 01633 #if(CXSC_INDEX_CHECK) 01634 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM); 01635 #else 01636 throw(); 01637 #endif 01638 01639 INLINE l_ivector_slice &operator *=(const rmatrix_slice &m) 01640 #if(CXSC_INDEX_CHECK) 01641 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM); 01642 #else 01643 throw(); 01644 #endif 01645 01647 INLINE l_ivector_slice &operator *=(const l_real &r) throw(); 01649 INLINE l_ivector_slice &operator /=(const l_real &r) throw(); 01651 INLINE l_ivector_slice &operator +=(const l_rvector &rv) 01652 #if(CXSC_INDEX_CHECK) 01653 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01654 #else 01655 throw(); 01656 #endif 01657 01658 INLINE l_ivector_slice &operator +=(const l_rvector_slice &sl2) 01659 #if(CXSC_INDEX_CHECK) 01660 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01661 #else 01662 throw(); 01663 #endif 01664 01665 INLINE l_ivector_slice &operator -=(const l_rvector &rv) 01666 #if(CXSC_INDEX_CHECK) 01667 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01668 #else 01669 throw(); 01670 #endif 01671 01672 INLINE l_ivector_slice &operator -=(const l_rvector_slice &sl2) 01673 #if(CXSC_INDEX_CHECK) 01674 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01675 #else 01676 throw(); 01677 #endif 01678 01679 INLINE l_ivector_slice &operator |=(const l_rvector &rv) 01680 #if(CXSC_INDEX_CHECK) 01681 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01682 #else 01683 throw(); 01684 #endif 01685 01686 INLINE l_ivector_slice &operator |=(const l_rvector_slice &sl2) 01687 #if(CXSC_INDEX_CHECK) 01688 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01689 #else 01690 throw(); 01691 #endif 01692 01693 INLINE l_ivector_slice &operator &=(const l_rvector &rv) 01694 #if(CXSC_INDEX_CHECK) 01695 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01696 #else 01697 throw(); 01698 #endif 01699 01700 INLINE l_ivector_slice &operator &=(const l_rvector_slice &sl2) 01701 #if(CXSC_INDEX_CHECK) 01702 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01703 #else 01704 throw(); 01705 #endif 01706 01707 INLINE l_ivector_slice &operator *=(const l_rmatrix &m) 01708 #if(CXSC_INDEX_CHECK) 01709 throw(ERROR_LRMATRIX_OP_WITH_WRONG_DIM); 01710 #else 01711 throw(); 01712 #endif 01713 01714 INLINE l_ivector_slice &operator *=(const l_rmatrix_slice &m) 01715 #if(CXSC_INDEX_CHECK) 01716 throw(ERROR_LRMATRIX_OP_WITH_WRONG_DIM); 01717 #else 01718 throw(); 01719 #endif 01720 01722 INLINE l_ivector_slice &operator *=(const interval &r) throw(); 01724 INLINE l_ivector_slice &operator /=(const interval &r) throw(); 01726 INLINE l_ivector_slice &operator +=(const ivector &rv) 01727 #if(CXSC_INDEX_CHECK) 01728 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01729 #else 01730 throw(); 01731 #endif 01732 01733 INLINE l_ivector_slice &operator +=(const ivector_slice &sl2) 01734 #if(CXSC_INDEX_CHECK) 01735 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01736 #else 01737 throw(); 01738 #endif 01739 01740 INLINE l_ivector_slice &operator -=(const ivector &rv) 01741 #if(CXSC_INDEX_CHECK) 01742 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01743 #else 01744 throw(); 01745 #endif 01746 01747 INLINE l_ivector_slice &operator -=(const ivector_slice &sl2) 01748 #if(CXSC_INDEX_CHECK) 01749 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01750 #else 01751 throw(); 01752 #endif 01753 01754 INLINE l_ivector_slice &operator |=(const ivector &rv) 01755 #if(CXSC_INDEX_CHECK) 01756 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01757 #else 01758 throw(); 01759 #endif 01760 01761 INLINE l_ivector_slice &operator |=(const ivector_slice &sl2) 01762 #if(CXSC_INDEX_CHECK) 01763 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01764 #else 01765 throw(); 01766 #endif 01767 01768 INLINE l_ivector_slice &operator &=(const ivector &rv) 01769 #if(CXSC_INDEX_CHECK) 01770 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01771 #else 01772 throw(); 01773 #endif 01774 01775 INLINE l_ivector_slice &operator &=(const ivector_slice &sl2) 01776 #if(CXSC_INDEX_CHECK) 01777 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 01778 #else 01779 throw(); 01780 #endif 01781 01782 INLINE l_ivector_slice &operator *=(const imatrix &m) 01783 #if(CXSC_INDEX_CHECK) 01784 throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM); 01785 #else 01786 throw(); 01787 #endif 01788 01789 INLINE l_ivector_slice &operator *=(const imatrix_slice &m) 01790 #if(CXSC_INDEX_CHECK) 01791 throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM); 01792 #else 01793 throw(); 01794 #endif 01795 //#else 01796 //#endif 01797 }; 01798 01799 //======================================================================= 01800 //======================== Vector Functions ============================= 01801 01803 INLINE l_ivector _l_ivector(const l_interval &r) throw(); 01804 // INLINE l_ivector _l_ivector(const l_imatrix &m) throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ); 01805 // INLINE l_ivector _l_ivector(const l_imatrix_slice &sl) throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ); 01807 INLINE l_ivector _l_ivector(const real &r) throw(); 01809 INLINE l_ivector _l_ivector(const rvector_slice &rs) throw(); 01811 INLINE l_ivector _l_ivector(const rvector &rs) throw(); 01812 // INLINE l_ivector _l_ivector(const rmatrix &m) throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ); 01813 // INLINE l_ivector _l_ivector(const rmatrix_slice &sl) throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ); 01815 INLINE l_ivector _l_ivector(const rmatrix_subv &rs) throw(); 01816 01818 INLINE l_ivector &SetInf(l_ivector &iv,const l_rvector &rv) 01819 #if(CXSC_INDEX_CHECK) 01820 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01821 #else 01822 throw(); 01823 #endif 01824 01825 INLINE l_ivector_slice &SetInf(l_ivector_slice &iv,const l_rvector &rv) 01826 #if(CXSC_INDEX_CHECK) 01827 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01828 #else 01829 throw(); 01830 #endif 01831 01832 INLINE l_ivector &SetInf(l_ivector &iv,const l_rvector_slice &rv) 01833 #if(CXSC_INDEX_CHECK) 01834 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01835 #else 01836 throw(); 01837 #endif 01838 01839 INLINE l_ivector_slice &SetInf(l_ivector_slice &iv,const l_rvector_slice &rv) 01840 #if(CXSC_INDEX_CHECK) 01841 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01842 #else 01843 throw(); 01844 #endif 01845 01846 INLINE l_ivector &UncheckedSetInf(l_ivector &iv,const l_rvector &rv) 01847 #if(CXSC_INDEX_CHECK) 01848 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01849 #else 01850 throw(); 01851 #endif 01852 01853 INLINE l_ivector_slice &UncheckedSetInf(l_ivector_slice &iv,const l_rvector &rv) 01854 #if(CXSC_INDEX_CHECK) 01855 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01856 #else 01857 throw(); 01858 #endif 01859 01860 INLINE l_ivector &UncheckedSetInf(l_ivector &iv,const l_rvector_slice &rv) 01861 #if(CXSC_INDEX_CHECK) 01862 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01863 #else 01864 throw(); 01865 #endif 01866 01867 INLINE l_ivector_slice &UncheckedSetInf(l_ivector_slice &iv,const l_rvector_slice &rv) 01868 #if(CXSC_INDEX_CHECK) 01869 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01870 #else 01871 throw(); 01872 #endif 01873 01875 INLINE l_ivector &SetSup(l_ivector &iv,const l_rvector &rv) 01876 #if(CXSC_INDEX_CHECK) 01877 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01878 #else 01879 throw(); 01880 #endif 01881 01882 INLINE l_ivector_slice &SetSup(l_ivector_slice &iv,const l_rvector &rv) 01883 #if(CXSC_INDEX_CHECK) 01884 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01885 #else 01886 throw(); 01887 #endif 01888 01889 INLINE l_ivector &SetSup(l_ivector &iv,const l_rvector_slice &rv) 01890 #if(CXSC_INDEX_CHECK) 01891 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01892 #else 01893 throw(); 01894 #endif 01895 01896 INLINE l_ivector_slice &SetSup(l_ivector_slice &iv,const l_rvector_slice &rv) 01897 #if(CXSC_INDEX_CHECK) 01898 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01899 #else 01900 throw(); 01901 #endif 01902 01903 INLINE l_ivector &UncheckedSetSup(l_ivector &iv,const l_rvector &rv) 01904 #if(CXSC_INDEX_CHECK) 01905 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01906 #else 01907 throw(); 01908 #endif 01909 01910 INLINE l_ivector_slice &UncheckedSetSup(l_ivector_slice &iv,const l_rvector &rv) 01911 #if(CXSC_INDEX_CHECK) 01912 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01913 #else 01914 throw(); 01915 #endif 01916 01917 INLINE l_ivector &UncheckedSetSup(l_ivector &iv,const l_rvector_slice &rv) 01918 #if(CXSC_INDEX_CHECK) 01919 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01920 #else 01921 throw(); 01922 #endif 01923 01924 INLINE l_ivector_slice &UncheckedSetSup(l_ivector_slice &iv,const l_rvector_slice &rv) 01925 #if(CXSC_INDEX_CHECK) 01926 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM); 01927 #else 01928 throw(); 01929 #endif 01930 01932 INLINE l_ivector &SetSup(l_ivector &iv,const l_real &r) throw(); 01934 INLINE l_ivector &SetInf(l_ivector &iv,const l_real &r) throw(); 01936 INLINE l_ivector &UncheckedSetSup(l_ivector &iv,const l_real &r) throw(); 01938 INLINE l_ivector &SetUncheckedInf(l_ivector &iv,const l_real &r) throw(); 01939 01941 INLINE l_ivector_slice &SetSup(l_ivector_slice &iv,const l_real &r) throw(); 01943 INLINE l_ivector_slice &SetInf(l_ivector_slice &iv,const l_real &r) throw(); 01945 INLINE l_ivector_slice &UncheckedSetSup(l_ivector_slice &iv,const l_real &r) throw(); 01947 INLINE l_ivector_slice &SetUncheckedInf(l_ivector_slice &iv,const l_real &r) throw(); 01948 01950 INLINE void Resize(l_ivector &rv) throw(); 01952 INLINE void Resize(l_ivector &rv, const int &len) 01953 #if(CXSC_INDEX_CHECK) 01954 throw(ERROR__WRONG_BOUNDARIES<l_ivector>); 01955 #else 01956 throw(); 01957 #endif 01958 01959 INLINE void Resize(l_ivector &rv, const int &lb, const int &ub) 01960 #if(CXSC_INDEX_CHECK) 01961 throw(ERROR__WRONG_BOUNDARIES<l_ivector>); 01962 #else 01963 throw(); 01964 #endif 01965 01967 INLINE l_ivector abs(const l_ivector &rv) throw(); 01969 INLINE l_ivector abs(const l_ivector_slice &sl) throw(); 01971 INLINE l_rvector diam(const l_ivector &v) throw(); 01973 INLINE l_rvector diam(const l_ivector_slice &v) throw(); 01975 INLINE l_rvector mid(const l_ivector &v) throw(); 01977 INLINE l_rvector mid(const l_ivector_slice &v) throw(); 01979 INLINE l_rvector Inf(const l_ivector &v) throw(); 01981 INLINE l_rvector Inf(const l_ivector_slice &v) throw(); 01983 INLINE l_rvector Sup(const l_ivector &v) throw(); 01985 INLINE l_rvector Sup(const l_ivector_slice &v) throw(); 01987 INLINE bool operator !(const l_ivector &rv) throw(); 01989 INLINE bool operator !(const l_ivector_slice &sl) throw(); 01990 01991 //======================= Vector / Scalar =============================== 01992 01993 //----------------------------- l_interval --------------------------- 01994 01996 INLINE l_ivector operator *(const l_ivector &rv, const l_interval &s) throw(); 01998 INLINE l_ivector operator *(const l_ivector_slice &sl, const l_interval &s) throw(); 02000 INLINE l_ivector operator *(const l_interval &s, const l_ivector &rv) throw(); 02002 INLINE l_ivector operator *(const l_interval &s, const l_ivector_slice &sl) throw(); 02004 INLINE l_ivector &operator *=(l_ivector &rv,const l_interval &r) throw(); 02005 02007 INLINE l_ivector operator /(const l_ivector &rv, const l_interval &s) throw(); 02009 INLINE l_ivector operator /(const l_ivector_slice &sl, const l_interval &s) throw(); 02011 INLINE l_ivector &operator /=(l_ivector &rv,const l_interval &r) throw(); 02012 02013 //---------------------------- Real -------------------------------------- 02014 02016 INLINE l_ivector operator *(const l_ivector &rv, const real &s) throw(); 02018 INLINE l_ivector operator *(const l_ivector_slice &sl, const real &s) throw(); 02020 INLINE l_ivector operator *(const real &s, const l_ivector &rv) throw(); 02022 INLINE l_ivector operator *(const real &s, const l_ivector_slice &sl) throw(); 02024 INLINE l_ivector &operator *=(l_ivector &rv,const real &r) throw(); 02025 02027 INLINE l_ivector operator /(const l_ivector &rv, const real &s) throw(); 02029 INLINE l_ivector operator /(const l_ivector_slice &sl, const real &s) throw(); 02031 INLINE l_ivector &operator /=(l_ivector &rv,const real &r) throw(); 02032 02034 INLINE l_ivector operator *(const rvector &rv, const l_interval &s) throw(); 02036 INLINE l_ivector operator *(const rvector_slice &sl, const l_interval &s) throw(); 02038 INLINE l_ivector operator *(const l_interval &s, const rvector &rv) throw(); 02040 INLINE l_ivector operator *(const l_interval &s, const rvector_slice &sl) throw(); 02041 02043 INLINE l_ivector operator /(const rvector &rv, const l_interval &s) throw(); 02045 INLINE l_ivector operator /(const rvector_slice &sl, const l_interval &s) throw(); 02046 02047 //---------------------------- Complex -------------------------------------- 02048 02050 INLINE l_ivector operator *(const l_ivector &rv, const l_real &s) throw(); 02052 INLINE l_ivector operator *(const l_ivector_slice &sl, const l_real &s) throw(); 02054 INLINE l_ivector operator *(const l_real &s, const l_ivector &rv) throw(); 02056 INLINE l_ivector operator *(const l_real &s, const l_ivector_slice &sl) throw(); 02058 INLINE l_ivector &operator *=(l_ivector &rv,const l_real &r) throw(); 02059 02061 INLINE l_ivector operator /(const l_ivector &rv, const l_real &s) throw(); 02063 INLINE l_ivector operator /(const l_ivector_slice &sl, const l_real &s) throw(); 02065 INLINE l_ivector &operator /=(l_ivector &rv,const l_real &r) throw(); 02066 02068 INLINE l_ivector operator *(const l_rvector &rv, const l_interval &s) throw(); 02070 INLINE l_ivector operator *(const l_rvector_slice &sl, const l_interval &s) throw(); 02072 INLINE l_ivector operator *(const l_interval &s, const l_rvector &rv) throw(); 02074 INLINE l_ivector operator *(const l_interval &s, const l_rvector_slice &sl) throw(); 02075 02077 INLINE l_ivector operator /(const l_rvector &rv, const l_interval &s) throw(); 02079 INLINE l_ivector operator /(const l_rvector_slice &sl, const l_interval &s) throw(); 02080 02081 //---------------------------- interval -------------------------------------- 02082 02084 INLINE l_ivector operator *(const l_ivector &rv, const interval &s) throw(); 02086 INLINE l_ivector operator *(const l_ivector_slice &sl, const interval &s) throw(); 02088 INLINE l_ivector operator *(const interval &s, const l_ivector &rv) throw(); 02090 INLINE l_ivector operator *(const interval &s, const l_ivector_slice &sl) throw(); 02092 INLINE l_ivector &operator *=(l_ivector &rv,const interval &r) throw(); 02093 02095 INLINE l_ivector operator /(const l_ivector &rv, const interval &s) throw(); 02097 INLINE l_ivector operator /(const l_ivector_slice &sl, const interval &s) throw(); 02099 INLINE l_ivector &operator /=(l_ivector &rv,const interval &r) throw(); 02100 02102 INLINE l_ivector operator *(const ivector &rv, const l_interval &s) throw(); 02104 INLINE l_ivector operator *(const ivector_slice &sl, const l_interval &s) throw(); 02106 INLINE l_ivector operator *(const l_interval &s, const ivector &rv) throw(); 02108 INLINE l_ivector operator *(const l_interval &s, const ivector_slice &sl) throw(); 02109 02111 INLINE l_ivector operator /(const ivector &rv, const l_interval &s) throw(); 02113 INLINE l_ivector operator /(const ivector_slice &sl, const l_interval &s) throw(); 02114 02115 //======================= Vector / Vector =============================== 02116 02117 02119 INLINE std::ostream &operator <<(std::ostream &s, const l_ivector &rv) throw(); 02121 INLINE std::ostream &operator <<(std::ostream &o, const l_ivector_slice &sl) throw(); 02123 INLINE std::istream &operator >>(std::istream &s, l_ivector &rv) throw(); 02125 INLINE std::istream &operator >>(std::istream &s, l_ivector_slice &rv) throw(); 02126 02127 //----------------------- l_interval / l_interval --------------------------- 02128 02130 INLINE void accumulate(idotprecision &dp, const l_ivector & rv1, const l_ivector &rv2) 02131 #if(CXSC_INDEX_CHECK) 02132 throw(OP_WITH_WRONG_DIM); 02133 #else 02134 throw(); 02135 #endif 02136 02137 INLINE void accumulate(idotprecision &dp, const l_ivector_slice & sl, const l_ivector &rv) 02138 #if(CXSC_INDEX_CHECK) 02139 throw(OP_WITH_WRONG_DIM); 02140 #else 02141 throw(); 02142 #endif 02143 02144 INLINE void accumulate(idotprecision &dp, const l_ivector &rv, const l_ivector_slice &sl) 02145 #if(CXSC_INDEX_CHECK) 02146 throw(OP_WITH_WRONG_DIM); 02147 #else 02148 throw(); 02149 #endif 02150 02151 INLINE void accumulate(idotprecision &dp, const l_ivector & rv1, const l_imatrix_subv &rv2) 02152 #if(CXSC_INDEX_CHECK) 02153 throw(OP_WITH_WRONG_DIM); 02154 #else 02155 throw(); 02156 #endif 02157 02158 INLINE void accumulate(idotprecision &dp, const l_imatrix_subv & rv1, const l_ivector &rv2) 02159 #if(CXSC_INDEX_CHECK) 02160 throw(OP_WITH_WRONG_DIM); 02161 #else 02162 throw(); 02163 #endif 02164 02165 INLINE void accumulate(idotprecision &dp, const l_ivector_slice & sl1, const l_ivector_slice &sl2) 02166 #if(CXSC_INDEX_CHECK) 02167 throw(OP_WITH_WRONG_DIM); 02168 #else 02169 throw(); 02170 #endif 02171 02173 INLINE l_interval operator *(const l_ivector & rv1, const l_ivector &rv2) 02174 #if(CXSC_INDEX_CHECK) 02175 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02176 #else 02177 throw(); 02178 #endif 02179 02180 INLINE l_interval operator *(const l_ivector_slice &sl, const l_ivector &rv) 02181 #if(CXSC_INDEX_CHECK) 02182 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02183 #else 02184 throw(); 02185 #endif 02186 02187 INLINE l_interval operator *(const l_ivector &rv, const l_ivector_slice &sl) 02188 #if(CXSC_INDEX_CHECK) 02189 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02190 #else 02191 throw(); 02192 #endif 02193 02194 INLINE l_interval operator *(const l_ivector_slice & sl1, const l_ivector_slice &sl2) 02195 #if(CXSC_INDEX_CHECK) 02196 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02197 #else 02198 throw(); 02199 #endif 02200 02202 INLINE const l_ivector &operator +(const l_ivector &rv) throw(); 02204 INLINE l_ivector operator +(const l_ivector_slice &sl) throw(); 02205 02207 INLINE l_ivector operator +(const l_ivector &rv1, const l_ivector &rv2) 02208 #if(CXSC_INDEX_CHECK) 02209 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02210 #else 02211 throw(); 02212 #endif 02213 02214 INLINE l_ivector operator +(const l_ivector &rv, const l_ivector_slice &sl) 02215 #if(CXSC_INDEX_CHECK) 02216 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02217 #else 02218 throw(); 02219 #endif 02220 02221 INLINE l_ivector operator +(const l_ivector_slice &sl, const l_ivector &rv) 02222 #if(CXSC_INDEX_CHECK) 02223 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02224 #else 02225 throw(); 02226 #endif 02227 02228 INLINE l_ivector operator +(const l_ivector_slice &sl1, const l_ivector_slice &sl2) 02229 #if(CXSC_INDEX_CHECK) 02230 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02231 #else 02232 throw(); 02233 #endif 02234 02235 INLINE l_ivector & operator +=(l_ivector &rv1, const l_ivector &rv2) 02236 #if(CXSC_INDEX_CHECK) 02237 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02238 #else 02239 throw(); 02240 #endif 02241 02242 INLINE l_ivector &operator +=(l_ivector &rv, const l_ivector_slice &sl) 02243 #if(CXSC_INDEX_CHECK) 02244 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02245 #else 02246 throw(); 02247 #endif 02248 02250 INLINE l_ivector operator -(const l_ivector &rv) throw(); 02252 INLINE l_ivector operator -(const l_ivector_slice &sl) throw(); 02254 INLINE l_ivector operator -(const l_ivector &rv1, const l_ivector &rv2) 02255 #if(CXSC_INDEX_CHECK) 02256 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02257 #else 02258 throw(); 02259 #endif 02260 02261 INLINE l_ivector operator -(const l_ivector &rv, const l_ivector_slice &sl) 02262 #if(CXSC_INDEX_CHECK) 02263 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02264 #else 02265 throw(); 02266 #endif 02267 02268 INLINE l_ivector operator -(const l_ivector_slice &sl, const l_ivector &rv) 02269 #if(CXSC_INDEX_CHECK) 02270 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02271 #else 02272 throw(); 02273 #endif 02274 02275 INLINE l_ivector operator -(const l_ivector_slice &sl1, const l_ivector_slice &sl2) 02276 #if(CXSC_INDEX_CHECK) 02277 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02278 #else 02279 throw(); 02280 #endif 02281 02282 INLINE l_ivector & operator -=(l_ivector &rv1, const l_ivector &rv2) 02283 #if(CXSC_INDEX_CHECK) 02284 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02285 #else 02286 throw(); 02287 #endif 02288 02289 INLINE l_ivector &operator -=(l_ivector &rv, const l_ivector_slice &sl) 02290 #if(CXSC_INDEX_CHECK) 02291 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02292 #else 02293 throw(); 02294 #endif 02295 02297 INLINE l_ivector operator |(const l_ivector &rv1, const l_ivector &rv2) 02298 #if(CXSC_INDEX_CHECK) 02299 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02300 #else 02301 throw(); 02302 #endif 02303 02304 INLINE l_ivector operator |(const l_ivector &rv, const l_ivector_slice &sl) 02305 #if(CXSC_INDEX_CHECK) 02306 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02307 #else 02308 throw(); 02309 #endif 02310 02311 INLINE l_ivector operator |(const l_ivector_slice &sl, const l_ivector &rv) 02312 #if(CXSC_INDEX_CHECK) 02313 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02314 #else 02315 throw(); 02316 #endif 02317 02318 INLINE l_ivector operator |(const l_ivector_slice &sl1, const l_ivector_slice &sl2) 02319 #if(CXSC_INDEX_CHECK) 02320 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02321 #else 02322 throw(); 02323 #endif 02324 02325 INLINE l_ivector & operator |=(l_ivector &rv1, const l_ivector &rv2) 02326 #if(CXSC_INDEX_CHECK) 02327 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02328 #else 02329 throw(); 02330 #endif 02331 02332 INLINE l_ivector &operator |=(l_ivector &rv, const l_ivector_slice &sl) 02333 #if(CXSC_INDEX_CHECK) 02334 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02335 #else 02336 throw(); 02337 #endif 02338 02340 INLINE l_ivector operator &(const l_ivector &rv1, const l_ivector &rv2) 02341 #if(CXSC_INDEX_CHECK) 02342 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02343 #else 02344 throw(); 02345 #endif 02346 02347 INLINE l_ivector operator &(const l_ivector &rv, const l_ivector_slice &sl) 02348 #if(CXSC_INDEX_CHECK) 02349 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02350 #else 02351 throw(); 02352 #endif 02353 02354 INLINE l_ivector operator &(const l_ivector_slice &sl, const l_ivector &rv) 02355 #if(CXSC_INDEX_CHECK) 02356 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02357 #else 02358 throw(); 02359 #endif 02360 02361 INLINE l_ivector operator &(const l_ivector_slice &sl1, const l_ivector_slice &sl2) 02362 #if(CXSC_INDEX_CHECK) 02363 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02364 #else 02365 throw(); 02366 #endif 02367 02368 INLINE l_ivector & operator &=(l_ivector &rv1, const l_ivector &rv2) 02369 #if(CXSC_INDEX_CHECK) 02370 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02371 #else 02372 throw(); 02373 #endif 02374 02375 INLINE l_ivector &operator &=(l_ivector &rv, const l_ivector_slice &sl) 02376 #if(CXSC_INDEX_CHECK) 02377 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02378 #else 02379 throw(); 02380 #endif 02381 02383 INLINE bool operator ==(const l_ivector &rv1, const l_ivector &rv2) throw(); 02385 INLINE bool operator ==(const l_ivector_slice &sl1, const l_ivector_slice &sl2) throw(); 02387 INLINE bool operator ==(const l_ivector_slice &sl, const l_ivector &rv) throw(); 02389 INLINE bool operator ==(const l_ivector &rv, const l_ivector_slice &sl) throw(); 02391 INLINE bool operator !=(const l_ivector &rv1, const l_ivector &rv2) throw(); 02393 INLINE bool operator !=(const l_ivector_slice &sl1, const l_ivector_slice &sl2) throw(); 02395 INLINE bool operator !=(const l_ivector_slice &sl, const l_ivector &rv) throw(); 02397 INLINE bool operator !=(const l_ivector &rv, const l_ivector_slice &sl) throw(); 02399 INLINE bool operator <(const l_ivector &rv1, const l_ivector &rv2) throw(); 02401 INLINE bool operator <(const l_ivector_slice &sl1, const l_ivector_slice &sl2) throw(); 02403 INLINE bool operator < (const l_ivector_slice &sl, const l_ivector &rv) throw(); 02405 INLINE bool operator < (const l_ivector &rv, const l_ivector_slice &sl) throw(); 02407 INLINE bool operator <=(const l_ivector &rv1, const l_ivector &rv2) throw(); 02409 INLINE bool operator <=(const l_ivector_slice &sl1, const l_ivector_slice &sl2) throw(); 02411 INLINE bool operator <=(const l_ivector_slice &sl, const l_ivector &rv) throw(); 02413 INLINE bool operator <=(const l_ivector &rv, const l_ivector_slice &sl) throw(); 02415 INLINE bool operator >(const l_ivector &rv1, const l_ivector &rv2) throw(); 02417 INLINE bool operator >(const l_ivector_slice &sl1, const l_ivector_slice &sl2) throw(); 02419 INLINE bool operator >(const l_ivector_slice &sl, const l_ivector &rv) throw(); 02421 INLINE bool operator >(const l_ivector &rv, const l_ivector_slice &sl) throw(); 02423 INLINE bool operator >=(const l_ivector &rv1, const l_ivector &rv2) throw(); 02425 INLINE bool operator >=(const l_ivector_slice &sl1, const l_ivector_slice &sl2) throw(); 02427 INLINE bool operator >=(const l_ivector_slice &sl, const l_ivector &rv) throw(); 02429 INLINE bool operator >=(const l_ivector &rv, const l_ivector_slice &sl) throw(); 02430 02431 //-------------------------------- l_interval / Real -------------------------------- 02432 02434 INLINE void accumulate(idotprecision &dp, const rvector & rv1, const l_ivector &rv2) 02435 #if(CXSC_INDEX_CHECK) 02436 throw(OP_WITH_WRONG_DIM); 02437 #else 02438 throw(); 02439 #endif 02440 02441 INLINE void accumulate(idotprecision &dp, const l_ivector & rv1, const rvector &rv2) 02442 #if(CXSC_INDEX_CHECK) 02443 throw(OP_WITH_WRONG_DIM); 02444 #else 02445 throw(); 02446 #endif 02447 02448 INLINE void accumulate(idotprecision &dp, const rvector_slice & sl, const l_ivector &rv) 02449 #if(CXSC_INDEX_CHECK) 02450 throw(OP_WITH_WRONG_DIM); 02451 #else 02452 throw(); 02453 #endif 02454 02455 INLINE void accumulate(idotprecision &dp,const l_ivector_slice &sl,const rvector &rv) 02456 #if(CXSC_INDEX_CHECK) 02457 throw(OP_WITH_WRONG_DIM); 02458 #else 02459 throw(); 02460 #endif 02461 02462 INLINE void accumulate(idotprecision &dp, const rvector &rv, const l_ivector_slice &sl) 02463 #if(CXSC_INDEX_CHECK) 02464 throw(OP_WITH_WRONG_DIM); 02465 #else 02466 throw(); 02467 #endif 02468 02469 INLINE void accumulate(idotprecision &dp, const rvector & rv1, const l_imatrix_subv &rv2) 02470 #if(CXSC_INDEX_CHECK) 02471 throw(OP_WITH_WRONG_DIM); 02472 #else 02473 throw(); 02474 #endif 02475 02476 INLINE void accumulate(idotprecision &dp, const l_ivector & rv1, const rmatrix_subv &rv2) 02477 #if(CXSC_INDEX_CHECK) 02478 throw(OP_WITH_WRONG_DIM); 02479 #else 02480 throw(); 02481 #endif 02482 02483 INLINE void accumulate(idotprecision &dp,const l_ivector &rv,const rvector_slice &sl) 02484 #if(CXSC_INDEX_CHECK) 02485 throw(OP_WITH_WRONG_DIM); 02486 #else 02487 throw(); 02488 #endif 02489 02490 INLINE void accumulate(idotprecision &dp, const rmatrix_subv & rv1, const l_ivector &rv2) 02491 #if(CXSC_INDEX_CHECK) 02492 throw(OP_WITH_WRONG_DIM); 02493 #else 02494 throw(); 02495 #endif 02496 02497 INLINE void accumulate(idotprecision &dp, const l_imatrix_subv & rv1, const rvector &rv2) 02498 #if(CXSC_INDEX_CHECK) 02499 throw(OP_WITH_WRONG_DIM); 02500 #else 02501 throw(); 02502 #endif 02503 02504 INLINE void accumulate(idotprecision &dp, const l_ivector_slice & sl1, const rvector_slice &sl2) 02505 #if(CXSC_INDEX_CHECK) 02506 throw(OP_WITH_WRONG_DIM); 02507 #else 02508 throw(); 02509 #endif 02510 02511 INLINE void accumulate(idotprecision &dp, const rvector_slice & sl1, const l_ivector_slice &sl2) 02512 #if(CXSC_INDEX_CHECK) 02513 throw(OP_WITH_WRONG_DIM); 02514 #else 02515 throw(); 02516 #endif 02517 02519 INLINE l_interval operator *(const rvector & rv1, const l_ivector &rv2) 02520 #if(CXSC_INDEX_CHECK) 02521 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02522 #else 02523 throw(); 02524 #endif 02525 02526 INLINE l_interval operator *(const rvector_slice &sl, const l_ivector &rv) 02527 #if(CXSC_INDEX_CHECK) 02528 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02529 #else 02530 throw(); 02531 #endif 02532 02533 INLINE l_interval operator *(const rvector &rv, const l_ivector_slice &sl) 02534 #if(CXSC_INDEX_CHECK) 02535 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02536 #else 02537 throw(); 02538 #endif 02539 02540 INLINE l_interval operator *(const rvector_slice & sl1, const l_ivector_slice &sl2) 02541 #if(CXSC_INDEX_CHECK) 02542 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02543 #else 02544 throw(); 02545 #endif 02546 02548 INLINE l_interval operator *(const l_ivector & rv1, const rvector &rv2) 02549 #if(CXSC_INDEX_CHECK) 02550 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02551 #else 02552 throw(); 02553 #endif 02554 02555 INLINE l_interval operator *(const l_ivector_slice &sl, const rvector &rv) 02556 #if(CXSC_INDEX_CHECK) 02557 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02558 #else 02559 throw(); 02560 #endif 02561 02562 INLINE l_interval operator *(const l_ivector &rv, const rvector_slice &sl) 02563 #if(CXSC_INDEX_CHECK) 02564 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02565 #else 02566 throw(); 02567 #endif 02568 02569 INLINE l_interval operator *(const l_ivector_slice & sl1, const rvector_slice &sl2) 02570 #if(CXSC_INDEX_CHECK) 02571 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02572 #else 02573 throw(); 02574 #endif 02575 02577 INLINE l_ivector operator +(const rvector &rv1, const l_ivector &rv2) 02578 #if(CXSC_INDEX_CHECK) 02579 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02580 #else 02581 throw(); 02582 #endif 02583 02584 INLINE l_ivector operator +(const rvector &rv, const l_ivector_slice &sl) 02585 #if(CXSC_INDEX_CHECK) 02586 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02587 #else 02588 throw(); 02589 #endif 02590 02591 INLINE l_ivector operator +(const rvector_slice &sl, const l_ivector &rv) 02592 #if(CXSC_INDEX_CHECK) 02593 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02594 #else 02595 throw(); 02596 #endif 02597 02598 INLINE l_ivector operator +(const rvector_slice &sl1, const l_ivector_slice &sl2) 02599 #if(CXSC_INDEX_CHECK) 02600 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02601 #else 02602 throw(); 02603 #endif 02604 02606 INLINE l_ivector operator +(const l_ivector &rv1, const rvector &rv2) 02607 #if(CXSC_INDEX_CHECK) 02608 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02609 #else 02610 throw(); 02611 #endif 02612 02613 INLINE l_ivector operator +(const l_ivector &rv, const rvector_slice &sl) 02614 #if(CXSC_INDEX_CHECK) 02615 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02616 #else 02617 throw(); 02618 #endif 02619 02620 INLINE l_ivector operator +(const l_ivector_slice &sl, const rvector &rv) 02621 #if(CXSC_INDEX_CHECK) 02622 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02623 #else 02624 throw(); 02625 #endif 02626 02627 INLINE l_ivector operator +(const l_ivector_slice &sl1, const rvector_slice &sl2) 02628 #if(CXSC_INDEX_CHECK) 02629 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02630 #else 02631 throw(); 02632 #endif 02633 02635 INLINE l_ivector & operator +=(l_ivector &rv1, const rvector &rv2) 02636 #if(CXSC_INDEX_CHECK) 02637 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02638 #else 02639 throw(); 02640 #endif 02641 02642 INLINE l_ivector &operator +=(l_ivector &rv, const rvector_slice &sl) 02643 #if(CXSC_INDEX_CHECK) 02644 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02645 #else 02646 throw(); 02647 #endif 02648 02650 INLINE l_ivector operator -(const rvector &rv1, const l_ivector &rv2) 02651 #if(CXSC_INDEX_CHECK) 02652 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02653 #else 02654 throw(); 02655 #endif 02656 02657 INLINE l_ivector operator -(const rvector &rv, const l_ivector_slice &sl) 02658 #if(CXSC_INDEX_CHECK) 02659 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02660 #else 02661 throw(); 02662 #endif 02663 02664 INLINE l_ivector operator -(const rvector_slice &sl, const l_ivector &rv) 02665 #if(CXSC_INDEX_CHECK) 02666 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02667 #else 02668 throw(); 02669 #endif 02670 02671 INLINE l_ivector operator -(const rvector_slice &sl1, const l_ivector_slice &sl2) 02672 #if(CXSC_INDEX_CHECK) 02673 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02674 #else 02675 throw(); 02676 #endif 02677 02679 INLINE l_ivector operator -(const l_ivector &rv1, const rvector &rv2) 02680 #if(CXSC_INDEX_CHECK) 02681 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02682 #else 02683 throw(); 02684 #endif 02685 02686 INLINE l_ivector operator -(const l_ivector &rv, const rvector_slice &sl) 02687 #if(CXSC_INDEX_CHECK) 02688 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02689 #else 02690 throw(); 02691 #endif 02692 02693 INLINE l_ivector operator -(const l_ivector_slice &sl, const rvector &rv) 02694 #if(CXSC_INDEX_CHECK) 02695 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02696 #else 02697 throw(); 02698 #endif 02699 02700 INLINE l_ivector operator -(const l_ivector_slice &sl1, const rvector_slice &sl2) 02701 #if(CXSC_INDEX_CHECK) 02702 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02703 #else 02704 throw(); 02705 #endif 02706 02708 INLINE l_ivector & operator -=(l_ivector &rv1, const rvector &rv2) 02709 #if(CXSC_INDEX_CHECK) 02710 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02711 #else 02712 throw(); 02713 #endif 02714 02715 INLINE l_ivector &operator -=(l_ivector &rv, const rvector_slice &sl) 02716 #if(CXSC_INDEX_CHECK) 02717 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02718 #else 02719 throw(); 02720 #endif 02721 02723 INLINE l_ivector operator |(const rvector &rv1, const l_ivector &rv2) 02724 #if(CXSC_INDEX_CHECK) 02725 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02726 #else 02727 throw(); 02728 #endif 02729 02730 INLINE l_ivector operator |(const rvector &rv, const l_ivector_slice &sl) 02731 #if(CXSC_INDEX_CHECK) 02732 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02733 #else 02734 throw(); 02735 #endif 02736 02737 INLINE l_ivector operator |(const rvector_slice &sl, const l_ivector &rv) 02738 #if(CXSC_INDEX_CHECK) 02739 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02740 #else 02741 throw(); 02742 #endif 02743 02744 INLINE l_ivector operator |(const rvector_slice &sl1, const l_ivector_slice &sl2) 02745 #if(CXSC_INDEX_CHECK) 02746 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02747 #else 02748 throw(); 02749 #endif 02750 02752 INLINE l_ivector operator |(const l_ivector &rv1, const rvector &rv2) 02753 #if(CXSC_INDEX_CHECK) 02754 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02755 #else 02756 throw(); 02757 #endif 02758 02759 INLINE l_ivector operator |(const l_ivector &rv, const rvector_slice &sl) 02760 #if(CXSC_INDEX_CHECK) 02761 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02762 #else 02763 throw(); 02764 #endif 02765 02766 INLINE l_ivector operator |(const l_ivector_slice &sl, const rvector &rv) 02767 #if(CXSC_INDEX_CHECK) 02768 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02769 #else 02770 throw(); 02771 #endif 02772 02773 INLINE l_ivector operator |(const l_ivector_slice &sl1, const rvector_slice &sl2) 02774 #if(CXSC_INDEX_CHECK) 02775 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02776 #else 02777 throw(); 02778 #endif 02779 02781 INLINE l_ivector & operator |=(l_ivector &rv1, const rvector &rv2) 02782 #if(CXSC_INDEX_CHECK) 02783 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02784 #else 02785 throw(); 02786 #endif 02787 02788 INLINE l_ivector &operator |=(l_ivector &rv, const rvector_slice &sl) 02789 #if(CXSC_INDEX_CHECK) 02790 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02791 #else 02792 throw(); 02793 #endif 02794 02796 INLINE l_ivector operator &(const rvector &rv1, const l_ivector &rv2) 02797 #if(CXSC_INDEX_CHECK) 02798 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02799 #else 02800 throw(); 02801 #endif 02802 02803 INLINE l_ivector operator &(const rvector &rv, const l_ivector_slice &sl) 02804 #if(CXSC_INDEX_CHECK) 02805 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02806 #else 02807 throw(); 02808 #endif 02809 02810 INLINE l_ivector operator &(const rvector_slice &sl, const l_ivector &rv) 02811 #if(CXSC_INDEX_CHECK) 02812 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02813 #else 02814 throw(); 02815 #endif 02816 02817 INLINE l_ivector operator &(const rvector_slice &sl1, const l_ivector_slice &sl2) 02818 #if(CXSC_INDEX_CHECK) 02819 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02820 #else 02821 throw(); 02822 #endif 02823 02825 INLINE l_ivector operator &(const l_ivector &rv1, const rvector &rv2) 02826 #if(CXSC_INDEX_CHECK) 02827 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02828 #else 02829 throw(); 02830 #endif 02831 02832 INLINE l_ivector operator &(const l_ivector &rv, const rvector_slice &sl) 02833 #if(CXSC_INDEX_CHECK) 02834 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02835 #else 02836 throw(); 02837 #endif 02838 02839 INLINE l_ivector operator &(const l_ivector_slice &sl, const rvector &rv) 02840 #if(CXSC_INDEX_CHECK) 02841 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02842 #else 02843 throw(); 02844 #endif 02845 02846 INLINE l_ivector operator &(const l_ivector_slice &sl1, const rvector_slice &sl2) 02847 #if(CXSC_INDEX_CHECK) 02848 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02849 #else 02850 throw(); 02851 #endif 02852 02854 INLINE l_ivector & operator &=(l_ivector &rv1, const rvector &rv2) 02855 #if(CXSC_INDEX_CHECK) 02856 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02857 #else 02858 throw(); 02859 #endif 02860 02861 INLINE l_ivector &operator &=(l_ivector &rv, const rvector_slice &sl) 02862 #if(CXSC_INDEX_CHECK) 02863 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02864 #else 02865 throw(); 02866 #endif 02867 //-------------------------------- l_interval / l_real -------------------------------- 02868 02870 INLINE void accumulate(idotprecision &dp, const l_rvector & rv1, const l_ivector &rv2) 02871 #if(CXSC_INDEX_CHECK) 02872 throw(OP_WITH_WRONG_DIM); 02873 #else 02874 throw(); 02875 #endif 02876 02877 INLINE void accumulate(idotprecision &dp, const l_ivector & rv1, const l_rvector &rv2) 02878 #if(CXSC_INDEX_CHECK) 02879 throw(OP_WITH_WRONG_DIM); 02880 #else 02881 throw(); 02882 #endif 02883 02884 INLINE void accumulate(idotprecision &dp, const l_rvector_slice & sl, const l_ivector &rv) 02885 #if(CXSC_INDEX_CHECK) 02886 throw(OP_WITH_WRONG_DIM); 02887 #else 02888 throw(); 02889 #endif 02890 02891 INLINE void accumulate(idotprecision &dp,const l_ivector_slice &sl,const l_rvector &rv) 02892 #if(CXSC_INDEX_CHECK) 02893 throw(OP_WITH_WRONG_DIM); 02894 #else 02895 throw(); 02896 #endif 02897 02898 INLINE void accumulate(idotprecision &dp, const l_rvector &rv, const l_ivector_slice &sl) 02899 #if(CXSC_INDEX_CHECK) 02900 throw(OP_WITH_WRONG_DIM); 02901 #else 02902 throw(); 02903 #endif 02904 02905 INLINE void accumulate(idotprecision &dp, const l_rvector & rv1, const l_imatrix_subv &rv2) 02906 #if(CXSC_INDEX_CHECK) 02907 throw(OP_WITH_WRONG_DIM); 02908 #else 02909 throw(); 02910 #endif 02911 02912 INLINE void accumulate(idotprecision &dp, const l_ivector & rv1, const l_rmatrix_subv &rv2) 02913 #if(CXSC_INDEX_CHECK) 02914 throw(OP_WITH_WRONG_DIM); 02915 #else 02916 throw(); 02917 #endif 02918 02919 INLINE void accumulate(idotprecision &dp,const l_ivector &rv,const l_rvector_slice &sl) 02920 #if(CXSC_INDEX_CHECK) 02921 throw(OP_WITH_WRONG_DIM); 02922 #else 02923 throw(); 02924 #endif 02925 02926 INLINE void accumulate(idotprecision &dp, const l_rmatrix_subv & rv1, const l_ivector &rv2) 02927 #if(CXSC_INDEX_CHECK) 02928 throw(OP_WITH_WRONG_DIM); 02929 #else 02930 throw(); 02931 #endif 02932 02933 INLINE void accumulate(idotprecision &dp, const l_imatrix_subv & rv1, const l_rvector &rv2) 02934 #if(CXSC_INDEX_CHECK) 02935 throw(OP_WITH_WRONG_DIM); 02936 #else 02937 throw(); 02938 #endif 02939 02940 INLINE void accumulate(idotprecision &dp, const l_ivector_slice & sl1, const l_rvector_slice &sl2) 02941 #if(CXSC_INDEX_CHECK) 02942 throw(OP_WITH_WRONG_DIM); 02943 #else 02944 throw(); 02945 #endif 02946 02947 INLINE void accumulate(idotprecision &dp, const l_rvector_slice & sl1, const l_ivector_slice &sl2) 02948 #if(CXSC_INDEX_CHECK) 02949 throw(OP_WITH_WRONG_DIM); 02950 #else 02951 throw(); 02952 #endif 02953 02955 INLINE l_interval operator *(const l_rvector & rv1, const l_ivector &rv2) 02956 #if(CXSC_INDEX_CHECK) 02957 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02958 #else 02959 throw(); 02960 #endif 02961 02962 INLINE l_interval operator *(const l_rvector_slice &sl, const l_ivector &rv) 02963 #if(CXSC_INDEX_CHECK) 02964 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02965 #else 02966 throw(); 02967 #endif 02968 02969 INLINE l_interval operator *(const l_rvector &rv, const l_ivector_slice &sl) 02970 #if(CXSC_INDEX_CHECK) 02971 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02972 #else 02973 throw(); 02974 #endif 02975 02976 INLINE l_interval operator *(const l_rvector_slice & sl1, const l_ivector_slice &sl2) 02977 #if(CXSC_INDEX_CHECK) 02978 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02979 #else 02980 throw(); 02981 #endif 02982 02984 INLINE l_interval operator *(const l_ivector & rv1, const l_rvector &rv2) 02985 #if(CXSC_INDEX_CHECK) 02986 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02987 #else 02988 throw(); 02989 #endif 02990 02991 INLINE l_interval operator *(const l_ivector_slice &sl, const l_rvector &rv) 02992 #if(CXSC_INDEX_CHECK) 02993 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 02994 #else 02995 throw(); 02996 #endif 02997 02998 INLINE l_interval operator *(const l_ivector &rv, const l_rvector_slice &sl) 02999 #if(CXSC_INDEX_CHECK) 03000 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03001 #else 03002 throw(); 03003 #endif 03004 03005 INLINE l_interval operator *(const l_ivector_slice & sl1, const l_rvector_slice &sl2) 03006 #if(CXSC_INDEX_CHECK) 03007 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03008 #else 03009 throw(); 03010 #endif 03011 03013 INLINE l_ivector operator +(const l_rvector &rv1, const l_ivector &rv2) 03014 #if(CXSC_INDEX_CHECK) 03015 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03016 #else 03017 throw(); 03018 #endif 03019 03020 INLINE l_ivector operator +(const l_rvector &rv, const l_ivector_slice &sl) 03021 #if(CXSC_INDEX_CHECK) 03022 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03023 #else 03024 throw(); 03025 #endif 03026 03027 INLINE l_ivector operator +(const l_rvector_slice &sl, const l_ivector &rv) 03028 #if(CXSC_INDEX_CHECK) 03029 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03030 #else 03031 throw(); 03032 #endif 03033 03034 INLINE l_ivector operator +(const l_rvector_slice &sl1, const l_ivector_slice &sl2) 03035 #if(CXSC_INDEX_CHECK) 03036 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03037 #else 03038 throw(); 03039 #endif 03040 03042 INLINE l_ivector operator +(const l_ivector &rv1, const l_rvector &rv2) 03043 #if(CXSC_INDEX_CHECK) 03044 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03045 #else 03046 throw(); 03047 #endif 03048 03049 INLINE l_ivector operator +(const l_ivector &rv, const l_rvector_slice &sl) 03050 #if(CXSC_INDEX_CHECK) 03051 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03052 #else 03053 throw(); 03054 #endif 03055 03056 INLINE l_ivector operator +(const l_ivector_slice &sl, const l_rvector &rv) 03057 #if(CXSC_INDEX_CHECK) 03058 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03059 #else 03060 throw(); 03061 #endif 03062 03063 INLINE l_ivector operator +(const l_ivector_slice &sl1, const l_rvector_slice &sl2) 03064 #if(CXSC_INDEX_CHECK) 03065 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03066 #else 03067 throw(); 03068 #endif 03069 03071 INLINE l_ivector & operator +=(l_ivector &rv1, const l_rvector &rv2) 03072 #if(CXSC_INDEX_CHECK) 03073 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03074 #else 03075 throw(); 03076 #endif 03077 03078 INLINE l_ivector &operator +=(l_ivector &rv, const l_rvector_slice &sl) 03079 #if(CXSC_INDEX_CHECK) 03080 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03081 #else 03082 throw(); 03083 #endif 03084 03086 INLINE l_ivector operator -(const l_rvector &rv1, const l_ivector &rv2) 03087 #if(CXSC_INDEX_CHECK) 03088 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03089 #else 03090 throw(); 03091 #endif 03092 03093 INLINE l_ivector operator -(const l_rvector &rv, const l_ivector_slice &sl) 03094 #if(CXSC_INDEX_CHECK) 03095 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03096 #else 03097 throw(); 03098 #endif 03099 03100 INLINE l_ivector operator -(const l_rvector_slice &sl, const l_ivector &rv) 03101 #if(CXSC_INDEX_CHECK) 03102 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03103 #else 03104 throw(); 03105 #endif 03106 03107 INLINE l_ivector operator -(const l_rvector_slice &sl1, const l_ivector_slice &sl2) 03108 #if(CXSC_INDEX_CHECK) 03109 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03110 #else 03111 throw(); 03112 #endif 03113 03115 INLINE l_ivector operator -(const l_ivector &rv1, const l_rvector &rv2) 03116 #if(CXSC_INDEX_CHECK) 03117 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03118 #else 03119 throw(); 03120 #endif 03121 03122 INLINE l_ivector operator -(const l_ivector &rv, const l_rvector_slice &sl) 03123 #if(CXSC_INDEX_CHECK) 03124 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03125 #else 03126 throw(); 03127 #endif 03128 03129 INLINE l_ivector operator -(const l_ivector_slice &sl, const l_rvector &rv) 03130 #if(CXSC_INDEX_CHECK) 03131 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03132 #else 03133 throw(); 03134 #endif 03135 03136 INLINE l_ivector operator -(const l_ivector_slice &sl1, const l_rvector_slice &sl2) 03137 #if(CXSC_INDEX_CHECK) 03138 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03139 #else 03140 throw(); 03141 #endif 03142 03144 INLINE l_ivector & operator -=(l_ivector &rv1, const l_rvector &rv2) 03145 #if(CXSC_INDEX_CHECK) 03146 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03147 #else 03148 throw(); 03149 #endif 03150 03151 INLINE l_ivector &operator -=(l_ivector &rv, const l_rvector_slice &sl) 03152 #if(CXSC_INDEX_CHECK) 03153 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03154 #else 03155 throw(); 03156 #endif 03157 03159 INLINE l_ivector operator |(const l_rvector &rv1, const l_ivector &rv2) 03160 #if(CXSC_INDEX_CHECK) 03161 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03162 #else 03163 throw(); 03164 #endif 03165 03166 INLINE l_ivector operator |(const l_rvector &rv, const l_ivector_slice &sl) 03167 #if(CXSC_INDEX_CHECK) 03168 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03169 #else 03170 throw(); 03171 #endif 03172 03173 INLINE l_ivector operator |(const l_rvector_slice &sl, const l_ivector &rv) 03174 #if(CXSC_INDEX_CHECK) 03175 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03176 #else 03177 throw(); 03178 #endif 03179 03180 INLINE l_ivector operator |(const l_rvector_slice &sl1, const l_ivector_slice &sl2) 03181 #if(CXSC_INDEX_CHECK) 03182 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03183 #else 03184 throw(); 03185 #endif 03186 03188 INLINE l_ivector operator |(const l_ivector &rv1, const l_rvector &rv2) 03189 #if(CXSC_INDEX_CHECK) 03190 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03191 #else 03192 throw(); 03193 #endif 03194 03195 INLINE l_ivector operator |(const l_ivector &rv, const l_rvector_slice &sl) 03196 #if(CXSC_INDEX_CHECK) 03197 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03198 #else 03199 throw(); 03200 #endif 03201 03202 INLINE l_ivector operator |(const l_ivector_slice &sl, const l_rvector &rv) 03203 #if(CXSC_INDEX_CHECK) 03204 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03205 #else 03206 throw(); 03207 #endif 03208 03209 INLINE l_ivector operator |(const l_ivector_slice &sl1, const l_rvector_slice &sl2) 03210 #if(CXSC_INDEX_CHECK) 03211 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03212 #else 03213 throw(); 03214 #endif 03215 03217 INLINE l_ivector & operator |=(l_ivector &rv1, const l_rvector &rv2) 03218 #if(CXSC_INDEX_CHECK) 03219 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03220 #else 03221 throw(); 03222 #endif 03223 03224 INLINE l_ivector &operator |=(l_ivector &rv, const l_rvector_slice &sl) 03225 #if(CXSC_INDEX_CHECK) 03226 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03227 #else 03228 throw(); 03229 #endif 03230 03232 INLINE l_ivector operator &(const l_rvector &rv1, const l_ivector &rv2) 03233 #if(CXSC_INDEX_CHECK) 03234 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03235 #else 03236 throw(); 03237 #endif 03238 03239 INLINE l_ivector operator &(const l_rvector &rv, const l_ivector_slice &sl) 03240 #if(CXSC_INDEX_CHECK) 03241 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03242 #else 03243 throw(); 03244 #endif 03245 03246 INLINE l_ivector operator &(const l_rvector_slice &sl, const l_ivector &rv) 03247 #if(CXSC_INDEX_CHECK) 03248 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03249 #else 03250 throw(); 03251 #endif 03252 03253 INLINE l_ivector operator &(const l_rvector_slice &sl1, const l_ivector_slice &sl2) 03254 #if(CXSC_INDEX_CHECK) 03255 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03256 #else 03257 throw(); 03258 #endif 03259 03261 INLINE l_ivector operator &(const l_ivector &rv1, const l_rvector &rv2) 03262 #if(CXSC_INDEX_CHECK) 03263 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03264 #else 03265 throw(); 03266 #endif 03267 03268 INLINE l_ivector operator &(const l_ivector &rv, const l_rvector_slice &sl) 03269 #if(CXSC_INDEX_CHECK) 03270 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03271 #else 03272 throw(); 03273 #endif 03274 03275 INLINE l_ivector operator &(const l_ivector_slice &sl, const l_rvector &rv) 03276 #if(CXSC_INDEX_CHECK) 03277 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03278 #else 03279 throw(); 03280 #endif 03281 03282 INLINE l_ivector operator &(const l_ivector_slice &sl1, const l_rvector_slice &sl2) 03283 #if(CXSC_INDEX_CHECK) 03284 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03285 #else 03286 throw(); 03287 #endif 03288 03290 INLINE l_ivector & operator &=(l_ivector &rv1, const l_rvector &rv2) 03291 #if(CXSC_INDEX_CHECK) 03292 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03293 #else 03294 throw(); 03295 #endif 03296 03297 INLINE l_ivector &operator &=(l_ivector &rv, const l_rvector_slice &sl) 03298 #if(CXSC_INDEX_CHECK) 03299 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03300 #else 03301 throw(); 03302 #endif 03303 03304 //-------------------------------- l_interval / interval -------------------------------- 03305 03307 INLINE void accumulate(idotprecision &dp, const ivector & rv1, const l_ivector &rv2) 03308 #if(CXSC_INDEX_CHECK) 03309 throw(OP_WITH_WRONG_DIM); 03310 #else 03311 throw(); 03312 #endif 03313 03314 INLINE void accumulate(idotprecision &dp, const l_ivector & rv1, const ivector &rv2) 03315 #if(CXSC_INDEX_CHECK) 03316 throw(OP_WITH_WRONG_DIM); 03317 #else 03318 throw(); 03319 #endif 03320 03321 INLINE void accumulate(idotprecision &dp, const ivector_slice & sl, const l_ivector &rv) 03322 #if(CXSC_INDEX_CHECK) 03323 throw(OP_WITH_WRONG_DIM); 03324 #else 03325 throw(); 03326 #endif 03327 03328 INLINE void accumulate(idotprecision &dp,const l_ivector_slice &sl,const ivector &rv) 03329 #if(CXSC_INDEX_CHECK) 03330 throw(OP_WITH_WRONG_DIM); 03331 #else 03332 throw(); 03333 #endif 03334 03335 INLINE void accumulate(idotprecision &dp, const ivector &rv, const l_ivector_slice &sl) 03336 #if(CXSC_INDEX_CHECK) 03337 throw(OP_WITH_WRONG_DIM); 03338 #else 03339 throw(); 03340 #endif 03341 03342 INLINE void accumulate(idotprecision &dp, const ivector & rv1, const l_imatrix_subv &rv2) 03343 #if(CXSC_INDEX_CHECK) 03344 throw(OP_WITH_WRONG_DIM); 03345 #else 03346 throw(); 03347 #endif 03348 03349 INLINE void accumulate(idotprecision &dp, const l_ivector & rv1, const imatrix_subv &rv2) 03350 #if(CXSC_INDEX_CHECK) 03351 throw(OP_WITH_WRONG_DIM); 03352 #else 03353 throw(); 03354 #endif 03355 03356 INLINE void accumulate(idotprecision &dp,const l_ivector &rv,const ivector_slice &sl) 03357 #if(CXSC_INDEX_CHECK) 03358 throw(OP_WITH_WRONG_DIM); 03359 #else 03360 throw(); 03361 #endif 03362 03363 INLINE void accumulate(idotprecision &dp, const imatrix_subv & rv1, const l_ivector &rv2) 03364 #if(CXSC_INDEX_CHECK) 03365 throw(OP_WITH_WRONG_DIM); 03366 #else 03367 throw(); 03368 #endif 03369 03370 INLINE void accumulate(idotprecision &dp, const l_imatrix_subv & rv1, const ivector &rv2) 03371 #if(CXSC_INDEX_CHECK) 03372 throw(OP_WITH_WRONG_DIM); 03373 #else 03374 throw(); 03375 #endif 03376 03377 INLINE void accumulate(idotprecision &dp, const l_ivector_slice & sl1, const ivector_slice &sl2) 03378 #if(CXSC_INDEX_CHECK) 03379 throw(OP_WITH_WRONG_DIM); 03380 #else 03381 throw(); 03382 #endif 03383 03384 INLINE void accumulate(idotprecision &dp, const ivector_slice & sl1, const l_ivector_slice &sl2) 03385 #if(CXSC_INDEX_CHECK) 03386 throw(OP_WITH_WRONG_DIM); 03387 #else 03388 throw(); 03389 #endif 03390 03392 INLINE l_interval operator *(const ivector & rv1, const l_ivector &rv2) 03393 #if(CXSC_INDEX_CHECK) 03394 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03395 #else 03396 throw(); 03397 #endif 03398 03399 INLINE l_interval operator *(const ivector_slice &sl, const l_ivector &rv) 03400 #if(CXSC_INDEX_CHECK) 03401 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03402 #else 03403 throw(); 03404 #endif 03405 03406 INLINE l_interval operator *(const ivector &rv, const l_ivector_slice &sl) 03407 #if(CXSC_INDEX_CHECK) 03408 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03409 #else 03410 throw(); 03411 #endif 03412 03413 INLINE l_interval operator *(const ivector_slice & sl1, const l_ivector_slice &sl2) 03414 #if(CXSC_INDEX_CHECK) 03415 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03416 #else 03417 throw(); 03418 #endif 03419 03421 INLINE l_interval operator *(const l_ivector & rv1, const ivector &rv2) 03422 #if(CXSC_INDEX_CHECK) 03423 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03424 #else 03425 throw(); 03426 #endif 03427 03428 INLINE l_interval operator *(const l_ivector_slice &sl, const ivector &rv) 03429 #if(CXSC_INDEX_CHECK) 03430 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03431 #else 03432 throw(); 03433 #endif 03434 03435 INLINE l_interval operator *(const l_ivector &rv, const ivector_slice &sl) 03436 #if(CXSC_INDEX_CHECK) 03437 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03438 #else 03439 throw(); 03440 #endif 03441 03442 INLINE l_interval operator *(const l_ivector_slice & sl1, const ivector_slice &sl2) 03443 #if(CXSC_INDEX_CHECK) 03444 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03445 #else 03446 throw(); 03447 #endif 03448 03450 INLINE l_ivector operator +(const ivector &rv1, const l_ivector &rv2) 03451 #if(CXSC_INDEX_CHECK) 03452 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03453 #else 03454 throw(); 03455 #endif 03456 03457 INLINE l_ivector operator +(const ivector &rv, const l_ivector_slice &sl) 03458 #if(CXSC_INDEX_CHECK) 03459 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03460 #else 03461 throw(); 03462 #endif 03463 03464 INLINE l_ivector operator +(const ivector_slice &sl, const l_ivector &rv) 03465 #if(CXSC_INDEX_CHECK) 03466 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03467 #else 03468 throw(); 03469 #endif 03470 03471 INLINE l_ivector operator +(const ivector_slice &sl1, const l_ivector_slice &sl2) 03472 #if(CXSC_INDEX_CHECK) 03473 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03474 #else 03475 throw(); 03476 #endif 03477 03479 INLINE l_ivector operator +(const l_ivector &rv1, const ivector &rv2) 03480 #if(CXSC_INDEX_CHECK) 03481 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03482 #else 03483 throw(); 03484 #endif 03485 03486 INLINE l_ivector operator +(const l_ivector &rv, const ivector_slice &sl) 03487 #if(CXSC_INDEX_CHECK) 03488 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03489 #else 03490 throw(); 03491 #endif 03492 03493 INLINE l_ivector operator +(const l_ivector_slice &sl, const ivector &rv) 03494 #if(CXSC_INDEX_CHECK) 03495 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03496 #else 03497 throw(); 03498 #endif 03499 03500 INLINE l_ivector operator +(const l_ivector_slice &sl1, const ivector_slice &sl2) 03501 #if(CXSC_INDEX_CHECK) 03502 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03503 #else 03504 throw(); 03505 #endif 03506 03508 INLINE l_ivector & operator +=(l_ivector &rv1, const ivector &rv2) 03509 #if(CXSC_INDEX_CHECK) 03510 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03511 #else 03512 throw(); 03513 #endif 03514 03515 INLINE l_ivector &operator +=(l_ivector &rv, const ivector_slice &sl) 03516 #if(CXSC_INDEX_CHECK) 03517 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03518 #else 03519 throw(); 03520 #endif 03521 03523 INLINE l_ivector operator -(const ivector &rv1, const l_ivector &rv2) 03524 #if(CXSC_INDEX_CHECK) 03525 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03526 #else 03527 throw(); 03528 #endif 03529 03530 INLINE l_ivector operator -(const ivector &rv, const l_ivector_slice &sl) 03531 #if(CXSC_INDEX_CHECK) 03532 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03533 #else 03534 throw(); 03535 #endif 03536 03537 INLINE l_ivector operator -(const ivector_slice &sl, const l_ivector &rv) 03538 #if(CXSC_INDEX_CHECK) 03539 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03540 #else 03541 throw(); 03542 #endif 03543 03544 INLINE l_ivector operator -(const ivector_slice &sl1, const l_ivector_slice &sl2) 03545 #if(CXSC_INDEX_CHECK) 03546 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03547 #else 03548 throw(); 03549 #endif 03550 03552 INLINE l_ivector operator -(const l_ivector &rv1, const ivector &rv2) 03553 #if(CXSC_INDEX_CHECK) 03554 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03555 #else 03556 throw(); 03557 #endif 03558 03559 INLINE l_ivector operator -(const l_ivector &rv, const ivector_slice &sl) 03560 #if(CXSC_INDEX_CHECK) 03561 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03562 #else 03563 throw(); 03564 #endif 03565 03566 INLINE l_ivector operator -(const l_ivector_slice &sl, const ivector &rv) 03567 #if(CXSC_INDEX_CHECK) 03568 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03569 #else 03570 throw(); 03571 #endif 03572 03573 INLINE l_ivector operator -(const l_ivector_slice &sl1, const ivector_slice &sl2) 03574 #if(CXSC_INDEX_CHECK) 03575 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03576 #else 03577 throw(); 03578 #endif 03579 03581 INLINE l_ivector & operator -=(l_ivector &rv1, const ivector &rv2) 03582 #if(CXSC_INDEX_CHECK) 03583 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03584 #else 03585 throw(); 03586 #endif 03587 03588 INLINE l_ivector &operator -=(l_ivector &rv, const ivector_slice &sl) 03589 #if(CXSC_INDEX_CHECK) 03590 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03591 #else 03592 throw(); 03593 #endif 03594 03596 INLINE l_ivector operator |(const ivector &rv1, const l_ivector &rv2) 03597 #if(CXSC_INDEX_CHECK) 03598 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03599 #else 03600 throw(); 03601 #endif 03602 03603 INLINE l_ivector operator |(const ivector &rv, const l_ivector_slice &sl) 03604 #if(CXSC_INDEX_CHECK) 03605 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03606 #else 03607 throw(); 03608 #endif 03609 03610 INLINE l_ivector operator |(const ivector_slice &sl, const l_ivector &rv) 03611 #if(CXSC_INDEX_CHECK) 03612 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03613 #else 03614 throw(); 03615 #endif 03616 03617 INLINE l_ivector operator |(const ivector_slice &sl1, const l_ivector_slice &sl2) 03618 #if(CXSC_INDEX_CHECK) 03619 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03620 #else 03621 throw(); 03622 #endif 03623 03625 INLINE l_ivector operator |(const l_ivector &rv1, const ivector &rv2) 03626 #if(CXSC_INDEX_CHECK) 03627 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03628 #else 03629 throw(); 03630 #endif 03631 03632 INLINE l_ivector operator |(const l_ivector &rv, const ivector_slice &sl) 03633 #if(CXSC_INDEX_CHECK) 03634 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03635 #else 03636 throw(); 03637 #endif 03638 03639 INLINE l_ivector operator |(const l_ivector_slice &sl, const ivector &rv) 03640 #if(CXSC_INDEX_CHECK) 03641 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03642 #else 03643 throw(); 03644 #endif 03645 03646 INLINE l_ivector operator |(const l_ivector_slice &sl1, const ivector_slice &sl2) 03647 #if(CXSC_INDEX_CHECK) 03648 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03649 #else 03650 throw(); 03651 #endif 03652 03654 INLINE l_ivector & operator |=(l_ivector &rv1, const ivector &rv2) 03655 #if(CXSC_INDEX_CHECK) 03656 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03657 #else 03658 throw(); 03659 #endif 03660 03661 INLINE l_ivector &operator |=(l_ivector &rv, const ivector_slice &sl) 03662 #if(CXSC_INDEX_CHECK) 03663 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03664 #else 03665 throw(); 03666 #endif 03667 03669 INLINE l_ivector operator &(const ivector &rv1, const l_ivector &rv2) 03670 #if(CXSC_INDEX_CHECK) 03671 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03672 #else 03673 throw(); 03674 #endif 03675 03676 INLINE l_ivector operator &(const ivector &rv, const l_ivector_slice &sl) 03677 #if(CXSC_INDEX_CHECK) 03678 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03679 #else 03680 throw(); 03681 #endif 03682 03683 INLINE l_ivector operator &(const ivector_slice &sl, const l_ivector &rv) 03684 #if(CXSC_INDEX_CHECK) 03685 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03686 #else 03687 throw(); 03688 #endif 03689 03690 INLINE l_ivector operator &(const ivector_slice &sl1, const l_ivector_slice &sl2) 03691 #if(CXSC_INDEX_CHECK) 03692 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03693 #else 03694 throw(); 03695 #endif 03696 03698 INLINE l_ivector operator &(const l_ivector &rv1, const ivector &rv2) 03699 #if(CXSC_INDEX_CHECK) 03700 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03701 #else 03702 throw(); 03703 #endif 03704 03705 INLINE l_ivector operator &(const l_ivector &rv, const ivector_slice &sl) 03706 #if(CXSC_INDEX_CHECK) 03707 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03708 #else 03709 throw(); 03710 #endif 03711 03712 INLINE l_ivector operator &(const l_ivector_slice &sl, const ivector &rv) 03713 #if(CXSC_INDEX_CHECK) 03714 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03715 #else 03716 throw(); 03717 #endif 03718 03719 INLINE l_ivector operator &(const l_ivector_slice &sl1, const ivector_slice &sl2) 03720 #if(CXSC_INDEX_CHECK) 03721 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03722 #else 03723 throw(); 03724 #endif 03725 03727 INLINE l_ivector & operator &=(l_ivector &rv1, const ivector &rv2) 03728 #if(CXSC_INDEX_CHECK) 03729 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03730 #else 03731 throw(); 03732 #endif 03733 03734 INLINE l_ivector &operator &=(l_ivector &rv, const ivector_slice &sl) 03735 #if(CXSC_INDEX_CHECK) 03736 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03737 #else 03738 throw(); 03739 #endif 03740 03741 //------------- real x l_real ------------------------ 03743 INLINE l_ivector operator |(const rvector &rv1, const l_rvector &rv2) 03744 #if(CXSC_INDEX_CHECK) 03745 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03746 #else 03747 throw(); 03748 #endif 03749 03750 INLINE l_ivector operator |(const l_rvector &rv1, const rvector &rv2) 03751 #if(CXSC_INDEX_CHECK) 03752 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03753 #else 03754 throw(); 03755 #endif 03756 03757 INLINE l_ivector operator |(const l_rvector &rv, const rvector_slice &sl) 03758 #if(CXSC_INDEX_CHECK) 03759 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03760 #else 03761 throw(); 03762 #endif 03763 03764 INLINE l_ivector operator |(const rvector_slice &sl,const l_rvector &rv) 03765 #if(CXSC_INDEX_CHECK) 03766 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03767 #else 03768 throw(); 03769 #endif 03770 03771 INLINE l_ivector operator |(const l_rvector_slice &sl, const rvector &rv) 03772 #if(CXSC_INDEX_CHECK) 03773 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03774 #else 03775 throw(); 03776 #endif 03777 03778 INLINE l_ivector operator |(const rvector &rv,const l_rvector_slice &sl) 03779 #if(CXSC_INDEX_CHECK) 03780 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03781 #else 03782 throw(); 03783 #endif 03784 03785 INLINE l_ivector operator |(const l_rvector_slice &sl1, const rvector_slice &sl2) 03786 #if(CXSC_INDEX_CHECK) 03787 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03788 #else 03789 throw(); 03790 #endif 03791 03792 INLINE l_ivector operator |(const rvector_slice &sl1, const l_rvector_slice &sl2) 03793 #if(CXSC_INDEX_CHECK) 03794 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03795 #else 03796 throw(); 03797 #endif 03798 03799 //------------- l_real x l_real ------------------------ 03801 INLINE l_ivector operator |(const l_rvector &rv1, const l_rvector &rv2) 03802 #if(CXSC_INDEX_CHECK) 03803 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03804 #else 03805 throw(); 03806 #endif 03807 03808 INLINE l_ivector operator |(const l_rvector_slice &sl, const l_rvector &rv) 03809 #if(CXSC_INDEX_CHECK) 03810 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03811 #else 03812 throw(); 03813 #endif 03814 03815 INLINE l_ivector operator |(const l_rvector &rv,const l_rvector_slice &sl) 03816 #if(CXSC_INDEX_CHECK) 03817 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03818 #else 03819 throw(); 03820 #endif 03821 03822 INLINE l_ivector operator |(const l_rvector_slice &sl1, const l_rvector_slice &sl2) 03823 #if(CXSC_INDEX_CHECK) 03824 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03825 #else 03826 throw(); 03827 #endif 03828 03829 //-------------------------------- interval / l_real -------------------------------- 03830 03831 // multiplication in lrvecivec.hpp 03832 03834 INLINE l_ivector operator +(const l_rvector &rv1, const ivector &rv2) 03835 #if(CXSC_INDEX_CHECK) 03836 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03837 #else 03838 throw(); 03839 #endif 03840 03841 INLINE l_ivector operator +(const l_rvector &rv, const ivector_slice &sl) 03842 #if(CXSC_INDEX_CHECK) 03843 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03844 #else 03845 throw(); 03846 #endif 03847 03848 INLINE l_ivector operator +(const l_rvector_slice &sl, const ivector &rv) 03849 #if(CXSC_INDEX_CHECK) 03850 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03851 #else 03852 throw(); 03853 #endif 03854 03855 INLINE l_ivector operator +(const l_rvector_slice &sl1, const ivector_slice &sl2) 03856 #if(CXSC_INDEX_CHECK) 03857 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03858 #else 03859 throw(); 03860 #endif 03861 03863 INLINE l_ivector operator +(const ivector &rv1, const l_rvector &rv2) 03864 #if(CXSC_INDEX_CHECK) 03865 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03866 #else 03867 throw(); 03868 #endif 03869 03870 INLINE l_ivector operator +(const ivector &rv, const l_rvector_slice &sl) 03871 #if(CXSC_INDEX_CHECK) 03872 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03873 #else 03874 throw(); 03875 #endif 03876 03877 INLINE l_ivector operator +(const ivector_slice &sl, const l_rvector &rv) 03878 #if(CXSC_INDEX_CHECK) 03879 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03880 #else 03881 throw(); 03882 #endif 03883 03884 INLINE l_ivector operator +(const ivector_slice &sl1, const l_rvector_slice &sl2) 03885 #if(CXSC_INDEX_CHECK) 03886 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03887 #else 03888 throw(); 03889 #endif 03890 03891 03893 INLINE l_ivector operator -(const l_rvector &rv1, const ivector &rv2) 03894 #if(CXSC_INDEX_CHECK) 03895 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03896 #else 03897 throw(); 03898 #endif 03899 03900 INLINE l_ivector operator -(const l_rvector &rv, const ivector_slice &sl) 03901 #if(CXSC_INDEX_CHECK) 03902 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03903 #else 03904 throw(); 03905 #endif 03906 03907 INLINE l_ivector operator -(const l_rvector_slice &sl, const ivector &rv) 03908 #if(CXSC_INDEX_CHECK) 03909 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03910 #else 03911 throw(); 03912 #endif 03913 03914 INLINE l_ivector operator -(const l_rvector_slice &sl1, const ivector_slice &sl2) 03915 #if(CXSC_INDEX_CHECK) 03916 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03917 #else 03918 throw(); 03919 #endif 03920 03922 INLINE l_ivector operator -(const ivector &rv1, const l_rvector &rv2) 03923 #if(CXSC_INDEX_CHECK) 03924 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03925 #else 03926 throw(); 03927 #endif 03928 03929 INLINE l_ivector operator -(const ivector &rv, const l_rvector_slice &sl) 03930 #if(CXSC_INDEX_CHECK) 03931 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03932 #else 03933 throw(); 03934 #endif 03935 03936 INLINE l_ivector operator -(const ivector_slice &sl, const l_rvector &rv) 03937 #if(CXSC_INDEX_CHECK) 03938 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03939 #else 03940 throw(); 03941 #endif 03942 03943 INLINE l_ivector operator -(const ivector_slice &sl1, const l_rvector_slice &sl2) 03944 #if(CXSC_INDEX_CHECK) 03945 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03946 #else 03947 throw(); 03948 #endif 03949 03950 03952 INLINE l_ivector operator |(const l_rvector &rv1, const ivector &rv2) 03953 #if(CXSC_INDEX_CHECK) 03954 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03955 #else 03956 throw(); 03957 #endif 03958 03959 INLINE l_ivector operator |(const l_rvector &rv, const ivector_slice &sl) 03960 #if(CXSC_INDEX_CHECK) 03961 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03962 #else 03963 throw(); 03964 #endif 03965 03966 INLINE l_ivector operator |(const l_rvector_slice &sl, const ivector &rv) 03967 #if(CXSC_INDEX_CHECK) 03968 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03969 #else 03970 throw(); 03971 #endif 03972 03973 INLINE l_ivector operator |(const l_rvector_slice &sl1, const ivector_slice &sl2) 03974 #if(CXSC_INDEX_CHECK) 03975 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03976 #else 03977 throw(); 03978 #endif 03979 03981 INLINE l_ivector operator |(const ivector &rv1, const l_rvector &rv2) 03982 #if(CXSC_INDEX_CHECK) 03983 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03984 #else 03985 throw(); 03986 #endif 03987 03988 INLINE l_ivector operator |(const ivector &rv, const l_rvector_slice &sl) 03989 #if(CXSC_INDEX_CHECK) 03990 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03991 #else 03992 throw(); 03993 #endif 03994 03995 INLINE l_ivector operator |(const ivector_slice &sl, const l_rvector &rv) 03996 #if(CXSC_INDEX_CHECK) 03997 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 03998 #else 03999 throw(); 04000 #endif 04001 04002 INLINE l_ivector operator |(const ivector_slice &sl1, const l_rvector_slice &sl2) 04003 #if(CXSC_INDEX_CHECK) 04004 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 04005 #else 04006 throw(); 04007 #endif 04008 04010 INLINE l_ivector operator &(const l_rvector &rv1, const ivector &rv2) 04011 #if(CXSC_INDEX_CHECK) 04012 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 04013 #else 04014 throw(); 04015 #endif 04016 04017 INLINE l_ivector operator &(const l_rvector &rv, const ivector_slice &sl) 04018 #if(CXSC_INDEX_CHECK) 04019 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 04020 #else 04021 throw(); 04022 #endif 04023 04024 INLINE l_ivector operator &(const l_rvector_slice &sl, const ivector &rv) 04025 #if(CXSC_INDEX_CHECK) 04026 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 04027 #else 04028 throw(); 04029 #endif 04030 04031 INLINE l_ivector operator &(const l_rvector_slice &sl1, const ivector_slice &sl2) 04032 #if(CXSC_INDEX_CHECK) 04033 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 04034 #else 04035 throw(); 04036 #endif 04037 04039 INLINE l_ivector operator &(const ivector &rv1, const l_rvector &rv2) 04040 #if(CXSC_INDEX_CHECK) 04041 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 04042 #else 04043 throw(); 04044 #endif 04045 04046 INLINE l_ivector operator &(const ivector &rv, const l_rvector_slice &sl) 04047 #if(CXSC_INDEX_CHECK) 04048 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 04049 #else 04050 throw(); 04051 #endif 04052 04053 INLINE l_ivector operator &(const ivector_slice &sl, const l_rvector &rv) 04054 #if(CXSC_INDEX_CHECK) 04055 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 04056 #else 04057 throw(); 04058 #endif 04059 04060 INLINE l_ivector operator &(const ivector_slice &sl1, const l_rvector_slice &sl2) 04061 #if(CXSC_INDEX_CHECK) 04062 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>); 04063 #else 04064 throw(); 04065 #endif 04066 04067 } // namespace cxsc 04068 04069 #ifdef _CXSC_INCL_INL 04070 #include "vector.inl" 04071 #include "l_ivector.inl" 04072 #endif 04073 04074 #ifdef _CXSC_RMATRIX_HPP_INCLUDED 04075 # ifdef _CXSC_INCL_INL 04076 # include "livecrmat.inl" 04077 # else 04078 # include "livecrmat.hpp" 04079 # endif 04080 #endif 04081 04082 #ifdef _CXSC_LRMATRIX_HPP_INCLUDED 04083 # ifdef _CXSC_INCL_INL 04084 # include "liveclrmat.inl" 04085 # else 04086 # include "liveclrmat.hpp" 04087 # endif 04088 #endif 04089 04090 #ifdef _CXSC_IMATRIX_HPP_INCLUDED 04091 # ifdef _CXSC_INCL_INL 04092 # include "livecimat.inl" 04093 # else 04094 # include "livecimat.hpp" 04095 # endif 04096 #endif 04097 04098 04099 #endif 04100