The posteriors for the baseline model, the sensitivity analysis and the pseudo-out-of-sample forecasts were computed with the Fortran program "main.f90" in this folder, which in turn calls on subroutines contained in modules in the other files of this folder. The output is pushed to a Matlab workspace via the Matlab engine, and then saved by sending a corresponding command via the matlab engine. Total runtime is about 3 hours, with almost all of the time spent in the computation of the univariate forecasts.

Compilation uses the Intel® Fortran Compiler 19.4, along with the IMSL Numerical Libraries Version 7.01 and the Matlab engine library R2018a via the command

/nologo /O3 /QxHost /Qip /fpp /I"C:\Program Files\MATLAB\R2018a\extern\include" /I"C:\Program Files (x86)\VNI\imsl\fnl701\Intel64\include\dll" /I"C:\Program Files (x86)\VNI\imsl\fnl701\Intel64\include\static" /assume:nosource_include /assume:nocc_omp /Qopenmp /standard-semantics /real-size:64 /names:uppercase /module:"x64\Release\\" /object:"x64\Release\\" /Fd"x64\Release\vc150.pdb" /check:none /libs:static /threads /Qmkl:sequential /c /assume:realloc_lhs

The subfolder "helper_modules" contains four additional modules with generic subroutines: 
(1) "ML6.f90" 		: connection to the matlab engine
(2) "dotops.f90" 	: collection of operators that collocate matrices and vectors
(3) "myfuncs4.f90" 	: collection of statistcal routines 

The "dgp.f90" and "Geweke.f90" modules are only used to perform the Geweke (2004) test of the sampler, initiated by setting the "trialrun" flag in the "prep" module to .true. 

The Mathematica notebook MkDistancemat.nb computes the distances between countries for the computations in footnote 5. 
