00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef _CXSC_LRVECIVEC_INL_INCLUDED
00027 #define _CXSC_LRVECIVEC_INL_INCLUDED
00028
00029 #include "l_interval.hpp"
00030
00031 namespace cxsc {
00032
00033 INLINE void accumulate(idotprecision &dp, const l_rvector & rv1, const ivector &rv2)
00034 #if(CXSC_INDEX_CHECK)
00035 throw(OP_WITH_WRONG_DIM)
00036 #else
00037 throw()
00038 #endif
00039 { _vvaccu(dp,rv1,rv2); }
00040 INLINE void accumulate(idotprecision &dp, const ivector & rv1, const l_rvector &rv2)
00041 #if(CXSC_INDEX_CHECK)
00042 throw(OP_WITH_WRONG_DIM)
00043 #else
00044 throw()
00045 #endif
00046 { _vvaccu(dp,rv2,rv1); }
00047 INLINE void accumulate(idotprecision &dp, const l_rvector_slice & sl, const ivector &rv)
00048 #if(CXSC_INDEX_CHECK)
00049 throw(OP_WITH_WRONG_DIM)
00050 #else
00051 throw()
00052 #endif
00053 { _vsvaccu(dp,sl,rv); }
00054 INLINE void accumulate(idotprecision &dp,const ivector_slice &sl,const l_rvector &rv)
00055 #if(CXSC_INDEX_CHECK)
00056 throw(OP_WITH_WRONG_DIM)
00057 #else
00058 throw()
00059 #endif
00060 { _vsvaccu(dp,sl,rv); }
00061 INLINE void accumulate(idotprecision &dp, const l_rvector &rv, const ivector_slice &sl)
00062 #if(CXSC_INDEX_CHECK)
00063 throw(OP_WITH_WRONG_DIM)
00064 #else
00065 throw()
00066 #endif
00067 { _vsvaccu(dp,sl,rv); }
00068 INLINE void accumulate(idotprecision &dp, const l_rvector & rv1, const imatrix_subv &rv2)
00069 #if(CXSC_INDEX_CHECK)
00070 throw(OP_WITH_WRONG_DIM)
00071 #else
00072 throw()
00073 #endif
00074 ;
00075 INLINE void accumulate(idotprecision &dp, const ivector & rv1, const l_rmatrix_subv &rv2)
00076 #if(CXSC_INDEX_CHECK)
00077 throw(OP_WITH_WRONG_DIM)
00078 #else
00079 throw()
00080 #endif
00081 ;
00082 INLINE void accumulate(idotprecision &dp,const ivector &rv,const l_rvector_slice &sl)
00083 #if(CXSC_INDEX_CHECK)
00084 throw(OP_WITH_WRONG_DIM)
00085 #else
00086 throw()
00087 #endif
00088 { _vsvaccu(dp,sl,rv); }
00089 INLINE void accumulate(idotprecision &dp, const l_rmatrix_subv & rv1, const ivector &rv2)
00090 #if(CXSC_INDEX_CHECK)
00091 throw(OP_WITH_WRONG_DIM)
00092 #else
00093 throw()
00094 #endif
00095 ;
00096 INLINE void accumulate(idotprecision &dp, const imatrix_subv & rv1, const l_rvector &rv2)
00097 #if(CXSC_INDEX_CHECK)
00098 throw(OP_WITH_WRONG_DIM)
00099 #else
00100 throw()
00101 #endif
00102 ;
00103 INLINE void accumulate(idotprecision &dp, const ivector_slice & sl1, const l_rvector_slice &sl2)
00104 #if(CXSC_INDEX_CHECK)
00105 throw(OP_WITH_WRONG_DIM)
00106 #else
00107 throw()
00108 #endif
00109 { _vsvsaccu(dp,sl2,sl1); }
00110 INLINE void accumulate(idotprecision &dp, const l_rvector_slice & sl1, const ivector_slice &sl2)
00111 #if(CXSC_INDEX_CHECK)
00112 throw(OP_WITH_WRONG_DIM)
00113 #else
00114 throw()
00115 #endif
00116 { _vsvsaccu(dp,sl1,sl2); }
00117
00118 INLINE l_interval operator *(const l_rvector & rv1, const ivector &rv2)
00119 #if(CXSC_INDEX_CHECK)
00120 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>)
00121 #else
00122 throw()
00123 #endif
00124 { return _vvlimult<l_rvector,ivector,l_interval>(rv1,rv2); }
00125 INLINE l_interval operator *(const l_rvector_slice &sl, const ivector &rv)
00126 #if(CXSC_INDEX_CHECK)
00127 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>)
00128 #else
00129 throw()
00130 #endif
00131 { return _vsvlimult<l_rvector_slice,ivector,l_interval>(sl,rv); }
00132 INLINE l_interval operator *(const l_rvector &rv, const ivector_slice &sl)
00133 #if(CXSC_INDEX_CHECK)
00134 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>)
00135 #else
00136 throw()
00137 #endif
00138 { return _vsvlimult<ivector_slice,l_rvector,l_interval>(sl,rv); }
00139 INLINE l_interval operator *(const l_rvector_slice & sl1, const ivector_slice &sl2)
00140 #if(CXSC_INDEX_CHECK)
00141 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>)
00142 #else
00143 throw()
00144 #endif
00145 { return _vsvslimult<l_rvector_slice,ivector_slice,l_interval>(sl1,sl2); }
00146
00147 INLINE l_interval operator *(const ivector & rv1, const l_rvector &rv2)
00148 #if(CXSC_INDEX_CHECK)
00149 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>)
00150 #else
00151 throw()
00152 #endif
00153 { return _vvlimult<l_rvector,ivector,l_interval>(rv2,rv1); }
00154 INLINE l_interval operator *(const ivector_slice &sl, const l_rvector &rv)
00155 #if(CXSC_INDEX_CHECK)
00156 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>)
00157 #else
00158 throw()
00159 #endif
00160 { return _vsvlimult<ivector_slice,l_rvector,l_interval>(sl,rv); }
00161 INLINE l_interval operator *(const ivector &rv, const l_rvector_slice &sl)
00162 #if(CXSC_INDEX_CHECK)
00163 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>)
00164 #else
00165 throw()
00166 #endif
00167 { return _vsvlimult<l_rvector_slice,ivector,l_interval>(sl,rv); }
00168 INLINE l_interval operator *(const ivector_slice & sl1, const l_rvector_slice &sl2)
00169 #if(CXSC_INDEX_CHECK)
00170 throw(ERROR__OP_WITH_WRONG_DIM<l_ivector>)
00171 #else
00172 throw()
00173 #endif
00174 { return _vsvslimult<l_rvector_slice,ivector_slice,l_interval>(sl2,sl1); }
00175
00176 }
00177
00178 #endif
00179