def main():

    parser = argparse.ArgumentParser()
    parser.add_argument('input_files', nargs='+', help="""
                        The input data files in NetCDF format. These files can
                        be given in any order. They MUST appear before any other
                        arguments/options.""")
    parser.add_argument('output_file', default='ocean_monthly.nc', help="""
                        The name of the output file.""")
    parser.add_argument('--overall_mean_file', default=None, help="""
                        Calculate the overall mean and save with the given 
                        file name. This is the same as executing ncra
                        <output_file> <overall_mean_file>. This command
                        uses a lot less memory than ncra - it loads one
                        variable into memory at a time.""")
    parser.add_argument('--vars', default=['temp', 'dzt'], nargs='+',
                        help='A list of the variables to average.')

    args = parser.parse_args()

    # Create the output file by copying accross variables from one of
    # the inputs.
    other_vars = ['geolat_t', 'geolat_c', 'geolon_t', 'geolon_c', 'time_bounds']
    create_output_file(args.input_files[0], other_vars + args.vars, args.output_file)
    calc_monthly_mean(args.input_files, args.vars, args.output_file)
    update_file_history(args.output_file, ' '.join(sys.argv))

    if args.overall_mean_file:
        create_output_file(args.input_files[0], other_vars + args.vars,
                           args.overall_mean_file)
        calc_overall_mean([args.output_file], args.vars, args.overall_mean_file) 
        update_file_history(args.overall_mean_file, ' '.join(sys.argv))

    return 0
Beispiel #2
0
def main():

    parser = argparse.ArgumentParser()
    parser.add_argument(
        "input_files",
        nargs="+",
        help="""
                        The input data files in NetCDF format. These files can
                        be given in any order. They MUST appear before any other
                        arguments/options.""",
    )
    parser.add_argument(
        "output_file",
        default="ocean_monthly.nc",
        help="""
                        The name of the output file.""",
    )
    parser.add_argument("--vars", default=["temp", "dzt"], nargs="+", help="A list of the variables to average.")
    parser.add_argument(
        "--overall_mean_file",
        default=None,
        help="""
                        Calculate the overall mean and save with the given
                        file name. This is the same as executing ncra
                        <output_file> <overall_mean_file>. This command
                        uses a lot less memory than ncra - it loads one
                        variable into memory at a time.""",
    )

    args = parser.parse_args()

    ret = mom_monthly_mean(args.input_files, args.output_file, args.vars, args.overall_mean_file)
    # Update history
    update_file_history(args.output_file, " ".join(sys.argv))
    if args.overall_mean_file:
        update_file_history(args.overall_mean_file, " ".join(sys.argv))

    return ret
def main():

    parser = argparse.ArgumentParser()
    parser.add_argument('input_files', nargs='+', help="""
                        The input data files in NetCDF format. These files can
                        be given in any order. They MUST appear before any other
                        arguments/options.""")
    parser.add_argument('output_file', default='ice_monthly.nc', help="""
                        The name of the output file.""")
    parser.add_argument('--vars', default=None, nargs='+',
                        help='A list of the variables to average.')
    parser.add_argument('--copy_vars', default=[], nargs='+',
                        help="""A list of the variables copy across but not
                                included in the averaging.""")

    args = parser.parse_args()

    create_output_file(args.input_files[0], args.vars + args.copy_vars,
                       args.output_file)
    calc_monthly_mean(args.input_files, args.vars, args.output_file)
    update_file_history(args.output_file, ' '.join(sys.argv))

    return 0