LOW Implementation

The LOW Sensitivity Calculator follows the basic structure of an API layer (see LOW API docs page), validation, then calculation, using a look up table. The code is functional in nature, relying on pure functions which do not mutate state. The diagram below aims to give a view of this functional structure for the calculate and weighting endpoints.

_images/low_calculate_function_view.svg

Function flow when calling calculate endpoint

_images/low_weighting_function_view.svg

Function flow when calling weighting endpoint. See beam module implementation for the details of the lower level functions.

The Python modules can also been seen below. Mostly the implementation uses module level pure functions, and makes use of classes only for data objects and to encapsulate the look up tables.

_images/low_module_diagram.svg