#ifndef MYLIB_H_INCLUDED
#define MYLIB_H_INCLUDED

#include <vector>
using namespace std;

double f(unsigned int k, unsigned int nm);

class DenseMatrix{

    public:
    DenseMatrix(unsigned int n, unsigned int m);
    
    vector<double> Mult(const vector<double> &u) const;
    vector<double> MultT(const vector<double> &v) const;


    private:
    unsigned int n_,m_;
    vector<double> data_;
};

class Dyadic{
    public:
    Dyadic(vector<double>& u, vector<double>& v);
    
    vector<double> Mult(const vector<double> &u) const;
    vector<double> MultT(const vector<double> &v) const;


    private:
    vector<double> u_;
    vector<double> v_;
};

#endif // MYLIB_H_INCLUDED
