Changeset 2d8895b in tol


Ignore:
Timestamp:
Apr 3, 2009, 5:40:10 PM (18 years ago)
Author:
Víctor de Buen <vdebuen@…>
Branches:
1941-docker-image-to-test, devel, master
Children:
cb09f07
Parents:
e0792b1
Message:

Fixes #655
Fixes #656

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@878 be4846ae-f051-483a-831f-b64e7d08527f

Location:
tol/stdlib/math/stat/models/bayesian/bysMcmc
Files:
1 added
8 edited

Legend:

Unmodified
Added
Removed
  • tol/stdlib/math/stat/models/bayesian/bysMcmc/_build.tol

    re0792b1 r2d8895b  
    2222" Real simulating(Real numSim); //Notifies current simulation\n";
    2323NameBlock BuildCycler(NameBlock modelSampler,
    24                       NameBlock config,
    25                       NameBlock notifier)
     24                      Config config,
     25                      Notifier notifier)
    2626//////////////////////////////////////////////////////////////////////////////
    2727{[[
    … …  
    3131  //Internal reference to sampler definition
    3232  NameBlock _.sampler  = modelSampler;
    33   NameBlock _.notifier = notifier;
    34   NameBlock _.config   = config;
     33  BysMcmc::Notifier _.notifier = notifier;
     34  BysMcmc::Config  _.config   = config;
    3535  //Stores the sampler name
    3636  Text _.name = _.sampler::get.name(0)+"."+_.sampler::get.session(0);
  • tol/stdlib/math/stat/models/bayesian/bysMcmc/_bysMcmc.tol

    re0792b1 r2d8895b  
    1616  //private implementation
    1717  #Embed "_config.tol";
     18  #Embed "_notifier.tol";
    1819  #Embed "_build.tol";
    1920  #Embed "_cmsgs.tol";
  • tol/stdlib/math/stat/models/bayesian/bysMcmc/_config.tol

    re0792b1 r2d8895b  
    3737
    3838//Configuration default values over all BysMcmc related components
    39 Set _config =
    40 [[
     39Class Config
     40{
    4141//MCMC dimensions
    4242  //The final number realizations that will remain after burnin
    … …  
    8383  //Scalar sampler used in ARMA block of basic BSR can be a member of
    8484  //BysMcmc::Options::Scalar.Sampler or an API equivalent function
    85   Code bsr.scalarSampler.armaBlock = Options::Scalar.Sampler::Slice;
     85  Code bsr.scalarSampler.armaBlock = BysMcmc::Options::Scalar.Sampler::Slice;
    8686  //Scalar sampler used in ARMA block of basic BSR can be a member of
    8787  //BysMcmc::Options::Scalar.Sampler or an API equivalent function
    88   Code bsr.scalarSampler.nonLinBlock = Options::Scalar.Sampler::Slice;
     88  Code bsr.scalarSampler.nonLinBlock = BysMcmc::Options::Scalar.Sampler::Slice;
    8989  //Arima filter method
    90   Text bsr.arimaFilter = Options::Arima.Filter::FastChol;
     90  Text bsr.arimaFilter = BysMcmc::Options::Arima.Filter::FastChol;
    9191  //ARIMA block will be updated each this number of iterations
    9292  Real bsr.arimaSkipIter = 1;
    … …  
    129129  //variables.
    130130  Real DBApi.useNodeInMissingIdentifier = True
    131 ]];
    132 
    133 NameBlock Config =
    134 {
    135   Real SetIndexByName(_config);
    136   SetToNameBlock(_config)
    137131};
    138132
    139 //Searches a parameter in the user defined configuration NameBlock and, if
    140 //not exists returns default value of BsyMcmc::Config
    141 Anything GetCfgVal(NameBlock config, Text member)
     133//////////////////////////////////////////////////////////////////////////////
     134Config Config.Default(Real unused)
     135//////////////////////////////////////////////////////////////////////////////
    142136{
    143   StdLib::GetConfigValue(config,member,Eval("BysMcmc::Config::"+member))
     137  Config default;
     138  default
    144139};
    145 //Takes a NameBlock with some config pararameter configurations and adds
    146 //non specified members with default values
    147 NameBlock BuildFullConfig(NameBlock config)
    148 {
    149   Set _cfg = EvalSet(_config, Anything(Anything member)
    150   {
    151     GetCfgVal(config, Name(member))
    152   });
    153   Real SetIndexByName(_cfg);
    154   SetToNameBlock(_cfg)
    155 }
    156140
  • tol/stdlib/math/stat/models/bayesian/bysMcmc/_defineBlock.tol

    re0792b1 r2d8895b  
    1919                      Real numBlock,
    2020                      Real firstCol,
    21                       NameBlock config)
     21                      Config config)
    2222//////////////////////////////////////////////////////////////////////////////
    2323{
    … …  
    4141  Set _.colIdx = Range(_.firstCol, _.lastCol, 1);
    4242  //User configuration parameters
    43   NameBlock _.config   = config;
     43  BysMcmc::Config _.config   = config;
    4444  //Stores current values of parameters
    4545  VMatrix _.store = Rand(_.numCol,1,0,0);
  • tol/stdlib/math/stat/models/bayesian/bysMcmc/bsr/_oneNode.tol

    re0792b1 r2d8895b  
    270270  "  Set _.timeInfo;        //BSR.NoiseTimeInfo\n"
    271271  "]];\n";
    272   Set Estim(NameBlock data, Set nonLinFil, NameBlock config_)
     272  Set Estim(NameBlock data, Set nonLinFil, Config config_)
    273273  ///////////////////////////////////////////////////////////////////////////
    274274  {
    … …  
    285285        nonLinFil,
    286286        config_,
    287         BysMcmc::Bsr::Gibbs::NoNotifier(0)
     287        BysMcmc::NoNotifier(0)
    288288      );
    289289      //WriteLn(_MID+" TRACE 11");
  • tol/stdlib/math/stat/models/bayesian/bysMcmc/bsr/dynhlm/_db_api.estim.tol

    re0792b1 r2d8895b  
    219219          Text resultRootPath,
    220220          NameBlock seriesHandler,
    221           NameBlock config_)
     221          NameBlock config)
    222222////////////////////////////////////////////////////////////////////////////
    223223{
    224   NameBlock config = BysMcmc::BuildFullConfig(config_);
    225224  Real BysMcmc::Bsr::DynHlm::DBApi::useNodeInMissingIdentifier :=
    226225    config::DBApi.useNodeInMissingIdentifier;
    … …  
    255254
    256255  //Creates the data base notifier of current status
    257   NameBlock dbNotifier =
     256  BysMcmc::Notifier dbNotifier =
    258257  [[
    259258    Text _.dbName = dbName;
  • tol/stdlib/math/stat/models/bayesian/bysMcmc/bsr/gibbs/_basicMaster.tol

    re0792b1 r2d8895b  
    1515  // Configuration members
    1616  //--------------------------------------------------------------------------
    17   NameBlock _config = BysMcmc::BuildFullConfig(config);
     17  BysMcmc::Config _config = config;
    1818
    1919  //--------------------------------------------------------------------------
  • tol/stdlib/math/stat/models/bayesian/bysMcmc/bsr/gibbs/_estim.tol

    re0792b1 r2d8895b  
    1111"Estimates a BSR model by Gibbs method\n"+
    1212"Argument `parsed` must be defined as the result of calling function "
    13 "BSR.Parse\n"+
    14 "Argument `notifier` is an event tracing handler and must has at least "
    15 "these public methods: \n"+
    16 " Real initializing(Real numVar,Text path) { ... };\n"+
    17 " Real simulating(Real numSim, Real timeAvg) { ... };\n"+
    18 " Real reporting(Real unused) { ... };\n"+
    19 " Real evaluating(Real unused) { ... };\n";
     13"BSR.Parse\n";
    2014
    2115Set EstimParsed(BSR.ModelDef parsed,
    2216                Set nonLinFilter,
    23                 NameBlock config_,
    24                 NameBlock notifier)
     17                Config config,
     18                Notifier notifier)
    2519//////////////////////////////////////////////////////////////////////////////
    2620{
    27   NameBlock config = BysMcmc::BuildFullConfig(config_);
    2821//WriteLn("TRACE EstimParsed Card(nonLinFilter) = "<<Card(nonLinFilter));
    2922  NameBlock gibbs = If(!Card(nonLinFilter),
    … …  
    109102"Estimates a BSR model by Gibbs method\n"+
    110103"Argument `ascii` must be an ASCII file path prepared to be parsed by "
    111 "function BSR.Parse\n"+
    112 "Argument `notifier` is an event tracing handler and must has at least "
    113 "these public methods: \n"+
    114 " Real parsing(Real numVar,Text path);\n"+
    115 " Real initializing(Real numVar,Text path);\n"+
    116 " Real simulating(Real numSim); \n"+
    117 " Real reporting(Real numVar,Text path);\n"+
    118 " Real evaluating(Real numVar,Text path);\n";
     104"function BSR.Parse\n";
    119105Set EstimAscii(Text ascii_,
    120106               Set nonLinFilter,
    121                NameBlock config,
    122                NameBlock notifier)
     107               Config config,
     108               Notifier notifier)
    123109//////////////////////////////////////////////////////////////////////////////
    124110{
    … …  
    143129" - A Set containing the result of calling function BSR.Parse\n"+
    144130" - A NameBlock with the minimum API accepted by standard importing method "
    145 "BysMcmc::Bsr::Import::Write\n"+
    146 "Argument `notifier` is an event tracing handler and must has at least "
    147 "these public methods: \n"+
    148 " Real parsing(Real numVar,Text path);\n"+
    149 " Real initializing(Real numVar,Text path);\n"+
    150 " Real simulating(Real numSim); \n"+
    151 " Real reporting(Real numVar,Text path);\n"+
    152 " Real evaluating(Real numVar,Text path);\n";
     131"BysMcmc::Bsr::Import::Write\n";
    153132Set EstimAndNotify(Anything modelDef,
    154                    NameBlock config,
    155                    NameBlock notifier)
     133                   Config config,
     134                   Notifier notifier)
    156135//////////////////////////////////////////////////////////////////////////////
    157136{
    … …  
    185164/////////////////////////////////////////////////////////////////////////////
    186165 
    187 //////////////////////////////////////////////////////////////////////////////
    188 NameBlock NoNotifier(Real 0)
    189 //////////////////////////////////////////////////////////////////////////////
    190 {[[
    191   Real parsing(Real unused) { Real 0 };
    192   Real initializing(Real numVar,Text path) { Real 0 };
    193   Real simulating(Real numSim, Real timeAvg) { Real 0 };
    194   Real reporting(Real unused) { Real 0 };
    195   Real evaluating(Real unused) { Real 0 }
    196 ]]};
    197166
    198167//////////////////////////////////////////////////////////////////////////////
    … …  
    209178//////////////////////////////////////////////////////////////////////////////
    210179{
    211   EstimAndNotify(modelDef, config, BysMcmc::Bsr::Gibbs::NoNotifier(0))
     180  EstimAndNotify(modelDef, config, BysMcmc::NoNotifier(0))
    212181};
    213182/////////////////////////////////////////////////////////////////////////////
Note: See TracChangeset for help on using the changeset viewer.