OpenMx Developer Forums

Posted on
Picture of user. tbates Joined: 07/31/2009

way to see (a list of) the paths that mxPath creates

currently, if you run mxPAth you get something like this

> mxPath(from=latents, arrows = 2, free = T, all = T)
mxPath 
@from:  'F1', 'F1', 'F1', 'F1', 'F1', 'F1', 'F2', 'F2', 'F2', 'F2', 'F2', 'F2', 'F3', 'F3', 'F3', 'F3', 'F3', 'F3', 'F4', 'F4', 'F4', 'F4', 'F4', 'F4', 'F5', 'F5', 'F5', 'F5', 'F5', 'F5', 'F6', 'F6', 'F6', 'F6', 'F6', and 'F6' 
@to:  'F1', 'F2', 'F3', 'F4', 'F5', and 'F6' 
@arrows:  2 
@values:  0 
@free:  TRUE 
@labels:  NA 
@lbound:  NA 
@ubound:  NA 
@excludeself:  FALSE 
Posted on
Picture of user. mspiegel Joined: 07/31/2009

mxPath unexpected behavior with all = TRUE

Imagine I want to create the following model:

I try creating this model fragment using the following R code:

lVars <- c('a', 'b')
freeParams <- c('p1', 'p2', 'p3')

model <- mxModel('model', type = 'RAM',
   latentVars = lVars,
   mxPath(from = lVars, to = lVars, arrows = 2, 
      all = TRUE, labels = freeParams))

But this code generates the model:

Posted on
Picture of user. tbates Joined: 07/31/2009

omxGraphviz() model not type RAM

1. Run "IntroSEM-BivariateRaw.R" in trunk.models/passing

2. Send the output to omxGraphviz.

Despite this being a RAM model its type is not "MxRAMModel"

is(biRegModelRawOut)
# "MxModel"
# (which makes omxGraphviz() terminate with error )

Posted on
Picture of user. mspiegel Joined: 07/31/2009

mxRowObjective() interface

At the last developers meeting, we discussed changes to the mxRowObjective() interface that are intended to simplify the treatment of NA values in the backend. Currently there are no legitimate methods for inducing a NA value into a MxMatrix or MxAlgebra object. Any operation that produces a NA value (such as division by zero) should be throwing an error even if it currently does not. However, the mxRowObjective() objective function could allow definition variables to be populated with NA values.

Posted on
Picture of user. carey Joined: 10/19/2009

boundary conditions

(1) am trying to write R code to deal with boundary conditions. is there a SIMPLE way in which i can create an R object from a fitted MxModel that generates vectors of lower and upper bounds for the free parameters? ( i have code that does it, but it is pretty ugly).

(2) the documentation for MxBounds and mxBounds speak of a 'spec' matrix. the same term also appears in several documents when i do a search. anybody tell me what that is? suggest that you include an example of using a 'spec' matrix in the documentation for mxBounds.

greg

Posted on
Picture of user. brandmaier Joined: 02/04/2010

algebra names of MxFIMLObjective

Just a minor issue:
Looking into the output of "objective" of an MxFIMLObjective, I find that the covariance matrix is names "covariance" but the means vector only has a generic title like "untitled4391". For consistency, I suggest to name the means vector "means".

compare this output:

> model@objective
MxFIMLObjective 'objective'
@covariance : 'covariance'
@means : 'untitled4391'
@vector : FALSE
@dims : NA
@thresholds : NA

best,
Andreas

Posted on
Picture of user. mspiegel Joined: 07/31/2009

Developers Meeting 1/14/2011

Here are the minutes for today's developers meeting.

  1. Add three test conditions for summary output. See forum discussion.
    • calculated hessian is non-positive-definite
    • calculated hessian values are zero
    • calculated hessian values are very far from zero
  2. Rename omx*** functions to imx**** functions. See forum discussion.
Posted on
Picture of user. wuhao_osu Joined: 09/07/2010

convergence status OK but calculated Hessian with negative eigenvalue

Forums

Hello,

I just found in a run that the calculated Hessian has a negative eigenvalue (which also result in NAs for some standard errors) and some of the gradients seems large. However, the convergence code is 0 so no error or warning is displayed. Should a warning be displayed in this case?

I tried another starting value and this problem goes away, with objective function decreases about 0.28, indicating the first run does not reach the minimum.

The code and data are in the attachment.

Thanks.

- Hao

Posted on
Picture of user. mspiegel Joined: 07/31/2009

joint continuous/ordinal FIML optimization

We are implementing the joint continuous and ordinal piece for the FIML objective function. There was a long discussion at this week's developers meeting on how to match expected means/covariances and thresholds to the observed dataset. First, here is some background.

Posted on
No user picture. marijn Joined: 12/03/2010

OpenMx on GPU?

We are investigating the idea to make a GPU-version of OpenMx, in the sense that time consuming matrix functions will be executed on GPU, instead of CPU. I am new to OpenMx, so I don't know whether someone already looked into this, or is working on it. It seems quite straightforward to replace the Fortran implementation of the LAPACK functions being used by a GPU-implementation of LAPACK.