Last modified 5 years ago Last modified on 06/03/12 13:37:12

How to write a cookbook recipe

Algorithms included in the cookbook shall be documented by writing a wiki page for each algorithm of this Trac system, under the wiki/cookbook directory. A recipe shall be written before a new algorithm is implemented technically.

A “recipe” in the cookbook shall contain the following sections, in order:

1. Algorithm name

2. Basic description

a) Physical basis of the algorithm

b) Amount of validation performed so far

c) References (names and contact information of all developers during the evolutionary history, scientific papers)

3. ODIM metadata requirements for I/O

4. Input data

a) What kind of radar data (including the list of previous algorithms and quality flags applied)

b) Other data (optional and mandatory, applying “universally” agreed formats, geometry)

5. Logical steps, using any of: text, flow charts, graphics, equations (or references to equations), conditional branches in “all possible cases”.

Besides normal text, we can add "interactive" diagrams using Graphviz markup, e.g.

GraphViz image

We can also attach static graphics, ie. images created externally.

Equations can be added using LaTeX notation, e.g.

$ \overline{P_r} = \frac{P_t G^2 \lambda^2 \theta \phi h L}
{512(2 \ln 2) \pi^2 r^2} \frac{1}{\Delta v} \sum_{vol} \sigma_i $

Tables can be created using the WYSIWYG functionality, e.g.

Column 1 Col 2 Col 3
Content 1 Content 2 Content 3

6. Output.

a) Data type using ODIM notation where possible, e.g. DBZH

b) Added quality indicators

7. Outline of a test concept exemplifying the algorithm, as a suggestion for checking that an implementation has been successful.