// Code generated by stanc b707ab5e-dirty #include namespace test1_model_namespace { using std::istream; using std::string; using std::stringstream; using std::vector; using stan::io::dump; using stan::math::lgamma; using stan::model::prob_grad; using stan::model::rvalue; using stan::model::assign; using stan::model::cons_list; using stan::model::index_uni; using stan::model::index_max; using stan::model::index_min; using stan::model::index_min_max; using stan::model::index_multi; using stan::model::index_omni; using stan::model::nil_index_list; using namespace stan::math; static int current_statement__ = 0; static const std::vector locations_array__ = {" (found before start of program)", " (in 'models/test1.stan', line 3, column 4 to line 5, column 38)", " (in 'models/test1.stan', line 2, column 15 to line 6, column 3)"}; Eigen::Matrix Foo(std::ostream* pstream__) { using local_scalar_t__ = double; typedef local_scalar_t__ fun_return_scalar_t__; const static bool propto__ = true; (void) propto__; local_scalar_t__ DUMMY_VAR__(std::numeric_limits::quiet_NaN()); (void) DUMMY_VAR__; // suppress unused var warning try { current_statement__ = 2; return stan::math::to_row_vector({stan::math::to_row_vector({1, 2, 3, 4, 5, 6, 7, 8, 9, 10}), stan::math::to_row_vector({1, 2, 3, 4, 5, 6, 7, 8, 9, 10}), stan::math::to_row_vector({1, 2, 3, 4, 5, 6, 7, 8, 9, 10})}); } catch (const std::exception& e) { stan::lang::rethrow_located( std::runtime_error(std::string("inside UDF Foo") + ": " + e.what()), locations_array__[current_statement__]); // Next line prevents compiler griping about no return throw std::runtime_error("*** IF YOU SEE THIS, PLEASE REPORT A BUG ***"); } } struct Foo_functor__ { Eigen::Matrix operator()(std::ostream* pstream__) const { return Foo(pstream__); } }; class test1_model : public prob_grad { private: public: ~test1_model() { } static std::string model_name() { return "test1_model"; } test1_model(stan::io::var_context& context__, unsigned int random_seed__ = 0, std::ostream* pstream__ = nullptr) : prob_grad(0) { typedef double local_scalar_t__; boost::ecuyer1988 base_rng__ = stan::services::util::create_rng(random_seed__, 0); (void) base_rng__; // suppress unused var warning static const char* function__ = "test1_model_namespace::test1_model"; (void) function__; // suppress unused var warning try { } catch (const std::exception& e) { stan::lang::rethrow_located( std::runtime_error(std::string("inside ctor") + ": " + e.what()), locations_array__[current_statement__]); // Next line prevents compiler griping about no return throw std::runtime_error("*** IF YOU SEE THIS, PLEASE REPORT A BUG ***"); } num_params_r__ = 0U; } template T__ log_prob(std::vector& params_r__, std::vector& params_i__, std::ostream* pstream__ = 0) const { typedef T__ local_scalar_t__; local_scalar_t__ DUMMY_VAR__(std::numeric_limits::quiet_NaN()); (void) DUMMY_VAR__; // suppress unused var warning T__ lp__(0.0); stan::math::accumulator lp_accum__; static const char* function__ = "test1_model_namespace::log_prob"; (void) function__; // suppress unused var warning stan::io::reader in__(params_r__, params_i__); try { } catch (const std::exception& e) { stan::lang::rethrow_located( std::runtime_error(std::string("inside log_prob") + ": " + e.what()), locations_array__[current_statement__]); // Next line prevents compiler griping about no return throw std::runtime_error("*** IF YOU SEE THIS, PLEASE REPORT A BUG ***"); } lp_accum__.add(lp__); return lp_accum__.sum(); } // log_prob() void get_param_names(std::vector& names__) const { names__.resize(0); } // get_param_names() void get_dims(std::vector>& dimss__) const { dimss__.resize(0); std::vector dims__; dimss__.push_back(dims__); dims__.resize(0); } // get_dims() template void write_array(RNG& base_rng__, std::vector& params_r__, std::vector& params_i__, std::vector& vars__, bool emit_transformed_parameters__ = true, bool emit_generated_quantities__ = true, std::ostream* pstream__ = 0) const { typedef double local_scalar_t__; vars__.resize(0); stan::io::reader in__(params_r__, params_i__); static const char* function__ = "test1_model_namespace::write_array"; (void) function__; // suppress unused var warning (void) function__; // suppress unused var warning try { } catch (const std::exception& e) { stan::lang::rethrow_located( std::runtime_error(std::string("inside write_array") + ": " + e.what()), locations_array__[current_statement__]); // Next line prevents compiler griping about no return throw std::runtime_error("*** IF YOU SEE THIS, PLEASE REPORT A BUG ***"); } } // write_array() void constrained_param_names(std::vector& param_names__, bool emit_transformed_parameters__ = true, bool emit_generated_quantities__ = true) const { if (emit_transformed_parameters__) { } if (emit_generated_quantities__) { } } // constrained_param_names() void unconstrained_param_names(std::vector& param_names__, bool emit_transformed_parameters__ = true, bool emit_generated_quantities__ = true) const { if (emit_transformed_parameters__) { } if (emit_generated_quantities__) { } } // unconstrained_param_names() void transform_inits(const stan::io::var_context& context__, std::vector& params_i__, std::vector& vars__, std::ostream* pstream__) const { typedef double local_scalar_t__; vars__.resize(0); vars__.reserve(num_params_r__); try { } catch (const std::exception& e) { stan::lang::rethrow_located( std::runtime_error(std::string("inside transform_inits") + ": " + e.what()), locations_array__[current_statement__]); // Next line prevents compiler griping about no return throw std::runtime_error("*** IF YOU SEE THIS, PLEASE REPORT A BUG ***"); } } // transform_inits() template void write_array(RNG& base_rng__, Eigen::Matrix& params_r, Eigen::Matrix& vars, bool emit_transformed_parameters__ = true, bool emit_generated_quantities__ = true, std::ostream* pstream = 0) const { std::vector params_r_vec(params_r.size()); for (int i = 0; i < params_r.size(); ++i) params_r_vec[i] = params_r(i); std::vector vars_vec; std::vector params_i_vec; write_array(base_rng__, params_r_vec, params_i_vec, vars_vec, emit_transformed_parameters__, emit_generated_quantities__, pstream); vars.resize(vars_vec.size()); for (int i = 0; i < vars.size(); ++i) vars(i) = vars_vec[i]; } template T_ log_prob(Eigen::Matrix& params_r, std::ostream* pstream = 0) const { std::vector vec_params_r; vec_params_r.reserve(params_r.size()); for (int i = 0; i < params_r.size(); ++i) vec_params_r.push_back(params_r(i)); std::vector vec_params_i; return log_prob(vec_params_r, vec_params_i, pstream); } }; } typedef test1_model_namespace::test1_model stan_model;