15
15
#include < boost/random/uniform_real_distribution.hpp>
16
16
17
17
#include < stan/callbacks/interrupt.hpp>
18
- #include < stan/callbacks/writer .hpp>
18
+ #include < stan/callbacks/stream_logger .hpp>
19
19
#include < stan/callbacks/stream_writer.hpp>
20
+ #include < stan/callbacks/writer.hpp>
20
21
#include < stan/io/empty_var_context.hpp>
21
22
#include < stan/services/diagnose/diagnose.hpp>
22
23
#include < stan/services/optimize/bfgs.hpp>
@@ -782,8 +783,8 @@ namespace pystan {
782
783
&& args.get_ctrl_sampling_algorithm () != Fixed_param)
783
784
throw std::runtime_error (" Must use algorithm=\" Fixed_param\" for "
784
785
" model that has no parameters." );
785
- stan::callbacks::stream_writer info (std::cout);
786
- stan::callbacks::stream_writer err ( std::cerr);
786
+ stan::callbacks::stream_logger logger (std::cout, std::cout, std::cout,
787
+ std::cerr, std::cerr);
787
788
788
789
PyErr_CheckSignals_Functor interrupt;
789
790
@@ -850,7 +851,7 @@ namespace pystan {
850
851
init_radius,
851
852
epsilon, error,
852
853
interrupt,
853
- info ,
854
+ logger ,
854
855
init_writer,
855
856
sample_writer);
856
857
holder.num_failed = return_code;
@@ -868,7 +869,7 @@ namespace pystan {
868
869
random_seed, id, init_radius,
869
870
num_iterations,
870
871
save_iterations,
871
- interrupt, info ,
872
+ interrupt, logger ,
872
873
init_writer, sample_writer);
873
874
}
874
875
if (args.get_ctrl_optim_algorithm () == BFGS) {
@@ -891,7 +892,7 @@ namespace pystan {
891
892
num_iterations,
892
893
save_iterations,
893
894
refresh,
894
- interrupt, info ,
895
+ interrupt, logger ,
895
896
init_writer, sample_writer);
896
897
}
897
898
if (args.get_ctrl_optim_algorithm () == LBFGS) {
@@ -916,7 +917,7 @@ namespace pystan {
916
917
num_iterations,
917
918
save_iterations,
918
919
refresh,
919
- interrupt, info ,
920
+ interrupt, logger ,
920
921
init_writer, sample_writer);
921
922
}
922
923
std::vector<double > params = sample_writer.x ();
@@ -958,7 +959,7 @@ namespace pystan {
958
959
num_thin,
959
960
refresh,
960
961
interrupt,
961
- info, err , init_writer,
962
+ logger , init_writer,
962
963
*sample_writer_ptr, diagnostic_writer);
963
964
} else if (args.get_ctrl_sampling_algorithm () == NUTS) {
964
965
sampler_names.resize (5 );
@@ -990,7 +991,7 @@ namespace pystan {
990
991
num_warmup, num_samples,
991
992
num_thin, save_warmup, refresh,
992
993
stepsize, stepsize_jitter, max_depth,
993
- interrupt, info, err , init_writer,
994
+ interrupt, logger , init_writer,
994
995
*sample_writer_ptr, diagnostic_writer);
995
996
} else {
996
997
double delta = args.get_ctrl_sampling_adapt_delta ();
@@ -1009,7 +1010,7 @@ namespace pystan {
1009
1010
stepsize, stepsize_jitter, max_depth,
1010
1011
delta, gamma, kappa,
1011
1012
t0, init_buffer, term_buffer, window,
1012
- interrupt, info, err , init_writer,
1013
+ interrupt, logger , init_writer,
1013
1014
*sample_writer_ptr, diagnostic_writer);
1014
1015
}
1015
1016
} else if (args.get_ctrl_sampling_metric () == DIAG_E) {
@@ -1020,7 +1021,7 @@ namespace pystan {
1020
1021
num_warmup, num_samples,
1021
1022
num_thin, save_warmup, refresh,
1022
1023
stepsize, stepsize_jitter, max_depth,
1023
- interrupt, info, err , init_writer,
1024
+ interrupt, logger , init_writer,
1024
1025
*sample_writer_ptr, diagnostic_writer);
1025
1026
} else {
1026
1027
double delta = args.get_ctrl_sampling_adapt_delta ();
@@ -1039,7 +1040,7 @@ namespace pystan {
1039
1040
stepsize, stepsize_jitter, max_depth,
1040
1041
delta, gamma, kappa,
1041
1042
t0, init_buffer, term_buffer, window,
1042
- interrupt, info, err , init_writer,
1043
+ interrupt, logger , init_writer,
1043
1044
*sample_writer_ptr, diagnostic_writer);
1044
1045
}
1045
1046
} else if (args.get_ctrl_sampling_metric () == UNIT_E) {
@@ -1050,7 +1051,7 @@ namespace pystan {
1050
1051
num_warmup, num_samples,
1051
1052
num_thin, save_warmup, refresh,
1052
1053
stepsize, stepsize_jitter, max_depth,
1053
- interrupt, info, err , init_writer,
1054
+ interrupt, logger , init_writer,
1054
1055
*sample_writer_ptr, diagnostic_writer);
1055
1056
} else {
1056
1057
double delta = args.get_ctrl_sampling_adapt_delta ();
@@ -1065,7 +1066,7 @@ namespace pystan {
1065
1066
num_thin, save_warmup, refresh,
1066
1067
stepsize, stepsize_jitter, max_depth,
1067
1068
delta, gamma, kappa, t0,
1068
- interrupt, info, err , init_writer,
1069
+ interrupt, logger , init_writer,
1069
1070
*sample_writer_ptr, diagnostic_writer);
1070
1071
}
1071
1072
}
@@ -1097,7 +1098,7 @@ namespace pystan {
1097
1098
num_warmup, num_samples,
1098
1099
num_thin, save_warmup, refresh,
1099
1100
stepsize, stepsize_jitter, int_time,
1100
- interrupt, info, err , init_writer,
1101
+ interrupt, logger , init_writer,
1101
1102
*sample_writer_ptr, diagnostic_writer);
1102
1103
} else {
1103
1104
double delta = args.get_ctrl_sampling_adapt_delta ();
@@ -1116,7 +1117,7 @@ namespace pystan {
1116
1117
stepsize, stepsize_jitter, int_time,
1117
1118
delta, gamma, kappa, t0,
1118
1119
init_buffer, term_buffer, window,
1119
- interrupt, info, err , init_writer,
1120
+ interrupt, logger , init_writer,
1120
1121
*sample_writer_ptr, diagnostic_writer);
1121
1122
1122
1123
}
@@ -1128,7 +1129,7 @@ namespace pystan {
1128
1129
num_warmup, num_samples,
1129
1130
num_thin, save_warmup, refresh,
1130
1131
stepsize, stepsize_jitter, int_time,
1131
- interrupt, info, err , init_writer,
1132
+ interrupt, logger , init_writer,
1132
1133
*sample_writer_ptr, diagnostic_writer);
1133
1134
1134
1135
} else {
@@ -1148,7 +1149,7 @@ namespace pystan {
1148
1149
stepsize, stepsize_jitter, int_time,
1149
1150
delta, gamma, kappa, t0,
1150
1151
init_buffer, term_buffer, window,
1151
- interrupt, info, err , init_writer,
1152
+ interrupt, logger , init_writer,
1152
1153
*sample_writer_ptr, diagnostic_writer);
1153
1154
}
1154
1155
} else if (args.get_ctrl_sampling_metric () == UNIT_E) {
@@ -1159,7 +1160,7 @@ namespace pystan {
1159
1160
num_warmup, num_samples,
1160
1161
num_thin, save_warmup, refresh,
1161
1162
stepsize, stepsize_jitter, int_time,
1162
- interrupt, info, err , init_writer,
1163
+ interrupt, logger , init_writer,
1163
1164
*sample_writer_ptr, diagnostic_writer);
1164
1165
1165
1166
} else {
@@ -1175,7 +1176,7 @@ namespace pystan {
1175
1176
num_thin, save_warmup, refresh,
1176
1177
stepsize, stepsize_jitter, int_time,
1177
1178
delta, gamma, kappa, t0,
1178
- interrupt, info, err , init_writer,
1179
+ interrupt, logger , init_writer,
1179
1180
*sample_writer_ptr, diagnostic_writer);
1180
1181
}
1181
1182
}
@@ -1265,7 +1266,7 @@ namespace pystan {
1265
1266
max_iterations, tol_rel_obj, eta,
1266
1267
adapt_engaged, adapt_iterations,
1267
1268
eval_elbo, output_samples,
1268
- interrupt, info , init_writer,
1269
+ interrupt, logger , init_writer,
1269
1270
*sample_writer_ptr, diagnostic_writer);
1270
1271
} else {
1271
1272
return_code = stan::services::experimental::advi
@@ -1275,7 +1276,7 @@ namespace pystan {
1275
1276
max_iterations, tol_rel_obj, eta,
1276
1277
adapt_engaged, adapt_iterations,
1277
1278
eval_elbo, output_samples,
1278
- interrupt, info , init_writer,
1279
+ interrupt, logger , init_writer,
1279
1280
*sample_writer_ptr, diagnostic_writer);
1280
1281
}
1281
1282
std::vector<std::vector<double > > slst (sample_writer_ptr->values_ .x ().begin (),
0 commit comments