12.07.2015 Views

WRF - Developmental Testbed Center

WRF - Developmental Testbed Center

WRF - Developmental Testbed Center

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

The other very typical activity for users is to define new run-time options, which arehandled via a Fortran namelist file namelist.input in <strong>WRF</strong>. As with the model statearrays and variables, the entire model configuration is described in the Registry. As withthe model arrays, adding a new namelist entry is as easy as adding a new line in theRegistry.While the model state and configuration are by far the most commonly used features inthe Registry, the data dictionary has several other powerful uses. The Registry fileprovides input to generate all of the communications for the distributed memoryprocessing (halo interchanges between patches, support for periodic lateral boundaries,and array transposes for FFTs to be run in the X, Y, or Z directions). The Registryassociates various fields with particular physics packages, so that the memory footprintreflects the actual selection of the options, not a maximal value.Together, these capabilities allow a large portion of the <strong>WRF</strong> code to be automaticallygenerated. Any code that is automatically generated relieves the developer of the effortof coding and debugging that portion of software. Usually, the pieces of code that aresuitable candidates for automation are precisely those that are fraught with “hard todetect” errors, such as communications, indexing, and IO which must be replicated forhundreds of variables.Registry SyntaxEach entry in the Registry is for a specific variable, whether it is for a new dimension inthe model, a new field, a new namelist value, or even a new communication. Forreadability, a single entry may be spread across several lines with the traditional “\” at theend of a line to denote that the entry is continuing. When adding to the Registry, mostusers find that it is helpful to copy an entry that is similar to the anticipated new entry,and then modify that Registry entry. The Registry is not sensitive to spatial formatting.White space separates identifiers in each entry.Note: Do not simply remove an identifier and leave a supposed token blank, use theappropriate default value (currently a dash character “-“).Registry EntriesThe <strong>WRF</strong> Registry has the following types of entries:Dimspec – Describes dimensions that are used to define arrays in the modelState – Describes state variables and arrays in the domain structureI1 – Describes local variables and arrays in solveTypedef – Describes derived types that are subtypes of the domain structureRconfig – Describes a configuration (e.g. namelist) variable or arrayPackage – Describes attributes of a package (e.g. physics)Halo – Describes halo update interprocessor communications<strong>WRF</strong>-NMM V3: User’s Guide 6-6

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!