I was able to re-create this error. It looks like it is coming from inside Eigen, the library we use for our matrix types and most of our linear algebra.
Summary
Program received signal SIGFPE, Arithmetic exception.
Eigen::internal::unary_evaluator<Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs2_op<std::complex<double> >, Eigen::Block<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false> const, -1, 1, false> const>, Eigen::internal::IndexBased, double>::coeff (col=0, row=0, this=0x7fffffffb660) at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Core/CoreEvaluators.h:583
583 return m_d.func()(m_d.argImpl.coeff(row, col));
(gdb) bt
#0 Eigen::internal::unary_evaluator<Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs2_op<std::complex<double> >, Eigen::Block<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false> const, -1, 1, false> const>, Eigen::internal::IndexBased, double>::coeff (col=0, row=0, this=0x7fffffffb660) at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Core/CoreEvaluators.h:583
#1 Eigen::internal::redux_evaluator<Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs2_op<std::complex<double> >, Eigen::Block<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false> const, -1, 1, false> const> >::coeffByOuterInner (inner=0,
outer=0, this=0x7fffffffb660) at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Core/Redux.h:381
#2 Eigen::internal::redux_impl<Eigen::internal::scalar_sum_op<double, double>, Eigen::internal::redux_evaluator<Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs2_op<std::complex<double> >, Eigen::Block<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false> const, -1, 1, false> const> >, 0, 0>::run<Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs2_op<std::complex<double> >, Eigen::Block<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false> const, -1, 1, false> const> > (xpr=..., func=...,
eval=...) at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Core/Redux.h:202
#3 Eigen::DenseBase<Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs2_op<std::complex<double> >, Eigen::Block<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false> const, -1, 1, false> const> >::redux<Eigen::internal::scalar_sum_op<double, double> > (func=..., this=0x7fffffffb740) at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Core/Redux.h:418
#4 Eigen::DenseBase<Eigen::CwiseUnaryOp<Eigen::internal::scalar_abs2_op<std::complex<double> >, Eigen::Block<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false> const, -1, 1, false> const> >::sum (this=0x7fffffffb740)
at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Core/Redux.h:463
#5 Eigen::MatrixBase<Eigen::Block<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false> const, -1, 1, false> >::squaredNorm (this=0x7fffffffb6a0) at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Core/Dot.h:98
#6 Eigen::MatrixBase<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false> >::makeHouseholder<Eigen::VectorBlock<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false>, -1> > (
this=this@entry=0x7fffffffb9c0, essential=..., tau=..., beta=@0x7fffffffb910: -1.2914366647217514e-41)
at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Householder/Householder.h:78
#7 0x00005555555b67f7 in Eigen::MatrixBase<Eigen::Block<Eigen::Block<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, -1, 1, true>, -1, 1, false> >::makeHouseholderInPlace (this=this@entry=0x7fffffffb9c0, tau=..., beta=@0x7fffffffb910: -1.2914366647217514e-41)
at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Householder/Householder.h:46
#8 0x00005555555e808a in Eigen::HessenbergDecomposition<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1> >::_compute (
matA=Eigen::Matrix<std::complex<double>,21,21,ColMajor> (data ptr: 0x555555896e50) = {...},
hCoeffs=Eigen::Matrix<std::complex<double>,20,1,ColMajor> (data ptr: 0x555555884d40) = {...},
temp=Eigen::Matrix<std::complex<double>,1,21,RowMajor> (data ptr: 0x555555884be0) = {...})
at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Core/MapBase.h:94
#9 0x00005555555f8f68 in Eigen::HessenbergDecomposition<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1> >::compute<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1> > (matrix=..., this=0x7fffffffbd88)
at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Eigenvalues/./HessenbergDecomposition.h:161
#10 Eigen::internal::complex_schur_reduce_to_hessenberg<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, true>::run (_this=...,
matrix=Eigen::Matrix<std::complex<double>,21,21,ColMajor> (data ptr: 0x555555891b70) = {...}, computeU=computeU@entry=true)
at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Eigenvalues/ComplexSchur.h:361
#11 0x00005555555f970d in Eigen::ComplexSchur<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1> >::compute<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1> > (this=this@entry=0x7fffffffbd58, matrix=..., computeU=computeU@entry=true)
at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Eigenvalues/ComplexSchur.h:337
#12 0x00005555555f9996 in Eigen::ComplexEigenSolver<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1> >::compute<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1> > (this=this@entry=0x7fffffffbd30, matrix=..., computeEigenvectors=computeEigenvectors@entry=true)
at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Eigenvalues/ComplexEigenSolver.h:270
#13 0x00005555555fa06d in Eigen::ComplexEigenSolver<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1> >::ComplexEigenSolver<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1> > (this=0x7fffffffbd30, matrix=..., computeEigenvectors=<optimized out>)
at stan/lib/stan_math/lib/eigen_3.4.0/Eigen/src/Core/EigenBase.h:49
#14 0x00005555555fa6fd in stan::math::eigendecompose<Eigen::Matrix<std::complex<double>, -1, -1, 0, -1, -1>, (void*)0> (
m=Eigen::Matrix<std::complex<double>,21,21,ColMajor> (data ptr: 0x555555891b70) = {...})
at stan/lib/stan_math/stan/math/prim/fun/eigendecompose.hpp:66
#15 0x00005555555fb775 in program_model_namespace::program_model::write_array_impl<boost::random::additive_combine_engine<boost::random::linear_congruential_engine<unsigned int, 40014u, 0u, 2147483563u>, boost::random::linear_congruential_engine<unsigned int, 40692u, 0u, 2147483399u> >, std::vector<double, std::allocator<double> >, std::vector<int, std::allocator<int> >, std::vector<double, std::allocator<double> >, (void*)0, (void*)0, (void*)0> (
this=this@entry=0x55555587e470, base_rng__=..., params_r__=std::vector of length 1, capacity 1 = {...},
params_i__=std::vector of length 0, capacity 0, vars__=std::vector of length 3781, capacity 3781 = {...},
emit_transformed_parameters__=emit_transformed_parameters__@entry=true, emit_generated_quantities__=true, pstream__=0x7fffffffc350)
at ../../py/cmdstanpy/program.hpp:672
#16 0x00005555555fd26e in program_model_namespace::program_model::write_array<boost::random::additive_combine_engine<boost::random::linear_congruential_engine<unsigned int, 40014u, 0u, 2147483563u>, boost::random::linear_congruential_engine<unsigned int, 40692u, 0u, 2147483399u> > > (
pstream=0x7fffffffc350, emit_generated_quantities=true, emit_transformed_parameters=<optimized out>,
vars=std::vector of length 3781, capacity 3781 = {...}, params_i=std::vector of length 0, capacity 0,
params_r=std::vector of length 1, capacity 1 = {...}, base_rng=..., this=0x55555587e470) at /usr/include/c++/11/ext/new_allocator.h:89
#17 stan::model::model_base_crtp<program_model_namespace::program_model>::write_array (this=0x55555587e470, rng=...,
theta=std::vector of length 1, capacity 1 = {...}, theta_i=std::vector of length 0, capacity 0,
vars=std::vector of length 3781, capacity 3781 = {...}, include_tparams=<optimized out>, include_gqs=true, msgs=0x7fffffffc350)
at stan/src/stan/model/model_base_crtp.hpp:209
#18 0x00005555556801bf in stan::services::util::mcmc_writer::write_sample_params<stan::model::model_base, boost::random::additive_combine_engine<boost::random::linear_congruential_engine<unsigned int, 40014u, 0u, 2147483563u>, boost::random::linear_congruential_engine<unsigned int, 40692u, 0u, 2147483399u> > > (this=this@entry=0x7fffffffc880, rng=..., sample=..., sampler=warning: RTTI symbol not found for class 'stan::mcmc::adapt_diag_e_nuts<stan::model::model_base, boost::random::additive_combine_engine<boost::random::linear_congruential_engine<unsigned int, 40014u, 0u, 2147483563u>, boost::random::linear_congruential_engine<unsigned int, 40692u, 0u, 2147483399u> > >'
..., model=...) at /usr/include/c++/11/ext/new_allocator.h:89
#19 0x0000555555680c91 in stan::services::util::generate_transitions<stan::model::model_base, boost::random::additive_combine_engine<boost::random::linear_congruential_engine<unsigned int, 40014u, 0u, 2147483563u>, boost::random::linear_congruential_engine<unsigned int, 40692u, 0u, 2147483399u> > > (
sampler=warning: RTTI symbol not found for class 'stan::mcmc::adapt_diag_e_nuts<stan::model::model_base, boost::random::additive_combine_engine<boost::random::linear_congruential_engine<unsigned int, 40014u, 0u, 2147483563u>, boost::random::linear_congruential_engine<unsigned int, 40692u, 0u, 2147483399u> > >'
..., num_iterations=num_iterations@entry=100, start=start@entry=100, finish=finish@entry=200, num_thin=num_thin@entry=1,
refresh=refresh@entry=100, save=true, warmup=false, mcmc_writer=..., init_s=..., model=..., base_rng=..., callback=..., logger=..., chain_id=1,
num_chains=1) at stan/src/stan/services/util/generate_transitions.hpp:73
#20 0x00005555556943e9 in stan::services::util::run_adaptive_sampler<stan::mcmc::adapt_diag_e_nuts<stan::model::model_base, boost::random::additive_combine_engine<boost::random::linear_congruential_engine<unsigned int, 40014u, 0u, 2147483563u>, boost::random::linear_congruential_engine<unsigned int, 40692u, 0u, 2147483399u> > >, stan::model::model_base, boost::random::additive_combine_engine<boost::random::linear_congruential_engine<unsigned int, 40014u, 0u, 2147483563u>, boost::random::linear_congruential_engine<unsigned int, 40692u, 0u, 2147483399u> > > (sampler=warning: RTTI symbol not found for class 'stan::mcmc::adapt_diag_e_nuts<stan::model::model_base, boost::random::additive_combine_engine<boost::random::linear_congruential_engine<unsigned int, 40014u, 0u, 2147483563u>, boost::random::linear_congruential_engine<unsigned int, 40692u, 0u, 2147483399u> > >'
..., model=...,
cont_vector=std::vector of length 1, capacity 1 = {...}, num_warmup=num_warmup@entry=100, num_samples=num_samples@entry=100,
num_thin=num_thin@entry=1, refresh=100, save_warmup=false, rng=..., interrupt=..., logger=..., sample_writer=..., diagnostic_writer=...,
metric_writer=..., chain_id=1, num_chains=1) at stan/src/stan/services/util/run_adaptive_sampler.hpp:93
#21 0x000055555569492f in stan::services::sample::hmc_nuts_diag_e_adapt<stan::model::model_base> (model=..., init=..., init_inv_metric=...,
random_seed=random_seed@entry=3522013070, chain=chain@entry=1, init_radius=init_radius@entry=2, num_warmup=num_warmup@entry=100, num_samples=100,
num_thin=1, save_warmup=false, refresh=100, stepsize=stepsize@entry=1, stepsize_jitter=stepsize_jitter@entry=0, max_depth=10,
delta=delta@entry=0.80000000000000004, gamma=gamma@entry=0.050000000000000003, kappa=kappa@entry=0.75, t0=t0@entry=10, init_buffer=75,
term_buffer=50, window=25, interrupt=..., logger=..., init_writer=..., sample_writer=..., diagnostic_writer=..., metric_writer=...)
at stan/src/stan/services/sample/hmc_nuts_diag_e_adapt.hpp:102
#22 0x00005555556965fa in stan::services::sample::hmc_nuts_diag_e_adapt<stan::model::model_base, std::shared_ptr<stan::io::var_context>, stan::callbacks::writer, stan::callbacks::unique_stream_writer<std::basic_ofstream<char, std::char_traits<char> >, std::default_delete<std::basic_ofstream<char, std::char_traits<char> > > >, stan::callbacks::unique_stream_writer<std::basic_ofstream<char, std::char_traits<char> >, std::default_delete<std::basic_ofstream<char, std::char_traits<char> > > >, stan::callbacks::json_writer<std::basic_ofstream<char, std::char_traits<char> >, std::default_delete<std::basic_ofstream<char, std::char_traits<char> > > > > (model=..., num_chains=num_chains@entry=1, init=std::vector of length 1, capacity 1 = {...},
random_seed=random_seed@entry=3522013070, init_chain_id=init_chain_id@entry=1, init_radius=init_radius@entry=2, num_warmup=num_warmup@entry=100,
num_samples=100, num_thin=1, save_warmup=false, refresh=100, stepsize=stepsize@entry=1, stepsize_jitter=stepsize_jitter@entry=0, max_depth=10,
delta=delta@entry=0.80000000000000004, gamma=gamma@entry=0.050000000000000003, kappa=kappa@entry=0.75, t0=t0@entry=10, init_buffer=75,
term_buffer=50, window=25, interrupt=..., logger=..., init_writer=std::vector of length 1, capacity 1 = {...},
sample_writer=std::vector of length 1, capacity 1 = {...}, diagnostic_writer=std::vector of length 1, capacity 1 = {...},
metric_writer=std::vector of length 1, capacity 1 = {...}) at stan/src/stan/services/sample/hmc_nuts_diag_e_adapt.hpp:553
#23 0x000055555560c99b in cmdstan::command (argc=<optimized out>, argv=<optimized out>) at src/cmdstan/command.hpp:654
#24 0x000055555560e68c in main (argc=<optimized out>, argv=<optimized out>) at src/cmdstan/main.cpp:6