def setUp(self): super(TestFindProfile, self).setUp() sr = SlocumReader(ctd_filepath) self.df = sr.standardize() self.profiled_dataset = assign_profiles(self.df, tsint=10)
def test_convert_single_pair(self): merger = SlocumMerger( self.binary_path, self.ascii_path, globs=['usf-bass-2014-048-0-0.tbd', 'usf-bass-2014-048-0-0.sbd']) p = merger.convert() assert p == [{ 'ascii': os.path.join(self.ascii_path, 'usf_bass_2014_048_0_0_sbd.dat'), 'binary': sorted([ os.path.join(self.binary_path, 'usf-bass-2014-048-0-0.sbd'), os.path.join(self.binary_path, 'usf-bass-2014-048-0-0.tbd') ]), }] assert len(glob(os.path.join(self.ascii_path, '*.dat'))) == 1 af = p[0]['ascii'] sr = SlocumReader(af) raw = sr.data assert 'density' not in raw.columns assert 'salinity' not in raw.columns assert 't' not in raw.columns assert 'x' not in raw.columns assert 'y' not in raw.columns assert 'z' not in raw.columns enh = sr.standardize() assert not enh['density'].any( ) # No GPS data so we can't compute density assert 'salinity' in enh.columns assert 't' in enh.columns assert 'x' in enh.columns assert 'y' in enh.columns assert 'z' in enh.columns
def test_single_pair_existing_cac_files(self): # The 0 files are there to produce the required .cac files merger = SlocumMerger( self.binary_path, self.ascii_path, cache_directory=self.cache_path, globs=['modena-2015-175-0-9.dbd', 'modena-2015-175-0-9.ebd']) p = merger.convert() af = p[-1]['ascii'] sr = SlocumReader(af) raw = sr.data assert 'density' not in raw.columns assert 'salinity' not in raw.columns assert 't' not in raw.columns assert 'x' not in raw.columns assert 'y' not in raw.columns assert 'z' not in raw.columns enh = sr.standardize() assert 'density' in enh.columns assert 'salinity' in enh.columns assert 't' in enh.columns assert 'x' in enh.columns assert 'y' in enh.columns assert 'z' in enh.columns
def test_read_all_pairs_gps(self): merger = SlocumMerger( self.binary_path, self.ascii_path, globs=['*.tbd', '*.sbd'] ) p = merger.convert() af = p[0]['ascii'] sr = SlocumReader(af) raw = sr.data assert 'density' not in raw.columns assert 'salinity' not in raw.columns assert 't' not in raw.columns assert 'x' not in raw.columns assert 'y' not in raw.columns assert 'z' not in raw.columns enh = sr.standardize() assert 'density' in enh.columns assert 'salinity' in enh.columns assert 't' in enh.columns assert 'x' in enh.columns assert 'y' in enh.columns assert 'z' in enh.columns
def test_practical_salinity(self): sr = SlocumReader(ctd_filepath) salinity = calculate_practical_salinity( sr.data.sci_water_cond, sr.data.sci_water_temp, sr.data.sci_water_pressure, ) assert sr.data.sci_m_present_time.size == salinity.size
def test_density(self): sr = SlocumReader(ctd_filepath) df = sr.standardize() salinity = calculate_practical_salinity( sr.data.sci_water_cond, sr.data.sci_water_temp, sr.data.sci_water_pressure, ) assert sr.data.sci_m_present_time.size == salinity.size est_lat, est_lon = interpolate_gps(timestamps=masked_epoch(df.t), latitude=df.y, longitude=df.x) density = calculate_density(sr.data.sci_water_temp, sr.data.sci_water_pressure, salinity, est_lat, est_lon) assert sr.data.sci_m_present_time.size == density.size
def test_read_single_pair(self): merger = SlocumMerger( self.binary_path, self.ascii_path, globs=['usf-bass-2014-048-0-0.tbd', 'usf-bass-2014-048-0-0.sbd']) p = merger.convert() af = p[0]['ascii'] sr = SlocumReader(af) raw = sr.data assert 'density' not in raw.columns assert 'salinity' not in raw.columns assert 't' not in raw.columns assert 'x' not in raw.columns assert 'y' not in raw.columns assert 'z' not in raw.columns enh = sr.standardize() assert 'density' not in enh.columns # No GPS data so we can't compute density assert 'salinity' in enh.columns assert 't' in enh.columns assert 'x' in enh.columns assert 'y' in enh.columns assert 'z' in enh.columns
def setUp(self): super(TestInterpolateGPS, self).setUp() sr = SlocumReader(ctd_filepath) self.df = sr.standardize()