The Configurator will do these steps for you.  If you are not using the configurator, here are the steps that are required  to create a new chemistry configuration in the software side of MusicBox.


The provided user-defined name is the most straightforward way for users to run their own chemistry configurations.  All of the necessary setup work has been done for these runs.  However, at times a user may want to store a named configuration for future ease of use.  In that case additional steps will be required to allow MusicBox to utilize that new configuration.

In this example we will demonstrate how a user will create a new named setup called ABCD

Create a new prebuild script

The CCPP configuration uses a script to perform the prebuild step.  You will need to make your own prebuild script for ABCD

cd MusicBox/ccpp-framework/scripts

cp ccpp_prebuild_config_MusicBox_user-defined.py ccpp_prebuild_config_MusicBox_ABCD.py

<Change PROJECT="user-defined" to be PROJECT="ABCD"


Create and populate a new suite

MusicBox_host/suites/suite_MusicBox_ABCD.xml

  • This file contains the schemes that will be called (and the order in which they will be called at the init, run and finalize steps).  The first set of schemes are the list of both the init and run methods.  It is quite possible that MusicBox_host/suites/suite_MusicBox_user-defined.xml suite will be sufficient and can be copied without modification except for the filename.

Create and populate the generated/ABCD directory

cd MICM_chemistry/generated

mkdir ABCD

-- copy in the required include files: For V1, these are:

  • forcing.inc ---------------------- chemical forcing equations
  • jacobian.inc -------------------- jacobian equations
  • k_rateConst.inc --------------- k rate constants values
  • model_name.inc -------------- model name (Needs to be set to ABCD)
  • prates.inc ----------------------- photo rate constants mapping (from TUV to MICM chemistry)
  • rates.inc ------------------------ reaction rate equations

-- copy in the required molecule information file

  • molec_info.json



  • No labels