https://github.com/entron/snake-dmrg
Raw File
Tip revision: 5581575de60596a13ea45e4ac96e981b761d95c0 authored by Cheng Guo on 18 March 2015, 18:47:37 UTC
Update README.md
Tip revision: 5581575
gqn.h
#ifndef GQN_H
#define GQN_H


#include <iostream>
#include <iomanip>
#include <vector>

namespace snake
{

namespace math
{

class GQN
{
public:
    GQN();
    ~GQN();
    GQN& operator= (const GQN&)     ;
    GQN& operator+=(const GQN&)     ;
    GQN& operator-=(const GQN& Gvar);
    GQN  operator+ (const GQN&)const;
    GQN  operator- (const GQN&)const;
    bool operator==(const GQN&)const;
    bool operator==(const std::vector<snake::math::GQN>&)const; //Return true if gqn = any gqn in gqnvector. Used for targetting multi gqn number.
    bool operator!=(const GQN&)const;
    bool operator> (const GQN&)const;
    bool operator< (const GQN&)const;
    void none();
    void write(std::ofstream &fout);
    void read(std::ifstream &fin);
    GQN& operator=(int n);

friend std::ostream& snake::math::operator<<(std::ostream&, const GQN&);

    std::vector<int> gqn;
    int num;
};

}
}
#endif
back to top