#include #include #include #include #include #include #include #include #include #include #include #include #include class ma : public hooks { // need: // - measurements for correlation functions (nice looking?) // - interface for reading and writing from files (nice looking?) // - interface for turning on and off specific measurements // private: double *fftw_forward_in; fftw_complex *fftw_forward_out; fftw_complex *fftw_reverse_in; double *fftw_reverse_out; fftw_plan forward_plan; fftw_plan reverse_plan; boost::adjacency_list G; public: unsigned int N; unsigned int L; unsigned int as; double lv; double beta; std::vector ad; std::vector cd; std::vector bin_counts; std::list> avalanches;; ma(unsigned int N, unsigned int L, double beta); ~ma(); void pre_fracture(const network &) override; void bond_broken(const network& net, const std::pair>& cur, unsigned int i) override; void post_fracture(network &n) override; };