int main(int argc, char const *argv[]) { size_t m, n; printf("Input N: "); scanf("%lu", &n); printf("and M: "); scanf("%lu", &m); Node* chain = initChain(); add_to_chain(chain, n); show_chain(chain); run(chain, n, m); show_chain(chain); return 0; }
void sample(int iterations, int burn, int adapt, int thin) { if(iterations % thin) { std::cout << "ERROR: interations not a multiple of thin." << std::endl; return; } // setup logp's etc. initChain(); if(logp()==-std::numeric_limits<double>::infinity()) { throw std::logic_error("ERROR: cannot start from a logp of -Inf."); } // tuning phase tune(adapt,static_cast<int>(adapt/100)); if(true) { tune_global(adapt,static_cast<int>(adapt/100)); } // sampling run(iterations, burn, thin); }