From 648c4717ad357e5bd05e1230a7f7f73f56f97f15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Adjemian=20=28Scylla=29?= <stephane.adjemian@univ-lemans.fr> Date: Thu, 28 Aug 2014 12:21:31 +0200 Subject: [PATCH] Added option number_of_particles (estimation command, non linear filters). --- doc/dynare.texi | 3 +++ preprocessor/DynareBison.yy | 4 ++++ preprocessor/DynareFlex.ll | 1 + 3 files changed, 8 insertions(+) diff --git a/doc/dynare.texi b/doc/dynare.texi index afd6ec22a7..6a81446893 100644 --- a/doc/dynare.texi +++ b/doc/dynare.texi @@ -5300,6 +5300,9 @@ filtered variables and forecasts (when requested) on all the observed variables. This is equivalent to manually listing all the observed variables after the @code{estimation} command. +@item number_of_particles = @var{INTEGER} +Number of particles used when evaluating the likelihood of a non linear state space model. Default: @code{1000}. + @end table @customhead{Note} diff --git a/preprocessor/DynareBison.yy b/preprocessor/DynareBison.yy index 0c754a4bc0..44b42e37ae 100644 --- a/preprocessor/DynareBison.yy +++ b/preprocessor/DynareBison.yy @@ -107,6 +107,7 @@ class ParsingDriver; %token MFS MH_CONF_SIG MH_DROP MH_INIT_SCALE MH_JSCALE MH_MODE MH_NBLOCKS MH_REPLIC MH_RECOVER POSTERIOR_MAX_SUBSAMPLE_DRAWS MIN MINIMAL_SOLVING_PERIODS %token MODE_CHECK MODE_CHECK_NEIGHBOURHOOD_SIZE MODE_CHECK_SYMMETRIC_PLOTS MODE_CHECK_NUMBER_OF_POINTS MODE_COMPUTE MODE_FILE MODEL MODEL_COMPARISON MODEL_INFO MSHOCKS ABS SIGN %token MODEL_DIAGNOSTICS MODIFIEDHARMONICMEAN MOMENTS_VARENDO DIFFUSE_FILTER SUB_DRAWS TAPER_STEPS GEWEKE_INTERVAL MCMC_JUMPING_COVARIANCE MOMENT_CALIBRATION +%token NUMBER_OF_PARTICLES %token <string_val> NAME %token NAN_CONSTANT NO_STATIC NOBS NOCONSTANT NODISPLAY NOCORR NODIAGNOSTIC NOFUNCTIONS NO_HOMOTOPY %token NOGRAPH NOMOMENTS NOPRINT NORMAL_PDF SAVE_DRAWS @@ -1676,6 +1677,7 @@ estimation_options : o_datafile | o_posterior_max_subsample_draws | o_consider_all_endogenous | o_consider_only_observed + | o_number_of_particles ; list_optim_option : QUOTED_STRING COMMA QUOTED_STRING @@ -2638,6 +2640,8 @@ o_bvar_prior_flat : BVAR_PRIOR_FLAT { driver.option_num("bvar_prior_flat", "1"); o_bvar_prior_train : BVAR_PRIOR_TRAIN EQUAL INT_NUMBER { driver.option_num("bvar_prior_train", $3); }; o_bvar_replic : BVAR_REPLIC EQUAL INT_NUMBER { driver.option_num("bvar_replic", $3); }; +o_number_of_particles : NUMBER_OF_PARTICLES EQUAL INT_NUMBER { driver.option_num("particle.number_of_particles", $3); }; + o_gsa_identification : IDENTIFICATION EQUAL INT_NUMBER { driver.option_num("identification", $3); }; /*not in doc */ o_gsa_morris : MORRIS EQUAL INT_NUMBER { driver.option_num("morris", $3); }; o_gsa_stab : STAB EQUAL INT_NUMBER { driver.option_num("stab", $3); }; diff --git a/preprocessor/DynareFlex.ll b/preprocessor/DynareFlex.ll index a552f19973..37386530a0 100644 --- a/preprocessor/DynareFlex.ll +++ b/preprocessor/DynareFlex.ll @@ -352,6 +352,7 @@ DATE -?[0-9]+([YyAa]|[Mm]([1-9]|1[0-2])|[Qq][1-4]|[Ww]([1-9]{1}|[1-4][0-9]|5[0-2 <DYNARE_STATEMENT>use_univariate_filters_if_singularity_is_detected {return token::USE_UNIVARIATE_FILTERS_IF_SINGULARITY_IS_DETECTED;} <DYNARE_STATEMENT>hybrid {return token::HYBRID;} <DYNARE_STATEMENT>default {return token::DEFAULT;} +<DYNARE_STATEMENT>number_of_particles {return token::NUMBER_OF_PARTICLES;} <DYNARE_STATEMENT>alpha { yylval->string_val = new string(yytext); return token::ALPHA; -- GitLab