Everything involving netCDF should be corralled into its own class. The netCDF headers should not be included in any model header file, they should only exist in the class source files where they are necessary. This is why classes like ParaGridIO and independent source files like PDWriter.cpp exist.
The changes connected with the MPI implementation have violated this limitation and should be edited to correct this. Indeed, a brief look indicates that netCDF headers are being included where they are not used (for example, ModelMetadata.hpp).
Everything involving netCDF should be corralled into its own class. The netCDF headers should not be included in any model header file, they should only exist in the class source files where they are necessary. This is why classes like
ParaGridIO
and independent source files likePDWriter.cpp
exist.The changes connected with the MPI implementation have violated this limitation and should be edited to correct this. Indeed, a brief look indicates that netCDF headers are being included where they are not used (for example,
ModelMetadata.hpp
).