27#ifndef _CXSC_CIVECCMAT_INL_INCLUDED
28#define _CXSC_CIVECCMAT_INL_INCLUDED
38 { _vmconstr<civector,cmatrix,cinterval>(*
this,sl); }
45 { _vmsconstr<civector,cmatrix_slice,cinterval>(*
this,sl); }
48 dat=
new cinterval[size];
49 for (
int i=0, j=v.start;i<v.size;i++,j+=v.offset)
59 INLINE civector _civector(
const cmatrix_slice &sl)
65 {
return civector(sl); }
73 { _vmvsetinf(iv,rv); }
80 { _vmvsetsup(iv,rv); }
102 { _vmvusetinf(iv,rv); }
109 { _vmvusetsup(iv,rv); }
116 { _vsvusetinf(iv,
cvector(rv)); }
123 { _vsvusetsup(iv,
cvector(rv)); }
133 {
return _vmassign<civector,cmatrix,cinterval>(*
this,m); }
140 {
return _vmassign<civector,cmatrix,cinterval>(*
this,
cmatrix(m)); }
147 {
return _vsvassign(*
this,
cvector(m)); }
154 {
return _vsvassign(*
this,civector(
cmatrix(m))); }
162 {
return _mvcimult<cmatrix,civector,civector>(m,v); }
163 INLINE civector
operator *(
const cmatrix_slice &ms,
const civector &v)
169 {
return _msvcimult<cmatrix_slice,civector,civector>(ms,v); }
176 {
return _vmcimult<civector,cmatrix,civector>(v,m); }
183 {
return _vmscimult<civector,cmatrix_slice,civector>(v,ms); }
190 {
return _vmcimultassign<civector,cmatrix,cinterval>(v,m); }
197 {
return _vmscimultassign<civector,cmatrix_slice,cinterval>(v,ms); }
205 {
return _vmcimult<civector,cmatrix,civector>(
civector(v),m); }
212 {
return _vsmcimultassign<civector_slice,cmatrix,cinterval>(*
this,m); }
220 {
return _vmcimult<ivector,cmatrix,civector>(v,m); }
221 INLINE civector
operator *(
const ivector &v,
const cmatrix_slice &ms)
227 {
return _vmscimult<ivector,cmatrix_slice,civector>(v,ms); }
234 {
return _vmcimult<civector,cmatrix,civector>(
civector(v),m); }
241 {
return _mvcimult<cmatrix,ivector,civector>(m,v); }
248 {
return _msvcimult<cmatrix_slice,ivector,civector>(ms,v); }
The Data Type civector_slice.
civector_slice & operator*=(const cinterval &r) noexcept
Implementation of multiplication and allocation operation.
civector_slice(civector &a, const int &lb, const int &ub) noexcept
Constructor of class civector_slice.
civector_slice & operator=(const scivector_slice &sl)
Implementation of standard assigning operator.
civector & operator=(const civector &rv) noexcept
Implementation of standard assigning operator.
civector() noexcept
Constructor of class civector.
The Data Type cmatrix_slice.
The Data Type cmatrix_subv.
The Data Type ivector_slice.
The namespace cxsc, providing all functionality of the class library C-XSC.
cimatrix & operator*=(cimatrix &m, const cinterval &c) noexcept
Implementation of multiplication and allocation operation.
civector operator*(const cimatrix_subv &rv, const cinterval &s) noexcept
Implementation of multiplication operation.