Closed laestrada closed 1 year ago
I haven't grasped all of the intricacies of aggregate.py
, but this pull request looks good to me. I really like the "componentization" update. That will be useful for better implementing the Kalman filter feature.
This PR adds the following clustering functionality to the config file:
In this scenario the clustering algorithm would create 39 clusters in the domain of interest with 24 2-grid cell clusters and 15 native resolution pixels. The
ForcedNativeResolutionPixels
option allows you to specify cells as for native resolution by setting the averaging kernel estimate value to 1.0.The main file changes for the clustering feature are within the following files:
Additionally, this PR reorganizes the IMI directories and shell scripts into discrete functions in an attempt to 'componentize' the IMI source code. There are a number of file changes associated with this.
Notably, this PR also reduces the setup time needed significantly from our v1.1.0 benchmark. I think this may be due to the componentization, which reduces some repetition of code (loading environments, etc) and performance enhancements to the IMI preview.
Comparing the 71 element inversions from v1.1.0 and this branch shows no differences as we would expect.