Skip to content

ED2 Documentation with Doxygen

Lora Murphy edited this page Sep 21, 2021 · 4 revisions

In order to generate code documentation with oxygen for ED2, simply install Doxygen on your working environment, go to the /ED/Doc folder and execute

doxygen Doxyfile

The most updated version of the documentation can be found here, where you can search variables/functions/subroutines/modules and their associated annotations (if written following Doxygen styles).

Some extended information on Doxygen is listed below

General Doxygen Info

The following info may be helpful for familiarizing one's self with Doxygen, an auto-documentation program which utilizes a system of tags in source code. To tag a subroutine in the ED model as required above, try taking ed_model.f90 as a template and/or browsing the first few links below.

NASA Doxygen Quickstart:

More General Info

Mainpage & custom file construction links:

Using grouping:

https://www.doxygen.nl/manual/grouping.html

Configuration:

https://www.doxygen.nl/manual/starting.html#step1

Documentation generated by doxygen can be accessed (locally) on a machine with this repository under Doc/html/index.html

In order for further pull requests to the mainline to be accepted, modified subroutines will require the following doxygen tags:

  • Brief subroutine descriptions using the brief tag
  • Detailed subroutine descriptions using the details tag
  • Subroutine authorship statements using author tag
  • Inline subroutine argument descriptions using "!< comment"

Please do not commit changes to model code and documentation together if high numbers of documentation files have been modified. Instead ...

  • Submit a pull request to the mainline with a comment that docs needs regeneration or
  • Seperately pull request code changes and documentation updates

Finally, please note:

  • Seperating code and doc changes will make inter-branch comparison much easier when many files are modified.
  • Regenerating documentation may produce many spurious line-end encoding differences which git will pick up on. "git add"-ing such files will often return them to the repo standard CRLF, and they will cease to be listed as modified.