C-XSC - A C++ Class Library for Extended Scientific Computing  2.5.4
iveccvec.inl
00001 /*
00002 **  CXSC is a C++ library for eXtended Scientific Computing (V 2.5.4)
00003 **
00004 **  Copyright (C) 1990-2000 Institut fuer Angewandte Mathematik,
00005 **                          Universitaet Karlsruhe, Germany
00006 **            (C) 2000-2014 Wiss. Rechnen/Softwaretechnologie
00007 **                          Universitaet Wuppertal, Germany   
00008 **
00009 **  This library is free software; you can redistribute it and/or
00010 **  modify it under the terms of the GNU Library General Public
00011 **  License as published by the Free Software Foundation; either
00012 **  version 2 of the License, or (at your option) any later version.
00013 **
00014 **  This library is distributed in the hope that it will be useful,
00015 **  but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 **  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00017 **  Library General Public License for more details.
00018 **
00019 **  You should have received a copy of the GNU Library General Public
00020 **  License along with this library; if not, write to the Free
00021 **  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00022 */
00023 
00024 /* CVS $Id: iveccvec.inl,v 1.25 2014/01/30 17:23:45 cxsc Exp $ */
00025 
00026 #ifndef _CXSC_IVECCVEC_INL_INCLUDED
00027 #define _CXSC_IVECCVEC_INL_INCLUDED
00028 
00029 #include "cinterval.hpp"
00030 
00031 namespace cxsc {
00032 
00033 
00034         INLINE cinterval operator *(const cvector & rv1, const ivector &rv2)
00035 #if(CXSC_INDEX_CHECK)
00036         throw(ERROR__OP_WITH_WRONG_DIM<civector>)
00037 #else
00038         throw()
00039 #endif
00040         { return _vvcimult<cvector,ivector,cinterval>(rv1,rv2); }
00041         INLINE cinterval operator *(const cvector_slice &sl, const ivector &rv)
00042 #if(CXSC_INDEX_CHECK)
00043         throw(ERROR__OP_WITH_WRONG_DIM<civector>)
00044 #else
00045         throw()
00046 #endif
00047         { return _vsvcimult<cvector_slice,ivector,cinterval>(sl,rv); }
00048         INLINE cinterval operator *(const cvector &rv, const ivector_slice &sl)
00049 #if(CXSC_INDEX_CHECK)
00050         throw(ERROR__OP_WITH_WRONG_DIM<civector>)
00051 #else
00052         throw()
00053 #endif
00054         { return _vsvcimult<ivector_slice,cvector,cinterval>(sl,rv); }
00055         INLINE cinterval operator *(const cvector_slice & sl1, const ivector_slice &sl2)
00056 #if(CXSC_INDEX_CHECK)
00057         throw(ERROR__OP_WITH_WRONG_DIM<civector>)
00058 #else
00059         throw()
00060 #endif
00061         { return _vsvscimult<cvector_slice,ivector_slice,cinterval>(sl1,sl2); }
00062         
00063         INLINE cinterval operator *(const ivector & rv1, const cvector &rv2)
00064 #if(CXSC_INDEX_CHECK)
00065         throw(ERROR__OP_WITH_WRONG_DIM<civector>)
00066 #else
00067         throw()
00068 #endif
00069         { return _vvcimult<cvector,ivector,cinterval>(rv2,rv1); }
00070         INLINE cinterval operator *(const ivector_slice &sl, const cvector &rv)
00071 #if(CXSC_INDEX_CHECK)
00072         throw(ERROR__OP_WITH_WRONG_DIM<civector>)
00073 #else
00074         throw()
00075 #endif
00076         { return _vsvcimult<ivector_slice,cvector,cinterval>(sl,rv); }
00077         INLINE cinterval operator *(const ivector &rv, const cvector_slice &sl)
00078 #if(CXSC_INDEX_CHECK)
00079         throw(ERROR__OP_WITH_WRONG_DIM<civector>)
00080 #else
00081         throw()
00082 #endif
00083         { return _vsvcimult<cvector_slice,ivector,cinterval>(sl,rv); }
00084         INLINE cinterval operator *(const ivector_slice & sl1, const cvector_slice &sl2)
00085 #if(CXSC_INDEX_CHECK)
00086         throw(ERROR__OP_WITH_WRONG_DIM<civector>)
00087 #else
00088         throw()
00089 #endif
00090         { return _vsvscimult<cvector_slice,ivector_slice,cinterval>(sl2,sl1); }
00091         
00092 } // namespace cxsc
00093 
00094 #endif
00095