Lateral Boundary Conditions Scripts

From WikiROMS
Jump to navigationJump to search
Matlab: Lateral Boundary Conditions Scripts

This page describes several Matlab scripts to process ROMS lateral boundary conditions data.



obc_roms2roms.m
Interpolates requested 2D or 3D lateral boundary conditions variables between two ROMS application grids. The receiver grid must be inside of the donor grid. This function is intended for down-scaling or nesting applications. The horizontal/vertical coordinates for the donor and the and receiver grids are specified with array structures D and R, which are built elsewhere using script get_roms_grid.m for efficiency and functionality.
B = obc_roms2roms  (ncname, D, R, VarList, Tindex, boundary, method, offset, RemoveNaN)
On Input:
ncname: Donor grid NetCDF file name containing variables to process (string)
D: Donor grid structure containing all horizontal and vertical variables (struct array)
R: Receiver grid structure containing all horizontal and vertical variables (struct array)
VarList: List of variable names to process (cell array)
Tindex: Time record index to process (scalar)
boundary: Lateral boundary condition switches (logicals) of the grid edges to process (struct array):
boundary.west Western edge
boundary.east Eastern edge
boundary.south Southern edge
boundary.north Northern edge
method: Interpolation method in TriScatteredInterp (string):
'natural' natural neighbor interpolation
'linear' linear interpolation (default)
'nearest' nearest-neighbor interpolation
offset: Number of extra points to use when sampling the donor grid so it is large enough to contain the receiver grid (default 5)
RemoveNaN: Switch to remove NaN values from interpolated variable with a second interpolation step using the nearest-neighbor method (default false)
On Output:
B: Interpolated requested 2D or 3D lateral boundary variables (struct array)