Welcome! This repository contains CATEX—CAlifornia Transmission System EXpansion, a Julia package for modeling capacity expansion and operations optimization. Originally developed for the state of California, but it can be adapted for other systems.
-
Julia: Make sure you have Julia 1.12.2 (or greater) installed on your machine.
- We recommend installing with
juliaupto more easily manage multiple versions of Julia on your machine. To do so, please refer to the installation instructions listed on thejuliaupwebsite.
- We recommend installing with
-
Optimizer: Next install a supported JuMP optimizer, if you don't already have one on your machine. We recommend using Mosek, given the size of this model.
-
CATSX.jl: Finally clone this repository and navigating into the CATEX directory.
$ git clone https://github.com/REAM-lab/CATEX $ cd CATEXWe use Julia's built in package manager
Pkgto resolve package versioning and dependencies. Open a Julia 1.12.2 REPL and open the package manager by typing]. Then typeactivate ., to activate the project package environment, followed byinstantiateto install all packages in the projectManifest.tomlfile. In the commandline this should look like:$ julia +release julia> ] (@v1.12) pkg> activate . (CATEX) pkg> instantiate -
Verification: We recommend verifying that CATEX was installed correctly by running an toy example system,
/examples/toy_example1. This can be done by launching a Julia REPL and runningjulia> run_stocapex(main_dir=joinpath(pwd(), "examples", "toy_example1"))