New Feature Proposals

Posted on
No user picture. AdminMike Joined: 10/07/2009

New Feature Proposals

This forum is for developers to proposal schemes for the implementation of new features. If you post a new topic, please note that you will be the goto person for implementing the new feature. Otherwise, you are probably looking for the OpenMx wishlist forums. Comments from all users are always welcome on any existing proposal.
Posted on
No user picture. yaning Joined: 04/12/2019

gene based gene environment interaction in twin studies

Hello, everyone
I’m going to explore gene environment interaction based gene in twin studies. I’ve searched for literatures, and found general/generalized linear mixed model framework of ACE model may be good choices(https://www.ncbi.nlm.nih.gov/pubmed/28953253).
Unfortunately, I'm terrible at math and basic theory. And I cannot find the relevant code.
So I want to ask if anyone has done any research that can give some help.
Thank you!
Posted on
Picture of user. tbates Joined: 07/31/2009

allow mxOption to get as well as set

currently

mxOption(m1, key="Number of Threads")

and

mxOption(m1)

Both fail (no value, no key errors, respectively)

It would be nice if asking for a key returned its value, and asking about a model returned the currently active options

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

diag()

I'd really like diag implemented in Openmx - just so that the same code works inside and outside of OpenMx and to ease the learning transition. But, If we aren’t going to support the standard r implementation of diag(), can we implement


diag <- function(x=1, nrow, ncol) {
message("We’re a bit worried that diag can be ambiguous, so we’ve broken it into multiple new functions...")
# then either say
stop("You need to choose among list up our replacement functions to handle everything that diag() does...")

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

Many many submodels (how S4 builds objects and a request to run lists of models)

So I'm following up on some of my factor score work and happened across and old question I had regarding holder or parent models for embarassingly many submodels.

I'm trying to run the same model on 500 (or some other large n) datasets with the independence flag set to TRUE. I'm doing this by creating one model per dataset, building a list of mxModels, then putting this list into a single mxModel for optimization. However, I'm spending most of my time the fourth line of this code:


singScore <- transformFactorScores(spRes, 1, "mu", "sigma", "epsilon")

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

Cholesky Matrix Function

Classic Mx had a \chol function to obtain L for symmetric positive (semi-)definite A in A = L * L'. I figure that the BLAS function
dpbtrf could be used: SUBROUTINE DPBTRF( UPLO, N, KD, AB, LDAB, INFO )

and that it wouldn't be too hard to add this to the list of omxAlgebraFunctions.c - but that it would be harder for me than for say Tim Brick to do this. I made a start but have been hauled off to do other frantically urgent things. I suspect we need to tell the algebra cruncher routine the priority of this operation also.

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

Improve performance of R front end of OpenMx

So I have this model and it takes 800 seconds to compile in the front end. Yes, it has some 81 submodels in it, but still... Classic Mx had finished running the script in less time whereas Open is still going after 9hrs (preliminary results only, it is possible that model is mis-specified).

This thread caught my eye: http://www.r-bloggers.com/the-new-r-compiler-package-in-r-2-13-0-some-first-experiments/

Is it worth trying to compile some bits of the OpenMx frontend to improve performance there?

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

mxCompare: make comparison optional

This is a minor proposal, but I'd like this to work:

> mxCompare2(fit1)
base comparison ep minus2LL df AIC diffLL diffdf p
1 ACE_Non_ScSL_Cor_a 24 67751.8 9976 47799.8 NA NA NA

Currently it would error: Comparison model missing.

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

Correct behavior for 'all=TRUE' for symmetric paths.

Motivated by http://openmx.psyc.virginia.edu/thread/996, Tim (Brick) and I have been talking about how mxPath behaves when arrows=2 and all=TRUE. The current behavior creates all possible paths, save for when excludeself is set to TRUE, in which case the paths from a variable to itself are created then ignored as best as I can figure (I wasn't there/don't remember the meeting for this spec).

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

AIC(fit1)

would it be worth getting this to work for Mx as an accessor function for AIC, with the benefit of being consilient with other functions in R?
AIC(fit1)
Error in UseMethod("logLik") :
no applicable method for 'logLik' applied to an object of class "MxModel"