Beispiel #1
0
    def __init__(self):
        inputs = [
            ComplexInput(
                'resource',
                'Resource',
                abstract=
                'NetCDF Files or archive (tar/zip) containing netCDF files.',
                metadata=[Metadata('Info')],
                min_occurs=1,
                max_occurs=1000,
                supported_formats=[
                    Format('application/x-netcdf'),
                    Format('application/x-tar'),
                    Format('application/zip'),
                ]),

            # BoundingBoxInput('bbox', 'Bounding Box',
            #                  abstract='Bounding box to define the region for weather classification.'
            #                           ' Default: -80, 20, 50, 70.',
            #                  crss=['epsg:4326'],
            #                  min_occurs=0),
            LiteralInput(
                "season",
                "Time region",
                abstract=
                "Select the months to define the time region (all == whole year will be analysed)",
                default="DJF",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
                allowed_values=_TIMEREGIONS_.keys()),
            LiteralInput(
                'BBox',
                'Bounding Box',
                data_type='string',
                abstract="Enter a bbox: min_lon, max_lon, min_lat, max_lat."
                " min_lon=Western longitude,"
                " max_lon=Eastern longitude,"
                " min_lat=Southern or northern latitude,"
                " max_lat=Northern or southern latitude."
                " For example: -80,50,20,70",
                min_occurs=1,
                max_occurs=1,
                default='-80,50,20,70',
            ),
            LiteralInput(
                "period",
                "Period for weatherregime calculation",
                abstract="Period for analysing the dataset",
                default="19700101-20051231",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
            ),
            LiteralInput(
                "anualcycle",
                "Period for anualcycle calculation",
                abstract="Period for anual cycle calculation",
                default="19700101-19991231",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
            ),
            LiteralInput("method",
                         "Method of annual cycle calculation",
                         abstract="Method of annual cycle calculation",
                         default="cdo",
                         data_type='string',
                         min_occurs=1,
                         max_occurs=1,
                         allowed_values=['ocgis', 'cdo']),
            LiteralInput("sseas",
                         "Serial or multiprocessing for annual cycle",
                         abstract="Serial or multiprocessing for annual cycle",
                         default="multi",
                         data_type='string',
                         min_occurs=1,
                         max_occurs=1,
                         allowed_values=['serial', 'multi']),
            LiteralInput("kappa",
                         "Nr of Weather regimes",
                         abstract="Set the number of clusters to be detected",
                         default='4',
                         data_type='integer',
                         min_occurs=1,
                         max_occurs=1,
                         allowed_values=range(2, 11)),
        ]

        outputs = [
            ComplexOutput(
                "Routput_graphic",
                "Weather Regime Pressure map",
                abstract="Weather Classification",
                supported_formats=[Format('image/pdf')],
                as_reference=True,
            ),
            ComplexOutput(
                "output_pca",
                "R - datafile",
                abstract="Principal components (PCA)",
                supported_formats=[Format('text/plain')],
                as_reference=True,
            ),
            ComplexOutput(
                "output_classification",
                "R - workspace",
                abstract="Weather regime classification",
                supported_formats=[Format("application/octet-stream")],
                as_reference=True,
            ),
            ComplexOutput(
                'output_netcdf',
                'Subsets for one dataset',
                abstract=
                "Prepared netCDF file as input for weatherregime calculation",
                as_reference=True,
                supported_formats=[Format('application/x-netcdf')]),
            ComplexOutput('output_log',
                          'Logging information',
                          abstract="Collected logs during process run.",
                          as_reference=True,
                          supported_formats=[Format('text/plain')]),
        ]
        super(WeatherregimesmodelProcess, self).__init__(
            self._handler,
            identifier="weatherregimes_model",
            title="Weather Regimes (based on climate model data)",
            abstract=
            'k-mean cluster analyse of the pressure patterns. Clusters are equivalent to weather regimes',
            version="0.10",
            metadata=[
                Metadata('LSCE', 'http://www.lsce.ipsl.fr/en/index.php'),
                Metadata('Doc',
                         'http://flyingpigeon.readthedocs.io/en/latest/'),
            ],
            inputs=inputs,
            outputs=outputs,
            status_supported=True,
            store_supported=True,
        )
Beispiel #2
0
    def __init__(self):
        inputs = [
            ComplexInput(
                'resource',
                'Resource',
                abstract=
                'NetCDF Files or archive (tar/zip) containing netCDF files.',
                metadata=[Metadata('Info')],
                min_occurs=1,
                max_occurs=1000,
                supported_formats=[
                    Format('application/x-netcdf'),
                    Format('application/x-tar'),
                    Format('application/zip'),
                ]),
            LiteralInput(
                "Rdat",
                "R - workspace",
                abstract=
                "R workspace as output from weather regime reference process",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
            ),
            LiteralInput(
                "dat",
                "R - datafile",
                abstract=
                "R datafile as output from weather regime reference process",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
            ),
            LiteralInput(
                "netCDF",
                "netCDF reference",
                abstract=
                "netCDF file as output from weather regime reference process",
                data_type='string',
                min_occurs=0,
                max_occurs=1,
            ),
            LiteralInput(
                "season",
                "Time region",
                abstract=
                "Select the months to define the time region (all == whole year will be analysed)",
                default="DJF",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
                allowed_values=_TIMEREGIONS_.keys()),
            LiteralInput(
                "period",
                "Period for weatherregime calculation",
                abstract="Period for analysing the dataset",
                default="19700101-20101231",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
            ),
            LiteralInput(
                "anualcycle",
                "Period for anualcycle calculation",
                abstract="Period for anual cycle calculation",
                default="19700101-19991231",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
            ),
        ]
        outputs = [
            ComplexOutput(
                "output_pca",
                "R - datafile",
                abstract="Principal components (PCA)",
                supported_formats=[Format('text/plain')],
                as_reference=True,
            ),
            ComplexOutput(
                "output_classification",
                "R - workspace",
                abstract="Weather regime classification",
                supported_formats=[Format("application/octet-stream")],
                as_reference=True,
            ),
            ComplexOutput(
                "output_frequency",
                "Frequency",
                abstract="Weather regime frequency values per year",
                supported_formats=[Format('text/plain')],
                as_reference=True,
            ),
            ComplexOutput(
                'output_netcdf',
                'Subsets for one dataset',
                abstract=
                "Prepared netCDF file as input for weatherregime calculation",
                as_reference=True,
                supported_formats=[Format('application/x-netcdf')]),
            ComplexOutput('output_log',
                          'Logging information',
                          abstract="Collected logs during process run.",
                          as_reference=True,
                          supported_formats=[Format('text/plain')]),
        ]

        super(WeatherregimesprojectionProcess, self).__init__(
            self._handler,
            identifier="weatherregimes_projection",
            title=
            "Weather Regimes (Projection based on precalculated statistics)",
            abstract=
            'k-mean cluster analyse of the pressure patterns. Clusters are equivalent to weather regimes',
            version="0.10",
            metadata=[
                Metadata('LSCE', 'http://www.lsce.ipsl.fr/en/index.php'),
                Metadata('Doc',
                         'http://flyingpigeon.readthedocs.io/en/latest/'),
            ],
            inputs=inputs,
            outputs=outputs,
            status_supported=True,
            store_supported=True,
        )
    def __init__(self):
        inputs = [

            # self.BBox = self.addBBoxInput(
            #     identifier="BBox",
            #     title="Bounding Box",
            #     abstract="coordinates to define the region for weather classification ('EPSG:4326')",
            #     minOccurs=1,
            #     maxOccurs=1,
            #     crss=['EPSG:4326']
            #     )

            # Literal Input Data
            # ------------------

            # self.BBox = self.addLiteralInput(
            #     identifier="BBox",
            #     title="Region",
            #     abstract="coordinates to define the region: (minlon,maxlon,minlat,maxlat)",
            #     default='-80,22.5,50,70', #  cdo syntax: 'minlon,maxlon,minlat,maxlat' ;
            #  ocgis syntax (minlon,minlat,maxlon,maxlat)
            #     type=type(''),
            #     minOccurs=1,
            #     maxOccurs=1,
            #     )
            LiteralInput(
                "season",
                "Time region",
                abstract=
                "Select the months to define the time region (all == whole year will be analysed)",
                default="DJF",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
                allowed_values=_TIMEREGIONS_.keys() + [
                    'January', 'February', 'March', 'April', 'May', 'June',
                    'July', 'August', 'September', 'October', 'November',
                    'December'
                ]),
            LiteralInput(
                'BBox',
                'Bounding Box',
                data_type='string',
                abstract="Enter a bbox: min_lon, max_lon, min_lat, max_lat."
                " min_lon=Western longitude,"
                " max_lon=Eastern longitude,"
                " min_lat=Southern or northern latitude,"
                " max_lat=Northern or southern latitude."
                " For example: -80,50,20,70",
                min_occurs=1,
                max_occurs=1,
                default='-80,50,20,70',
            ),
            LiteralInput(
                "period",
                "Period for weatherregime calculation",
                abstract="Period for analysing the dataset",
                default="19700101-20101231",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
            ),
            LiteralInput(
                "anualcycle",
                "Period for anualcycle calculation",
                abstract="Period for anual cycle calculation",
                default="19700101-19991231",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
            ),
            LiteralInput("reanalyses",
                         "Reanalyses Data",
                         abstract="Choose a reanalyses dataset for comparison",
                         default="NCEP_slp",
                         data_type='string',
                         min_occurs=1,
                         max_occurs=1,
                         allowed_values=_PRESSUREDATA_),
            LiteralInput("method",
                         "Method of annual cycle calculation",
                         abstract="Method of annual cycle calculation",
                         default="ocgis",
                         data_type='string',
                         min_occurs=1,
                         max_occurs=1,
                         allowed_values=['ocgis', 'cdo']),
            LiteralInput("sseas",
                         "Serial or multiprocessing for annual cycle",
                         abstract="Serial or multiprocessing for annual cycle",
                         default="multi",
                         data_type='string',
                         min_occurs=1,
                         max_occurs=1,
                         allowed_values=['serial', 'multi']),
            LiteralInput("kappa",
                         "Nr of Weather regimes",
                         abstract="Set the number of clusters to be detected",
                         default='4',
                         data_type='integer',
                         min_occurs=1,
                         max_occurs=1,
                         allowed_values=range(2, 11)),
        ]

        outputs = [
            ComplexOutput(
                "Routput_graphic",
                "Weather Regime Pressure map",
                abstract="Weather Classification",
                supported_formats=[Format('image/pdf')],
                as_reference=True,
            ),
            ComplexOutput(
                "output_pca",
                "R - datafile",
                abstract="Principal components (PCA)",
                supported_formats=[Format('text/plain')],
                as_reference=True,
            ),
            ComplexOutput(
                "output_classification",
                "R - workspace",
                abstract="Weather regime classification",
                supported_formats=[Format("application/octet-stream")],
                as_reference=True,
            ),
            ComplexOutput(
                'output_netcdf',
                'Subsets for one dataset',
                abstract=
                "Prepared netCDF file as input for weatherregime calculation",
                as_reference=True,
                supported_formats=[Format('application/x-netcdf')]),
            ComplexOutput('output_log',
                          'Logging information',
                          abstract="Collected logs during process run.",
                          as_reference=True,
                          supported_formats=[Format('text/plain')]),
        ]

        super(WeatherregimesreanalyseProcess, self).__init__(
            self._handler,
            identifier="weatherregimes_reanalyse",
            title="Weather Regimes (based on reanalyses data)",
            abstract=
            'k-mean cluster analyse of the pressure patterns. Clusters are equivalent to weather regimes',
            version="0.10",
            metadata=[
                Metadata('LSCE', 'http://www.lsce.ipsl.fr/en/index.php'),
                Metadata('Doc',
                         'http://flyingpigeon.readthedocs.io/en/latest/'),
            ],
            inputs=inputs,
            outputs=outputs,
            status_supported=True,
            store_supported=True,
        )
Beispiel #4
0
    def __init__(self):
        inputs = [

            LiteralInput("reanalyses", "Reanalyses Data",
                         abstract="Choose a reanalyses dataset for comparison",
                         default="NCEP_slp",
                         data_type='string',
                         min_occurs=1,
                         max_occurs=1,
                         allowed_values=_PRESSUREDATA_
                         ),

            # LiteralInput("timeres", "Reanalyses temporal resolution",
            #              abstract="Temporal resolution of the reanalyses (only for 20CRV2)",
            #              default="day",
            #              data_type='string',
            #              min_occurs=0,
            #              max_occurs=1,
            #              allowed_values=['day', '6h']
            #              ),

            LiteralInput('BBox', 'Bounding Box',
                         data_type='string',
                         abstract="Enter a bbox: min_lon, max_lon, min_lat, max_lat."
                            " min_lon=Western longitude,"
                            " max_lon=Eastern longitude,"
                            " min_lat=Southern or northern latitude,"
                            " max_lat=Northern or southern latitude."
                            " For example: -80,50,20,70",
                         min_occurs=0,
                         max_occurs=1,
                         default='-20,40,30,70',
                         ),
            LiteralInput("season", "Time region",
                         abstract="Select the months to define the time region (all == whole year will be analysed)",
                         default="DJF",
                         data_type='string',
                         min_occurs=1,
                         max_occurs=1,
                         allowed_values=['January','February','March','April','May','June','July','August','September','October','November','December'] + _TIMEREGIONS_.keys()
                         ),
            LiteralInput('dateSt', 'Start date of analysis period',
                         data_type='date',
                         abstract='First day of the period to be analysed',
                         default='1948-01-01',
                         min_occurs=0,
                         max_occurs=1,
                         ),

            LiteralInput('dateEn', 'End date of analysis period',
                         data_type='date',
                         abstract='Last day of the period to be analysed',
                         default='1950-12-31',
                         min_occurs=0,
                         max_occurs=1,
                         ),

            LiteralInput("dist", "Distance",
                         abstract="Distance function to define analogues",
                         default='euclidean',
                         data_type='string',
                         min_occurs=0,
                         max_occurs=1,
                         allowed_values=['euclidean', 'mahalanobis', 'cosine']
                         ),

            LiteralInput("method", "Method",
                         abstract="Method of calculation: Python(full dist matrix at once), R(full dist matrix at once), R_wrap(dist matrix row by row on multiCPUs)",
                         default='Python_wrap',
                         data_type='string',
                         min_occurs=0,
                         max_occurs=1,
                         allowed_values=['Python', 'Python_wrap', 'R', 'R_wrap']
                         ),
        ]

        outputs = [

            ComplexOutput("ldist", "Distances File",
                          abstract="mulit-column text file",
                          supported_formats=[Format("text/plain")],
                          as_reference=True,
                          ),
            ComplexOutput("ldist_seas", "Distances File for selected season (selection from all results)",
                          abstract="mulit-column text file",
                          supported_formats=[Format("text/plain")],
                          as_reference=True,
                          ),
            ComplexOutput("ld_pdf", "Scatter plot dims/theta",
                          abstract="Scatter plot dims/theta",
                          supported_formats=[Format('image/pdf')],
                          as_reference=True,
                          ),
            ComplexOutput("ld2_pdf", "Scatter plot dims/theta",
                          abstract="Scatter plot dims/theta",
                          supported_formats=[Format('image/pdf')],
                          as_reference=True,
                          ),
            ComplexOutput("ld2_seas_pdf", "Scatter plot dims/theta for season",
                          abstract="Scatter plot dims/theta for season",
                          supported_formats=[Format('image/pdf')],
                          as_reference=True,
                          ),
            ComplexOutput('output_log', 'Logging information',
                          abstract="Collected logs during process run.",
                          as_reference=True,
                          supported_formats=[Format('text/plain')]
                          ),
        ]

        super(LocaldimsReaProcess, self).__init__(
            self._handler,
            identifier="localdims_rea",
            title="Calculation of local dimentions and persistence (based on reanalyses data)",
            abstract='Local dimentions and persistence',
            version="0.10",
            metadata=[
                Metadata('LSCE', 'http://www.lsce.ipsl.fr/en/index.php'),
                Metadata('Doc', 'http://flyingpigeon.readthedocs.io/en/latest/'),
            ],
            inputs=inputs,
            outputs=outputs,
            status_supported=True,
            store_supported=True,
        )
Beispiel #5
0
    def __init__(self):
        inputs = [
            ComplexInput(
                'resource',
                'Resource',
                abstract=
                'NetCDF Files or archive (tar/zip) containing daily netCDF files.',
                metadata=[Metadata('Info')],
                min_occurs=1,
                max_occurs=1000,
                supported_formats=[
                    Format('application/x-netcdf'),
                    Format('application/x-tar'),
                    Format('application/zip'),
                ]),
            LiteralInput(
                'BBox',
                'Bounding Box',
                data_type='string',
                abstract="Enter a bbox: min_lon, max_lon, min_lat, max_lat."
                " min_lon=Western longitude,"
                " max_lon=Eastern longitude,"
                " min_lat=Southern or northern latitude,"
                " max_lat=Northern or southern latitude."
                " For example: -80,50,20,70",
                min_occurs=0,
                max_occurs=1,
                default='-20,40,30,70',
            ),
            LiteralInput(
                "level",
                "Vertical level",
                abstract=
                "Vertical level for geopotential (hPa), only if zg variable used",
                default='500',
                data_type='integer',
                min_occurs=0,
                max_occurs=1,
                allowed_values=[1000, 850, 700, 500, 250, 100, 50, 10]),
            LiteralInput(
                "season",
                "Time region",
                abstract=
                "Select the months to define the time region (all == whole year will be analysed)",
                default="DJF",
                data_type='string',
                min_occurs=1,
                max_occurs=1,
                allowed_values=[
                    'January', 'February', 'March', 'April', 'May', 'June',
                    'July', 'August', 'September', 'October', 'November',
                    'December'
                ] + _TIMEREGIONS_.keys()),
            LiteralInput(
                'dateSt',
                'Start date of analysis period',
                data_type='date',
                abstract='First day of the period to be analysed',
                default='2000-01-01',
                min_occurs=0,
                max_occurs=1,
            ),
            LiteralInput(
                'dateEn',
                'End date of analysis period',
                data_type='date',
                abstract='Last day of the period to be analysed',
                default='2002-12-31',
                min_occurs=0,
                max_occurs=1,
            ),
            LiteralInput("dist",
                         "Distance",
                         abstract="Distance function to define analogues",
                         default='euclidean',
                         data_type='string',
                         min_occurs=0,
                         max_occurs=1,
                         allowed_values=['euclidean', 'mahalanobis',
                                         'cosine']),
            LiteralInput(
                "method",
                "Method",
                abstract=
                "Method of calculation: Python(full dist matrix at once), R(full dist matrix at once), R_wrap(dist matrix row by row on multiCPUs)",
                default='Python',
                data_type='string',
                min_occurs=0,
                max_occurs=1,
                allowed_values=['Python', 'Python_wrap', 'R', 'R_wrap']),
        ]

        outputs = [
            ComplexOutput(
                "ldist",
                "Distances File",
                abstract="mulit-column text file",
                supported_formats=[Format("text/plain")],
                as_reference=True,
            ),
            ComplexOutput(
                "ldist_seas",
                "Distances File for selected season (selection from all results)",
                abstract="mulit-column text file",
                supported_formats=[Format("text/plain")],
                as_reference=True,
            ),
            ComplexOutput(
                "ld_pdf",
                "Scatter plot dims/theta",
                abstract="Scatter plot dims/theta",
                supported_formats=[Format('image/pdf')],
                as_reference=True,
            ),
            ComplexOutput(
                "ld2_pdf",
                "Scatter plot dims/theta",
                abstract="Scatter plot dims/theta",
                supported_formats=[Format('image/pdf')],
                as_reference=True,
            ),
            ComplexOutput(
                "ld2_seas_pdf",
                "Scatter plot dims/theta for season",
                abstract="Scatter plot dims/theta for season",
                supported_formats=[Format('image/pdf')],
                as_reference=True,
            ),
            ComplexOutput('output_log',
                          'Logging information',
                          abstract="Collected logs during process run.",
                          as_reference=True,
                          supported_formats=[Format('text/plain')]),
        ]

        super(LocaldimsModProcess, self).__init__(
            self._handler,
            identifier="localdims_mod",
            title=
            "Calculation of local dimentions and persistence (based on climate model data)",
            abstract=
            'Calculation of local dimentions and persistence (based on climate model data)',
            version="0.10",
            metadata=[
                Metadata('LSCE', 'http://www.lsce.ipsl.fr/en/index.php'),
                Metadata('Doc',
                         'http://flyingpigeon.readthedocs.io/en/latest/'),
            ],
            inputs=inputs,
            outputs=outputs,
            status_supported=True,
            store_supported=True,
        )