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 variables 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 used to sample the donor grid so 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)