Ethan,
Oops. The URL changed. This is the correct one now:
Browser:
http://testbedapps-dev.sura.org/thredds/dodsC/inundation/FVCOM/ike/2Dvrwoww.html
OPeNDAP URL:
http://testbedapps-dev.sura.org/thredds/dodsC/inundation/FVCOM/ike/2Dvrwoww
-Rich
On Tue, Feb 7, 2012 at 6:07 PM, Rich Signell <rsignell@xxxxxxxx> wrote:
> package gov.noaa.eds.threddsutilities.util;
>
> import static org.junit.Assert.assertTrue;
>
> import java.util.List;
>
> import org.junit.Test;
>
> import ucar.ma2.Array;
> import ucar.nc2.Variable;
> import ucar.nc2.constants.AxisType;
> import ucar.nc2.dataset.CoordinateAxis;
> import ucar.nc2.dataset.CoordinateAxis1D;
> import ucar.nc2.dataset.NetcdfDataset;
>
> public class ThreddsExtentUtilTest {
>
> @Test
> public void getExtentTest() {
> // String urlStr =
> //
> "http://oos.soest.hawaii.edu/thredds/dodsC/pacioos/ncom/global/NCOM_Global_Ocean_Model_best.ncd";
> // String urlStr =
> //
> "http://localhost:8080/thredds/dodsC/test/ncom_glb_sfc_2011050100.nc";
> // String urlStr =
> //
> "dods://dods.ndbc.noaa.gov/thredds/dodsC/data/oceansites/DATA/MBARI/OS_MBARI-M0_20100614_R_M.nc";
> // String urlStr =
> //
> "dods://dods.ndbc.noaa.gov/thredds/dodsC/data/oceansites/DATA/ANTARES/OS_ANTARES-1_200509_D_CTD.nc";
> String urlStr =
> "dods://testbedapps.sura.org/threddsdev/dodsC/inundation/FVCOM/ike/2Dvrwoww";
> try {
> NetcdfDataset ncd = NetcdfDataset.openDataset(urlStr);
> List<CoordinateAxis> coordAxes =
> ncd.getCoordinateAxes();
> try {
> double maxLon = -9999.999;
> double minLon = 9999.999;
> double maxLat = -9999.999;
> double minLat = 9999.999;
> for (CoordinateAxis coordAxis : coordAxes) {
>
> if (coordAxis.getAxisType() ==
> AxisType.Lat) {
> minLat =
> coordAxis.getMinValue();
> maxLat =
> coordAxis.getMaxValue();
> }
>
> if (coordAxis.getAxisType() ==
> AxisType.Lon) {
> minLon =
> coordAxis.getMinValue();
> maxLon =
> coordAxis.getMaxValue();
>
> }
> }
> System.out
> .println("Using
> coordAxis.getMinValue() method -----");
> System.out.println("minLon=" + minLon);
> System.out.println("maxLon=" + maxLon);
>
> System.out.println("minLat=" + minLat);
> System.out.println("maxLat=" + maxLat);
> assertTrue(maxLon > -180.0);
> } catch (Exception e) {
> System.out
> .println("Warning CF Axis
> problem: " + e.getMessage());
> }
>
> } catch (Exception e) {
> System.err.println(e);
> }
> }
>
> @Test
> public void getExtentUsing1DCoordTest() {
> // String urlStr =
> //
> "dods://dods.ndbc.noaa.gov/thredds/dodsC/data/oceansites/DATA/ANTARES/OS_ANTARES-1_200509_D_CTD.nc";
> // String varName = "LONGITUDE";
> String urlStr =
> "dods://testbedapps.sura.org/threddsdev/dodsC/inundation/FVCOM/ike/2Dvrwoww";
> String lonName = "lon";
> String latName = "lat";
>
> try {
> NetcdfDataset ncd = NetcdfDataset.openDataset(urlStr);
> CoordinateAxis1D coordLon = (CoordinateAxis1D) ncd
> .findVariable(lonName);
> double maxLon = -9999.999;
> double minLon = 9999.999;
>
> double[] vals = coordLon.getCoordValues();
> for (int i = 0; i < vals.length; i++) {
>
> double lon = vals[i];
> // System.out.println("lon=" + lon);
>
> if (lon > maxLon) {
> maxLon = lon;
> }
> if (lon < minLon) {
> minLon = lon;
> }
> }
>
> CoordinateAxis1D coordLat = (CoordinateAxis1D) ncd
> .findVariable(latName);
> double maxLat = -9999.999;
> double minLat = 9999.999;
>
> vals = coordLat.getCoordValues();
> for (int i = 0; i < vals.length; i++) {
>
> double lat = vals[i];
> // System.out.println("lat=" + lat);
>
> if (lat > maxLat) {
> maxLat = lat;
> }
> if (lat < minLat) {
> minLat = lat;
> }
> }
> System.out.println("");
> System.out.println("Using CoordinateAxis1D method
> -----");
> System.out.println("minLon=" + minLon);
> System.out.println("maxLon=" + maxLon);
>
> System.out.println("minLat=" + minLat);
> System.out.println("maxLat=" + maxLat);
> assertTrue(maxLon > -180.0);
> } catch (Exception e) {
> System.err.println(e);
> }
> }
>
> @Test
> public void getExtentUsingReadTest() {
> // String urlStr =
> //
> "dods://dods.ndbc.noaa.gov/thredds/dodsC/data/oceansites/DATA/ANTARES/OS_ANTARES-1_200509_D_CTD.nc";
> // String varName = "LONGITUDE";
> String urlStr =
> "dods://testbedapps.sura.org/threddsdev/dodsC/inundation/FVCOM/ike/2Dvrwoww";
> String lonName = "lon";
> String latName = "lat";
>
> try {
> NetcdfDataset ncd = NetcdfDataset.openDataset(urlStr);
> Variable varLon = ncd.findVariable(lonName);
> double maxLon = -9999.999;
> double minLon = 9999.999;
>
> Array vals = varLon.read();
> for (int i = 0; i < vals.getSize(); i++) {
>
> double lon = vals.getDouble(i);
> // System.out.println("lon=" + lon);
>
> if (lon > maxLon) {
> maxLon = lon;
> }
> if (lon < minLon) {
> minLon = lon;
> }
> }
>
> Variable varLat = ncd.findVariable(latName);
> double maxLat = -9999.999;
> double minLat = 9999.999;
>
> vals = varLat.read();
> for (int i = 0; i < vals.getSize(); i++) {
>
> double lat = vals.getDouble(i);
> // System.out.println("lat=" + lat);
>
> if (lat > maxLat) {
> maxLat = lat;
> }
> if (lat < minLat) {
> minLat = lat;
> }
> }
> System.out.println("");
> System.out.println("Using read method -----");
> System.out.println("minLon=" + minLon);
> System.out.println("maxLon=" + maxLon);
>
> System.out.println("minLat=" + minLat);
> System.out.println("maxLat=" + maxLat);
> assertTrue(maxLon > -180.0);
> } catch (Exception e) {
> System.err.println(e);
> }
> }
>
> }
>
>
> On Tue, Feb 7, 2012 at 5:21 PM, Ethan Davis <edavis@xxxxxxxxxxxxxxxx> wrote:
>> Hi Dave,
>>
>> What do you mean by "unstructured grid dataset"? Can you send me a
>> sample dataset?
>>
>> Thanks,
>>
>> Ethan
>>
>> On 1/23/2012 10:11 AM, Dave Neufeld wrote:
>>> Hello,
>>>
>>> In the attached test case, inconsistent coordinate results are returned
>>> depending on which methods of the NetCDF Java API are called (tested
>>> against v4.2.26).
>>>
>>> Sample output:
>>>
>>> Using coordAxis.getMinValue() method -----
>>> minLon=-86.76239013671875
>>> maxLon=268.2677307128906
>>> minLat=21.105741500854492
>>> maxLat=31.007230758666992
>>>
>>> Using CoordinateAxis1D method -----
>>> minLon=-86.76998901367188
>>> maxLon=280.256103515625
>>> minLat=18.15138816833496
>>> maxLat=31.010635375976562
>>>
>>> Using read method -----
>>> minLon=-97.85687255859375
>>> maxLon=-79.7386474609375
>>> minLat=18.15138816833496
>>> maxLat=31.010635375976562
>>>
>>> -Dave
>>>
>>>
>>> _______________________________________________
>>> netcdf-java mailing list
>>> netcdf-java@xxxxxxxxxxxxxxxx
>>> For list information or to unsubscribe, visit:
>>> http://www.unidata.ucar.edu/mailing_lists/
>>
>> --
>> Ethan Davis UCAR Unidata Program
>> edavis@xxxxxxxxxxxxxxxx http://www.unidata.ucar.edu
>>
>> _______________________________________________
>> netcdf-java mailing list
>> netcdf-java@xxxxxxxxxxxxxxxx
>> For list information or to unsubscribe, visit:
>> http://www.unidata.ucar.edu/mailing_lists/
>
>
>
> --
> Dr. Richard P. Signell (508) 457-2229
> USGS, 384 Woods Hole Rd.
> Woods Hole, MA 02543-1598
--
Dr. Richard P. Signell (508) 457-2229
USGS, 384 Woods Hole Rd.
Woods Hole, MA 02543-1598