Title: IPEZHAT
1- IPEZ-HAT
- (High Accuracy Tides or is it Harmonically
Analyzed Tides) - Motivation, progress report
- A more general IOM issue interface between a
multi-purpose modeling system and the IOM
- Definition of model and adjoint states
- Flexibility in defining boundary conditions
2Surface expression of internal tides Elevation
of a few cm can be seen in harmonically analyzed
TOPEX/POSEIDON data
Hawaiian Ridge (Ray Mitchum, 1997)
75-150 km wavelength modulations in M2 amplitude
and phase are consistent with phase-locked
internal tides propagating away from many
mid-ocean ridges
But energy flux away from ridge inferred from
altimetry is about half that seen in model studies
3- Possible explanations
- Low-mode energy flux inferred from altimetry
corresponds to phase-locked component only there
is significant phase/amplitude modulation due to
propagation of internal waves through variable
background mesoscale current and density fields - Poor sampling of altimetry have missed some of
the areas of most intense flux - There really is more dissipation near the ridge
than the models predict
4- PEZ-HAT Primitive-Equation Z-coordinate --
Harmonically Analyzed Tides - Adapt Bennett and Chua's PEZ (Primitive-Equation
Z-coordinate) model for application to regional
internal tide modeling and data-assimilation,
particularly in the open ocean, using altimetry
data - Use this to study energetics, temporal
intermittency and dissipation of low-mode
internal tides around major generations sites
such as Hawaii - Preserve the previous functionality in the
time-domain while using code as kernel for a
frequency-domain solver.
5- Some Recent Developments
- Most PEZ compile-time arguments are now set at
run-time. - Program execution is driven with an XML
document, which includes - a) Grid/Geometry information
- b) Solver parameters
- c) State variable definition
- Beginning to interface with IOM I/O via netCDF
6- Modifications to solver kernel
- Variety of averaging kernels for split-explicit
time stepping (Shchepetkin and McWilliams) - "Ghost-cell immersed boundary" method for rigid
- boundaries (Tseng and Ferzinger)
- Radiation open-boundary conditions modified for
improved computational efficiency
7- Experiments
- Assess model accuracy (How well does it solve
the equations?) - -- an ongoing concern --
- Assess model validity (How well does it compare
with data?) - -- Pretty well in some places
- not so well in others.
8Modeled and observed harmonic constants for T/P
altimetry (high-pass filtered along track)
9Propagation of internal tide through realistic
spatially varying density and mesoscale current
fields Use tangent linear of PEZ with
background currents defined from other ocean model
SODApop (J. Carton optimal interpolation,
climatology)
HYCOM from NRL (forward modeling only)
10Mode 1 baroclinic energy flux PEZ-HAT forward
model, horizontally uniform stratification
11Experience developing PEZ-HAT from Classic PEZ
raise some more general issues
- Useful community modeling codes have to be
flexible, and adaptable Grids, BCs, Forcing,
Outputs - ROMS, POM, etc., have been developed with this
flexibility in mind - Interfacing a model to the IOM takes some effort
How do we develop the interface of a modeling
system to the IOM to maximize generality,
flexibility and code reusability?
12- Key Points
- (1) Clear definition of the state or TRAJ as
seen by the IOM is required
- This is generally distinct from the internal
state definition of the modeling code - State definition is central to defining the
interface between the IOM and the modeling system - also need to be clear about the adjoint state
(2) Definition of the state (and adjoint state)
are closely tide to inputs and outputs for TL and
Adjoint codes
13- Key Points (cont)
- (3) Allowing for flexibility in choice of BCs is
important, challenging
- If BC of the forward problem are changed, how
do BC change for TL, Adjoint? - Can modeling systems be devised to
facilitate/simplify needed coding? E.g., can we
isolate code in FWD, TL, ADJ that is relevant to
BC choice? - As modules for multiple applications develop for
a modeling and assimilation system, how do users
ensure consistency (e.g., of TL and ADJT BC
modules)?
14Example Definition of the model state (TRAJ)
for IPEZ-HAT Initial approach/assumption Tides
are harmonic in time (at least over some time
window). Thus, the model state consists of
complex harmonic constants (for constituents k
1, Nc) for currents, elevation and tracers (or
density)
The harmonic constants are then related to the
time dependent state via
15Internal to the time-stepping model, the state is
essentially not
(actually the internal state generally involves a
complicated discrete representation!)
From the point of view of interaction with the
IOM, the TRAJ is the frequency domain
representation
16Backward Problem
17Classic PEZ tropical ocean application of
Bennett and Chua Impulsive forcing once/day .
Sample solution once/day
Forward Problem
Backward Problem
18A different scheme (standard for ROMS?) Input
forcing/BC once every n time steps, linearly
interpolate to BT/C time steps Sample results
every n time steps
Forward Problem
Backward Problem
19Adjoint of Linear Interpolation
Filter with triangular averaging window,
subsample
20Implementation in IPEZ-HAT
IPEZ-HAT for internal tides
Classic IPEZ for tropical ocean
By switching routines, different modeling
problems can be readily accomodated
21Related Issue a clear and well documented
definition of the boundaries of the modeling
black box is required Inputs and outputs must
be clearly defined.
Example modeling in a periodic domain One way to
implement dummy nodes at domain edges
Does the input state for a time stepping routine
include the dummy nodes, or just the live
interior nodes? This has a huge impact on what
the adjoint of the time stepping routine is!
22Another modularity feature being implemented in
IPEZ-HAT flexibility in specification of
boundary conditions
- BCs implemented through separate routines
- Structure of PEZ time stepping code makes
implementation of adjoint BCs fairly
straightforward (for many cases)
FWD explicit in time update of interior nodes
then update boundary nodes w/ new interior
23Adjoint explicit in (backwards) time update of
boundaries
Then update interior nodes
Two parts of the code are specific to choice of
BC
By keeping these parts of the update stencil as
separate modules, coding for adjoints of
different BCs is simplified