diff options
Diffstat (limited to 'src/animate_fracture_square.cpp')
-rw-r--r-- | src/animate_fracture_square.cpp | 81 |
1 files changed, 0 insertions, 81 deletions
diff --git a/src/animate_fracture_square.cpp b/src/animate_fracture_square.cpp deleted file mode 100644 index ad43254..0000000 --- a/src/animate_fracture_square.cpp +++ /dev/null @@ -1,81 +0,0 @@ - -#include <random> -#include <iostream> - -#include <cholmod.h> - -#include "randutils/randutils.hpp" - -#include <graph.hpp> -#include <network.hpp> -#include <hooks.hpp> -#include "animate.hpp" - -#include <csignal> -#include <cstring> -#include <atomic> - -std::atomic<bool> quit(false); // signal flag - -void got_signal(int) { - quit.store(true); -} - -int main(int argc, char* argv[]) { - struct sigaction sa; - memset( &sa, 0, sizeof(sa) ); - sa.sa_handler = got_signal; - sigfillset(&sa.sa_mask); - sigaction(SIGINT, &sa, NULL); - - int opt; - - unsigned N = 1; - unsigned Lx = 16; - unsigned Ly = 16; - double beta = 0.5; - - while ((opt = getopt(argc, argv, "X:Y:N:b:")) != -1) { - switch (opt) { - case 'N': - N = (unsigned)atof(optarg); - break; - case 'X': - Lx = atoi(optarg); - break; - case 'Y': - Ly = atoi(optarg); - break; - case 'b': - beta = atof(optarg); - break; - default: - exit(1); - } - } - - cholmod_common c; - CHOL_F(start)(&c); - - animate meas(Lx, Ly, 1000, argc, argv); - - randutils::auto_seed_128 seeds; - std::mt19937 rng{seeds}; - - graph G(Lx, Ly); - elastic_network perm_network(G, &c); - - for (unsigned trial = 0; trial < N; trial++) { - elastic_network tmp_network(perm_network); - tmp_network.set_thresholds(beta, rng); - tmp_network.fracture(meas); - - if (quit.load()) - break; - } - - CHOL_F(finish)(&c); - - return 0; -} - |