00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
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"
00033
00034 #include "rvector.hpp"
00035 #include "ivector.hpp"
00036 #include "l_rvector.hpp"
00037 #include "vector.hpp"
00038
00039
00040 #include <iostream>
00041
00042
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
00065 #ifdef _CXSC_FRIEND_TPL
00066
00067
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
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
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
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
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
00590
00591
00592
00593
00594
00595
00596
00597
00598
00599
00600
00601
00602
00603
00604
00605 #endif
00606
00607
00608
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();
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
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
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
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
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
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
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
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
00814 INLINE ~l_ivector() { delete [] dat; }
00815
00816
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
00860
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
00881 #ifdef _CXSC_FRIEND_TPL
00882
00883
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
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
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
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
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
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
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
01273
01274
01275
01276
01277
01278
01279
01280
01281
01282
01283
01284
01285
01286
01287
01288
01289
01290
01291
01292
01293
01294
01295
01296
01297
01298
01299
01300
01301
01302
01303
01304
01305
01306
01307
01308
01309
01310
01311 #endif
01312
01313
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
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
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
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
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
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
01796
01797 };
01798
01799
01800
01801
01803 INLINE l_ivector _l_ivector(const l_interval &r) throw();
01804
01805
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
01813
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
01992
01993
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
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
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
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
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
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
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
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
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
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
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
03830
03831
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 }
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