There are a number of commonly implemented methods that are not in the BaseGrid. Adding these as NotImplemeted methods in BaseGrid will make it clearer what can/should be added to grid types:
@classmethod fromfile
write - I think it could be a good idea to have just a single write method on each grid type to write the grid nc file(s), with kwargs specifying options for a specific grid type (e.g. whether or not to write a mask file also). This would mean the interface for writing grids would be the same for all files, which is currently not the case (e.g. OasisGrid has write_grids, write_areas and write_masks methods).
Also:
There are a number of commonly implemented methods that are not in the
BaseGrid. Adding these asNotImplemetedmethods inBaseGridwill make it clearer what can/should be added to grid types:@classmethod fromfilewrite- I think it could be a good idea to have just a singlewritemethod on each grid type to write the grid nc file(s), with kwargs specifying options for a specific grid type (e.g. whether or not to write a mask file also). This would mean the interface for writing grids would be the same for all files, which is currently not the case (e.g.OasisGridhaswrite_grids,write_areasandwrite_masksmethods).Also:
write_meshsee Move mesh generation functionality intoesmgrids? ACCESS-NRI/om3-scripts#11