Files
We briefly describe the file and folder structure of the package.
Source code
Source code is in the "src"
folder:
"src"
"StructuralEquationModels.jl"
defines the module and the exported objects"types.jl"
defines all abstract types and the basic type hierarchy"objective_gradient_hessian.jl"
contains methods for computing objective, gradient and hessian values for different model types as well as generic fallback methods- The four folders
"observed"
,"implied"
,"loss"
and"diff"
contain implementations of specific subtypes (for example, the"loss"
folder contains a file"ML.jl"
that implements theSemML
loss function). "optimizer"
contains connections to different optimization backends (aka methods forsem_fit
)"optim.jl"
: connection to theOptim.jl
package
"frontend"
contains user-facing functions"specification"
contains functionality for model specification"fit"
contains functionality for model assessment, like fit measures and standard errors
"additional_functions"
contains helper functions for simulations, loading artifacts (example data) and various other things
Code for the package extentions can be found in the "ext"
folder:
"SEMNLOptExt"
for connection toNLopt.jl
."SEMProximalOptExt"
for connection toProximalAlgorithms.jl
.
Tests and Documentation
Tests are in the "test"
folder, documentation in the "docs"
folder.