For example, grid/neighbors.py currently uses "nodes", "face centers", "edge centers"; data mapping uses "nodes", "faces", "edges"; data location uses "node_centered", "face_centered", "edge_centered".
The way a user is supposed to specify data location or introspect data location information thus varies depending on context, meaning users need to learn different strings depending on the context. If there was only one string for each, or at most 2 (E.g. "Always input 'nodes'/'faces'/'edges'; introspection always reveals 'node_centered', 'face_centered', or 'edge_centered'.") that would probably improve user experience.
These might not be the only places where these different spellings are being used; a full solution to this issue should also check for other places like these throughout the codebase. Maybe a solution should also standardize, perhaps adding something to conventions.py and checking values against values from there, instead of hard-coding these strings directly.
Tangentially related: #1574
For example, grid/neighbors.py currently uses "nodes", "face centers", "edge centers"; data mapping uses "nodes", "faces", "edges"; data location uses "node_centered", "face_centered", "edge_centered".
The way a user is supposed to specify data location or introspect data location information thus varies depending on context, meaning users need to learn different strings depending on the context. If there was only one string for each, or at most 2 (E.g. "Always input 'nodes'/'faces'/'edges'; introspection always reveals 'node_centered', 'face_centered', or 'edge_centered'.") that would probably improve user experience.
These might not be the only places where these different spellings are being used; a full solution to this issue should also check for other places like these throughout the codebase. Maybe a solution should also standardize, perhaps adding something to conventions.py and checking values against values from there, instead of hard-coding these strings directly.
Tangentially related: #1574