|
PISM, A Parallel Ice Sheet Model 2.3.0-79cae578d committed by Constantine Khrulev on 2026-03-22
|
Input and output code (NetCDF wrappers, etc) More...
Classes | |
| class | Default |
| class | NC4_Par |
| class | NC4_Serial |
| class | NC4File |
| class | NC_Serial |
| class | NCFile |
| The PISM wrapper for a subset of the NetCDF C API. More... | |
| class | PNCFile |
| PISM's PnetCDF I/O wrapper. More... | |
| struct | StartCountInfo |
Enumerations | |
| enum | Type : int { PISM_NAT = 0 , PISM_BYTE = 1 , PISM_CHAR = 2 , PISM_SHORT = 3 , PISM_INT = 4 , PISM_FLOAT = 5 , PISM_DOUBLE = 6 } |
| enum | Backend : int { PISM_GUESS , PISM_NETCDF3 , PISM_NETCDF4_SERIAL , PISM_NETCDF4_PARALLEL , PISM_PNETCDF } |
| enum | Mode : int { PISM_READONLY = 7 , PISM_READWRITE = 8 , PISM_READWRITE_CLOBBER = 9 , PISM_READWRITE_MOVE = 10 } |
| enum | Dim_Length : int { PISM_UNLIMITED = 0 } |
| enum | Fill_Mode : int { PISM_FILL = 0 , PISM_NOFILL = 0x100 } |
Functions | |
| static std::string | check_units (const VariableMetadata &variable, const std::string &input_units, const Logger &log) |
| static void | interpolate (const grid::DistributedGridInfo &grid, const LocalInterpCtx &lic, double const *input_array, double *output_array) |
| Bi-(or tri-)linear interpolation. | |
| static bool | transpose (std::vector< AxisType > dimension_types) |
| static std::vector< AxisType > | dimension_types (const File &file, const std::string &var_name, std::shared_ptr< units::System > unit_system) |
| static void | transpose (const double *input, const std::vector< AxisType > &input_axes, const std::array< int, 4 > &count, double *output) |
| static void | check_for_missing_values (const File &file, const std::string &variable_name, double tolerance, const double *buffer, size_t buffer_length) |
| static StartCountInfo | compute_start_and_count (std::vector< AxisType > &dim_types, const std::array< int, 4 > &start, const std::array< int, 4 > &count) |
| static void | read_distributed_array (const File &file, const std::string &variable_name, std::shared_ptr< units::System > unit_system, const std::array< int, 4 > &start, const std::array< int, 4 > &count, double *output) |
| Read an array distributed according to the grid. | |
| void | regrid_spatial_variable (const VariableMetadata &variable, const Grid &target_grid, const LocalInterpCtx &interp_context, const File &file, const Logger &log, double *output) |
Regrid from a NetCDF file into a distributed array output. | |
| std::vector< double > | read_1d_variable (const File &file, const std::string &variable_name, const std::string &units, std::shared_ptr< units::System > unit_system) |
| std::vector< double > | read_timeseries_variable (const File &file, const std::string &variable_name, const std::string &units, std::shared_ptr< units::System > unit_system, size_t start, size_t count) |
| std::vector< double > | read_bounds (const File &file, const std::string &bounds_variable_name, const std::string &internal_units, std::shared_ptr< units::System > unit_system) |
| void | read_time_info (std::shared_ptr< units::System > unit_system, const File &file, const std::string &time_name, const std::string &time_units, std::vector< double > ×, std::vector< double > &bounds) |
| void | read_spatial_variable (const VariableMetadata &variable, const Grid &grid, const File &file, unsigned int time, double *output) |
Read a variable from a file into an array output. | |
| static void | check_grid_overlap (const grid::InputGridInfo &input, const grid::DistributedGridInfo &internal, const std::vector< double > &z_internal) |
| void | check_input_grid (const grid::InputGridInfo &input_grid, const grid::DistributedGridInfo &internal_grid, const std::vector< double > &internal_z_levels, bool allow_extrapolation) |
| Check that x, y, and z coordinates of the input grid are strictly increasing. | |
| std::string | time_dimension (units::System::Ptr unit_system, const File &file, const std::string &variable_name) |
| VariableMetadata | read_attributes (const File &file, const std::string &variable_name, std::shared_ptr< units::System > unit_system) |
| bool | file_exists (MPI_Comm com, const std::string &filename) |
| std::string | time_dimension (std::shared_ptr< units::System > unit_system, const File &file, const std::string &variable_name) |
| void | define_variables (const OutputFile &file, const std::set< VariableMetadata > &variables, const VariableMetadata &mapping, bool use_internal_units) |
| void | write_config (const Config &config, const std::string &variable_name, const OutputFile &file) |
| void | move_if_exists (MPI_Comm com, const std::string &file_to_move, int rank_to_use) |
| Moves the file aside (file.nc -> file.nc~). | |
| void | remove_if_exists (MPI_Comm com, const std::string &file_to_remove, int rank_to_use) |
| Check if a file is present are remove it. | |
| static void | check (const ErrorLocation &where, int return_code) |
| Prints an error message; for debugging. | |
| static void | check (const ErrorLocation &where, int return_code) |
| Prints an error message; for debugging. | |
| static void | check (const ErrorLocation &where, int return_code) |
| Prints an error message; for debugging. | |
| static void | get_att_text (int ncid, int varid, const std::string &att_name, std::string &result) |
| static void | get_att_string (int ncid, int varid, const std::string &att_name, std::string &result) |
| static void | check (const ErrorLocation &where, int return_code) |
| Prints an error message; for debugging. | |
| static void | check_and_abort (MPI_Comm com, const ErrorLocation &where, int return_code) |
| call MPI_Abort() if a NetCDF call failed | |
| static int | get_att_text (int ncid, int varid, const std::string &att_name, std::string &result) |
| static int | get_att_string (int ncid, int varid, const std::string &att_name, std::string &result) |
| static void | check (const ErrorLocation &where, int return_code) |
Input and output code (NetCDF wrappers, etc)