27 #ifndef _CXSC_LRVECRMAT_INL_INCLUDED
28 #define _CXSC_LRVECRMAT_INL_INCLUDED
34 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ)
38 { _vmconstr<l_rvector,rmatrix,l_real>(*
this,sl); }
41 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ)
45 { _vmsconstr<l_rvector,rmatrix_slice,l_real>(*
this,sl); }
49 for (
int i=0, j=v.start;i<v.size;i++,j+=v.offset)
59 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ)
71 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ)
79 throw(OP_WITH_WRONG_DIM)
83 { _vmvaccu<dotprecision,l_rvector,rmatrix_subv>(dp,rv2,rv1); }
86 throw(OP_WITH_WRONG_DIM)
90 { _vmvaccu<dotprecision,l_rvector,rmatrix_subv>(dp,rv1,rv2); }
93 throw(OP_WITH_WRONG_DIM)
97 { _vmvaccu<idotprecision,l_rvector,rmatrix_subv>(dp,rv2,rv1); }
100 throw(OP_WITH_WRONG_DIM)
104 { _vmvaccu<idotprecision,l_rvector,rmatrix_subv>(dp,rv1,rv2); }
107 #if(CXSC_INDEX_CHECK)
108 throw(OP_WITH_WRONG_DIM)
112 { _vmvaccu<dotprecision,l_rvector,rmatrix_subv>(dp,
l_rvector(rv2),rv1); }
114 #if(CXSC_INDEX_CHECK)
115 throw(OP_WITH_WRONG_DIM)
119 { _vmvaccu<dotprecision,l_rvector,rmatrix_subv>(dp,
l_rvector(rv1),rv2); }
121 #if(CXSC_INDEX_CHECK)
122 throw(OP_WITH_WRONG_DIM)
126 { _vmvaccu<idotprecision,l_rvector,rmatrix_subv>(dp,
l_rvector(rv2),rv1); }
128 #if(CXSC_INDEX_CHECK)
129 throw(OP_WITH_WRONG_DIM)
133 { _vmvaccu<idotprecision,l_rvector,rmatrix_subv>(dp,
l_rvector(rv1),rv2); }
138 #if(CXSC_INDEX_CHECK)
139 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ)
143 {
return _vmassign<l_rvector,rmatrix,l_real>(*
this,m); }
145 #if(CXSC_INDEX_CHECK)
146 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ)
150 {
return _vmassign<l_rvector,rmatrix,l_real>(*
this,
rmatrix(m)); }
152 #if(CXSC_INDEX_CHECK)
153 throw(ERROR__OP_WITH_WRONG_DIM<rvector>,ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ)
157 {
return _vsvassign(*
this,
rvector(m)); }
159 #if(CXSC_INDEX_CHECK)
160 throw(ERROR__OP_WITH_WRONG_DIM<rvector>,ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ)
167 #if(CXSC_INDEX_CHECK)
168 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM)
172 {
return _mvlmult<rmatrix,l_rvector,l_rvector>(m,v); }
174 #if(CXSC_INDEX_CHECK)
175 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM)
179 {
return _msvlmult<rmatrix_slice,l_rvector,l_rvector>(ms,v); }
181 #if(CXSC_INDEX_CHECK)
182 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM)
186 {
return _vmlmult<l_rvector,rmatrix,l_rvector>(v,m); }
188 #if(CXSC_INDEX_CHECK)
189 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM)
193 {
return _vmslmult<l_rvector,rmatrix_slice,l_rvector>(v,ms); }
195 #if(CXSC_INDEX_CHECK)
196 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM)
200 {
return _vmlmultassign<l_rvector,rmatrix,l_real>(v,m); }
202 #if(CXSC_INDEX_CHECK)
203 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM)
207 {
return _vmslmultassign<l_rvector,rmatrix_slice,l_real>(v,ms); }
210 #if(CXSC_INDEX_CHECK)
211 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM)
215 {
return _vmlmult<l_rvector,rmatrix,l_rvector>(
l_rvector(v),m); }
217 #if(CXSC_INDEX_CHECK)
218 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM)
222 { *
this=*
this*m;
return *
this; }