Fix uniform grid violation of POLA#31
Open
ljlamarche wants to merge 1 commit into
Open
Conversation
Contributor
Author
|
This change may not be necessary. The original setup matches the MATLAB function. |
Contributor
Author
|
I think the question here just comes down to how you want the grid to be defined by the user. The default linespace in both MATLAB and Python puts the first point at xmin, the last point at xmax, and n-2 points evenly spaced in-between them. If these points are supposed to be the grid centers, the correct number of grid cells are returned, but they're slightly further apart than expected because the endpoint are the center of the first and last grid cell, not it's edges. I think you can still make whatever grid you want with the right combination of the number of cells and extent, it's just a question of what convention makes the most sense. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Due to how numpy.linspace handles endpoints, the grid setup script was violating the Principle of Least Astonishment (POLA). When the length of the grid dimension is set to 128 km and the number of grid cells to 128, the resulting grid cells have a dimension of 1007 m rather than 1000 m. This has been fixed.
Note that I have not adjusted Line 40 which deals with the degenerate dimension case.