Esempio n. 1
0
def __obs_case(period, vname_to_level: dict, vname_map: dict, label: str, base_dir: str):
    label_to_config = OrderedDict([(
        label, {
            DataManager.SP_BASE_FOLDER: str(base_dir),
            DataManager.SP_DATASOURCE_TYPE: data_source_types.ALL_VARS_IN_A_FOLDER_IN_NETCDF_FILES_OPEN_EACH_FILE_SEPARATELY,
            DataManager.SP_INTERNAL_TO_INPUT_VNAME_MAPPING: vname_map,
            DataManager.SP_LEVEL_MAPPING: vname_to_level,
            DataManager.SP_OFFSET_MAPPING: vname_to_offset_CRCM5,
            DataManager.SP_MULTIPLIER_MAPPING: vname_to_multiplier_CRCM5,
            DataManager.SP_VARNAME_TO_FILENAME_PREFIX_MAPPING: vname_to_fname_prefix_CRCM5,
            "out_folder": f"lake_effect_analysis_icefix_{label}_{period.start.year}-{period.end.year}"
        }
    )])

    calculate_lake_effect_snowfall_each_year_in_parallel(label_to_config=label_to_config, period=period, nprocs_to_use=15)
Esempio n. 2
0
def main():
    label = "Obs"

    period = Period(datetime(1980, 11, 1), datetime(1981, 2, 1))

    # should be continuous??
    months_of_interest = [11, 12, 1]

    period.months_of_interest = months_of_interest

    vname_to_level_erai = {
        T_AIR_2M: VerticalLevel(1, level_kinds.HYBRID),
        U_WE: VerticalLevel(1, level_kinds.HYBRID),
        V_SN: VerticalLevel(1, level_kinds.HYBRID),
    }

    vname_map = {}
    vname_map.update(vname_map_CRCM5)

    label_to_config = OrderedDict([(label, {
        DataManager.SP_BASE_FOLDER:
        "/HOME/huziy/skynet3_rech1/obs_data_for_HLES/interploated_to_the_same_grid/GL_0.1_452x260",
        DataManager.SP_DATASOURCE_TYPE:
        data_source_types.
        ALL_VARS_IN_A_FOLDER_IN_NETCDF_FILES_OPEN_EACH_FILE_SEPARATELY,
        DataManager.SP_INTERNAL_TO_INPUT_VNAME_MAPPING:
        vname_map,
        DataManager.SP_LEVEL_MAPPING:
        vname_to_level_erai,
        DataManager.SP_OFFSET_MAPPING:
        vname_to_offset_CRCM5,
        DataManager.SP_MULTIPLIER_MAPPING:
        vname_to_multiplier_CRCM5,
        DataManager.SP_VARNAME_TO_FILENAME_PREFIX_MAPPING:
        vname_to_fname_prefix_CRCM5,
        "out_folder":
        "lake_effect_analysis_icefix_{}_{}-{}_test1".format(
            label, period.start.year, period.end.year)
    })])

    calculate_lake_effect_snowfall_each_year_in_parallel(
        label_to_config=label_to_config, period=period, nprocs_to_use=20)
Esempio n. 3
0
def main():
    label = "Obs"


    period = Period(
        datetime(1980, 11, 1), datetime(1981, 2, 1)
    )

    # should be continuous??
    months_of_interest = [11, 12, 1]

    period.months_of_interest = months_of_interest


    vname_to_level_erai = {
        T_AIR_2M: VerticalLevel(1, level_kinds.HYBRID),
        U_WE: VerticalLevel(1, level_kinds.HYBRID),
        V_SN: VerticalLevel(1, level_kinds.HYBRID),
    }



    vname_map = {}
    vname_map.update(vname_map_CRCM5)


    label_to_config = OrderedDict([(
        label, {
            DataManager.SP_BASE_FOLDER: "/HOME/huziy/skynet3_rech1/obs_data_for_HLES/interploated_to_the_same_grid/GL_0.1_452x260",
            DataManager.SP_DATASOURCE_TYPE: data_source_types.ALL_VARS_IN_A_FOLDER_IN_NETCDF_FILES_OPEN_EACH_FILE_SEPARATELY,
            DataManager.SP_INTERNAL_TO_INPUT_VNAME_MAPPING: vname_map,
            DataManager.SP_LEVEL_MAPPING: vname_to_level_erai,
            DataManager.SP_OFFSET_MAPPING: vname_to_offset_CRCM5,
            DataManager.SP_MULTIPLIER_MAPPING: vname_to_multiplier_CRCM5,
            DataManager.SP_VARNAME_TO_FILENAME_PREFIX_MAPPING: vname_to_fname_prefix_CRCM5,
            "out_folder": "lake_effect_analysis_icefix_{}_{}-{}_test1".format(label, period.start.year, period.end.year)
        }
    )])

    calculate_lake_effect_snowfall_each_year_in_parallel(label_to_config=label_to_config, period=period, nprocs_to_use=20)
Esempio n. 4
0
def __obs_case(period, vname_to_level: dict, vname_map: dict, label: str,
               base_dir: str):
    label_to_config = OrderedDict([(label, {
        DataManager.SP_BASE_FOLDER:
        str(base_dir),
        DataManager.SP_DATASOURCE_TYPE:
        data_source_types.
        ALL_VARS_IN_A_FOLDER_IN_NETCDF_FILES_OPEN_EACH_FILE_SEPARATELY,
        DataManager.SP_INTERNAL_TO_INPUT_VNAME_MAPPING:
        vname_map,
        DataManager.SP_LEVEL_MAPPING:
        vname_to_level,
        DataManager.SP_OFFSET_MAPPING:
        vname_to_offset_CRCM5,
        DataManager.SP_MULTIPLIER_MAPPING:
        vname_to_multiplier_CRCM5,
        DataManager.SP_VARNAME_TO_FILENAME_PREFIX_MAPPING:
        vname_to_fname_prefix_CRCM5,
        "out_folder":
        f"lake_effect_analysis_icefix_{label}_{period.start.year}-{period.end.year}"
    })])

    calculate_lake_effect_snowfall_each_year_in_parallel(
        label_to_config=label_to_config, period=period, nprocs_to_use=15)
def main():
    period = Period(datetime(1980, 12, 1), datetime(2009, 3, 1))

    # should be consequent
    months_of_interest = [11, 12, 1]

    period.months_of_interest = months_of_interest

    vname_to_level_erai = {
        T_AIR_2M: VerticalLevel(1, level_kinds.HYBRID),
        U_WE: VerticalLevel(1, level_kinds.HYBRID),
        V_SN: VerticalLevel(1, level_kinds.HYBRID),
    }

    ERAI_label = "ERA-Interim"
    label = ERAI_label
    label_to_config = OrderedDict([  # ERA-Interim
        (label, {
            "base_folder":
            "/RECH/data/Driving_data/Offline/ERA-Interim_0.75/6h_Analysis",
            "data_source_type":
            data_source_types.ALL_VARS_IN_A_FOLDER_OF_RPN_FILES,
            "min_dt":
            timedelta(hours=6),
            "varname_mapping":
            vname_map_CRCM5,
            "level_mapping":
            vname_to_level_erai,
            "offset_mapping":
            vname_to_offset_CRCM5,
            "multiplier_mapping":
            vname_to_multiplier_CRCM5,
            "out_folder":
            "lake_effect_analysis_{}_{}-{}".format(label, period.start.year,
                                                   period.end.year)
        }),
        # Add additional sources below
    ])

    import time
    t0 = time.time()
    # calculate_lake_effect_snowfall_each_year_in_parallel(label_to_config=label_to_config, period=period, nprocs_to_use=5)
    print("Execution time: {} s".format(time.time() - t0))
    # calculate_lake_effect_snowfall(label_to_config=label_to_config, period=period)

    label = "CRCM5_NEMO_based_on_TT_PR"
    vname_map = {}
    vname_map.update(vname_map_CRCM5)
    vname_map.update({default_varname_mappings.SNOWFALL_RATE: "XX"})

    label_to_config_CRCM5 = OrderedDict([(label, {
        "base_folder":
        "/HOME/huziy/skynet3_rech1/CRCM5_outputs/coupled-GL-NEMO1h/selected_fields",
        "data_source_type":
        data_source_types.SAMPLES_FOLDER_FROM_CRCM_OUTPUT_VNAME_IN_FNAME,
        "min_dt":
        timedelta(hours=3),
        "varname_mapping":
        vname_map,
        "level_mapping":
        vname_to_level_erai,
        "offset_mapping":
        vname_to_offset_CRCM5,
        "multiplier_mapping":
        vname_to_multiplier_CRCM5,
        "out_folder":
        "lake_effect_analysis_{}_{}-{}".format(label, period.start.year,
                                               period.end.year)
    })])

    calculate_lake_effect_snowfall_each_year_in_parallel(
        label_to_config=label_to_config_CRCM5, period=period, nprocs_to_use=16)

    label = "CRCM5_Hostetler_based_on_TT_PR"

    vname_map = {}
    vname_map.update(vname_map_CRCM5)
    vname_map.update({default_varname_mappings.SNOWFALL_RATE: "XX"})

    label_to_config_CRCM5 = OrderedDict([(label, {
        "base_folder":
        "/RECH2/huziy/coupling/GL_440x260_0.1deg_GL_with_Hostetler/Samples_selected",
        "data_source_type":
        data_source_types.SAMPLES_FOLDER_FROM_CRCM_OUTPUT_VNAME_IN_FNAME,
        "min_dt":
        timedelta(hours=3),
        "varname_mapping":
        vname_map,
        "level_mapping":
        vname_to_level_erai,
        "offset_mapping":
        vname_to_offset_CRCM5,
        "multiplier_mapping":
        vname_to_multiplier_CRCM5,
        "filename_prefix_mapping":
        vname_to_fname_prefix_CRCM5,
        "out_folder":
        "lake_effect_analysis_{}_{}-{}".format(label, period.start.year,
                                               period.end.year)
    })])
def main():
    period = Period(
        datetime(1980, 12, 1), datetime(1985, 3, 1)
    )

    # should be consequent
    months_of_interest = [11, 12, 1]

    period.months_of_interest = months_of_interest


    vname_to_level_erai = {
        T_AIR_2M: VerticalLevel(1, level_kinds.HYBRID),
        U_WE: VerticalLevel(1, level_kinds.HYBRID),
        V_SN: VerticalLevel(1, level_kinds.HYBRID),
    }



    ERAI_label = "ERA-Interim"
    label = ERAI_label
    label_to_config = OrderedDict(
        [  # ERA-Interim
            (label,
             {
                 "base_folder": "/RECH/data/Driving_data/Offline/ERA-Interim_0.75/6h_Analysis",
                 "data_source_type": data_source_types.ALL_VARS_IN_A_FOLDER_OF_RPN_FILES,
                 "min_dt": timedelta(hours=6),
                 "varname_mapping": vname_map_CRCM5,
                 "level_mapping": vname_to_level_erai,
                 "offset_mapping": vname_to_offset_CRCM5,
                 "multiplier_mapping": vname_to_multiplier_CRCM5,
                 "out_folder": "lake_effect_analysis_{}_{}-{}".format(label, period.start.year, period.end.year)
             }
             ),
            # Add additional sources below
        ]
    )

    import time
    t0 = time.time()
    calculate_lake_effect_snowfall_each_year_in_parallel(label_to_config=label_to_config, period=period, nprocs_to_use=5)
    print("Execution time: {} s".format(time.time() - t0))
    #calculate_lake_effect_snowfall(label_to_config=label_to_config, period=period)



    label = "CRCM5_NEMO"
    vname_map = {}
    vname_map.update(vname_map_CRCM5)
    vname_map.update({
        default_varname_mappings.SNOWFALL_RATE: "U3"
    })

    label_to_config_CRCM5 = OrderedDict([(
        label, {
            "base_folder": "/HOME/huziy/skynet3_rech1/CRCM5_outputs/coupled-GL-NEMO1h/selected_fields",
            "data_source_type": data_source_types.SAMPLES_FOLDER_FROM_CRCM_OUTPUT_VNAME_IN_FNAME,
            "min_dt": timedelta(hours=3),
            "varname_mapping": vname_map,
            "level_mapping": vname_to_level_erai,
            "offset_mapping": vname_to_offset_CRCM5,
            "multiplier_mapping": vname_to_multiplier_CRCM5,
            "out_folder": "lake_effect_analysis_{}_{}-{}".format(label, period.start.year, period.end.year)
        }
    )])

    # calculate_lake_effect_snowfall_each_year_in_parallel(label_to_config=label_to_config_CRCM5,
    #                                                      period=period,
    #                                                      nprocs_to_use=16)



    label = "CRCM5_Hostetler"

    vname_map = {}
    vname_map.update(vname_map_CRCM5)
    vname_map.update({
        default_varname_mappings.SNOWFALL_RATE: "U3"
    })

    label_to_config_CRCM5 = OrderedDict([(
        label, {
            "base_folder": "/RECH2/huziy/coupling/GL_440x260_0.1deg_GL_with_Hostetler/Samples_selected",
            "data_source_type": data_source_types.SAMPLES_FOLDER_FROM_CRCM_OUTPUT_VNAME_IN_FNAME,
            "min_dt": timedelta(hours=3),
            "varname_mapping": vname_map,
            "level_mapping": vname_to_level_erai,
            "offset_mapping": vname_to_offset_CRCM5,
            "multiplier_mapping": vname_to_multiplier_CRCM5,
            "filename_prefix_mapping": vname_to_fname_prefix_CRCM5,
            "out_folder": "lake_effect_analysis_{}_{}-{}".format(label, period.start.year, period.end.year)
        }
    )])
def monthly_func(x):
    print(x)
    return calculate_lake_effect_snowfall_each_year_in_parallel(**x)
Esempio n. 8
0
def main():
    period = Period(
        datetime(1979, 12, 1), datetime(1988, 3, 1)
    )

    # should be consequent
    months_of_interest = [12, 1, 2]

    period.months_of_interest = months_of_interest


    vname_to_level_erai = {
        T_AIR_2M: VerticalLevel(1, level_kinds.HYBRID),
        U_WE: VerticalLevel(1, level_kinds.HYBRID),
        V_SN: VerticalLevel(1, level_kinds.HYBRID),
    }


    ERAI_label = "ERA-Interim"
    label = ERAI_label
    label_to_config = OrderedDict(
        [  # ERA-Interim
            (label,
             {
                 "base_folder": "/RECH/data/Driving_data/Offline/ERA-Interim_0.75/6h_Analysis",
                 "data_source_type": data_source_types.ALL_VARS_IN_A_FOLDER_OF_RPN_FILES,
                 "min_dt": timedelta(hours=6),
                 "varname_mapping": vname_map_CRCM5,
                 "level_mapping": vname_to_level_erai,
                 "offset_mapping": vname_to_offset_CRCM5,
                 "multiplier_mapping": vname_to_multiplier_CRCM5,
                 "out_folder": "lake_effect_analysis_{}_{}-{}".format(label, period.start.year, period.end.year)
             }
             ),
            # Add additional sources below
        ]
    )

    # calculate_lake_effect_snowfall_each_year_in_parallel(label_to_config=label_to_config, period=period)
    # calculate_lake_effect_snowfall(label_to_config=label_to_config, period=period)



    label = "CRCM5_NEMO"
    label_to_config_CRCM5 = OrderedDict([(
        label, {
            "base_folder": "/RECH2/huziy/coupling/coupled-GL-NEMO1h_30min/Samples",
            "data_source_type": data_source_types.SAMPLES_FOLDER_FROM_CRCM_OUTPUT,
            "min_dt": timedelta(hours=3),
            "varname_mapping": vname_map_CRCM5,
            "level_mapping": vname_to_level_erai,
            "offset_mapping": vname_to_offset_CRCM5,
            "multiplier_mapping": vname_to_multiplier_CRCM5,
            "filename_prefix_mapping": vname_to_fname_prefix_CRCM5,
            "out_folder": "lake_effect_analysis_{}_{}-{}".format(label, period.start.year, period.end.year)
        }
    )])

#    calculate_lake_effect_snowfall(label_to_config=label_to_config_CRCM5, period=period)
    # calculate_lake_effect_snowfall_each_year_in_parallel(label_to_config=label_to_config_CRCM5, period=period)



    label = "CRCM5_Hostetler"
    label_to_config_CRCM5 = OrderedDict([(
        label, {
            "base_folder": "/RECH2/huziy/coupling/GL_440x260_0.1deg_GL_with_Hostetler/Samples_selected",
            "data_source_type": data_source_types.SAMPLES_FOLDER_FROM_CRCM_OUTPUT_VNAME_IN_FNAME,
            "min_dt": timedelta(hours=3),
            "varname_mapping": vname_map_CRCM5,
            "level_mapping": vname_to_level_erai,
            "offset_mapping": vname_to_offset_CRCM5,
            "multiplier_mapping": vname_to_multiplier_CRCM5,
            "filename_prefix_mapping": vname_to_fname_prefix_CRCM5,
            "out_folder": "lake_effect_analysis_{}_{}-{}".format(label, period.start.year, period.end.year)
        }
    )])

    calculate_lake_effect_snowfall_each_year_in_parallel(label_to_config=label_to_config_CRCM5, period=period)