Skip to content

Latest commit

 

History

History
49 lines (40 loc) · 2.25 KB

README.md

File metadata and controls

49 lines (40 loc) · 2.25 KB

ePhotosynthesis

On biocluster (Linux), I manage to build it successfully using a conda environment. First, initialize a new conda env so that the package path is on your local drive with r/w permissons. Second, install both boost and sundial through conda. Third, follow the following steps for cmake and make. This way, the cmake should be able to find the boost and sundial automatically. Of course, be sure to activate the related env the next time after login.

Note: The sundials version I used is 5.7.0. The newer one 6.6.1 is not compatible!

This is a C++ port of the ePhotosynthesis Matlab model code. The code is built with CMake.

The Matlab origin code is tagged C++ conversion. The scripts directory contains the python script used for the initial conversion and the README file details the overall conversion process. The script is provided for convenience and is not used in the build process.

Prerequisites:

  • Boost (1.36 or newer) - only the algorithm headers are needed
  • Sundials - Only the following modules are used:
    • CVode
    • Kinsol
  • Doxygen - (optional) needed to build the documentation
  • LaTeX - (optional) needed to build pdf formatted documentation

Building

The build must be in a non-source directory.

mkdir build
cd build
cmake ..
make
make install (if desired)

Documentation

The documentation is not automatically built. To build the docs run the following from the build directory

cmake .. -DBUILD_DOCS=true
make docs

This will build the documentation and put the resulting files in the doc directory.

The ePhotosynthesis executable takes the following arguments:

 -r,--record    Record the output values of all intermediate steps (this can substantially increase the runtime of the code)
 -e,--evn       The InputEvn.txt file, including path
 -a,--atpcost   The InputATPCost.txt file, including path
 -b,--begintime The starting time for the calculations (default is 0)
 -s,--stoptime  The ending time for the calculations (default is 5000)
 -z,--stepsize  The step size for the calculations (default is 1)