Exemple #1
0
    def __init__(self):
        '''
        Reads the NetCDF Dataset
        '''
        self.filename="/gss/gss_work/DRES_OGS_BiGe/Observations/TIME_RAW_DATA/STATIC/Carbon/Dataset_Med_CarbSys.nc"
        self.DataExtractor = DatasetExtractor(self.filename)

        # DATA ELIMINATION in order to not duplicate values with nutrients dataset
        for cruisename in ['METEOR','METEOR51', 'METEOR95','PROSOPE']:
            iCruise = find_index(cruisename, self.DataExtractor.CRUISES)
            for var in ['nitrate','phosphate','silicate','oxygen']:
                ivar    = find_index(var, self.DataExtractor.VARIABLES)
                ii = self.DataExtractor.DATA[-1,:] == (iCruise+1)
                self.DataExtractor.DATA[ivar,ii] = -999.0
Exemple #2
0
class NutrientsReader():
    
    
    
    def __init__(self):
        '''
        Reads the NetCDF Dataset
        '''
        self.filename="/gss/gss_work/DRES_OGS_BiGe/Observations/TIME_RAW_DATA/STATIC/Nutrients/Dataset_Med_Nutrients.nc"
        self.DataExtractor = DatasetExtractor(self.filename)


    def CruiseSelector(self, var,Cruisename):
        '''
        Returns a profile list  by selecting for
        variable (string) and
        Cruisename (string)

        var can be one of these:
         - nitrate
         - phosphate
         - silicate
         - oxygen

         Cruisename can be one of these
            06MT51/2  BIOPT06
            CANARI
            DYFAMED
            DYFAMED/PAPADOC - 99
            MEDCIESM
            MEDGOOS2  MEDGOOS3  MEDGOOS4  MEDGOOS5
            MELISSA 2004
            MT84_3
            NORBAL  NORBAL2 NORBAL3  NORBAL4
            POSEIDONE1M3A
            PROSOPE
            RHOFI 1   RHOFI 2   RHOFI 3
            SINAPSI-3   SINAPSI-4

         Returns a profile list
         
         '''
        return self.DataExtractor.cruiseSelector(var, Cruisename)
    
    def Selector(self,var,T_int, region):
        '''
        Returns a profile list by selecting for
          variable (string),
          T_int   (TimeInterval object)
          region  (region object)

        can be one of these:
         - nitrate
         - phosphate
         - silicate
         - oxygen
         if var is None, no selection is done about variable
         '''
        if var is None:
            Profilelist=list()
            for myvar in ['nitrate','phosphate','silicate','oxygen']:
                sublist=self.DataExtractor.selector(myvar, T_int, region)
                for p in sublist: 
                    if not p in Profilelist: Profilelist.append(p)
            return Profilelist
        else:
            return self.DataExtractor.selector(var, T_int, region)
        
    def getAllprofiles(self, T_INT):
        Reg = Rectangle(-6,36,30,46)
        return self.Selector(None,T_INT, Reg)
Exemple #3
0
 def __init__(self):
     '''
     Reads the NetCDF Dataset
     '''
     self.filename="/gss/gss_work/DRES_OGS_BiGe/Observations/TIME_RAW_DATA/STATIC/Nutrients/Dataset_Med_Nutrients.nc"
     self.DataExtractor = DatasetExtractor(self.filename)
Exemple #4
0
class CarbonReader(DatasetExtractor):
    
    def __init__(self):
        '''
        Reads the NetCDF Dataset
        '''
        self.filename="/gss/gss_work/DRES_OGS_BiGe/Observations/TIME_RAW_DATA/STATIC/Carbon/Dataset_Med_CarbSys.nc"
        self.DataExtractor = DatasetExtractor(self.filename)

        # DATA ELIMINATION in order to not duplicate values with nutrients dataset
        for cruisename in ['METEOR','METEOR51', 'METEOR95','PROSOPE']:
            iCruise = find_index(cruisename, self.DataExtractor.CRUISES)
            for var in ['nitrate','phosphate','silicate','oxygen']:
                ivar    = find_index(var, self.DataExtractor.VARIABLES)
                ii = self.DataExtractor.DATA[-1,:] == (iCruise+1)
                self.DataExtractor.DATA[ivar,ii] = -999.0

 
    def CruiseSelector(self, var,Cruisename):
        '''
        Returns a profile list  by selecting for
        variable (string) and
        Cruisename (string)

        var can be one of these:
         - DIC
         - ALK
         - temp
         - theta
         - salinity
         - silicate
         - nitrate
         - phosphate
         - oxygen
         - sigma_theta
         - density
         - sigma_t
         - pH25_sws
         - pH25_T

         Cruisename can be one of these
            METEOR   METEOR51   METEOR95
            BOUM 2008
            PROSOPE
            EGEO APRIL          EGEO SEPT
            REGINA MARIS
            Garcia del Cid
            SESAME - ADRIATICO 2008
            CARBOGIB 1     CARBOGIB 2    CARBOGIB 3
            CARBOGIB 4     CARBOGIB 5    CARBOGIB 6
            GIFT 1      GIFT 2
            DYFAMED


         Returns a profile list
         
         '''
        return self.DataExtractor.cruiseSelector(var, Cruisename)
    
    def Selector(self,var,T_int, region):
        '''
        Returns a profile list by selecting for
          variable (string),
          T_int   (TimeInterval object)
          region  (region object)

        var can be one of these:
         - DIC
         - ALK
         - temp
         - theta
         - salinity
         - silicate
         - nitrate
         - phosphate
         - oxygen
         - sigma_theta
         - density
         - sigma_t
         - pH25_sws
         - pH25_T
         '''

        if var is None:
            Profilelist = list()
            for myvar in ['nitrate','phosphate','oxygen','silicate','DIC','ALK','temp','salinity','pH25_T']:
                Profilelist.extend(self.DataExtractor.selector(myvar, T_int, region))
            return Profilelist
        return self.DataExtractor.selector(var, T_int, region)