26#ifndef _CXSC_LIVECTOR_HPP_INCLUDED
27#define _CXSC_LIVECTOR_HPP_INCLUDED
29#include "xscclass.hpp"
32#include "l_interval.hpp"
36#include "l_rvector.hpp"
65#ifdef _CXSC_FRIEND_TPL
68template <
class V,
class MS,
class S>
friend void _vmsconstr(V &v,
const MS &m)
74template <
class V,
class M,
class S>
friend void _vmconstr(V &v,
const M &m)
80 template <
class V>
friend void _vresize(V &rv)
noexcept;
81 template <
class V,
class S>
friend void _vresize(V &rv,
const int &len)
87 template <
class V,
class S>
friend void _vresize(V &rv,
const int &lb,
const int &ub)
93 template <
class V1,
class V2,
class S>
friend V1 &_vvassign(V1 &rv1,
const V2 &rv2)
noexcept;
94 template <
class V,
class S>
friend V & _vsassign(V &rv,
const S &r)
noexcept;
95 template <
class V,
class VS,
class S>
friend V & _vvsassign(V &rv,
const VS &sl)
noexcept;
96 template <
class VS,
class V>
friend VS & _vsvassign(VS &sl,
const V &rv)
102template <
class V,
class M,
class S>
friend V &_vmassign(V &v,
const M &m)
108template <
class M,
class V,
class S>
friend M &_mvassign(M &m,
const V &v)
noexcept;
109 template <
class V1,
class V2>
friend V1 &_vvsetinf(V1 &rv1,
const V2 &rv2)
115 template <
class V1,
class V2>
friend V1 &_vvsetsup(V1 &rv1,
const V2 &rv2)
121 template <
class V,
class VS>
friend V &_vvssetinf(V &rv,
const VS &sl)
127 template <
class V,
class VS>
friend V &_vvssetsup(V &rv,
const VS &sl)
133template <
class V,
class MV>
friend V &_vmvsetinf(V &rv,
const MV &v)
139template <
class V,
class MV>
friend V &_vmvsetsup(V &rv,
const MV &v)
145 template <
class V1,
class V2>
friend V1 &_vvusetinf(V1 &rv1,
const V2 &rv2)
151 template <
class V1,
class V2>
friend V1 &_vvusetsup(V1 &rv1,
const V2 &rv2)
157 template <
class V,
class VS>
friend V &_vvsusetinf(V &rv,
const VS &sl)
163 template <
class V,
class VS>
friend V &_vvsusetsup(V &rv,
const VS &sl)
169template <
class V,
class MV>
friend V &_vmvusetinf(V &rv,
const MV &v)
175template <
class V,
class MV>
friend V &_vmvusetsup(V &rv,
const MV &v)
181 template <
class V,
class S>
friend V &_vssetinf(V &v,
const S &s)
noexcept;
182 template <
class V,
class S>
friend V &_vssetsup(V &v,
const S &s)
noexcept;
183 template <
class V,
class S>
friend V &_vsusetinf(V &v,
const S &s)
noexcept;
184 template <
class V,
class S>
friend V &_vsusetsup(V &v,
const S &s)
noexcept;
185 template <
class V,
class E>
friend E _vabs(
const V &rv)
noexcept;
186 template <
class VS,
class E>
friend E _vsabs(
const VS &sl)
noexcept;
187template <
class MV,
class V>
friend V _mvabs(
const MV &mv)
noexcept;
188 template <
class V,
class E>
friend E _vdiam(
const V &rv)
noexcept;
189 template <
class V,
class E>
friend E _vmid(
const V &rv)
noexcept;
190 template <
class V,
class E>
friend E _vinf(
const V &rv)
noexcept;
191 template <
class V,
class E>
friend E _vsup(
const V &rv)
noexcept;
194 template <
class DP,
class V1,
class V2>
friend void _vvaccu(DP &dp,
const V1 & rv1,
const V2 &rv2)
200 template <
class DP,
class VS,
class V>
friend void _vsvaccu(DP &dp,
const VS & sl,
const V &rv)
207 template <
class V1,
class V2,
class E>
friend E _vvlimult(
const V1 & rv1,
const V2 &rv2)
213 template <
class VS,
class V,
class E>
friend E _vsvlimult(
const VS & sl,
const V &rv)
220 template <
class V,
class S>
friend V &_vsmultassign(V &rv,
const S &r)
noexcept;
221 template <
class V1,
class V2,
class E>
friend E _vvplus(
const V1 &rv1,
const V2 &rv2)
227 template <
class V,
class VS,
class E>
friend E _vvsplus(
const V &rv,
const VS &sl)
233 template <
class VS1,
class VS2,
class E>
friend E _vsvsplus(
const VS1 &s1,
const VS2 &s2)
239 template <
class VS1,
class VS2,
class E>
friend E _vsvsminus(
const VS1 &s1,
const VS2 &s2)
245 template <
class V1,
class V2>
friend V1 &_vvplusassign(V1 &rv1,
const V2 &rv2)
251 template <
class V,
class VS>
friend V &_vvsplusassign(V &rv,
const VS &sl)
257 template <
class VS,
class V>
friend VS &_vsvplusassign(VS &sl,
const V &rv)
263 template <
class VS1,
class VS2>
friend VS1 &_vsvsplusassign(VS1 &sl1,
const VS2 &sl2)
269 template <
class VS1,
class VS2>
friend VS1 &_vsvsminusassign(VS1 &sl1,
const VS2 &sl2)
275 template <
class V1,
class V2>
friend V1 &_vvminusassign(V1 &rv1,
const V2 &rv2)
281 template <
class V,
class VS>
friend V &_vvsminusassign(V &rv,
const VS &sl)
287 template <
class VS,
class V>
friend VS &_vsvminusassign(VS &sl,
const V &rv)
293 template <
class V>
friend V _vminus(
const V &rv)
noexcept;
294 template <
class VS,
class V>
friend V _vsminus(
const VS &sl)
noexcept;
295 template <
class V1,
class V2,
class E>
friend E _vvminus(
const V1 &rv1,
const V2 &rv2)
301 template <
class V,
class VS,
class E>
friend E _vvsminus(
const V &rv,
const VS &sl)
307 template <
class VS,
class V,
class E>
friend E _vsvminus(
const VS &sl,
const V &rv)
313 template <
class V1,
class V2,
class E>
friend E _vvconv(
const V1 &rv1,
const V2 &rv2)
319 template <
class V,
class VS,
class E>
friend E _vvsconv(
const V &rv,
const VS &sl)
325 template <
class VS1,
class VS2,
class E>
friend E _vsvsconv(
const VS1 &s1,
const VS2 &s2)
331 template <
class V1,
class V2>
friend V1 &_vvconvassign(V1 &rv1,
const V2 &rv2)
337 template <
class V,
class VS>
friend V &_vvsconvassign(V &rv,
const VS &sl)
343 template <
class VS,
class V>
friend VS &_vsvconvassign(VS &sl,
const V &rv)
349 template <
class VS1,
class VS2>
friend VS1 &_vsvsconvassign(VS1 &sl1,
const VS2 &sl2)
355 template <
class V1,
class V2,
class E>
friend E _vvsect(
const V1 &rv1,
const V2 &rv2)
361 template <
class V,
class VS,
class E>
friend E _vvssect(
const V &rv,
const VS &sl)
367 template <
class VS1,
class VS2,
class E>
friend E _vsvssect(
const VS1 &s1,
const VS2 &s2)
373 template <
class V1,
class V2>
friend V1 &_vvsectassign(V1 &rv1,
const V2 &rv2)
379 template <
class V,
class VS>
friend V &_vvssectassign(V &rv,
const VS &sl)
385 template <
class VS,
class V>
friend VS &_vsvsectassign(VS &sl,
const V &rv)
391 template <
class VS1,
class VS2>
friend VS1 &_vsvssectassign(VS1 &sl1,
const VS2 &sl2)
397 template <
class MV1,
class MV2,
class E>
friend E _mvmvsect(
const MV1 &rv1,
const MV2 &rv2)
403 template <
class MV,
class V,
class E>
friend E _mvvsect(
const MV &rv1,
const V &rv2)
409template <
class MV,
class V>
friend MV &_mvvsectassign(MV &v,
const V &rv)
415template <
class V,
class MV>
friend V &_vmvsectassign(V &rv,
const MV &v)
421 template <
class MV1,
class MV2,
class E>
friend E _mvmvconv(
const MV1 &rv1,
const MV2 &rv2)
427 template <
class MV,
class V,
class E>
friend E _mvvconv(
const MV &rv1,
const V &rv2)
433template <
class MV,
class V>
friend MV &_mvvconvassign(MV &v,
const V &rv)
439template <
class V,
class MV>
friend V &_vmvconvassign(V &rv,
const MV &v)
445 template <
class V,
class MV,
class S>
friend S _vmvlimult(
const V &rv1,
const MV &rv2)
452 template <
class V,
class S,
class E>
friend E _vsdiv(
const V &rv,
const S &s)
noexcept;
453 template <
class V,
class S>
friend V &_vsdivassign(V &rv,
const S &r)
noexcept;
454 template <
class VS,
class S,
class E>
friend E _vssdiv(
const VS &sl,
const S &s)
noexcept;
455 template <
class V,
class S,
class E>
friend E _vsmult(
const V &rv,
const S &s)
noexcept;
456 template <
class VS,
class S,
class E>
friend E _vssmult(
const VS &sl,
const S &s)
noexcept;
457 template <
class MV,
class S,
class E>
friend E _mvsmult(
const MV &rv,
const S &s)
noexcept;
458 template <
class MV1,
class MV2,
class E>
friend E _mvmvplus(
const MV1 &rv1,
const MV2 &rv2)
464 template <
class MV,
class V,
class E>
friend E _mvvplus(
const MV &rv1,
const V &rv2)
470 template <
class MV,
class V,
class E>
friend E _mvvminus(
const MV &rv1,
const V &rv2)
476 template <
class V,
class MV,
class E>
friend E _vmvminus(
const V &rv1,
const MV &rv2)
482 template <
class MV1,
class MV2,
class E>
friend E _mvmvminus(
const MV1 &rv1,
const MV2 &rv2)
488template <
class MV,
class V>
friend MV &_mvvplusassign(MV &v,
const V &rv)
494template <
class MV,
class V>
friend MV &_mvvminusassign(MV &v,
const V &rv)
500 template <
class MV,
class S,
class E>
friend E _mvsdiv(
const MV &rv,
const S &s)
noexcept;
501template <
class MV,
class V>
friend MV &_mvvassign(MV &v,
const V &rv)
508 template <
class V1,
class V2>
friend bool _vveq(
const V1 &rv1,
const V2 &rv2)
noexcept;
509 template <
class VS,
class V>
friend bool _vsveq(
const VS &sl,
const V &rv)
noexcept;
510 template <
class V1,
class V2>
friend bool _vvneq(
const V1 &rv1,
const V2 &rv2)
noexcept;
511 template <
class VS,
class V>
friend bool _vsvneq(
const VS &sl,
const V &rv)
noexcept;
512 template <
class V1,
class V2>
friend bool _vvless(
const V1 &rv1,
const V2 &rv2)
noexcept;
513 template <
class VS,
class V>
friend bool _vsvless(
const VS &sl,
const V &rv)
noexcept;
514 template <
class V1,
class V2>
friend bool _vvleq(
const V1 &rv1,
const V2 &rv2)
noexcept;
515 template <
class VS,
class V>
friend bool _vsvleq(
const VS &sl,
const V &rv)
noexcept;
516 template <
class V,
class VS>
friend bool _vvsless(
const V &rv,
const VS &sl)
noexcept;
517 template <
class V,
class VS>
friend bool _vvsleq(
const V &rv,
const VS &sl)
noexcept;
518 template <
class V>
friend bool _vnot(
const V &rv)
noexcept;
519 template <
class V>
friend void *_vvoid(
const V &rv)
noexcept;
520 template <
class VS1,
class VS2>
friend bool _vsvseq(
const VS1 &sl1,
const VS2 &sl2)
noexcept;
521 template <
class VS1,
class VS2>
friend bool _vsvsneq(
const VS1 &sl1,
const VS2 &sl2)
noexcept;
522 template <
class VS1,
class VS2>
friend bool _vsvsless(
const VS1 &sl1,
const VS2 &sl2)
noexcept;
523 template <
class VS1,
class VS2>
friend bool _vsvsleq(
const VS1 &sl1,
const VS2 &sl2)
noexcept;
524 template <
class VS>
friend bool _vsnot(
const VS &sl)
noexcept;
525 template <
class VS>
friend void *_vsvoid(
const VS &sl)
noexcept;
526 template <
class V>
friend std::ostream &_vout(std::ostream &s,
const V &rv)
noexcept;
527 template <
class V>
friend std::istream &_vin(std::istream &s, V &rv)
noexcept;
530template <
class DP,
class V,
class SV>
friend void _vmvaccu(DP &dp,
const V & rv1,
const SV &rv2)
537template <
class V,
class MV2,
class S>
friend V &_vmvassign(V &v,
const MV2 &rv)
noexcept;
538 template <
class M,
class V,
class E>
friend E _mvlimult(
const M &m,
const V &v)
544 template <
class V,
class M,
class E>
friend E _vmlimult(
const V &v,
const M &m)
550 template <
class V,
class M,
class S>
friend V &_vmimultassign(V &v,
const M &m)
556 template <
class V,
class M,
class S>
friend V &_vmlimultassign(V &v,
const M &m)
562 template <
class MS,
class V,
class E>
friend E _msvlimult(
const MS &ms,
const V &v)
568 template <
class V,
class MS,
class E>
friend E _vmslimult(
const V &v,
const MS &ms)
574 template <
class V,
class MS,
class S>
friend V &_vmslimultassign(V &v,
const MS &ms)
582 template <
class DP,
class VS1,
class VS2>
friend void _vsvsaccu(DP &dp,
const VS1 & sl1,
const VS2 &sl2)
612 explicit INLINE
l_ivector(
const int &i)
noexcept;
615 explicit INLINE
l_ivector(
const class index &i)
noexcept;
618 explicit INLINE
l_ivector(
const int &i1,
const int &i2)
825 friend INLINE
int Lb(
const l_ivector &rv)
noexcept {
return rv.l; }
827 friend INLINE
int Ub(
const l_ivector &rv)
noexcept {
return rv.u; }
858 INLINE
operator void*()
noexcept;
881#ifdef _CXSC_FRIEND_TPL
885 template <
class VS1,
class VS2>
friend VS1 & _vsvsassign(VS1 &sl1,
const VS2 &sl2)
891 template <
class V,
class VS,
class S>
friend V & _vvsassign(V &rv,
const VS &sl)
noexcept;
892 template <
class VS,
class V>
friend VS & _vsvassign(VS &sl,
const V &rv)
898 template <
class VS,
class S>
friend VS & _vssassign(VS &sl,
const S &r)
noexcept;
899 template <
class VS,
class V>
friend VS &_vsvsetinf(VS &sl,
const V &rv)
905 template <
class VS,
class V>
friend VS &_vsvsetsup(VS &sl,
const V &rv)
911 template <
class VS1,
class VS2>
friend VS1 &_vsvssetinf(VS1 &sl1,
const VS2 &sl2)
917 template <
class VS1,
class VS2>
friend VS1 &_vsvssetsup(VS1 &sl1,
const VS2 &sl2)
923 template <
class VS,
class V>
friend VS &_vsvusetinf(VS &sl,
const V &rv)
929 template <
class VS,
class V>
friend VS &_vsvusetsup(VS &sl,
const V &rv)
935 template <
class VS1,
class VS2>
friend VS1 &_vsvsusetinf(VS1 &sl1,
const VS2 &sl2)
941 template <
class VS1,
class VS2>
friend VS1 &_vsvsusetsup(VS1 &sl1,
const VS2 &sl2)
948 template <
class VS,
class E>
friend E _vsabs(
const VS &sl)
noexcept;
949 template <
class VS,
class E>
friend E _vsdiam(
const VS &sl)
noexcept;
950 template <
class VS,
class E>
friend E _vsmid(
const VS &sl)
noexcept;
951 template <
class VS,
class E>
friend E _vsinf(
const VS &sl)
noexcept;
952 template <
class VS,
class E>
friend E _vssup(
const VS &sl)
noexcept;
953 template <
class VS,
class S>
friend VS &_vsssetinf(VS &vs,
const S &s)
noexcept;
954 template <
class VS,
class S>
friend VS &_vsssetsup(VS &vs,
const S &s)
noexcept;
955 template <
class VS,
class S>
friend VS &_vssusetinf(VS &vs,
const S &s)
noexcept;
956 template <
class VS,
class S>
friend VS &_vssusetsup(VS &vs,
const S &s)
noexcept;
958 template <
class DP,
class VS,
class V>
friend void _vsvaccu(DP &dp,
const VS & sl,
const V &rv)
964 template <
class DP,
class VS1,
class VS2>
friend void _vsvsaccu(DP &dp,
const VS1 & sl1,
const VS2 &sl2)
971 template <
class VS,
class S,
class E>
friend E _vssdiv(
const VS &sl,
const S &s)
noexcept;
972 template <
class VS,
class S,
class E>
friend E _vssmult(
const VS &sl,
const S &s)
noexcept;
973 template <
class VS,
class V,
class E>
friend E _vsvlimult(
const VS & sl,
const V &rv)
979 template <
class VS,
class S>
friend VS &_vssmultassign(VS &rv,
const S &r)
noexcept;
980 template <
class VS,
class S>
friend VS &_vssdivassign(VS &rv,
const S &r)
noexcept;
981 template <
class V,
class VS,
class E>
friend E _vvsplus(
const V &rv,
const VS &sl)
987 template <
class VS1,
class VS2,
class E>
friend E _vsvsplus(
const VS1 &s1,
const VS2 &s2)
993 template <
class VS1,
class VS2,
class E>
friend E _vsvsminus(
const VS1 &s1,
const VS2 &s2)
999 template <
class V,
class VS>
friend V &_vvsplusassign(V &rv,
const VS &sl)
1000#if(CXSC_INDEX_CHECK)
1005 template <
class VS,
class V>
friend VS &_vsvplusassign(VS &sl,
const V &rv)
1006#if(CXSC_INDEX_CHECK)
1011 template <
class VS1,
class VS2>
friend VS1 &_vsvsplusassign(VS1 &sl1,
const VS2 &sl2)
1012#if(CXSC_INDEX_CHECK)
1017 template <
class VS1,
class VS2>
friend VS1 &_vsvsminusassign(VS1 &sl1,
const VS2 &sl2)
1018#if(CXSC_INDEX_CHECK)
1023 template <
class V,
class VS>
friend V &_vvsminusassign(V &rv,
const VS &sl)
1024#if(CXSC_INDEX_CHECK)
1029 template <
class VS,
class V>
friend VS &_vsvminusassign(VS &sl,
const V &rv)
1030#if(CXSC_INDEX_CHECK)
1035 template <
class VS,
class V>
friend V _vsminus(
const VS &sl)
noexcept;
1036 template <
class V,
class VS,
class E>
friend E _vvsminus(
const V &rv,
const VS &sl)
1037#if(CXSC_INDEX_CHECK)
1042 template <
class VS,
class V,
class E>
friend E _vsvminus(
const VS &sl,
const V &rv)
1043#if(CXSC_INDEX_CHECK)
1048 template <
class V,
class VS,
class E>
friend E _vvssect(
const V &rv,
const VS &sl)
1049#if(CXSC_INDEX_CHECK)
1054 template <
class VS1,
class VS2,
class E>
friend E _vsvssect(
const VS1 &s1,
const VS2 &s2)
1055#if(CXSC_INDEX_CHECK)
1060 template <
class V,
class VS>
friend V &_vvssectassign(V &rv,
const VS &sl)
1061#if(CXSC_INDEX_CHECK)
1066 template <
class VS,
class V>
friend VS &_vsvsectassign(VS &sl,
const V &rv)
1067#if(CXSC_INDEX_CHECK)
1072 template <
class VS1,
class VS2>
friend VS1 &_vsvssectassign(VS1 &sl1,
const VS2 &sl2)
1073#if(CXSC_INDEX_CHECK)
1078 template <
class V,
class VS,
class E>
friend E _vvsconv(
const V &rv,
const VS &sl)
1079#if(CXSC_INDEX_CHECK)
1084 template <
class VS1,
class VS2,
class E>
friend E _vsvsconv(
const VS1 &s1,
const VS2 &s2)
1085#if(CXSC_INDEX_CHECK)
1090 template <
class V,
class VS>
friend V &_vvsconvassign(V &rv,
const VS &sl)
1091#if(CXSC_INDEX_CHECK)
1096 template <
class VS,
class V>
friend VS &_vsvconvassign(VS &sl,
const V &rv)
1097#if(CXSC_INDEX_CHECK)
1102 template <
class VS1,
class VS2>
friend VS1 &_vsvsconvassign(VS1 &sl1,
const VS2 &sl2)
1103#if(CXSC_INDEX_CHECK)
1108 template <
class VS,
class M,
class S>
friend VS &_vsmlimultassign(VS &v,
const M &m)
1109#if(CXSC_INDEX_CHECK)
1115 template <
class VS,
class V>
friend bool _vsveq(
const VS &sl,
const V &rv)
noexcept;
1116 template <
class VS,
class V>
friend bool _vsvneq(
const VS &sl,
const V &rv)
noexcept;
1117 template <
class VS,
class V>
friend bool _vsvless(
const VS &sl,
const V &rv)
noexcept;
1118 template <
class VS,
class V>
friend bool _vsvleq(
const VS &sl,
const V &rv)
noexcept;
1119 template <
class V,
class VS>
friend bool _vvsless(
const V &rv,
const VS &sl)
noexcept;
1120 template <
class V,
class VS>
friend bool _vvsleq(
const V &rv,
const VS &sl)
noexcept;
1121 template <
class VS1,
class VS2,
class E>
friend E _vsvslimult(
const VS1 & sl1,
const VS2 &sl2)
1122#if(CXSC_INDEX_CHECK)
1127 template <
class VS1,
class VS2>
friend bool _vsvseq(
const VS1 &sl1,
const VS2 &sl2)
noexcept;
1128 template <
class VS1,
class VS2>
friend bool _vsvsneq(
const VS1 &sl1,
const VS2 &sl2)
noexcept;
1129 template <
class VS1,
class VS2>
friend bool _vsvsless(
const VS1 &sl1,
const VS2 &sl2)
noexcept;
1130 template <
class VS1,
class VS2>
friend bool _vsvsleq(
const VS1 &sl1,
const VS2 &sl2)
noexcept;
1131 template <
class VS>
friend bool _vsnot(
const VS &sl)
noexcept;
1132 template <
class VS>
friend void *_vsvoid(
const VS &sl)
noexcept;
1133 template <
class V>
friend std::ostream &_vsout(std::ostream &s,
const V &rv)
noexcept;
1134 template <
class V>
friend std::istream &_vsin(std::istream &s, V &rv)
noexcept;
1137 template <
class V,
class MS,
class E>
friend E _vmslimult(
const V &v,
const MS &ms)
1138#if(CXSC_INDEX_CHECK)
1144 template <
class DP,
class V1,
class V2>
friend void _vvaccu(DP &dp,
const V1 & rv1,
const V2 &rv2)
1145#if(CXSC_INDEX_CHECK)
1152 template <
class V1,
class V2,
class S>
friend V1 &_vvassign(V1 &rv1,
const V2 &rv2)
noexcept;
1153 template <
class V,
class S>
friend V & _vsassign(V &rv,
const S &r)
noexcept;
1155template <
class V,
class M,
class S>
friend V &_vmassign(V &v,
const M &m)
1156#if(CXSC_INDEX_CHECK)
1161template <
class M,
class V,
class S>
friend M &_mvassign(M &m,
const V &v)
noexcept;
1162template <
class V,
class MV2,
class S>
friend V &_vmvassign(V &v,
const MV2 &rv)
noexcept;
1164 template <
class V1,
class V2,
class E>
friend E _vvconv(
const V1 &rv1,
const V2 &rv2)
1165#if(CXSC_INDEX_CHECK)
1172 template <
class MV,
class S,
class E>
friend E _mvsmult(
const MV &rv,
const S &s)
noexcept;
1173 template <
class V,
class S,
class E>
friend E _vsmult(
const V &rv,
const S &s)
noexcept;
1174 template <
class V,
class S,
class E>
friend E _vsdiv(
const V &rv,
const S &s)
noexcept;
1175 template <
class V,
class S>
friend V &_vsdivassign(V &rv,
const S &r)
noexcept;
1176 template <
class V,
class S>
friend V &_vsmultassign(V &rv,
const S &r)
noexcept;
1179 template <
class V1,
class V2,
class E>
friend E _vvlimult(
const V1 & rv1,
const V2 &rv2)
1180#if(CXSC_INDEX_CHECK)
1185 template <
class V1,
class V2,
class E>
friend E _vvplus(
const V1 &rv1,
const V2 &rv2)
1186#if(CXSC_INDEX_CHECK)
1191 template <
class V1,
class V2>
friend V1 &_vvplusassign(V1 &rv1,
const V2 &rv2)
1192#if(CXSC_INDEX_CHECK)
1197 template <
class V1,
class V2>
friend V1 &_vvminusassign(V1 &rv1,
const V2 &rv2)
1198#if(CXSC_INDEX_CHECK)
1203 template <
class V1,
class V2,
class E>
friend E _vvminus(
const V1 &rv1,
const V2 &rv2)
1204#if(CXSC_INDEX_CHECK)
1209 template <
class V1,
class V2>
friend V1 &_vvconvassign(V1 &rv1,
const V2 &rv2)
1210#if(CXSC_INDEX_CHECK)
1215 template <
class V1,
class V2,
class E>
friend E _vvsect(
const V1 &rv1,
const V2 &rv2)
1216#if(CXSC_INDEX_CHECK)
1221 template <
class V1,
class V2>
friend V1 &_vvsectassign(V1 &rv1,
const V2 &rv2)
1222#if(CXSC_INDEX_CHECK)
1229template <
class V,
class MS,
class S>
friend void _vmsconstr(V &v,
const MS &m)
1230#if(CXSC_INDEX_CHECK)
1235template <
class V,
class M,
class S>
friend void _vmconstr(V &v,
const M &m)
1236#if(CXSC_INDEX_CHECK)
1241 template <
class M,
class V,
class E>
friend E _mvlimult(
const M &m,
const V &v)
1242#if(CXSC_INDEX_CHECK)
1247 template <
class MS,
class V,
class E>
friend E _msvlimult(
const MS &ms,
const V &v)
1248#if(CXSC_INDEX_CHECK)
1253 template <
class V,
class M,
class E>
friend E _vmlimult(
const V &v,
const M &m)
1254#if(CXSC_INDEX_CHECK)
1259 template <
class V,
class MS,
class S>
friend V &_vmslimultassign(V &v,
const MS &ms)
1260#if(CXSC_INDEX_CHECK)
1265 template <
class V,
class M,
class S>
friend V &_vmlimultassign(V &v,
const M &m)
1266#if(CXSC_INDEX_CHECK)
1315 explicit INLINE
l_ivector_slice(
l_ivector &a,
const int &lb,
const int &ub)
noexcept:dat(a.dat),l(a.l),u(a.u),size(ub-lb+1),start(lb),end(ub) { }
1325#if(CXSC_INDEX_CHECK)
1332#if(CXSC_INDEX_CHECK)
1341#if(CXSC_INDEX_CHECK)
1348#if(CXSC_INDEX_CHECK)
1358#if(CXSC_INDEX_CHECK)
1365#if(CXSC_INDEX_CHECK)
1374#if(CXSC_INDEX_CHECK)
1381#if(CXSC_INDEX_CHECK)
1392#if(CXSC_INDEX_CHECK)
1399#if(CXSC_INDEX_CHECK)
1408#if(CXSC_INDEX_CHECK)
1415#if(CXSC_INDEX_CHECK)
1426#if(CXSC_INDEX_CHECK)
1433#if(CXSC_INDEX_CHECK)
1442#if(CXSC_INDEX_CHECK)
1449#if(CXSC_INDEX_CHECK)
1460#if(CXSC_INDEX_CHECK)
1473#if(CXSC_INDEX_CHECK)
1482#if(CXSC_INDEX_CHECK)
1489#if(CXSC_INDEX_CHECK)
1494 INLINE
operator void*()
noexcept;
1502#if(CXSC_INDEX_CHECK)
1509#if(CXSC_INDEX_CHECK)
1516#if(CXSC_INDEX_CHECK)
1523#if(CXSC_INDEX_CHECK)
1530#if(CXSC_INDEX_CHECK)
1537#if(CXSC_INDEX_CHECK)
1544#if(CXSC_INDEX_CHECK)
1551#if(CXSC_INDEX_CHECK)
1558#if(CXSC_INDEX_CHECK)
1565#if(CXSC_INDEX_CHECK)
1577#if(CXSC_INDEX_CHECK)
1584#if(CXSC_INDEX_CHECK)
1591#if(CXSC_INDEX_CHECK)
1598#if(CXSC_INDEX_CHECK)
1605#if(CXSC_INDEX_CHECK)
1612#if(CXSC_INDEX_CHECK)
1619#if(CXSC_INDEX_CHECK)
1626#if(CXSC_INDEX_CHECK)
1633#if(CXSC_INDEX_CHECK)
1640#if(CXSC_INDEX_CHECK)
1652#if(CXSC_INDEX_CHECK)
1659#if(CXSC_INDEX_CHECK)
1666#if(CXSC_INDEX_CHECK)
1673#if(CXSC_INDEX_CHECK)
1680#if(CXSC_INDEX_CHECK)
1687#if(CXSC_INDEX_CHECK)
1694#if(CXSC_INDEX_CHECK)
1701#if(CXSC_INDEX_CHECK)
1708#if(CXSC_INDEX_CHECK)
1715#if(CXSC_INDEX_CHECK)
1727#if(CXSC_INDEX_CHECK)
1734#if(CXSC_INDEX_CHECK)
1741#if(CXSC_INDEX_CHECK)
1748#if(CXSC_INDEX_CHECK)
1755#if(CXSC_INDEX_CHECK)
1762#if(CXSC_INDEX_CHECK)
1769#if(CXSC_INDEX_CHECK)
1776#if(CXSC_INDEX_CHECK)
1783#if(CXSC_INDEX_CHECK)
1790#if(CXSC_INDEX_CHECK)
1819#if(CXSC_INDEX_CHECK)
1826#if(CXSC_INDEX_CHECK)
1833#if(CXSC_INDEX_CHECK)
1840#if(CXSC_INDEX_CHECK)
1847#if(CXSC_INDEX_CHECK)
1854#if(CXSC_INDEX_CHECK)
1861#if(CXSC_INDEX_CHECK)
1868#if(CXSC_INDEX_CHECK)
1876#if(CXSC_INDEX_CHECK)
1883#if(CXSC_INDEX_CHECK)
1890#if(CXSC_INDEX_CHECK)
1897#if(CXSC_INDEX_CHECK)
1904#if(CXSC_INDEX_CHECK)
1911#if(CXSC_INDEX_CHECK)
1918#if(CXSC_INDEX_CHECK)
1925#if(CXSC_INDEX_CHECK)
1953#if(CXSC_INDEX_CHECK)
1960#if(CXSC_INDEX_CHECK)
1987 INLINE
bool operator !(
const l_ivector &rv)
noexcept;
2119 INLINE std::ostream &operator <<(std::ostream &s,
const l_ivector &rv)
noexcept;
2121 INLINE std::ostream &operator <<(std::ostream &o,
const l_ivector_slice &sl)
noexcept;
2123 INLINE std::istream &operator >>(std::istream &s,
l_ivector &rv)
noexcept;
2125 INLINE std::istream &operator >>(std::istream &s,
l_ivector_slice &rv)
noexcept;
2131#if(CXSC_INDEX_CHECK)
2138#if(CXSC_INDEX_CHECK)
2145#if(CXSC_INDEX_CHECK)
2152#if(CXSC_INDEX_CHECK)
2159#if(CXSC_INDEX_CHECK)
2166#if(CXSC_INDEX_CHECK)
2174#if(CXSC_INDEX_CHECK)
2181#if(CXSC_INDEX_CHECK)
2188#if(CXSC_INDEX_CHECK)
2195#if(CXSC_INDEX_CHECK)
2208#if(CXSC_INDEX_CHECK)
2215#if(CXSC_INDEX_CHECK)
2222#if(CXSC_INDEX_CHECK)
2229#if(CXSC_INDEX_CHECK)
2236#if(CXSC_INDEX_CHECK)
2243#if(CXSC_INDEX_CHECK)
2255#if(CXSC_INDEX_CHECK)
2262#if(CXSC_INDEX_CHECK)
2269#if(CXSC_INDEX_CHECK)
2276#if(CXSC_INDEX_CHECK)
2283#if(CXSC_INDEX_CHECK)
2290#if(CXSC_INDEX_CHECK)
2298#if(CXSC_INDEX_CHECK)
2305#if(CXSC_INDEX_CHECK)
2312#if(CXSC_INDEX_CHECK)
2319#if(CXSC_INDEX_CHECK)
2326#if(CXSC_INDEX_CHECK)
2333#if(CXSC_INDEX_CHECK)
2341#if(CXSC_INDEX_CHECK)
2348#if(CXSC_INDEX_CHECK)
2355#if(CXSC_INDEX_CHECK)
2362#if(CXSC_INDEX_CHECK)
2369#if(CXSC_INDEX_CHECK)
2376#if(CXSC_INDEX_CHECK)
2435#if(CXSC_INDEX_CHECK)
2442#if(CXSC_INDEX_CHECK)
2449#if(CXSC_INDEX_CHECK)
2456#if(CXSC_INDEX_CHECK)
2463#if(CXSC_INDEX_CHECK)
2470#if(CXSC_INDEX_CHECK)
2477#if(CXSC_INDEX_CHECK)
2484#if(CXSC_INDEX_CHECK)
2491#if(CXSC_INDEX_CHECK)
2498#if(CXSC_INDEX_CHECK)
2505#if(CXSC_INDEX_CHECK)
2512#if(CXSC_INDEX_CHECK)
2520#if(CXSC_INDEX_CHECK)
2527#if(CXSC_INDEX_CHECK)
2534#if(CXSC_INDEX_CHECK)
2541#if(CXSC_INDEX_CHECK)
2549#if(CXSC_INDEX_CHECK)
2556#if(CXSC_INDEX_CHECK)
2563#if(CXSC_INDEX_CHECK)
2570#if(CXSC_INDEX_CHECK)
2578#if(CXSC_INDEX_CHECK)
2585#if(CXSC_INDEX_CHECK)
2592#if(CXSC_INDEX_CHECK)
2599#if(CXSC_INDEX_CHECK)
2607#if(CXSC_INDEX_CHECK)
2614#if(CXSC_INDEX_CHECK)
2621#if(CXSC_INDEX_CHECK)
2628#if(CXSC_INDEX_CHECK)
2636#if(CXSC_INDEX_CHECK)
2643#if(CXSC_INDEX_CHECK)
2651#if(CXSC_INDEX_CHECK)
2658#if(CXSC_INDEX_CHECK)
2665#if(CXSC_INDEX_CHECK)
2672#if(CXSC_INDEX_CHECK)
2680#if(CXSC_INDEX_CHECK)
2687#if(CXSC_INDEX_CHECK)
2694#if(CXSC_INDEX_CHECK)
2701#if(CXSC_INDEX_CHECK)
2709#if(CXSC_INDEX_CHECK)
2716#if(CXSC_INDEX_CHECK)
2724#if(CXSC_INDEX_CHECK)
2731#if(CXSC_INDEX_CHECK)
2738#if(CXSC_INDEX_CHECK)
2745#if(CXSC_INDEX_CHECK)
2753#if(CXSC_INDEX_CHECK)
2760#if(CXSC_INDEX_CHECK)
2767#if(CXSC_INDEX_CHECK)
2774#if(CXSC_INDEX_CHECK)
2782#if(CXSC_INDEX_CHECK)
2789#if(CXSC_INDEX_CHECK)
2797#if(CXSC_INDEX_CHECK)
2804#if(CXSC_INDEX_CHECK)
2811#if(CXSC_INDEX_CHECK)
2818#if(CXSC_INDEX_CHECK)
2826#if(CXSC_INDEX_CHECK)
2833#if(CXSC_INDEX_CHECK)
2840#if(CXSC_INDEX_CHECK)
2847#if(CXSC_INDEX_CHECK)
2855#if(CXSC_INDEX_CHECK)
2862#if(CXSC_INDEX_CHECK)
2871#if(CXSC_INDEX_CHECK)
2878#if(CXSC_INDEX_CHECK)
2885#if(CXSC_INDEX_CHECK)
2892#if(CXSC_INDEX_CHECK)
2899#if(CXSC_INDEX_CHECK)
2906#if(CXSC_INDEX_CHECK)
2913#if(CXSC_INDEX_CHECK)
2920#if(CXSC_INDEX_CHECK)
2927#if(CXSC_INDEX_CHECK)
2934#if(CXSC_INDEX_CHECK)
2941#if(CXSC_INDEX_CHECK)
2948#if(CXSC_INDEX_CHECK)
2956#if(CXSC_INDEX_CHECK)
2963#if(CXSC_INDEX_CHECK)
2970#if(CXSC_INDEX_CHECK)
2977#if(CXSC_INDEX_CHECK)
2985#if(CXSC_INDEX_CHECK)
2992#if(CXSC_INDEX_CHECK)
2999#if(CXSC_INDEX_CHECK)
3006#if(CXSC_INDEX_CHECK)
3014#if(CXSC_INDEX_CHECK)
3021#if(CXSC_INDEX_CHECK)
3028#if(CXSC_INDEX_CHECK)
3035#if(CXSC_INDEX_CHECK)
3043#if(CXSC_INDEX_CHECK)
3050#if(CXSC_INDEX_CHECK)
3057#if(CXSC_INDEX_CHECK)
3064#if(CXSC_INDEX_CHECK)
3072#if(CXSC_INDEX_CHECK)
3079#if(CXSC_INDEX_CHECK)
3087#if(CXSC_INDEX_CHECK)
3094#if(CXSC_INDEX_CHECK)
3101#if(CXSC_INDEX_CHECK)
3108#if(CXSC_INDEX_CHECK)
3116#if(CXSC_INDEX_CHECK)
3123#if(CXSC_INDEX_CHECK)
3130#if(CXSC_INDEX_CHECK)
3137#if(CXSC_INDEX_CHECK)
3145#if(CXSC_INDEX_CHECK)
3152#if(CXSC_INDEX_CHECK)
3160#if(CXSC_INDEX_CHECK)
3167#if(CXSC_INDEX_CHECK)
3174#if(CXSC_INDEX_CHECK)
3181#if(CXSC_INDEX_CHECK)
3189#if(CXSC_INDEX_CHECK)
3196#if(CXSC_INDEX_CHECK)
3203#if(CXSC_INDEX_CHECK)
3210#if(CXSC_INDEX_CHECK)
3218#if(CXSC_INDEX_CHECK)
3225#if(CXSC_INDEX_CHECK)
3233#if(CXSC_INDEX_CHECK)
3240#if(CXSC_INDEX_CHECK)
3247#if(CXSC_INDEX_CHECK)
3254#if(CXSC_INDEX_CHECK)
3262#if(CXSC_INDEX_CHECK)
3269#if(CXSC_INDEX_CHECK)
3276#if(CXSC_INDEX_CHECK)
3283#if(CXSC_INDEX_CHECK)
3291#if(CXSC_INDEX_CHECK)
3298#if(CXSC_INDEX_CHECK)
3308#if(CXSC_INDEX_CHECK)
3315#if(CXSC_INDEX_CHECK)
3322#if(CXSC_INDEX_CHECK)
3329#if(CXSC_INDEX_CHECK)
3336#if(CXSC_INDEX_CHECK)
3343#if(CXSC_INDEX_CHECK)
3350#if(CXSC_INDEX_CHECK)
3357#if(CXSC_INDEX_CHECK)
3364#if(CXSC_INDEX_CHECK)
3371#if(CXSC_INDEX_CHECK)
3378#if(CXSC_INDEX_CHECK)
3385#if(CXSC_INDEX_CHECK)
3393#if(CXSC_INDEX_CHECK)
3400#if(CXSC_INDEX_CHECK)
3407#if(CXSC_INDEX_CHECK)
3414#if(CXSC_INDEX_CHECK)
3422#if(CXSC_INDEX_CHECK)
3429#if(CXSC_INDEX_CHECK)
3436#if(CXSC_INDEX_CHECK)
3443#if(CXSC_INDEX_CHECK)
3451#if(CXSC_INDEX_CHECK)
3458#if(CXSC_INDEX_CHECK)
3465#if(CXSC_INDEX_CHECK)
3472#if(CXSC_INDEX_CHECK)
3480#if(CXSC_INDEX_CHECK)
3487#if(CXSC_INDEX_CHECK)
3494#if(CXSC_INDEX_CHECK)
3501#if(CXSC_INDEX_CHECK)
3509#if(CXSC_INDEX_CHECK)
3516#if(CXSC_INDEX_CHECK)
3524#if(CXSC_INDEX_CHECK)
3531#if(CXSC_INDEX_CHECK)
3538#if(CXSC_INDEX_CHECK)
3545#if(CXSC_INDEX_CHECK)
3553#if(CXSC_INDEX_CHECK)
3560#if(CXSC_INDEX_CHECK)
3567#if(CXSC_INDEX_CHECK)
3574#if(CXSC_INDEX_CHECK)
3582#if(CXSC_INDEX_CHECK)
3589#if(CXSC_INDEX_CHECK)
3597#if(CXSC_INDEX_CHECK)
3604#if(CXSC_INDEX_CHECK)
3611#if(CXSC_INDEX_CHECK)
3618#if(CXSC_INDEX_CHECK)
3626#if(CXSC_INDEX_CHECK)
3633#if(CXSC_INDEX_CHECK)
3640#if(CXSC_INDEX_CHECK)
3647#if(CXSC_INDEX_CHECK)
3655#if(CXSC_INDEX_CHECK)
3662#if(CXSC_INDEX_CHECK)
3670#if(CXSC_INDEX_CHECK)
3677#if(CXSC_INDEX_CHECK)
3684#if(CXSC_INDEX_CHECK)
3691#if(CXSC_INDEX_CHECK)
3699#if(CXSC_INDEX_CHECK)
3706#if(CXSC_INDEX_CHECK)
3713#if(CXSC_INDEX_CHECK)
3720#if(CXSC_INDEX_CHECK)
3728#if(CXSC_INDEX_CHECK)
3735#if(CXSC_INDEX_CHECK)
3744#if(CXSC_INDEX_CHECK)
3751#if(CXSC_INDEX_CHECK)
3758#if(CXSC_INDEX_CHECK)
3765#if(CXSC_INDEX_CHECK)
3772#if(CXSC_INDEX_CHECK)
3779#if(CXSC_INDEX_CHECK)
3786#if(CXSC_INDEX_CHECK)
3793#if(CXSC_INDEX_CHECK)
3802#if(CXSC_INDEX_CHECK)
3809#if(CXSC_INDEX_CHECK)
3816#if(CXSC_INDEX_CHECK)
3823#if(CXSC_INDEX_CHECK)
3835#if(CXSC_INDEX_CHECK)
3842#if(CXSC_INDEX_CHECK)
3849#if(CXSC_INDEX_CHECK)
3856#if(CXSC_INDEX_CHECK)
3864#if(CXSC_INDEX_CHECK)
3871#if(CXSC_INDEX_CHECK)
3878#if(CXSC_INDEX_CHECK)
3885#if(CXSC_INDEX_CHECK)
3894#if(CXSC_INDEX_CHECK)
3901#if(CXSC_INDEX_CHECK)
3908#if(CXSC_INDEX_CHECK)
3915#if(CXSC_INDEX_CHECK)
3923#if(CXSC_INDEX_CHECK)
3930#if(CXSC_INDEX_CHECK)
3937#if(CXSC_INDEX_CHECK)
3944#if(CXSC_INDEX_CHECK)
3953#if(CXSC_INDEX_CHECK)
3960#if(CXSC_INDEX_CHECK)
3967#if(CXSC_INDEX_CHECK)
3974#if(CXSC_INDEX_CHECK)
3982#if(CXSC_INDEX_CHECK)
3989#if(CXSC_INDEX_CHECK)
3996#if(CXSC_INDEX_CHECK)
4003#if(CXSC_INDEX_CHECK)
4011#if(CXSC_INDEX_CHECK)
4018#if(CXSC_INDEX_CHECK)
4025#if(CXSC_INDEX_CHECK)
4032#if(CXSC_INDEX_CHECK)
4040#if(CXSC_INDEX_CHECK)
4047#if(CXSC_INDEX_CHECK)
4054#if(CXSC_INDEX_CHECK)
4061#if(CXSC_INDEX_CHECK)
4069#ifdef _CXSC_INCL_INL
4070#include "vector.inl"
4071#include "l_ivector.inl"
4074#ifdef _CXSC_RMATRIX_HPP_INCLUDED
4075# ifdef _CXSC_INCL_INL
4076# include "livecrmat.inl"
4078# include "livecrmat.hpp"
4082#ifdef _CXSC_LRMATRIX_HPP_INCLUDED
4083# ifdef _CXSC_INCL_INL
4084# include "liveclrmat.inl"
4086# include "liveclrmat.hpp"
4090#ifdef _CXSC_IMATRIX_HPP_INCLUDED
4091# ifdef _CXSC_INCL_INL
4092# include "livecimat.inl"
4094# include "livecimat.hpp"
The Data Type idotprecision.
The Data Type imatrix_slice.
The Data Type imatrix_subv.
The Scalar Type interval.
The Data Type ivector_slice.
The Multiple-Precision Data Type l_imatrix_slice.
The Multiple-Precision Data Type l_imatrix_subv.
The Multiple-Precision Data Type l_imatrix.
The Multiple-Precision Data Type l_interval.
l_interval() noexcept
Constructor of class l_interval.
The Multiple-Precision Data Type l_ivector_slice.
l_ivector_slice & operator=(const l_ivector_slice &sl) noexcept
Implementation of standard assigning operator.
l_ivector_slice & operator-=(const l_ivector &rv) noexcept
Implementation of subtraction and allocation operation.
l_ivector_slice(l_ivector &a, const int &lb, const int &ub) noexcept
Constructor of class l_ivector_slice.
l_ivector_slice & operator()() noexcept
Operator for accessing the whole vector.
l_ivector_slice(l_ivector_slice &a, const int &lb, const int &ub) noexcept
Constructor of class l_ivector_slice.
friend int Lb(const l_ivector_slice &sl) noexcept
Returns the lower bound of the vector.
l_ivector_slice(const l_ivector_slice &a) noexcept
Constructor of class l_ivector_slice.
l_ivector_slice & operator|=(const l_ivector &rv) noexcept
Allocates the convex hull of the arguments to the first argument.
l_ivector_slice & operator*=(const l_interval &r) noexcept
Implementation of multiplication and allocation operation.
l_ivector_slice & operator&=(const l_ivector &rv) noexcept
Allocates the intersection of the arguments to the first argument.
l_ivector_slice & operator/=(const l_interval &r) noexcept
Implementation of division and allocation operation.
l_ivector_slice & operator+=(const l_ivector &rv) noexcept
Implementation of addition and allocation operation.
friend int Ub(const l_ivector_slice &sl) noexcept
Returns the upper bound of the vector.
friend int VecLen(const l_ivector_slice &sl) noexcept
Returns the dimension of the vector.
l_interval & operator[](const int &i) const noexcept
Operator for accessing the single elements of the vector.
The Multiple-Precision Data Type l_ivector.
l_ivector & operator()() noexcept
Operator for accessing the whole vector.
l_ivector() noexcept
Constructor of class l_ivector.
l_interval & operator[](const int &i) const noexcept
Operator for accessing the single elements of the vector.
friend int Lb(const l_ivector &rv) noexcept
Returns the lower bound of the vector.
friend l_ivector & SetUb(l_ivector &rv, const int &u) noexcept
Sets the upper bound of the vector.
l_ivector & operator=(const l_ivector &rv) noexcept
Implementation of standard assigning operator.
friend l_ivector & SetLb(l_ivector &rv, const int &l) noexcept
Sets the lower bound of the vector.
friend int Ub(const l_ivector &rv) noexcept
Returns the upper bound of the vector.
friend int VecLen(const l_ivector &rv) noexcept
Returns the dimension of the vector.
The Multiple-Precision Data Type l_real.
The Multiple-Precision Data Type l_rmatrix_slice.
The Multiple-Precision Data Type l_rmatrix_subv.
The Multiple-Precision Data Type l_rmatrix.
The Multiple-Precision Data Type l_rvector_slice.
The Multiple-Precision Data Type l_rvector.
The Data Type rmatrix_slice.
The Data Type rmatrix_subv.
The Data Type rvector_slice.
The namespace cxsc, providing all functionality of the class library C-XSC.
cdotprecision & operator+=(cdotprecision &cd, const l_complex &lc) noexcept
Implementation of standard algebraic addition and allocation operation.
civector operator/(const cimatrix_subv &rv, const cinterval &s) noexcept
Implementation of division operation.
cvector diam(const cimatrix_subv &mv) noexcept
Returns the diameter of the matrix.
l_ivector _l_ivector(const l_interval &r) noexcept
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
cimatrix & operator*=(cimatrix &m, const cinterval &c) noexcept
Implementation of multiplication and allocation operation.
ivector abs(const cimatrix_subv &mv) noexcept
Returns the absolute value of the matrix.
cvector mid(const cimatrix_subv &mv) noexcept
Returns the middle of the matrix.
civector operator*(const cimatrix_subv &rv, const cinterval &s) noexcept
Implementation of multiplication operation.
void Resize(cimatrix &A) noexcept
Resizes the matrix.
cimatrix_subv & SetUncheckedInf(cimatrix_subv &iv, const complex &r) noexcept
Returns the matrix with the new unchecked given infimum value.
cimatrix & operator/=(cimatrix &m, const cinterval &c) noexcept
Implementation of division and allocation operation.