SECOORA Notebook 1

Fetch Sea Surface Salinity time-series data

This notebook fetches weekly time-series of all the SECOORA observations and models available in the NGDC and SECOORA THREDDS catalogs.


In [1]:
import time

start_time = time.time()

Save configuration


In [2]:
import os
try:
    import cPickle as pickle
except ImportError:
    import pickle

import iris
import cf_units
from datetime import datetime
from utilities import CF_names, fetch_range, start_log

# 1-week start of data.
kw = dict(start=datetime(2014, 7, 1, 12), days=6)
start, stop = fetch_range(**kw)

# SECOORA region (NC, SC GA, FL).
bbox = [-87.40, 24.25, -74.70, 36.70]

# CF-names.
sos_name = 'salinity'
name_list = CF_names[sos_name]

# Units.
units = cf_units.Unit('g/kg')

# Logging.
run_name = '{:%Y-%m-%d}'.format(stop)
log = start_log(start, stop, bbox)

# SECOORA models.
secoora_models = ['SABGOM', 'USEAST',
                  'USF_ROMS', 'USF_SWAN', 'USF_FVCOM']

# Config.
fname = os.path.join(run_name, 'config.pkl')
config = dict(start=start,
              stop=stop,
              bbox=bbox,
              name_list=name_list,
              units=units,
              run_name=run_name,
              secoora_models=secoora_models)

with open(fname,'wb') as f:
    pickle.dump(config, f)

In [3]:
from owslib import fes
from utilities import fes_date_filter

kw = dict(wildCard='*',
          escapeChar='\\',
          singleChar='?',
          propertyname='apiso:AnyText')

or_filt = fes.Or([fes.PropertyIsLike(literal=('*%s*' % val), **kw)
                  for val in name_list])

# Exclude ROMS Averages and History files.
not_filt = fes.Not([fes.PropertyIsLike(literal='*Averages*', **kw)])

begin, end = fes_date_filter(start, stop)
filter_list = [fes.And([fes.BBox(bbox), begin, end, or_filt, not_filt])]

In [4]:
from owslib.csw import CatalogueServiceWeb

endpoint = 'http://www.ngdc.noaa.gov/geoportal/csw'
csw = CatalogueServiceWeb(endpoint, timeout=60)
csw.getrecords2(constraints=filter_list, maxrecords=1000, esn='full')

fmt = '{:*^64}'.format
log.info(fmt(' Catalog information '))
log.info("URL: {}".format(endpoint))
log.info("CSW version: {}".format(csw.version))
log.info("Number of datasets available: {}".format(len(csw.records.keys())))

In [5]:
from utilities import service_urls

dap_urls = service_urls(csw.records, service='odp:url')
sos_urls = service_urls(csw.records, service='sos:url')

log.info(fmt(' CSW '))
for rec, item in csw.records.items():
    log.info('{}'.format(item.title))

log.info(fmt(' SOS '))
for url in sos_urls:
    log.info('{}'.format(url))

log.info(fmt(' DAP '))
for url in dap_urls:
    log.info('{}.html'.format(url))

In [6]:
from utilities import is_station

# Filter out some observations (stations) endpoints from the models list.
non_stations = []
for url in dap_urls:
    try:
        if not is_station(url):
            non_stations.append(url)
    except RuntimeError as e:
        log.warn("Could not access URL {}. {!r}".format(url, e))

dap_urls = non_stations

log.info(fmt(' Filtered DAP '))
for url in dap_urls:
    log.info('{}.html'.format(url))

Add SECOORA models and observations


In [7]:
from utilities import titles, fix_url

for secoora_model in secoora_models:
    if titles[secoora_model] not in dap_urls:
        log.warning('{} not in the NGDC csw'.format(secoora_model))
        dap_urls.append(titles[secoora_model])

# NOTE: USEAST is not archived at the moment!
# https://github.com/ioos/secoora/issues/173
dap_urls = [fix_url(start, url) if
            'SABGOM' in url else url for url in dap_urls]

In [8]:
import warnings
from iris.exceptions import CoordinateNotFoundError, ConstraintMismatchError

from utilities import (TimeoutException, secoora_buoys,
                       quick_load_cubes, proc_cube)

urls = list(secoora_buoys())
buoys = dict()
if not urls:
    raise ValueError("Did not find any SECOORA buoys!")

for url in urls:
    try:
        with warnings.catch_warnings():
            warnings.simplefilter("ignore")  # Suppress iris warnings.
            kw = dict(bbox=bbox, time=(start, stop), units=units)
            cubes = quick_load_cubes(url, name_list)
            cubes = [proc_cube(cube, **kw) for cube in cubes]
        buoy = url.split('/')[-1].split('.nc')[0]
        if len(cubes) == 1:
            buoys.update({buoy: cubes[0]})
        else:
            #[buoys.update({'{}_{}'.format(buoy, k): cube}) for
            # k, cube in list(enumerate(cubes))]
            # FIXME: For now I am choosing the first sensor.
            buoys.update({buoy: cubes[0]})
    except (RuntimeError, ValueError, TimeoutException,
            ConstraintMismatchError, CoordinateNotFoundError) as e:
        log.warning('Cannot get cube for: {}\n{}'.format(url, e))

In [9]:
from pyoos.collectors.coops.coops_sos import CoopsSos

collector = CoopsSos()

collector.end_time = stop
collector.start_time = start
collector.variables = [sos_name]

ofrs = collector.server.offerings
title = collector.server.identification.title
log.info(fmt(' Collector offerings '))
log.info('{}: {} offerings'.format(title, len(ofrs)))

In [10]:
from pandas import read_csv
from utilities import sos_request

params = dict(observedProperty=sos_name,
              eventTime=start.strftime('%Y-%m-%dT%H:%M:%SZ'),
              featureOfInterest='BBOX:{0},{1},{2},{3}'.format(*bbox),
              offering='urn:ioos:network:NOAA.NOS.CO-OPS:MetActive')

uri = 'http://opendap.co-ops.nos.noaa.gov/ioos-dif-sos/SOS'
url = sos_request(uri, **params)
observations = read_csv(url)

log.info('SOS URL request: {}'.format(url))

Clean the DataFrame


In [11]:
from utilities import get_coops_metadata, to_html

columns = {'sensor_id': 'sensor',
           'station_id': 'station',
           'latitude (degree)': 'lat',
           'longitude (degree)': 'lon',
           'sea_water_salinity (psu)': sos_name}

observations.rename(columns=columns, inplace=True)

observations['sensor'] = [s.split(':')[-1] for s in observations['sensor']]
observations['station'] = [s.split(':')[-1] for s in observations['station']]
observations['name'] = [get_coops_metadata(s)[0] for s in observations['station']]

observations.set_index('name', inplace=True)
to_html(observations.head())


Out[11]:
station sensor lat lon date_time salinity
name
Dames Point, FL 8720219 SALINITY 30.3867 -81.5583 2014-07-01T12:00:00Z 23.79
Jacksonville University, FL 8720245 SALINITY 30.3541 -81.6118 2014-07-01T12:00:00Z 21.81
I-295 Bridge, St Johns River, FL 8720357 SALINITY 30.1917 -81.6917 2014-07-01T12:00:00Z 4.61
Red Bay Point, St Johns River, FL 8720503 SALINITY 29.9783 -81.6283 2014-07-01T12:00:00Z 0.56
Racy Point, St Johns River, FL 8720625 SALINITY 29.8017 -81.5483 2014-07-01T12:00:00Z 0.44

In [12]:
from pandas import DataFrame
from utilities import secoora2df

if buoys:
    secoora_observations = secoora2df(buoys, sos_name)
    to_html(secoora_observations.head())
else:
    secoora_observations = DataFrame()

In [13]:
from pandas import concat

all_obs = concat([observations, secoora_observations], axis=0)
to_html(concat([all_obs.head(2), all_obs.tail(2)]))


Out[13]:
station sensor lat lon date_time salinity
name
Dames Point, FL 8720219 SALINITY 30.386700 -81.558300 2014-07-01T12:00:00Z 23.790000
Jacksonville University, FL 8720245 SALINITY 30.354100 -81.611800 2014-07-01T12:00:00Z 21.810000
Binney Dock station fldep.binneydock. NA 27.467546 -80.300850 2014-00-01T12:00:00Z 0.000000
Apache Pier, Myrtle Beach, SC lbhmc.apachepier.pier NA 33.761520 -78.779877 2014-00-01T12:00:00Z -45.022461

Uniform 6-min time base for model/data comparison


In [14]:
from owslib.ows import ExceptionReport
from utilities import pyoos2df, save_timeseries

iris.FUTURE.netcdf_promote = True

log.info(fmt(' Observations '))
outfile = '{:%Y-%m-%d}-OBS_DATA.nc'.format(stop)
outfile = os.path.join(run_name, outfile)

log.info(fmt(' Downloading to file {} '.format(outfile)))
data, bad_station = dict(), []
col = 'sea_water_salinity (psu)'
for station in observations.index:
    station_code = observations['station'][station]
    try:
        df = pyoos2df(collector, station_code, df_name=station)
        data.update({station_code: df[col]})
    except ExceptionReport as e:
        bad_station.append(station_code)
        log.warning("[{}] {}:\n{}".format(station_code, station, e))
obs_data = DataFrame.from_dict(data)

Split good and bad stations


In [15]:
pattern = '|'.join(bad_station)
if pattern:
    all_obs['bad_station'] = all_obs.station.str.contains(pattern)
    observations = observations[~observations.station.str.contains(pattern)]
else:
    all_obs['bad_station'] = ~all_obs.station.str.contains(pattern)

# Save updated `all_obs.csv`.
fname = '{}-all_obs.csv'.format(run_name)
fname = os.path.join(run_name, fname)
all_obs.to_csv(fname)

log.info(fmt(' Downloading to file {} '.format(outfile)))
comment = "Several stations from http://opendap.co-ops.nos.noaa.gov"
kw = dict(longitude=observations.lon,
          latitude=observations.lat,
          station_attr=dict(cf_role="timeseries_id"),
          cube_attr=dict(featureType='timeSeries',
                         Conventions='CF-1.6',
                         standard_name_vocabulary='CF-1.6',
                         cdm_data_type="Station",
                         comment=comment,
                         url=url))

save_timeseries(obs_data, outfile=outfile,
                standard_name=sos_name, **kw)

SECOORA Observations


In [16]:
import numpy as np
from pandas import DataFrame


def extract_series(cube, station):
    time = cube.coord(axis='T')
    date_time = time.units.num2date(cube.coord(axis='T').points)
    data = cube.data
    return DataFrame(data, columns=[station], index=date_time)


if buoys:
    secoora_obs_data = []
    for station, cube in list(buoys.items()):
        df = extract_series(cube, station)
        secoora_obs_data.append(df)
    # Some series have duplicated times!
    kw = dict(subset='index', take_last=True)
    secoora_obs_data = [obs.reset_index().drop_duplicates(**kw).set_index('index') for
                        obs in secoora_obs_data]
    secoora_obs_data = concat(secoora_obs_data, axis=1)
else:
    secoora_obs_data = DataFrame()

These buoys need some QA/QC before saving


In [17]:
from utilities.qaqc import filter_spikes, threshold_series

if buoys:
    secoora_obs_data.apply(threshold_series, args=(0, 40))
    secoora_obs_data.apply(filter_spikes)

    # Interpolate to the same index as SOS.
    index = obs_data.index
    kw = dict(method='time', limit=30)
    secoora_obs_data = secoora_obs_data.reindex(index).interpolate(**kw).ix[index]

    log.info(fmt(' SECOORA Observations '))
    fname = '{:%Y-%m-%d}-SECOORA_OBS_DATA.nc'.format(stop)
    fname = os.path.join(run_name, fname)

    log.info(fmt(' Downloading to file {} '.format(fname)))

    url = "http://129.252.139.124/thredds/catalog_platforms.html"
    comment = "Several stations {}".format(url)
    kw = dict(longitude=secoora_observations.lon,
              latitude=secoora_observations.lat,
              station_attr=dict(cf_role="timeseries_id"),
              cube_attr=dict(featureType='timeSeries',
                             Conventions='CF-1.6',
                             standard_name_vocabulary='CF-1.6',
                             cdm_data_type="Station",
                             comment=comment,
                             url=url))

    save_timeseries(secoora_obs_data, outfile=fname,
                    standard_name=sos_name, **kw)

    to_html(secoora_obs_data.head())

Loop discovered models and save the nearest time-series


In [18]:
from iris.exceptions import (CoordinateNotFoundError, ConstraintMismatchError,
                             MergeError)

from utilities import time_limit, is_model, get_model_name, get_surface


log.info(fmt(' Models '))
cubes = dict()

with warnings.catch_warnings():
    warnings.simplefilter("ignore")  # Suppress iris warnings.
    for k, url in enumerate(dap_urls):
        log.info('\n[Reading url {}/{}]: {}'.format(k+1, len(dap_urls), url))
        try:
            with time_limit(60*5):
                cube = quick_load_cubes(url, name_list, callback=None, strict=True)
                if is_model(cube):
                    cube = proc_cube(cube, bbox=bbox, time=(start, stop), units=units)
                else:
                    log.warning("[Not model data]: {}".format(url))
                    continue
                cube = get_surface(cube)
                mod_name, model_full_name = get_model_name(cube, url)
                cubes.update({mod_name: cube})
        except (TimeoutException, RuntimeError, ValueError,
                ConstraintMismatchError, CoordinateNotFoundError,
                IndexError) as e:
            log.warning('Cannot get cube for: {}\n{}'.format(url, e))

In [19]:
from iris.pandas import as_series

from utilities import (make_tree, get_nearest_water,
                       add_station, ensure_timeseries, remove_ssh)

for mod_name, cube in cubes.items():
    fname = '{:%Y-%m-%d}-{}.nc'.format(stop, mod_name)
    fname = os.path.join(run_name, fname)
    log.info(fmt(' Downloading to file {} '.format(fname)))
    try:
        tree, lon, lat = make_tree(cube)
    except CoordinateNotFoundError as e:
        log.warning('Cannot make KDTree for: {}'.format(mod_name))
        continue
    # Get model series at observed locations.
    raw_series = dict()
    for station, obs in all_obs.iterrows():
        try:
            kw = dict(k=10, max_dist=0.04, min_var=0.01)
            args = cube, tree, obs.lon, obs.lat
            series, dist, idx = get_nearest_water(*args, **kw)
        except ValueError as e:
            status = "No Data"
            log.info('[{}] {}'.format(status, obs.name))
            continue
        except RuntimeError as e:
            status = "Failed"
            log.info('[{}] {}. ({})'.format(status, obs.name, e.message))
            continue
        if not series:
            status = "Land   "
        else:
            raw_series.update({obs['station']: series})
            series = as_series(series)
            status = "Water  "

        log.info('[{}] {}'.format(status, obs.name))

    if raw_series:  # Save cube.
        for station, cube in raw_series.items():
            cube = add_station(cube, station)
            cube = remove_ssh(cube)
        try:
            cube = iris.cube.CubeList(raw_series.values()).merge_cube()
        except MergeError as e:
            log.warning(e)

        ensure_timeseries(cube)
        iris.save(cube, fname)
        del cube

    log.info(fmt('Finished processing {}\n'.format(mod_name)))

In [20]:
from utilities import nbviewer_link, make_qr

make_qr(nbviewer_link('00-fetch_data.ipynb'))


Out[20]:

In [21]:
elapsed = time.time() - start_time
log.info('{:.2f} minutes'.format(elapsed/60.))
log.info('EOF')

with open('{}/log.txt'.format(run_name)) as f:
    print(f.read())


10:39:32 INFO: ************Saving data inside directory 2014-07-07*************
10:39:32 INFO: *********************** Run information ************************
10:39:32 INFO: Run date: 2016-02-05 13:39:32
10:39:32 INFO: Download start: 2014-07-01 12:00:00
10:39:32 INFO: Download stop: 2014-07-07 12:00:00
10:39:32 INFO: Bounding box: -87.40, 24.25,-74.70, 36.70
10:39:32 INFO: *********************** Software version ***********************
10:39:32 INFO: Iris version: 1.9.1
10:39:32 INFO: owslib version: 0.10.3
10:39:32 INFO: pyoos version: 0.7.0
10:39:36 INFO: ********************* Catalog information **********************
10:39:36 INFO: URL: http://www.ngdc.noaa.gov/geoportal/csw
10:39:36 INFO: CSW version: 2.0.2
10:39:36 INFO: Number of datasets available: 31
10:39:36 INFO: ***************************** CSW ******************************
10:39:36 INFO: USF FVCOM - Nowcast Aggregation
10:39:36 INFO: ROMS/TOMS 3.0 - South-Atlantic Bight and Gulf of Mexico
10:39:36 INFO: COAWST Forecast System : USGS : US East Coast and Gulf of Mexico (Experimental)
10:39:36 INFO: ROMS ESPRESSO Real-Time Operational IS4DVAR Forecast System Version 2 (NEW) 2013-present FMRC History
10:39:36 INFO: NOAA.NOS.CO-OPS SOS
10:39:36 INFO: HYbrid Coordinate Ocean Model (HYCOM): Global
10:39:36 INFO: National Data Buoy Center SOS
10:39:36 INFO: Aquarius Level 3 Sea Surface Salinity Standard Mapped Image Daily Data V3.0
10:39:36 INFO: Aquarius Level 3 Sea Surface Salinity Standard Mapped Image Monthly Data V3.0
10:39:36 INFO: Aquarius Level 3 Sea Surface Salinity Standard Mapped Image Weekly Data V3.0
10:39:36 INFO: Aquarius Level 3 Sea Surface Salinity Standard Mapped Image Daily Data V4.0
10:39:36 INFO: Aquarius Level 3 Sea Surface Salinity Standard Mapped Image Monthly Data V4.0
10:39:36 INFO: Aquarius Level 3 Sea Surface Salinity Standard Mapped Image Weekly Data V4.0
10:39:36 INFO: carocoops.cap2.buoy
10:39:36 INFO: carocoops.cap2.buoy
10:39:36 INFO: carocoops.frp2.buoy
10:39:36 INFO: carocoops.frp2.buoy
10:39:36 INFO: carocoops.sun2.buoy
10:39:36 INFO: lbhmc.2ndave.pier
10:39:36 INFO: lbhmc.apachepier.pier
10:39:36 INFO: lbhmc.cherrygrove.pier
10:39:36 INFO: sccf.fortmyers.wq
10:39:36 INFO: sccf.gulfofmexico.wq
10:39:36 INFO: sccf.redfishpass.wq
10:39:36 INFO: sccf.shellpoint.wq
10:39:36 INFO: sccf.tarponbay.wq
10:39:36 INFO: usf.shp.ngwlms
10:39:36 INFO: fau.lobo.1
10:39:36 INFO: fldep.bingslanding.
10:39:36 INFO: fldep.stlucieinlet.
10:39:36 INFO: fldep.tolomatoriver.
10:39:36 INFO: ***************************** SOS ******************************
10:39:36 INFO: http://opendap.co-ops.nos.noaa.gov/ioos-dif-sos/SOS?service=SOS&request=GetCapabilities&acceptVersions=1.0.0
10:39:36 INFO: http://sdf.ndbc.noaa.gov/sos/server.php?service=SOS&request=GetCapabilities&acceptVersions=1.0.0
10:39:36 INFO: http://tds.secoora.org/thredds/sos/carocoops.cap2.buoy.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/carocoops.cap2.buoy_archive.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/carocoops.frp2.buoy.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/carocoops.frp2.buoy_archive.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/carocoops.sun2.buoy_archive.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/fau.lobo.1.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/fldep.bingslanding..nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/fldep.stlucieinlet..nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/fldep.tolomatoriver..nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/lbhmc.2ndave.pier.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/lbhmc.apachepier.pier.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/lbhmc.cherrygrove.pier.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/sccf.fortmyers.wq.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/sccf.gulfofmexico.wq.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/sccf.redfishpass.wq.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/sccf.shellpoint.wq.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/sccf.tarponbay.wq.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: http://tds.secoora.org/thredds/sos/usf.shp.ngwlms.nc?service=SOS&version=1.0.0&request=GetCapabilities
10:39:36 INFO: ***************************** DAP ******************************
10:39:36 INFO: http://crow.marine.usf.edu:8080/thredds/dodsC/FVCOM-Nowcast-Agg.nc.html
10:39:36 INFO: http://geoport.whoi.edu/thredds/dodsC/coawst_4/use/fmrc/coawst_4_use_best.ncd.html
10:39:36 INFO: http://omgsrv1.meas.ncsu.edu:8080/thredds/dodsC/fmrc/sabgom/SABGOM_Forecast_Model_Run_Collection_best.ncd.html
10:39:36 INFO: http://oos.soest.hawaii.edu/thredds/dodsC/pacioos/hycom/global.html
10:39:36 INFO: http://tds.marine.rutgers.edu/thredds/dodsC/roms/espresso/2013_da/his/ESPRESSO_Real-Time_v2_History_Best.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/carocoops.cap2.buoy.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/carocoops.cap2.buoy_archive.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/carocoops.frp2.buoy.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/carocoops.frp2.buoy_archive.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/carocoops.sun2.buoy_archive.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/fau.lobo.1.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/fldep.bingslanding..nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/fldep.stlucieinlet..nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/fldep.tolomatoriver..nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/lbhmc.2ndave.pier.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/lbhmc.apachepier.pier.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/lbhmc.cherrygrove.pier.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/sccf.fortmyers.wq.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/sccf.gulfofmexico.wq.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/sccf.redfishpass.wq.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/sccf.shellpoint.wq.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/sccf.tarponbay.wq.nc.html
10:39:36 INFO: http://tds.secoora.org/thredds/dodsC/usf.shp.ngwlms.nc.html
10:39:36 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Daily.nc.html
10:39:36 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Monthly.nc.html
10:39:36 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Weekly.nc.html
10:39:36 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Daily.nc.html
10:39:36 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Monthly.nc.html
10:39:36 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Weekly.nc.html
10:40:54 INFO: ************************* Filtered DAP *************************
10:40:54 INFO: http://crow.marine.usf.edu:8080/thredds/dodsC/FVCOM-Nowcast-Agg.nc.html
10:40:54 INFO: http://geoport.whoi.edu/thredds/dodsC/coawst_4/use/fmrc/coawst_4_use_best.ncd.html
10:40:54 INFO: http://omgsrv1.meas.ncsu.edu:8080/thredds/dodsC/fmrc/sabgom/SABGOM_Forecast_Model_Run_Collection_best.ncd.html
10:40:54 INFO: http://oos.soest.hawaii.edu/thredds/dodsC/pacioos/hycom/global.html
10:40:54 INFO: http://tds.marine.rutgers.edu/thredds/dodsC/roms/espresso/2013_da/his/ESPRESSO_Real-Time_v2_History_Best.html
10:40:54 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Daily.nc.html
10:40:54 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Monthly.nc.html
10:40:54 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Weekly.nc.html
10:40:54 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Daily.nc.html
10:40:54 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Monthly.nc.html
10:40:54 INFO: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Weekly.nc.html
10:40:54 WARNING: USEAST not in the NGDC csw
10:40:54 WARNING: USF_ROMS not in the NGDC csw
10:40:54 WARNING: USF_SWAN not in the NGDC csw
10:41:04 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/fit.sispnj.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/fit.sispnj.met.nc.
10:41:34 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.nfb.ngwlms.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/usf.nfb.ngwlms.nc.
10:41:42 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.tas.ngwlms.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/usf.tas.ngwlms.nc.
10:41:52 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.apk.ngwlms.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/usf.apk.ngwlms.nc.
10:41:57 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.c21.weatherpak.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/usf.c21.weatherpak.nc.
10:42:18 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.bcp.ngwlms.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/usf.bcp.ngwlms.nc.
10:42:28 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.fhp.ngwlms.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/usf.fhp.ngwlms.nc.
10:42:34 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.c10.mcat.nc
istart must be different from istop! Got istart 48233 and  istop 48233
10:42:51 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/c10_salinity_water_temp.nc
'Expected to find exactly 1  coordinate, but found none.'
10:43:05 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/QC_C10_Temp_full.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/QC_C10_Temp_full.nc.
10:43:21 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/QC_C10_Sal_full.nc
'Expected to find exactly 1  coordinate, but found none.'
10:43:25 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.c12.mcat.nc
istart must be different from istop! Got istart 18711 and  istop 18711
10:43:29 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.c13.mcat.nc
istart must be different from istop! Got istart 18099 and  istop 18099
10:43:35 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.c10.mcat_2011.nc
istart must be different from istop! Got istart 26303 and  istop 26303
10:43:39 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.c12.mcat_2011.nc
istart must be different from istop! Got istart 26303 and  istop 26303
10:43:44 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/usf.c13.mcat_2011.nc
istart must be different from istop! Got istart 26303 and  istop 26303
10:44:10 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/cormp.ilm3.buoy.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/cormp.ilm3.buoy.nc.
10:44:33 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/cormp.ilm1.buoy.nc
istart must be different from istop! Got istart 1443 and  istop 1443
10:44:41 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/cormp.lej3.buoy.nc
istart must be different from istop! Got istart 91490 and  istop 91490
10:45:35 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/fldep.poncedeleonsouth..nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/fldep.poncedeleonsouth..nc.
10:45:52 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/fldep.redbaypoint..nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/fldep.redbaypoint..nc.
10:46:23 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/fldep.naplesbay..nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/fldep.naplesbay..nc.
10:46:34 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/fldep.gordonriverinlet..nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/fldep.gordonriverinlet..nc.
10:46:46 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/fldep.melbourne..nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/fldep.melbourne..nc.
10:47:27 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/fldep.verobeach..nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/fldep.verobeach..nc.
10:48:02 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.wiwf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.wiwf1.met.nc.
10:48:07 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.lbrf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.lbrf1.met.nc.
10:48:13 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.bobf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.bobf1.met.nc.
10:48:18 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.trrf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.trrf1.met.nc.
10:48:24 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.wwef1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.wwef1.met.nc.
10:48:30 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.lrif1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.lrif1.met.nc.
10:48:36 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.bwsf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.bwsf1.met.nc.
10:48:43 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.pkyf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.pkyf1.met.nc.
10:48:49 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.lmdf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.lmdf1.met.nc.
10:48:55 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.cnbf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.cnbf1.met.nc.
10:49:00 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.hcef1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.hcef1.met.nc.
10:49:06 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.jkyf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.jkyf1.met.nc.
10:49:11 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.wrbf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.wrbf1.met.nc.
10:49:16 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.gbif1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.gbif1.met.nc.
10:49:23 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.ppta1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.ppta1.met.nc.
10:49:28 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.bdvf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.bdvf1.met.nc.
10:49:33 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.lrkf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.lrkf1.met.nc.
10:49:39 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.bnkf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.bnkf1.met.nc.
10:49:44 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.gbtf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.gbtf1.met.nc.
10:49:50 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.tcvf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.tcvf1.met.nc.
10:49:55 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.canf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.canf1.met.nc.
10:50:02 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.lbsf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.lbsf1.met.nc.
10:50:08 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.mukf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.mukf1.met.nc.
10:50:15 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.dkkf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.dkkf1.met.nc.
10:50:20 WARNING: Cannot get cube for: http://129.252.139.124/thredds/dodsC/enp.cwaf1.met.nc
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://129.252.139.124/thredds/dodsC/enp.cwaf1.met.nc.
10:50:58 INFO: ********************* Collector offerings **********************
10:50:58 INFO: NOAA.NOS.CO-OPS SOS: 1076 offerings
10:50:59 INFO: SOS URL request: http://opendap.co-ops.nos.noaa.gov/ioos-dif-sos/SOS?eventTime=2014-07-01T12%3A00%3A00Z&service=SOS&offering=urn%3Aioos%3Anetwork%3ANOAA.NOS.CO-OPS%3AMetActive&request=GetObservation&version=1.0.0&responseFormat=text%2Fcsv&featureOfInterest=BBOX%3A-87.4%2C24.25%2C-74.7%2C36.7&observedProperty=salinity
10:52:33 INFO: ************************* Observations *************************
10:52:33 INFO: **** Downloading to file 2014-07-07/2014-07-07-OBS_DATA.nc *****
10:52:35 WARNING: /home/filipe/miniconda3/envs/secoora-skill/lib/python2.7/site-packages/utilities/secoora.py:799: FutureWarning: the 'cols' keyword is deprecated, use 'subset' instead
  df = df.drop_duplicates(cols='date_time').set_index('date_time')

10:52:58 INFO: **** Downloading to file 2014-07-07/2014-07-07-OBS_DATA.nc *****
10:52:58 WARNING: /home/filipe/miniconda3/envs/secoora-skill/lib/python2.7/site-packages/iris/fileformats/netcdf.py:1786: UserWarning: NetCDF default saving behaviour currently assigns the outermost dimensions to unlimited. This behaviour is to be deprecated, in favour of no automatic assignment. To switch to the new behaviour, set iris.FUTURE.netcdf_no_unlimited to True.
  warnings.warn(msg)

10:52:58 WARNING: /home/filipe/miniconda3/envs/secoora-skill/lib/python2.7/site-packages/ipykernel/__main__.py:20: FutureWarning: the take_last=True keyword is deprecated, use keep='last' instead

10:52:58 INFO: ********************* SECOORA Observations *********************
10:52:58 INFO:  Downloading to file 2014-07-07/2014-07-07-SECOORA_OBS_DATA.nc *
10:52:58 INFO: **************************** Models ****************************
10:52:58 INFO: 
[Reading url 1/14]: http://crow.marine.usf.edu:8080/thredds/dodsC/FVCOM-Nowcast-Agg.nc
10:53:23 INFO: 
[Reading url 2/14]: http://geoport.whoi.edu/thredds/dodsC/coawst_4/use/fmrc/coawst_4_use_best.ncd
10:54:44 INFO: 
[Reading url 3/14]: http://omgarch1.meas.ncsu.edu:8080/thredds/dodsC/fmrc/sabgom/SABGOM_Forecast_Model_Run_Collection_best.ncd
11:27:12 WARNING: Cannot get cube for: http://omgarch1.meas.ncsu.edu:8080/thredds/dodsC/fmrc/sabgom/SABGOM_Forecast_Model_Run_Collection_best.ncd
Timed out!
11:27:12 INFO: 
[Reading url 4/14]: http://oos.soest.hawaii.edu/thredds/dodsC/pacioos/hycom/global
11:27:16 INFO: 
[Reading url 5/14]: http://tds.marine.rutgers.edu/thredds/dodsC/roms/espresso/2013_da/his/ESPRESSO_Real-Time_v2_History_Best
11:30:05 INFO: 
[Reading url 6/14]: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Daily.nc
11:30:06 WARNING: Cannot get cube for: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Daily.nc
istart must be different from istop! Got istart 992 and  istop 992
11:30:06 INFO: 
[Reading url 7/14]: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Monthly.nc
11:30:08 WARNING: Cannot get cube for: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Monthly.nc
istart must be different from istop! Got istart 35 and  istop 35
11:30:08 INFO: 
[Reading url 8/14]: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Weekly.nc
11:30:10 WARNING: Cannot get cube for: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V3_SSS_Weekly.nc
istart must be different from istop! Got istart 149 and  istop 149
11:30:10 INFO: 
[Reading url 9/14]: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Daily.nc
11:30:26 WARNING: Cannot get cube for: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Daily.nc
Cannot find the surface for cube <iris 'Cube' of sea_surface_salinity / (1e-3) (time: 6; latitude: 12; longitude: 13)>
11:30:26 INFO: 
[Reading url 10/14]: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Monthly.nc
11:30:27 WARNING: Cannot get cube for: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Monthly.nc
istart must be different from istop! Got istart 35 and  istop 35
11:30:27 INFO: 
[Reading url 11/14]: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Weekly.nc
11:30:29 WARNING: Cannot get cube for: http://thredds.axiomdatascience.com/thredds/dodsC/Aquarius_V4_SSS_Weekly.nc
Cannot find the surface for cube <iris 'Cube' of sea_surface_salinity / (1e-3) (time: 1; latitude: 12; longitude: 13)>
11:30:29 INFO: 
[Reading url 12/14]: http://omgsrv1.meas.ncsu.edu:8080/thredds/dodsC/fmrc/us_east/US_East_Forecast_Model_Run_Collection_best.ncd
11:31:20 WARNING: Cannot get cube for: http://omgsrv1.meas.ncsu.edu:8080/thredds/dodsC/fmrc/us_east/US_East_Forecast_Model_Run_Collection_best.ncd
istart must be different from istop! Got istart 0 and  istop 0
11:31:20 INFO: 
[Reading url 13/14]: http://crow.marine.usf.edu:8080/thredds/dodsC/WFS_ROMS_NF_model/USF_Ocean_Circulation_Group_West_Florida_Shelf_Daily_ROMS_Nowcast_Forecast_Model_Data_best.ncd
11:31:28 INFO: 
[Reading url 14/14]: http://crow.marine.usf.edu:8080/thredds/dodsC/WFS_SWAN_NF_model/USF_Ocean_Circulation_Group_West_Florida_Shelf_Daily_SWAN_Nowcast_Forecast_Wave_Model_Data_best.ncd
11:31:29 WARNING: Cannot get cube for: http://crow.marine.usf.edu:8080/thredds/dodsC/WFS_SWAN_NF_model/USF_Ocean_Circulation_Group_West_Florida_Shelf_Daily_SWAN_Nowcast_Forecast_Wave_Model_Data_best.ncd
Cannot find ['sea_water_salinity', 'sea_surface_salinity', 'sea_water_absolute_salinity', 'sea_water_practical_salinity'] in http://crow.marine.usf.edu:8080/thredds/dodsC/WFS_SWAN_NF_model/USF_Ocean_Circulation_Group_West_Florida_Shelf_Daily_SWAN_Nowcast_Forecast_Wave_Model_Data_best.ncd.
11:31:29 INFO: **** Downloading to file 2014-07-07/2014-07-07-USF_ROMS.nc *****
11:31:29 INFO: [No Data] Dames Point, FL
11:31:29 INFO: [No Data] Jacksonville University, FL
11:31:29 INFO: [No Data] I-295 Bridge, St Johns River, FL
11:31:29 INFO: [No Data] Red Bay Point, St Johns River, FL
11:31:29 INFO: [No Data] Racy Point, St Johns River, FL
11:31:29 INFO: [No Data] Tolomato River station
11:31:29 INFO: [No Data] CAROCOOPS CAP2, Capers Island Nearshore, SC
11:31:35 INFO: [Water  ] Shell Point station
11:31:35 INFO: [No Data] Cherry Grove Pier, N. Myrtle Beach, SC
11:31:40 INFO: [Water  ] Gulf of Mexico station
11:31:44 INFO: [Water  ] Shell Point
11:31:44 INFO: [No Data] St Lucie Inlet station
11:31:50 INFO: [Water  ] Redfish Pass station
11:31:50 INFO: [No Data] fau_lobo_1
11:31:50 INFO: [No Data] CAROCOOPS FRP2, Fripp Nearshore, SC
11:31:53 INFO: [Water  ] usf_c10_imet
11:31:53 INFO: [No Data] CAROCOOPS SUN2, Sunset Nearshore, NC
11:31:53 INFO: [No Data] CORMP ILM2, Wrightsville Beach Nearshore, NC
11:31:53 INFO: [No Data] Bing's Landing station
11:31:53 INFO: [No Data] 2nd Ave North Pier, Myrtle Beach, SC
11:31:57 INFO: [Water  ] Tarpon Bay station
11:31:57 INFO: [No Data] Fort Myers station
11:31:57 INFO: [No Data] Binney Dock station
11:31:57 INFO: [No Data] Apache Pier, Myrtle Beach, SC
11:32:13 INFO: *****************Finished processing USF_ROMS
******************
11:32:13 INFO: **** Downloading to file 2014-07-07/2014-07-07-USF_FVCOM.nc ****
11:32:13 INFO: [No Data] Dames Point, FL
11:32:13 INFO: [No Data] Jacksonville University, FL
11:32:13 INFO: [No Data] I-295 Bridge, St Johns River, FL
11:32:13 INFO: [No Data] Red Bay Point, St Johns River, FL
11:32:13 INFO: [No Data] Racy Point, St Johns River, FL
11:32:13 INFO: [No Data] Tolomato River station
11:32:13 INFO: [No Data] CAROCOOPS CAP2, Capers Island Nearshore, SC
11:32:17 INFO: [Water  ] Shell Point station
11:32:17 INFO: [No Data] Cherry Grove Pier, N. Myrtle Beach, SC
11:32:21 INFO: [Water  ] Gulf of Mexico station
11:32:25 INFO: [Water  ] Shell Point
11:32:25 INFO: [No Data] St Lucie Inlet station
11:32:37 INFO: [Water  ] Redfish Pass station
11:32:37 INFO: [No Data] fau_lobo_1
11:32:37 INFO: [No Data] CAROCOOPS FRP2, Fripp Nearshore, SC
11:32:41 INFO: [Water  ] usf_c10_imet
11:32:41 INFO: [No Data] CAROCOOPS SUN2, Sunset Nearshore, NC
11:32:41 INFO: [No Data] CORMP ILM2, Wrightsville Beach Nearshore, NC
11:32:41 INFO: [No Data] Bing's Landing station
11:32:41 INFO: [No Data] 2nd Ave North Pier, Myrtle Beach, SC
11:33:25 INFO: [Water  ] Tarpon Bay station
11:34:08 INFO: [Land   ] Fort Myers station
11:34:08 INFO: [No Data] Binney Dock station
11:34:08 INFO: [No Data] Apache Pier, Myrtle Beach, SC
11:34:08 INFO: *****************Finished processing USF_FVCOM
*****************
11:34:08 INFO: **** Downloading to file 2014-07-07/2014-07-07-COAWST_4.nc *****
11:34:33 INFO: [Land   ] Dames Point, FL
11:34:52 INFO: [Land   ] Jacksonville University, FL
11:35:10 INFO: [Land   ] I-295 Bridge, St Johns River, FL
11:35:30 INFO: [Land   ] Red Bay Point, St Johns River, FL
11:35:39 INFO: [Land   ] Racy Point, St Johns River, FL
11:35:49 INFO: [Land   ] Tolomato River station
11:35:59 INFO: [Water  ] CAROCOOPS CAP2, Capers Island Nearshore, SC
11:36:08 INFO: [Water  ] Shell Point station
11:36:18 INFO: [Land   ] Cherry Grove Pier, N. Myrtle Beach, SC
11:36:27 INFO: [Water  ] Gulf of Mexico station
11:36:45 INFO: [Water  ] Shell Point
11:36:55 INFO: [Water  ] St Lucie Inlet station
11:37:04 INFO: [Water  ] Redfish Pass station
11:37:23 INFO: [Water  ] fau_lobo_1
11:37:33 INFO: [Water  ] CAROCOOPS FRP2, Fripp Nearshore, SC
11:37:42 INFO: [Water  ] usf_c10_imet
11:37:51 INFO: [Water  ] CAROCOOPS SUN2, Sunset Nearshore, NC
11:38:00 INFO: [Water  ] CORMP ILM2, Wrightsville Beach Nearshore, NC
11:38:10 INFO: [Land   ] Bing's Landing station
11:38:20 INFO: [Water  ] 2nd Ave North Pier, Myrtle Beach, SC
11:38:29 INFO: [Water  ] Tarpon Bay station
11:38:39 INFO: [Land   ] Fort Myers station
11:38:49 INFO: [Water  ] Binney Dock station
11:38:58 INFO: [Land   ] Apache Pier, Myrtle Beach, SC
11:40:00 INFO: *****************Finished processing COAWST_4
******************
11:40:00 INFO: ****** Downloading to file 2014-07-07/2014-07-07-HYCOM.nc ******
11:40:03 INFO: [Land   ] Dames Point, FL
11:40:09 INFO: [Land   ] Jacksonville University, FL
11:40:12 INFO: [Land   ] I-295 Bridge, St Johns River, FL
11:40:15 INFO: [Land   ] Red Bay Point, St Johns River, FL
11:40:15 INFO: [No Data] Racy Point, St Johns River, FL
11:40:18 INFO: [Land   ] Tolomato River station
11:40:20 INFO: [Water  ] CAROCOOPS CAP2, Capers Island Nearshore, SC
11:40:23 INFO: [Land   ] Shell Point station
11:40:26 INFO: [Land   ] Cherry Grove Pier, N. Myrtle Beach, SC
11:40:29 INFO: [Land   ] Gulf of Mexico station
11:40:32 INFO: [Land   ] Shell Point
11:40:35 INFO: [Land   ] St Lucie Inlet station
11:40:38 INFO: [Land   ] Redfish Pass station
11:40:41 INFO: [Land   ] fau_lobo_1
11:40:44 INFO: [Water  ] CAROCOOPS FRP2, Fripp Nearshore, SC
11:40:46 INFO: [Water  ] usf_c10_imet
11:40:49 INFO: [Water  ] CAROCOOPS SUN2, Sunset Nearshore, NC
11:40:49 INFO: [No Data] CORMP ILM2, Wrightsville Beach Nearshore, NC
11:40:52 INFO: [Land   ] Bing's Landing station
11:40:55 INFO: [Land   ] 2nd Ave North Pier, Myrtle Beach, SC
11:40:58 INFO: [Land   ] Tarpon Bay station
11:40:58 INFO: [No Data] Fort Myers station
11:41:01 INFO: [Land   ] Binney Dock station
11:41:04 INFO: [Land   ] Apache Pier, Myrtle Beach, SC
11:41:04 INFO: *******************Finished processing HYCOM
*******************
11:41:04 INFO: ** Downloading to file 2014-07-07/2014-07-07-ROMS_ESPRESSO.nc **
11:41:04 INFO: [No Data] Dames Point, FL
11:41:04 INFO: [No Data] Jacksonville University, FL
11:41:04 INFO: [No Data] I-295 Bridge, St Johns River, FL
11:41:04 INFO: [No Data] Red Bay Point, St Johns River, FL
11:41:04 INFO: [No Data] Racy Point, St Johns River, FL
11:41:04 INFO: [No Data] Tolomato River station
11:41:04 INFO: [No Data] CAROCOOPS CAP2, Capers Island Nearshore, SC
11:41:04 INFO: [No Data] Shell Point station
11:41:04 INFO: [No Data] Cherry Grove Pier, N. Myrtle Beach, SC
11:41:04 INFO: [No Data] Gulf of Mexico station
11:41:04 INFO: [No Data] Shell Point
11:41:04 INFO: [No Data] St Lucie Inlet station
11:41:04 INFO: [No Data] Redfish Pass station
11:41:04 INFO: [No Data] fau_lobo_1
11:41:04 INFO: [No Data] CAROCOOPS FRP2, Fripp Nearshore, SC
11:41:04 INFO: [No Data] usf_c10_imet
11:41:04 INFO: [No Data] CAROCOOPS SUN2, Sunset Nearshore, NC
11:41:04 INFO: [No Data] CORMP ILM2, Wrightsville Beach Nearshore, NC
11:41:04 INFO: [No Data] Bing's Landing station
11:41:04 INFO: [No Data] 2nd Ave North Pier, Myrtle Beach, SC
11:41:04 INFO: [No Data] Tarpon Bay station
11:41:04 INFO: [No Data] Fort Myers station
11:41:04 INFO: [No Data] Binney Dock station
11:41:04 INFO: [No Data] Apache Pier, Myrtle Beach, SC
11:41:04 INFO: ***************Finished processing ROMS_ESPRESSO
***************
11:41:04 INFO: 61.58 minutes
11:41:04 INFO: EOF