C-XSC - A C++ Class Library for Extended Scientific Computing
2.5.4
|
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: cvecrmat.hpp,v 1.24 2014/01/30 17:23:44 cxsc Exp $ */ 00025 00026 // Here are definitions for cvector x rmatrix-Functions 00027 #ifndef _CXSC_CVECRMAT_HPP_INCLUDED 00028 #define _CXSC_CVECRMAT_HPP_INCLUDED 00029 00030 namespace cxsc { 00031 00032 INLINE cvector _cvector(const rmatrix &sl) 00033 #if(CXSC_INDEX_CHECK) 00034 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ); 00035 #else 00036 throw(); 00037 #endif 00038 INLINE cvector _cvector(const rmatrix_slice &sl) 00039 #if(CXSC_INDEX_CHECK) 00040 throw(ERROR_RMATRIX_TYPE_CAST_OF_THICK_OBJ); 00041 #else 00042 throw(); 00043 #endif 00044 00045 void accumulate(cdotprecision &dp, const rmatrix_subv & rv1, const cvector &rv2) 00046 #if(CXSC_INDEX_CHECK) 00047 throw(OP_WITH_WRONG_DIM); 00048 #else 00049 throw(); 00050 #endif 00051 void accumulate(cdotprecision &dp, const cvector & rv1, const rmatrix_subv &rv2) 00052 #if(CXSC_INDEX_CHECK) 00053 throw(OP_WITH_WRONG_DIM); 00054 #else 00055 throw(); 00056 #endif 00057 void accumulate(cidotprecision &dp, const rmatrix_subv & rv1, const cvector &rv2) 00058 #if(CXSC_INDEX_CHECK) 00059 throw(OP_WITH_WRONG_DIM); 00060 #else 00061 throw(); 00062 #endif 00063 void accumulate(cidotprecision &dp, const cvector & rv1, const rmatrix_subv &rv2) 00064 #if(CXSC_INDEX_CHECK) 00065 throw(OP_WITH_WRONG_DIM); 00066 #else 00067 throw(); 00068 #endif 00069 void accumulate(cdotprecision &dp, const rmatrix_subv & rv1, const cvector_slice &rv2) 00070 #if(CXSC_INDEX_CHECK) 00071 throw(OP_WITH_WRONG_DIM); 00072 #else 00073 throw(); 00074 #endif 00075 void accumulate(cdotprecision &dp, const cvector_slice & rv1, const rmatrix_subv &rv2) 00076 #if(CXSC_INDEX_CHECK) 00077 throw(OP_WITH_WRONG_DIM); 00078 #else 00079 throw(); 00080 #endif 00081 void accumulate(cidotprecision &dp, const rmatrix_subv & rv1, const cvector_slice &rv2) 00082 #if(CXSC_INDEX_CHECK) 00083 throw(OP_WITH_WRONG_DIM); 00084 #else 00085 throw(); 00086 #endif 00087 void accumulate(cidotprecision &dp, const cvector_slice & rv1, const rmatrix_subv &rv2) 00088 #if(CXSC_INDEX_CHECK) 00089 throw(OP_WITH_WRONG_DIM); 00090 #else 00091 throw(); 00092 #endif 00093 00094 INLINE void SetIm(cvector &iv,const rmatrix_subv &rv) 00095 #if(CXSC_INDEX_CHECK) 00096 throw(ERROR_CMATRIX_OP_WITH_WRONG_DIM); 00097 #else 00098 throw(); 00099 #endif 00100 INLINE void SetRe(cvector &iv,const rmatrix_subv &rv) 00101 #if(CXSC_INDEX_CHECK) 00102 throw(ERROR_CMATRIX_OP_WITH_WRONG_DIM); 00103 #else 00104 throw(); 00105 #endif 00106 INLINE void SetIm(cvector_slice &iv,const rmatrix_subv &rv) 00107 #if(CXSC_INDEX_CHECK) 00108 throw(ERROR_CMATRIX_OP_WITH_WRONG_DIM); 00109 #else 00110 throw(); 00111 #endif 00112 INLINE void SetRe(cvector_slice &iv,const rmatrix_subv &rv) 00113 #if(CXSC_INDEX_CHECK) 00114 throw(ERROR_CMATRIX_OP_WITH_WRONG_DIM); 00115 #else 00116 throw(); 00117 #endif 00118 00119 00120 INLINE cvector operator *(const rmatrix &m,const cvector &v) 00121 #if(CXSC_INDEX_CHECK) 00122 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM); 00123 #else 00124 throw(); 00125 #endif 00126 INLINE cvector operator *(const rmatrix_slice &ms,const cvector &v) 00127 #if(CXSC_INDEX_CHECK) 00128 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM); 00129 #else 00130 throw(); 00131 #endif 00132 INLINE cvector operator *(const cvector &v,const rmatrix &m) 00133 #if(CXSC_INDEX_CHECK) 00134 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM); 00135 #else 00136 throw(); 00137 #endif 00138 INLINE cvector operator *(const cvector &v,const rmatrix_slice &ms) 00139 #if(CXSC_INDEX_CHECK) 00140 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM); 00141 #else 00142 throw(); 00143 #endif 00144 INLINE cvector &operator *=(cvector &v,const rmatrix &m) 00145 #if(CXSC_INDEX_CHECK) 00146 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM); 00147 #else 00148 throw(); 00149 #endif 00150 INLINE cvector &operator *=(cvector &v,const rmatrix_slice &ms) 00151 #if(CXSC_INDEX_CHECK) 00152 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM); 00153 #else 00154 throw(); 00155 #endif 00156 00157 INLINE cvector operator *(const cvector_slice &v,const rmatrix &m) 00158 #if(CXSC_INDEX_CHECK) 00159 throw(ERROR_RMATRIX_OP_WITH_WRONG_DIM); 00160 #else 00161 throw(); 00162 #endif 00163 00164 } // namespace cxsc 00165 00166 #endif 00167