Matlab toolbox for handling ODV ascii format from OceanDataView adopted by SeaDataNet.
Please also see our python toolbox pyodv for ODV files.

Getting the toolbox

The free and open source Matlab ODV toolbox can be downloaded from https://svn.oss.deltares.nl/repos/openearthtools/trunk/matlab/applications/OceanDataView/ when you join openearth, download the tools with SubVersion and add them to your Matlab path. Subsequently

>> help oceandataview

will show the contents

ODV meta-data csv

odv_metadata.m reads the meta-data csv file, and constructs the urls to the CDI.

                   Data_set_name: {'OGS_ECOMADR_1_SED'}
                      Discipline: {[1x78 char]}
                        Category: {[1x129 char]}
              Variables_measured: {[1x210 char]}
                        Abstract: {'Ecologia del Mar Adriatico (ECOMADR)'}
                     Data_format: {'ODV'}
                       Data_size: NaN
          Data_set_creation_date: 20110513
                      Latitude_1: 45.6638
                      Latitude_2: 45.6638
                     Longitude_1: 13.5962
                     Longitude_2: 13.5962
                           Datum: NaN
             Measuring_area_type: {'point'}
                 Water_depth__m_: NaN
                 Depth_reference: NaN
    Minimum_instrument_depth__m_: NaN
    Maximum_instrument_depth__m_: NaN
                      Start_date: 20060510
                      Start_time: {'00:00:00'}
                        End_date: 20060510
                        End_time: {'00:00:00'}
          Instrument___gear_type: 51
                Track_resolution: NaN
                 Resolution_unit: NaN
                 Time_resolution: NaN
                       Time_unit: NaN
             Vertical_resolution: NaN
                   Vertical_unit: NaN
                   Platform_type: {'unknown'}
                     Cruise_name: NaN
         Alternative_cruise_name: NaN
               Cruise_start_date: NaN
                    Station_name: {'OGS-1-BIO-AA101'}
        Alternative_station_name: 285916
              Station_start_date: 20060510
                      Originator: {[1x114 char]}
             Data_Holding_centre: {[1x114 char]}
                    Project_name: {'ADRiatic sea ECOlogy - ECOlogia del Mar ADRiatico'}
                    Dataset_name: NaN
          Cruise_Summary_Reports: NaN
                Data_Distributor: {[1x100 char]}
              Database_reference: NaN
         Access_ordering_of_data: {'web data access with registration'}
              Access_restriction: {'by negotiation'}
                   CDI_record_id: 1146989
                    LOCAL_CDI_ID: {'285916'}
        CDI_record_creation_date: 20110509
                     CDI_partner: {[1x100 char]}
                        Versions: {{1x1 cell}}
                Download_datenum: {[7.3568e+05]}
                            name: {'285916_20140320_163008.txt'}
                            date: {'20-Mar-2014 15:30:12'}
                           bytes: {[1595]}
                           isdir: {[0]}
                         datenum: {[7.3568e+05]}
                          fnames: {'285916_20140320_163008.txt'}
                        fullfile: {[1x113 char]}
                             url: {'http://seadatanet.maris2.nl/v_cdi_v3/print_wfs.asp?n_code=1146989 '}
                       EDMO_code: {[120]}

ODV file loading, merging and parsing

odvread.m loads an odv file, and resolves the P01 parameter codes and P06 units, and return one struct

             odv_name: {1x25 cell}
        standard_name: {1x25 cell}
                units: {1x25 cell}
           local_name: {1x25 cell}
          local_units: {1x25 cell}
    sdn_standard_name: {1x25 cell}
            sdn_units: {1x25 cell}
        sdn_long_name: {1x25 cell}
      sdn_description: ''
                 data: {1x25 cell}
                 file: [1x1 struct]
                lines: [1x1 struct]
                index: [1x1 struct]
          institution: [1x38 char]
             metadata: [1x1 struct]
         LOCAL_CDI_ID: '285916'
            EDMO_code: 120
               cruise: 'ECOMADR'
                 type: 'B'
                 cast: 1
              station: '1'
        CDI_record_id: {[1146989]}

odv_merge.m merges one parameter from multiple odv files into one struct. This type of information is suited for modellers.

P01 parses the P01.xml, stored it as a mat cache for fats and offline use, and resolves the P01

ODV plotting

odvplot_overview.m plots a map of an ODV file with trajectory. odvplot_overview_kml.m does that in kml format (Google Earth).

odvplot_cast.m plots vertical profiles of one ODV file with profile information.

Acknowledgments

This toolbox has been developed since April 2009 as part of the Deltares in kind contribution to the NODC of the Netherlands. Early 2014 small fixes were made as part of the EMODnet Chemistry 2 project to handle the BODC/SeaDataNet transition from the P011 to the P01 vocabulary.