26 #ifndef _CXSC_CIVECTOR_HPP_INCLUDED 27 #define _CXSC_CIVECTOR_HPP_INCLUDED 29 #include "xscclass.hpp" 32 #include "cinterval.hpp" 34 #include "rvector.hpp" 35 #include "ivector.hpp" 36 #include "cvector.hpp" 48 class scivector_slice;
67 #ifdef _CXSC_FRIEND_TPL 70 template <
class V,
class MS,
class S>
friend void _vmsconstr(V &v,
const MS &m)
72 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<MS>);
76 template <
class V,
class M,
class S>
friend void _vmconstr(V &v,
const M &m)
78 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>);
82 template <
class V>
friend void _vresize(V &rv)
throw();
83 template <
class V,
class S>
friend void _vresize(V &rv,
const int &len)
85 throw(ERROR__WRONG_BOUNDARIES<V>);
89 template <
class V,
class S>
friend void _vresize(V &rv,
const int &lb,
const int &ub)
91 throw(ERROR__WRONG_BOUNDARIES<V>);
95 template <
class V1,
class V2,
class S>
friend V1 &_vvassign(V1 &rv1,
const V2 &rv2)
throw();
96 template <
class V,
class S>
friend V & _vsassign(V &rv,
const S &r)
throw();
97 template <
class V,
class VS,
class S>
friend V & _vvsassign(V &rv,
const VS &sl)
throw();
98 template <
class VS,
class V>
friend VS & _vsvassign(VS &sl,
const V &rv)
100 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
104 template <
class V,
class M,
class S>
friend V &_vmassign(V &v,
const M &m)
105 #if(CXSC_INDEX_CHECK) 106 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>);
110 template <
class M,
class V,
class S>
friend M &_mvassign(M &m,
const V &v)
throw();
111 template <
class V1,
class V2>
friend V1 &_vvsetinf(V1 &rv1,
const V2 &rv2)
112 #if(CXSC_INDEX_CHECK) 113 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
117 template <
class V1,
class V2>
friend V1 &_vvsetsup(V1 &rv1,
const V2 &rv2)
118 #if(CXSC_INDEX_CHECK) 119 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
123 template <
class V,
class VS>
friend V &_vvssetinf(V &rv,
const VS &sl)
124 #if(CXSC_INDEX_CHECK) 125 throw(ERROR__OP_WITH_WRONG_DIM<V>);
129 template <
class V,
class VS>
friend V &_vvssetsup(V &rv,
const VS &sl)
130 #if(CXSC_INDEX_CHECK) 131 throw(ERROR__OP_WITH_WRONG_DIM<V>);
135 template <
class V,
class MV>
friend V &_vmvsetinf(V &rv,
const MV &v)
136 #if(CXSC_INDEX_CHECK) 137 throw(ERROR__OP_WITH_WRONG_DIM<V>);
141 template <
class V,
class MV>
friend V &_vmvsetsup(V &rv,
const MV &v)
142 #if(CXSC_INDEX_CHECK) 143 throw(ERROR__OP_WITH_WRONG_DIM<V>);
147 template <
class V1,
class V2>
friend V1 &_vvusetinf(V1 &rv1,
const V2 &rv2)
148 #if(CXSC_INDEX_CHECK) 149 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
153 template <
class V1,
class V2>
friend V1 &_vvusetsup(V1 &rv1,
const V2 &rv2)
154 #if(CXSC_INDEX_CHECK) 155 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
159 template <
class V,
class VS>
friend V &_vvsusetinf(V &rv,
const VS &sl)
160 #if(CXSC_INDEX_CHECK) 161 throw(ERROR__OP_WITH_WRONG_DIM<V>);
165 template <
class V,
class VS>
friend V &_vvsusetsup(V &rv,
const VS &sl)
166 #if(CXSC_INDEX_CHECK) 167 throw(ERROR__OP_WITH_WRONG_DIM<V>);
171 template <
class V,
class MV>
friend V &_vmvusetinf(V &rv,
const MV &v)
172 #if(CXSC_INDEX_CHECK) 173 throw(ERROR__OP_WITH_WRONG_DIM<V>);
177 template <
class V,
class MV>
friend V &_vmvusetsup(V &rv,
const MV &v)
178 #if(CXSC_INDEX_CHECK) 179 throw(ERROR__OP_WITH_WRONG_DIM<V>);
183 template <
class V,
class S>
friend V &_vssetinf(V &v,
const S &s)
throw();
184 template <
class V,
class S>
friend V &_vssetsup(V &v,
const S &s)
throw();
185 template <
class V,
class S>
friend V &_vsusetinf(V &v,
const S &s)
throw();
186 template <
class V,
class S>
friend V &_vsusetsup(V &v,
const S &s)
throw();
187 template <
class V,
class S>
friend V &_vssetim(V &v,
const S &s)
throw();
188 template <
class V,
class S>
friend V &_vssetre(V &v,
const S &s)
throw();
189 template <
class V>
friend V _vconj(
const V &rv)
throw();
190 template <
class VS,
class E>
friend E _vsconj(
const VS &sl)
throw();
191 template <
class V,
class E>
friend E _vabs(
const V &rv)
throw();
192 template <
class VS,
class E>
friend E _vsabs(
const VS &sl)
throw();
193 template <
class MV,
class V>
friend V _mvabs(
const MV &mv)
throw();
194 template <
class V,
class E>
friend E _vdiam(
const V &rv)
throw();
195 template <
class V,
class E>
friend E _vmid(
const V &rv)
throw();
196 template <
class V,
class E>
friend E _vinf(
const V &rv)
throw();
197 template <
class V,
class E>
friend E _vsup(
const V &rv)
throw();
198 template <
class V,
class E>
friend E _vim(
const V &rv)
throw();
199 template <
class V,
class E>
friend E _vre(
const V &rv)
throw();
208 template <
class V1,
class V2>
friend V1 &_vvsetim(V1 &rv1,
const V2 &rv2)
209 #if(CXSC_INDEX_CHECK) 210 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
214 template <
class V1,
class V2>
friend V1 &_vvsetre(V1 &rv1,
const V2 &rv2)
215 #if(CXSC_INDEX_CHECK) 216 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
220 template <
class V,
class VS>
friend V &_vvssetim(V &rv,
const VS &sl)
221 #if(CXSC_INDEX_CHECK) 222 throw(ERROR__OP_WITH_WRONG_DIM<V>);
226 template <
class V,
class VS>
friend V &_vvssetre(V &rv,
const VS &sl)
227 #if(CXSC_INDEX_CHECK) 228 throw(ERROR__OP_WITH_WRONG_DIM<V>);
232 template <
class V,
class MV>
friend V &_vmvsetim(V &rv,
const MV &v)
233 #if(CXSC_INDEX_CHECK) 234 throw(ERROR__OP_WITH_WRONG_DIM<V>);
238 template <
class V,
class MV>
friend V &_vmvsetre(V &rv,
const MV &v)
239 #if(CXSC_INDEX_CHECK) 240 throw(ERROR__OP_WITH_WRONG_DIM<V>);
246 template <
class DP,
class V1,
class V2>
friend void _vvaccu(DP &dp,
const V1 & rv1,
const V2 &rv2)
247 #if(CXSC_INDEX_CHECK) 248 throw(OP_WITH_WRONG_DIM);
252 template <
class DP,
class VS,
class V>
friend void _vsvaccu(DP &dp,
const VS & sl,
const V &rv)
253 #if(CXSC_INDEX_CHECK) 254 throw(OP_WITH_WRONG_DIM);
259 template <
class V1,
class V2,
class E>
friend E _vvcimult(
const V1 & rv1,
const V2 &rv2)
260 #if(CXSC_INDEX_CHECK) 261 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
265 template <
class VS,
class V,
class E>
friend E _vsvcimult(
const VS & sl,
const V &rv)
266 #if(CXSC_INDEX_CHECK) 267 throw(ERROR__OP_WITH_WRONG_DIM<V>);
272 template <
class V,
class S>
friend V &_vsmultassign(V &rv,
const S &r)
throw();
273 template <
class V1,
class V2,
class E>
friend E _vvplus(
const V1 &rv1,
const V2 &rv2)
274 #if(CXSC_INDEX_CHECK) 275 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
279 template <
class V,
class VS,
class E>
friend E _vvsplus(
const V &rv,
const VS &sl)
280 #if(CXSC_INDEX_CHECK) 281 throw(ERROR__OP_WITH_WRONG_DIM<V>);
285 template <
class VS1,
class VS2,
class E>
friend E _vsvsplus(
const VS1 &s1,
const VS2 &s2)
286 #if(CXSC_INDEX_CHECK) 287 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
291 template <
class VS1,
class VS2,
class E>
friend E _vsvsminus(
const VS1 &s1,
const VS2 &s2)
292 #if(CXSC_INDEX_CHECK) 293 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
297 template <
class V1,
class V2>
friend V1 &_vvplusassign(V1 &rv1,
const V2 &rv2)
298 #if(CXSC_INDEX_CHECK) 299 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
303 template <
class V,
class VS>
friend V &_vvsplusassign(V &rv,
const VS &sl)
304 #if(CXSC_INDEX_CHECK) 305 throw(ERROR__OP_WITH_WRONG_DIM<V>);
309 template <
class VS,
class V>
friend VS &_vsvplusassign(VS &sl,
const V &rv)
310 #if(CXSC_INDEX_CHECK) 311 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
315 template <
class VS1,
class VS2>
friend VS1 &_vsvsplusassign(VS1 &sl1,
const VS2 &sl2)
316 #if(CXSC_INDEX_CHECK) 317 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
321 template <
class VS1,
class VS2>
friend VS1 &_vsvsminusassign(VS1 &sl1,
const VS2 &sl2)
322 #if(CXSC_INDEX_CHECK) 323 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
327 template <
class V1,
class V2>
friend V1 &_vvminusassign(V1 &rv1,
const V2 &rv2)
328 #if(CXSC_INDEX_CHECK) 329 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
333 template <
class V,
class VS>
friend V &_vvsminusassign(V &rv,
const VS &sl)
334 #if(CXSC_INDEX_CHECK) 335 throw(ERROR__OP_WITH_WRONG_DIM<V>);
339 template <
class VS,
class V>
friend VS &_vsvminusassign(VS &sl,
const V &rv)
340 #if(CXSC_INDEX_CHECK) 341 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
345 template <
class V>
friend V _vminus(
const V &rv)
throw();
346 template <
class VS,
class V>
friend V _vsminus(
const VS &sl)
throw();
347 template <
class V1,
class V2,
class E>
friend E _vvminus(
const V1 &rv1,
const V2 &rv2)
348 #if(CXSC_INDEX_CHECK) 349 throw(ERROR__OP_WITH_WRONG_DIM<E>);
353 template <
class V,
class VS,
class E>
friend E _vvsminus(
const V &rv,
const VS &sl)
354 #if(CXSC_INDEX_CHECK) 355 throw(ERROR__OP_WITH_WRONG_DIM<E>);
359 template <
class VS,
class V,
class E>
friend E _vsvminus(
const VS &sl,
const V &rv)
360 #if(CXSC_INDEX_CHECK) 361 throw(ERROR__OP_WITH_WRONG_DIM<E>);
365 template <
class V1,
class V2,
class E>
friend E _vvconv(
const V1 &rv1,
const V2 &rv2)
366 #if(CXSC_INDEX_CHECK) 367 throw(ERROR__OP_WITH_WRONG_DIM<E>);
371 template <
class V,
class VS,
class E>
friend E _vvsconv(
const V &rv,
const VS &sl)
372 #if(CXSC_INDEX_CHECK) 373 throw(ERROR__OP_WITH_WRONG_DIM<E>);
377 template <
class VS1,
class VS2,
class E>
friend E _vsvsconv(
const VS1 &s1,
const VS2 &s2)
378 #if(CXSC_INDEX_CHECK) 379 throw(ERROR__OP_WITH_WRONG_DIM<E>);
383 template <
class V1,
class V2>
friend V1 &_vvconvassign(V1 &rv1,
const V2 &rv2)
384 #if(CXSC_INDEX_CHECK) 385 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
389 template <
class V,
class VS>
friend V &_vvsconvassign(V &rv,
const VS &sl)
390 #if(CXSC_INDEX_CHECK) 391 throw(ERROR__OP_WITH_WRONG_DIM<V>);
395 template <
class VS,
class V>
friend VS &_vsvconvassign(VS &sl,
const V &rv)
396 #if(CXSC_INDEX_CHECK) 397 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
401 template <
class VS1,
class VS2>
friend VS1 &_vsvsconvassign(VS1 &sl1,
const VS2 &sl2)
402 #if(CXSC_INDEX_CHECK) 403 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
407 template <
class V1,
class V2,
class E>
friend E _vvsect(
const V1 &rv1,
const V2 &rv2)
408 #if(CXSC_INDEX_CHECK) 409 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
413 template <
class V,
class VS,
class E>
friend E _vvssect(
const V &rv,
const VS &sl)
414 #if(CXSC_INDEX_CHECK) 415 throw(ERROR__OP_WITH_WRONG_DIM<E>);
419 template <
class VS1,
class VS2,
class E>
friend E _vsvssect(
const VS1 &s1,
const VS2 &s2)
420 #if(CXSC_INDEX_CHECK) 421 throw(ERROR__OP_WITH_WRONG_DIM<E>);
425 template <
class V1,
class V2>
friend V1 &_vvsectassign(V1 &rv1,
const V2 &rv2)
426 #if(CXSC_INDEX_CHECK) 427 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
431 template <
class V,
class VS>
friend V &_vvssectassign(V &rv,
const VS &sl)
432 #if(CXSC_INDEX_CHECK) 433 throw(ERROR__OP_WITH_WRONG_DIM<V>);
437 template <
class VS,
class V>
friend VS &_vsvsectassign(VS &sl,
const V &rv)
438 #if(CXSC_INDEX_CHECK) 439 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
443 template <
class VS1,
class VS2>
friend VS1 &_vsvssectassign(VS1 &sl1,
const VS2 &sl2)
444 #if(CXSC_INDEX_CHECK) 445 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
449 template <
class MV1,
class MV2,
class E>
friend E _mvmvsect(
const MV1 &rv1,
const MV2 &rv2)
450 #if(CXSC_INDEX_CHECK) 451 throw(ERROR__OP_WITH_WRONG_DIM<E>);
455 template <
class MV,
class V,
class E>
friend E _mvvsect(
const MV &rv1,
const V &rv2)
456 #if(CXSC_INDEX_CHECK) 457 throw(ERROR__OP_WITH_WRONG_DIM<E>);
461 template <
class MV,
class V>
friend MV &_mvvsectassign(MV &v,
const V &rv)
462 #if(CXSC_INDEX_CHECK) 463 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
467 template <
class V,
class MV>
friend V &_vmvsectassign(V &rv,
const MV &v)
468 #if(CXSC_INDEX_CHECK) 469 throw(ERROR__OP_WITH_WRONG_DIM<V>);
473 template <
class MV1,
class MV2,
class E>
friend E _mvmvconv(
const MV1 &rv1,
const MV2 &rv2)
474 #if(CXSC_INDEX_CHECK) 475 throw(ERROR__OP_WITH_WRONG_DIM<E>);
479 template <
class MV,
class V,
class E>
friend E _mvvconv(
const MV &rv1,
const V &rv2)
480 #if(CXSC_INDEX_CHECK) 481 throw(ERROR__OP_WITH_WRONG_DIM<E>);
485 template <
class MV,
class V>
friend MV &_mvvconvassign(MV &v,
const V &rv)
486 #if(CXSC_INDEX_CHECK) 487 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
491 template <
class V,
class MV>
friend V &_vmvconvassign(V &rv,
const MV &v)
492 #if(CXSC_INDEX_CHECK) 493 throw(ERROR__OP_WITH_WRONG_DIM<V>);
497 template <
class V,
class MV,
class S>
friend S _vmvcimult(
const V &rv1,
const MV &rv2)
498 #if(CXSC_INDEX_CHECK) 499 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
504 template <
class V,
class S,
class E>
friend E _vsdiv(
const V &rv,
const S &s)
throw();
505 template <
class V,
class S>
friend V &_vsdivassign(V &rv,
const S &r)
throw();
506 template <
class VS,
class S,
class E>
friend E _vssdiv(
const VS &sl,
const S &s)
throw();
507 template <
class V,
class S,
class E>
friend E _vsmult(
const V &rv,
const S &s)
throw();
508 template <
class VS,
class S,
class E>
friend E _vssmult(
const VS &sl,
const S &s)
throw();
509 template <
class MV,
class S,
class E>
friend E _mvsmult(
const MV &rv,
const S &s)
throw();
510 template <
class MV1,
class MV2,
class E>
friend E _mvmvplus(
const MV1 &rv1,
const MV2 &rv2)
511 #if(CXSC_INDEX_CHECK) 512 throw(ERROR__OP_WITH_WRONG_DIM<E>);
516 template <
class MV,
class V,
class E>
friend E _mvvplus(
const MV &rv1,
const V &rv2)
517 #if(CXSC_INDEX_CHECK) 518 throw(ERROR__OP_WITH_WRONG_DIM<E>);
522 template <
class MV,
class V,
class E>
friend E _mvvminus(
const MV &rv1,
const V &rv2)
523 #if(CXSC_INDEX_CHECK) 524 throw(ERROR__OP_WITH_WRONG_DIM<E>);
528 template <
class V,
class MV,
class E>
friend E _vmvminus(
const V &rv1,
const MV &rv2)
529 #if(CXSC_INDEX_CHECK) 530 throw(ERROR__OP_WITH_WRONG_DIM<E>);
534 template <
class MV1,
class MV2,
class E>
friend E _mvmvminus(
const MV1 &rv1,
const MV2 &rv2)
535 #if(CXSC_INDEX_CHECK) 536 throw(ERROR__OP_WITH_WRONG_DIM<E>);
540 template <
class MV,
class V>
friend MV &_mvvplusassign(MV &v,
const V &rv)
541 #if(CXSC_INDEX_CHECK) 542 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
546 template <
class MV,
class V>
friend MV &_mvvminusassign(MV &v,
const V &rv)
547 #if(CXSC_INDEX_CHECK) 548 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
552 template <
class MV,
class S,
class E>
friend E _mvsdiv(
const MV &rv,
const S &s)
throw();
553 template <
class MV,
class V>
friend MV &_mvvassign(MV &v,
const V &rv)
554 #if(CXSC_INDEX_CHECK) 555 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
560 template <
class V1,
class V2>
friend bool _vveq(
const V1 &rv1,
const V2 &rv2)
throw();
561 template <
class VS,
class V>
friend bool _vsveq(
const VS &sl,
const V &rv)
throw();
562 template <
class V1,
class V2>
friend bool _vvneq(
const V1 &rv1,
const V2 &rv2)
throw();
563 template <
class VS,
class V>
friend bool _vsvneq(
const VS &sl,
const V &rv)
throw();
564 template <
class V1,
class V2>
friend bool _vvless(
const V1 &rv1,
const V2 &rv2)
throw();
565 template <
class VS,
class V>
friend bool _vsvless(
const VS &sl,
const V &rv)
throw();
566 template <
class V1,
class V2>
friend bool _vvleq(
const V1 &rv1,
const V2 &rv2)
throw();
567 template <
class VS,
class V>
friend bool _vsvleq(
const VS &sl,
const V &rv)
throw();
568 template <
class V,
class VS>
friend bool _vvsless(
const V &rv,
const VS &sl)
throw();
569 template <
class V,
class VS>
friend bool _vvsleq(
const V &rv,
const VS &sl)
throw();
570 template <
class V>
friend bool _vnot(
const V &rv)
throw();
571 template <
class V>
friend void *_vvoid(
const V &rv)
throw();
572 template <
class VS1,
class VS2>
friend bool _vsvseq(
const VS1 &sl1,
const VS2 &sl2)
throw();
573 template <
class VS1,
class VS2>
friend bool _vsvsneq(
const VS1 &sl1,
const VS2 &sl2)
throw();
574 template <
class VS1,
class VS2>
friend bool _vsvsless(
const VS1 &sl1,
const VS2 &sl2)
throw();
575 template <
class VS1,
class VS2>
friend bool _vsvsleq(
const VS1 &sl1,
const VS2 &sl2)
throw();
576 template <
class VS>
friend bool _vsnot(
const VS &sl)
throw();
577 template <
class VS>
friend void *_vsvoid(
const VS &sl)
throw();
578 template <
class V>
friend std::ostream &_vout(std::ostream &s,
const V &rv)
throw();
579 template <
class V>
friend std::istream &_vin(std::istream &s, V &rv)
throw();
582 template <
class DP,
class V,
class SV>
friend void _vmvaccu(DP &dp,
const V & rv1,
const SV &rv2)
583 #if(CXSC_INDEX_CHECK) 584 throw(OP_WITH_WRONG_DIM);
589 template <
class V,
class MV2,
class S>
friend V &_vmvassign(V &v,
const MV2 &rv)
throw();
590 template <
class M,
class V,
class E>
friend E _mvcimult(
const M &m,
const V &v)
591 #if(CXSC_INDEX_CHECK) 592 throw(ERROR__OP_WITH_WRONG_DIM<M>);
596 template <
class V,
class M,
class E>
friend E _vmcimult(
const V &v,
const M &m)
597 #if(CXSC_INDEX_CHECK) 598 throw(ERROR__OP_WITH_WRONG_DIM<M>);
602 template <
class V,
class M,
class S>
friend V &_vmimultassign(V &v,
const M &m)
603 #if(CXSC_INDEX_CHECK) 604 throw(ERROR__OP_WITH_WRONG_DIM<M>);
608 template <
class V,
class M,
class S>
friend V &_vmcimultassign(V &v,
const M &m)
609 #if(CXSC_INDEX_CHECK) 610 throw(ERROR__OP_WITH_WRONG_DIM<M>);
614 template <
class MS,
class V,
class E>
friend E _msvcimult(
const MS &ms,
const V &v)
615 #if(CXSC_INDEX_CHECK) 616 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
620 template <
class V,
class MS,
class E>
friend E _vmscimult(
const V &v,
const MS &ms)
621 #if(CXSC_INDEX_CHECK) 622 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
626 template <
class V,
class MS,
class S>
friend V &_vmscimultassign(V &v,
const MS &ms)
627 #if(CXSC_INDEX_CHECK) 628 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
634 template <
class DP,
class VS1,
class VS2>
friend void _vsvsaccu(DP &dp,
const VS1 & sl1,
const VS2 &sl2)
635 #if(CXSC_INDEX_CHECK) 636 throw(OP_WITH_WRONG_DIM);
680 explicit INLINE
civector(
const int &i)
throw();
682 explicit INLINE
civector(
const class index &i)
throw();
685 explicit INLINE
civector(
const int &i1,
const int &i2)
687 #if(CXSC_INDEX_CHECK) 688 throw(ERROR_CIVECTOR_WRONG_BOUNDARIES,ERROR_CIVECTOR_NO_MORE_MEMORY);
699 #if(CXSC_INDEX_CHECK) 700 throw(ERROR_CIMATRIX_TYPE_CAST_OF_THICK_OBJ);
706 #if(CXSC_INDEX_CHECK) 707 throw(ERROR_CIMATRIX_TYPE_CAST_OF_THICK_OBJ);
732 #if(CXSC_INDEX_CHECK) 733 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ);
739 #if(CXSC_INDEX_CHECK) 740 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ);
760 #if(CXSC_INDEX_CHECK) 761 throw(ERROR_CMATRIX_TYPE_CAST_OF_THICK_OBJ);
767 #if(CXSC_INDEX_CHECK) 768 throw(ERROR_CMATRIX_TYPE_CAST_OF_THICK_OBJ);
788 #if(CXSC_INDEX_CHECK) 789 throw(ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ);
795 #if(CXSC_INDEX_CHECK) 796 throw(ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ);
816 #if(CXSC_INDEX_CHECK) 817 throw(ERROR_CIMATRIX_TYPE_CAST_OF_THICK_OBJ);
823 #if(CXSC_INDEX_CHECK) 824 throw(ERROR_CIMATRIX_TYPE_CAST_OF_THICK_OBJ);
843 #if(CXSC_INDEX_CHECK) 844 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ);
850 #if(CXSC_INDEX_CHECK) 851 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ);
871 #if(CXSC_INDEX_CHECK) 872 throw(ERROR_CMATRIX_TYPE_CAST_OF_THICK_OBJ);
878 #if(CXSC_INDEX_CHECK) 879 throw(ERROR_CMATRIX_TYPE_CAST_OF_THICK_OBJ);
899 #if(CXSC_INDEX_CHECK) 900 throw(ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ);
906 #if(CXSC_INDEX_CHECK) 907 throw(ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ);
950 INLINE ~
civector() {
delete [] dat; }
955 #if(CXSC_INDEX_CHECK) 956 throw(ERROR_CIVECTOR_TYPE_CAST_OF_THICK_OBJ,ERROR_CIVECTOR_USE_OF_UNINITIALIZED_OBJ);
960 friend INLINE
int Lb(
const civector &rv)
throw() {
return rv.l; }
963 friend INLINE
int Ub(
const civector &rv)
throw() {
return rv.u; }
972 #if(CXSC_INDEX_CHECK) 973 throw(ERROR_CIVECTOR_ELEMENT_NOT_IN_VEC);
980 #if(CXSC_INDEX_CHECK) 981 throw(ERROR_CIVECTOR_ELEMENT_NOT_IN_VEC);
990 #if(CXSC_INDEX_CHECK) 991 throw(ERROR_CIVECTOR_SUB_ARRAY_TOO_BIG);
997 #if(CXSC_INDEX_CHECK) 998 throw(ERROR_CIVECTOR_SUB_ARRAY_TOO_BIG);
1003 INLINE
operator void*()
throw();
1025 #ifdef _CXSC_FRIEND_TPL 1029 template <
class VS1,
class VS2>
friend VS1 & _vsvsassign(VS1 &sl1,
const VS2 &sl2)
1030 #if(CXSC_INDEX_CHECK) 1031 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1035 template <
class V,
class VS,
class S>
friend V & _vvsassign(V &rv,
const VS &sl)
throw();
1036 template <
class VS,
class V>
friend VS & _vsvassign(VS &sl,
const V &rv)
1037 #if(CXSC_INDEX_CHECK) 1038 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1042 template <
class VS,
class S>
friend VS & _vssassign(VS &sl,
const S &r)
throw();
1043 template <
class VS,
class V>
friend VS &_vsvsetinf(VS &sl,
const V &rv)
1044 #if(CXSC_INDEX_CHECK) 1045 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1049 template <
class VS,
class V>
friend VS &_vsvsetsup(VS &sl,
const V &rv)
1050 #if(CXSC_INDEX_CHECK) 1051 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1055 template <
class VS1,
class VS2>
friend VS1 &_vsvssetinf(VS1 &sl1,
const VS2 &sl2)
1056 #if(CXSC_INDEX_CHECK) 1057 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1061 template <
class VS1,
class VS2>
friend VS1 &_vsvssetsup(VS1 &sl1,
const VS2 &sl2)
1062 #if(CXSC_INDEX_CHECK) 1063 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1067 template <
class VS,
class V>
friend VS &_vsvusetinf(VS &sl,
const V &rv)
1068 #if(CXSC_INDEX_CHECK) 1069 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1073 template <
class VS,
class V>
friend VS &_vsvusetsup(VS &sl,
const V &rv)
1074 #if(CXSC_INDEX_CHECK) 1075 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1079 template <
class VS1,
class VS2>
friend VS1 &_vsvsusetinf(VS1 &sl1,
const VS2 &sl2)
1080 #if(CXSC_INDEX_CHECK) 1081 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1085 template <
class VS1,
class VS2>
friend VS1 &_vsvsusetsup(VS1 &sl1,
const VS2 &sl2)
1086 #if(CXSC_INDEX_CHECK) 1087 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1092 template <
class VS,
class E>
friend E _vsconj(
const VS &sl)
throw();
1093 template <
class VS,
class E>
friend E _vsabs(
const VS &sl)
throw();
1094 template <
class VS,
class E>
friend E _vsdiam(
const VS &sl)
throw();
1095 template <
class VS,
class E>
friend E _vsmid(
const VS &sl)
throw();
1096 template <
class VS,
class E>
friend E _vsinf(
const VS &sl)
throw();
1097 template <
class VS,
class E>
friend E _vssup(
const VS &sl)
throw();
1098 template <
class VS,
class E>
friend E _vsim(
const VS &sl)
throw();
1099 template <
class VS,
class E>
friend E _vsre(
const VS &sl)
throw();
1108 template <
class VS,
class V>
friend VS &_vsvsetim(VS &sl,
const V &rv)
1109 #if(CXSC_INDEX_CHECK) 1110 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1114 template <
class VS,
class V>
friend VS &_vsvsetre(VS &sl,
const V &rv)
1115 #if(CXSC_INDEX_CHECK) 1116 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1120 template <
class VS1,
class VS2>
friend VS1 &_vsvssetim(VS1 &sl1,
const VS2 &sl2)
1121 #if(CXSC_INDEX_CHECK) 1122 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1126 template <
class VS1,
class VS2>
friend VS1 &_vsvssetre(VS1 &sl1,
const VS2 &sl2)
1127 #if(CXSC_INDEX_CHECK) 1128 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1144 template <
class VS,
class S>
friend VS &_vsssetinf(VS &vs,
const S &s)
throw();
1145 template <
class VS,
class S>
friend VS &_vsssetsup(VS &vs,
const S &s)
throw();
1146 template <
class VS,
class S>
friend VS &_vssusetinf(VS &vs,
const S &s)
throw();
1147 template <
class VS,
class S>
friend VS &_vssusetsup(VS &vs,
const S &s)
throw();
1148 template <
class VS,
class S>
friend VS &_vsssetim(VS &vs,
const S &s)
throw();
1149 template <
class VS,
class S>
friend VS &_vsssetre(VS &vs,
const S &s)
throw();
1151 template <
class DP,
class VS,
class V>
friend void _vsvaccu(DP &dp,
const VS & sl,
const V &rv)
1152 #if(CXSC_INDEX_CHECK) 1153 throw(OP_WITH_WRONG_DIM);
1157 template <
class DP,
class VS1,
class VS2>
friend void _vsvsaccu(DP &dp,
const VS1 & sl1,
const VS2 &sl2)
1158 #if(CXSC_INDEX_CHECK) 1159 throw(OP_WITH_WRONG_DIM);
1164 template <
class VS,
class S,
class E>
friend E _vssdiv(
const VS &sl,
const S &s)
throw();
1165 template <
class VS,
class S,
class E>
friend E _vssmult(
const VS &sl,
const S &s)
throw();
1167 template <
class VS,
class V,
class E>
friend E _vsvcimult(
const VS & sl,
const V &rv)
1168 #if(CXSC_INDEX_CHECK) 1169 throw(ERROR__OP_WITH_WRONG_DIM<V>);
1173 template <
class VS,
class S>
friend VS &_vssmultassign(VS &rv,
const S &r)
throw();
1174 template <
class VS,
class S>
friend VS &_vssdivassign(VS &rv,
const S &r)
throw();
1175 template <
class V,
class VS,
class E>
friend E _vvsplus(
const V &rv,
const VS &sl)
1176 #if(CXSC_INDEX_CHECK) 1177 throw(ERROR__OP_WITH_WRONG_DIM<V>);
1181 template <
class VS1,
class VS2,
class E>
friend E _vsvsplus(
const VS1 &s1,
const VS2 &s2)
1182 #if(CXSC_INDEX_CHECK) 1183 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1187 template <
class VS1,
class VS2,
class E>
friend E _vsvsminus(
const VS1 &s1,
const VS2 &s2)
1188 #if(CXSC_INDEX_CHECK) 1189 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1193 template <
class V,
class VS>
friend V &_vvsplusassign(V &rv,
const VS &sl)
1194 #if(CXSC_INDEX_CHECK) 1195 throw(ERROR__OP_WITH_WRONG_DIM<V>);
1199 template <
class VS,
class V>
friend VS &_vsvplusassign(VS &sl,
const V &rv)
1200 #if(CXSC_INDEX_CHECK) 1201 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1205 template <
class VS1,
class VS2>
friend VS1 &_vsvsplusassign(VS1 &sl1,
const VS2 &sl2)
1206 #if(CXSC_INDEX_CHECK) 1207 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1211 template <
class VS1,
class VS2>
friend VS1 &_vsvsminusassign(VS1 &sl1,
const VS2 &sl2)
1212 #if(CXSC_INDEX_CHECK) 1213 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1217 template <
class V,
class VS>
friend V &_vvsminusassign(V &rv,
const VS &sl)
1218 #if(CXSC_INDEX_CHECK) 1219 throw(ERROR__OP_WITH_WRONG_DIM<V>);
1223 template <
class VS,
class V>
friend VS &_vsvminusassign(VS &sl,
const V &rv)
1224 #if(CXSC_INDEX_CHECK) 1225 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1229 template <
class VS,
class V>
friend V _vsminus(
const VS &sl)
throw();
1230 template <
class V,
class VS,
class E>
friend E _vvsminus(
const V &rv,
const VS &sl)
1231 #if(CXSC_INDEX_CHECK) 1232 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1236 template <
class VS,
class V,
class E>
friend E _vsvminus(
const VS &sl,
const V &rv)
1237 #if(CXSC_INDEX_CHECK) 1238 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1242 template <
class V,
class VS,
class E>
friend E _vvssect(
const V &rv,
const VS &sl)
1243 #if(CXSC_INDEX_CHECK) 1244 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1248 template <
class VS1,
class VS2,
class E>
friend E _vsvssect(
const VS1 &s1,
const VS2 &s2)
1249 #if(CXSC_INDEX_CHECK) 1250 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1254 template <
class V,
class VS>
friend V &_vvssectassign(V &rv,
const VS &sl)
1255 #if(CXSC_INDEX_CHECK) 1256 throw(ERROR__OP_WITH_WRONG_DIM<V>);
1260 template <
class VS,
class V>
friend VS &_vsvsectassign(VS &sl,
const V &rv)
1261 #if(CXSC_INDEX_CHECK) 1262 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1266 template <
class VS1,
class VS2>
friend VS1 &_vsvssectassign(VS1 &sl1,
const VS2 &sl2)
1267 #if(CXSC_INDEX_CHECK) 1268 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1272 template <
class V,
class VS,
class E>
friend E _vvsconv(
const V &rv,
const VS &sl)
1273 #if(CXSC_INDEX_CHECK) 1274 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1278 template <
class VS1,
class VS2,
class E>
friend E _vsvsconv(
const VS1 &s1,
const VS2 &s2)
1279 #if(CXSC_INDEX_CHECK) 1280 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1284 template <
class V,
class VS>
friend V &_vvsconvassign(V &rv,
const VS &sl)
1285 #if(CXSC_INDEX_CHECK) 1286 throw(ERROR__OP_WITH_WRONG_DIM<V>);
1290 template <
class VS,
class V>
friend VS &_vsvconvassign(VS &sl,
const V &rv)
1291 #if(CXSC_INDEX_CHECK) 1292 throw(ERROR__OP_WITH_WRONG_DIM<VS>);
1296 template <
class VS1,
class VS2>
friend VS1 &_vsvsconvassign(VS1 &sl1,
const VS2 &sl2)
1297 #if(CXSC_INDEX_CHECK) 1298 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1302 template <
class VS,
class M,
class S>
friend VS &_vsmcimultassign(VS &v,
const M &m)
1303 #if(CXSC_INDEX_CHECK) 1304 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1309 template <
class VS,
class V>
friend bool _vsveq(
const VS &sl,
const V &rv)
throw();
1310 template <
class VS,
class V>
friend bool _vsvneq(
const VS &sl,
const V &rv)
throw();
1311 template <
class VS,
class V>
friend bool _vsvless(
const VS &sl,
const V &rv)
throw();
1312 template <
class VS,
class V>
friend bool _vsvleq(
const VS &sl,
const V &rv)
throw();
1313 template <
class V,
class VS>
friend bool _vvsless(
const V &rv,
const VS &sl)
throw();
1314 template <
class V,
class VS>
friend bool _vvsleq(
const V &rv,
const VS &sl)
throw();
1315 template <
class VS1,
class VS2,
class E>
friend E _vsvscimult(
const VS1 & sl1,
const VS2 &sl2)
1316 #if(CXSC_INDEX_CHECK) 1317 throw(ERROR__OP_WITH_WRONG_DIM<VS1>);
1321 template <
class VS1,
class VS2>
friend bool _vsvseq(
const VS1 &sl1,
const VS2 &sl2)
throw();
1322 template <
class VS1,
class VS2>
friend bool _vsvsneq(
const VS1 &sl1,
const VS2 &sl2)
throw();
1323 template <
class VS1,
class VS2>
friend bool _vsvsless(
const VS1 &sl1,
const VS2 &sl2)
throw();
1324 template <
class VS1,
class VS2>
friend bool _vsvsleq(
const VS1 &sl1,
const VS2 &sl2)
throw();
1325 template <
class VS>
friend bool _vsnot(
const VS &sl)
throw();
1326 template <
class VS>
friend void *_vsvoid(
const VS &sl)
throw();
1327 template <
class V>
friend std::ostream &_vsout(std::ostream &s,
const V &rv)
throw();
1328 template <
class V>
friend std::istream &_vsin(std::istream &s, V &rv)
throw();
1331 template <
class V,
class MS,
class E>
friend E _vmscimult(
const V &v,
const MS &ms)
1332 #if(CXSC_INDEX_CHECK) 1333 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1338 template <
class DP,
class V1,
class V2>
friend void _vvaccu(DP &dp,
const V1 & rv1,
const V2 &rv2)
1339 #if(CXSC_INDEX_CHECK) 1340 throw(OP_WITH_WRONG_DIM);
1347 template <
class V1,
class V2,
class S>
friend V1 &_vvassign(V1 &rv1,
const V2 &rv2)
throw();
1348 template <
class V,
class S>
friend V & _vsassign(V &rv,
const S &r)
throw();
1350 template <
class V,
class M,
class S>
friend V &_vmassign(V &v,
const M &m)
1351 #if(CXSC_INDEX_CHECK) 1352 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>);
1356 template <
class M,
class V,
class S>
friend M &_mvassign(M &m,
const V &v)
throw();
1357 template <
class V,
class MV2,
class S>
friend V &_vmvassign(V &v,
const MV2 &rv)
throw();
1359 template <
class V1,
class V2,
class E>
friend E _vvconv(
const V1 &rv1,
const V2 &rv2)
1360 #if(CXSC_INDEX_CHECK) 1361 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1367 template <
class MV,
class S,
class E>
friend E _mvsmult(
const MV &rv,
const S &s)
throw();
1368 template <
class V,
class S,
class E>
friend E _vsmult(
const V &rv,
const S &s)
throw();
1369 template <
class V,
class S,
class E>
friend E _vsdiv(
const V &rv,
const S &s)
throw();
1370 template <
class V,
class S>
friend V &_vsdivassign(V &rv,
const S &r)
throw();
1371 template <
class V,
class S>
friend V &_vsmultassign(V &rv,
const S &r)
throw();
1373 template <
class V1,
class V2,
class E>
friend E _vvcimult(
const V1 & rv1,
const V2 &rv2)
1374 #if(CXSC_INDEX_CHECK) 1375 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
1379 template <
class V1,
class V2,
class E>
friend E _vvplus(
const V1 &rv1,
const V2 &rv2)
1380 #if(CXSC_INDEX_CHECK) 1381 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
1385 template <
class V1,
class V2>
friend V1 &_vvplusassign(V1 &rv1,
const V2 &rv2)
1386 #if(CXSC_INDEX_CHECK) 1387 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
1391 template <
class V1,
class V2>
friend V1 &_vvminusassign(V1 &rv1,
const V2 &rv2)
1392 #if(CXSC_INDEX_CHECK) 1393 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
1397 template <
class V1,
class V2,
class E>
friend E _vvminus(
const V1 &rv1,
const V2 &rv2)
1398 #if(CXSC_INDEX_CHECK) 1399 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1403 template <
class V1,
class V2>
friend V1 &_vvconvassign(V1 &rv1,
const V2 &rv2)
1404 #if(CXSC_INDEX_CHECK) 1405 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
1409 template <
class V1,
class V2,
class E>
friend E _vvsect(
const V1 &rv1,
const V2 &rv2)
1410 #if(CXSC_INDEX_CHECK) 1411 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
1415 template <
class V1,
class V2>
friend V1 &_vvsectassign(V1 &rv1,
const V2 &rv2)
1416 #if(CXSC_INDEX_CHECK) 1417 throw(ERROR__OP_WITH_WRONG_DIM<V1>);
1423 template <
class V,
class MS,
class S>
friend void _vmsconstr(V &v,
const MS &m)
1424 #if(CXSC_INDEX_CHECK) 1425 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<MS>);
1429 template <
class V,
class M,
class S>
friend void _vmconstr(V &v,
const M &m)
1430 #if(CXSC_INDEX_CHECK) 1431 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>);
1435 template <
class M,
class V,
class E>
friend E _mvcimult(
const M &m,
const V &v)
1436 #if(CXSC_INDEX_CHECK) 1437 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1441 template <
class MS,
class V,
class E>
friend E _msvcimult(
const MS &ms,
const V &v)
1442 #if(CXSC_INDEX_CHECK) 1443 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1447 template <
class V,
class M,
class E>
friend E _vmcimult(
const V &v,
const M &m)
1448 #if(CXSC_INDEX_CHECK) 1449 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1453 template <
class V,
class MS,
class S>
friend V &_vmscimultassign(V &v,
const MS &ms)
1454 #if(CXSC_INDEX_CHECK) 1455 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1459 template <
class V,
class M,
class S>
friend V &_vmcimultassign(V &v,
const M &m)
1460 #if(CXSC_INDEX_CHECK) 1461 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1513 explicit INLINE
civector_slice(
civector &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) { }
1528 #if(CXSC_INDEX_CHECK) 1529 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1535 #if(CXSC_INDEX_CHECK) 1536 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1544 #if(CXSC_INDEX_CHECK) 1545 throw(ERROR__OP_WITH_WRONG_DIM<civector>,ERROR_CIMATRIX_TYPE_CAST_OF_THICK_OBJ);
1551 #if(CXSC_INDEX_CHECK) 1552 throw(ERROR__OP_WITH_WRONG_DIM<civector>,ERROR_CIMATRIX_TYPE_CAST_OF_THICK_OBJ);
1566 #if(CXSC_INDEX_CHECK) 1567 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1573 #if(CXSC_INDEX_CHECK) 1574 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1582 #if(CXSC_INDEX_CHECK) 1583 throw(ERROR__OP_WITH_WRONG_DIM<rvector>,ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ);
1589 #if(CXSC_INDEX_CHECK) 1590 throw(ERROR__OP_WITH_WRONG_DIM<rvector>,ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ);
1605 #if(CXSC_INDEX_CHECK) 1606 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1612 #if(CXSC_INDEX_CHECK) 1613 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1621 #if(CXSC_INDEX_CHECK) 1622 throw(ERROR__OP_WITH_WRONG_DIM<cvector>,ERROR_CMATRIX_TYPE_CAST_OF_THICK_OBJ);
1628 #if(CXSC_INDEX_CHECK) 1629 throw(ERROR__OP_WITH_WRONG_DIM<cvector>,ERROR_CMATRIX_TYPE_CAST_OF_THICK_OBJ);
1644 #if(CXSC_INDEX_CHECK) 1645 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1651 #if(CXSC_INDEX_CHECK) 1652 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1660 #if(CXSC_INDEX_CHECK) 1661 throw(ERROR__OP_WITH_WRONG_DIM<ivector>,ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ);
1667 #if(CXSC_INDEX_CHECK) 1668 throw(ERROR__OP_WITH_WRONG_DIM<ivector>,ERROR_IMATRIX_TYPE_CAST_OF_THICK_OBJ);
1678 #if(CXSC_INDEX_CHECK) 1679 throw(ERROR_CIVECTOR_TYPE_CAST_OF_THICK_OBJ,ERROR_CIVECTOR_USE_OF_UNINITIALIZED_OBJ);
1683 friend INLINE
int Lb(
const civector_slice &sl)
throw() {
return sl.start; }
1692 #if(CXSC_INDEX_CHECK) 1693 throw(ERROR_CIVECTOR_ELEMENT_NOT_IN_VEC);
1700 #if(CXSC_INDEX_CHECK) 1701 throw(ERROR_CIVECTOR_ELEMENT_NOT_IN_VEC);
1710 #if(CXSC_INDEX_CHECK) 1711 throw(ERROR_CIVECTOR_SUB_ARRAY_TOO_BIG);
1717 #if(CXSC_INDEX_CHECK) 1718 throw(ERROR_CIVECTOR_SUB_ARRAY_TOO_BIG);
1722 INLINE
operator void*()
throw();
1730 #if(CXSC_INDEX_CHECK) 1731 throw(ERROR_CIMATRIX_OP_WITH_WRONG_DIM);
1737 #if(CXSC_INDEX_CHECK) 1738 throw(ERROR_CIMATRIX_OP_WITH_WRONG_DIM);
1744 #if(CXSC_INDEX_CHECK) 1745 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1751 #if(CXSC_INDEX_CHECK) 1752 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1758 #if(CXSC_INDEX_CHECK) 1759 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1765 #if(CXSC_INDEX_CHECK) 1766 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1772 #if(CXSC_INDEX_CHECK) 1773 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1779 #if(CXSC_INDEX_CHECK) 1780 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1786 #if(CXSC_INDEX_CHECK) 1787 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1793 #if(CXSC_INDEX_CHECK) 1794 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1805 #if(CXSC_INDEX_CHECK) 1806 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1812 #if(CXSC_INDEX_CHECK) 1813 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1819 #if(CXSC_INDEX_CHECK) 1820 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1826 #if(CXSC_INDEX_CHECK) 1827 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1833 #if(CXSC_INDEX_CHECK) 1834 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1840 #if(CXSC_INDEX_CHECK) 1841 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1847 #if(CXSC_INDEX_CHECK) 1848 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1854 #if(CXSC_INDEX_CHECK) 1855 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1861 #if(CXSC_INDEX_CHECK) 1862 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM);
1868 #if(CXSC_INDEX_CHECK) 1869 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM);
1880 #if(CXSC_INDEX_CHECK) 1881 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1887 #if(CXSC_INDEX_CHECK) 1888 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1894 #if(CXSC_INDEX_CHECK) 1895 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1901 #if(CXSC_INDEX_CHECK) 1902 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1908 #if(CXSC_INDEX_CHECK) 1909 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1915 #if(CXSC_INDEX_CHECK) 1916 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1922 #if(CXSC_INDEX_CHECK) 1923 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1929 #if(CXSC_INDEX_CHECK) 1930 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1936 #if(CXSC_INDEX_CHECK) 1937 throw(ERROR_CMATRIX_OP_WITH_WRONG_DIM);
1943 #if(CXSC_INDEX_CHECK) 1944 throw(ERROR_CMATRIX_OP_WITH_WRONG_DIM);
1955 #if(CXSC_INDEX_CHECK) 1956 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1962 #if(CXSC_INDEX_CHECK) 1963 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1969 #if(CXSC_INDEX_CHECK) 1970 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1976 #if(CXSC_INDEX_CHECK) 1977 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1983 #if(CXSC_INDEX_CHECK) 1984 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1990 #if(CXSC_INDEX_CHECK) 1991 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
1997 #if(CXSC_INDEX_CHECK) 1998 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2004 #if(CXSC_INDEX_CHECK) 2005 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2011 #if(CXSC_INDEX_CHECK) 2012 throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
2018 #if(CXSC_INDEX_CHECK) 2019 throw(ERROR_IMATRIX_OP_WITH_WRONG_DIM);
2061 INLINE civector _civector(
const cinterval &r)
throw();
2065 INLINE civector _civector(
const real &r)
throw();
2067 INLINE civector _civector(
const rvector_slice &rs)
throw();
2069 INLINE civector _civector(
const rvector &rs)
throw();
2073 INLINE civector _civector(
const rmatrix_subv &rs)
throw();
2076 INLINE civector &SetInf(civector &iv,
const cvector &rv)
2077 #if(CXSC_INDEX_CHECK) 2078 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2082 INLINE civector_slice &SetInf(civector_slice &iv,
const cvector &rv)
2084 #if(CXSC_INDEX_CHECK) 2085 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2089 INLINE civector &SetInf(civector &iv,
const cvector_slice &rv)
2091 #if(CXSC_INDEX_CHECK) 2092 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2096 INLINE civector_slice &SetInf(civector_slice &iv,
const cvector_slice &rv)
2098 #if(CXSC_INDEX_CHECK) 2099 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2103 INLINE civector &UncheckedSetInf(civector &iv,
const cvector &rv)
2105 #if(CXSC_INDEX_CHECK) 2106 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2110 INLINE civector_slice &UncheckedSetInf(civector_slice &iv,
const cvector &rv)
2112 #if(CXSC_INDEX_CHECK) 2113 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2117 INLINE civector &UncheckedSetInf(civector &iv,
const cvector_slice &rv)
2119 #if(CXSC_INDEX_CHECK) 2120 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2124 INLINE civector_slice &UncheckedSetInf(civector_slice &iv,
const cvector_slice &rv)
2126 #if(CXSC_INDEX_CHECK) 2127 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2133 INLINE civector &SetSup(civector &iv,
const cvector &rv)
2134 #if(CXSC_INDEX_CHECK) 2135 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2139 INLINE civector_slice &SetSup(civector_slice &iv,
const cvector &rv)
2141 #if(CXSC_INDEX_CHECK) 2142 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2146 INLINE civector &SetSup(civector &iv,
const cvector_slice &rv)
2148 #if(CXSC_INDEX_CHECK) 2149 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2153 INLINE civector_slice &SetSup(civector_slice &iv,
const cvector_slice &rv)
2155 #if(CXSC_INDEX_CHECK) 2156 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2160 INLINE civector &UncheckedSetSup(civector &iv,
const cvector &rv)
2162 #if(CXSC_INDEX_CHECK) 2163 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2167 INLINE civector_slice &UncheckedSetSup(civector_slice &iv,
const cvector &rv)
2169 #if(CXSC_INDEX_CHECK) 2170 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2174 INLINE civector &UncheckedSetSup(civector &iv,
const cvector_slice &rv)
2176 #if(CXSC_INDEX_CHECK) 2177 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2181 INLINE civector_slice &UncheckedSetSup(civector_slice &iv,
const cvector_slice &rv)
2183 #if(CXSC_INDEX_CHECK) 2184 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2190 INLINE civector &SetRe(civector &iv,
const ivector &rv)
2191 #if(CXSC_INDEX_CHECK) 2192 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2196 INLINE civector_slice &SetRe(civector_slice &iv,
const ivector &rv)
2198 #if(CXSC_INDEX_CHECK) 2199 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2203 INLINE civector &SetRe(civector &iv,
const ivector_slice &rv)
2205 #if(CXSC_INDEX_CHECK) 2206 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2210 INLINE civector_slice &SetRe(civector_slice &iv,
const ivector_slice &rv)
2212 #if(CXSC_INDEX_CHECK) 2213 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2219 INLINE civector &SetIm(civector &iv,
const ivector &rv)
2220 #if(CXSC_INDEX_CHECK) 2221 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2225 INLINE civector_slice &SetIm(civector_slice &iv,
const ivector &rv)
2227 #if(CXSC_INDEX_CHECK) 2228 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2232 INLINE civector &SetIm(civector &iv,
const ivector_slice &rv)
2234 #if(CXSC_INDEX_CHECK) 2235 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2239 INLINE civector_slice &SetIm(civector_slice &iv,
const ivector_slice &rv)
2241 #if(CXSC_INDEX_CHECK) 2242 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2248 INLINE civector &SetSup(civector &iv,
const complex &r)
throw();
2250 INLINE civector &SetInf(civector &iv,
const complex &r)
throw();
2252 INLINE civector &UncheckedSetSup(civector &iv,
const complex &r)
throw();
2254 INLINE civector &
SetUncheckedInf(civector &iv,
const complex &r)
throw();
2256 INLINE civector &SetRe(civector &iv,
const interval &r)
throw();
2258 INLINE civector &SetIm(civector &iv,
const interval &r)
throw();
2261 INLINE civector_slice &SetSup(civector_slice &iv,
const complex &r)
throw();
2263 INLINE civector_slice &SetInf(civector_slice &iv,
const complex &r)
throw();
2265 INLINE civector_slice &UncheckedSetSup(civector_slice &iv,
const complex &r)
throw();
2267 INLINE civector_slice &
SetUncheckedInf(civector_slice &iv,
const complex &r)
throw();
2269 INLINE civector_slice &SetRe(civector_slice &iv,
const interval &r)
throw();
2271 INLINE civector_slice &SetIm(civector_slice &iv,
const interval &r)
throw();
2274 INLINE
void Resize(civector &rv)
throw();
2276 INLINE
void Resize(civector &rv,
const int &len)
2277 #if(CXSC_INDEX_CHECK) 2278 throw(ERROR__WRONG_BOUNDARIES<civector>);
2282 INLINE
void Resize(civector &rv,
const int &lb,
const int &ub)
2284 #if(CXSC_INDEX_CHECK) 2285 throw(ERROR__WRONG_BOUNDARIES<civector>);
2291 INLINE civector conj(
const civector &rv)
throw();
2293 INLINE civector conj(
const civector_slice &sl)
throw();
2296 INLINE ivector
abs(
const civector &rv)
throw();
2298 INLINE ivector
abs(
const civector_slice &sl)
throw();
2300 INLINE cvector
diam(
const civector &v)
throw();
2302 INLINE cvector
diam(
const civector_slice &v)
throw();
2304 INLINE cvector
mid(
const civector &v)
throw();
2306 INLINE cvector
mid(
const civector_slice &v)
throw();
2308 INLINE cvector Inf(
const civector &v)
throw();
2310 INLINE cvector Inf(
const civector_slice &v)
throw();
2312 INLINE cvector Sup(
const civector &v)
throw();
2314 INLINE cvector Sup(
const civector_slice &v)
throw();
2316 INLINE rvector SupRe(
const civector &v)
throw();
2318 INLINE rvector SupIm(
const civector &v)
throw();
2320 INLINE rvector InfRe(
const civector &v)
throw();
2322 INLINE rvector InfIm(
const civector &v)
throw();
2324 INLINE rvector SupRe(
const civector_slice &v)
throw();
2326 INLINE rvector SupIm(
const civector_slice &v)
throw();
2328 INLINE rvector InfRe(
const civector_slice &v)
throw();
2330 INLINE rvector InfIm(
const civector_slice &v)
throw();
2332 INLINE
bool operator !(
const civector &rv)
throw();
2334 INLINE
bool operator !(
const civector_slice &sl)
throw();
2341 INLINE civector
operator *(
const civector &rv,
const cinterval &s)
throw();
2343 INLINE civector
operator *(
const civector_slice &sl,
const cinterval &s)
throw();
2345 INLINE civector
operator *(
const cinterval &s,
const civector &rv)
throw();
2347 INLINE civector
operator *(
const cinterval &s,
const civector_slice &sl)
throw();
2349 INLINE civector &
operator *=(civector &rv,
const cinterval &r)
throw();
2352 INLINE civector
operator /(
const civector &rv,
const cinterval &s)
throw();
2354 INLINE civector
operator /(
const civector_slice &sl,
const cinterval &s)
throw();
2356 INLINE civector &
operator /=(civector &rv,
const cinterval &r)
throw();
2361 INLINE civector
operator *(
const civector &rv,
const real &s)
throw();
2363 INLINE civector
operator *(
const civector_slice &sl,
const real &s)
throw();
2365 INLINE civector
operator *(
const real &s,
const civector &rv)
throw();
2367 INLINE civector
operator *(
const real &s,
const civector_slice &sl)
throw();
2369 INLINE civector &
operator *=(civector &rv,
const real &r)
throw();
2372 INLINE civector
operator /(
const civector &rv,
const real &s)
throw();
2374 INLINE civector
operator /(
const civector_slice &sl,
const real &s)
throw();
2376 INLINE civector &
operator /=(civector &rv,
const real &r)
throw();
2379 INLINE civector
operator *(
const rvector &rv,
const cinterval &s)
throw();
2381 INLINE civector
operator *(
const rvector_slice &sl,
const cinterval &s)
throw();
2383 INLINE civector
operator *(
const cinterval &s,
const rvector &rv)
throw();
2385 INLINE civector
operator *(
const cinterval &s,
const rvector_slice &sl)
throw();
2388 INLINE civector
operator /(
const rvector &rv,
const cinterval &s)
throw();
2390 INLINE civector
operator /(
const rvector_slice &sl,
const cinterval &s)
throw();
2395 INLINE civector
operator *(
const civector &rv,
const complex &s)
throw();
2397 INLINE civector
operator *(
const civector_slice &sl,
const complex &s)
throw();
2399 INLINE civector
operator *(
const complex &s,
const civector &rv)
throw();
2401 INLINE civector
operator *(
const complex &s,
const civector_slice &sl)
throw();
2403 INLINE civector &
operator *=(civector &rv,
const complex &r)
throw();
2406 INLINE civector
operator /(
const civector &rv,
const complex &s)
throw();
2408 INLINE civector
operator /(
const civector_slice &sl,
const complex &s)
throw();
2410 INLINE civector &
operator /=(civector &rv,
const complex &r)
throw();
2413 INLINE civector
operator *(
const cvector &rv,
const cinterval &s)
throw();
2415 INLINE civector
operator *(
const cvector_slice &sl,
const cinterval &s)
throw();
2417 INLINE civector
operator *(
const cinterval &s,
const cvector &rv)
throw();
2419 INLINE civector
operator *(
const cinterval &s,
const cvector_slice &sl)
throw();
2422 INLINE civector
operator /(
const cvector &rv,
const cinterval &s)
throw();
2424 INLINE civector
operator /(
const cvector_slice &sl,
const cinterval &s)
throw();
2429 INLINE civector
operator *(
const civector &rv,
const interval &s)
throw();
2431 INLINE civector
operator *(
const civector_slice &sl,
const interval &s)
throw();
2433 INLINE civector
operator *(
const interval &s,
const civector &rv)
throw();
2435 INLINE civector
operator *(
const interval &s,
const civector_slice &sl)
throw();
2437 INLINE civector &
operator *=(civector &rv,
const interval &r)
throw();
2440 INLINE civector
operator /(
const civector &rv,
const interval &s)
throw();
2442 INLINE civector
operator /(
const civector_slice &sl,
const interval &s)
throw();
2444 INLINE civector &
operator /=(civector &rv,
const interval &r)
throw();
2447 INLINE civector
operator *(
const ivector &rv,
const cinterval &s)
throw();
2449 INLINE civector
operator *(
const ivector_slice &sl,
const cinterval &s)
throw();
2451 INLINE civector
operator *(
const cinterval &s,
const ivector &rv)
throw();
2453 INLINE civector
operator *(
const cinterval &s,
const ivector_slice &sl)
throw();
2456 INLINE civector
operator /(
const ivector &rv,
const cinterval &s)
throw();
2458 INLINE civector
operator /(
const ivector_slice &sl,
const cinterval &s)
throw();
2464 INLINE std::ostream &operator <<(std::ostream &s,
const civector &rv)
throw();
2466 INLINE std::ostream &operator <<(std::ostream &o,
const civector_slice &sl)
throw();
2468 INLINE std::istream &operator >>(std::istream &s, civector &rv)
throw();
2470 INLINE std::istream &operator >>(std::istream &s, civector_slice &rv)
throw();
2475 void accumulate(cidotprecision &dp,
const cvector &);
2478 void accumulate(cidotprecision &dp,
const rvector &);
2481 void accumulate(cidotprecision &dp,
const civector &);
2484 void accumulate(cidotprecision &dp,
const ivector &);
2488 void accumulate(cidotprecision &dp,
const civector & rv1,
const civector &rv2)
2489 #if(CXSC_INDEX_CHECK) 2490 throw(OP_WITH_WRONG_DIM);
2494 void accumulate(cidotprecision &dp,
const civector_slice & sl,
const civector &rv)
2496 #if(CXSC_INDEX_CHECK) 2497 throw(OP_WITH_WRONG_DIM);
2501 void accumulate(cidotprecision &dp,
const civector &rv,
const civector_slice &sl)
2503 #if(CXSC_INDEX_CHECK) 2504 throw(OP_WITH_WRONG_DIM);
2508 void accumulate(cidotprecision &dp,
const civector & rv1,
const cimatrix_subv &rv2)
2510 #if(CXSC_INDEX_CHECK) 2511 throw(OP_WITH_WRONG_DIM);
2515 void accumulate(cidotprecision &dp,
const cimatrix_subv & rv1,
const civector &rv2)
2517 #if(CXSC_INDEX_CHECK) 2518 throw(OP_WITH_WRONG_DIM);
2522 void accumulate(cidotprecision &dp,
const civector_slice & sl1,
const civector_slice &sl2)
2524 #if(CXSC_INDEX_CHECK) 2525 throw(OP_WITH_WRONG_DIM);
2529 void accumulate(cidotprecision &dp,
const imatrix_subv & rv1,
const cvector &rv2)
2531 #if(CXSC_INDEX_CHECK) 2532 throw(OP_WITH_WRONG_DIM);
2536 void accumulate(cidotprecision &dp,
const cvector & rv1,
const imatrix_subv &rv2)
2538 #if(CXSC_INDEX_CHECK) 2539 throw(OP_WITH_WRONG_DIM);
2543 void accumulate(cidotprecision &dp,
const imatrix_subv & rv1,
const cvector_slice &rv2)
2545 #if(CXSC_INDEX_CHECK) 2546 throw(OP_WITH_WRONG_DIM);
2550 void accumulate(cidotprecision &dp,
const cvector_slice & rv1,
const imatrix_subv &rv2)
2552 #if(CXSC_INDEX_CHECK) 2553 throw(OP_WITH_WRONG_DIM);
2559 INLINE cinterval
operator *(
const civector & rv1,
const civector &rv2)
2560 #if(CXSC_INDEX_CHECK) 2561 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2565 INLINE cinterval
operator *(
const civector_slice &sl,
const civector &rv)
2567 #if(CXSC_INDEX_CHECK) 2568 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2572 INLINE cinterval
operator *(
const civector &rv,
const civector_slice &sl)
2574 #if(CXSC_INDEX_CHECK) 2575 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2579 INLINE cinterval
operator *(
const civector_slice & sl1,
const civector_slice &sl2)
2581 #if(CXSC_INDEX_CHECK) 2582 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2588 INLINE
const civector &operator +(
const civector &rv)
throw();
2590 INLINE civector operator +(
const civector_slice &sl)
throw();
2593 INLINE civector operator +(
const civector &rv1,
const civector &rv2)
2594 #if(CXSC_INDEX_CHECK) 2595 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2599 INLINE civector operator +(
const civector &rv,
const civector_slice &sl)
2601 #if(CXSC_INDEX_CHECK) 2602 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2606 INLINE civector operator +(
const civector_slice &sl,
const civector &rv)
2608 #if(CXSC_INDEX_CHECK) 2609 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2613 INLINE civector operator +(
const civector_slice &sl1,
const civector_slice &sl2)
2615 #if(CXSC_INDEX_CHECK) 2616 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2620 INLINE civector &
operator +=(civector &rv1,
const civector &rv2)
2622 #if(CXSC_INDEX_CHECK) 2623 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2627 INLINE civector &
operator +=(civector &rv,
const civector_slice &sl)
2629 #if(CXSC_INDEX_CHECK) 2630 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2636 INLINE civector operator -(
const civector &rv)
throw();
2638 INLINE civector operator -(
const civector_slice &sl)
throw();
2640 INLINE civector operator -(
const civector &rv1,
const civector &rv2)
2641 #if(CXSC_INDEX_CHECK) 2642 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2646 INLINE civector operator -(
const civector &rv,
const civector_slice &sl)
2648 #if(CXSC_INDEX_CHECK) 2649 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2653 INLINE civector operator -(
const civector_slice &sl,
const civector &rv)
2655 #if(CXSC_INDEX_CHECK) 2656 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2660 INLINE civector operator -(
const civector_slice &sl1,
const civector_slice &sl2)
2662 #if(CXSC_INDEX_CHECK) 2663 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2667 INLINE civector & operator -=(civector &rv1,
const civector &rv2)
2669 #if(CXSC_INDEX_CHECK) 2670 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2674 INLINE civector &operator -=(civector &rv,
const civector_slice &sl)
2676 #if(CXSC_INDEX_CHECK) 2677 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2683 INLINE civector operator |(
const civector &rv1,
const civector &rv2)
2684 #if(CXSC_INDEX_CHECK) 2685 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2689 INLINE civector operator |(
const civector &rv,
const civector_slice &sl)
2691 #if(CXSC_INDEX_CHECK) 2692 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2696 INLINE civector operator |(
const civector_slice &sl,
const civector &rv)
2698 #if(CXSC_INDEX_CHECK) 2699 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2703 INLINE civector operator |(
const civector_slice &sl1,
const civector_slice &sl2)
2705 #if(CXSC_INDEX_CHECK) 2706 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2710 INLINE civector & operator |=(civector &rv1,
const civector &rv2)
2712 #if(CXSC_INDEX_CHECK) 2713 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2717 INLINE civector &operator |=(civector &rv,
const civector_slice &sl)
2719 #if(CXSC_INDEX_CHECK) 2720 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2726 INLINE civector operator &(
const civector &rv1,
const civector &rv2)
2727 #if(CXSC_INDEX_CHECK) 2728 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2732 INLINE civector operator &(
const civector &rv,
const civector_slice &sl)
2734 #if(CXSC_INDEX_CHECK) 2735 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2739 INLINE civector operator &(
const civector_slice &sl,
const civector &rv)
2741 #if(CXSC_INDEX_CHECK) 2742 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2746 INLINE civector operator &(
const civector_slice &sl1,
const civector_slice &sl2)
2748 #if(CXSC_INDEX_CHECK) 2749 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2753 INLINE civector & operator &=(civector &rv1,
const civector &rv2)
2755 #if(CXSC_INDEX_CHECK) 2756 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2760 INLINE civector &operator &=(civector &rv,
const civector_slice &sl)
2762 #if(CXSC_INDEX_CHECK) 2763 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2769 INLINE
bool operator ==(
const civector &rv1,
const civector &rv2)
throw();
2771 INLINE
bool operator ==(
const civector_slice &sl1,
const civector_slice &sl2)
throw();
2773 INLINE
bool operator ==(
const civector_slice &sl,
const civector &rv)
throw();
2775 INLINE
bool operator ==(
const civector &rv,
const civector_slice &sl)
throw();
2777 INLINE
bool operator !=(
const civector &rv1,
const civector &rv2)
throw();
2779 INLINE
bool operator !=(
const civector_slice &sl1,
const civector_slice &sl2)
throw();
2781 INLINE
bool operator !=(
const civector_slice &sl,
const civector &rv)
throw();
2783 INLINE
bool operator !=(
const civector &rv,
const civector_slice &sl)
throw();
2785 INLINE
bool operator <(
const civector &rv1,
const civector &rv2)
throw();
2787 INLINE
bool operator <(
const civector_slice &sl1,
const civector_slice &sl2)
throw();
2789 INLINE
bool operator < (
const civector_slice &sl,
const civector &rv)
throw();
2791 INLINE
bool operator < (
const civector &rv,
const civector_slice &sl)
throw();
2793 INLINE
bool operator <=(
const civector &rv1,
const civector &rv2)
throw();
2795 INLINE
bool operator <=(
const civector_slice &sl1,
const civector_slice &sl2)
throw();
2797 INLINE
bool operator <=(
const civector_slice &sl,
const civector &rv)
throw();
2799 INLINE
bool operator <=(
const civector &rv,
const civector_slice &sl)
throw();
2801 INLINE
bool operator >(
const civector &rv1,
const civector &rv2)
throw();
2803 INLINE
bool operator >(
const civector_slice &sl1,
const civector_slice &sl2)
throw();
2805 INLINE
bool operator >(
const civector_slice &sl,
const civector &rv)
throw();
2807 INLINE
bool operator >(
const civector &rv,
const civector_slice &sl)
throw();
2809 INLINE
bool operator >=(
const civector &rv1,
const civector &rv2)
throw();
2811 INLINE
bool operator >=(
const civector_slice &sl1,
const civector_slice &sl2)
throw();
2813 INLINE
bool operator >=(
const civector_slice &sl,
const civector &rv)
throw();
2815 INLINE
bool operator >=(
const civector &rv,
const civector_slice &sl)
throw();
2820 void accumulate(cidotprecision &dp,
const rvector & rv1,
const civector &rv2)
2821 #if(CXSC_INDEX_CHECK) 2822 throw(OP_WITH_WRONG_DIM);
2826 void accumulate(cidotprecision &dp,
const civector & rv1,
const rvector &rv2)
2828 #if(CXSC_INDEX_CHECK) 2829 throw(OP_WITH_WRONG_DIM);
2833 void accumulate(cidotprecision &dp,
const rvector_slice & sl,
const civector &rv)
2835 #if(CXSC_INDEX_CHECK) 2836 throw(OP_WITH_WRONG_DIM);
2840 void accumulate(cidotprecision &dp,
const civector_slice &sl,
const rvector &rv)
2842 #if(CXSC_INDEX_CHECK) 2843 throw(OP_WITH_WRONG_DIM);
2847 void accumulate(cidotprecision &dp,
const rvector &rv,
const civector_slice &sl)
2849 #if(CXSC_INDEX_CHECK) 2850 throw(OP_WITH_WRONG_DIM);
2854 void accumulate(cidotprecision &dp,
const rvector & rv1,
const cimatrix_subv &rv2)
2856 #if(CXSC_INDEX_CHECK) 2857 throw(OP_WITH_WRONG_DIM);
2861 void accumulate(cidotprecision &dp,
const civector & rv1,
const rmatrix_subv &rv2)
2863 #if(CXSC_INDEX_CHECK) 2864 throw(OP_WITH_WRONG_DIM);
2868 void accumulate(cidotprecision &dp,
const civector &rv,
const rvector_slice &sl)
2870 #if(CXSC_INDEX_CHECK) 2871 throw(OP_WITH_WRONG_DIM);
2875 void accumulate(cidotprecision &dp,
const rmatrix_subv & rv1,
const civector &rv2)
2877 #if(CXSC_INDEX_CHECK) 2878 throw(OP_WITH_WRONG_DIM);
2882 void accumulate(cidotprecision &dp,
const cimatrix_subv & rv1,
const rvector &rv2)
2884 #if(CXSC_INDEX_CHECK) 2885 throw(OP_WITH_WRONG_DIM);
2889 void accumulate(cidotprecision &dp,
const civector_slice & sl1,
const rvector_slice &sl2)
2891 #if(CXSC_INDEX_CHECK) 2892 throw(OP_WITH_WRONG_DIM);
2896 void accumulate(cidotprecision &dp,
const rvector_slice & sl1,
const civector_slice &sl2)
2898 #if(CXSC_INDEX_CHECK) 2899 throw(OP_WITH_WRONG_DIM);
2905 INLINE cinterval
operator *(
const rvector & rv1,
const civector &rv2)
2906 #if(CXSC_INDEX_CHECK) 2907 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2911 INLINE cinterval
operator *(
const rvector_slice &sl,
const civector &rv)
2913 #if(CXSC_INDEX_CHECK) 2914 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2918 INLINE cinterval
operator *(
const rvector &rv,
const civector_slice &sl)
2920 #if(CXSC_INDEX_CHECK) 2921 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2925 INLINE cinterval
operator *(
const rvector_slice & sl1,
const civector_slice &sl2)
2927 #if(CXSC_INDEX_CHECK) 2928 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2934 INLINE cinterval
operator *(
const civector & rv1,
const rvector &rv2)
2935 #if(CXSC_INDEX_CHECK) 2936 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2940 INLINE cinterval
operator *(
const civector_slice &sl,
const rvector &rv)
2942 #if(CXSC_INDEX_CHECK) 2943 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2947 INLINE cinterval
operator *(
const civector &rv,
const rvector_slice &sl)
2949 #if(CXSC_INDEX_CHECK) 2950 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2954 INLINE cinterval
operator *(
const civector_slice & sl1,
const rvector_slice &sl2)
2956 #if(CXSC_INDEX_CHECK) 2957 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2963 INLINE civector operator +(
const rvector &rv1,
const civector &rv2)
2964 #if(CXSC_INDEX_CHECK) 2965 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2969 INLINE civector operator +(
const rvector &rv,
const civector_slice &sl)
2971 #if(CXSC_INDEX_CHECK) 2972 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2976 INLINE civector operator +(
const rvector_slice &sl,
const civector &rv)
2978 #if(CXSC_INDEX_CHECK) 2979 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2983 INLINE civector operator +(
const rvector_slice &sl1,
const civector_slice &sl2)
2985 #if(CXSC_INDEX_CHECK) 2986 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2992 INLINE civector operator +(
const civector &rv1,
const rvector &rv2)
2993 #if(CXSC_INDEX_CHECK) 2994 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2998 INLINE civector operator +(
const civector &rv,
const rvector_slice &sl)
3000 #if(CXSC_INDEX_CHECK) 3001 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3005 INLINE civector operator +(
const civector_slice &sl,
const rvector &rv)
3007 #if(CXSC_INDEX_CHECK) 3008 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3012 INLINE civector operator +(
const civector_slice &sl1,
const rvector_slice &sl2)
3014 #if(CXSC_INDEX_CHECK) 3015 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3021 INLINE civector &
operator +=(civector &rv1,
const rvector &rv2)
3022 #if(CXSC_INDEX_CHECK) 3023 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3027 INLINE civector &
operator +=(civector &rv,
const rvector_slice &sl)
3029 #if(CXSC_INDEX_CHECK) 3030 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3036 INLINE civector operator -(
const rvector &rv1,
const civector &rv2)
3037 #if(CXSC_INDEX_CHECK) 3038 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3042 INLINE civector operator -(
const rvector &rv,
const civector_slice &sl)
3044 #if(CXSC_INDEX_CHECK) 3045 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3049 INLINE civector operator -(
const rvector_slice &sl,
const civector &rv)
3051 #if(CXSC_INDEX_CHECK) 3052 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3056 INLINE civector operator -(
const rvector_slice &sl1,
const civector_slice &sl2)
3058 #if(CXSC_INDEX_CHECK) 3059 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3065 INLINE civector operator -(
const civector &rv1,
const rvector &rv2)
3066 #if(CXSC_INDEX_CHECK) 3067 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3071 INLINE civector operator -(
const civector &rv,
const rvector_slice &sl)
3073 #if(CXSC_INDEX_CHECK) 3074 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3078 INLINE civector operator -(
const civector_slice &sl,
const rvector &rv)
3080 #if(CXSC_INDEX_CHECK) 3081 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3085 INLINE civector operator -(
const civector_slice &sl1,
const rvector_slice &sl2)
3087 #if(CXSC_INDEX_CHECK) 3088 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3094 INLINE civector & operator -=(civector &rv1,
const rvector &rv2)
3095 #if(CXSC_INDEX_CHECK) 3096 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3100 INLINE civector &operator -=(civector &rv,
const rvector_slice &sl)
3102 #if(CXSC_INDEX_CHECK) 3103 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3109 INLINE civector operator |(
const rvector &rv1,
const civector &rv2)
3110 #if(CXSC_INDEX_CHECK) 3111 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3115 INLINE civector operator |(
const rvector &rv,
const civector_slice &sl)
3117 #if(CXSC_INDEX_CHECK) 3118 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3122 INLINE civector operator |(
const rvector_slice &sl,
const civector &rv)
3124 #if(CXSC_INDEX_CHECK) 3125 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3129 INLINE civector operator |(
const rvector_slice &sl1,
const civector_slice &sl2)
3131 #if(CXSC_INDEX_CHECK) 3132 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3138 INLINE civector operator |(
const civector &rv1,
const rvector &rv2)
3139 #if(CXSC_INDEX_CHECK) 3140 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3144 INLINE civector operator |(
const civector &rv,
const rvector_slice &sl)
3146 #if(CXSC_INDEX_CHECK) 3147 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3151 INLINE civector operator |(
const civector_slice &sl,
const rvector &rv)
3153 #if(CXSC_INDEX_CHECK) 3154 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3158 INLINE civector operator |(
const civector_slice &sl1,
const rvector_slice &sl2)
3160 #if(CXSC_INDEX_CHECK) 3161 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3167 INLINE civector & operator |=(civector &rv1,
const rvector &rv2)
3168 #if(CXSC_INDEX_CHECK) 3169 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3173 INLINE civector &operator |=(civector &rv,
const rvector_slice &sl)
3175 #if(CXSC_INDEX_CHECK) 3176 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3182 INLINE civector operator &(
const rvector &rv1,
const civector &rv2)
3183 #if(CXSC_INDEX_CHECK) 3184 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3188 INLINE civector operator &(
const rvector &rv,
const civector_slice &sl)
3190 #if(CXSC_INDEX_CHECK) 3191 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3195 INLINE civector operator &(
const rvector_slice &sl,
const civector &rv)
3197 #if(CXSC_INDEX_CHECK) 3198 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3202 INLINE civector operator &(
const rvector_slice &sl1,
const civector_slice &sl2)
3204 #if(CXSC_INDEX_CHECK) 3205 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3211 INLINE civector operator &(
const civector &rv1,
const rvector &rv2)
3212 #if(CXSC_INDEX_CHECK) 3213 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3217 INLINE civector operator &(
const civector &rv,
const rvector_slice &sl)
3219 #if(CXSC_INDEX_CHECK) 3220 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3224 INLINE civector operator &(
const civector_slice &sl,
const rvector &rv)
3226 #if(CXSC_INDEX_CHECK) 3227 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3231 INLINE civector operator &(
const civector_slice &sl1,
const rvector_slice &sl2)
3233 #if(CXSC_INDEX_CHECK) 3234 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3240 INLINE civector & operator &=(civector &rv1,
const rvector &rv2)
3241 #if(CXSC_INDEX_CHECK) 3242 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3246 INLINE civector &operator &=(civector &rv,
const rvector_slice &sl)
3248 #if(CXSC_INDEX_CHECK) 3249 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3256 void accumulate(cidotprecision &dp,
const cvector & rv1,
const civector &rv2)
3257 #if(CXSC_INDEX_CHECK) 3258 throw(OP_WITH_WRONG_DIM);
3262 void accumulate(cidotprecision &dp,
const civector & rv1,
const cvector &rv2)
3264 #if(CXSC_INDEX_CHECK) 3265 throw(OP_WITH_WRONG_DIM);
3269 void accumulate(cidotprecision &dp,
const cvector_slice & sl,
const civector &rv)
3271 #if(CXSC_INDEX_CHECK) 3272 throw(OP_WITH_WRONG_DIM);
3276 void accumulate(cidotprecision &dp,
const civector_slice &sl,
const cvector &rv)
3278 #if(CXSC_INDEX_CHECK) 3279 throw(OP_WITH_WRONG_DIM);
3283 void accumulate(cidotprecision &dp,
const cvector &rv,
const civector_slice &sl)
3285 #if(CXSC_INDEX_CHECK) 3286 throw(OP_WITH_WRONG_DIM);
3290 void accumulate(cidotprecision &dp,
const cvector & rv1,
const cimatrix_subv &rv2)
3292 #if(CXSC_INDEX_CHECK) 3293 throw(OP_WITH_WRONG_DIM);
3297 void accumulate(cidotprecision &dp,
const civector & rv1,
const cmatrix_subv &rv2)
3299 #if(CXSC_INDEX_CHECK) 3300 throw(OP_WITH_WRONG_DIM);
3304 void accumulate(cidotprecision &dp,
const civector &rv,
const cvector_slice &sl)
3306 #if(CXSC_INDEX_CHECK) 3307 throw(OP_WITH_WRONG_DIM);
3311 void accumulate(cidotprecision &dp,
const cmatrix_subv & rv1,
const civector &rv2)
3313 #if(CXSC_INDEX_CHECK) 3314 throw(OP_WITH_WRONG_DIM);
3318 void accumulate(cidotprecision &dp,
const cimatrix_subv & rv1,
const cvector &rv2)
3320 #if(CXSC_INDEX_CHECK) 3321 throw(OP_WITH_WRONG_DIM);
3325 void accumulate(cidotprecision &dp,
const civector_slice & sl1,
const cvector_slice &sl2)
3327 #if(CXSC_INDEX_CHECK) 3328 throw(OP_WITH_WRONG_DIM);
3332 void accumulate(cidotprecision &dp,
const cvector_slice & sl1,
const civector_slice &sl2)
3334 #if(CXSC_INDEX_CHECK) 3335 throw(OP_WITH_WRONG_DIM);
3344 INLINE cinterval
operator *(
const cvector & rv1,
const civector &rv2)
3345 #if(CXSC_INDEX_CHECK) 3346 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3350 INLINE cinterval
operator *(
const cvector_slice &sl,
const civector &rv)
3352 #if(CXSC_INDEX_CHECK) 3353 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3357 INLINE cinterval
operator *(
const cvector &rv,
const civector_slice &sl)
3359 #if(CXSC_INDEX_CHECK) 3360 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3364 INLINE cinterval
operator *(
const cvector_slice & sl1,
const civector_slice &sl2)
3366 #if(CXSC_INDEX_CHECK) 3367 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3373 INLINE cinterval
operator *(
const civector & rv1,
const cvector &rv2)
3374 #if(CXSC_INDEX_CHECK) 3375 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3379 INLINE cinterval
operator *(
const civector_slice &sl,
const cvector &rv)
3381 #if(CXSC_INDEX_CHECK) 3382 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3386 INLINE cinterval
operator *(
const civector &rv,
const cvector_slice &sl)
3388 #if(CXSC_INDEX_CHECK) 3389 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3393 INLINE cinterval
operator *(
const civector_slice & sl1,
const cvector_slice &sl2)
3395 #if(CXSC_INDEX_CHECK) 3396 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3402 INLINE civector operator +(
const cvector &rv1,
const civector &rv2)
3403 #if(CXSC_INDEX_CHECK) 3404 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3408 INLINE civector operator +(
const cvector &rv,
const civector_slice &sl)
3410 #if(CXSC_INDEX_CHECK) 3411 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3415 INLINE civector operator +(
const cvector_slice &sl,
const civector &rv)
3417 #if(CXSC_INDEX_CHECK) 3418 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3422 INLINE civector operator +(
const cvector_slice &sl1,
const civector_slice &sl2)
3424 #if(CXSC_INDEX_CHECK) 3425 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3431 INLINE civector operator +(
const civector &rv1,
const cvector &rv2)
3432 #if(CXSC_INDEX_CHECK) 3433 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3437 INLINE civector operator +(
const civector &rv,
const cvector_slice &sl)
3439 #if(CXSC_INDEX_CHECK) 3440 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3444 INLINE civector operator +(
const civector_slice &sl,
const cvector &rv)
3446 #if(CXSC_INDEX_CHECK) 3447 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3451 INLINE civector operator +(
const civector_slice &sl1,
const cvector_slice &sl2)
3453 #if(CXSC_INDEX_CHECK) 3454 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3460 INLINE civector &
operator +=(civector &rv1,
const cvector &rv2)
3461 #if(CXSC_INDEX_CHECK) 3462 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3466 INLINE civector &
operator +=(civector &rv,
const cvector_slice &sl)
3468 #if(CXSC_INDEX_CHECK) 3469 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3475 INLINE civector operator -(
const cvector &rv1,
const civector &rv2)
3476 #if(CXSC_INDEX_CHECK) 3477 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3481 INLINE civector operator -(
const cvector &rv,
const civector_slice &sl)
3483 #if(CXSC_INDEX_CHECK) 3484 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3488 INLINE civector operator -(
const cvector_slice &sl,
const civector &rv)
3490 #if(CXSC_INDEX_CHECK) 3491 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3495 INLINE civector operator -(
const cvector_slice &sl1,
const civector_slice &sl2)
3497 #if(CXSC_INDEX_CHECK) 3498 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3504 INLINE civector operator -(
const civector &rv1,
const cvector &rv2)
3505 #if(CXSC_INDEX_CHECK) 3506 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3510 INLINE civector operator -(
const civector &rv,
const cvector_slice &sl)
3512 #if(CXSC_INDEX_CHECK) 3513 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3517 INLINE civector operator -(
const civector_slice &sl,
const cvector &rv)
3519 #if(CXSC_INDEX_CHECK) 3520 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3524 INLINE civector operator -(
const civector_slice &sl1,
const cvector_slice &sl2)
3526 #if(CXSC_INDEX_CHECK) 3527 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3533 INLINE civector & operator -=(civector &rv1,
const cvector &rv2)
3534 #if(CXSC_INDEX_CHECK) 3535 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3539 INLINE civector &operator -=(civector &rv,
const cvector_slice &sl)
3541 #if(CXSC_INDEX_CHECK) 3542 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3548 INLINE civector operator |(
const cvector &rv1,
const civector &rv2)
3549 #if(CXSC_INDEX_CHECK) 3550 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3554 INLINE civector operator |(
const cvector &rv,
const civector_slice &sl)
3556 #if(CXSC_INDEX_CHECK) 3557 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3561 INLINE civector operator |(
const cvector_slice &sl,
const civector &rv)
3563 #if(CXSC_INDEX_CHECK) 3564 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3568 INLINE civector operator |(
const cvector_slice &sl1,
const civector_slice &sl2)
3570 #if(CXSC_INDEX_CHECK) 3571 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3577 INLINE civector operator |(
const civector &rv1,
const cvector &rv2)
3578 #if(CXSC_INDEX_CHECK) 3579 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3583 INLINE civector operator |(
const civector &rv,
const cvector_slice &sl)
3585 #if(CXSC_INDEX_CHECK) 3586 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3590 INLINE civector operator |(
const civector_slice &sl,
const cvector &rv)
3592 #if(CXSC_INDEX_CHECK) 3593 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3597 INLINE civector operator |(
const civector_slice &sl1,
const cvector_slice &sl2)
3599 #if(CXSC_INDEX_CHECK) 3600 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3606 INLINE civector & operator |=(civector &rv1,
const cvector &rv2)
3607 #if(CXSC_INDEX_CHECK) 3608 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3612 INLINE civector &operator |=(civector &rv,
const cvector_slice &sl)
3614 #if(CXSC_INDEX_CHECK) 3615 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3621 INLINE civector operator &(
const cvector &rv1,
const civector &rv2)
3622 #if(CXSC_INDEX_CHECK) 3623 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3627 INLINE civector operator &(
const cvector &rv,
const civector_slice &sl)
3629 #if(CXSC_INDEX_CHECK) 3630 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3634 INLINE civector operator &(
const cvector_slice &sl,
const civector &rv)
3636 #if(CXSC_INDEX_CHECK) 3637 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3641 INLINE civector operator &(
const cvector_slice &sl1,
const civector_slice &sl2)
3643 #if(CXSC_INDEX_CHECK) 3644 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3650 INLINE civector operator &(
const civector &rv1,
const cvector &rv2)
3651 #if(CXSC_INDEX_CHECK) 3652 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3656 INLINE civector operator &(
const civector &rv,
const cvector_slice &sl)
3658 #if(CXSC_INDEX_CHECK) 3659 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3663 INLINE civector operator &(
const civector_slice &sl,
const cvector &rv)
3665 #if(CXSC_INDEX_CHECK) 3666 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3670 INLINE civector operator &(
const civector_slice &sl1,
const cvector_slice &sl2)
3672 #if(CXSC_INDEX_CHECK) 3673 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3679 INLINE civector & operator &=(civector &rv1,
const cvector &rv2)
3680 #if(CXSC_INDEX_CHECK) 3681 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3685 INLINE civector &operator &=(civector &rv,
const cvector_slice &sl)
3687 #if(CXSC_INDEX_CHECK) 3688 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3696 void accumulate(cidotprecision &dp,
const ivector & rv1,
const civector &rv2)
3697 #if(CXSC_INDEX_CHECK) 3698 throw(OP_WITH_WRONG_DIM);
3702 void accumulate(cidotprecision &dp,
const civector & rv1,
const ivector &rv2)
3704 #if(CXSC_INDEX_CHECK) 3705 throw(OP_WITH_WRONG_DIM);
3709 void accumulate(cidotprecision &dp,
const ivector_slice & sl,
const civector &rv)
3711 #if(CXSC_INDEX_CHECK) 3712 throw(OP_WITH_WRONG_DIM);
3716 void accumulate(cidotprecision &dp,
const civector_slice &sl,
const ivector &rv)
3718 #if(CXSC_INDEX_CHECK) 3719 throw(OP_WITH_WRONG_DIM);
3723 void accumulate(cidotprecision &dp,
const ivector &rv,
const civector_slice &sl)
3725 #if(CXSC_INDEX_CHECK) 3726 throw(OP_WITH_WRONG_DIM);
3730 void accumulate(cidotprecision &dp,
const ivector & rv1,
const cimatrix_subv &rv2)
3732 #if(CXSC_INDEX_CHECK) 3733 throw(OP_WITH_WRONG_DIM);
3737 void accumulate(cidotprecision &dp,
const civector & rv1,
const imatrix_subv &rv2)
3739 #if(CXSC_INDEX_CHECK) 3740 throw(OP_WITH_WRONG_DIM);
3744 void accumulate(cidotprecision &dp,
const civector &rv,
const ivector_slice &sl)
3746 #if(CXSC_INDEX_CHECK) 3747 throw(OP_WITH_WRONG_DIM);
3751 void accumulate(cidotprecision &dp,
const imatrix_subv & rv1,
const civector &rv2)
3753 #if(CXSC_INDEX_CHECK) 3754 throw(OP_WITH_WRONG_DIM);
3758 void accumulate(cidotprecision &dp,
const cimatrix_subv & rv1,
const ivector &rv2)
3760 #if(CXSC_INDEX_CHECK) 3761 throw(OP_WITH_WRONG_DIM);
3765 void accumulate(cidotprecision &dp,
const civector_slice & sl1,
const ivector_slice &sl2)
3767 #if(CXSC_INDEX_CHECK) 3768 throw(OP_WITH_WRONG_DIM);
3772 void accumulate(cidotprecision &dp,
const ivector_slice & sl1,
const civector_slice &sl2)
3774 #if(CXSC_INDEX_CHECK) 3775 throw(OP_WITH_WRONG_DIM);
3779 void accumulate(cidotprecision &dp,
const cmatrix_subv & rv1,
const civector &rv2)
3781 #if(CXSC_INDEX_CHECK) 3782 throw(OP_WITH_WRONG_DIM);
3786 void accumulate(cidotprecision &dp,
const civector & rv1,
const cmatrix_subv &rv2)
3788 #if(CXSC_INDEX_CHECK) 3789 throw(OP_WITH_WRONG_DIM);
3793 void accumulate(cidotprecision &dp,
const cmatrix_subv & rv1,
const civector_slice &rv2)
3795 #if(CXSC_INDEX_CHECK) 3796 throw(OP_WITH_WRONG_DIM);
3800 void accumulate(cidotprecision &dp,
const civector_slice & rv1,
const cmatrix_subv &rv2)
3802 #if(CXSC_INDEX_CHECK) 3803 throw(OP_WITH_WRONG_DIM);
3809 void accumulate(cidotprecision &dp,
const civector_slice & sl1,
const rmatrix_subv &sl2)
3810 #if(CXSC_INDEX_CHECK) 3811 throw(OP_WITH_WRONG_DIM);
3815 void accumulate(cidotprecision &dp,
const rmatrix_subv & sl1,
const civector_slice &sl2)
3817 #if(CXSC_INDEX_CHECK) 3818 throw(OP_WITH_WRONG_DIM);
3824 INLINE cinterval
operator *(
const ivector & rv1,
const civector &rv2)
3825 #if(CXSC_INDEX_CHECK) 3826 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3830 INLINE cinterval
operator *(
const ivector_slice &sl,
const civector &rv)
3832 #if(CXSC_INDEX_CHECK) 3833 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3837 INLINE cinterval
operator *(
const ivector &rv,
const civector_slice &sl)
3839 #if(CXSC_INDEX_CHECK) 3840 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3844 INLINE cinterval
operator *(
const ivector_slice & sl1,
const civector_slice &sl2)
3846 #if(CXSC_INDEX_CHECK) 3847 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3853 INLINE cinterval
operator *(
const civector & rv1,
const ivector &rv2)
3854 #if(CXSC_INDEX_CHECK) 3855 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3859 INLINE cinterval
operator *(
const civector_slice &sl,
const ivector &rv)
3861 #if(CXSC_INDEX_CHECK) 3862 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3866 INLINE cinterval
operator *(
const civector &rv,
const ivector_slice &sl)
3868 #if(CXSC_INDEX_CHECK) 3869 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3873 INLINE cinterval
operator *(
const civector_slice & sl1,
const ivector_slice &sl2)
3875 #if(CXSC_INDEX_CHECK) 3876 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3882 INLINE civector operator +(
const ivector &rv1,
const civector &rv2)
3883 #if(CXSC_INDEX_CHECK) 3884 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3888 INLINE civector operator +(
const ivector &rv,
const civector_slice &sl)
3890 #if(CXSC_INDEX_CHECK) 3891 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3895 INLINE civector operator +(
const ivector_slice &sl,
const civector &rv)
3897 #if(CXSC_INDEX_CHECK) 3898 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3902 INLINE civector operator +(
const ivector_slice &sl1,
const civector_slice &sl2)
3904 #if(CXSC_INDEX_CHECK) 3905 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3911 INLINE civector operator +(
const civector &rv1,
const ivector &rv2)
3912 #if(CXSC_INDEX_CHECK) 3913 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3917 INLINE civector operator +(
const civector &rv,
const ivector_slice &sl)
3919 #if(CXSC_INDEX_CHECK) 3920 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3924 INLINE civector operator +(
const civector_slice &sl,
const ivector &rv)
3926 #if(CXSC_INDEX_CHECK) 3927 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3931 INLINE civector operator +(
const civector_slice &sl1,
const ivector_slice &sl2)
3933 #if(CXSC_INDEX_CHECK) 3934 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3940 INLINE civector &
operator +=(civector &rv1,
const ivector &rv2)
3941 #if(CXSC_INDEX_CHECK) 3942 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3946 INLINE civector &
operator +=(civector &rv,
const ivector_slice &sl)
3948 #if(CXSC_INDEX_CHECK) 3949 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3955 INLINE civector operator -(
const ivector &rv1,
const civector &rv2)
3956 #if(CXSC_INDEX_CHECK) 3957 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3961 INLINE civector operator -(
const ivector &rv,
const civector_slice &sl)
3963 #if(CXSC_INDEX_CHECK) 3964 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3968 INLINE civector operator -(
const ivector_slice &sl,
const civector &rv)
3970 #if(CXSC_INDEX_CHECK) 3971 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3975 INLINE civector operator -(
const ivector_slice &sl1,
const civector_slice &sl2)
3977 #if(CXSC_INDEX_CHECK) 3978 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3984 INLINE civector operator -(
const civector &rv1,
const ivector &rv2)
3985 #if(CXSC_INDEX_CHECK) 3986 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3990 INLINE civector operator -(
const civector &rv,
const ivector_slice &sl)
3992 #if(CXSC_INDEX_CHECK) 3993 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3997 INLINE civector operator -(
const civector_slice &sl,
const ivector &rv)
3999 #if(CXSC_INDEX_CHECK) 4000 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4004 INLINE civector operator -(
const civector_slice &sl1,
const ivector_slice &sl2)
4006 #if(CXSC_INDEX_CHECK) 4007 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4013 INLINE civector & operator -=(civector &rv1,
const ivector &rv2)
4014 #if(CXSC_INDEX_CHECK) 4015 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4019 INLINE civector &operator -=(civector &rv,
const ivector_slice &sl)
4021 #if(CXSC_INDEX_CHECK) 4022 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4028 INLINE civector operator |(
const ivector &rv1,
const civector &rv2)
4029 #if(CXSC_INDEX_CHECK) 4030 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4034 INLINE civector operator |(
const ivector &rv,
const civector_slice &sl)
4036 #if(CXSC_INDEX_CHECK) 4037 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4041 INLINE civector operator |(
const ivector_slice &sl,
const civector &rv)
4043 #if(CXSC_INDEX_CHECK) 4044 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4048 INLINE civector operator |(
const ivector_slice &sl1,
const civector_slice &sl2)
4050 #if(CXSC_INDEX_CHECK) 4051 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4057 INLINE civector operator |(
const civector &rv1,
const ivector &rv2)
4058 #if(CXSC_INDEX_CHECK) 4059 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4063 INLINE civector operator |(
const civector &rv,
const ivector_slice &sl)
4065 #if(CXSC_INDEX_CHECK) 4066 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4070 INLINE civector operator |(
const civector_slice &sl,
const ivector &rv)
4072 #if(CXSC_INDEX_CHECK) 4073 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4077 INLINE civector operator |(
const civector_slice &sl1,
const ivector_slice &sl2)
4079 #if(CXSC_INDEX_CHECK) 4080 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4086 INLINE civector & operator |=(civector &rv1,
const ivector &rv2)
4087 #if(CXSC_INDEX_CHECK) 4088 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4092 INLINE civector &operator |=(civector &rv,
const ivector_slice &sl)
4094 #if(CXSC_INDEX_CHECK) 4095 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4101 INLINE civector operator &(
const ivector &rv1,
const civector &rv2)
4102 #if(CXSC_INDEX_CHECK) 4103 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4107 INLINE civector operator &(
const ivector &rv,
const civector_slice &sl)
4109 #if(CXSC_INDEX_CHECK) 4110 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4114 INLINE civector operator &(
const ivector_slice &sl,
const civector &rv)
4116 #if(CXSC_INDEX_CHECK) 4117 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4121 INLINE civector operator &(
const ivector_slice &sl1,
const civector_slice &sl2)
4123 #if(CXSC_INDEX_CHECK) 4124 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4130 INLINE civector operator &(
const civector &rv1,
const ivector &rv2)
4131 #if(CXSC_INDEX_CHECK) 4132 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4136 INLINE civector operator &(
const civector &rv,
const ivector_slice &sl)
4138 #if(CXSC_INDEX_CHECK) 4139 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4143 INLINE civector operator &(
const civector_slice &sl,
const ivector &rv)
4145 #if(CXSC_INDEX_CHECK) 4146 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4150 INLINE civector operator &(
const civector_slice &sl1,
const ivector_slice &sl2)
4152 #if(CXSC_INDEX_CHECK) 4153 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4159 INLINE civector & operator &=(civector &rv1,
const ivector &rv2)
4160 #if(CXSC_INDEX_CHECK) 4161 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4165 INLINE civector &operator &=(civector &rv,
const ivector_slice &sl)
4167 #if(CXSC_INDEX_CHECK) 4168 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4175 INLINE civector operator |(
const rvector &rv1,
const cvector &rv2)
4176 #if(CXSC_INDEX_CHECK) 4177 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4181 INLINE civector operator |(
const cvector &rv1,
const rvector &rv2)
4183 #if(CXSC_INDEX_CHECK) 4184 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4188 INLINE civector operator |(
const cvector &rv,
const rvector_slice &sl)
4190 #if(CXSC_INDEX_CHECK) 4191 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4195 INLINE civector operator |(
const rvector_slice &sl,
const cvector &rv)
4197 #if(CXSC_INDEX_CHECK) 4198 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4202 INLINE civector operator |(
const cvector_slice &sl,
const rvector &rv)
4204 #if(CXSC_INDEX_CHECK) 4205 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4209 INLINE civector operator |(
const rvector &rv,
const cvector_slice &sl)
4211 #if(CXSC_INDEX_CHECK) 4212 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4216 INLINE civector operator |(
const cvector_slice &sl1,
const rvector_slice &sl2)
4218 #if(CXSC_INDEX_CHECK) 4219 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4223 INLINE civector operator |(
const rvector_slice &sl1,
const cvector_slice &sl2)
4225 #if(CXSC_INDEX_CHECK) 4226 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4233 INLINE civector operator |(
const cvector &rv1,
const cvector &rv2)
4234 #if(CXSC_INDEX_CHECK) 4235 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4239 INLINE civector operator |(
const cvector_slice &sl,
const cvector &rv)
4241 #if(CXSC_INDEX_CHECK) 4242 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4246 INLINE civector operator |(
const cvector &rv,
const cvector_slice &sl)
4248 #if(CXSC_INDEX_CHECK) 4249 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4253 INLINE civector operator |(
const cvector_slice &sl1,
const cvector_slice &sl2)
4255 #if(CXSC_INDEX_CHECK) 4256 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4266 INLINE civector operator +(
const cvector &rv1,
const ivector &rv2)
4267 #if(CXSC_INDEX_CHECK) 4268 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4272 INLINE civector operator +(
const cvector &rv,
const ivector_slice &sl)
4274 #if(CXSC_INDEX_CHECK) 4275 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4279 INLINE civector operator +(
const cvector_slice &sl,
const ivector &rv)
4281 #if(CXSC_INDEX_CHECK) 4282 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4286 INLINE civector operator +(
const cvector_slice &sl1,
const ivector_slice &sl2)
4288 #if(CXSC_INDEX_CHECK) 4289 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4295 INLINE civector operator +(
const ivector &rv1,
const cvector &rv2)
4296 #if(CXSC_INDEX_CHECK) 4297 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4301 INLINE civector operator +(
const ivector &rv,
const cvector_slice &sl)
4303 #if(CXSC_INDEX_CHECK) 4304 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4308 INLINE civector operator +(
const ivector_slice &sl,
const cvector &rv)
4310 #if(CXSC_INDEX_CHECK) 4311 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4315 INLINE civector operator +(
const ivector_slice &sl1,
const cvector_slice &sl2)
4317 #if(CXSC_INDEX_CHECK) 4318 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4325 INLINE civector operator -(
const cvector &rv1,
const ivector &rv2)
4326 #if(CXSC_INDEX_CHECK) 4327 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4331 INLINE civector operator -(
const cvector &rv,
const ivector_slice &sl)
4333 #if(CXSC_INDEX_CHECK) 4334 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4338 INLINE civector operator -(
const cvector_slice &sl,
const ivector &rv)
4340 #if(CXSC_INDEX_CHECK) 4341 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4345 INLINE civector operator -(
const cvector_slice &sl1,
const ivector_slice &sl2)
4347 #if(CXSC_INDEX_CHECK) 4348 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4354 INLINE civector operator -(
const ivector &rv1,
const cvector &rv2)
4355 #if(CXSC_INDEX_CHECK) 4356 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4360 INLINE civector operator -(
const ivector &rv,
const cvector_slice &sl)
4362 #if(CXSC_INDEX_CHECK) 4363 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4367 INLINE civector operator -(
const ivector_slice &sl,
const cvector &rv)
4369 #if(CXSC_INDEX_CHECK) 4370 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4374 INLINE civector operator -(
const ivector_slice &sl1,
const cvector_slice &sl2)
4376 #if(CXSC_INDEX_CHECK) 4377 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4384 INLINE civector operator |(
const cvector &rv1,
const ivector &rv2)
4385 #if(CXSC_INDEX_CHECK) 4386 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4390 INLINE civector operator |(
const cvector &rv,
const ivector_slice &sl)
4392 #if(CXSC_INDEX_CHECK) 4393 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4397 INLINE civector operator |(
const cvector_slice &sl,
const ivector &rv)
4399 #if(CXSC_INDEX_CHECK) 4400 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4404 INLINE civector operator |(
const cvector_slice &sl1,
const ivector_slice &sl2)
4406 #if(CXSC_INDEX_CHECK) 4407 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4413 INLINE civector operator |(
const ivector &rv1,
const cvector &rv2)
4414 #if(CXSC_INDEX_CHECK) 4415 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4419 INLINE civector operator |(
const ivector &rv,
const cvector_slice &sl)
4421 #if(CXSC_INDEX_CHECK) 4422 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4426 INLINE civector operator |(
const ivector_slice &sl,
const cvector &rv)
4428 #if(CXSC_INDEX_CHECK) 4429 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4433 INLINE civector operator |(
const ivector_slice &sl1,
const cvector_slice &sl2)
4435 #if(CXSC_INDEX_CHECK) 4436 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4442 INLINE civector operator &(
const cvector &rv1,
const ivector &rv2)
4443 #if(CXSC_INDEX_CHECK) 4444 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4448 INLINE civector operator &(
const cvector &rv,
const ivector_slice &sl)
4450 #if(CXSC_INDEX_CHECK) 4451 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4455 INLINE civector operator &(
const cvector_slice &sl,
const ivector &rv)
4457 #if(CXSC_INDEX_CHECK) 4458 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4462 INLINE civector operator &(
const cvector_slice &sl1,
const ivector_slice &sl2)
4464 #if(CXSC_INDEX_CHECK) 4465 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4471 INLINE civector operator &(
const ivector &rv1,
const cvector &rv2)
4472 #if(CXSC_INDEX_CHECK) 4473 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4477 INLINE civector operator &(
const ivector &rv,
const cvector_slice &sl)
4479 #if(CXSC_INDEX_CHECK) 4480 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4484 INLINE civector operator &(
const ivector_slice &sl,
const cvector &rv)
4486 #if(CXSC_INDEX_CHECK) 4487 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4491 INLINE civector operator &(
const ivector_slice &sl1,
const cvector_slice &sl2)
4493 #if(CXSC_INDEX_CHECK) 4494 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4500 INLINE
bool in(
const civector& v1,
const civector& v2);
4504 #ifdef _CXSC_INCL_INL 4505 #include "vector.inl" 4506 #include "civector.inl" 4509 #ifdef _CXSC_RMATRIX_HPP_INCLUDED 4510 # ifdef _CXSC_INCL_INL 4511 # include "civecrmat.inl" 4513 # include "civecrmat.hpp" 4517 #ifdef _CXSC_CMATRIX_HPP_INCLUDED 4518 # ifdef _CXSC_INCL_INL 4519 # include "civeccmat.inl" 4521 # include "civeccmat.hpp" 4525 #ifdef _CXSC_IMATRIX_HPP_INCLUDED 4526 # ifdef _CXSC_INCL_INL 4527 # include "civecimat.inl" 4529 # include "civecimat.hpp" 4533 #ifdef CXSC_USE_BLAS 4534 #define _CXSC_BLAS_CIVECTOR 4535 #include "cxsc_blas.inl" friend rvector InfRe(const civector_slice &v)
Returns the infimum of real part of the vector.
civector_slice(civector &a, const int &lb, const int &ub)
Constructor of class civector_slice.
cinterval(void)
Constructor of class cinterval.
The Data Type rmatrix_slice.
friend cvector Sup(const civector_slice &v)
Returns the supremum of the vector.
cimatrix & operator/=(cimatrix &m, const cinterval &c)
Implementation of division and allocation operation.
The Data Type imatrix_subv.
Helper class for slices of sparse vectors.
friend cvector Inf(const civector_slice &v)
Returns the infimum of the vector.
civector_slice & operator=(const scivector_slice &sl)
Implementation of standard assigning operator.
friend int Ub(const civector &rv)
Returns the upper bound of the vector.
cimatrix_subv & SetUncheckedInf(cimatrix_subv &iv, const complex &r)
Returns the matrix with the new unchecked given infimum value.
The Data Type cimatrix_subv.
friend int Lb(const civector_slice &sl)
Returns the lower bound of the vector.
The Data Type cimatrix_slice.
friend int VecLen(const civector &rv)
Returns the dimension of the vector.
The namespace cxsc, providing all functionality of the class library C-XSC.
int in(const cinterval &x, const cinterval &y)
Checks if first argument is part of second argument.
civector_slice & operator -=(const civector &rv)
Implementation of subtraction and allocation operation.
friend rvector SupIm(const civector_slice &v)
Returns the supremum of imaginary part of the vector.
cvector mid(const cimatrix_subv &mv)
Returns the middle of the matrix.
The Scalar Type interval.
friend int VecLen(const civector_slice &sl)
Returns the size of the vector.
A sparse interval vector.
civector_slice & operator+=(const civector &rv)
Implementation of addition and allocation operation.
friend int Lb(const civector &rv)
Returns the lower bound of the vector.
friend cvector Inf(const civector &v)
Returns the infimum of the vector.
cinterval & operator [](const int &i) const
Operator for accessing the single elements of the vector (read-only)
A sparse complex interval vector.
The Data Type ivector_slice.
cimatrix & operator *=(cimatrix &m, const cinterval &c)
Implementation of multiplication and allocation operation.
The Data Type imatrix_slice.
The Data Type rvector_slice.
The Data Type rmatrix_subv.
friend rvector SupIm(const civector &v)
Returns the supremum of imaginary part of the vector.
civector operator *(const cimatrix_subv &rv, const cinterval &s)
Implementation of multiplication operation.
civector_slice & operator *=(const cinterval &r)
Implementation of multiplication and allocation operation.
The Scalar Type cinterval.
void Resize(cimatrix &A)
Resizes the matrix.
Helper class for slices of sparse vectors.
civector_slice(civector_slice &a, const int &lb, const int &ub)
Constructor of class civector_slice.
civector_slice & operator &=(const civector &rv)
Allocates the intersection of the arguments to the first argument.
cvector diam(const cimatrix_subv &mv)
Returns the diameter of the matrix.
friend rvector SupRe(const civector_slice &v)
Returns the supremum of real part of the vector.
friend rvector InfIm(const civector_slice &v)
Returns the infimum of imaginary part of the vector.
The Data Type civector_slice.
civector_slice(const civector_slice &a)
Constructor of class civector_slice.
The Data Type cmatrix_subv.
civector_slice & operator/=(const cinterval &r)
Implementation of division and allocation operation.
friend civector & SetLb(civector &rv, const int &l)
Sets the lower bound of the vector.
The Data Type cmatrix_slice.
friend rvector InfRe(const civector &v)
Returns the infimum of real part of the vector.
friend rvector InfIm(const civector &v)
Returns the infimum of imaginary part of the vector.
civector_slice & operator()()
Operator for accessing the whole vector.
cdotprecision & operator+=(cdotprecision &cd, const l_complex &lc)
Implementation of standard algebraic addition and allocation operation.
friend int Ub(const civector_slice &sl)
Returns the upper bound of the vector.
cinterval & operator [](const int &i) const
Operator for accessing the single elements of the vector (read-only)
Helper class for slices of sparse vectors.
civector()
Constructor of class civector.
Helper class for slices of sparse vectors.
friend rvector SupRe(const civector &v)
Returns the supremum of real part of the vector.
civector operator/(const cimatrix_subv &rv, const cinterval &s)
Implementation of division operation.
The Data Type cvector_slice.
civector & operator=(const civector &rv)
Implementation of standard assigning operator.
civector & operator()()
Operator for accessing the whole vector.
friend cvector Sup(const civector &v)
Returns the supremum of the vector.
civector_slice & operator|=(const civector &rv)
Allocates the convex hull of the arguments to the first argument.
friend civector & SetUb(civector &rv, const int &u)
Sets the upper bound of the vector.
ivector abs(const cimatrix_subv &mv)
Returns the absolute value of the matrix.