};
+
template <typename number>
template <typename number2>
void
}
+
template <typename number>
template <typename number2>
void FullMatrix<number>::gsmult (Vector<number2>& dst, const Vector<number2>& src, const iVector& gl) const
}
}
+
+
template <typename number>
template <typename number2>
void FullMatrix<number>::Tvmult (Vector<number2>& dst, const Vector<number2>& src, const bool adding) const
}
}
+
+
template <typename number>
template <typename number2, typename number3>
double FullMatrix<number>::residual (Vector<number2>& dst, const Vector<number2>& src,
return sqrt(res);
}
+
+
template <typename number>
template <typename number2>
void FullMatrix<number>::forward (Vector<number2>& dst, const Vector<number2>& src) const
}
}
+
+
template <typename number>
template <typename number2>
void FullMatrix<number>::backward (Vector<number2>& dst, const Vector<number2>& src) const
}
}
+
+
template <typename number>
template <typename number2>
FullMatrix<number>&
return *this;
}
+
+
template <typename number>
template <typename number2>
void FullMatrix<number>::fill (const FullMatrix<number2>& src,
el(ii+i,jj+j) = src.el(ii,jj);
}
+
+
template <typename number>
void FullMatrix<number>::add_row (const unsigned int i,
const number s, const unsigned int j)
el(i,k) += s*el(j,k);
}
+
+
template <typename number>
void FullMatrix<number>::add_row (const unsigned int i, const number s,
const unsigned int j, const number t,
el(i,l) += s*el(j,l) + t*el(k,l);
}
+
+
template <typename number>
void FullMatrix<number>::add_col (const unsigned int i, const number s,
const unsigned int j)
el(k,i) += s*el(k,j);
}
+
+
template <typename number>
void FullMatrix<number>::add_col (const unsigned int i, const number s,
const unsigned int j, const number t,
el(l,i) += s*el(l,j) + t*el(l,k);
}
+
+
template <typename number>
void FullMatrix<number>::swap_row (const unsigned int i, const unsigned int j)
{
}
}
+
+
template <typename number>
void FullMatrix<number>::swap_col (const unsigned int i, const unsigned int j)
{
}
}
+
+
template <typename number>
void FullMatrix<number>::diagadd (const number src)
{
el(i,i) += src;
}
+
+
template <typename number>
template <typename number2>
void FullMatrix<number>::mmult (FullMatrix<number2>& dst, const FullMatrix<number2>& src) const
}
}
+
+
/*void FullMatrix<number>::mmult (FullMatrix& dst, const FullMatrix& src) const
{
Assert (m() == src.n(), ExcDimensionMismatch(m(), src.n()));
}
}*/
+
+
template <typename number>
template <typename number2>
void FullMatrix<number>::Tmmult (FullMatrix<number2>& dst, const FullMatrix<number2>& src) const
}
}
+
+
/*void FullMatrix<number>::Tmmult(FullMatrix& dst, const FullMatrix& src) const
{
Assert (m() == src.n(), ExcDimensionMismatch(m(), src.n()));
};
+
template <typename number>
number FullMatrix<number>::l1_norm () const
{
};
+
template <typename number>
number FullMatrix<number>::linfty_norm () const
{
};
+
template <typename number>
void
FullMatrix<number>::print (ostream& s, int w, int p) const
}
}
+
+
template <typename number>
template <typename number2>
void
}
}
+
+
template <typename number>
template <typename number2>
void
}
+
template <typename number>
bool
FullMatrix<number>::operator == (const FullMatrix<number> &m) const
};
+
template <typename number>
double
FullMatrix<number>::determinant () const
};
};
+
+
template <typename number>
double
FullMatrix<number>::norm2 () const
}
+
template <typename number>
void FullMatrix<number>::clear ()
{
}
}
+
+
template <typename number>
template <typename number2>
double