![]() |
CONCALC - Estimating Concentrations of Constituents Suspended in Streamflow |
AQUA TERRA Consultants was charged by the USGS to explore the use of the Java programming language by creating a GUI version of SEDCALC. SEDCALC (SEDiment-record CALCulations) is a set of FORTRAN programs used to compute suspended-sediment loads. SEDCALC operates on suspended-sediment concentration and stream flow data stored in a card-image format. CONCALC, written entirely in Java, computes the loads of various constituents, not just sediment. Character-based, sequential SEDCALC menu selections and form fill/edits are replaced by a graphical user interface which provides more direct control and more responsive feedback.

In addition to performing the specific functions required by SEDCALC, CONCALC is designed to be a general platform for managing, manipulating and displaying time-related data. Data management includes organizing sets of data into projects. CONCALC's main screen is an overview of the datasets in a project. The overview includes the name and dates of each dataset as well as a thumbnail graph that shows a profile of the data. Different sets of data can be merged or a single dataset can be split according to date, value, or remark code. If related sets of data were gathered at different time intervals, their values can be interpolated to a particular time step or to exactly match another dataset. Other general manipulations of data include common mathematical functions such as addition, multiplication, exponents, logarithms, high and low pass filters, and running sum computation. Most of these functions can use either a constant or another aligned dataset in the computation. More complex functions can apply different computations to different parts of a dataset depending on data values. This can be useful for applying different models for low and high flow conditions.
Views of the data supported by CONCALC include a textual tabular view where each dataset is placed in a column as well as two-dimensional graphical views. A time plot can use either linear or logarithmic axes for data values in the vertical dimension. The horizontal axis is specially designed to display times on a scale of minutes, hours, days, months, or years with two levels of labels. A control panel fine-tunes the graph display by manipulating details such as labels, colors and grid lines. Finally, two aligned datasets can be graphed against each other to show their interrelationship. SEDCALC users need this feature for developing flow vs. concentration curves.
