26 #ifndef _CXSC_LIMATRIX_HPP_INCLUDED 27 #define _CXSC_LIMATRIX_HPP_INCLUDED 29 #include "xscclass.hpp" 31 #include "l_ivector.hpp" 34 #include "imatrix.hpp" 35 #include "l_rmatrix.hpp" 40 class l_imatrix_slice;
54 int size,start,offset;
60 throw(ERROR_LIMATRIX_ROW_OR_COL_NOT_IN_MAT);
67 throw(ERROR_LIMATRIX_ROW_OR_COL_NOT_IN_MAT);
74 throw(ERROR_LIMATRIX_ROW_OR_COL_NOT_IN_MAT);
81 throw(ERROR_LIMATRIX_ROW_OR_COL_NOT_IN_MAT);
86 #ifdef _CXSC_FRIEND_TPL 88 template <
class MV1,
class MV2>
friend MV1 &_mvmvassign(MV1 &v,
const MV2 &rv)
90 throw(ERROR__OP_WITH_WRONG_DIM<MV1>);
94 template <
class MV,
class S>
friend MV &_mvsassign(MV &v,
const S &r)
throw();
95 template <
class MV,
class V>
friend MV &_mvvassign(MV &v,
const V &rv)
97 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
101 template <
class V,
class MV2,
class S>
friend V &_vmvassign(V &v,
const MV2 &rv)
throw();
102 template <
class MV,
class V>
friend MV &_mvvsetinf(MV &v,
const V &rv)
103 #if(CXSC_INDEX_CHECK) 104 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
108 template <
class MV,
class V>
friend MV &_mvvsetsup(MV &v,
const V &rv)
109 #if(CXSC_INDEX_CHECK) 110 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
114 template <
class MV,
class V>
friend MV &_mvvusetinf(MV &v,
const V &rv)
115 #if(CXSC_INDEX_CHECK) 116 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
120 template <
class MV,
class V>
friend MV &_mvvusetsup(MV &v,
const V &rv)
121 #if(CXSC_INDEX_CHECK) 122 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
126 template <
class MV,
class V>
friend MV &_mvvsetre(MV &v,
const V &rv)
127 #if(CXSC_INDEX_CHECK) 128 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
132 template <
class MV,
class V>
friend MV &_mvvsetim(MV &v,
const V &rv)
133 #if(CXSC_INDEX_CHECK) 134 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
138 template <
class MV,
class V>
friend V _mvabs(
const MV &mv)
throw();
139 template <
class MV,
class V>
friend V _mvdiam(
const MV &mv)
throw();
140 template <
class MV,
class V>
friend V _mvmid(
const MV &mv)
throw();
141 template <
class MV,
class V>
friend V _mvinf(
const MV &mv)
throw();
142 template <
class MV,
class V>
friend V _mvsup(
const MV &mv)
throw();
144 template <
class MV,
class S>
friend MV &_mvssetinf(MV &mv,
const S &s)
throw();
145 template <
class MV,
class S>
friend MV &_mvssetsup(MV &mv,
const S &s)
throw();
146 template <
class MV,
class S>
friend MV &_mvsusetinf(MV &mv,
const S &s)
throw();
147 template <
class MV,
class S>
friend MV &_mvsusetsup(MV &mv,
const S &s)
throw();
149 template <
class DP,
class V,
class SV>
friend void _vmvaccu(DP &dp,
const V & rv1,
const SV &rv2)
150 #if(CXSC_INDEX_CHECK) 151 throw(OP_WITH_WRONG_DIM);
155 template <
class DP,
class MV1,
class MV2>
friend void _mvmvaccu(DP &dp,
const MV1 & rv1,
const MV2 &rv2)
156 #if(CXSC_INDEX_CHECK) 157 throw(OP_WITH_WRONG_DIM);
161 template <
class MV1,
class MV2,
class S>
friend S _mvmvlimult(
const MV1 & rv1,
const MV2 &rv2)
162 #if(CXSC_INDEX_CHECK) 163 throw(ERROR__OP_WITH_WRONG_DIM<MV1>);
167 template <
class V,
class MV,
class S>
friend S _vmvlimult(
const V &rv1,
const MV &rv2)
168 #if(CXSC_INDEX_CHECK) 169 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
173 template <
class MV,
class S,
class E>
friend E _mvsmult(
const MV &rv,
const S &s)
throw();
174 template <
class MV1,
class MV2,
class E>
friend E _mvmvplus(
const MV1 &rv1,
const MV2 &rv2)
175 #if(CXSC_INDEX_CHECK) 176 throw(ERROR__OP_WITH_WRONG_DIM<E>);
180 template <
class MV1,
class MV2,
class E>
friend E _mvmvminus(
const MV1 &rv1,
const MV2 &rv2)
181 #if(CXSC_INDEX_CHECK) 182 throw(ERROR__OP_WITH_WRONG_DIM<E>);
186 template <
class MV,
class V,
class E>
friend E _mvvplus(
const MV &rv1,
const V &rv2)
187 #if(CXSC_INDEX_CHECK) 188 throw(ERROR__OP_WITH_WRONG_DIM<E>);
192 template <
class MV,
class V,
class E>
friend E _mvvminus(
const MV &rv1,
const V &rv2)
193 #if(CXSC_INDEX_CHECK) 194 throw(ERROR__OP_WITH_WRONG_DIM<E>);
198 template <
class V,
class MV,
class E>
friend E _vmvminus(
const V &rv1,
const MV &rv2)
199 #if(CXSC_INDEX_CHECK) 200 throw(ERROR__OP_WITH_WRONG_DIM<E>);
204 template <
class MV,
class S,
class E>
friend E _mvsdiv(
const MV &rv,
const S &s)
throw();
205 template <
class MV,
class S>
friend MV &_mvsmultassign(MV &v,
const S &r)
throw();
206 template <
class MV,
class S>
friend MV &_mvsplusassign(MV &v,
const S &r)
throw();
207 template <
class MV,
class S>
friend MV &_mvsminusassign(MV &v,
const S &r)
throw();
208 template <
class MV,
class S>
friend MV &_mvsdivassign(MV &v,
const S &r)
throw();
209 template <
class MV,
class V>
friend MV &_mvvplusassign(MV &v,
const V &rv)
210 #if(CXSC_INDEX_CHECK) 211 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
215 template <
class V,
class MV>
friend V &_vmvplusassign(V &rv,
const MV &v)
216 #if(CXSC_INDEX_CHECK) 217 throw(ERROR__OP_WITH_WRONG_DIM<V>);
221 template <
class MV,
class V>
friend MV &_mvvminusassign(MV &v,
const V &rv)
222 #if(CXSC_INDEX_CHECK) 223 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
227 template <
class V,
class MV>
friend V &_vmvminusassign(V &rv,
const MV &v)
228 #if(CXSC_INDEX_CHECK) 229 throw(ERROR__OP_WITH_WRONG_DIM<V>);
233 template <
class MV1,
class MV2,
class E>
friend E _mvmvconv(
const MV1 &rv1,
const MV2 &rv2)
234 #if(CXSC_INDEX_CHECK) 235 throw(ERROR__OP_WITH_WRONG_DIM<E>);
239 template <
class MV,
class V,
class E>
friend E _mvvconv(
const MV &rv1,
const V &rv2)
240 #if(CXSC_INDEX_CHECK) 241 throw(ERROR__OP_WITH_WRONG_DIM<E>);
245 template <
class MV,
class V>
friend MV &_mvvconvassign(MV &v,
const V &rv)
246 #if(CXSC_INDEX_CHECK) 247 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
251 template <
class MV1,
class MV2,
class E>
friend E _mvmvsect(
const MV1 &rv1,
const MV2 &rv2)
252 #if(CXSC_INDEX_CHECK) 253 throw(ERROR__OP_WITH_WRONG_DIM<E>);
257 template <
class MV,
class V,
class E>
friend E _mvvsect(
const MV &rv1,
const V &rv2)
258 #if(CXSC_INDEX_CHECK) 259 throw(ERROR__OP_WITH_WRONG_DIM<E>);
263 template <
class MV,
class V>
friend MV &_mvvsectassign(MV &v,
const V &rv)
264 #if(CXSC_INDEX_CHECK) 265 throw(ERROR__OP_WITH_WRONG_DIM<MV>);
269 template <
class V,
class MV>
friend V &_vmvsectassign(V &rv,
const MV &v)
270 #if(CXSC_INDEX_CHECK) 271 throw(ERROR__OP_WITH_WRONG_DIM<V>);
282 explicit INLINE
l_imatrix_subv (
l_interval *d,
const int &l,
const int &u,
const int &s,
const int &st,
const int &o)
throw():dat(d),lb(l),ub(u),size(s),start(st),offset(o) { }
296 #if(CXSC_INDEX_CHECK) 297 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ);
303 #if(CXSC_INDEX_CHECK) 304 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ);
310 #if(CXSC_INDEX_CHECK) 311 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
317 #if(CXSC_INDEX_CHECK) 318 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
327 #if(CXSC_INDEX_CHECK) 328 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ);
334 #if(CXSC_INDEX_CHECK) 335 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ);
341 #if(CXSC_INDEX_CHECK) 342 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
348 #if(CXSC_INDEX_CHECK) 349 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
361 #if(CXSC_INDEX_CHECK) 362 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ);
368 #if(CXSC_INDEX_CHECK) 369 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ);
375 #if(CXSC_INDEX_CHECK) 376 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
382 #if(CXSC_INDEX_CHECK) 383 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
395 #if(CXSC_INDEX_CHECK) 396 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ);
402 #if(CXSC_INDEX_CHECK) 403 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ);
409 #if(CXSC_INDEX_CHECK) 410 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
416 #if(CXSC_INDEX_CHECK) 417 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
430 #if(CXSC_INDEX_CHECK) 431 throw(ERROR_LIVECTOR_ELEMENT_NOT_IN_VEC);
439 #if(CXSC_INDEX_CHECK) 440 throw(ERROR_LIVECTOR_SUB_ARRAY_TOO_BIG);
446 #if(CXSC_INDEX_CHECK) 447 throw(ERROR_LIVECTOR_SUB_ARRAY_TOO_BIG);
462 #if(CXSC_INDEX_CHECK) 463 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
469 #if(CXSC_INDEX_CHECK) 470 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
476 #if(CXSC_INDEX_CHECK) 477 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
483 #if(CXSC_INDEX_CHECK) 484 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
490 #if(CXSC_INDEX_CHECK) 491 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
497 #if(CXSC_INDEX_CHECK) 498 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
504 #if(CXSC_INDEX_CHECK) 505 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
511 #if(CXSC_INDEX_CHECK) 512 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
527 #if(CXSC_INDEX_CHECK) 528 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
534 #if(CXSC_INDEX_CHECK) 535 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
541 #if(CXSC_INDEX_CHECK) 542 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
548 #if(CXSC_INDEX_CHECK) 549 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
555 #if(CXSC_INDEX_CHECK) 556 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
562 #if(CXSC_INDEX_CHECK) 563 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
569 #if(CXSC_INDEX_CHECK) 570 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
576 #if(CXSC_INDEX_CHECK) 577 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
592 #if(CXSC_INDEX_CHECK) 593 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
599 #if(CXSC_INDEX_CHECK) 600 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
606 #if(CXSC_INDEX_CHECK) 607 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
613 #if(CXSC_INDEX_CHECK) 614 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
620 #if(CXSC_INDEX_CHECK) 621 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
627 #if(CXSC_INDEX_CHECK) 628 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
634 #if(CXSC_INDEX_CHECK) 635 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
641 #if(CXSC_INDEX_CHECK) 642 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
657 #if(CXSC_INDEX_CHECK) 658 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
664 #if(CXSC_INDEX_CHECK) 665 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
671 #if(CXSC_INDEX_CHECK) 672 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
678 #if(CXSC_INDEX_CHECK) 679 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
685 #if(CXSC_INDEX_CHECK) 686 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
692 #if(CXSC_INDEX_CHECK) 693 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
699 #if(CXSC_INDEX_CHECK) 700 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
706 #if(CXSC_INDEX_CHECK) 707 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
719 class l_imatrix_slice;
731 int lb1,ub1,lb2,ub2,xsize,ysize;
735 #ifdef _CXSC_FRIEND_TPL 737 template <
class S,
class M>
friend void _smconstr(S &s,
const M &m)
738 #if(CXSC_INDEX_CHECK) 739 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>,ERROR__USE_OF_UNINITIALIZED_OBJ<M>);
743 template <
class V,
class M,
class S>
friend void _vmconstr(V &v,
const M &m)
744 #if(CXSC_INDEX_CHECK) 745 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>);
749 template <
class M1,
class M2,
class S>
friend M1 &_mmassign(M1 &m1,
const M2 &m,S ms)
throw();
750 template <
class M,
class MS2,
class S>
friend M &_mmsassign(M &m,
const MS2 &ms)
throw();
751 template <
class MS,
class M>
friend MS &_msmassign(MS &ms,
const M &m)
752 #if(CXSC_INDEX_CHECK) 753 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
757 template <
class M,
class S>
friend M &_msassign(M &m,
const S &r)
throw();
758 template <
class V,
class M,
class S>
friend V &_vmassign(V &v,
const M &m)
759 #if(CXSC_INDEX_CHECK) 760 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<M>);
764 template <
class M,
class V,
class S>
friend M &_mvassign(M &m,
const V &v)
throw();
765 template <
class M>
friend int _mlb(
const M &m,
const int &i)
766 #if(CXSC_INDEX_CHECK) 767 throw(ERROR__WRONG_ROW_OR_COL<M>);
771 template <
class M>
friend int _mub(
const M &m,
const int &i)
772 #if(CXSC_INDEX_CHECK) 773 throw(ERROR__WRONG_ROW_OR_COL<M>);
777 template <
class M>
friend M &_msetlb(M &m,
const int &i,
const int &j)
778 #if(CXSC_INDEX_CHECK) 779 throw(ERROR__WRONG_ROW_OR_COL<M>);
783 template <
class M>
friend M &_msetub(M &m,
const int &i,
const int &j)
784 #if(CXSC_INDEX_CHECK) 785 throw(ERROR__WRONG_ROW_OR_COL<M>);
789 template <
class M>
friend void _mresize(M &A)
throw();
790 template <
class M,
class S>
friend void _mresize(M &A,
const int &m,
const int &n)
791 #if(CXSC_INDEX_CHECK) 792 throw(ERROR__WRONG_BOUNDARIES<M>);
796 template <
class M,
class S>
friend void _mresize(M &A,
const int &m1,
const int &m2,
const int &n1,
const int &n2)
797 #if(CXSC_INDEX_CHECK) 798 throw(ERROR__WRONG_BOUNDARIES<M>);
802 template <
class M,
class E>
friend E _mabs(
const M &m)
throw();
803 template <
class MS,
class E>
friend E _msabs(
const MS &ms)
throw();
804 template <
class M,
class E>
friend E _mdiam(
const M &m)
throw();
805 template <
class M,
class E>
friend E _mmid(
const M &m)
throw();
806 template <
class M,
class E>
friend E _minf(
const M &m)
throw();
807 template <
class M,
class E>
friend E _msup(
const M &m)
throw();
808 template <
class M1,
class M2>
friend M1 &_mmsetinf(M1 &m1,
const M2 &m2)
809 #if(CXSC_INDEX_CHECK) 810 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
814 template <
class M1,
class M2>
friend M1 &_mmsetsup(M1 &m1,
const M2 &m2)
815 #if(CXSC_INDEX_CHECK) 816 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
820 template <
class M1,
class MS2>
friend M1 &_mmssetinf(M1 &m1,
const MS2 &ms2)
821 #if(CXSC_INDEX_CHECK) 822 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
826 template <
class M1,
class MS2>
friend M1 &_mmssetsup(M1 &m1,
const MS2 &ms2)
827 #if(CXSC_INDEX_CHECK) 828 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
832 template <
class M1,
class M2>
friend M1 &_mmusetinf(M1 &m1,
const M2 &m2)
833 #if(CXSC_INDEX_CHECK) 834 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
838 template <
class M1,
class M2>
friend M1 &_mmusetsup(M1 &m1,
const M2 &m2)
839 #if(CXSC_INDEX_CHECK) 840 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
844 template <
class M1,
class MS2>
friend M1 &_mmsusetinf(M1 &m1,
const MS2 &ms2)
845 #if(CXSC_INDEX_CHECK) 846 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
850 template <
class M1,
class MS2>
friend M1 &_mmsusetsup(M1 &m1,
const MS2 &ms2)
851 #if(CXSC_INDEX_CHECK) 852 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
857 template <
class M1,
class M2,
class E>
friend E _mmplus(
const M1 &m1,
const M2 &m2)
858 #if(CXSC_INDEX_CHECK) 859 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
863 template <
class M,
class MS,
class E>
friend E _mmsplus(
const M &m,
const MS &ms)
864 #if(CXSC_INDEX_CHECK) 865 throw(ERROR__OP_WITH_WRONG_DIM<M>);
869 template <
class M>
friend M _mminus(
const M &m)
throw();
870 template <
class MS,
class E>
friend E _msminus(
const MS &ms)
throw();
871 template <
class M1,
class M2,
class E>
friend E _mmminus(
const M1 &m1,
const M2 &m2)
872 #if(CXSC_INDEX_CHECK) 873 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
877 template <
class M1,
class M2>
friend M1 &_mmplusassign(M1 &m1,
const M2 &m2)
878 #if(CXSC_INDEX_CHECK) 879 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
883 template <
class M,
class MS>
friend M &_mmsplusassign(M &m1,
const MS &ms)
884 #if(CXSC_INDEX_CHECK) 885 throw(ERROR__OP_WITH_WRONG_DIM<M>);
889 template <
class MS,
class M>
friend MS &_msmplusassign(MS &ms,
const M &m1)
890 #if(CXSC_INDEX_CHECK) 891 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
895 template <
class MS1,
class MS2,
class E>
friend E _msmsplus(
const MS1 &m1,
const MS2 &m2)
896 #if(CXSC_INDEX_CHECK) 897 throw(ERROR__OP_WITH_WRONG_DIM<E>);
901 template <
class M,
class MS,
class E>
friend E _mmsminus(
const M &m,
const MS &ms)
902 #if(CXSC_INDEX_CHECK) 903 throw(ERROR__OP_WITH_WRONG_DIM<E>);
907 template <
class MS,
class M,
class E>
friend E _msmminus(
const MS &ms,
const M &m)
908 #if(CXSC_INDEX_CHECK) 909 throw(ERROR__OP_WITH_WRONG_DIM<E>);
913 template <
class MS1,
class MS2,
class E>
friend E _msmsminus(
const MS1 &ms1,
const MS2 &ms2)
914 #if(CXSC_INDEX_CHECK) 915 throw(ERROR__OP_WITH_WRONG_DIM<E>);
919 template <
class M1,
class M2>
friend M1 &_mmminusassign(M1 &m1,
const M2 &m2)
920 #if(CXSC_INDEX_CHECK) 921 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
925 template <
class M,
class MS>
friend M &_mmsminusassign(M &m1,
const MS &ms)
926 #if(CXSC_INDEX_CHECK) 927 throw(ERROR__OP_WITH_WRONG_DIM<M>);
931 template <
class MS,
class M>
friend MS &_msmminusassign(MS &ms,
const M &m1)
932 #if(CXSC_INDEX_CHECK) 933 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
937 template <
class M1,
class M2,
class E>
friend E _mmlimult(
const M1 &m1,
const M2 &m2)
938 #if(CXSC_INDEX_CHECK) 939 throw(ERROR__OP_WITH_WRONG_DIM<E>);
943 template <
class M1,
class M2,
class S>
friend M1 &_mmlimultassign(M1 &m1,
const M2 &m2)
944 #if(CXSC_INDEX_CHECK) 945 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
949 template <
class M,
class MS,
class E>
friend E _mmslimult(
const M &m1,
const MS &ms)
950 #if(CXSC_INDEX_CHECK) 951 throw(ERROR__OP_WITH_WRONG_DIM<E>);
955 template <
class MS,
class M,
class E>
friend E _msmlimult(
const MS &ms,
const M &m2)
956 #if(CXSC_INDEX_CHECK) 957 throw(ERROR__OP_WITH_WRONG_DIM<E>);
961 template <
class M,
class MS,
class S>
friend M &_mmslimultassign(M &m1,
const MS &ms)
962 #if(CXSC_INDEX_CHECK) 963 throw(ERROR__OP_WITH_WRONG_DIM<M>);
967 template <
class MS1,
class MS2,
class E>
friend E _msmslimult(
const MS1 &ms1,
const MS2 &ms2)
968 #if(CXSC_INDEX_CHECK) 969 throw(ERROR__OP_WITH_WRONG_DIM<E>);
973 template <
class M1,
class M2,
class E>
friend E _mmconv(
const M1 &m1,
const M2 &m2)
974 #if(CXSC_INDEX_CHECK) 975 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
979 template <
class M,
class MS,
class E>
friend E _mmsconv(
const M &m,
const MS &ms)
980 #if(CXSC_INDEX_CHECK) 981 throw(ERROR__OP_WITH_WRONG_DIM<M>);
985 template <
class M1,
class M2>
friend M1 &_mmconvassign(M1 &m1,
const M2 &m2)
986 #if(CXSC_INDEX_CHECK) 987 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
991 template <
class M,
class MS>
friend M &_mmsconvassign(M &m1,
const MS &ms)
992 #if(CXSC_INDEX_CHECK) 993 throw(ERROR__OP_WITH_WRONG_DIM<M>);
997 template <
class MS,
class M>
friend MS &_msmconvassign(MS &ms,
const M &m1)
998 #if(CXSC_INDEX_CHECK) 999 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1003 template <
class MS1,
class MS2,
class E>
friend E _msmsconv(
const MS1 &m1,
const MS2 &m2)
1004 #if(CXSC_INDEX_CHECK) 1005 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1009 template <
class M1,
class M2,
class E>
friend E _mmsect(
const M1 &m1,
const M2 &m2)
1010 #if(CXSC_INDEX_CHECK) 1011 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
1015 template <
class M,
class MS,
class E>
friend E _mmssect(
const M &m,
const MS &ms)
1016 #if(CXSC_INDEX_CHECK) 1017 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1021 template <
class M1,
class M2>
friend M1 &_mmsectassign(M1 &m1,
const M2 &m2)
1022 #if(CXSC_INDEX_CHECK) 1023 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
1027 template <
class M,
class MS>
friend M &_mmssectassign(M &m1,
const MS &ms)
1028 #if(CXSC_INDEX_CHECK) 1029 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1033 template <
class MS,
class M>
friend MS &_msmsectassign(MS &ms,
const M &m1)
1034 #if(CXSC_INDEX_CHECK) 1035 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1039 template <
class MS1,
class MS2,
class E>
friend E _msmssect(
const MS1 &m1,
const MS2 &m2)
1040 #if(CXSC_INDEX_CHECK) 1041 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1046 template <
class S,
class M,
class E>
friend E _smmult(
const S &c,
const M &m)
throw();
1047 template <
class M,
class S>
friend M &_msmultassign(M &m,
const S &c)
throw();
1048 template <
class S,
class MS,
class E>
friend E _smsmult(
const S &c,
const MS &ms)
throw();
1049 template <
class M,
class S,
class E>
friend E _msdiv(
const M &m,
const S &c)
throw();
1050 template <
class M,
class S>
friend M &_msdivassign(M &m,
const S &c)
throw();
1051 template <
class MS,
class S,
class E>
friend E _mssdiv(
const MS &ms,
const S &c)
throw();
1053 template <
class M,
class V,
class E>
friend E _mvlimult(
const M &m,
const V &v)
1054 #if(CXSC_INDEX_CHECK) 1055 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1059 template <
class V,
class M,
class E>
friend E _vmlimult(
const V &v,
const M &m)
1060 #if(CXSC_INDEX_CHECK) 1061 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1065 template <
class V,
class M,
class S>
friend V &_vmlimultassign(V &v,
const M &m)
1066 #if(CXSC_INDEX_CHECK) 1067 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1071 template <
class VS,
class M,
class S>
friend VS &_vsmlimultassign(VS &v,
const M &m)
1072 #if(CXSC_INDEX_CHECK) 1073 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1078 template <
class M>
friend void *_mvoid(
const M &m)
throw();
1079 template <
class M>
friend bool _mnot(
const M &m)
throw();
1080 template <
class MS>
friend void *_msvoid(
const MS &ms)
throw();
1081 template <
class MS>
friend bool _msnot(
const MS &ms)
throw();
1082 template <
class M1,
class M2>
friend bool _mmeq(
const M1 &m1,
const M2 &m2)
throw();
1083 template <
class M1,
class M2>
friend bool _mmneq(
const M1 &m1,
const M2 &m2)
throw();
1084 template <
class M1,
class M2>
friend bool _mmless(
const M1 &m1,
const M2 &m2)
throw();
1085 template <
class M1,
class M2>
friend bool _mmleq(
const M1 &m1,
const M2 &m2)
throw();
1086 template <
class M,
class MS>
friend bool _mmseq(
const M &m1,
const MS &ms)
throw();
1087 template <
class M,
class MS>
friend bool _mmsneq(
const M &m1,
const MS &ms)
throw();
1088 template <
class M,
class MS>
friend bool _mmsless(
const M &m1,
const MS &ms)
throw();
1089 template <
class M,
class MS>
friend bool _mmsleq(
const M &m1,
const MS &ms)
throw();
1090 template <
class MS,
class M>
friend bool _msmless(
const MS &ms,
const M &m1)
throw();
1091 template <
class MS,
class M>
friend bool _msmleq(
const MS &ms,
const M &m1)
throw();
1092 template <
class M>
friend std::ostream &_mout(std::ostream &s,
const M &r)
throw();
1093 template <
class M>
friend std::istream &_min(std::istream &s,M &r)
throw();
1096 template <
class M1,
class MS2>
friend M1 &_mmssetre(M1 &m1,
const MS2 &ms2)
1097 #if(CXSC_INDEX_CHECK) 1098 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
1102 template <
class M1,
class MS2>
friend M1 &_mmssetim(M1 &m1,
const MS2 &ms2)
1103 #if(CXSC_INDEX_CHECK) 1104 throw(ERROR__OP_WITH_WRONG_DIM<M1>);
1110 template <
class MS,
class V,
class E>
friend E _msvlimult(
const MS &ms,
const V &v)
1111 #if(CXSC_INDEX_CHECK) 1112 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1116 template <
class V,
class MS,
class E>
friend E _vmslimult(
const V &v,
const MS &ms)
1117 #if(CXSC_INDEX_CHECK) 1118 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1136 explicit INLINE
l_imatrix(
const int &m,
const int &n)
1137 #if(CXSC_INDEX_CHECK) 1138 throw(ERROR_LIMATRIX_WRONG_BOUNDARIES);
1142 explicit INLINE
l_imatrix(
const int &m1,
const int &n1,
const int &m2,
const int &n2)
1144 #if(CXSC_INDEX_CHECK) 1145 throw(ERROR_LIMATRIX_WRONG_BOUNDARIES);
1233 INLINE ~
l_imatrix()
throw() {
delete [] dat; }
1239 #if(CXSC_INDEX_CHECK) 1240 throw(ERROR_LIMATRIX_ROW_OR_COL_NOT_IN_MAT);
1246 #if(CXSC_INDEX_CHECK) 1247 throw(ERROR_LIMATRIX_ROW_OR_COL_NOT_IN_MAT);
1255 #if(CXSC_INDEX_CHECK) 1256 throw(ERROR_LIMATRIX_SUB_ARRAY_TOO_BIG);
1262 #if(CXSC_INDEX_CHECK) 1263 throw(ERROR_LIMATRIX_SUB_ARRAY_TOO_BIG);
1267 INLINE
operator void*()
throw();
1284 int offset1,offset2,mxsize,mysize;
1285 int start1,end1,start2,end2,sxsize,sysize;
1289 #ifdef _CXSC_FRIEND_TPL 1291 template <
class V,
class MS,
class S>
friend void _vmsconstr(V &v,
const MS &m)
1292 #if(CXSC_INDEX_CHECK) 1293 throw(ERROR__TYPE_CAST_OF_THICK_OBJ<MS>);
1297 template <
class MS,
class M>
friend MS &_msmassign(MS &ms,
const M &m)
1298 #if(CXSC_INDEX_CHECK) 1299 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1303 template <
class MS1,
class MS2>
friend MS1 &_msmsassign(MS1 &ms1,
const MS2 &ms)
1304 #if(CXSC_INDEX_CHECK) 1305 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1309 template <
class M,
class MS2,
class S>
friend M &_mmsassign(M &m,
const MS2 &ms)
throw();
1310 template <
class MS,
class S>
friend MS &_mssassign(MS &ms,
const S &r)
throw();
1311 template <
class MS>
friend int _mslb(
const MS &ms,
const int &i)
1312 #if(CXSC_INDEX_CHECK) 1313 throw(ERROR__WRONG_ROW_OR_COL<MS>);
1317 template <
class MS>
friend int _msub(
const MS &ms,
const int &i)
1318 #if(CXSC_INDEX_CHECK) 1319 throw(ERROR__WRONG_ROW_OR_COL<MS>);
1323 template <
class MS,
class E>
friend E _msabs(
const MS &ms)
throw();
1324 template <
class MS,
class E>
friend E _msinf(
const MS &ms)
throw();
1325 template <
class MS,
class E>
friend E _mssup(
const MS &ms)
throw();
1326 template <
class MS,
class E>
friend E _msdiam(
const MS &ms)
throw();
1327 template <
class MS,
class E>
friend E _msmid(
const MS &ms)
throw();
1328 template <
class MS1,
class M2>
friend MS1 &_msmsetinf(MS1 &ms1,
const M2 &m2)
1329 #if(CXSC_INDEX_CHECK) 1330 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1334 template <
class MS1,
class M2>
friend MS1 &_msmsetsup(MS1 &ms1,
const M2 &m2)
1335 #if(CXSC_INDEX_CHECK) 1336 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1340 template <
class MS1,
class MS2>
friend MS1 &_msmssetinf(MS1 &ms1,
const MS2 &ms2)
1341 #if(CXSC_INDEX_CHECK) 1342 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1346 template <
class MS1,
class MS2>
friend MS1 &_msmssetsup(MS1 &ms1,
const MS2 &ms2)
1347 #if(CXSC_INDEX_CHECK) 1348 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1352 template <
class MS1,
class M2>
friend MS1 &_msmusetinf(MS1 &ms1,
const M2 &m2)
1353 #if(CXSC_INDEX_CHECK) 1354 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1358 template <
class MS1,
class M2>
friend MS1 &_msmusetsup(MS1 &ms1,
const M2 &m2)
1359 #if(CXSC_INDEX_CHECK) 1360 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1364 template <
class MS1,
class MS2>
friend MS1 &_msmsusetinf(MS1 &ms1,
const MS2 &ms2)
1365 #if(CXSC_INDEX_CHECK) 1366 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1370 template <
class MS1,
class MS2>
friend MS1 &_msmsusetsup(MS1 &ms1,
const MS2 &ms2)
1371 #if(CXSC_INDEX_CHECK) 1372 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1377 template <
class MS,
class E>
friend E _msminus(
const MS &ms)
throw();
1378 template <
class M,
class MS,
class E>
friend E _mmsplus(
const M &m,
const MS &ms)
1379 #if(CXSC_INDEX_CHECK) 1380 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1384 template <
class MS1,
class MS2,
class E>
friend E _msmsplus(
const MS1 &m1,
const MS2 &m2)
1385 #if(CXSC_INDEX_CHECK) 1386 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1390 template <
class M,
class MS>
friend M &_mmsplusassign(M &m1,
const MS &ms)
1391 #if(CXSC_INDEX_CHECK) 1392 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1396 template <
class MS,
class M>
friend MS &_msmplusassign(MS &ms,
const M &m1)
1397 #if(CXSC_INDEX_CHECK) 1398 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1402 template <
class MS1,
class MS2>
friend MS1 &_msmsplusassign(MS1 &ms1,
const MS2 &ms2)
1403 #if(CXSC_INDEX_CHECK) 1404 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1408 template <
class M,
class MS,
class E>
friend E _mmsminus(
const M &m,
const MS &ms)
1409 #if(CXSC_INDEX_CHECK) 1410 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1414 template <
class MS,
class M,
class E>
friend E _msmminus(
const MS &ms,
const M &m)
1415 #if(CXSC_INDEX_CHECK) 1416 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1420 template <
class MS1,
class MS2,
class E>
friend E _msmsminus(
const MS1 &ms1,
const MS2 &ms2)
1421 #if(CXSC_INDEX_CHECK) 1422 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1426 template <
class M,
class MS>
friend M &_mmsminusassign(M &m1,
const MS &ms)
1427 #if(CXSC_INDEX_CHECK) 1428 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1432 template <
class MS,
class M>
friend MS &_msmminusassign(MS &ms,
const M &m1)
1433 #if(CXSC_INDEX_CHECK) 1434 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1438 template <
class MS1,
class MS2>
friend MS1 &_msmsminusassign(MS1 &ms1,
const MS2 &ms2)
1439 #if(CXSC_INDEX_CHECK) 1440 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1444 template <
class M,
class MS,
class E>
friend E _mmslimult(
const M &m1,
const MS &ms)
1445 #if(CXSC_INDEX_CHECK) 1446 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1450 template <
class MS,
class M,
class E>
friend E _msmlimult(
const MS &ms,
const M &m2)
1451 #if(CXSC_INDEX_CHECK) 1452 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1456 template <
class M,
class MS,
class S>
friend M &_mmslimultassign(M &m1,
const MS &ms)
1457 #if(CXSC_INDEX_CHECK) 1458 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1462 template <
class MS1,
class MS2,
class E>
friend E _msmslimult(
const MS1 &ms1,
const MS2 &ms2)
1463 #if(CXSC_INDEX_CHECK) 1464 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1468 template <
class M,
class MS,
class E>
friend E _mmsconv(
const M &m,
const MS &ms)
1469 #if(CXSC_INDEX_CHECK) 1470 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1474 template <
class M,
class MS>
friend M &_mmsconvassign(M &m1,
const MS &ms)
1475 #if(CXSC_INDEX_CHECK) 1476 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1480 template <
class MS,
class M>
friend MS &_msmconvassign(MS &ms,
const M &m1)
1481 #if(CXSC_INDEX_CHECK) 1482 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1486 template <
class MS1,
class MS2>
friend MS1 &_msmsconvassign(MS1 &ms1,
const MS2 &ms2)
1487 #if(CXSC_INDEX_CHECK) 1488 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1492 template <
class MS1,
class MS2,
class E>
friend E _msmsconv(
const MS1 &m1,
const MS2 &m2)
1493 #if(CXSC_INDEX_CHECK) 1494 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1498 template <
class M,
class MS,
class E>
friend E _mmssect(
const M &m,
const MS &ms)
1499 #if(CXSC_INDEX_CHECK) 1500 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1504 template <
class M,
class MS>
friend M &_mmssectassign(M &m1,
const MS &ms)
1505 #if(CXSC_INDEX_CHECK) 1506 throw(ERROR__OP_WITH_WRONG_DIM<M>);
1510 template <
class MS,
class M>
friend MS &_msmsectassign(MS &ms,
const M &m1)
1511 #if(CXSC_INDEX_CHECK) 1512 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1516 template <
class MS1,
class MS2>
friend MS1 &_msmssectassign(MS1 &ms1,
const MS2 &ms2)
1517 #if(CXSC_INDEX_CHECK) 1518 throw(ERROR__OP_WITH_WRONG_DIM<MS1>);
1522 template <
class MS1,
class MS2,
class E>
friend E _msmssect(
const MS1 &m1,
const MS2 &m2)
1523 #if(CXSC_INDEX_CHECK) 1524 throw(ERROR__OP_WITH_WRONG_DIM<E>);
1529 template <
class MS,
class V,
class E>
friend E _msvlimult(
const MS &ms,
const V &v)
1530 #if(CXSC_INDEX_CHECK) 1531 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1535 template <
class V,
class MS,
class E>
friend E _vmslimult(
const V &v,
const MS &ms)
1536 #if(CXSC_INDEX_CHECK) 1537 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1541 template <
class V,
class MS,
class S>
friend V &_vmslimultassign(V &v,
const MS &ms)
1542 #if(CXSC_INDEX_CHECK) 1543 throw(ERROR__OP_WITH_WRONG_DIM<MS>);
1548 template <
class S,
class MS,
class E>
friend E _smsmult(
const S &c,
const MS &ms)
throw();
1549 template <
class MS,
class S>
friend MS &_mssmultassign(MS &ms,
const S &c)
throw();
1550 template <
class MS,
class S,
class E>
friend E _mssdiv(
const MS &ms,
const S &c)
throw();
1551 template <
class MS,
class S>
friend MS &_mssdivassign(MS &ms,
const S &c)
throw();
1553 template <
class MS>
friend void *_msvoid(
const MS &ms)
throw();
1554 template <
class MS>
friend bool _msnot(
const MS &ms)
throw();
1555 template <
class M,
class MS>
friend bool _mmseq(
const M &m1,
const MS &ms)
throw();
1556 template <
class M,
class MS>
friend bool _mmsneq(
const M &m1,
const MS &ms)
throw();
1557 template <
class M,
class MS>
friend bool _mmsless(
const M &m1,
const MS &ms)
throw();
1558 template <
class M,
class MS>
friend bool _mmsleq(
const M &m1,
const MS &ms)
throw();
1559 template <
class MS,
class M>
friend bool _msmless(
const MS &ms,
const M &m1)
throw();
1560 template <
class MS,
class M>
friend bool _msmleq(
const MS &ms,
const M &m1)
throw();
1561 template <
class MS1,
class MS2>
friend bool _msmseq(
const MS1 &ms1,
const MS2 &ms2)
throw();
1562 template <
class MS1,
class MS2>
friend bool _msmsneq(
const MS1 &ms1,
const MS2 &ms2)
throw();
1563 template <
class MS1,
class MS2>
friend bool _msmsless(
const MS1 &ms1,
const MS2 &ms2)
throw();
1564 template <
class MS1,
class MS2>
friend bool _msmsleq(
const MS1 &ms1,
const MS2 &ms2)
throw();
1565 template <
class MS>
friend std::ostream &_msout(std::ostream &s,
const MS &r)
throw();
1566 template <
class MS>
friend std::istream &_msin(std::istream &s,MS &r)
throw();
1574 explicit INLINE
l_imatrix_slice(
l_imatrix &a,
const int &l1,
const int &u1,
const int &l2,
const int &u2)
throw():dat(a.dat),offset1(l1-a.lb1),offset2(l2-a.lb2),mxsize(a.xsize),mysize(a.ysize),start1(l1),end1(u1),start2(l2),end2(u2),sxsize(u2-l2+1),sysize(u1-l1+1) { }
1576 explicit INLINE
l_imatrix_slice(
l_imatrix_slice &a,
const int &l1,
const int &u1,
const int &l2,
const int &u2)
throw():dat(a.dat),offset1(a.offset1+l1-a.start1),offset2(a.offset2+l2-a.start2),mxsize(a.mxsize),mysize(a.mysize),start1(l1),end1(u1),start2(l2),end2(u2),sxsize(u2-l2+1),sysize(u1-l1+1) { }
1579 INLINE
l_imatrix_slice(
const l_imatrix_slice &ms)
throw():dat(ms.dat),offset1(ms.offset1),offset2(ms.offset2),mxsize(ms.mxsize),mysize(ms.mysize),start1(ms.start1),end1(ms.end1),start2(ms.start2),end2(ms.end2),sxsize(ms.sxsize),sysize(ms.sysize) { }
1585 #if(CXSC_INDEX_CHECK) 1586 throw(ERROR_LIMATRIX_TYPE_CAST_OF_THICK_OBJ);
1593 #if(CXSC_INDEX_CHECK) 1594 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1600 #if(CXSC_INDEX_CHECK) 1601 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1609 #if(CXSC_INDEX_CHECK) 1610 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1616 #if(CXSC_INDEX_CHECK) 1617 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1623 #if(CXSC_INDEX_CHECK) 1624 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1631 #if(CXSC_INDEX_CHECK) 1632 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1638 #if(CXSC_INDEX_CHECK) 1639 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1647 #if(CXSC_INDEX_CHECK) 1648 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1654 #if(CXSC_INDEX_CHECK) 1655 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1661 #if(CXSC_INDEX_CHECK) 1662 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1670 #if(CXSC_INDEX_CHECK) 1671 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1677 #if(CXSC_INDEX_CHECK) 1678 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1686 #if(CXSC_INDEX_CHECK) 1687 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1693 #if(CXSC_INDEX_CHECK) 1694 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1700 #if(CXSC_INDEX_CHECK) 1701 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1709 #if(CXSC_INDEX_CHECK) 1710 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1716 #if(CXSC_INDEX_CHECK) 1717 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1725 #if(CXSC_INDEX_CHECK) 1726 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1732 #if(CXSC_INDEX_CHECK) 1733 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1739 #if(CXSC_INDEX_CHECK) 1740 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1747 #if(CXSC_INDEX_CHECK) 1748 throw(ERROR_LIMATRIX_ROW_OR_COL_NOT_IN_MAT);
1754 #if(CXSC_INDEX_CHECK) 1755 throw(ERROR_LIMATRIX_ROW_OR_COL_NOT_IN_MAT);
1763 #if(CXSC_INDEX_CHECK) 1764 throw(ERROR_LIMATRIX_SUB_ARRAY_TOO_BIG);
1770 #if(CXSC_INDEX_CHECK) 1771 throw(ERROR_LIMATRIX_SUB_ARRAY_TOO_BIG);
1775 INLINE
operator void*()
throw();
1787 #if(CXSC_INDEX_CHECK) 1788 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1794 #if(CXSC_INDEX_CHECK) 1795 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1801 #if(CXSC_INDEX_CHECK) 1802 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1808 #if(CXSC_INDEX_CHECK) 1809 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1815 #if(CXSC_INDEX_CHECK) 1816 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1822 #if(CXSC_INDEX_CHECK) 1823 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1829 #if(CXSC_INDEX_CHECK) 1830 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1836 #if(CXSC_INDEX_CHECK) 1837 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1843 #if(CXSC_INDEX_CHECK) 1844 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1850 #if(CXSC_INDEX_CHECK) 1851 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1866 #if(CXSC_INDEX_CHECK) 1867 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1873 #if(CXSC_INDEX_CHECK) 1874 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1880 #if(CXSC_INDEX_CHECK) 1881 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1887 #if(CXSC_INDEX_CHECK) 1888 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1894 #if(CXSC_INDEX_CHECK) 1895 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1901 #if(CXSC_INDEX_CHECK) 1902 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1908 #if(CXSC_INDEX_CHECK) 1909 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1915 #if(CXSC_INDEX_CHECK) 1916 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1922 #if(CXSC_INDEX_CHECK) 1923 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1929 #if(CXSC_INDEX_CHECK) 1930 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1945 #if(CXSC_INDEX_CHECK) 1946 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1952 #if(CXSC_INDEX_CHECK) 1953 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1959 #if(CXSC_INDEX_CHECK) 1960 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1966 #if(CXSC_INDEX_CHECK) 1967 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1973 #if(CXSC_INDEX_CHECK) 1974 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1980 #if(CXSC_INDEX_CHECK) 1981 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1987 #if(CXSC_INDEX_CHECK) 1988 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
1994 #if(CXSC_INDEX_CHECK) 1995 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2001 #if(CXSC_INDEX_CHECK) 2002 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2008 #if(CXSC_INDEX_CHECK) 2009 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2024 #if(CXSC_INDEX_CHECK) 2025 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2031 #if(CXSC_INDEX_CHECK) 2032 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2038 #if(CXSC_INDEX_CHECK) 2039 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2045 #if(CXSC_INDEX_CHECK) 2046 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2052 #if(CXSC_INDEX_CHECK) 2053 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2059 #if(CXSC_INDEX_CHECK) 2060 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2066 #if(CXSC_INDEX_CHECK) 2067 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2073 #if(CXSC_INDEX_CHECK) 2074 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2080 #if(CXSC_INDEX_CHECK) 2081 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2087 #if(CXSC_INDEX_CHECK) 2088 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2103 INLINE l_ivector
operator /(
const l_imatrix_subv &rv,
const l_interval &s)
throw();
2105 INLINE l_ivector
operator *(
const l_imatrix_subv &rv,
const l_interval &s)
throw();
2107 INLINE l_ivector
operator *(
const l_interval &s,
const l_imatrix_subv &rv)
throw();
2109 INLINE l_ivector
abs(
const l_imatrix_subv &mv)
throw();
2111 INLINE l_rvector
diam(
const l_imatrix_subv &mv)
throw();
2113 INLINE l_rvector
mid(
const l_imatrix_subv &mv)
throw();
2115 INLINE l_rvector Inf(
const l_imatrix_subv &mv)
throw();
2117 INLINE l_rvector Sup(
const l_imatrix_subv &mv)
throw();
2119 INLINE l_imatrix_subv &SetInf(l_imatrix_subv &iv,
const l_rvector &rv)
2120 #if(CXSC_INDEX_CHECK) 2121 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2125 INLINE l_imatrix_subv &SetSup(l_imatrix_subv &iv,
const l_rvector &rv)
2127 #if(CXSC_INDEX_CHECK) 2128 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2132 INLINE l_imatrix_subv &UncheckedSetInf(l_imatrix_subv &iv,
const l_rvector &rv)
2134 #if(CXSC_INDEX_CHECK) 2135 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2139 INLINE l_imatrix_subv &UncheckedSetSup(l_imatrix_subv &iv,
const l_rvector &rv)
2141 #if(CXSC_INDEX_CHECK) 2142 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2148 INLINE l_imatrix_subv &SetSup(l_imatrix_subv &iv,
const l_real &r)
throw();
2150 INLINE l_imatrix_subv &SetInf(l_imatrix_subv &iv,
const l_real &r)
throw();
2152 INLINE l_imatrix_subv &UncheckedSetSup(l_imatrix_subv &iv,
const l_real &r)
throw();
2154 INLINE l_imatrix_subv &
SetUncheckedInf(l_imatrix_subv &iv,
const l_real &r)
throw();
2160 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const l_imatrix_subv &rv2)
2161 #if(CXSC_INDEX_CHECK) 2162 throw(OP_WITH_WRONG_DIM);
2166 INLINE
void accumulate(idotprecision &dp,
const l_ivector & rv1,
const l_imatrix_subv &rv2)
2168 #if(CXSC_INDEX_CHECK) 2169 throw(OP_WITH_WRONG_DIM);
2173 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const l_ivector &rv2)
2175 #if(CXSC_INDEX_CHECK) 2176 throw(OP_WITH_WRONG_DIM);
2180 INLINE
void accumulate(idotprecision &dp,
const l_ivector_slice & sl1,
const l_imatrix_subv &rv2)
2182 #if(CXSC_INDEX_CHECK) 2183 throw(OP_WITH_WRONG_DIM);
2187 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const l_ivector_slice &sl2)
2189 #if(CXSC_INDEX_CHECK) 2190 throw(OP_WITH_WRONG_DIM);
2196 INLINE l_interval
operator *(
const l_imatrix_subv & rv1,
const l_imatrix_subv &rv2)
2197 #if(CXSC_INDEX_CHECK) 2198 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2202 INLINE l_interval
operator *(
const l_ivector & rv1,
const l_imatrix_subv &rv2)
2204 #if(CXSC_INDEX_CHECK) 2205 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2209 INLINE l_interval
operator *(
const l_imatrix_subv &rv1,
const l_ivector &rv2)
2211 #if(CXSC_INDEX_CHECK) 2212 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2216 INLINE l_interval
operator *(
const l_ivector_slice &sl,
const l_imatrix_subv &sv)
2218 #if(CXSC_INDEX_CHECK) 2219 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2223 INLINE l_interval
operator *(
const l_imatrix_subv &mv,
const l_ivector_slice &vs)
2225 #if(CXSC_INDEX_CHECK) 2226 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2232 INLINE l_ivector operator +(
const l_imatrix_subv & rv1,
const l_imatrix_subv &rv2)
2233 #if(CXSC_INDEX_CHECK) 2234 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2238 INLINE l_ivector operator +(
const l_imatrix_subv &rv1,
const l_ivector &rv2)
2240 #if(CXSC_INDEX_CHECK) 2241 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2245 INLINE l_ivector operator +(
const l_ivector & rv1,
const l_imatrix_subv &rv2)
2247 #if(CXSC_INDEX_CHECK) 2248 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2252 INLINE l_ivector operator +(
const l_ivector_slice &sl,
const l_imatrix_subv &mv)
2254 #if(CXSC_INDEX_CHECK) 2255 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2259 INLINE l_ivector operator +(
const l_imatrix_subv &mv,
const l_ivector_slice &sl)
2261 #if(CXSC_INDEX_CHECK) 2262 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2268 INLINE l_ivector operator -(
const l_imatrix_subv & rv1,
const l_imatrix_subv &rv2)
2269 #if(CXSC_INDEX_CHECK) 2270 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2274 INLINE l_ivector operator -(
const l_ivector & rv1,
const l_imatrix_subv &rv2)
2276 #if(CXSC_INDEX_CHECK) 2277 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2281 INLINE l_ivector operator -(
const l_imatrix_subv &rv1,
const l_ivector &rv2)
2283 #if(CXSC_INDEX_CHECK) 2284 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2288 INLINE l_ivector operator -(
const l_ivector_slice &sl,
const l_imatrix_subv &mv)
2290 #if(CXSC_INDEX_CHECK) 2291 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2295 INLINE l_ivector operator -(
const l_imatrix_subv &mv,
const l_ivector_slice &sl)
2297 #if(CXSC_INDEX_CHECK) 2298 throw(ERROR_LIVECTOR_OP_WITH_WRONG_DIM);
2306 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const rmatrix_subv &rv2)
2307 #if(CXSC_INDEX_CHECK) 2308 throw(OP_WITH_WRONG_DIM);
2312 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const rvector_slice &sl2)
2314 #if(CXSC_INDEX_CHECK) 2315 throw(OP_WITH_WRONG_DIM);
2319 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const rvector &rv2)
2321 #if(CXSC_INDEX_CHECK) 2322 throw(OP_WITH_WRONG_DIM);
2326 INLINE
void accumulate(idotprecision &dp,
const rvector & rv1,
const l_imatrix_subv &rv2)
2328 #if(CXSC_INDEX_CHECK) 2329 throw(OP_WITH_WRONG_DIM);
2333 INLINE
void accumulate(idotprecision &dp,
const rmatrix_subv & rv1,
const l_imatrix_subv &rv2)
2335 #if(CXSC_INDEX_CHECK) 2336 throw(OP_WITH_WRONG_DIM);
2340 INLINE
void accumulate(idotprecision &dp,
const rvector_slice & sl1,
const l_imatrix_subv &rv2)
2342 #if(CXSC_INDEX_CHECK) 2343 throw(OP_WITH_WRONG_DIM);
2351 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const l_rmatrix_subv &rv2)
2352 #if(CXSC_INDEX_CHECK) 2353 throw(OP_WITH_WRONG_DIM);
2357 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const l_rvector_slice &sl2)
2359 #if(CXSC_INDEX_CHECK) 2360 throw(OP_WITH_WRONG_DIM);
2364 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const l_rvector &rv2)
2366 #if(CXSC_INDEX_CHECK) 2367 throw(OP_WITH_WRONG_DIM);
2371 INLINE
void accumulate(idotprecision &dp,
const l_rvector & rv1,
const l_imatrix_subv &rv2)
2373 #if(CXSC_INDEX_CHECK) 2374 throw(OP_WITH_WRONG_DIM);
2378 INLINE
void accumulate(idotprecision &dp,
const l_rmatrix_subv & rv1,
const l_imatrix_subv &rv2)
2380 #if(CXSC_INDEX_CHECK) 2381 throw(OP_WITH_WRONG_DIM);
2385 INLINE
void accumulate(idotprecision &dp,
const l_rvector_slice & sl1,
const l_imatrix_subv &rv2)
2387 #if(CXSC_INDEX_CHECK) 2388 throw(OP_WITH_WRONG_DIM);
2396 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const imatrix_subv &rv2)
2397 #if(CXSC_INDEX_CHECK) 2398 throw(OP_WITH_WRONG_DIM);
2402 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const ivector_slice &sl2)
2404 #if(CXSC_INDEX_CHECK) 2405 throw(OP_WITH_WRONG_DIM);
2409 INLINE
void accumulate(idotprecision &dp,
const l_imatrix_subv & rv1,
const ivector &rv2)
2411 #if(CXSC_INDEX_CHECK) 2412 throw(OP_WITH_WRONG_DIM);
2416 INLINE
void accumulate(idotprecision &dp,
const ivector & rv1,
const l_imatrix_subv &rv2)
2418 #if(CXSC_INDEX_CHECK) 2419 throw(OP_WITH_WRONG_DIM);
2423 INLINE
void accumulate(idotprecision &dp,
const imatrix_subv & rv1,
const l_imatrix_subv &rv2)
2425 #if(CXSC_INDEX_CHECK) 2426 throw(OP_WITH_WRONG_DIM);
2430 INLINE
void accumulate(idotprecision &dp,
const ivector_slice & sl1,
const l_imatrix_subv &rv2)
2432 #if(CXSC_INDEX_CHECK) 2433 throw(OP_WITH_WRONG_DIM);
2443 INLINE l_imatrix
_imatrix(
const l_imatrix &rm)
throw();
2445 INLINE l_imatrix
_imatrix(
const l_ivector &v)
throw();
2447 INLINE l_imatrix
_imatrix(
const l_ivector_slice &v)
throw();
2449 INLINE l_imatrix
_imatrix(
const l_interval &r)
throw();
2452 INLINE
int Lb(
const l_imatrix &rm,
const int &i)
2453 #if(CXSC_INDEX_CHECK) 2454 throw(ERROR_LIMATRIX_WRONG_ROW_OR_COL);
2458 INLINE
int Ub(
const l_imatrix &rm,
const int &i)
2460 #if(CXSC_INDEX_CHECK) 2461 throw(ERROR_LIMATRIX_WRONG_ROW_OR_COL);
2465 INLINE
int Lb(
const l_imatrix_slice &rm,
const int &i)
2467 #if(CXSC_INDEX_CHECK) 2468 throw(ERROR_LIMATRIX_WRONG_ROW_OR_COL);
2472 INLINE
int Ub(
const l_imatrix_slice &rm,
const int &i)
2474 #if(CXSC_INDEX_CHECK) 2475 throw(ERROR_LIMATRIX_WRONG_ROW_OR_COL);
2479 INLINE l_imatrix &
SetLb(l_imatrix &m,
const int &i,
const int &j)
2481 #if(CXSC_INDEX_CHECK) 2482 throw(ERROR_LIMATRIX_WRONG_ROW_OR_COL);
2486 INLINE l_imatrix &
SetUb(l_imatrix &m,
const int &i,
const int &j)
2488 #if(CXSC_INDEX_CHECK) 2489 throw(ERROR_LIMATRIX_WRONG_ROW_OR_COL);
2493 INLINE
void Resize(l_imatrix &A)
throw();
2496 INLINE
void Resize(l_imatrix &A,
const int &m,
const int &n)
2497 #if(CXSC_INDEX_CHECK) 2498 throw(ERROR_LIMATRIX_WRONG_BOUNDARIES);
2502 INLINE
void Resize(l_imatrix &A,
const int &m1,
const int &m2,
const int &n1,
const int &n2)
2504 #if(CXSC_INDEX_CHECK) 2505 throw(ERROR_LIMATRIX_WRONG_BOUNDARIES);
2511 INLINE l_imatrix
abs(
const l_imatrix &m)
throw();
2513 INLINE l_imatrix
abs(
const l_imatrix_slice &ms)
throw();
2515 INLINE l_rmatrix
diam(
const l_imatrix &m)
throw();
2517 INLINE l_rmatrix
diam(
const l_imatrix_slice &m)
throw();
2519 INLINE l_rmatrix
mid(
const l_imatrix &m)
throw();
2521 INLINE l_rmatrix
mid(
const l_imatrix_slice &m)
throw();
2523 INLINE l_rmatrix Inf(
const l_imatrix &m)
throw();
2525 INLINE l_rmatrix Sup(
const l_imatrix &m)
throw();
2527 INLINE l_rmatrix Inf(
const l_imatrix_slice &m)
throw();
2529 INLINE l_rmatrix Sup(
const l_imatrix_slice &m)
throw();
2531 INLINE l_imatrix &SetInf(l_imatrix &cm,
const l_rmatrix &rm)
2532 #if(CXSC_INDEX_CHECK) 2533 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2537 INLINE l_imatrix_slice &SetInf(l_imatrix_slice &cm,
const l_rmatrix &rm)
2539 #if(CXSC_INDEX_CHECK) 2540 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2544 INLINE l_imatrix &SetInf(l_imatrix &cm,
const l_rmatrix_slice &rm)
2546 #if(CXSC_INDEX_CHECK) 2547 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2551 INLINE l_imatrix_slice &SetInf(l_imatrix_slice &cm,
const l_rmatrix_slice &rm)
2553 #if(CXSC_INDEX_CHECK) 2554 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2558 INLINE l_imatrix &SetSup(l_imatrix &cm,
const l_rmatrix &rm)
2560 #if(CXSC_INDEX_CHECK) 2561 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2565 INLINE l_imatrix_slice &SetSup(l_imatrix_slice &cm,
const l_rmatrix &rm)
2567 #if(CXSC_INDEX_CHECK) 2568 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2572 INLINE l_imatrix &SetSup(l_imatrix &cm,
const l_rmatrix_slice &rm)
2574 #if(CXSC_INDEX_CHECK) 2575 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2579 INLINE l_imatrix_slice &SetSup(l_imatrix_slice &cm,
const l_rmatrix_slice &rm)
2581 #if(CXSC_INDEX_CHECK) 2582 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2586 INLINE l_imatrix &UncheckedSetInf(l_imatrix &cm,
const l_rmatrix &rm)
2588 #if(CXSC_INDEX_CHECK) 2589 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2593 INLINE l_imatrix_slice &UncheckedSetInf(l_imatrix_slice &cm,
const l_rmatrix &rm)
2595 #if(CXSC_INDEX_CHECK) 2596 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2600 INLINE l_imatrix &UncheckedSetInf(l_imatrix &cm,
const l_rmatrix_slice &rm)
2602 #if(CXSC_INDEX_CHECK) 2603 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2607 INLINE l_imatrix_slice &UncheckedSetInf(l_imatrix_slice &cm,
const l_rmatrix_slice &rm)
2609 #if(CXSC_INDEX_CHECK) 2610 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2614 INLINE l_imatrix &UncheckedSetSup(l_imatrix &cm,
const l_rmatrix &rm)
2616 #if(CXSC_INDEX_CHECK) 2617 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2621 INLINE l_imatrix_slice &UncheckedSetSup(l_imatrix_slice &cm,
const l_rmatrix &rm)
2623 #if(CXSC_INDEX_CHECK) 2624 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2628 INLINE l_imatrix &UncheckedSetSup(l_imatrix &cm,
const l_rmatrix_slice &rm)
2630 #if(CXSC_INDEX_CHECK) 2631 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2635 INLINE l_imatrix_slice &UncheckedSetSup(l_imatrix_slice &cm,
const l_rmatrix_slice &rm)
2637 #if(CXSC_INDEX_CHECK) 2638 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2646 INLINE l_imatrix
operator *(
const l_interval &c,
const l_imatrix &m)
throw();
2648 INLINE l_imatrix
operator *(
const l_interval &c,
const l_imatrix_slice &ms)
throw();
2650 INLINE l_imatrix
operator *(
const l_imatrix &m,
const l_interval &c)
throw();
2652 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms,
const l_interval &c)
throw();
2654 INLINE l_imatrix &
operator *=(l_imatrix &m,
const l_interval &c)
throw();
2656 INLINE l_imatrix
operator /(
const l_imatrix &m,
const l_interval &c)
throw();
2658 INLINE l_imatrix
operator /(
const l_imatrix_slice &ms,
const l_interval &c)
throw();
2660 INLINE l_imatrix &
operator /=(l_imatrix &m,
const l_interval &c)
throw();
2665 INLINE l_imatrix
operator *(
const real &c,
const l_imatrix &m)
throw();
2667 INLINE l_imatrix
operator *(
const real &c,
const l_imatrix_slice &ms)
throw();
2669 INLINE l_imatrix
operator *(
const l_imatrix &m,
const real &c)
throw();
2671 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms,
const real &c)
throw();
2673 INLINE l_imatrix &
operator *=(l_imatrix &m,
const real &c)
throw();
2675 INLINE l_imatrix
operator /(
const l_imatrix &m,
const real &c)
throw();
2677 INLINE l_imatrix
operator /(
const l_imatrix_slice &ms,
const real &c)
throw();
2679 INLINE l_imatrix &
operator /=(l_imatrix &m,
const real &c)
throw();
2683 INLINE l_imatrix
operator *(
const l_interval &c,
const rmatrix &m)
throw();
2685 INLINE l_imatrix
operator *(
const l_interval &c,
const rmatrix_slice &ms)
throw();
2687 INLINE l_imatrix
operator *(
const rmatrix &m,
const l_interval &c)
throw();
2689 INLINE l_imatrix
operator *(
const rmatrix_slice &ms,
const l_interval &c)
throw();
2691 INLINE l_imatrix
operator /(
const rmatrix &m,
const l_interval &c)
throw();
2693 INLINE l_imatrix
operator /(
const rmatrix_slice &ms,
const l_interval &c)
throw();
2698 INLINE l_imatrix
operator *(
const l_real &c,
const l_imatrix &m)
throw();
2700 INLINE l_imatrix
operator *(
const l_real &c,
const l_imatrix_slice &ms)
throw();
2702 INLINE l_imatrix
operator *(
const l_imatrix &m,
const l_real &c)
throw();
2704 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms,
const l_real &c)
throw();
2706 INLINE l_imatrix &
operator *=(l_imatrix &m,
const l_real &c)
throw();
2708 INLINE l_imatrix
operator /(
const l_imatrix &m,
const l_real &c)
throw();
2710 INLINE l_imatrix
operator /(
const l_imatrix_slice &ms,
const l_real &c)
throw();
2712 INLINE l_imatrix &
operator /=(l_imatrix &m,
const l_real &c)
throw();
2716 INLINE l_imatrix
operator *(
const l_interval &c,
const l_rmatrix &m)
throw();
2718 INLINE l_imatrix
operator *(
const l_interval &c,
const l_rmatrix_slice &ms)
throw();
2720 INLINE l_imatrix
operator *(
const l_rmatrix &m,
const l_interval &c)
throw();
2722 INLINE l_imatrix
operator *(
const l_rmatrix_slice &ms,
const l_interval &c)
throw();
2724 INLINE l_imatrix
operator /(
const l_rmatrix &m,
const l_interval &c)
throw();
2726 INLINE l_imatrix
operator /(
const l_rmatrix_slice &ms,
const l_interval &c)
throw();
2731 INLINE l_imatrix
operator *(
const interval &c,
const l_imatrix &m)
throw();
2733 INLINE l_imatrix
operator *(
const interval &c,
const l_imatrix_slice &ms)
throw();
2735 INLINE l_imatrix
operator *(
const l_imatrix &m,
const interval &c)
throw();
2737 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms,
const interval &c)
throw();
2739 INLINE l_imatrix &
operator *=(l_imatrix &m,
const interval &c)
throw();
2741 INLINE l_imatrix
operator /(
const l_imatrix &m,
const interval &c)
throw();
2743 INLINE l_imatrix
operator /(
const l_imatrix_slice &ms,
const interval &c)
throw();
2745 INLINE l_imatrix &
operator /=(l_imatrix &m,
const interval &c)
throw();
2749 INLINE l_imatrix
operator *(
const l_interval &c,
const imatrix &m)
throw();
2751 INLINE l_imatrix
operator *(
const l_interval &c,
const imatrix_slice &ms)
throw();
2753 INLINE l_imatrix
operator *(
const imatrix &m,
const l_interval &c)
throw();
2755 INLINE l_imatrix
operator *(
const imatrix_slice &ms,
const l_interval &c)
throw();
2757 INLINE l_imatrix
operator /(
const imatrix &m,
const l_interval &c)
throw();
2759 INLINE l_imatrix
operator /(
const imatrix_slice &ms,
const l_interval &c)
throw();
2766 INLINE l_ivector
operator *(
const l_imatrix &m,
const l_ivector &v)
2767 #if(CXSC_INDEX_CHECK) 2768 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2772 INLINE l_ivector
operator *(
const l_imatrix_slice &ms,
const l_ivector &v)
2774 #if(CXSC_INDEX_CHECK) 2775 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2779 INLINE l_ivector
operator *(
const l_ivector &v,
const l_imatrix &m)
2781 #if(CXSC_INDEX_CHECK) 2782 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2786 INLINE l_ivector
operator *(
const l_ivector &v,
const l_imatrix_slice &ms)
2788 #if(CXSC_INDEX_CHECK) 2789 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2793 INLINE l_ivector &
operator *=(l_ivector &v,
const l_imatrix &m)
2795 #if(CXSC_INDEX_CHECK) 2796 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2800 INLINE l_ivector &
operator *=(l_ivector &v,
const l_imatrix_slice &ms)
2802 #if(CXSC_INDEX_CHECK) 2803 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2809 INLINE l_ivector
operator *(
const l_ivector_slice &v,
const l_imatrix &m)
2810 #if(CXSC_INDEX_CHECK) 2811 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2815 INLINE l_ivector
operator *(
const l_ivector_slice &v,
const l_imatrix_slice &m)
2817 #if(CXSC_INDEX_CHECK) 2818 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2826 INLINE l_ivector
operator *(
const rvector &v,
const l_imatrix &m)
2827 #if(CXSC_INDEX_CHECK) 2828 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2832 INLINE l_ivector
operator *(
const rvector &v,
const l_imatrix_slice &ms)
2834 #if(CXSC_INDEX_CHECK) 2835 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2839 INLINE l_ivector
operator *(
const rvector_slice &v,
const l_imatrix &m)
2841 #if(CXSC_INDEX_CHECK) 2842 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2848 INLINE l_ivector
operator *(
const l_imatrix &m,
const rvector &v)
2849 #if(CXSC_INDEX_CHECK) 2850 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2854 INLINE l_ivector
operator *(
const l_imatrix_slice &ms,
const rvector &v)
2856 #if(CXSC_INDEX_CHECK) 2857 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2865 INLINE l_ivector
operator *(
const l_rvector &v,
const l_imatrix &m)
2866 #if(CXSC_INDEX_CHECK) 2867 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2871 INLINE l_ivector
operator *(
const l_rvector &v,
const l_imatrix_slice &ms)
2873 #if(CXSC_INDEX_CHECK) 2874 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2878 INLINE l_ivector
operator *(
const l_rvector_slice &v,
const l_imatrix &m)
2880 #if(CXSC_INDEX_CHECK) 2881 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2887 INLINE l_ivector
operator *(
const l_imatrix &m,
const l_rvector &v)
2888 #if(CXSC_INDEX_CHECK) 2889 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2893 INLINE l_ivector
operator *(
const l_imatrix_slice &ms,
const l_rvector &v)
2895 #if(CXSC_INDEX_CHECK) 2896 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2904 INLINE l_ivector
operator *(
const ivector &v,
const l_imatrix &m)
2905 #if(CXSC_INDEX_CHECK) 2906 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2910 INLINE l_ivector
operator *(
const ivector &v,
const l_imatrix_slice &ms)
2912 #if(CXSC_INDEX_CHECK) 2913 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2917 INLINE l_ivector
operator *(
const ivector_slice &v,
const l_imatrix &m)
2919 #if(CXSC_INDEX_CHECK) 2920 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2926 INLINE l_ivector
operator *(
const l_imatrix &m,
const ivector &v)
2927 #if(CXSC_INDEX_CHECK) 2928 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2932 INLINE l_ivector
operator *(
const l_imatrix_slice &ms,
const ivector &v)
2934 #if(CXSC_INDEX_CHECK) 2935 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2944 INLINE
const l_imatrix &operator +(
const l_imatrix &m1)
throw();
2946 INLINE l_imatrix operator +(
const l_imatrix_slice &ms)
throw();
2948 INLINE l_imatrix operator +(
const l_imatrix &m1,
const l_imatrix &m2)
2949 #if(CXSC_INDEX_CHECK) 2950 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2954 INLINE l_imatrix operator +(
const l_imatrix &m,
const l_imatrix_slice &ms)
2956 #if(CXSC_INDEX_CHECK) 2957 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2961 INLINE l_imatrix operator +(
const l_imatrix_slice &ms,
const l_imatrix &m)
2963 #if(CXSC_INDEX_CHECK) 2964 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2968 INLINE l_imatrix operator +(
const l_imatrix_slice &m1,
const l_imatrix_slice &m2)
2970 #if(CXSC_INDEX_CHECK) 2971 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2975 INLINE l_imatrix &
operator +=(l_imatrix &m1,
const l_imatrix &m2)
2977 #if(CXSC_INDEX_CHECK) 2978 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2982 INLINE l_imatrix &
operator +=(l_imatrix &m1,
const l_imatrix_slice &ms)
2984 #if(CXSC_INDEX_CHECK) 2985 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
2991 INLINE l_imatrix operator -(
const l_imatrix &m)
throw();
2993 INLINE l_imatrix operator -(
const l_imatrix_slice &ms)
throw();
2995 INLINE l_imatrix operator -(
const l_imatrix &m1,
const l_imatrix &m2)
2996 #if(CXSC_INDEX_CHECK) 2997 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3001 INLINE l_imatrix operator -(
const l_imatrix &m,
const l_imatrix_slice &ms)
3003 #if(CXSC_INDEX_CHECK) 3004 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3008 INLINE l_imatrix operator -(
const l_imatrix_slice &ms,
const l_imatrix &m)
3010 #if(CXSC_INDEX_CHECK) 3011 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3015 INLINE l_imatrix operator -(
const l_imatrix_slice &ms1,
const l_imatrix_slice &ms2)
3017 #if(CXSC_INDEX_CHECK) 3018 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3022 INLINE l_imatrix &operator -=(l_imatrix &m1,
const l_imatrix &m2)
3024 #if(CXSC_INDEX_CHECK) 3025 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3029 INLINE l_imatrix &operator -=(l_imatrix &m1,
const l_imatrix_slice &ms)
3031 #if(CXSC_INDEX_CHECK) 3032 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3038 INLINE l_imatrix
operator *(
const l_imatrix &m1,
const l_imatrix &m2)
3039 #if(CXSC_INDEX_CHECK) 3040 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3044 INLINE l_imatrix
operator *(
const l_imatrix &m1,
const l_imatrix_slice &ms)
3046 #if(CXSC_INDEX_CHECK) 3047 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3051 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms,
const l_imatrix &m1)
3053 #if(CXSC_INDEX_CHECK) 3054 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3058 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms1,
const l_imatrix_slice &ms2)
3060 #if(CXSC_INDEX_CHECK) 3061 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3065 INLINE l_imatrix &
operator *=(l_imatrix &m1,
const l_imatrix &m2)
3067 #if(CXSC_INDEX_CHECK) 3068 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3072 INLINE l_imatrix &
operator *=(l_imatrix &m1,
const l_imatrix_slice &ms)
3074 #if(CXSC_INDEX_CHECK) 3075 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3082 INLINE l_imatrix operator |(
const l_imatrix &m1,
const l_imatrix &m2)
3083 #if(CXSC_INDEX_CHECK) 3084 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3088 INLINE l_imatrix operator |(
const l_imatrix &m,
const l_imatrix_slice &ms)
3090 #if(CXSC_INDEX_CHECK) 3091 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3095 INLINE l_imatrix operator |(
const l_imatrix_slice &ms,
const l_imatrix &m)
3097 #if(CXSC_INDEX_CHECK) 3098 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3102 INLINE l_imatrix operator |(
const l_imatrix_slice &m1,
const l_imatrix_slice &m2)
3104 #if(CXSC_INDEX_CHECK) 3105 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3109 INLINE l_imatrix &operator |=(l_imatrix &m1,
const l_imatrix &m2)
3111 #if(CXSC_INDEX_CHECK) 3112 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3116 INLINE l_imatrix &operator |=(l_imatrix &m1,
const l_imatrix_slice &ms)
3118 #if(CXSC_INDEX_CHECK) 3119 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3125 INLINE l_imatrix operator &(
const l_imatrix &m1,
const l_imatrix &m2)
3126 #if(CXSC_INDEX_CHECK) 3127 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3131 INLINE l_imatrix operator &(
const l_imatrix &m,
const l_imatrix_slice &ms)
3133 #if(CXSC_INDEX_CHECK) 3134 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3138 INLINE l_imatrix operator &(
const l_imatrix_slice &ms,
const l_imatrix &m)
3140 #if(CXSC_INDEX_CHECK) 3141 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3145 INLINE l_imatrix operator &(
const l_imatrix_slice &m1,
const l_imatrix_slice &m2)
3147 #if(CXSC_INDEX_CHECK) 3148 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3152 INLINE l_imatrix &operator &=(l_imatrix &m1,
const l_imatrix &m2)
3154 #if(CXSC_INDEX_CHECK) 3155 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3159 INLINE l_imatrix &operator &=(l_imatrix &m1,
const l_imatrix_slice &ms)
3161 #if(CXSC_INDEX_CHECK) 3162 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3169 INLINE l_imatrix operator +(
const rmatrix &m1,
const l_imatrix &m2)
3170 #if(CXSC_INDEX_CHECK) 3171 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3175 INLINE l_imatrix operator +(
const l_imatrix &m1,
const rmatrix &m2)
3177 #if(CXSC_INDEX_CHECK) 3178 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3182 INLINE l_imatrix operator +(
const rmatrix &m,
const l_imatrix_slice &ms)
3184 #if(CXSC_INDEX_CHECK) 3185 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3189 INLINE l_imatrix operator +(
const l_imatrix &m,
const rmatrix_slice &ms)
3191 #if(CXSC_INDEX_CHECK) 3192 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3196 INLINE l_imatrix operator +(
const rmatrix_slice &ms,
const l_imatrix &m)
3198 #if(CXSC_INDEX_CHECK) 3199 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3203 INLINE l_imatrix operator +(
const l_imatrix_slice &ms,
const rmatrix &m)
3205 #if(CXSC_INDEX_CHECK) 3206 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3210 INLINE l_imatrix operator +(
const rmatrix_slice &m1,
const l_imatrix_slice &m2)
3212 #if(CXSC_INDEX_CHECK) 3213 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3217 INLINE l_imatrix operator +(
const l_imatrix_slice &m1,
const rmatrix_slice &m2)
3219 #if(CXSC_INDEX_CHECK) 3220 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3224 INLINE l_imatrix &
operator +=(l_imatrix &m1,
const rmatrix &m2)
3226 #if(CXSC_INDEX_CHECK) 3227 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3231 INLINE l_imatrix &
operator +=(l_imatrix &m1,
const rmatrix_slice &ms)
3233 #if(CXSC_INDEX_CHECK) 3234 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3240 INLINE l_imatrix operator -(
const rmatrix &m1,
const l_imatrix &m2)
3241 #if(CXSC_INDEX_CHECK) 3242 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3246 INLINE l_imatrix operator -(
const l_imatrix &m1,
const rmatrix &m2)
3248 #if(CXSC_INDEX_CHECK) 3249 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3253 INLINE l_imatrix operator -(
const rmatrix &m,
const l_imatrix_slice &ms)
3255 #if(CXSC_INDEX_CHECK) 3256 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3260 INLINE l_imatrix operator -(
const l_imatrix &m,
const rmatrix_slice &ms)
3262 #if(CXSC_INDEX_CHECK) 3263 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3267 INLINE l_imatrix operator -(
const rmatrix_slice &ms,
const l_imatrix &m)
3269 #if(CXSC_INDEX_CHECK) 3270 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3274 INLINE l_imatrix operator -(
const l_imatrix_slice &ms,
const rmatrix &m)
3276 #if(CXSC_INDEX_CHECK) 3277 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3281 INLINE l_imatrix operator -(
const rmatrix_slice &ms1,
const l_imatrix_slice &ms2)
3283 #if(CXSC_INDEX_CHECK) 3284 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3288 INLINE l_imatrix operator -(
const l_imatrix_slice &ms1,
const rmatrix_slice &ms2)
3290 #if(CXSC_INDEX_CHECK) 3291 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3295 INLINE l_imatrix &operator -=(l_imatrix &m1,
const rmatrix &m2)
3297 #if(CXSC_INDEX_CHECK) 3298 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3302 INLINE l_imatrix &operator -=(l_imatrix &m1,
const rmatrix_slice &ms)
3304 #if(CXSC_INDEX_CHECK) 3305 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3311 INLINE l_imatrix
operator *(
const rmatrix &m1,
const l_imatrix &m2)
3312 #if(CXSC_INDEX_CHECK) 3313 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3317 INLINE l_imatrix
operator *(
const l_imatrix &m1,
const rmatrix &m2)
3319 #if(CXSC_INDEX_CHECK) 3320 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3324 INLINE l_imatrix
operator *(
const rmatrix &m1,
const l_imatrix_slice &ms)
3326 #if(CXSC_INDEX_CHECK) 3327 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3331 INLINE l_imatrix
operator *(
const l_imatrix &m1,
const rmatrix_slice &ms)
3333 #if(CXSC_INDEX_CHECK) 3334 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3338 INLINE l_imatrix
operator *(
const rmatrix_slice &ms,
const l_imatrix &m1)
3340 #if(CXSC_INDEX_CHECK) 3341 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3345 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms,
const rmatrix &m1)
3347 #if(CXSC_INDEX_CHECK) 3348 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3352 INLINE l_imatrix
operator *(
const rmatrix_slice &ms1,
const l_imatrix_slice &ms2)
3354 #if(CXSC_INDEX_CHECK) 3355 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3359 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms1,
const rmatrix_slice &ms2)
3361 #if(CXSC_INDEX_CHECK) 3362 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3366 INLINE l_imatrix &
operator *=(l_imatrix &m1,
const rmatrix &m2)
3368 #if(CXSC_INDEX_CHECK) 3369 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3373 INLINE l_imatrix &
operator *=(l_imatrix &m1,
const rmatrix_slice &ms)
3375 #if(CXSC_INDEX_CHECK) 3376 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3382 INLINE l_imatrix operator |(
const rmatrix &m1,
const l_imatrix &m2)
3383 #if(CXSC_INDEX_CHECK) 3384 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3388 INLINE l_imatrix operator |(
const l_imatrix &m1,
const rmatrix &m2)
3390 #if(CXSC_INDEX_CHECK) 3391 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3395 INLINE l_imatrix operator |(
const rmatrix &m,
const l_imatrix_slice &ms)
3397 #if(CXSC_INDEX_CHECK) 3398 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3402 INLINE l_imatrix operator |(
const l_imatrix &m,
const rmatrix_slice &ms)
3404 #if(CXSC_INDEX_CHECK) 3405 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3409 INLINE l_imatrix operator |(
const rmatrix_slice &ms,
const l_imatrix &m)
3411 #if(CXSC_INDEX_CHECK) 3412 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3416 INLINE l_imatrix operator |(
const l_imatrix_slice &ms,
const rmatrix &m)
3418 #if(CXSC_INDEX_CHECK) 3419 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3423 INLINE l_imatrix operator |(
const rmatrix_slice &m1,
const l_imatrix_slice &m2)
3425 #if(CXSC_INDEX_CHECK) 3426 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3430 INLINE l_imatrix operator |(
const l_imatrix_slice &m1,
const rmatrix_slice &m2)
3432 #if(CXSC_INDEX_CHECK) 3433 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3437 INLINE l_imatrix &operator |=(l_imatrix &m1,
const rmatrix &m2)
3439 #if(CXSC_INDEX_CHECK) 3440 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3444 INLINE l_imatrix &operator |=(l_imatrix &m1,
const rmatrix_slice &ms)
3446 #if(CXSC_INDEX_CHECK) 3447 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3453 INLINE l_imatrix operator &(
const rmatrix &m1,
const l_imatrix &m2)
3454 #if(CXSC_INDEX_CHECK) 3455 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3459 INLINE l_imatrix operator &(
const l_imatrix &m1,
const rmatrix &m2)
3461 #if(CXSC_INDEX_CHECK) 3462 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3466 INLINE l_imatrix operator &(
const rmatrix &m,
const l_imatrix_slice &ms)
3468 #if(CXSC_INDEX_CHECK) 3469 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3473 INLINE l_imatrix operator &(
const l_imatrix &m,
const rmatrix_slice &ms)
3475 #if(CXSC_INDEX_CHECK) 3476 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3480 INLINE l_imatrix operator &(
const rmatrix_slice &ms,
const l_imatrix &m)
3482 #if(CXSC_INDEX_CHECK) 3483 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3487 INLINE l_imatrix operator &(
const l_imatrix_slice &ms,
const rmatrix &m)
3489 #if(CXSC_INDEX_CHECK) 3490 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3494 INLINE l_imatrix operator &(
const rmatrix_slice &m1,
const l_imatrix_slice &m2)
3496 #if(CXSC_INDEX_CHECK) 3497 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3501 INLINE l_imatrix operator &(
const l_imatrix_slice &m1,
const rmatrix_slice &m2)
3503 #if(CXSC_INDEX_CHECK) 3504 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3508 INLINE l_imatrix &operator &=(l_imatrix &m1,
const rmatrix &m2)
3510 #if(CXSC_INDEX_CHECK) 3511 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3515 INLINE l_imatrix &operator &=(l_imatrix &m1,
const rmatrix_slice &ms)
3517 #if(CXSC_INDEX_CHECK) 3518 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3525 INLINE l_imatrix operator +(
const l_rmatrix &m1,
const l_imatrix &m2)
3526 #if(CXSC_INDEX_CHECK) 3527 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3531 INLINE l_imatrix operator +(
const l_imatrix &m1,
const l_rmatrix &m2)
3533 #if(CXSC_INDEX_CHECK) 3534 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3538 INLINE l_imatrix operator +(
const l_rmatrix &m,
const l_imatrix_slice &ms)
3540 #if(CXSC_INDEX_CHECK) 3541 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3545 INLINE l_imatrix operator +(
const l_imatrix &m,
const l_rmatrix_slice &ms)
3547 #if(CXSC_INDEX_CHECK) 3548 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3552 INLINE l_imatrix operator +(
const l_rmatrix_slice &ms,
const l_imatrix &m)
3554 #if(CXSC_INDEX_CHECK) 3555 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3559 INLINE l_imatrix operator +(
const l_imatrix_slice &ms,
const l_rmatrix &m)
3561 #if(CXSC_INDEX_CHECK) 3562 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3566 INLINE l_imatrix operator +(
const l_rmatrix_slice &m1,
const l_imatrix_slice &m2)
3568 #if(CXSC_INDEX_CHECK) 3569 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3573 INLINE l_imatrix operator +(
const l_imatrix_slice &m1,
const l_rmatrix_slice &m2)
3575 #if(CXSC_INDEX_CHECK) 3576 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3580 INLINE l_imatrix &
operator +=(l_imatrix &m1,
const l_rmatrix &m2)
3582 #if(CXSC_INDEX_CHECK) 3583 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3587 INLINE l_imatrix &
operator +=(l_imatrix &m1,
const l_rmatrix_slice &ms)
3589 #if(CXSC_INDEX_CHECK) 3590 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3596 INLINE l_imatrix operator -(
const l_rmatrix &m1,
const l_imatrix &m2)
3597 #if(CXSC_INDEX_CHECK) 3598 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3602 INLINE l_imatrix operator -(
const l_imatrix &m1,
const l_rmatrix &m2)
3604 #if(CXSC_INDEX_CHECK) 3605 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3609 INLINE l_imatrix operator -(
const l_rmatrix &m,
const l_imatrix_slice &ms)
3611 #if(CXSC_INDEX_CHECK) 3612 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3616 INLINE l_imatrix operator -(
const l_imatrix &m,
const l_rmatrix_slice &ms)
3618 #if(CXSC_INDEX_CHECK) 3619 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3623 INLINE l_imatrix operator -(
const l_rmatrix_slice &ms,
const l_imatrix &m)
3625 #if(CXSC_INDEX_CHECK) 3626 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3630 INLINE l_imatrix operator -(
const l_imatrix_slice &ms,
const l_rmatrix &m)
3632 #if(CXSC_INDEX_CHECK) 3633 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3637 INLINE l_imatrix operator -(
const l_rmatrix_slice &ms1,
const l_imatrix_slice &ms2)
3639 #if(CXSC_INDEX_CHECK) 3640 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3644 INLINE l_imatrix operator -(
const l_imatrix_slice &ms1,
const l_rmatrix_slice &ms2)
3646 #if(CXSC_INDEX_CHECK) 3647 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3651 INLINE l_imatrix &operator -=(l_imatrix &m1,
const l_rmatrix &m2)
3653 #if(CXSC_INDEX_CHECK) 3654 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3658 INLINE l_imatrix &operator -=(l_imatrix &m1,
const l_rmatrix_slice &ms)
3660 #if(CXSC_INDEX_CHECK) 3661 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3667 INLINE l_imatrix
operator *(
const l_rmatrix &m1,
const l_imatrix &m2)
3668 #if(CXSC_INDEX_CHECK) 3669 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3673 INLINE l_imatrix
operator *(
const l_imatrix &m1,
const l_rmatrix &m2)
3675 #if(CXSC_INDEX_CHECK) 3676 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3680 INLINE l_imatrix
operator *(
const l_rmatrix &m1,
const l_imatrix_slice &ms)
3682 #if(CXSC_INDEX_CHECK) 3683 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3687 INLINE l_imatrix
operator *(
const l_imatrix &m1,
const l_rmatrix_slice &ms)
3689 #if(CXSC_INDEX_CHECK) 3690 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3694 INLINE l_imatrix
operator *(
const l_rmatrix_slice &ms,
const l_imatrix &m1)
3696 #if(CXSC_INDEX_CHECK) 3697 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3701 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms,
const l_rmatrix &m1)
3703 #if(CXSC_INDEX_CHECK) 3704 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3708 INLINE l_imatrix
operator *(
const l_rmatrix_slice &ms1,
const l_imatrix_slice &ms2)
3710 #if(CXSC_INDEX_CHECK) 3711 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3715 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms1,
const l_rmatrix_slice &ms2)
3717 #if(CXSC_INDEX_CHECK) 3718 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3722 INLINE l_imatrix &
operator *=(l_imatrix &m1,
const l_rmatrix &m2)
3724 #if(CXSC_INDEX_CHECK) 3725 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3729 INLINE l_imatrix &
operator *=(l_imatrix &m1,
const l_rmatrix_slice &ms)
3731 #if(CXSC_INDEX_CHECK) 3732 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3738 INLINE l_imatrix operator |(
const l_rmatrix &m1,
const l_imatrix &m2)
3739 #if(CXSC_INDEX_CHECK) 3740 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3744 INLINE l_imatrix operator |(
const l_imatrix &m1,
const l_rmatrix &m2)
3746 #if(CXSC_INDEX_CHECK) 3747 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3751 INLINE l_imatrix operator |(
const l_rmatrix &m,
const l_imatrix_slice &ms)
3753 #if(CXSC_INDEX_CHECK) 3754 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3758 INLINE l_imatrix operator |(
const l_imatrix &m,
const l_rmatrix_slice &ms)
3760 #if(CXSC_INDEX_CHECK) 3761 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3765 INLINE l_imatrix operator |(
const l_rmatrix_slice &ms,
const l_imatrix &m)
3767 #if(CXSC_INDEX_CHECK) 3768 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3772 INLINE l_imatrix operator |(
const l_imatrix_slice &ms,
const l_rmatrix &m)
3774 #if(CXSC_INDEX_CHECK) 3775 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3779 INLINE l_imatrix operator |(
const l_rmatrix_slice &m1,
const l_imatrix_slice &m2)
3781 #if(CXSC_INDEX_CHECK) 3782 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3786 INLINE l_imatrix operator |(
const l_imatrix_slice &m1,
const l_rmatrix_slice &m2)
3788 #if(CXSC_INDEX_CHECK) 3789 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3793 INLINE l_imatrix &operator |=(l_imatrix &m1,
const l_rmatrix &m2)
3795 #if(CXSC_INDEX_CHECK) 3796 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3800 INLINE l_imatrix &operator |=(l_imatrix &m1,
const l_rmatrix_slice &ms)
3802 #if(CXSC_INDEX_CHECK) 3803 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3809 INLINE l_imatrix operator &(
const l_rmatrix &m1,
const l_imatrix &m2)
3810 #if(CXSC_INDEX_CHECK) 3811 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3815 INLINE l_imatrix operator &(
const l_imatrix &m1,
const l_rmatrix &m2)
3817 #if(CXSC_INDEX_CHECK) 3818 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3822 INLINE l_imatrix operator &(
const l_rmatrix &m,
const l_imatrix_slice &ms)
3824 #if(CXSC_INDEX_CHECK) 3825 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3829 INLINE l_imatrix operator &(
const l_imatrix &m,
const l_rmatrix_slice &ms)
3831 #if(CXSC_INDEX_CHECK) 3832 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3836 INLINE l_imatrix operator &(
const l_rmatrix_slice &ms,
const l_imatrix &m)
3838 #if(CXSC_INDEX_CHECK) 3839 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3843 INLINE l_imatrix operator &(
const l_imatrix_slice &ms,
const l_rmatrix &m)
3845 #if(CXSC_INDEX_CHECK) 3846 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3850 INLINE l_imatrix operator &(
const l_rmatrix_slice &m1,
const l_imatrix_slice &m2)
3852 #if(CXSC_INDEX_CHECK) 3853 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3857 INLINE l_imatrix operator &(
const l_imatrix_slice &m1,
const l_rmatrix_slice &m2)
3859 #if(CXSC_INDEX_CHECK) 3860 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3864 INLINE l_imatrix &operator &=(l_imatrix &m1,
const l_rmatrix &m2)
3866 #if(CXSC_INDEX_CHECK) 3867 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3871 INLINE l_imatrix &operator &=(l_imatrix &m1,
const l_rmatrix_slice &ms)
3873 #if(CXSC_INDEX_CHECK) 3874 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3881 INLINE l_imatrix operator +(
const imatrix &m1,
const l_imatrix &m2)
3882 #if(CXSC_INDEX_CHECK) 3883 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3887 INLINE l_imatrix operator +(
const l_imatrix &m1,
const imatrix &m2)
3889 #if(CXSC_INDEX_CHECK) 3890 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3894 INLINE l_imatrix operator +(
const imatrix &m,
const l_imatrix_slice &ms)
3896 #if(CXSC_INDEX_CHECK) 3897 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3901 INLINE l_imatrix operator +(
const l_imatrix &m,
const imatrix_slice &ms)
3903 #if(CXSC_INDEX_CHECK) 3904 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3908 INLINE l_imatrix operator +(
const imatrix_slice &ms,
const l_imatrix &m)
3910 #if(CXSC_INDEX_CHECK) 3911 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3915 INLINE l_imatrix operator +(
const l_imatrix_slice &ms,
const imatrix &m)
3917 #if(CXSC_INDEX_CHECK) 3918 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3922 INLINE l_imatrix operator +(
const imatrix_slice &m1,
const l_imatrix_slice &m2)
3924 #if(CXSC_INDEX_CHECK) 3925 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3929 INLINE l_imatrix operator +(
const l_imatrix_slice &m1,
const imatrix_slice &m2)
3931 #if(CXSC_INDEX_CHECK) 3932 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3936 INLINE l_imatrix &
operator +=(l_imatrix &m1,
const imatrix &m2)
3938 #if(CXSC_INDEX_CHECK) 3939 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3943 INLINE l_imatrix &
operator +=(l_imatrix &m1,
const imatrix_slice &ms)
3945 #if(CXSC_INDEX_CHECK) 3946 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3952 INLINE l_imatrix operator -(
const imatrix &m1,
const l_imatrix &m2)
3953 #if(CXSC_INDEX_CHECK) 3954 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3958 INLINE l_imatrix operator -(
const l_imatrix &m1,
const imatrix &m2)
3960 #if(CXSC_INDEX_CHECK) 3961 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3965 INLINE l_imatrix operator -(
const imatrix &m,
const l_imatrix_slice &ms)
3967 #if(CXSC_INDEX_CHECK) 3968 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3972 INLINE l_imatrix operator -(
const l_imatrix &m,
const imatrix_slice &ms)
3974 #if(CXSC_INDEX_CHECK) 3975 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3979 INLINE l_imatrix operator -(
const imatrix_slice &ms,
const l_imatrix &m)
3981 #if(CXSC_INDEX_CHECK) 3982 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3986 INLINE l_imatrix operator -(
const l_imatrix_slice &ms,
const imatrix &m)
3988 #if(CXSC_INDEX_CHECK) 3989 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
3993 INLINE l_imatrix operator -(
const imatrix_slice &ms1,
const l_imatrix_slice &ms2)
3995 #if(CXSC_INDEX_CHECK) 3996 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4000 INLINE l_imatrix operator -(
const l_imatrix_slice &ms1,
const imatrix_slice &ms2)
4002 #if(CXSC_INDEX_CHECK) 4003 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4007 INLINE l_imatrix &operator -=(l_imatrix &m1,
const imatrix &m2)
4009 #if(CXSC_INDEX_CHECK) 4010 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4014 INLINE l_imatrix &operator -=(l_imatrix &m1,
const imatrix_slice &ms)
4016 #if(CXSC_INDEX_CHECK) 4017 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4023 INLINE l_imatrix
operator *(
const imatrix &m1,
const l_imatrix &m2)
4024 #if(CXSC_INDEX_CHECK) 4025 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4029 INLINE l_imatrix
operator *(
const l_imatrix &m1,
const imatrix &m2)
4031 #if(CXSC_INDEX_CHECK) 4032 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4036 INLINE l_imatrix
operator *(
const imatrix &m1,
const l_imatrix_slice &ms)
4038 #if(CXSC_INDEX_CHECK) 4039 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4043 INLINE l_imatrix
operator *(
const l_imatrix &m1,
const imatrix_slice &ms)
4045 #if(CXSC_INDEX_CHECK) 4046 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4050 INLINE l_imatrix
operator *(
const imatrix_slice &ms,
const l_imatrix &m1)
4052 #if(CXSC_INDEX_CHECK) 4053 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4057 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms,
const imatrix &m1)
4059 #if(CXSC_INDEX_CHECK) 4060 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4064 INLINE l_imatrix
operator *(
const imatrix_slice &ms1,
const l_imatrix_slice &ms2)
4066 #if(CXSC_INDEX_CHECK) 4067 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4071 INLINE l_imatrix
operator *(
const l_imatrix_slice &ms1,
const imatrix_slice &ms2)
4073 #if(CXSC_INDEX_CHECK) 4074 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4078 INLINE l_imatrix &
operator *=(l_imatrix &m1,
const imatrix &m2)
4080 #if(CXSC_INDEX_CHECK) 4081 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4085 INLINE l_imatrix &
operator *=(l_imatrix &m1,
const imatrix_slice &ms)
4087 #if(CXSC_INDEX_CHECK) 4088 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4094 INLINE l_imatrix operator |(
const imatrix &m1,
const l_imatrix &m2)
4095 #if(CXSC_INDEX_CHECK) 4096 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4100 INLINE l_imatrix operator |(
const l_imatrix &m1,
const imatrix &m2)
4102 #if(CXSC_INDEX_CHECK) 4103 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4107 INLINE l_imatrix operator |(
const imatrix &m,
const l_imatrix_slice &ms)
4109 #if(CXSC_INDEX_CHECK) 4110 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4114 INLINE l_imatrix operator |(
const l_imatrix &m,
const imatrix_slice &ms)
4116 #if(CXSC_INDEX_CHECK) 4117 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4121 INLINE l_imatrix operator |(
const imatrix_slice &ms,
const l_imatrix &m)
4123 #if(CXSC_INDEX_CHECK) 4124 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4128 INLINE l_imatrix operator |(
const l_imatrix_slice &ms,
const imatrix &m)
4130 #if(CXSC_INDEX_CHECK) 4131 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4135 INLINE l_imatrix operator |(
const imatrix_slice &m1,
const l_imatrix_slice &m2)
4137 #if(CXSC_INDEX_CHECK) 4138 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4142 INLINE l_imatrix operator |(
const l_imatrix_slice &m1,
const imatrix_slice &m2)
4144 #if(CXSC_INDEX_CHECK) 4145 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4149 INLINE l_imatrix &operator |=(l_imatrix &m1,
const imatrix &m2)
4151 #if(CXSC_INDEX_CHECK) 4152 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4156 INLINE l_imatrix &operator |=(l_imatrix &m1,
const imatrix_slice &ms)
4158 #if(CXSC_INDEX_CHECK) 4159 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4165 INLINE l_imatrix operator &(
const imatrix &m1,
const l_imatrix &m2)
4166 #if(CXSC_INDEX_CHECK) 4167 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4171 INLINE l_imatrix operator &(
const l_imatrix &m1,
const imatrix &m2)
4173 #if(CXSC_INDEX_CHECK) 4174 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4178 INLINE l_imatrix operator &(
const imatrix &m,
const l_imatrix_slice &ms)
4180 #if(CXSC_INDEX_CHECK) 4181 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4185 INLINE l_imatrix operator &(
const l_imatrix &m,
const imatrix_slice &ms)
4187 #if(CXSC_INDEX_CHECK) 4188 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4192 INLINE l_imatrix operator &(
const imatrix_slice &ms,
const l_imatrix &m)
4194 #if(CXSC_INDEX_CHECK) 4195 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4199 INLINE l_imatrix operator &(
const l_imatrix_slice &ms,
const imatrix &m)
4201 #if(CXSC_INDEX_CHECK) 4202 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4206 INLINE l_imatrix operator &(
const imatrix_slice &m1,
const l_imatrix_slice &m2)
4208 #if(CXSC_INDEX_CHECK) 4209 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4213 INLINE l_imatrix operator &(
const l_imatrix_slice &m1,
const imatrix_slice &m2)
4215 #if(CXSC_INDEX_CHECK) 4216 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4220 INLINE l_imatrix &operator &=(l_imatrix &m1,
const imatrix &m2)
4222 #if(CXSC_INDEX_CHECK) 4223 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4227 INLINE l_imatrix &operator &=(l_imatrix &m1,
const imatrix_slice &ms)
4229 #if(CXSC_INDEX_CHECK) 4230 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4237 INLINE l_imatrix operator +(
const l_rmatrix &m1,
const imatrix &m2)
4238 #if(CXSC_INDEX_CHECK) 4239 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4243 INLINE l_imatrix operator +(
const imatrix &m1,
const l_rmatrix &m2)
4245 #if(CXSC_INDEX_CHECK) 4246 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4250 INLINE l_imatrix operator +(
const l_rmatrix &m,
const imatrix_slice &ms)
4252 #if(CXSC_INDEX_CHECK) 4253 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4257 INLINE l_imatrix operator +(
const imatrix &m,
const l_rmatrix_slice &ms)
4259 #if(CXSC_INDEX_CHECK) 4260 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4264 INLINE l_imatrix operator +(
const l_rmatrix_slice &ms,
const imatrix &m)
4266 #if(CXSC_INDEX_CHECK) 4267 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4271 INLINE l_imatrix operator +(
const imatrix_slice &ms,
const l_rmatrix &m)
4273 #if(CXSC_INDEX_CHECK) 4274 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4278 INLINE l_imatrix operator +(
const l_rmatrix_slice &m1,
const imatrix_slice &m2)
4280 #if(CXSC_INDEX_CHECK) 4281 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4285 INLINE l_imatrix operator +(
const imatrix_slice &m1,
const l_rmatrix_slice &m2)
4287 #if(CXSC_INDEX_CHECK) 4288 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4294 INLINE l_imatrix operator -(
const l_rmatrix &m1,
const imatrix &m2)
4295 #if(CXSC_INDEX_CHECK) 4296 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4300 INLINE l_imatrix operator -(
const imatrix &m1,
const l_rmatrix &m2)
4302 #if(CXSC_INDEX_CHECK) 4303 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4307 INLINE l_imatrix operator -(
const l_rmatrix &m,
const imatrix_slice &ms)
4309 #if(CXSC_INDEX_CHECK) 4310 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4314 INLINE l_imatrix operator -(
const imatrix &m,
const l_rmatrix_slice &ms)
4316 #if(CXSC_INDEX_CHECK) 4317 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4321 INLINE l_imatrix operator -(
const l_rmatrix_slice &ms,
const imatrix &m)
4323 #if(CXSC_INDEX_CHECK) 4324 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4328 INLINE l_imatrix operator -(
const imatrix_slice &ms,
const l_rmatrix &m)
4330 #if(CXSC_INDEX_CHECK) 4331 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4335 INLINE l_imatrix operator -(
const l_rmatrix_slice &ms1,
const imatrix_slice &ms2)
4337 #if(CXSC_INDEX_CHECK) 4338 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4342 INLINE l_imatrix operator -(
const imatrix_slice &ms1,
const l_rmatrix_slice &ms2)
4344 #if(CXSC_INDEX_CHECK) 4345 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4351 INLINE l_imatrix
operator *(
const l_rmatrix &m1,
const imatrix &m2)
4352 #if(CXSC_INDEX_CHECK) 4353 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4357 INLINE l_imatrix
operator *(
const imatrix &m1,
const l_rmatrix &m2)
4359 #if(CXSC_INDEX_CHECK) 4360 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4364 INLINE l_imatrix
operator *(
const l_rmatrix &m1,
const imatrix_slice &ms)
4366 #if(CXSC_INDEX_CHECK) 4367 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4371 INLINE l_imatrix
operator *(
const imatrix &m1,
const l_rmatrix_slice &ms)
4373 #if(CXSC_INDEX_CHECK) 4374 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4378 INLINE l_imatrix
operator *(
const l_rmatrix_slice &ms,
const imatrix &m1)
4380 #if(CXSC_INDEX_CHECK) 4381 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4385 INLINE l_imatrix
operator *(
const imatrix_slice &ms,
const l_rmatrix &m1)
4387 #if(CXSC_INDEX_CHECK) 4388 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4392 INLINE l_imatrix
operator *(
const l_rmatrix_slice &ms1,
const imatrix_slice &ms2)
4394 #if(CXSC_INDEX_CHECK) 4395 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4399 INLINE l_imatrix
operator *(
const imatrix_slice &ms1,
const l_rmatrix_slice &ms2)
4401 #if(CXSC_INDEX_CHECK) 4402 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4408 INLINE l_imatrix operator |(
const l_rmatrix &m1,
const imatrix &m2)
4409 #if(CXSC_INDEX_CHECK) 4410 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4414 INLINE l_imatrix operator |(
const imatrix &m1,
const l_rmatrix &m2)
4416 #if(CXSC_INDEX_CHECK) 4417 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4421 INLINE l_imatrix operator |(
const l_rmatrix &m,
const imatrix_slice &ms)
4423 #if(CXSC_INDEX_CHECK) 4424 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4428 INLINE l_imatrix operator |(
const imatrix &m,
const l_rmatrix_slice &ms)
4430 #if(CXSC_INDEX_CHECK) 4431 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4435 INLINE l_imatrix operator |(
const l_rmatrix_slice &ms,
const imatrix &m)
4437 #if(CXSC_INDEX_CHECK) 4438 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4442 INLINE l_imatrix operator |(
const imatrix_slice &ms,
const l_rmatrix &m)
4444 #if(CXSC_INDEX_CHECK) 4445 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4449 INLINE l_imatrix operator |(
const l_rmatrix_slice &m1,
const imatrix_slice &m2)
4451 #if(CXSC_INDEX_CHECK) 4452 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4456 INLINE l_imatrix operator |(
const imatrix_slice &m1,
const l_rmatrix_slice &m2)
4458 #if(CXSC_INDEX_CHECK) 4459 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4465 INLINE l_imatrix operator &(
const l_rmatrix &m1,
const imatrix &m2)
4466 #if(CXSC_INDEX_CHECK) 4467 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4471 INLINE l_imatrix operator &(
const imatrix &m1,
const l_rmatrix &m2)
4473 #if(CXSC_INDEX_CHECK) 4474 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4478 INLINE l_imatrix operator &(
const l_rmatrix &m,
const imatrix_slice &ms)
4480 #if(CXSC_INDEX_CHECK) 4481 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4485 INLINE l_imatrix operator &(
const imatrix &m,
const l_rmatrix_slice &ms)
4487 #if(CXSC_INDEX_CHECK) 4488 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4492 INLINE l_imatrix operator &(
const l_rmatrix_slice &ms,
const imatrix &m)
4494 #if(CXSC_INDEX_CHECK) 4495 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4499 INLINE l_imatrix operator &(
const imatrix_slice &ms,
const l_rmatrix &m)
4501 #if(CXSC_INDEX_CHECK) 4502 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4506 INLINE l_imatrix operator &(
const l_rmatrix_slice &m1,
const imatrix_slice &m2)
4508 #if(CXSC_INDEX_CHECK) 4509 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4513 INLINE l_imatrix operator &(
const imatrix_slice &m1,
const l_rmatrix_slice &m2)
4515 #if(CXSC_INDEX_CHECK) 4516 throw(ERROR_LIMATRIX_OP_WITH_WRONG_DIM);
4523 INLINE l_imatrix operator |(
const rmatrix &rv1,
const l_rmatrix &rv2)
4524 #if(CXSC_INDEX_CHECK) 4525 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4529 INLINE l_imatrix operator |(
const l_rmatrix &rv1,
const rmatrix &rv2)
4531 #if(CXSC_INDEX_CHECK) 4532 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4536 INLINE l_imatrix operator |(
const l_rmatrix &rv,
const rmatrix_slice &sl)
4538 #if(CXSC_INDEX_CHECK) 4539 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4543 INLINE l_imatrix operator |(
const rmatrix_slice &sl,
const l_rmatrix &rv)
4545 #if(CXSC_INDEX_CHECK) 4546 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4550 INLINE l_imatrix operator |(
const l_rmatrix_slice &sl,
const rmatrix &rv)
4552 #if(CXSC_INDEX_CHECK) 4553 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4557 INLINE l_imatrix operator |(
const rmatrix &rv,
const l_rmatrix_slice &sl)
4559 #if(CXSC_INDEX_CHECK) 4560 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4564 INLINE l_imatrix operator |(
const l_rmatrix_slice &sl1,
const rmatrix_slice &sl2)
4566 #if(CXSC_INDEX_CHECK) 4567 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4571 INLINE l_imatrix operator |(
const rmatrix_slice &sl1,
const l_rmatrix_slice &sl2)
4573 #if(CXSC_INDEX_CHECK) 4574 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4582 INLINE l_imatrix operator |(
const l_rmatrix &rv1,
const l_rmatrix &rv2)
4583 #if(CXSC_INDEX_CHECK) 4584 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4588 INLINE l_imatrix operator |(
const l_rmatrix &rv1,
const l_rmatrix &rv2)
4590 #if(CXSC_INDEX_CHECK) 4591 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4595 INLINE l_imatrix operator |(
const l_rmatrix &rv,
const l_rmatrix_slice &sl)
4597 #if(CXSC_INDEX_CHECK) 4598 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4602 INLINE l_imatrix operator |(
const l_rmatrix_slice &sl,
const l_rmatrix &rv)
4604 #if(CXSC_INDEX_CHECK) 4605 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4609 INLINE l_imatrix operator |(
const l_rmatrix_slice &sl,
const l_rmatrix &rv)
4611 #if(CXSC_INDEX_CHECK) 4612 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4616 INLINE l_imatrix operator |(
const l_rmatrix &rv,
const l_rmatrix_slice &sl)
4618 #if(CXSC_INDEX_CHECK) 4619 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4623 INLINE l_imatrix operator |(
const l_rmatrix_slice &sl1,
const l_rmatrix_slice &sl2)
4625 #if(CXSC_INDEX_CHECK) 4626 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4630 INLINE l_imatrix operator |(
const l_rmatrix_slice &sl1,
const l_rmatrix_slice &sl2)
4632 #if(CXSC_INDEX_CHECK) 4633 throw(ERROR__OP_WITH_WRONG_DIM<l_imatrix>);
4644 INLINE
bool operator ==(
const l_imatrix &m1,
const l_imatrix &m2)
throw();
4646 INLINE
bool operator !=(
const l_imatrix &m1,
const l_imatrix &m2)
throw();
4648 INLINE
bool operator <(
const l_imatrix &m1,
const l_imatrix &m2)
throw();
4650 INLINE
bool operator <=(
const l_imatrix &m1,
const l_imatrix &m2)
throw();
4652 INLINE
bool operator >(
const l_imatrix &m1,
const l_imatrix &m2)
throw();
4654 INLINE
bool operator >=(
const l_imatrix &m1,
const l_imatrix &m2)
throw();
4656 INLINE
bool operator ==(
const l_imatrix &m1,
const l_imatrix_slice &ms)
throw();
4658 INLINE
bool operator !=(
const l_imatrix &m1,
const l_imatrix_slice &ms)
throw();
4660 INLINE
bool operator <(
const l_imatrix &m1,
const l_imatrix_slice &ms)
throw();
4662 INLINE
bool operator <=(
const l_imatrix &m1,
const l_imatrix_slice &ms)
throw();
4664 INLINE
bool operator >(
const l_imatrix &m1,
const l_imatrix_slice &ms)
throw();
4666 INLINE
bool operator >=(
const l_imatrix &m1,
const l_imatrix_slice &ms)
throw();
4671 INLINE
bool operator ==(
const l_imatrix_slice &m1,
const l_imatrix_slice &m2)
throw();
4673 INLINE
bool operator !=(
const l_imatrix_slice &m1,
const l_imatrix_slice &m2)
throw();
4675 INLINE
bool operator <(
const l_imatrix_slice &m1,
const l_imatrix_slice &m2)
throw();
4677 INLINE
bool operator <=(
const l_imatrix_slice &m1,
const l_imatrix_slice &m2)
throw();
4679 INLINE
bool operator >(
const l_imatrix_slice &m1,
const l_imatrix_slice &m2)
throw();
4681 INLINE
bool operator >=(
const l_imatrix_slice &m1,
const l_imatrix_slice &m2)
throw();
4686 INLINE
bool operator !(
const l_imatrix &ms)
throw();
4688 INLINE
bool operator !(
const l_imatrix_slice &ms)
throw();
4693 INLINE std::ostream &operator <<(std::ostream &s,
const l_imatrix &r)
throw();
4695 INLINE std::ostream &operator <<(std::ostream &s,
const l_imatrix_slice &r)
throw();
4697 INLINE std::istream &operator >>(std::istream &s,l_imatrix &r)
throw();
4699 INLINE std::istream &operator >>(std::istream &s,l_imatrix_slice &r)
throw();
4702 l_imatrix
Id (
const l_imatrix& );
4704 l_imatrix
transp (
const l_imatrix& );
4708 INLINE
int RowLen (
const l_imatrix& );
4710 INLINE
int ColLen (
const l_imatrix& );
4712 INLINE
int RowLen (
const l_imatrix_slice& );
4714 INLINE
int ColLen (
const l_imatrix_slice& );
4720 #ifdef _CXSC_INCL_INL 4721 #include "matrix.inl" 4722 #include "l_imatrix.inl" The Multiple-Precision Data Type l_rmatrix_slice.
l_imatrix_subv & operator *=(const l_interval &c)
Implementation of multiplication and allocation operation.
l_interval & operator [](const int &i) const
Operator for accessing the single elements of the vector.
real MaxRelDiam(const imatrix_subv &v)
Computes the relative diameter .
The Multiple-Precision Data Type l_interval.
l_imatrix_subv & operator -=(const l_interval &c)
Implementation of subtraction and allocation operation.
The Data Type rmatrix_slice.
cimatrix & operator/=(cimatrix &m, const cinterval &c)
Implementation of division and allocation operation.
The Data Type imatrix_subv.
The Multiple-Precision Data Type l_real.
l_imatrix_subv & operator+=(const l_interval &c)
Implementation of addition and allocation operation.
friend int Ub(const l_imatrix_subv &rv)
Returns the upper bound of the vector.
l_imatrix_slice & operator *=(const l_interval &c)
Implementation of multiplication and allocation operation.
l_imatrix_subv & operator &=(const l_ivector &rv)
Allocates the intersection of the arguments to the first argument.
cimatrix_subv & SetUncheckedInf(cimatrix_subv &iv, const complex &r)
Returns the matrix with the new unchecked given infimum value.
The Multiple-Precision Data Type l_rmatrix_subv.
l_imatrix_slice(const l_imatrix_slice &ms)
Constructor of class l_imatrix_slice.
The Multiple-Precision Data Type l_ivector_slice.
int Lb(const cimatrix &rm, const int &i)
Returns the lower bound index.
The namespace cxsc, providing all functionality of the class library C-XSC.
friend l_imatrix_subv Col(l_imatrix &m, const int &i)
Returns one column of the matrix as a vector.
cvector mid(const cimatrix_subv &mv)
Returns the middle of the matrix.
The Scalar Type interval.
l_ivector()
Constructor of class l_ivector.
l_imatrix_subv(const l_imatrix_subv &v)
Constructor of class l_imatrix_subv.
The Multiple-Precision Data Type l_imatrix_slice.
l_imatrix_subv & operator()()
Operator for accessing the whole vector.
cimatrix & SetLb(cimatrix &m, const int &i, const int &j)
Sets the lower bound index.
The Multiple-Precision Data Type l_ivector.
l_imatrix_slice & operator()()
Operator for accessing the whole matrix.
l_imatrix_subv operator [](const int &i) const
Operator for accessing a single row of the matrix.
void DoubleSize(cimatrix &A)
Doubles the size of the matrix.
l_imatrix & operator=(const l_interval &r)
Implementation of standard assigning operator.
l_imatrix()
Constructor of class l_imatrix.
The Data Type ivector_slice.
cimatrix & operator *=(cimatrix &m, const cinterval &c)
Implementation of multiplication and allocation operation.
l_imatrix & operator()()
Operator for accessing the whole matrix.
The Data Type imatrix_slice.
cimatrix Id(const cimatrix &A)
Returns the Identity matrix.
The Data Type rvector_slice.
The Multiple-Precision Data Type l_imatrix.
l_imatrix_slice(l_imatrix_slice &a, const int &l1, const int &u1, const int &l2, const int &u2)
Constructor of class l_imatrix_slice.
friend l_imatrix_subv Row(l_imatrix &m, const int &i)
Returns one row of the matrix as a vector.
cimatrix & SetUb(cimatrix &m, const int &i, const int &j)
Sets the upper bound index.
The Data Type rmatrix_subv.
The Multiple-Precision Data Type l_rmatrix.
civector operator *(const cimatrix_subv &rv, const cinterval &s)
Implementation of multiplication operation.
l_imatrix_subv operator [](const int &i)
Operator for accessing a single row of the matrix.
void Resize(cimatrix &A)
Resizes the matrix.
cvector diam(const cimatrix_subv &mv)
Returns the diameter of the matrix.
l_imatrix_subv & operator/=(const l_interval &c)
Implementation of division and allocation operation.
int ColLen(const cimatrix &)
Returns the column dimension.
l_imatrix_subv & operator=(const l_imatrix_subv &rv)
Implementation of standard assigning operator.
int RowLen(const cimatrix &)
Returns the row dimension.
l_imatrix_slice & operator|=(const l_imatrix &m1)
Allocates the convex hull of the arguments to the first argument.
l_imatrix_slice & operator=(const l_imatrix &m)
Implementation of standard assigning operator.
cimatrix _imatrix(const cimatrix &rm)
Deprecated typecast, which only exist for the reason of compatibility with older versions of C-XSC.
The Multiple-Precision Data Type l_rvector.
cdotprecision & operator+=(cdotprecision &cd, const l_complex &lc)
Implementation of standard algebraic addition and allocation operation.
l_imatrix_subv(l_interval *d, const int &l, const int &u, const int &s, const int &st, const int &o)
Constructor of class l_imatrix_subv.
l_imatrix_slice & operator+=(const l_interval &c)
Implementation of addition and allocation operation.
l_imatrix_subv & operator|=(const l_ivector &rv)
Allocates the convex hull of the arguments to the first argument.
int Ub(const cimatrix &rm, const int &i)
Returns the upper bound index.
l_imatrix_slice & operator &=(const l_imatrix &m1)
Allocates the intersection of the arguments to the first argument.
civector operator/(const cimatrix_subv &rv, const cinterval &s)
Implementation of division operation.
cimatrix transp(const cimatrix &A)
Returns the transposed matrix.
The Multiple-Precision Data Type l_rvector_slice.
l_imatrix_slice & operator -=(const l_interval &c)
Implementation of subtraction and allocation operation.
friend int Lb(const l_imatrix_subv &rv)
Returns the lower bound of the vector.
l_imatrix_slice & operator/=(const l_interval &c)
Implementation of division and allocation operation.
ivector abs(const cimatrix_subv &mv)
Returns the absolute value of the matrix.
The Multiple-Precision Data Type l_imatrix_subv.
l_imatrix_slice(l_imatrix &a, const int &l1, const int &u1, const int &l2, const int &u2)
Constructor of class l_imatrix_slice.