lanl/FEOTS

Name: FEOTS

Owner: Los Alamos National Laboratory

Description: null

Created: 2017-12-07 03:07:36.0

Updated: 2018-01-26 15:02:14.0

Pushed: 2018-01-26 15:02:03.0

Homepage: null

Size: 3020

Language: Fortran

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

FEOTs

Fast Equilibration of Ocean Tracers

The Fast Equilibration of Ocean Tracers Software (FEOTS) is a set of Fortran modules and programs for post-processing output from LANL's Parallel Ocean Program (POP). However, it is written so that it can be extended for use with other General Circulation Models. Tools are provided for aiding in the diagnosis of sparse matrices that capture advection and diffusion operators that are consistent with GCM discretizations. FEOTS additionally offers tools to make use of the diagnosed operators to run offline tracer models in forward or equilibration modes.

FEOTS has been tested with the GNU Fortran compiler (version 4.9.5) and depends on the NetCDF-Fortran libraries for handling File I/O. Optional compiler options include OpenMP for software acceleration on multicore architectures.

Programs
GenerateMeshOnlyFile

This program will take a netcdf file, output by POP, extract only the mesh information and write a the mesh to a netcdf file with an additional ``mask'' field needed for the GreedyColoring.

GreedyColoring

Generates the impulse fields given a mesh and a stencil name. Currently, only the Lax Wendroff stencil is included. The impulse fields are then written to a netcdf file for use in POP. Additionally, the adjacency graph and its coloring are written to a binary file for later use.

OperatorDiagnosis

Uses the Adjacency graph and its coloring (generated by GreedyColoring) in addition to impulse response fields to extract the sparse matrix representation of the transport operators. Before calling this program, GreedyColoring must be called to generate impulse fields, and the impulse fields need to be passed through POP to generate the impulse response fields.

RegionalExtraction

Given latitudinal and longitudinal boundaries, this program constructs a data structure that maps between the global mesh and a regional mesh. Masks and mappings are constructed that are used to extract the appropriate rows and columns of the sparse transport matrices. These mappings are written to a binary file for later usage. A regional POP mesh is constructed and a ?tracermask? field is filled in to indicate boundary cells; the regional POP mesh is written to a netcdf file for user inspection. Care was taken to ensure a correct mapping occurs for regions that cross the prime-meridian.

ExtractOceanState

For a regional simulation, this program extracts the temperature, salinity, potential density, and the sea-surface height from the “master” NetCDF files that contain the Impulse Response Functions. This is useful (and necessary) for running offline tracer simulations with water-mass tagging enabled.

FEOTSInitialize

This program is used to set the initial conditions, source terms, relaxation time scales, additional masks, and ?hard-set? values for the tracer fields. The initial fields and other terms are written to a netcdf file (Tracer.init.nc) for user inspection, to verify the configuration before beginning the actual run.

FEOTSDriver

The driver program manages the call to the ?forward integrator? or the ?equilibration? routines, and handles file I/O.


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.