OpenMx 0.3.0 is a milestone along the path to the 1.0 release. See this post for the full set of features that will be included in the 1.0 release. The most significant change to the user interface is the improved mxConstraint() function. Instead of writing:
implemented new ordinal data interface https://openmx.ssri.psu.edu/thread/416#comment-1421 (except for 'means=0' component)
added mxFactor() function (see ?mxFactor for help)
added R documentation for rvectorize() and cvectorize()
implemented eigenvalues and eigenvectors
added 'numObs', 'numStats' arguments to mxAlgebraObjective()
added 'numObs', 'numStats' arguments to summary()
mxConstraint("A", "=", "B") is now written as mxConstraint(A == B)
renaming 'cov' argument to 'covariance' in omxMnor()
renaming 'lbounds' argument to 'lbound' in omxMnor()
renaming 'ubounds' argument to 'ubound' in omxMnor()
renaming 'cov' argument to 'covariance' in omxAllInt()
argument 'silent = TRUE' to mxRun() will no longer suppress warnings
argument 'suppressWarnings = TRUE' to mxRun() will suppress warnings
added error checking for mxBounds() with undefined parameter names
improving error messages in mxMatrix() function
fixed aliasing bug in mxAlgebra() with external variables and constant values
added directory to repository for nightly tests ("make nightly")
performance improvement to namespace conversion
changing MxPath data structure from a list to an S4 object
new signature for omxSetParameters(model, labels, free, values, lbound, ubound, indep)
checked in implementation of mergesort
changed mxCompare() signature to mxCompare(base, comparison, digits = 3)
mxConstraint("A", "=", "B")
You should write:
mxConstraint(A == B)
It is now possible to include algebras in a mxConstraint() function. So mxConstraint(A + B + C < 2 + D)
is a legal constraint.