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();
2077 #if(CXSC_INDEX_CHECK)
2078 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2084 #if(CXSC_INDEX_CHECK)
2085 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2091 #if(CXSC_INDEX_CHECK)
2092 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2098 #if(CXSC_INDEX_CHECK)
2099 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2105 #if(CXSC_INDEX_CHECK)
2106 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2112 #if(CXSC_INDEX_CHECK)
2113 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2119 #if(CXSC_INDEX_CHECK)
2120 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2126 #if(CXSC_INDEX_CHECK)
2127 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2134 #if(CXSC_INDEX_CHECK)
2135 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2141 #if(CXSC_INDEX_CHECK)
2142 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2148 #if(CXSC_INDEX_CHECK)
2149 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2155 #if(CXSC_INDEX_CHECK)
2156 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2162 #if(CXSC_INDEX_CHECK)
2163 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2169 #if(CXSC_INDEX_CHECK)
2170 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2176 #if(CXSC_INDEX_CHECK)
2177 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2183 #if(CXSC_INDEX_CHECK)
2184 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2191 #if(CXSC_INDEX_CHECK)
2192 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2198 #if(CXSC_INDEX_CHECK)
2199 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2205 #if(CXSC_INDEX_CHECK)
2206 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2212 #if(CXSC_INDEX_CHECK)
2213 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2220 #if(CXSC_INDEX_CHECK)
2221 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2227 #if(CXSC_INDEX_CHECK)
2228 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2234 #if(CXSC_INDEX_CHECK)
2235 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2241 #if(CXSC_INDEX_CHECK)
2242 throw(ERROR_CIVECTOR_OP_WITH_WRONG_DIM);
2277 #if(CXSC_INDEX_CHECK)
2278 throw(ERROR__WRONG_BOUNDARIES<civector>);
2284 #if(CXSC_INDEX_CHECK)
2285 throw(ERROR__WRONG_BOUNDARIES<civector>);
2332 INLINE
bool operator !(
const civector &rv)
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();
2489 #if(CXSC_INDEX_CHECK)
2490 throw(OP_WITH_WRONG_DIM);
2496 #if(CXSC_INDEX_CHECK)
2497 throw(OP_WITH_WRONG_DIM);
2503 #if(CXSC_INDEX_CHECK)
2504 throw(OP_WITH_WRONG_DIM);
2510 #if(CXSC_INDEX_CHECK)
2511 throw(OP_WITH_WRONG_DIM);
2517 #if(CXSC_INDEX_CHECK)
2518 throw(OP_WITH_WRONG_DIM);
2524 #if(CXSC_INDEX_CHECK)
2525 throw(OP_WITH_WRONG_DIM);
2531 #if(CXSC_INDEX_CHECK)
2532 throw(OP_WITH_WRONG_DIM);
2538 #if(CXSC_INDEX_CHECK)
2539 throw(OP_WITH_WRONG_DIM);
2545 #if(CXSC_INDEX_CHECK)
2546 throw(OP_WITH_WRONG_DIM);
2552 #if(CXSC_INDEX_CHECK)
2553 throw(OP_WITH_WRONG_DIM);
2560 #if(CXSC_INDEX_CHECK)
2561 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2567 #if(CXSC_INDEX_CHECK)
2568 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2574 #if(CXSC_INDEX_CHECK)
2575 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2581 #if(CXSC_INDEX_CHECK)
2582 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2594 #if(CXSC_INDEX_CHECK)
2595 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2601 #if(CXSC_INDEX_CHECK)
2602 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2608 #if(CXSC_INDEX_CHECK)
2609 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2615 #if(CXSC_INDEX_CHECK)
2616 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2622 #if(CXSC_INDEX_CHECK)
2623 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2629 #if(CXSC_INDEX_CHECK)
2630 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2641 #if(CXSC_INDEX_CHECK)
2642 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2648 #if(CXSC_INDEX_CHECK)
2649 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2655 #if(CXSC_INDEX_CHECK)
2656 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2662 #if(CXSC_INDEX_CHECK)
2663 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2669 #if(CXSC_INDEX_CHECK)
2670 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2676 #if(CXSC_INDEX_CHECK)
2677 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2684 #if(CXSC_INDEX_CHECK)
2685 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2691 #if(CXSC_INDEX_CHECK)
2692 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2698 #if(CXSC_INDEX_CHECK)
2699 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2705 #if(CXSC_INDEX_CHECK)
2706 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2712 #if(CXSC_INDEX_CHECK)
2713 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2719 #if(CXSC_INDEX_CHECK)
2720 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2727 #if(CXSC_INDEX_CHECK)
2728 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2734 #if(CXSC_INDEX_CHECK)
2735 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2741 #if(CXSC_INDEX_CHECK)
2742 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2748 #if(CXSC_INDEX_CHECK)
2749 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2755 #if(CXSC_INDEX_CHECK)
2756 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2762 #if(CXSC_INDEX_CHECK)
2763 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2821 #if(CXSC_INDEX_CHECK)
2822 throw(OP_WITH_WRONG_DIM);
2828 #if(CXSC_INDEX_CHECK)
2829 throw(OP_WITH_WRONG_DIM);
2835 #if(CXSC_INDEX_CHECK)
2836 throw(OP_WITH_WRONG_DIM);
2842 #if(CXSC_INDEX_CHECK)
2843 throw(OP_WITH_WRONG_DIM);
2849 #if(CXSC_INDEX_CHECK)
2850 throw(OP_WITH_WRONG_DIM);
2856 #if(CXSC_INDEX_CHECK)
2857 throw(OP_WITH_WRONG_DIM);
2863 #if(CXSC_INDEX_CHECK)
2864 throw(OP_WITH_WRONG_DIM);
2870 #if(CXSC_INDEX_CHECK)
2871 throw(OP_WITH_WRONG_DIM);
2877 #if(CXSC_INDEX_CHECK)
2878 throw(OP_WITH_WRONG_DIM);
2884 #if(CXSC_INDEX_CHECK)
2885 throw(OP_WITH_WRONG_DIM);
2891 #if(CXSC_INDEX_CHECK)
2892 throw(OP_WITH_WRONG_DIM);
2898 #if(CXSC_INDEX_CHECK)
2899 throw(OP_WITH_WRONG_DIM);
2906 #if(CXSC_INDEX_CHECK)
2907 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2913 #if(CXSC_INDEX_CHECK)
2914 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2920 #if(CXSC_INDEX_CHECK)
2921 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2927 #if(CXSC_INDEX_CHECK)
2928 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2935 #if(CXSC_INDEX_CHECK)
2936 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2942 #if(CXSC_INDEX_CHECK)
2943 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2949 #if(CXSC_INDEX_CHECK)
2950 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2956 #if(CXSC_INDEX_CHECK)
2957 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2964 #if(CXSC_INDEX_CHECK)
2965 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2971 #if(CXSC_INDEX_CHECK)
2972 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2978 #if(CXSC_INDEX_CHECK)
2979 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2985 #if(CXSC_INDEX_CHECK)
2986 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
2993 #if(CXSC_INDEX_CHECK)
2994 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3000 #if(CXSC_INDEX_CHECK)
3001 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3007 #if(CXSC_INDEX_CHECK)
3008 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3014 #if(CXSC_INDEX_CHECK)
3015 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3022 #if(CXSC_INDEX_CHECK)
3023 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3029 #if(CXSC_INDEX_CHECK)
3030 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3037 #if(CXSC_INDEX_CHECK)
3038 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3044 #if(CXSC_INDEX_CHECK)
3045 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3051 #if(CXSC_INDEX_CHECK)
3052 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3058 #if(CXSC_INDEX_CHECK)
3059 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3066 #if(CXSC_INDEX_CHECK)
3067 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3073 #if(CXSC_INDEX_CHECK)
3074 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3080 #if(CXSC_INDEX_CHECK)
3081 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3087 #if(CXSC_INDEX_CHECK)
3088 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3095 #if(CXSC_INDEX_CHECK)
3096 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3102 #if(CXSC_INDEX_CHECK)
3103 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3110 #if(CXSC_INDEX_CHECK)
3111 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3117 #if(CXSC_INDEX_CHECK)
3118 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3124 #if(CXSC_INDEX_CHECK)
3125 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3131 #if(CXSC_INDEX_CHECK)
3132 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3139 #if(CXSC_INDEX_CHECK)
3140 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3146 #if(CXSC_INDEX_CHECK)
3147 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3153 #if(CXSC_INDEX_CHECK)
3154 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3160 #if(CXSC_INDEX_CHECK)
3161 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3168 #if(CXSC_INDEX_CHECK)
3169 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3175 #if(CXSC_INDEX_CHECK)
3176 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3183 #if(CXSC_INDEX_CHECK)
3184 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3190 #if(CXSC_INDEX_CHECK)
3191 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3197 #if(CXSC_INDEX_CHECK)
3198 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3204 #if(CXSC_INDEX_CHECK)
3205 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3212 #if(CXSC_INDEX_CHECK)
3213 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3219 #if(CXSC_INDEX_CHECK)
3220 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3226 #if(CXSC_INDEX_CHECK)
3227 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3233 #if(CXSC_INDEX_CHECK)
3234 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3241 #if(CXSC_INDEX_CHECK)
3242 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3248 #if(CXSC_INDEX_CHECK)
3249 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3257 #if(CXSC_INDEX_CHECK)
3258 throw(OP_WITH_WRONG_DIM);
3264 #if(CXSC_INDEX_CHECK)
3265 throw(OP_WITH_WRONG_DIM);
3271 #if(CXSC_INDEX_CHECK)
3272 throw(OP_WITH_WRONG_DIM);
3278 #if(CXSC_INDEX_CHECK)
3279 throw(OP_WITH_WRONG_DIM);
3285 #if(CXSC_INDEX_CHECK)
3286 throw(OP_WITH_WRONG_DIM);
3292 #if(CXSC_INDEX_CHECK)
3293 throw(OP_WITH_WRONG_DIM);
3299 #if(CXSC_INDEX_CHECK)
3300 throw(OP_WITH_WRONG_DIM);
3306 #if(CXSC_INDEX_CHECK)
3307 throw(OP_WITH_WRONG_DIM);
3313 #if(CXSC_INDEX_CHECK)
3314 throw(OP_WITH_WRONG_DIM);
3320 #if(CXSC_INDEX_CHECK)
3321 throw(OP_WITH_WRONG_DIM);
3327 #if(CXSC_INDEX_CHECK)
3328 throw(OP_WITH_WRONG_DIM);
3334 #if(CXSC_INDEX_CHECK)
3335 throw(OP_WITH_WRONG_DIM);
3345 #if(CXSC_INDEX_CHECK)
3346 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3352 #if(CXSC_INDEX_CHECK)
3353 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3359 #if(CXSC_INDEX_CHECK)
3360 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3366 #if(CXSC_INDEX_CHECK)
3367 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3374 #if(CXSC_INDEX_CHECK)
3375 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3381 #if(CXSC_INDEX_CHECK)
3382 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3388 #if(CXSC_INDEX_CHECK)
3389 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3395 #if(CXSC_INDEX_CHECK)
3396 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3403 #if(CXSC_INDEX_CHECK)
3404 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3410 #if(CXSC_INDEX_CHECK)
3411 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3417 #if(CXSC_INDEX_CHECK)
3418 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3424 #if(CXSC_INDEX_CHECK)
3425 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3432 #if(CXSC_INDEX_CHECK)
3433 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3439 #if(CXSC_INDEX_CHECK)
3440 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3446 #if(CXSC_INDEX_CHECK)
3447 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3453 #if(CXSC_INDEX_CHECK)
3454 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3461 #if(CXSC_INDEX_CHECK)
3462 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3468 #if(CXSC_INDEX_CHECK)
3469 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3476 #if(CXSC_INDEX_CHECK)
3477 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3483 #if(CXSC_INDEX_CHECK)
3484 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3490 #if(CXSC_INDEX_CHECK)
3491 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3497 #if(CXSC_INDEX_CHECK)
3498 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3505 #if(CXSC_INDEX_CHECK)
3506 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3512 #if(CXSC_INDEX_CHECK)
3513 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3519 #if(CXSC_INDEX_CHECK)
3520 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3526 #if(CXSC_INDEX_CHECK)
3527 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3534 #if(CXSC_INDEX_CHECK)
3535 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3541 #if(CXSC_INDEX_CHECK)
3542 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3549 #if(CXSC_INDEX_CHECK)
3550 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3556 #if(CXSC_INDEX_CHECK)
3557 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3563 #if(CXSC_INDEX_CHECK)
3564 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3570 #if(CXSC_INDEX_CHECK)
3571 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3578 #if(CXSC_INDEX_CHECK)
3579 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3585 #if(CXSC_INDEX_CHECK)
3586 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3592 #if(CXSC_INDEX_CHECK)
3593 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3599 #if(CXSC_INDEX_CHECK)
3600 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3607 #if(CXSC_INDEX_CHECK)
3608 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3614 #if(CXSC_INDEX_CHECK)
3615 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3622 #if(CXSC_INDEX_CHECK)
3623 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3629 #if(CXSC_INDEX_CHECK)
3630 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3636 #if(CXSC_INDEX_CHECK)
3637 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3643 #if(CXSC_INDEX_CHECK)
3644 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3651 #if(CXSC_INDEX_CHECK)
3652 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3658 #if(CXSC_INDEX_CHECK)
3659 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3665 #if(CXSC_INDEX_CHECK)
3666 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3672 #if(CXSC_INDEX_CHECK)
3673 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3680 #if(CXSC_INDEX_CHECK)
3681 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3687 #if(CXSC_INDEX_CHECK)
3688 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3697 #if(CXSC_INDEX_CHECK)
3698 throw(OP_WITH_WRONG_DIM);
3704 #if(CXSC_INDEX_CHECK)
3705 throw(OP_WITH_WRONG_DIM);
3711 #if(CXSC_INDEX_CHECK)
3712 throw(OP_WITH_WRONG_DIM);
3718 #if(CXSC_INDEX_CHECK)
3719 throw(OP_WITH_WRONG_DIM);
3725 #if(CXSC_INDEX_CHECK)
3726 throw(OP_WITH_WRONG_DIM);
3732 #if(CXSC_INDEX_CHECK)
3733 throw(OP_WITH_WRONG_DIM);
3739 #if(CXSC_INDEX_CHECK)
3740 throw(OP_WITH_WRONG_DIM);
3746 #if(CXSC_INDEX_CHECK)
3747 throw(OP_WITH_WRONG_DIM);
3753 #if(CXSC_INDEX_CHECK)
3754 throw(OP_WITH_WRONG_DIM);
3760 #if(CXSC_INDEX_CHECK)
3761 throw(OP_WITH_WRONG_DIM);
3767 #if(CXSC_INDEX_CHECK)
3768 throw(OP_WITH_WRONG_DIM);
3774 #if(CXSC_INDEX_CHECK)
3775 throw(OP_WITH_WRONG_DIM);
3781 #if(CXSC_INDEX_CHECK)
3782 throw(OP_WITH_WRONG_DIM);
3788 #if(CXSC_INDEX_CHECK)
3789 throw(OP_WITH_WRONG_DIM);
3795 #if(CXSC_INDEX_CHECK)
3796 throw(OP_WITH_WRONG_DIM);
3802 #if(CXSC_INDEX_CHECK)
3803 throw(OP_WITH_WRONG_DIM);
3810 #if(CXSC_INDEX_CHECK)
3811 throw(OP_WITH_WRONG_DIM);
3817 #if(CXSC_INDEX_CHECK)
3818 throw(OP_WITH_WRONG_DIM);
3825 #if(CXSC_INDEX_CHECK)
3826 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3832 #if(CXSC_INDEX_CHECK)
3833 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3839 #if(CXSC_INDEX_CHECK)
3840 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3846 #if(CXSC_INDEX_CHECK)
3847 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3854 #if(CXSC_INDEX_CHECK)
3855 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3861 #if(CXSC_INDEX_CHECK)
3862 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3868 #if(CXSC_INDEX_CHECK)
3869 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3875 #if(CXSC_INDEX_CHECK)
3876 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3883 #if(CXSC_INDEX_CHECK)
3884 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3890 #if(CXSC_INDEX_CHECK)
3891 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3897 #if(CXSC_INDEX_CHECK)
3898 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3904 #if(CXSC_INDEX_CHECK)
3905 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3912 #if(CXSC_INDEX_CHECK)
3913 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3919 #if(CXSC_INDEX_CHECK)
3920 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3926 #if(CXSC_INDEX_CHECK)
3927 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3933 #if(CXSC_INDEX_CHECK)
3934 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3941 #if(CXSC_INDEX_CHECK)
3942 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3948 #if(CXSC_INDEX_CHECK)
3949 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3956 #if(CXSC_INDEX_CHECK)
3957 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3963 #if(CXSC_INDEX_CHECK)
3964 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3970 #if(CXSC_INDEX_CHECK)
3971 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3977 #if(CXSC_INDEX_CHECK)
3978 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3985 #if(CXSC_INDEX_CHECK)
3986 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3992 #if(CXSC_INDEX_CHECK)
3993 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
3999 #if(CXSC_INDEX_CHECK)
4000 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4006 #if(CXSC_INDEX_CHECK)
4007 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4014 #if(CXSC_INDEX_CHECK)
4015 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4021 #if(CXSC_INDEX_CHECK)
4022 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4029 #if(CXSC_INDEX_CHECK)
4030 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4036 #if(CXSC_INDEX_CHECK)
4037 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4043 #if(CXSC_INDEX_CHECK)
4044 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4050 #if(CXSC_INDEX_CHECK)
4051 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4058 #if(CXSC_INDEX_CHECK)
4059 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4065 #if(CXSC_INDEX_CHECK)
4066 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4072 #if(CXSC_INDEX_CHECK)
4073 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4079 #if(CXSC_INDEX_CHECK)
4080 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4087 #if(CXSC_INDEX_CHECK)
4088 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4094 #if(CXSC_INDEX_CHECK)
4095 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4102 #if(CXSC_INDEX_CHECK)
4103 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4109 #if(CXSC_INDEX_CHECK)
4110 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4116 #if(CXSC_INDEX_CHECK)
4117 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4123 #if(CXSC_INDEX_CHECK)
4124 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4131 #if(CXSC_INDEX_CHECK)
4132 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4138 #if(CXSC_INDEX_CHECK)
4139 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4145 #if(CXSC_INDEX_CHECK)
4146 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4152 #if(CXSC_INDEX_CHECK)
4153 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4160 #if(CXSC_INDEX_CHECK)
4161 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4167 #if(CXSC_INDEX_CHECK)
4168 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4176 #if(CXSC_INDEX_CHECK)
4177 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4183 #if(CXSC_INDEX_CHECK)
4184 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4190 #if(CXSC_INDEX_CHECK)
4191 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4197 #if(CXSC_INDEX_CHECK)
4198 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4204 #if(CXSC_INDEX_CHECK)
4205 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4211 #if(CXSC_INDEX_CHECK)
4212 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4218 #if(CXSC_INDEX_CHECK)
4219 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4225 #if(CXSC_INDEX_CHECK)
4226 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4234 #if(CXSC_INDEX_CHECK)
4235 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4241 #if(CXSC_INDEX_CHECK)
4242 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4248 #if(CXSC_INDEX_CHECK)
4249 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4255 #if(CXSC_INDEX_CHECK)
4256 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4267 #if(CXSC_INDEX_CHECK)
4268 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4274 #if(CXSC_INDEX_CHECK)
4275 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4281 #if(CXSC_INDEX_CHECK)
4282 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4288 #if(CXSC_INDEX_CHECK)
4289 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4296 #if(CXSC_INDEX_CHECK)
4297 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4303 #if(CXSC_INDEX_CHECK)
4304 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4310 #if(CXSC_INDEX_CHECK)
4311 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4317 #if(CXSC_INDEX_CHECK)
4318 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4326 #if(CXSC_INDEX_CHECK)
4327 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4333 #if(CXSC_INDEX_CHECK)
4334 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4340 #if(CXSC_INDEX_CHECK)
4341 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4347 #if(CXSC_INDEX_CHECK)
4348 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4355 #if(CXSC_INDEX_CHECK)
4356 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4362 #if(CXSC_INDEX_CHECK)
4363 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4369 #if(CXSC_INDEX_CHECK)
4370 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4376 #if(CXSC_INDEX_CHECK)
4377 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4385 #if(CXSC_INDEX_CHECK)
4386 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4392 #if(CXSC_INDEX_CHECK)
4393 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4399 #if(CXSC_INDEX_CHECK)
4400 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4406 #if(CXSC_INDEX_CHECK)
4407 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4414 #if(CXSC_INDEX_CHECK)
4415 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4421 #if(CXSC_INDEX_CHECK)
4422 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4428 #if(CXSC_INDEX_CHECK)
4429 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4435 #if(CXSC_INDEX_CHECK)
4436 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4443 #if(CXSC_INDEX_CHECK)
4444 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4450 #if(CXSC_INDEX_CHECK)
4451 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4457 #if(CXSC_INDEX_CHECK)
4458 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4464 #if(CXSC_INDEX_CHECK)
4465 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4472 #if(CXSC_INDEX_CHECK)
4473 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4479 #if(CXSC_INDEX_CHECK)
4480 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4486 #if(CXSC_INDEX_CHECK)
4487 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
4493 #if(CXSC_INDEX_CHECK)
4494 throw(ERROR__OP_WITH_WRONG_DIM<civector>);
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"