Changeset 24bdea7 in tol
- Timestamp:
- Apr 1, 2009, 3:48:09 PM (18 years ago)
- Branches:
- 1941-docker-image-to-test, devel, master
- Children:
- dd921c2
- Parents:
- 90b59de
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
tol/stdlib/math/stat/models/bayesian/bysMcmc/bsr/gibbs/_basicMaster.tol
r90b59de r24bdea7 259 259 VMatrix si = _.sig.blk::_.sigmaInv; 260 260 //WriteLn("TRACE"+_MID+" draw.sig.lin 7"); 261 /* 261 262 VMatrix Y01 = _.arm.blk::filter(si*_.YplusV); 262 263 //WriteLn("TRACE"+_MID+" draw.sig.lin 6"); … … 265 266 VMatrix _.beta := If(Not(_.mln.blk::_.N),Rand(0,1,0,0), 266 267 _.mln.blk::draw(numSim, Y01, X01)); 268 */ 269 VMatrix _.beta := If(Not(_.mln.blk::_.N),Rand(0,1,0,0), 270 _.mln.blk::draw(numSim, si*_.YplusV, si*_.XplusU, _.arm.blk)); 267 271 //WriteLn("TRACE"+_MID+" draw.sig.lin 9"); 268 272 _.beta << sig << arm << im << om 269 273 }; 270 271 ////////////////////////////////////////////////////////////////////////////272 Text _.autodoc.member.maxLikelihood =273 "";274 VMatrix maxLikelihood(Real numIter)275 ////////////////////////////////////////////////////////////////////////////276 {277 Real DoExternalFilter(0);278 VMatrix om = If(Not(_.outMis.blk::_.blockDef::_.numCol),Rand(0,1,0,0),279 {280 _.outMis.blk::maxLikelihood(numSim,_.arm.blk,_.sig.blk::_.sigmaInv,281 _.Y-_.XplusU*_.beta)282 });283 VMatrix _.YplusV := _.outMis.blk::filter(_.Y);284 //WriteLn("TRACE"+_MID+" draw.sig.lin 1.3");285 VMatrix im = If(Not(_.inpMis.blk::_.blockDef::_.numCol),Rand(0,1,0,0),286 {287 _.inpMis.blk::maxLikelihood(numSim,_.arm.blk,_.sig.blk::_.sigmaInv,288 _.beta, _.YplusV-_.modelDef->X*_.beta)289 });290 VMatrix _.XplusU := _.inpMis.blk::filter(_.modelDef->X);291 //WriteLn("TRACE"+_MID+" draw.sig.lin 1.5");292 VMatrix _.noise := _.YplusV - _.XplusU*_.beta;293 //WriteLn("TRACE"+_MID+" draw.sig.lin 2");294 VMatrix arm = If(Not(_.arm.blk::_.blockDef::_.numCol),Rand(0,1,0,0),295 _.arm.blk::maxLikelihood(numSim, _.noise, _.sig.blk::_.blockDef::_.store));296 //WriteLn("TRACE"+_MID+" draw.sig.lin 3");297 VMatrix e = _.arm.blk::filter(_.noise);298 //WriteLn("TRACE"+_MID+" draw.sig.lin 4");299 VMatrix sig = If(Not(_.sig.blk::_.blockDef::_.numCol),Rand(0,1,0,0),300 _.sig.blk::maxLikelihood(numSim, e))/*_config::mls.FunnelGibbs.sigmaFactor*/;301 //WriteLn("TRACE"+_MID+" draw.sig.lin 5");302 VMatrix si = _.sig.blk::_.sigmaInv;303 //WriteLn("TRACE"+_MID+" draw.sig.lin 7");304 VMatrix Y01 = _.arm.blk::filter(si*_.YplusV);305 //WriteLn("TRACE"+_MID+" draw.sig.lin 6");306 VMatrix X01 = _.arm.blk::filter(si*_.XplusU);307 //WriteLn("TRACE"+_MID+" draw.sig.lin 8");308 VMatrix _.beta := If(Not(_.mln.blk::_.N),Rand(0,1,0,0),309 _.mln.blk::maxLikelihood(numSim, Y01, X01));310 //WriteLn("TRACE"+_MID+" draw.sig.lin 9");311 _.beta << sig << arm << im << om312 };313 314 315 274 316 275 //--------------------------------------------------------------------------
Note: See TracChangeset
for help on using the changeset viewer.
