mxOption {OpenMx} | R Documentation |
The function sets or clears an option that is specific to the optimizer in the back-end.
mxOption(model, key, value, reset = FALSE)
model |
An MxModel object or NULL |
key |
The name of the option. |
value |
The value of the option. |
reset |
If TRUE then reset all options to their defaults. |
Sets an option that is specific to the particular optimizer used in the back-end.
The name of the option is the ‘key’ argument. Use value = NULL to remove
an existing option. Before the model is submitted to the back-end, all keys and
values are converted into strings using the as.character function. To reset
all options to their default values, use reset = TRUE. If reset = TRUE, then ‘key’
and ‘value’ are ignored. To set the default optimizer options, use the value
NULL for the ‘model’ argument. Use getOption('mxOptions')
to see the default
optimizer options.
The maximum number of major iterations for the NPSOL optimization (the option “Major iterations”) can be specified either by using a numeric value (such as 50, 1000, etc) or by specifying a user-defined function. The user-defined function should accept two arguments as input, the number of parameters and the number of constraints, and return a numeric value as output.
OpenMx options
Calculate Hessian | [Yes|No] | calculate the hessian explicitly after optimization. |
Standard Errors | [Yes|No] | return standard error estimates from the explicitly calculate hessian. |
CI Max Iterations | i | the maximum number of retries when calculating confidence intervals. |
Default optimizer | [NPSOL|CSOLNP] | the gradient descent optimizer to use. |
NPSOL-specific options
Nolist | this option suppresses printing of the options | |
Print level | i | the value of i controls the amount of printout produced by the major iterations |
Minor print level | i | the value of i controls the amount of printout produced by the minor iterations |
Print file | i | for i > 0 a full log is sent to the file with logical unit number i. |
Summary file | i | for i > 0 a brief log will be output to file i. |
Function precision | r | a measure of accuracy with which f and c can be computed. |
Infinite bound size | r | if r > 0 defines the "infinite" bound bigbnd. |
Feasibility tolerance | r | the maximum acceptable absolute violations in linear and nonlinear constraints. |
Major iterations | i or a function | the maximum number of major iterations before termination. |
Verify level | [-1:3|Yes|No] | see NPSOL manual. |
Line search tolerance | r | controls the accuracy with which a step is taken. |
Derivative level | [0-3] | see NPSOL manual. |
Hessian | [Yes|No] | return the transformed Hessian (if ‘ No’ ) or the Hessian itself (if ‘Yes’ ). |
Checkpointing options
Always Checkpoint | "Yes" or "No" whether to checkpoint all models during optimization |
Checkpoint Directory | the directory where to write checkpoint files |
Checkpoint Prefix | the string prefix to add to all checkpoint filenames |
Checkpoint Units | the type of units for checkpointing: 'minutes', 'iterations', or 'evaluations' |
Checkpoint Count | the number of units between checkpoint intervals |
Model transformation options
Error Checking | "Yes" or "No" on whether model consistency checks are performed in the OpenMx front-end |
No Sort Data | character vector of model names for which FIML data sorting is not performed |
RAM Inverse Optimization | "Yes" or "No" whether to enable solve(I - A) optimization |
RAM Max Depth | the maximum depth to be used when solve(I - A) optimization is enabled |
Multivariate normal integration parameters
mvnMaxPointsA | base number of integration points |
mvnMaxPointsB | number of integration points per row |
mvnMaxPointsC | number of integration points per rows^2 |
mvnAbsEps | absolute tolerance |
mvnRelEps | relative tolerance |
Returns the model with the optimizer option either set or cleared.
The OpenMx User's guide can be found at http://openmx.psyc.virginia.edu/documentation.
mxModel all uses of mxOption are via an mxModel whose options are set or cleared.
testModel <- mxModel(model="testModel") # make a model to use for example testModel$options # show the model options (none yet) options()$mxOptions # list all mxOptions (global settings) testModel <- mxOption(testModel, "Function precision", 1e-5) # set the precision testModel <- mxOption(testModel, "Function precision", NULL) # clear model-specific precision (defaults to global setting) testModel <- mxOption(testModel, "Calculate Hessian", "No") # may optimize for speed testModel <- mxOption(testModel, "Standard Errors" , "No") # may optimize for speed testModel$options # see the list of options you set