Commit messages

October 21, 2014

jpritikin committed r3928 in OpenMx at 08:31:
Improve error message
in /trunk/src: omxExpectationBA81.cpp (modified, previous: r3927)
jpritikin committed r3927 in OpenMx at 08:31:
Sync with rpf

September 27, 2014

jpritikin committed r3841 in OpenMx at 22:12:
BA81: Make E-step optimization less fragile

August 20, 2014

mhunter committed r3768 in OpenMx at 15:00:
Modify .svnignore files.  WLS branch and trunk changes.  Added continuous only wls test.  Found and added state space algebra test.
in /:

August 11, 2014

jpritikin committed r3747 in OpenMx at 10:31:
Extinguish globalState

August 7, 2014

jpritikin committed r3726 in OpenMx at 02:04:
Really fix compiler warning
in /trunk/src: omxExpectationBA81.cpp (modified, previous: r3722)

August 5, 2014

jpritikin committed r3722 in OpenMx at 23:34:
Fix minor compiler warning
in /trunk/src: omxExpectationBA81.cpp (modified, previous: r3709)

July 31, 2014

jpritikin committed r3709 in OpenMx at 22:45:
Allow MxDataDynamic to aggregate >1 BA81 expectation
in /trunk:
jpritikin committed r3706 in OpenMx at 21:12:
Handle model.mat[R,C] labels in BA81 latent distribution
jpritikin committed r3705 in OpenMx at 11:47:
Implement new unprotect strategy

The old idiom was

Rf_protect(foo);
// do stuff
Rf_unprotect(1);  //foo

The second line expresses the hope that we are unprotecting the same
thing that we protected. However, this can fail when "do stuff" involves
anything non-trivial. If there is a protect (or worse, an extra
unprotect) inside "do stuff" then the unprotect will not unprotect foo
but something else.

The new strategy is to check whether the protect stack is
at the same place where we protected, ensuring that our
protects are always balanced by unprotects. It is still
required to think about what is necessary to protect,
but now there is less chance of something going wrong
in the unprotect part.
in /trunk:
Syndicate content