// Traj_AmberNetcdf::openTrajin() int Traj_AmberNetcdf::openTrajin() { // If already open, return if (Ncid()!=-1) return 0; if ( NC_openRead( filename_.Full() ) != 0 ) { mprinterr("Error: Opening Netcdf file %s for reading.\n", filename_.base()); return 1; } return 0; }
int Traj_AmberNetcdf::parallelOpenTrajout(Parallel::Comm const& commIn) { if (Ncid() != -1) return 0; int err = ncmpi_open(commIn.MPIcomm(), filename_.full(), NC_WRITE, MPI_INFO_NULL, &ncid_); if (checkPNCerr(err)) { mprinterr("Error: Opening NetCDF file '%s' for writing in parallel.\n", filename_.full()); return 1; } err = ncmpi_begin_indep_data( ncid_ ); // Independent data mode return 0; }
// Traj_AmberRestartNC::openTrajin() int Traj_AmberRestartNC::openTrajin() { // If already open, return if (Ncid()!=-1) return 0; if ( NC_openRead( filename_.Full() ) != 0 ) { mprinterr("Error: Opening Netcdf restart file %s for reading.\n", filename_.base()); return 1; } if (debug_>1) NetcdfDebug(); return 0; }
// Traj_NcEnsemble::openTrajin() int Traj_NcEnsemble::openTrajin() { // If already open, return if (Ncid()!=-1) return 0; # if HAS_PNETCDF int err = ncmpi_open(MPI_COMM_WORLD, filename_.full(), NC_NOWRITE, MPI_INFO_NULL, &ncid_); //err += ncmpi_begin_indep_data( ncid_ ); // Disable independent data mode # else int err = NC_openRead( filename_.Full() ); # endif if ( err != 0 ) { mprinterr("Error: Opening Netcdf file %s for reading.\n", filename_.base()); return 1; } return 0; }