We may soon add a sort of “PSA” category for announcements to clarify this type of a announcement, but I do want to let you all know of an additional feature that slightly changes the way you use models as submodules. It should not really break existing code that uses existing models, although if you re-pull an existing Mimi repo that you were using as a submodule you may need to change a few lines to be consistent with the module syntax.
The primary goal of this update was to allow completed models to function like packages, and thus make their use easier especially for first-time users. We know it changes like this may be challenging at first but firmly believe this is a step forward for ease of use. We set about accomplishing this goal with our new MimiRegistry where we have registered five most-used models: MimiDICE2010, MimiDICE2013, MimiRICE2010, MimiFUND, and MimiPAGE2009.
As described in each of these packages’ README, to use this feature you first need to connect your julia installation with the central Mimi registry of Mimi models. This central registry is like a catalogue of models that use Mimi that is maintained by the Mimi project. To add this registry, run the following command at the julia package REPL:
pkg> registry add https://github.com/mimiframework/MimiRegistry.git
You only need to run this command once on a computer.
The next step is to install a model, such as, MimiRICE2010.jl itself. You need to run the following command at the julia package REPL:
pkg> add MimiRICE2010
Now in your code you may type using MimiRICE2010
to import the exported functions, generally some form of getmodel
function as described in the model’s README. You can also access non-exported functions as you would with any other package. Also as with any package, you can use ] dev MimiRICE2010
to get the package in your environment’s dev
folder and work on its development or access the code on your machine.
All tutorials and README’s have been updated with this information.