00001 /*=============================================================================
00002 File: barray.cpp
00003 Purpose:
00004 Revision: $Id: barray_complex.cpp,v 1.2 2002/05/13 21:07:45 philosophil Exp $
00005 Created by: Philippe Lavoie (3 Oct, 1996)
00006 Modified by:
00007
00008 Copyright notice:
00009 Copyright (C) 1996-1998 Philippe Lavoie
00010
00011 This library is free software; you can redistribute it and/or
00012 modify it under the terms of the GNU Library General Public
00013 License as published by the Free Software Foundation; either
00014 version 2 of the License, or (at your option) any later version.
00015
00016 This library is distributed in the hope that it will be useful,
00017 but WITHOUT ANY WARRANTY; without even the implied warranty of
00018 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00019 Library General Public License for more details.
00020
00021 You should have received a copy of the GNU Library General Public
00022 License along with this library; if not, write to the Free
00023 Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00024 =============================================================================*/
00025
00026 #include "barray.cpp"
00027
00028 namespace PLib {
00029
00030 ostream&
00031 BasicArray<Complex>::print(ostream& os) const{
00032 const int iend = size();
00033
00034 for (int i = 0; i < iend; )
00035 {
00036 os << real(x[i]) << "+" << imag(x[i]) << "i" ; // << endl;
00037 if ( (++i % wdth) == 0 )
00038 os << '\n';
00039 else
00040 os << " ";
00041 }
00042 os << '\n' ;
00043
00044 return os;
00045 }
00046
00047 #ifdef NO_IMPLICIT_TEMPLATES
00048 template class BasicArray<Complex> ;
00049 template void resizeBasicArray<Complex>(BasicArray<Complex>&,int) ;
00050 template int operator!=(const BasicArray<Complex>&,const BasicArray<Complex>&);
00051 template int operator==(const BasicArray<Complex>&,const BasicArray<Complex>&);
00052 template istream& operator>>(istream& is, BasicArray<Complex>& ary);
00053 template ostream& operator<<(ostream& os, const BasicArray<Complex>& ary);
00054
00055 #endif
00056
00057 }
00058
00059 #ifdef NO_IMPLICIT_TEMPLATES
00060 template double std::abs<double>(const std::complex<double> &);
00061 template Complex std::conj<double>(const Complex&);
00062 #endif
00063
1.2.14 written by Dimitri van Heesch,
© 1997-2002