#ifndef LINSTO_H #define LINSTO_H #include "pSTO.h" using namespace std ; // linear combination of STO's*********************************************** class linSTO : public vector { public: #if 0 explicit linSTO(int nolin=0) : vector(nolin) ; #else linSTO() ; #endif linSTO(const pSTO & origSTO) ; linSTO(const vector & origSTO) ; linSTO (const char *infile) ; #if 0 ~linSTO() ; #endif linSTO & operator+= ( const vector & toadd) ; linSTO operator-() const ; linSTO & operator-= ( const linSTO & toadd) ; linSTO & operator*= (const complex & fact) ; #if 0 linSTO & operator/= (const complex & fact) ; #endif linSTO & operator*= (const pSTO & right) ; #if 0 linSTO dup(bool altern) ; #endif linSTO & operator*= (const linSTO & right) ; void shiftOrb(const int p); private: } ; linSTO conj(const linSTO & arg) ; ostream & operator<<(ostream &os, const linSTO & someSTO) ; linSTO operator+(const linSTO & left, const linSTO & right) ; linSTO operator-(const linSTO & left, const linSTO & right) ; linSTO operator*(const complex & fact, const linSTO & in) ; linSTO operator*(const double & fact, const linSTO & in) ; linSTO operator*(const pSTO & left, const linSTO & right) ; #if 0 linSTO operator/(const linSTO &in, const complex & fact) ; linSTO operator/(const linSTO &in, const double & fact) ; #endif linSTO operator*(const linSTO & left, const linSTO & right) ; complex TlinSTO(const linSTO & left, const linSTO & right) ; complex NlinSTO(const linSTO &left, const linSTO &right) ; complex ClinSTO(const linSTO & left, const linSTO & right) ; #endif /* LINSTO_H */