Abstract:
System for solving for the fully three-dimensional advection diffusion reaction (ADR) of dissolved or particulate tracers (biological or chemical materials) in aquatic environments including an input processor and an ADR tracer field processor. Results from a single execution of an ocean circulation model may be used to drive a separate ADR computer simulation and compute a tracer forecast. The velocity fields are not required to be from an ocean circulation model, they could be analysis fields derived from some other source, such as high frequency RADAR observations or satellite-based surface ocean velocity inversion/detection methods.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     Not applicable. 
     BACKGROUND 
     Methods and systems disclosed herein relate generally to ocean modeling, and more specifically to solving for advection diffusion reaction of dissolved or particulate tracers in aquatic environments. 
     The currents and action of fluid motion are constant environmental perturbations to the wide range of chemical and biological interactions that occur in the ocean. Physical ocean computer models take atmospheric forcing as input and attempt to calculate the future trend of the ocean&#39;s physical state, e.g., current speed and direction, turbulence, wave heights, ocean salinity and temperature. These physical model forecasts can help in the scientific study and potentially the forecasting of dissolved and particulate materials in the oceans, coastal domains and estuaries. Biogeochemical modeling takes advantage of the ability of physical ocean models to properly describe and forecast fluid motions. The underlying basis to biogeochemical models is that a simulated field (an array of point material concentrations over a multi-dimensional grid) of some set of biological or chemical constituents is subject to physical transport in ocean currents, that the physical model will adequately describe the advection and diffusion of the materials, and additional terms can be added to describe biological interactions or chemical reactions. Hence biogeochemical models are essentially a description of time-dependent advection diffusion-reaction (ADR) for specified ocean constituents. Dispersion is the action or process of distributing materials over a wide area—specific to fluid dynamics this refers to the combined action of advection and diffusion of dissolved and suspended particulate materials that results in a change in the three-dimensional distribution of these materials over time. It is fundamental to the ADR calculation that the ocean physics is represented, and so the physical ocean circulation models are an integral component of any potential ADR system. A direct way to construct a coupled ADR computer model is to integrate the advection and diffusion of a biological/chemical tracer field directly into the physical ocean computer model software. An additional set of tracers can be added to advection and diffusion computations for temperature and salinity. Additional software code can be added to describe the reactions and interactions of these additional field properties. Direct coupling can present practical concerns to investigations focused on the “reaction” portion of the ADR simulation such as, for example, but not limited to, the fact that biological and ecosystem interactions tend to be both complex and poorly constrained by either first principles or direct observation. As a practical matter, work towards development of prognostic ADR equations requires multiple iterations of various “R” formulations, often with excessively large parameter lists. Setting the complexity of ecosystems aside, even the decay rates for certain dissolved chemical materials may be very poorly constrained. Research in these areas using ADR simulations can require that multiple or “ensemble” sets of computer simulations will be performed. Re-calculating the ocean physics for each simulation can be wasteful and superfluous. Also, source code and forcing fields for the physical ocean model may not be available, and only the results from the physical model (in the form of velocity fields) can be accessible to the investigator. It also may be the case that the extensive computational resources required to execute the physical ocean model are only intermittently available. In these situations, the direct ADR coupling method may not be a pragmatic solution. 
     An offline coupler of the prior art performs a two-dimensional advection computation (surface only) based on ocean circulation model results, but does not solve for continuity or obey mass conservation. Thus, the offline coupler introduced spurious artifacts into the ADR solution and diminished the apparent quality and utility of the forecast products. 
     What is needed is a system by which the results from a single execution of an ocean circulation model may be used to drive a separate ADR computer simulation and compute a tracer forecast. What is further needed is a system that does not require that the velocity fields are from an ocean circulation model, they could be analysis fields derived from some other source, such as high frequency RADAR observations or satellite-based surface ocean velocity inversion/detection methods. 
     SUMMARY 
     The system of the present embodiment for solving for the fully three-dimensional advection diffusion reaction (ADR) of dissolved or particulate tracers (biological or chemical materials) in aquatic environments can include, but is not limited to including, an input processor receiving, for example, but not limited to, a set of flow fields (East/West and North/South velocity components ideally from a hydrodynamic or ocean circulation model), bathymetric data, an initial property field, and a spatial grid, and an ADR processor solving for the advection-diffusion-reaction of tracers. The ADR processor can provide computational savings for a wide range of forecasting applications and basic oceanographic/aquatic research programs. In particular, the system and method of the present embodiment can obviate the need for integrating the advection-diffusion of tracers directly into the physical models. The ADR processor can combine a numerical advection scheme with previously computed velocity fields, establish of a grid and staggered stencil, and perform iterative adjustments for continuity and mass conservation to compute ADR. 
     The method of the present embodiment for forecasting a tracer can include, but is not limited to including, the steps of: (a) defining a 2D grid for an area of interest, (b) defining a 3D grid based on the 2D grid and bathymetric data, (c) defining surfaces for each grid point in the 3D grid, (d) defining an initial field over the 3D grid, (e) defining each velocity grid point in the 3D grid by interpolating flow fields to the 3D grid, (f) associating each velocity grid point with at least one of the surfaces, (g) calculating, for example, but not limited to, based on first order upwind differencing, fluid flow through each side of the grid cell over a time step, (h) computing a total flux through each of the surfaces based on the fluid flow, (i) computing a residual mass flux of layers of a water column based on the total flux and the residual mass flux of adjacent of the layers, (j) iteratively computing a residual velocity of the layers based on the residual mass flux, (k) computing adjusted flow fields by removing the residual velocities from the velocity grid points; and (l) performing time-dependent advection/diffusion calculation to create the tracer forecast based on the adjusted flow fields. The method depends on defining the specific area of each side of the grid cell, because that&#39;s how the flow field calculation is adjusted. U and V velocity components are associated with each grid point, and each velocity component is associated with a grid surface. 
     The method can optionally include the steps of determining remaining of the residual velocities in the adjusted flow fields, if the remaining residual velocities are above a continuity threshold, receiving updated of the flow fields; and repeating steps (e)-(l). The method can further optionally include the step of storing the spacing of each grid cell as either a scalar for constant spacing or an array for irregular spacing. The area of interest can include, but is not limited to including, the upper two hundred meters of the water column. The bathymetric data resolution of the bathymetric data can include the 2D grid resolution of the 2D grid. A sigma-style vertical coordinate can be a fraction of the water column, for example, but not limited to, 1/29th of the depth of the water column or 200 meters. The step of defining surfaces for each grid point in the 2D grid can include, but is not limited to including, the step of interpolating a simulated finite volume around each grid point in the 3D grid over the bathymetry data, if the bathymetry data is not flat. The initial field can include, but is not limited to including, point concentrations over the 3D grid. 
     The method for adjusting flow fields in a 2D grid can include, but is not limited to including, the steps of accessing ocean flow fields and associated bathymetric data, interpolating the flow fields to the 2D grid, calculating residuals for each water column associated with the flow fields and the bathymetric data, and iteratively adjusting the flow fields by removing the residuals. 
     The system for forecasting a tracer can include, but is not limited to including grid/surface processor defining a 2D grid for an area of interest, a 3D grid based on the 2D grid and bathymetric data, surfaces for each grid point in the 3D grid, and an initial field over the 3D grid, velocity grid point processor defining each velocity grid point in the 3D grid by interpolating flow fields to the 3D grid and associating each velocity grid point with at least one of the surfaces, and flux processor computing a total flux through each of the surfaces based on the velocity grid points. The system can further include residual processor computing a residual mass flux of the layers of a water column based on the total flux and the residual mass flux of adjacent of the layers, and iteratively computing a residual velocity of the layers based on the residual mass flux, flow field processor calculating fluid flow through each side of the grid cell over a time step, and adjusting the flow fields by removing the residual velocities from the velocity grid points, velocity receiver receiving velocity components if the adjusted flow fields have an absolute residual velocity above a continuity threshold, and tracer field processor performing time-dependent advection/diffusion calculation to create the tracer forecast based on the adjusted flow fields. The velocity grid point processor can access the flow fields from a hydrodynamic circulation model, the bathymetric data, the initial field, and the 2D grid for the area of interest. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a schematic block diagram of the system of the present embodiment; 
         FIG. 2  is a flowchart of the method of the present embodiment; 
         FIG. 3  is a diagram of a grid cell of the present embodiment; 
         FIG. 4  is a diagram of horizontal grid sides associated with vertical grid sides for each velocity component; 
         FIG. 5  is grid cell representation of a water column over a finite horizontal space and vertical depth; and 
         FIG. 6  is a diagram of a horizontal indexed grid. 
     
    
    
     DETAILED DESCRIPTION 
     These solutions and other advantages are achieved by the various embodiments of the teachings described herein below. 
     Referring now to  FIG. 1 , system  100  for forecasting a tracer can include, but is not limited to including, grid/surface processor  101  defining a 2D grid for an area of interest, 3D grid  123  based on the 2D grid and bathymetric data  121  received from, for example, but not limited to server  116  through electronic communications  117 , surfaces  135  for each grid point in 3D grid  123 , and an initial field over 3D grid  123 , velocity grid point processor  103  defining each velocity grid point  131  in 3D grid  123  by interpolating flow fields  127  to 3D grid  123  and associating each velocity grid point  131  with at least one of surfaces  135 , and flux processor  105  computing total flux  133  through each of surfaces  135  based on velocity grid points  131 . System  100  can further include residual processor  107  computing residual mass flux  145  of layers of a water column based on total flux  133  and residual mass flux  145  of adjacent of the layers, and iteratively computing residual velocity  143  of the layers based on residual mass flux  145 , flow field processor  108  calculating fluid flow through each side of a grid cell of surfaces  135  over a time step, and adjusting the flow fields by removing residual velocities  143  from velocity grid points  131 , velocity receiver  110  receiving velocity flow fields  127  if adjusted flow fields  147  have an absolute residual velocity above a continuity threshold, and tracer field processor  111  performing time-dependent advection/diffusion calculation to create tracer forecast  149  based on adjusted flow fields  147  and provide them to, for example, tracer forecast recipient application  148  through, for example, electronic communications  117 . The velocity grid point processor can access flow fields  127  from model data  125  (for example, but not limited to, hydrodynamic circulation model data), bathymetric data  121 , the initial field, and the 2D grid for the area of interest. 
     Referring now to  FIG. 2 , method  150  for forecasting a tracer include, but is not limited to including, the step of (a) defining  151  a two-dimensional grid, for example, but not limited to, in reference to a Cartesian XY domain where the X corresponds to East/West and the Y corresponds to North/South, or another geospatial coordinate system in which the spacing of each grid cell in 2-dimensions is stored as a scalar (for constant spacing) or an array (for irregular spacing). Method  150  can further include the step of (b) defining a three-dimensional grid with the two-dimensional grid as a basis, using, for example, but not limited to, bathymetry for coastal applications. Computations can occur in the upper two hundred meters of the water column, for example. For relatively shallow water, for example, less than 200 meters in depth, a bathymetry file at the resolution of the two-dimensional grid can be used. A sigma-style vertical coordinate can be designated as a fraction of the vertical depth, for example, but not limited to, 1/29 th  of the vertical depth, or two hundred meters, whichever is less. Thus each horizontal X/Y grid location can have twenty-nine vertical layers regardless of the true depth. In the present embodiment, the maximum thickness of each depth increment is ˜6.9 meters. 
     Referring now to  FIG. 3 , a fully discretized volume of ocean can be defined with grid locations corresponding to center  51  of each individual volume (i,j,k). The volume need not be rectangular, but the area of each volume face needs to be defined via dx, dy, and dz at each (i,j,k) location in the three-dimensional array. 
     Referring again to  FIG. 2 , method  150  can further include the step of (c) defining the surface areas for the three-dimensional grid by interpolating the stencil (referred to herein interchangeably as “grid cell”) (the simulated finite volume) around each grid point (i,j,k) over the bathymetry, if the bathymetry is not flat. The depth of the Y grid cell can be taken as the mean of the depths in the X direction, and vice-versa. Over varying topography, the stencils may not be perfectly rectangular. Areas of land (land boundaries) may be identified and consistent with the bathymetry file. Each point in the grid (i,j,k) can be associated with a six-sided surface area. These surface areas can be used in the velocity adjustment computations described later. Method  150  can still further include the step of (d) defining the initial field given, for example, but not limited to, as point concentrations (mass per unit volume) over the three-dimensional grid. The initial field could be derived from, for example, but not limited to, observations, an analysis field, or a combination of data and model results or objective analysis. Method  150  can even further include the step of (e) interpolating flow fields (horizontal velocities, m/s) accessed from, for example, but not limited to, an ocean circulation model, to the three-dimensional grid so each (i,j,k) location is defined by two velocity components (U—East/West, and V—North/South). Method  150  can include the step of vertically interpolating parameters if the ocean model is given in standard z-depth surfaces (e.g., 5, 10, 15, 20, . . . 200 meters). If, however, the results are retained from a sigma-style ocean model coordinate system, method  150  can include the step of repeating step (c) so the grids are consistent with one another and minimal vertical interpolation is required. If only surface velocities are available, method  150  can include the step of interpolating the surface velocities to depth by, for example, but not limited to, applying an attenuating (to a zero flow bottom velocity) function or assuming a homogenous velocity field. 
     Referring now to  FIGS. 2 and 4 , as established in step (c) of defining the surface areas for the grid, each grid cell has four vertical sides and two horizontal sides. For a horizontal i, j location  53  ( FIG. 4 ), method  150  ( FIG. 2 ) can include the step of (f) associating  153  ( FIG. 2 ) each velocity component  55  ( FIG. 4 ) with a side that is labeled 1, 2, 3, or 4 following the convention shown, thus associating each surface area with a staggered velocity component as shown in  FIG. 4 . Method  150  can further include the steps of, wherever the horizontal grid is associated with a land boundary (as established in the bathymetry file of step (b)) forcing the initial component boundary velocities to zero, and (g) calculating  155  ( FIG. 2 ), based on first order upwind differencing, the fluid flow through each side of the grid cell over the specified time step (the time step, dt, is, for example, but not limited to, 360 seconds). For example, the mass flux F through side 4 ( FIG. 4 ) per unit time is computed as either: 
     F(4)=U(i,j,k) dy(i,j,k)dz(i,j,k) T(i−1,j,k) if U(i,j,k)&gt;0.0 (a mass flux into the cell) or 
     F(4)=U(i,j,k) dy(i,j,k)dz(i,j,k) T(i,j,k) if U(i,j,k)&lt;0.0 (a mass flux out of the cell) 
     where U is the velocity (meters per second m/s), dy is the length of side 4 in meters, dz is the height of the grid cell in meters, and T(i,j,k) is the concentration of tracer materials (mass per unit volume; mass per cubic meter, m −3 ) in the cell (for U&lt;0.0, this material is exiting through side 4) or T(i−1,j,k) is the mass per unit volume in the cell adjacent (for U&gt;0.0, this material is entering through side 4). The product of the units 
     (m s −1 s*m*m*mass m −3 ) 
     leaves mass per unit time, so F(4) is the flux of mass through that side. Method  150  includes step (h) computing  157  a total flux through each of the surfaces based on the fluid flow. 
     A similar “upwind” scheme can be applied to the remaining sides: 
     F(1)=V(i,j,k) dx(i,j,k)dz(i,j,k)T(i,j−1,k), if V(i,j,k)&gt;0.0 or 
     F(1)=V(i,j,k) dx(i,j,k)dz(i,j,k) T(i,j,k), if V(i,j,k)&lt;0.0 
     F(2)=−V(i,j+1,k) dx(i,j,k)dz(i,j,k) T(i,j,k), if V(i,j+1,k)&gt;0.0 or 
     F(2)=−V(i,j+1,k) dx(i,j,k)dz(i,j,k) T(i,j+1,k), if V(i,j+1,k)&lt;0.0 
     F(3)=−U(i+1,j,k) dy(i,j,k)dz(i,j,k) T(i,j,k), if U(i+1,j,k)&gt;0.0 
     F(3)=−U(i+1,j,k) dy(i,j,k)dz(i,j,k) T(i+1,j,k), if U(i+1,j,k)&lt;0.0 
     Method  150  can further include the step of (i) computing  159  the residual mass flux for the grid cell as the sum of all four sides: 
     R(i,j,k)=F(1)+F(2)+F(3)+F(4) 
     Based on laws of continuity and conservation of mass: 
     0=F(1)+F(2)+F(3)+F(4)−R(i,j,k) 
     Referring now to  FIG. 5 , to establish continuity independent of the tracer field (T(i,j,k)), and if the grid cell area (dx*dy) is constant for the water column centered on point k, method  150  can include the step of (j) computing  161  a residual velocity (m/s) that incorporates the geometry of the grid cell based on the residual mass flux computation: 
     F*(1)=V(i,j,k) dz dy −1    
     F*(2)=−V(i,j+1,k) dz dy −1    
     F*(3)=−U(i+1,j,k) dz dx −1    
     F*(4)=U(i,j,k) dz dx −1    
     R*(i,j,k)=F*(1)+F*(2)+F*(3)+F*(4) 
     Since the fluxes through sides (1-4) are associated with horizontal velocities (U and V), the residual velocity (R*) is associated with a vertical velocity (i.e., the rate of fluid movement in the vertical direction). 
     Referring now to  FIG. 5 , column  57  of grid cells represents a column of water in the ocean over a finite horizontal space (dx, dy) and vertical depth (dz). The ocean surface can be, for example, but not limited to, mean sea level and a closed boundary, or there could be variations in sea surface height. By iteratively computing the residual velocity R*, beginning from k=1 and presuming (1) the incompressibility of water, and (2) a closed surface, then for the remaining grid cells in column  57 , the residual velocity is the sum of the four vertical fluxes and preceding residual velocity from the overlying grid cell: 
     R*(i, j, k=2, 3, 4, . . . 29)=F*(1)+F*(2)+F*(3)+F*(4)+R*(k−1) 
     For k=1 there is no overlying grid cell and so there is no R* term on the right hand side of the equation. The convention here is from top of the water column to bottom, but it may be reversed under the same assumptions: there is no flow from the below the water column into the water column. 
     For the last (bottom) grid cell, R*(k)=0 since water cannot be pushed through or drawn up from the seafloor. In other words, the entire water column obeys the continuity equation: 
     
       
         
           
             
               
                 ∂ 
                 w 
               
               
                 ∂ 
                 z 
               
             
             = 
             
               - 
               
                 ( 
                 
                   
                     
                       ∂ 
                       u 
                     
                     
                       ∂ 
                       x 
                     
                   
                   + 
                   
                     
                       ∂ 
                       v 
                     
                     
                       ∂ 
                       y 
                     
                   
                 
                 ) 
               
             
           
         
       
     
     Violation of continuity can result in error in the advection computation and negative values of the tracer field. A solution that does not impose continuity, for example, but not limited to, a reflexive or periodic bottom boundary condition, can violate the principle of mass conservation (i.e., materials can be spuriously removed or introduced into the tracer field). 
     The water column residual, R*(k=29), can then be forced to near zero values (acceptable machine values of near zero). This residual velocity is added (or subtracted) from the velocities incorporated into the mass flux calculations for the water column. There are two considerations: (1) large changes in any particular velocity component at any depth level may significantly alter the original flow fields; and (2) modification to the velocities for one water column location (i,j) can impact the adjacent water column velocities, and thus the entire grid because of the way the velocities are associated with each side of the stencil (see  FIG. 4 ). One solution is to (1) break up the residual velocity over two water column sides, twenty-nine vertical levels each (or N vertical levels), so each velocity component is modified by 1/58 th  (or 1/(2*N)) of the residual velocity, which can be a shift in the surface velocity fields, and (2) spatially iterate the modifications through the grid so the integrity of each water column continuity calculation is maintained after each adjustment. 
     Referring now to  FIG. 6 , for example, in a horizontal grid over the range i=1−20 and j=1−6, the residual velocities can be adjusted on sides 2 and 3 (from  FIG. 4 ) and the adjustment can iterate through the grid from i=1 to i=20 and from j=6 to j=1 (left to right and top to bottom). Steps in this process are as follows: the flow fields are interpolated to the grid, the residuals are calculated for each water column (i,j), and the residuals are removed by iterative adjustment to the component velocities on the specified sides of the grid stencil, which is step (k)  163  in method  150  ( FIG. 2 ). Method  150  ( FIG. 2 ) can include the step of (1) performing 165 time-dependent advection/diffusion calculation to create the tracer forecast based on the adjusted flow fields. 
     Method  150  ( FIG. 2 ) can optionally include the step of checking the adjusted flow fields for remaining residual velocities. If an absolute residual velocity is detected above a continuity threshold, for example, but not limited to, 1.0E-16 m/s, then method  150  can optionally include the step of receiving a new set of velocity components. Method  150  can further optionally include the step calculating the vertical velocities (w, m/s) from the adjusted horizontal velocity components. The fully three-dimensional arrays of adjusted and continuity-respecting flow fields can be used for advection calculations. 
     Method  150  can still further include the step of subjecting the tracer field to the three-dimensional upwind differencing advection calculation. Additional reaction calculations ranging from first order decay rate constants to biogeochemical or ecosystem models can be inserted. Optionally, the numerical advection scheme used in this step may be changed without impacting the continuity adjustment scheme presented in previous steps. Method  150  can also optionally include the steps of writing the results to output file(s) and repeating the process for a new set of flow fields and the updated tracer field. 
     At least three methods can be used for dealing with land boundaries: (1) allow the adjusted exchanges through the land boundary, (2) designate grid cells directly adjacent to land cells as boundary points, and (3) modify the flux adjustment scheme so the adjusted sides are never coincident with a land boundary. With respect to (1), this method is not strictly mass conservative, but the mass flux calculation departures from 0 at the boundary are generally small. With respect to (2), this method is accomplished by labeling the land boundary points and not updating them in the advection routine after the flux computations have been performed. With respect to (3), this method is applicable for grid geometries such as, for example, but not limited to, straight coastlines. 
     With respect to ocean boundaries, in the present embodiment, the outer most points along the array perimeter are treated as boundary values—materials may flux out into these points or flux back into the domain, and the tracer values can be held constant, for example. Other schemes can be used. 
     With respect to diffusion, the adjusted flow fields can be used to derive a first-order numerical advection scheme that is inherently diffusive. Due to this implicit numerical diffusion, additional diffusion computations may not be required to be performed. Higher order and less diffusive numerical schemes, perhaps including turbulence closure schemes and diffusive calculations, may be used to replace the present scheme outlined above. 
     With respect to upwind differencing higher order advection schemes can be used in the system of the present embodiment. In addition, other iterative variations of the flow field adjustments are possible including, for example, adjusting sides 1 and 2 while iterating right to left and bottom to top, and adjusting only one side of the water column. The order of the adjustment and the sequence of the iteration can be modified. 
     Embodiments of the present teachings are directed to computer systems for accomplishing the methods discussed in the description herein, and to computer readable media containing programs for accomplishing these methods. The raw data and results can be stored for future retrieval and processing, printed, displayed, transferred to another computer, and/or transferred elsewhere. Communications links can be wired or wireless, for example, using cellular communication systems, military communications systems, and satellite communications systems. In an exemplary embodiment, the software for the system can be written in any programming language. The system can operate on a computer having a variable number of CPUs. Other alternative computer platforms can be used. The operating system can be, for example, but is not limited to, WINDOWS® or LINUX®. 
     The present embodiment is also directed to software for accomplishing the methods discussed herein, and computer readable media storing software for accomplishing these methods. The various modules described herein can be accomplished on the same CPU, or can be accomplished on different computers. In compliance with the statute, the present embodiment has been described in language more or less specific as to structural and methodical features. It is to be understood, however, that the present embodiment is not limited to the specific features shown and described. 
     Referring again primarily to  FIG. 2 , method  150  can be, in whole or in part, implemented electronically. Signals representing actions taken by elements of system  100  ( FIG. 1 ) and other disclosed embodiments can travel over at least one live communications network  117  ( FIG. 1 ). Control and data information can be electronically executed and stored on at least one computer-readable medium. The system can be implemented to execute on at least one computer node  118  ( FIG. 1 ) in at least one live communications network  117  ( FIG. 1 ). Common forms of at least one computer-readable medium can include, for example, but are not be limited to, a floppy disk, a flexible disk, a hard disk, magnetic tape, or any other magnetic medium, a compact disk read only memory or any other optical medium, punched cards, paper tape, or any other physical medium with patterns of holes, a random access memory, a programmable read only memory, and erasable programmable read only memory (EPROM), a Flash EPROM, or any other memory chip or cartridge, or any other medium from which a computer can read. 
     Although the present teachings have been described with respect to various embodiments, it should be realized these teachings are also capable of a wide variety of further and other embodiments.