FLINT
FLINT copied to clipboard
extendable land unit area concept.
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",
...
Can i work on this issue ?
Of course. That would be great. You can join our Slack to connect with other developers.
@gmajan I have filled a PR #84 Can you please review it !
Hi @gmajan @leitchy! Can I work on this issue?
Hi @gmajan @leitchy! Can I work on this issue?
Hey @mavneeK , I am already working on this you can work on other issues 😉
I am an Outreachy applicant .I found this issue interesting and I discussed with @kartikeysaran who is working on it. Can You assign this issue I would like to contribute to it @leitchy @gmajan
@aornugent