-
Notifications
You must be signed in to change notification settings - Fork 82
Open
Labels
BugSomething isn't working.Something isn't working.DocAdding or updating documentation.Adding or updating documentation.EnhancementNew feature request or improvement or optimization.New feature request or improvement or optimization.P1Needs immediate attention.Needs immediate attention.
Description
Is your feature request related to a problem? Please describe.
Currently the system calculates the Land UNit area using a method on the provider (area)
inline double ProviderSpatialRasterTiled::area(const CellIdx& cell) const {
auto lat = _indexer->getLatFromIndex(cell);
auto x = _indexer->cellDesc.latSize * DiameterOfEarthInMetersPerDeg;
return x * x * cos(lat * DegToRadMultiplier) * 0.0001;
}
This can be overridden by having a variable called landUnitArea.
_landUnitController.initialiseData(true);
_spatiallocationinfo->_landUnitArea = _provider->area(cell);
_landUnitController.getVariable("landUnitArea")->set_value(_spatiallocationinfo->_landUnitArea);
This is clumsy and obscure.
Describe the solution you'd like
This should be definable in the system settings, in a similar fashion to Localdomain - simulateLandUnit. But perhaps in the Landscape object. Allowing the user to dwefine a variable that is the Area to use.
This way the variable can be used as a transform for eaxample. Either doing a SQL query or spatial layer lookup. Or just a differnt method to calculate the area.
Perhaps like: landUnitAreaVariable below:
{
"LocalDomain": {
"type": "spatial_tiled",
"start_date": "2000/01/01",
"end_date": "2020/12/31",
"sequencer_library": "internal.flint",
"sequencer": "CalendarAndEventFlintDataSequencer",
"simulateLandUnit": "simulateLandUnit",
"landUnitBuildSuccess": "landUnitBuildSuccess",
"landUnitAreaVariable": "spatial_layer_area",
...
PatamapPatamap and kartikeysaran
Metadata
Metadata
Assignees
Labels
BugSomething isn't working.Something isn't working.DocAdding or updating documentation.Adding or updating documentation.EnhancementNew feature request or improvement or optimization.New feature request or improvement or optimization.P1Needs immediate attention.Needs immediate attention.