os.environ['DJANGO_SETTINGS_MODULE']='settings' project_dir = os.path.dirname(__file__) parentDir = os.path.join(os.path.dirname(__file__), "../") sys.path.insert(0, parentDir) # settings.py is one dir up from CCE import CCELoader cl = CCELoader('stoqs_beds_canyon_events', 'BEDS - Canyon Events', description = 'Benthic Event Detector data for significant events in Monterey Canyon', x3dTerrains = { 'http://stoqs.mbari.org/terrain/MontereyCanyonBeds_1m+5m_1x_src/MontereyCanyonBeds_1m+5m_1x_src_scene.x3d': { 'position': '2232.80938 10346.25515 3543.76722', 'orientation': '-0.98394 0.16804 -0.06017 1.25033', 'centerOfRotation': '0 0 0', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '100.0', 'zFar': '30000.0', }, }, # Do not check in .grd files to the repository, keep them in the loaders directory grdTerrain=os.path.join(parentDir, 'MontereyCanyonBeds_1m+5m.grd'), ) # Base OPeNDAP server cl.bed_base = 'http://dods.mbari.org/opendap/data/beds/CanyonEvents/' # Copied from ProjectLibrary to Hyrax server on elvis with: # rsync -r /mbari/ProjectLibrary/901006.BEDS/BEDS.Data/CanyonEvents /var/www/dods_html/data/beds cl.bed_parms = ['XA', 'YA', 'ZA', 'A', 'XR', 'YR', 'ZR', 'ROT_RATE', 'ROT_COUNT', 'P', 'P_ADJUSTED',
project_dir = os.path.dirname(__file__) parentDir = os.path.join(os.path.dirname(__file__), "../") sys.path.insert(0, parentDir) # settings.py is one dir up from CCE import CCELoader import timing cl = CCELoader('stoqs_beds_canyon_events', 'BEDS - Canyon Events', description = 'Benthic Event Detector data for significant events in Monterey Canyon', x3dTerrains = { 'https://stoqs.mbari.org/terrain/MontereyCanyonBeds_1m+5m_1x_src/MontereyCanyonBeds_1m+5m_1x_src_scene.x3d': { 'position': '2232.80938 10346.25515 3543.76722', 'orientation': '-0.98394 0.16804 -0.06017 1.25033', 'centerOfRotation': '0 0 0', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '100.0', 'zFar': '30000.0', }, }, # Do not check in .grd files to the repository, keep them in the loaders directory grdTerrain=os.path.join(parentDir, 'MontereyCanyonBeds_1m+5m.grd'), ) # Base OPeNDAP server cl.bed_base = 'http://dods.mbari.org/opendap/data/beds/CanyonEvents/' # Copied from ProjectLibrary to Hyrax server on elvis with: # rsync -r /mbari/ProjectLibrary/901006.BEDS/BEDS.Data/CanyonEvents /var/www/dods_html/data/beds cl.bed_parms = ['XA', 'YA', 'ZA', 'A', 'XR', 'YR', 'ZR', 'ROT_RATE', 'ROT_COUNT', 'P', 'P_ADJUSTED',
def __init__(self, db_alias='stoqs_cce2015', campaign_name='Coordinated Canyon Experiment'): self.cl = CCELoader( db_alias, campaign_name, description= 'Coordinated Canyon Experiment - Measuring turbidity flows in Monterey Submarine Canyon', x3dTerrains={ 'https://stoqs.mbari.org/x3d/MontereyCanyonBeds_1m+5m_1x_src/MontereyCanyonBeds_1m+5m_1x_src_scene.x3d': { 'name': 'MontereyCanyonBeds_1m+5m_1x', 'position': '2232.80938 10346.25515 3543.76722', 'orientation': '-0.98394 0.16804 -0.06017 1.25033', 'centerOfRotation': '0 0 0', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '100.0', 'zFar': '30000.0', 'selected': '1' }, 'https://stoqs.mbari.org/x3d/Monterey25_1x/Monterey25_1x_src_scene.x3d': { 'name': 'Monterey25_1x', 'position': '-32985.28634 88026.90417 22334.02600', 'orientation': '-0.99875 -0.04772 0.01482 1.31683', 'centerOfRotation': '-20564.015827789044 -1956.065669754069 14112.954469753739', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '-1', 'zFar': '-1', }, }, # Do not check in .grd files to the repository, keep them in the loaders directory grdTerrain=os.path.join(parent_dir, 'MontereyCanyonBeds_1m+5m.grd'), ##grdTerrain=os.path.join(parent_dir, 'Monterey25.grd'), ) # Base OPeNDAP server self.cl.bed_base = 'http://dods.mbari.org/opendap/data/CCE_Processed/BEDs/' # Copied from ProjectLibrary to BEDs SVN working dir for netCDF conversion, and then copied to elvis. # See BEDs/BEDs/Visualization/py/makeBEDNetCDF_CCE.sh self.cl.bed_parms = [ 'XA', 'YA', 'ZA', 'A', 'XR', 'YR', 'ZR', 'ROT_RATE', 'ROT_COUNT', 'P', 'P_ADJUSTED', 'P_RATE', 'P_SPLINE', 'P_SPLINE_RATE', 'ROT_DIST', 'IMPLIED_VELOCITY', 'BED_DEPTH_CSI', 'BED_DEPTH', 'BED_DEPTH_LI', 'DIST_TOPO', 'TUMBLE_RATE', 'TUMBLE_COUNT', 'TIDE', 'ROT_X', 'ROT_Y', 'ROT_Z', 'AXIS_X', 'AXIS_Y', 'AXIS_Z', 'ANGLE' ] # Several BED files: 30200078 to 3020080 # bed_files, bed_platforms, bed_depths must have same number of items; they are zipped together in the load ##self.cl.bed_files = [(f'CanyonEvents/BED3/20151001_20160115/{n}.nc') for n in range(30200078, 30200081)] ##self.cl.bed_platforms = ['BED03'] * len(self.cl.bed_files) ##self.cl.bed_depths = [201] * len(self.cl.bed_files) # Just the event files for the CCE self.cl.bed_files_framegrabs_2015 = [ ('BED04/MBCCE_BED04_20151004_Event20151201/netcdf/40100037_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2015/vnta3872/00_17_50_24.html' ), ('BED05/MBCCE_BED05_20151027_Event20151201/netcdf/50200024_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2015/vnta3873/00_29_56_03.html' ), ] self.cl.bed_files_framegrabs_2016 = [ ('BED03/20151001_20160115/netcdf/30200078_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2015/vnta3874/00_21_23_28.html' ), ('BED06/20151001_20160115/netcdf/60100068_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2015/vnta3870/00_15_38_23.html' ), ('BED03/MBCCE_BED03_20160212_Event20160217/netcdf/30300004_decim_traj.nc', ''), ('BED05/MBCCE_BED05_20151027_Event20160115/netcdf/50200054_decim_traj.nc', ''), ('BED05/MBCCE_BED05_20151027_Event20160115/netcdf/50200055_decim_traj.nc', ''), ('BED05/MBCCE_BED05_20151027_Event20160115/netcdf/50200056_decim_traj.nc', ''), ('BED05/MBCCE_BED05_20151027_Event20160115/netcdf/50200057_decim_traj.nc', ''), ('BED03/MBCCE_BED03_20160212_Event20160306/netcdf/30300016_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20160306/netcdf/60200011_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20160306/netcdf/60200012_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20160901/netcdf/60200130_decim_traj.nc', ''), ('BED09/MBCCE_BED09_20160408_Event20160901/netcdf/90100096_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3922/02_55_51_27.html' ), ('BED10/MBCCE_BED10_20160408_Event20160901/netcdf/A0100096_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3921/02_05_37_16.html' ), # Uncomment to test 3D replay of BED motion - it should rotate only around the X-Axis ##('BED00/Simulated/netcdf/BED00_SIM_rolling_trajectory.nc', ## ''), ] + [( f'BED09/MBCCE_BED09_20160408_Event20161124/netcdf/901001{n}_full_traj.nc', '' ) for n in (list(range(56, 63)) + list(range(64, 65)))] + [ ('BED09/MBCCE_BED09_20160408_Event20161124/netcdf/90100165_full.nc', ''), ('BED03/MBCCE_BED03_20161005_Event20161124/netcdf/30400015_decim_traj.nc', ''), ('BED10/MBCCE_BED10_20160408_Event20161124/netcdf/A0100154_decim_traj.nc', ''), ('BED04/MBCCE_BED04_20151004_Event20161124/netcdf/40200014_decim_traj.nc', ''), ] self.cl.bed_files_framegrabs_2017 = [ (f'BED09/MBCCE_BED09_20160408_Watch/netcdf/9010000{n}.nc', '') for n in range(4, 8) ] + [ ('BED09/MBCCE_BED09_20160408_Event20170109/netcdf/90100196_full_traj.nc', ''), ('BED11/MBCCE_BED11_20161010_Event20170109/netcdf/B0100026_full_traj.nc', ''), ('BED11/MBCCE_BED11_20161010_Event20170109/netcdf/B0100027_full.nc', ''), ('BED11/MBCCE_BED11_20161010_Event20170109/netcdf/B0100028_full_traj.nc', ''), ##('BED00/Simulated/netcdf/BED00_cycle_rot_axes_200_202_trajectory.nc', ## ''), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200014_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200014_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200015_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200016_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200016_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200017_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200019_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200020_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200020_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20170109/netcdf/80200034_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20170109/netcdf/80200039_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20170203/netcdf/80200046_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20170218/netcdf/80200050_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED08/MBCCE_BED08_20161005_Event20170218/netcdf/80200052_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html' ), ('BED11/MBCCE_BED11_20161010_Event20161124/netcdf/B0100012_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20170109/netcdf/60200218_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20170109/netcdf/60200219_decim_traj.nc', ''), ('BED03/MBCCE_BED03_20161005_Event20170203/netcdf/30400034_full_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20170203/netcdf/60200236_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20170218/netcdf/60200246_decim_traj.nc', ''), ('BED11/MBCCE_BED11_20161010_Event20170203/netcdf/B0100036_full_traj.nc', ''), ('BED11/MBCCE_BED11_20161010_Event20170203/netcdf/B0100037_full.nc', ''), ] self.cl.bed_files_framegrabs = self.cl.bed_files_framegrabs_2015 + self.cl.bed_files_framegrabs_2016 + self.cl.bed_files_framegrabs_2017 self.cl.bed_files = [ffg[0] for ffg in self.cl.bed_files_framegrabs] self.cl.bed_framegrabs = [ ffg[1] for ffg in self.cl.bed_files_framegrabs ] self.cl.bed_platforms = [f.split('/')[0] for f in self.cl.bed_files] # Execute just before loading BEDs data, as this delays the start of loading mooring data ##self.cl.bed_depths = np.round(self.cl.get_start_bed_depths(), 1) # CCE event start and end times for loading mooring data self.lores_event_times = lores_event_times self.hires_event_times = hires_event_times # CCE SIN (Seafloor Instrument Node) data - all parameters but the timeseriesprofile ADCP data # There are 3 categories of loaded data: # 1. 10-minute resolution entire timeseries of non-profile parameters # 2. Low resolution profile data (ADCP) for a few days around each event # 3. High resolution profile data (ADCP) for a several hours around each event self.cl.ccesin_nominaldepth = 1836 self.cl.ccesin_base = 'http://dods.mbari.org/opendap/data/CCE_Processed/SIN/' self.cl.ccesin_files = [ '20151013/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20151013_timecorrected.nc', '20151013/OX/MBCCE_SIN_OX_20151013_timecorrected.nc', '20151013/FLNTU/MBCCE_SIN_FLNTU_20151013_timecorrected.nc', '20151013/ADCP300/MBCCE_SIN_ADCP300_20151013.nc', '20151013/ADCP600/MBCCE_SIN_ADCP600_20151013.nc', '20151013/ADCP1200/MBCCE_SIN_ADCP1200_20151013.nc', '20160417/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20160417_timecorrected.nc', '20160417/OX/MBCCE_SIN_OX_20160417_timecorrected.nc', '20160417/FLNTU/MBCCE_SIN_FLNTU_20160417_timecorrected.nc', '20161018/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20161018_timecorrected.nc', '20161018/OX/MBCCE_SIN_OX_20161018_timecorrected.nc', '20161018/FLNTU/MBCCE_SIN_FLNTU_20161018_timecorrected.nc', ] self.cl.ccesin_parms = [ 'pressure', 'temperature', 'conductivity', 'turbidity', 'optical_backscatter', 'oxygen', 'saturation', 'optode_temperature', 'chlor', 'ntu1', 'ntu2', 'Hdg_1215', 'Ptch_1216', 'Roll_1217' ] # CCE SIN (Seafloor Instrument Node) data - files and parameters to load for just the events: # Just the timeseriesprofile ADCP data self.cl.ccesin_nominaldepth_ev = self.cl.ccesin_nominaldepth self.cl.ccesin_base_ev = self.cl.ccesin_base self.cl.ccesin_files_ev = [ '20151013/ADCP300/MBCCE_SIN_ADCP300_20151013.nc', '20151013/ADCP600/MBCCE_SIN_ADCP600_20151013.nc', '20151013/ADCP1200/MBCCE_SIN_ADCP1200_20151013.nc', ] self.cl.ccesin_parms_ev = ['u_1205', 'v_1206', 'w_1204', 'AGC_1202'] # Just the timeseries data for the highres period self.cl.ccesin_files_ev_hires = [ '20151013/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20151013_timecorrected.nc', '20151013/OX/MBCCE_SIN_OX_20151013_timecorrected.nc', '20151013/FLNTU/MBCCE_SIN_FLNTU_20151013_timecorrected.nc', '20160417/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20160417_timecorrected.nc', '20160417/OX/MBCCE_SIN_OX_20160417_timecorrected.nc', '20160417/FLNTU/MBCCE_SIN_FLNTU_20160417_timecorrected.nc', '20161018/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20161018_timecorrected.nc', '20161018/OX/MBCCE_SIN_OX_20161018_timecorrected.nc', '20161018/FLNTU/MBCCE_SIN_FLNTU_20161018_timecorrected.nc', ] self.cl.ccesin_parms_ev_hires = [ 'pressure', 'temperature', 'conductivity', 'turbidity', 'optical_backscatter', 'oxygen', 'saturation', 'optode_temperature', 'chlor', 'ntu1', 'ntu2', 'Hdg_1215', 'Ptch_1216', 'Roll_1217' ] # MS1 ADCP data - timeseries data self.cl.ccems1_nominal_depth = 225 self.cl.ccems1_base = 'http://dods.mbari.org/opendap/data/CCE_Archive/MS1/' self.cl.ccems1_files = [ '20151006/ADCP300/MBCCE_MS1_ADCP300_20151006.nc', '20151006/Aquadopp2000/MBCCE_MS1_Aquadopp2000_20151006.nc', '20151006/CTOBSTrans9m/MBCCE_MS1_CTOBSTrans9m_20151006.nc', '20151006/TD65m/MBCCE_MS1_TD65m_20151006.nc', '20151006/TU35m/MBCCE_MS1_TU35m_20151006.nc', '20151006/TU65m/MBCCE_MS1_TU65m_20151006.nc', ] self.cl.ccems1_parms = [ 'Hdg_1215', 'Ptch_1216', 'Roll_1217', 'P_1', 'T_1211', 'T_28', 'S_41', 'ST_70', 'tran_4010', 'ATTN_55', 'NEP_56', 'Trb_980', ] # MS1 ADCP data - timeseriesprofile (ADCP) data self.cl.ccems1_nominal_depth_ev = self.cl.ccems1_nominal_depth self.cl.ccems1_base_ev = self.cl.ccems1_base self.cl.ccems1_files_ev = [ '20151006/ADCP300/MBCCE_MS1_ADCP300_20151006.nc', '20151006/Aquadopp2000/MBCCE_MS1_Aquadopp2000_20151006.nc', ] self.cl.ccems1_parms_ev = ['u_1205', 'v_1206', 'w_1204', 'AGC_1202'] # MS2 ADCP data - timeseries data self.cl.ccems2_nominal_depth = 462 self.cl.ccems2_base = 'http://dods.mbari.org/opendap/data/CCE_Archive/MS2/' self.cl.ccems2_files = [ '20151005/ADCP300/MBCCE_MS2_ADCP300_20151005.nc', '20151005/CTD9m/MBCCE_MS2_CTD9m_20151005.nc', '20151005/TU9m/MBCCE_MS2_TU9m_20151005.nc', ] self.cl.ccems2_parms = [ 'Hdg_1215', 'Ptch_1216', 'Roll_1217', 'D_3', 'P_1', 'T_28', 'S_41', 'NEP_56', 'Trb_980', ] # MS2 ADCP data - timeseriesprofile (ADCP) data self.cl.ccems2_nominal_depth_ev = self.cl.ccems2_nominal_depth self.cl.ccems2_base_ev = self.cl.ccems2_base self.cl.ccems2_files_ev = [ '20151005/ADCP300/MBCCE_MS2_ADCP300_20151005.nc', ] self.cl.ccems2_parms_ev = ['u_1205', 'v_1206', 'w_1204', 'AGC_1202'] # MS3 ADCP and CTD data - timeseries data self.cl.ccems3_nominal_depth = 764 self.cl.ccems3_base = 'http://dods.mbari.org/opendap/data/CCE_Archive/MS3/' self.cl.ccems3_files = [ '20151005/ADCP300/MBCCE_MS3_ADCP300_20151005.nc', '20151005/Aquadopp2000/MBCCE_MS3_Aquadopp2000_20151005.nc', '20151005/CT9m/MBCCE_MS3_CT9m_20151005.nc', '20151005/TU9m/MBCCE_MS3_TU9m_20151005.nc', ] self.cl.ccems3_parms = [ 'Hdg_1215', 'Ptch_1216', 'Roll_1217', 'P_1', 'T_1211', 'NEP1_56', 'T_28', 'S_41', 'ST_70', 'tran_4010', 'ATTN_55', ] # MS3 ADCP data - timeseriesprofile (ADCP) data self.cl.ccems3_nominal_depth_ev = self.cl.ccems3_nominal_depth self.cl.ccems3_base_ev = self.cl.ccems3_base self.cl.ccems3_files_ev = [ '20151005/ADCP300/MBCCE_MS3_ADCP300_20151005.nc', '20151005/Aquadopp2000/MBCCE_MS3_Aquadopp2000_20151005.nc', ] self.cl.ccems3_parms_ev = ['u_1205', 'v_1206', 'w_1204', 'AGC_1202'] # MS4 ADCP - 20151005 data files are corrupted ##self.cl.ccems4_nominal_depth = 462 ##self.cl.ccems4_base = 'http://dods.mbari.org/opendap/data/CCE_Archive/MS4...' ##self.cl.ccems4_files = [ '' ] ##self.cl.ccems4_parms = [ 'u_1205', 'v_1206', 'w_1204', 'AGC_1202', ] ##self.cl.ccems4_parms = [ 'u_1205', 'v_1206', 'w_1204', 'AGC_1202', 'Hdg_1215', 'Ptch_1216', 'Roll_1217'] # MS5 ADCP data - timeseries data self.cl.ccems5_nominal_depth = 1315 self.cl.ccems5_base = 'http://dods.mbari.org/opendap/data/CCE_Archive/MS5/' self.cl.ccems5_files = [ '20151020/ADCP300/MBCCE_MS5_ADCP300_20151020.nc', ] self.cl.ccems5_parms = ['Hdg_1215', 'Ptch_1216', 'Roll_1217'] # MS3 ADCP data - timeseriesprofile (ADCP) data self.cl.ccems5_nominal_depth_ev = self.cl.ccems5_nominal_depth self.cl.ccems5_base_ev = self.cl.ccems5_base self.cl.ccems5_files_ev = [ '20151020/ADCP300/MBCCE_MS5_ADCP300_20151020.nc', ] self.cl.ccems5_parms_ev = ['u_1205', 'v_1206', 'w_1204', 'AGC_1202'] # Full-deployment files, exatracted from SSDS with stride of 60 ##self.cl.ccesin_base = 'http://dods.mbari.org/opendap/data/ssdsdata/deployments/ccesin2015/201510/' ##self.cl.ccesin_files = [ ## 'ccesin2015_aanderaaoxy_20151013.nc', ## 'ccesin2015_adcp1825_20151013.nc', ## 'ccesin2015_adcp1827_20151013.nc', ## 'ccesin2015_adcp1828_20151013.nc', ## 'ccesin2015_ecotriplet_20151013.nc', ## 'ccesin2015_sbe16_20151013.nc', ## ] ##self.cl.ccesin_base = 'http://dods.mbari.org/opendap/data/ssdsdata/deployments/ccesin20160115/201601/' ##self.cl.ccesin_files = [ ## ##'ccesin20160115_aanderaaoxy_20160115.nc', ## 'ccesin20160115_adcp1825_20160115.nc', ## 'ccesin20160115_adcp1827_20160115.nc', ## 'ccesin20160115_adcp1828_20160115.nc', ## ##'ccesin20160115_ecotriplet_20160115.nc', ## ##'ccesin20160115_sbe16_20160115.nc', ## ] ##self.cl.ccesin_parms = [ ## 'u_component_uncorrected', 'v_component_uncorrected', ## 'echo_intensity_beam1', ## #'echo_intensity_beam2', 'echo_intensity_beam3', 'echo_intensity_beam4', ## #'std_head', 'std_pitch', 'std_roll', 'xdcr_temperature', ## ##'Pressure', 'Salinity', 'Temperature', ## ##'AirSaturation', 'Oxygen', ## ##'Chlor', 'NTU1', 'NTU2', ## ] # Execute the load for trajectory representation self.cl.process_command_line()
cl = CCELoader('stoqs_cce2015', 'Coordinated Canyon Experiment', description = 'Coordinated Canyon Experiment - Measuring turbidity flows in Monterey Submarine Canyon', x3dTerrains = { 'http://stoqs.mbari.org/x3d/MontereyCanyonBeds_1m+5m_1x_src/MontereyCanyonBeds_1m+5m_1x_src_scene.x3d': { 'name': 'MontereyCanyonBeds_1m+5m_1x', 'position': '2232.80938 10346.25515 3543.76722', 'orientation': '-0.98394 0.16804 -0.06017 1.25033', 'centerOfRotation': '0 0 0', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '100.0', 'zFar': '30000.0', 'selected': '1' }, 'http://stoqs.mbari.org/x3d/Monterey25_1x/Monterey25_1x_src_scene.x3d': { 'name': 'Monterey25_1x', 'position': '-32985.28634 88026.90417 22334.02600', 'orientation': '-0.99875 -0.04772 0.01482 1.31683', 'centerOfRotation': '-20564.015827789044 -1956.065669754069 14112.954469753739', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '-1', 'zFar': '-1', }, }, # Do not check in .grd files to the repository, keep them in the loaders directory grdTerrain=os.path.join(parent_dir, 'MontereyCanyonBeds_1m+5m.grd'), ##grdTerrain=os.path.join(parent_dir, 'Monterey25.grd'), )
def __init__(self, db_alias='stoqs_cce2015', campaign_name='Coordinated Canyon Experiment'): self.cl = CCELoader(db_alias, campaign_name, description = 'Coordinated Canyon Experiment - Measuring turbidity flows in Monterey Submarine Canyon', x3dTerrains = { 'https://stoqs.mbari.org/x3d/MontereyCanyonBeds_1m+5m_1x_src/MontereyCanyonBeds_1m+5m_1x_src_scene.x3d': { 'name': 'MontereyCanyonBeds_1m+5m_1x', 'position': '2232.80938 10346.25515 3543.76722', 'orientation': '-0.98394 0.16804 -0.06017 1.25033', 'centerOfRotation': '0 0 0', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '100.0', 'zFar': '30000.0', 'selected': '1' }, 'https://stoqs.mbari.org/x3d/Monterey25_1x/Monterey25_1x_src_scene.x3d': { 'name': 'Monterey25_1x', 'position': '-32985.28634 88026.90417 22334.02600', 'orientation': '-0.99875 -0.04772 0.01482 1.31683', 'centerOfRotation': '-20564.015827789044 -1956.065669754069 14112.954469753739', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '-1', 'zFar': '-1', }, }, # Do not check in .grd files to the repository, keep them in the loaders directory grdTerrain=os.path.join(parent_dir, 'MontereyCanyonBeds_1m+5m.grd'), ##grdTerrain=os.path.join(parent_dir, 'Monterey25.grd'), ) # Base OPeNDAP server self.cl.bed_base = 'http://dods.mbari.org/opendap/data/CCE_Processed/BEDs/' # Copied from ProjectLibrary to BEDs SVN working dir for netCDF conversion, and then copied to elvis. # See BEDs/BEDs/Visualization/py/makeBEDNetCDF_CCE.sh self.cl.bed_parms = ['XA', 'YA', 'ZA', 'A', 'XR', 'YR', 'ZR', 'ROT_RATE', 'ROT_COUNT', 'P', 'P_ADJUSTED', 'P_RATE', 'P_SPLINE', 'P_SPLINE_RATE', 'ROT_DIST', 'IMPLIED_VELOCITY', 'BED_DEPTH_CSI', 'BED_DEPTH', 'BED_DEPTH_LI', 'DIST_TOPO', 'TUMBLE_RATE', 'TUMBLE_COUNT', 'TIDE', 'ROT_X', 'ROT_Y', 'ROT_Z', 'AXIS_X', 'AXIS_Y', 'AXIS_Z', 'ANGLE'] # Several BED files: 30200078 to 3020080 # bed_files, bed_platforms, bed_depths must have same number of items; they are zipped together in the load ##self.cl.bed_files = [(f'CanyonEvents/BED3/20151001_20160115/{n}.nc') for n in range(30200078, 30200081)] ##self.cl.bed_platforms = ['BED03'] * len(self.cl.bed_files) ##self.cl.bed_depths = [201] * len(self.cl.bed_files) # Just the event files for the CCE self.cl.bed_files_framegrabs_2015 = [ ('BED04/MBCCE_BED04_20151004_Event20151201/netcdf/40100037_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2015/vnta3872/00_17_50_24.html'), ('BED05/MBCCE_BED05_20151027_Event20151201/netcdf/50200024_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2015/vnta3873/00_29_56_03.html'), ] self.cl.bed_files_framegrabs_2016 = [ ('BED03/20151001_20160115/netcdf/30200078_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2015/vnta3874/00_21_23_28.html'), ('BED06/20151001_20160115/netcdf/60100068_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2015/vnta3870/00_15_38_23.html'), ('BED03/MBCCE_BED03_20160212_Event20160217/netcdf/30300004_decim_traj.nc', ''), ('BED05/MBCCE_BED05_20151027_Event20160115/netcdf/50200054_decim_traj.nc', ''), ('BED05/MBCCE_BED05_20151027_Event20160115/netcdf/50200055_decim_traj.nc', ''), ('BED05/MBCCE_BED05_20151027_Event20160115/netcdf/50200056_decim_traj.nc', ''), ('BED05/MBCCE_BED05_20151027_Event20160115/netcdf/50200057_decim_traj.nc', ''), ('BED03/MBCCE_BED03_20160212_Event20160306/netcdf/30300016_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20160306/netcdf/60200011_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20160306/netcdf/60200012_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20160901/netcdf/60200130_decim_traj.nc', ''), ('BED09/MBCCE_BED09_20160408_Event20160901/netcdf/90100096_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3922/02_55_51_27.html'), ('BED10/MBCCE_BED10_20160408_Event20160901/netcdf/A0100096_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3921/02_05_37_16.html'), # Uncomment to test 3D replay of BED motion - it should rotate only around the X-Axis ##('BED00/Simulated/netcdf/BED00_SIM_rolling_trajectory.nc', ## ''), ] + [ (f'BED09/MBCCE_BED09_20160408_Event20161124/netcdf/901001{n}_full_traj.nc', '') for n in ( list(range(56, 63)) + list(range(64, 65))) ] + [ ('BED09/MBCCE_BED09_20160408_Event20161124/netcdf/90100165_full.nc', ''), ('BED03/MBCCE_BED03_20161005_Event20161124/netcdf/30400015_decim_traj.nc', ''), ('BED10/MBCCE_BED10_20160408_Event20161124/netcdf/A0100154_decim_traj.nc', ''), ('BED04/MBCCE_BED04_20151004_Event20161124/netcdf/40200014_decim_traj.nc', ''), ] self.cl.bed_files_framegrabs_2017 = [ (f'BED09/MBCCE_BED09_20160408_Watch/netcdf/9010000{n}.nc', '') for n in range(4, 8) ] + [ ('BED09/MBCCE_BED09_20160408_Event20170109/netcdf/90100196_full_traj.nc', ''), ('BED11/MBCCE_BED11_20161010_Event20170109/netcdf/B0100026_full_traj.nc', ''), ('BED11/MBCCE_BED11_20161010_Event20170109/netcdf/B0100027_full.nc', ''), ('BED11/MBCCE_BED11_20161010_Event20170109/netcdf/B0100028_full_traj.nc', ''), ('BED00/Simulated/netcdf/BED00_cycle_rot_axes_200_202_trajectory.nc', ''), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200014_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200014_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200015_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200016_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200016_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200017_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200019_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200020_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20161124/netcdf/80200020_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20170109/netcdf/80200034_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20170109/netcdf/80200039_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20170203/netcdf/80200046_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20170218/netcdf/80200050_decim_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED08/MBCCE_BED08_20161005_Event20170218/netcdf/80200052_full_traj.nc', 'http://search.mbari.org/ARCHIVE/frameGrabs/Ventana/stills/2016/vnta3969/00_26_09_00.html'), ('BED11/MBCCE_BED11_20161010_Event20161124/netcdf/B0100012_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20170109/netcdf/60200218_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20170109/netcdf/60200219_decim_traj.nc', ''), ('BED03/MBCCE_BED03_20161005_Event20170203/netcdf/30400034_full_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20170203/netcdf/60200236_decim_traj.nc', ''), ('BED06/MBCCE_BED06_20160222_Event20170218/netcdf/60200246_decim_traj.nc', ''), ('BED11/MBCCE_BED11_20161010_Event20170203/netcdf/B0100036_full_traj.nc', ''), ('BED11/MBCCE_BED11_20161010_Event20170203/netcdf/B0100037_full.nc', ''), ] self.cl.bed_files_framegrabs = self.cl.bed_files_framegrabs_2015 + self.cl.bed_files_framegrabs_2016 + self.cl.bed_files_framegrabs_2017 self.cl.bed_files = [ffg[0] for ffg in self.cl.bed_files_framegrabs] self.cl.bed_framegrabs = [ffg[1] for ffg in self.cl.bed_files_framegrabs] self.cl.bed_platforms = [f.split('/')[0] for f in self.cl.bed_files ] # Execute just before loading BEDs data, as this delays the start of loading mooring data ##self.cl.bed_depths = np.round(self.cl.get_start_bed_depths(), 1) # CCE event start and end times for loading mooring data self.lores_event_times = lores_event_times self.hires_event_times = hires_event_times # CCE SIN (Seafloor Instrument Node) data - all parameters but the timeseriesprofile ADCP data # There are 3 categories of loaded data: # 1. 10-minute resolution entire timeseries of non-profile parameters # 2. Low resolution profile data (ADCP) for a few days around each event # 3. High resolution profile data (ADCP) for a several hours around each event self.cl.ccesin_nominaldepth = 1836 self.cl.ccesin_base = 'http://dods.mbari.org/opendap/data/CCE_Processed/SIN/' self.cl.ccesin_files = [ '20151013/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20151013_timecorrected.nc', '20151013/OX/MBCCE_SIN_OX_20151013_timecorrected.nc', '20151013/FLNTU/MBCCE_SIN_FLNTU_20151013_timecorrected.nc', '20151013/ADCP300/MBCCE_SIN_ADCP300_20151013.nc', '20151013/ADCP600/MBCCE_SIN_ADCP600_20151013.nc', '20151013/ADCP1200/MBCCE_SIN_ADCP1200_20151013.nc', '20160417/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20160417_timecorrected.nc', '20160417/OX/MBCCE_SIN_OX_20160417_timecorrected.nc', '20160417/FLNTU/MBCCE_SIN_FLNTU_20160417_timecorrected.nc', '20161018/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20161018_timecorrected.nc', '20161018/OX/MBCCE_SIN_OX_20161018_timecorrected.nc', '20161018/FLNTU/MBCCE_SIN_FLNTU_20161018_timecorrected.nc', ] self.cl.ccesin_parms = [ 'pressure', 'temperature', 'conductivity', 'turbidity', 'optical_backscatter', 'oxygen', 'saturation', 'optode_temperature', 'chlor', 'ntu1', 'ntu2', 'Hdg_1215', 'Ptch_1216', 'Roll_1217'] # CCE SIN (Seafloor Instrument Node) data - files and parameters to load for just the events: # Just the timeseriesprofile ADCP data self.cl.ccesin_nominaldepth_ev = self.cl.ccesin_nominaldepth self.cl.ccesin_base_ev = self.cl.ccesin_base self.cl.ccesin_files_ev = [ '20151013/ADCP300/MBCCE_SIN_ADCP300_20151013.nc', '20151013/ADCP600/MBCCE_SIN_ADCP600_20151013.nc', '20151013/ADCP1200/MBCCE_SIN_ADCP1200_20151013.nc', ] self.cl.ccesin_parms_ev = [ 'u_1205', 'v_1206', 'w_1204', 'AGC_1202' ] # Just the timeseries data for the highres period self.cl.ccesin_files_ev_hires = [ '20151013/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20151013_timecorrected.nc', '20151013/OX/MBCCE_SIN_OX_20151013_timecorrected.nc', '20151013/FLNTU/MBCCE_SIN_FLNTU_20151013_timecorrected.nc', '20160417/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20160417_timecorrected.nc', '20160417/OX/MBCCE_SIN_OX_20160417_timecorrected.nc', '20160417/FLNTU/MBCCE_SIN_FLNTU_20160417_timecorrected.nc', '20161018/CTDOBSTrans/MBCCE_SIN_CTDOBSTrans_20161018_timecorrected.nc', '20161018/OX/MBCCE_SIN_OX_20161018_timecorrected.nc', '20161018/FLNTU/MBCCE_SIN_FLNTU_20161018_timecorrected.nc', ] self.cl.ccesin_parms_ev_hires = [ 'pressure', 'temperature', 'conductivity', 'turbidity', 'optical_backscatter', 'oxygen', 'saturation', 'optode_temperature', 'chlor', 'ntu1', 'ntu2', 'Hdg_1215', 'Ptch_1216', 'Roll_1217'] # MS1 ADCP data - timeseries data self.cl.ccems1_nominal_depth = 225 self.cl.ccems1_base = 'http://dods.mbari.org/opendap/data/CCE_Archive/MS1/' self.cl.ccems1_files = [ '20151006/ADCP300/MBCCE_MS1_ADCP300_20151006.nc', '20151006/Aquadopp2000/MBCCE_MS1_Aquadopp2000_20151006.nc', '20151006/CTOBSTrans9m/MBCCE_MS1_CTOBSTrans9m_20151006.nc', '20151006/TD65m/MBCCE_MS1_TD65m_20151006.nc', '20151006/TU35m/MBCCE_MS1_TU35m_20151006.nc', '20151006/TU65m/MBCCE_MS1_TU65m_20151006.nc', ] self.cl.ccems1_parms = [ 'Hdg_1215', 'Ptch_1216', 'Roll_1217', 'P_1', 'T_1211', 'T_28', 'S_41', 'ST_70', 'tran_4010', 'ATTN_55', 'NEP_56', 'Trb_980', ] # MS1 ADCP data - timeseriesprofile (ADCP) data self.cl.ccems1_nominal_depth_ev = self.cl.ccems1_nominal_depth self.cl.ccems1_base_ev = self.cl.ccems1_base self.cl.ccems1_files_ev = [ '20151006/ADCP300/MBCCE_MS1_ADCP300_20151006.nc', '20151006/Aquadopp2000/MBCCE_MS1_Aquadopp2000_20151006.nc', ] self.cl.ccems1_parms_ev = [ 'u_1205', 'v_1206', 'w_1204', 'AGC_1202' ] # MS2 ADCP data - timeseries data self.cl.ccems2_nominal_depth = 462 self.cl.ccems2_base = 'http://dods.mbari.org/opendap/data/CCE_Archive/MS2/' self.cl.ccems2_files = [ '20151005/ADCP300/MBCCE_MS2_ADCP300_20151005.nc', '20151005/CTD9m/MBCCE_MS2_CTD9m_20151005.nc', '20151005/TU9m/MBCCE_MS2_TU9m_20151005.nc', ] self.cl.ccems2_parms = [ 'Hdg_1215', 'Ptch_1216', 'Roll_1217', 'D_3', 'P_1', 'T_28', 'S_41', 'NEP_56', 'Trb_980', ] # MS2 ADCP data - timeseriesprofile (ADCP) data self.cl.ccems2_nominal_depth_ev = self.cl.ccems2_nominal_depth self.cl.ccems2_base_ev = self.cl.ccems2_base self.cl.ccems2_files_ev = [ '20151005/ADCP300/MBCCE_MS2_ADCP300_20151005.nc', ] self.cl.ccems2_parms_ev = [ 'u_1205', 'v_1206', 'w_1204', 'AGC_1202' ] # MS3 ADCP and CTD data - timeseries data self.cl.ccems3_nominal_depth = 764 self.cl.ccems3_base = 'http://dods.mbari.org/opendap/data/CCE_Archive/MS3/' self.cl.ccems3_files = [ '20151005/ADCP300/MBCCE_MS3_ADCP300_20151005.nc', '20151005/Aquadopp2000/MBCCE_MS3_Aquadopp2000_20151005.nc', '20151005/CT9m/MBCCE_MS3_CT9m_20151005.nc', '20151005/TU9m/MBCCE_MS3_TU9m_20151005.nc', ] self.cl.ccems3_parms = [ 'Hdg_1215', 'Ptch_1216', 'Roll_1217', 'P_1', 'T_1211', 'NEP1_56', 'T_28', 'S_41', 'ST_70', 'tran_4010', 'ATTN_55', ] # MS3 ADCP data - timeseriesprofile (ADCP) data self.cl.ccems3_nominal_depth_ev = self.cl.ccems3_nominal_depth self.cl.ccems3_base_ev = self.cl.ccems3_base self.cl.ccems3_files_ev = [ '20151005/ADCP300/MBCCE_MS3_ADCP300_20151005.nc', '20151005/Aquadopp2000/MBCCE_MS3_Aquadopp2000_20151005.nc', ] self.cl.ccems3_parms_ev = [ 'u_1205', 'v_1206', 'w_1204', 'AGC_1202' ] # MS4 ADCP - 20151005 data files are corrupted ##self.cl.ccems4_nominal_depth = 462 ##self.cl.ccems4_base = 'http://dods.mbari.org/opendap/data/CCE_Archive/MS4...' ##self.cl.ccems4_files = [ '' ] ##self.cl.ccems4_parms = [ 'u_1205', 'v_1206', 'w_1204', 'AGC_1202', ] ##self.cl.ccems4_parms = [ 'u_1205', 'v_1206', 'w_1204', 'AGC_1202', 'Hdg_1215', 'Ptch_1216', 'Roll_1217'] # MS5 ADCP data - timeseries data self.cl.ccems5_nominal_depth = 1315 self.cl.ccems5_base = 'http://dods.mbari.org/opendap/data/CCE_Archive/MS5/' self.cl.ccems5_files = [ '20151020/ADCP300/MBCCE_MS5_ADCP300_20151020.nc', ] self.cl.ccems5_parms = [ 'Hdg_1215', 'Ptch_1216', 'Roll_1217'] # MS3 ADCP data - timeseriesprofile (ADCP) data self.cl.ccems5_nominal_depth_ev = self.cl.ccems5_nominal_depth self.cl.ccems5_base_ev = self.cl.ccems5_base self.cl.ccems5_files_ev = [ '20151020/ADCP300/MBCCE_MS5_ADCP300_20151020.nc', ] self.cl.ccems5_parms_ev = [ 'u_1205', 'v_1206', 'w_1204', 'AGC_1202' ] # Full-deployment files, exatracted from SSDS with stride of 60 ##self.cl.ccesin_base = 'http://dods.mbari.org/opendap/data/ssdsdata/deployments/ccesin2015/201510/' ##self.cl.ccesin_files = [ ## 'ccesin2015_aanderaaoxy_20151013.nc', ## 'ccesin2015_adcp1825_20151013.nc', ## 'ccesin2015_adcp1827_20151013.nc', ## 'ccesin2015_adcp1828_20151013.nc', ## 'ccesin2015_ecotriplet_20151013.nc', ## 'ccesin2015_sbe16_20151013.nc', ## ] ##self.cl.ccesin_base = 'http://dods.mbari.org/opendap/data/ssdsdata/deployments/ccesin20160115/201601/' ##self.cl.ccesin_files = [ ## ##'ccesin20160115_aanderaaoxy_20160115.nc', ## 'ccesin20160115_adcp1825_20160115.nc', ## 'ccesin20160115_adcp1827_20160115.nc', ## 'ccesin20160115_adcp1828_20160115.nc', ## ##'ccesin20160115_ecotriplet_20160115.nc', ## ##'ccesin20160115_sbe16_20160115.nc', ## ] ##self.cl.ccesin_parms = [ ## 'u_component_uncorrected', 'v_component_uncorrected', ## 'echo_intensity_beam1', ## #'echo_intensity_beam2', 'echo_intensity_beam3', 'echo_intensity_beam4', ## #'std_head', 'std_pitch', 'std_roll', 'xdcr_temperature', ## ##'Pressure', 'Salinity', 'Temperature', ## ##'AirSaturation', 'Oxygen', ## ##'Chlor', 'NTU1', 'NTU2', ## ] # Execute the load for trajectory representation self.cl.process_command_line()
cl = CCELoader('stoqs_cce2015', 'Coordinated Canyon Experiment', description = 'Coordinated Canyon Experiment - Measuring turbidity flows in Monterey Submarine Canyon', x3dTerrains = { 'http://stoqs.mbari.org/x3d/MontereyCanyonBeds_1m+5m_1x_src/MontereyCanyonBeds_1m+5m_1x_src_scene.x3d': { 'name': 'MontereyCanyonBeds_1m+5m_1x', 'position': '2232.80938 10346.25515 3543.76722', 'orientation': '-0.98394 0.16804 -0.06017 1.25033', 'centerOfRotation': '0 0 0', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '100.0', 'zFar': '30000.0', 'selected': '1' }, 'http://stoqs.mbari.org/x3d/Monterey25_1x/Monterey25_1x_src_scene.x3d': { 'name': 'Monterey25_1x', 'position': '-32985.28634 88026.90417 22334.02600', 'orientation': '-0.99875 -0.04772 0.01482 1.31683', 'centerOfRotation': '-20564.015827789044 -1956.065669754069 14112.954469753739', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '-1', 'zFar': '-1', }, }, # Do not check in .grd files to the repository, keep them in the loaders directory ##grdTerrain=os.path.join(parent_dir, 'MontereyCanyonBeds_1m+5m.grd'), grdTerrain=os.path.join(parent_dir, 'Monterey25.grd'), )
import sys from datetime import datetime parent_dir = os.path.join(os.path.dirname(__file__), "../") sys.path.insert(0, parent_dir) # settings.py is one dir up from CCE import CCELoader cl = CCELoader('stoqs_cce2015', 'Coordinated Canyon Experiment', description = 'Coordinated Canyon Experiment - Measuring turbidity flows in Monterey Submarine Canyon', x3dTerrains = { 'http://stoqs.mbari.org/terrain/MontereyCanyonBeds_1m+5m_1x_src/MontereyCanyonBeds_1m+5m_1x_src_scene.x3d': { 'position': '2232.80938 10346.25515 3543.76722', 'orientation': '-0.98394 0.16804 -0.06017 1.25033', 'centerOfRotation': '0 0 0', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '100.0', 'zFar': '30000.0', }, }, # Do not check in .grd files to the repository, keep them in the loaders directory grdTerrain=os.path.join(parent_dir, 'MontereyCanyonBeds_1m+5m.grd'), ) # Base OPeNDAP server cl.bed_base = 'http://elvis64.shore.mbari.org/opendap/data/CCE_Processed/BEDs/' # Copied from ProjectLibrary to BEDs SVN working dir for netCDF conversion, and then copied to elvis. # See BEDs/BEDs/Visualization/py/makeBEDNetCDF_CCE.sh
def __init__(self, db_alias='stoqs_bed_viz', campaign_name='BED rotation visualization'): self.cl = CCELoader( db_alias, campaign_name, description= 'Bentic Event Detector quaternion data visualization database', x3dTerrains={ 'https://stoqs.mbari.org/x3d/MontereyCanyonBeds_1m+5m_1x_src/MontereyCanyonBeds_1m+5m_1x_src_scene.x3d': { 'name': 'MontereyCanyonBeds_1m+5m_1x', 'position': '2232.80938 10346.25515 3543.76722', 'orientation': '-0.98394 0.16804 -0.06017 1.25033', 'centerOfRotation': '0 0 0', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '100.0', 'zFar': '30000.0', 'selected': '1' }, 'https://stoqs.mbari.org/x3d/Monterey25_1x/Monterey25_1x_src_scene.x3d': { 'name': 'Monterey25_1x', 'position': '-32985.28634 88026.90417 22334.02600', 'orientation': '-0.99875 -0.04772 0.01482 1.31683', 'centerOfRotation': '-20564.015827789044 -1956.065669754069 14112.954469753739', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '-1', 'zFar': '-1', }, }, # Do not check in .grd files to the repository, keep them in the loaders directory grdTerrain=os.path.join(parent_dir, 'MontereyCanyonBeds_1m+5m.grd'), ##grdTerrain=os.path.join(parent_dir, 'Monterey25.grd'), ) # Base OPeNDAP server self.cl.bed_base = 'http://dods.mbari.org/opendap/data/CCE_Processed/BEDs/' # Copied from ProjectLibrary to BEDs SVN working dir for netCDF conversion, and then copied to elvis. # See BEDs/BEDs/Visualization/py/makeBEDNetCDF_CCE.sh self.cl.bed_parms = [ 'XA', 'YA', 'ZA', 'A', 'XR', 'YR', 'ZR', 'ROT_RATE', 'ROT_COUNT', 'P', 'P_ADJUSTED', 'P_RATE', 'P_SPLINE', 'P_SPLINE_RATE', 'ROT_DIST', 'IMPLIED_VELOCITY', 'BED_DEPTH_CSI', 'BED_DEPTH', 'BED_DEPTH_LI', 'DIST_TOPO', 'TUMBLE_RATE', 'TUMBLE_COUNT', 'TIDE', 'ROT_X', 'ROT_Y', 'ROT_Z', 'AXIS_X', 'AXIS_Y', 'AXIS_Z', 'ANGLE' ] # Just the event files for the CCE self.cl.bed_files_framegrabs_2016 = [ # Uncomment to test 3D replay of BED motion # - Gymbol lock problems mess up the visualization, so this remains confusing ##('BED00/Simulated/netcdf/BED00_SIM_rolling_trajectory.nc', ''), ##('BED00/Simulated/netcdf/BED00_cycle_rot_axes_200_202_trajectory.nc', ''), ##('BED00/Simulated/netcdf/BED00_cycle_rot_axes_300_302_trajectory.nc', ''), # Uncomment to load data from Bench orientation video ('BED00/2013_04_29_Bench_Orientation/BED00092.nc', 'http://dods.mbari.org/data/CCE_Processed/BEDs/Notes/BEDS_2013_04_29_Video_X3D_orientation.m4v' ), ] self.cl.bed_files_framegrabs = self.cl.bed_files_framegrabs_2016 self.cl.bed_files = [ffg[0] for ffg in self.cl.bed_files_framegrabs] self.cl.bed_framegrabs = [ ffg[1] for ffg in self.cl.bed_files_framegrabs ] self.cl.bed_platforms = [f.split('/')[0] for f in self.cl.bed_files] self.cl.process_command_line()
cl = CCELoader( 'stoqs_cce2015', 'Coordinated Canyon Experiment', description= 'Coordinated Canyon Experiment - Measuring turbidity flows in Monterey Submarine Canyon', x3dTerrains={ 'http://stoqs.mbari.org/x3d/MontereyCanyonBeds_1m+5m_1x_src/MontereyCanyonBeds_1m+5m_1x_src_scene.x3d': { 'name': 'MontereyCanyonBeds_1m+5m_1x', 'position': '2232.80938 10346.25515 3543.76722', 'orientation': '-0.98394 0.16804 -0.06017 1.25033', 'centerOfRotation': '0 0 0', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '100.0', 'zFar': '30000.0', 'selected': '1' }, 'http://stoqs.mbari.org/x3d/Monterey25_1x/Monterey25_1x_src_scene.x3d': { 'name': 'Monterey25_1x', 'position': '-32985.28634 88026.90417 22334.02600', 'orientation': '-0.99875 -0.04772 0.01482 1.31683', 'centerOfRotation': '-20564.015827789044 -1956.065669754069 14112.954469753739', 'VerticalExaggeration': '1', 'geoOrigin': '36.80, -121.87, -400', 'speed': '1.0', 'zNear': '-1', 'zFar': '-1', }, }, # Do not check in .grd files to the repository, keep them in the loaders directory grdTerrain=os.path.join(parent_dir, 'MontereyCanyonBeds_1m+5m.grd'), ##grdTerrain=os.path.join(parent_dir, 'Monterey25.grd'), )