Hi all, We've found the problem - thanks, John, for the report. The dataset can be found at http://oos.soest.hawaii.edu/thredds/dodsC/hioos/roms_assim/hiig/ROMS_Hawaii_Regional_Ocean_Model_Assimilation_best.ncd and it has vectors on staggered grids, (i.e. where the two vector components are on different curvilinear grids - one at grid-cell centers and the other from grid-cell corners, or something along those lines). The fix is in a LAS Ferret script and it will be included with the next LAS release. If anyone wants it now, the corrected script is attached. To use it, put it in your las/JavaSource/resources/ferret/scripts/ directory, and then redeploy your LAS so that the script is copied to a couple of places where it needs to go. Ansley On 6/23/2011 2:32 PM, Ansley Manke wrote:Hi John, |
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! LAS_check_staggered.jnl ! ! Author: ansley ! Date: 2010/06 ! ! Vector components may be on staggered grids. Detect this and set the ! second component to be regridded to the grid of the first. ! !IF ($native_curvilinear_xy"0") THEN EXIT/SCRIPT DEFINE SYMBOL xax_vec_1 = `($ferret_plot_base_var_0),RETURN=xaxis` DEFINE SYMBOL yax_vec_1 = `($ferret_plot_base_var_0),RETURN=yaxis` DEFINE SYMBOL xax_vec_2 = `($ferret_plot_base_var_1),RETURN=xaxis` DEFINE SYMBOL yax_vec_2 = `($ferret_plot_base_var_1),RETURN=yaxis` IF `STRCMP("($xax_vec_1)", "($xax_vec_2)") NE 0` THEN DEFINE SYMBOL ferret_staggered_grid = 1 IF `STRCMP("($yax_vec_1)", "($yax_vec_2)") NE 0` THEN DEFINE SYMBOL ferret_staggered_grid = 1 ! Regrid the second component to the grid of the first. If in curvilinear ! coordinates (will staggered grids always be in curvi??) then define ! the regridding on the base var, w/o curvi coordinate variables. ! ! Regrid to the grid of the curvilinear coordinate variables. IF `($ferret_staggered_grid"0|default>1|*>1") GT 0` THEN IF ($do_curvi_xy"0|0|1|*>1") THEN LET vec1 = ($ferret_plot_var_0_noregion) LET vec1_regrid = vec1[gxy=xcoord] ! whichever curvi coords got sent (!) DEFINE SYMBOL ferret_plot_base_var_0 = vec1_regrid[($region_full)] LET vec2 = ($ferret_plot_var_1_noregion) LET vec2_regrid = vec2[gxy=xcoord] ! whichever curvi coords got sent (!) DEFINE SYMBOL ferret_plot_base_var_1 = vec2_regrid[($region_full)] ELSE LET vec2 = ($ferret_vector_2) DEFINE SYMBOL ferret_vector_2 = vec2[gxy=($ferret_vector_1)] ENDIF DEFINE SYMBOL n_left_labels = `($n_left_labels"0")+1` DEFINE SYMBOL upper_left_($n_left_labels) = "Regridded from Staggered Grid" DEFINE SYMBOL note_num = `($note_num"0") + 1` DEFINE SYMBOL note_($note_num)_lab = ($upper_left_($n_left_labels)) ENDIF