SABER
System Agnostic Background Error Representation

Introduction

Welcome to the documentation for the System Agnostic Background Error Representation (SABER)

Directory structure

The SABER repository is organized as follows:

  • CI: continuous integration setup files and scripts
  • cmake: SABER-specific compiler flags
  • docs: documentation
  • src: source code
    • saber: SABER source code
      • bump: BUMP core and interfaces
      • external: external tools
      • gaugrid: Gaussian grid tools
      • interpolation: interpolation interface
      • oops: OOPS interface
      • util: shared tools
  • test: testing tools and source code
    • mains: executables sources
      • model: model-specific interfaces for the BUMP executable
    • testinput: input YAML files
    • testlist: lists of tests, data and reference files
  • tools: useful bash and python scripts

Code size and characteristics

Code report obtained with CLOC.

src/saber/bump

language files blank comment code comment/code ratio
Fortran 90 35 5182 8118 20634 39 %
C/C++ Header 1 6 7 39 17 %
C 1 2 6 21 28 %
SUM 37 5190 8131 20694 39 %

src/saber/external

language files blank comment code comment/code ratio
Fortran 90 4 366 1672 1766 94 %
SUM 4 366 1672 1766 94 %

src/saber/gaugrid

language files blank comment code comment/code ratio
Fortran 90 1 59 87 102 85 %
SUM 1 59 87 102 85 %

src/saber/interpolation

language files blank comment code comment/code ratio
Fortran 90 2 165 231 407 56 %
C/C++ Header 2 23 19 56 33 %
C++ 1 12 17 41 41 %
SUM 5 200 267 504 52 %

src/saber/oops

language files blank comment code comment/code ratio
C/C++ Header 13 342 233 1192 19 %
SUM 13 342 233 1192 19 %

src/saber/util

language files blank comment code comment/code ratio
Fortran 90 9 1170 1646 2695 61 %
Fortran 77 2 28 37 102 36 %
SUM 11 1198 1683 2797 60 %

test/mains

language files blank comment code comment/code ratio
Fortran 90 2 168 279 731 38 %
C++ 5 12 41 67 61 %
SUM 7 180 320 798 40 %