## ----setup, include = FALSE--------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>", eval=F, echo = T ) library(magrittr) library(DynareR) ## ----installation,eval=FALSE-------------------------------------------------- # install.packages("DynareR") # # OR # # devtools::install_github('sagirumati/DynareR') ## ----IRF,out.extra='trim={0cm 7cm 0cm 7cm},clip',fig.cap="Another of figure generated from Dynare software"---- # # include_IRF(model="bkk",IRF = "E_H2") # # # Alternatively, use the path argument # # include_IRF(path="bkk/bkk/graphs/bkk_IRF_E_H2.pdf") # ## ----exampleDyn--------------------------------------------------------------- # dynareCodes='var y, c, k, a, h, b; # varexo e, u; # parameters beta, rho, alpha, delta, theta, psi, tau; # alpha = 0.36; # rho = 0.95; # tau = 0.025; # beta = 0.99; # delta = 0.025; # psi = 0; # theta = 2.95; # phi = 0.1; # model; # c*theta*h^(1+psi)=(1-alpha)*y; # k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) # *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); # y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); # k = exp(b)*(y-c)+(1-delta)*k(-1); # a = rho*a(-1)+tau*b(-1) + e; # b = tau*a(-1)+rho*b(-1) + u; # end; # initval; # y = 1.08068253095672; # c = 0.80359242014163; # h = 0.29175631001732; # k = 11.08360443260358; # a = 0; # b = 0; # e = 0; # u = 0; # end; # # shocks; # var e; stderr 0.009; # var u; stderr 0.009; # var e, u = phi*0.009*0.009; # end; # # stoch_simul;' # # # write_dyn(code=dynareCodes, model="example1") # # write_dyn(code=dynareCodes,model="DynareR/write_dyn/example1") ## ----examplemod--------------------------------------------------------------- # DynareCodes='var y, c, k, a, h, b; # varexo e, u; # parameters beta, rho, alpha, delta, theta, psi, tau; # alpha = 0.36; # rho = 0.95; # tau = 0.025; # beta = 0.99; # delta = 0.025; # psi = 0; # theta = 2.95; # phi = 0.1; # model; # c*theta*h^(1+psi)=(1-alpha)*y; # k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) # *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); # y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); # k = exp(b)*(y-c)+(1-delta)*k(-1); # a = rho*a(-1)+tau*b(-1) + e; # b = tau*a(-1)+rho*b(-1) + u; # end; # initval; # y = 1.08068253095672; # c = 0.80359242014163; # h = 0.29175631001732; # k = 11.08360443260358; # a = 0; # b = 0; # e = 0; # u = 0; # end; # # shocks; # var e; stderr 0.009; # var u; stderr 0.009; # var e, u = phi*0.009*0.009; # end; # # stoch_simul;' # # # write_mod(model="example1",code=dynareCodes) # # write_mod(code=dynareCodes,model="DynareR/write_mod/example1") # ## ----exampleRunDynare--------------------------------------------------------- # DynareCodes='var y, c, k, a, h, b; # varexo e, u; # parameters beta, rho, alpha, delta, theta, psi, tau; # alpha = 0.36; # rho = 0.95; # tau = 0.025; # beta = 0.99; # delta = 0.025; # psi = 0; # theta = 2.95; # phi = 0.1; # model; # c*theta*h^(1+psi)=(1-alpha)*y; # k = beta*(((exp(b)*c)/(exp(b(+1))*c(+1))) # *(exp(b(+1))*alpha*y(+1)+(1-delta)*k)); # y = exp(a)*(k(-1)^alpha)*(h^(1-alpha)); # k = exp(b)*(y-c)+(1-delta)*k(-1); # a = rho*a(-1)+tau*b(-1) + e; # b = tau*a(-1)+rho*b(-1) + u; # end; # initval; # y = 1.08068253095672; # c = 0.80359242014163; # h = 0.29175631001732; # k = 11.08360443260358; # a = 0; # b = 0; # e = 0; # u = 0; # end; # # shocks; # var e; stderr 0.009; # var u; stderr 0.009; # var e, u = phi*0.009*0.009; # end; # # stoch_simul;' # # run_dynare(code=DynareCodes,model="example1",import_log = T) # run_dynare(code=DynareCodes,model="DynareR/run_dynare/example1") # ## ----exampleRunModels--------------------------------------------------------- # # demo(agtrend) # demo(bkk) # demo(example1) # # # Provide the list of the `Dynare` files in a vector # # Ensure that "agtrend.mod", "bkk.mod" and "example1.mod" # # live in the current working directory # # # Copy the dynare files to the current working directory # # lapply(c("agtrend","bkk","example1"),\(x) file.copy(paste0(x,"/",x,".mod"),".")) # # run_models(c("agtrend","bkk","example1")) # Run the models in the vector. # # ## ----runAllDynare------------------------------------------------------------- # run_models() # Run all models in Current Working Directory. ## ----runAllDynare1------------------------------------------------------------ # # # Copy the dynare files to the 'DynareR/run_dynare' directory # # lapply(c("agtrend","bkk","example1"),\(x) file.copy(paste0(x,".mod"),"DynareR/run_dynare")) # # run_models(model = 'DynareR/run_dynare*') # notice the * at the end # ## ----importLog---------------------------------------------------------------- # import_log(model="bkk") # # import_log(path="bkk/bkk.log") # # knitr::kable(dynare$bkk$autocorrelation) # # # %>% kableExtra::kable_styling(latex_options = c("basic","hold_position","scale_down")) %>% # # kableExtra::footnote(general="Some footnote with equation $\\alpha x^2+\\beta x+c=0$", general_title = "*",footnote_as_chunk=T,threeparttable=T,escape=F) %>% # # kableExtra::row_spec(0,bold=T) ## ----dynareVersion,eval=F----------------------------------------------------- # set_dynare_version("6-unstable-2022-04-03-0800-700a0e3a") # ## ----OctavePath--------------------------------------------------------------- # set_octave_path('C:/Program Files/GNU Octave/Octave-6.4.0/mingw64/bin/octave20.exe') ## ----addPath,eval=FALSE------------------------------------------------------- # # add_path('/usr/lib/dynare/matlab')# Default for Linux # # add_path('c:/dynare/5.1/matlab') # Default for Windows, but 5.1 can change if later version of # # `Dynare` is installed. # # add_path('/usr/lib/dynare/matlab') # Default for macOS # ## ----demo--------------------------------------------------------------------- # demo(run_dynare) # demo(run_models) # demo(import_log)