27#ifndef _CXSC_CIVECIMAT_INL_INCLUDED
28#define _CXSC_CIVECIMAT_INL_INCLUDED
38 { _vmconstr<civector,imatrix,cinterval>(*
this,sl); }
45 { _vmsconstr<civector,imatrix_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 imatrix_slice &sl)
65 {
return civector(sl); }
105 {
return _vmassign<civector,imatrix,cinterval>(*
this,m); }
112 {
return _vmassign<civector,imatrix,cinterval>(*
this,
imatrix(m)); }
119 {
return _vsvassign(*
this,
ivector(m)); }
126 {
return _vsvassign(*
this,civector(
imatrix(m))); }
134 {
return _mvcimult<imatrix,civector,civector>(m,v); }
135 INLINE civector
operator *(
const imatrix_slice &ms,
const civector &v)
141 {
return _msvcimult<imatrix_slice,civector,civector>(ms,v); }
148 {
return _vmcimult<civector,imatrix,civector>(v,m); }
155 {
return _vmscimult<civector,imatrix_slice,civector>(v,ms); }
162 {
return _vmcimultassign<civector,imatrix,cinterval>(v,m); }
169 {
return _vmscimultassign<civector,imatrix_slice,cinterval>(v,ms); }
177 {
return _vmcimult<civector,imatrix,civector>(
civector(v),m); }
184 {
return _vsmcimultassign<civector_slice,imatrix,cinterval>(*
this,m); }
192 {
return _vmcimult<cvector,imatrix,civector>(v,m); }
193 INLINE civector
operator *(
const cvector &v,
const imatrix_slice &ms)
199 {
return _vmscimult<cvector,imatrix_slice,civector>(v,ms); }
206 {
return _vmcimult<civector,imatrix,civector>(
civector(v),m); }
213 {
return _mvcimult<imatrix,cvector,civector>(m,v); }
220 {
return _msvcimult<imatrix_slice,cvector,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 cvector_slice.
The Data Type imatrix_slice.
The Data Type imatrix_subv.
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.