graph LR
External_Data_Sources["External Data Sources"]
Workflow_Orchestration_CLI["Workflow Orchestration & CLI"]
Data_Ingestion_Ancillary_Management["Data Ingestion & Ancillary Management"]
Core_Meteorological_Algorithms["Core Meteorological Algorithms"]
Advanced_Forecasting_Post_processing["Advanced Forecasting & Post-processing"]
Metadata_Configuration_Management["Metadata & Configuration Management"]
Output_Verification["Output & Verification"]
External_Data_Sources -- "provides data to" --> Data_Ingestion_Ancillary_Management
Workflow_Orchestration_CLI -- "initiates" --> Data_Ingestion_Ancillary_Management
Workflow_Orchestration_CLI -- "initiates" --> Core_Meteorological_Algorithms
Workflow_Orchestration_CLI -- "initiates" --> Advanced_Forecasting_Post_processing
Workflow_Orchestration_CLI -- "receives configuration from" --> Metadata_Configuration_Management
Data_Ingestion_Ancillary_Management -- "provides data to" --> Core_Meteorological_Algorithms
Data_Ingestion_Ancillary_Management -- "provides data to" --> Advanced_Forecasting_Post_processing
Core_Meteorological_Algorithms -- "provides data to" --> Advanced_Forecasting_Post_processing
Core_Meteorological_Algorithms -- "provides data to" --> Output_Verification
Advanced_Forecasting_Post_processing -- "provides data to" --> Output_Verification
Metadata_Configuration_Management -- "interacts with" --> Data_Ingestion_Ancillary_Management
Metadata_Configuration_Management -- "interacts with" --> Core_Meteorological_Algorithms
Metadata_Configuration_Management -- "interacts with" --> Advanced_Forecasting_Post_processing
click Workflow_Orchestration_CLI href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/improver/Workflow_Orchestration_CLI.md" "Details"
click Data_Ingestion_Ancillary_Management href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/improver/Data_Ingestion_Ancillary_Management.md" "Details"
click Core_Meteorological_Algorithms href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/improver/Core_Meteorological_Algorithms.md" "Details"
click Advanced_Forecasting_Post_processing href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/improver/Advanced_Forecasting_Post_processing.md" "Details"
The improver system is designed as a modular meteorological data processing pipeline. It begins with External Data Sources providing raw meteorological data, which is then handled by the Data Ingestion & Ancillary Management component for initial processing and standardization. The Workflow Orchestration & CLI acts as the central control, initiating various processing steps and receiving configuration from Metadata & Configuration Management. Core scientific computations are performed within Core Meteorological Algorithms, which then feed into Advanced Forecasting & Post-processing for specialized tasks like nowcasting and ensemble blending. Finally, all processed data is managed by the Output & Verification component for storage and potential verification. Metadata & Configuration Management plays a crucial cross-cutting role, ensuring data consistency and proper parameter application across Data Ingestion, Core Meteorological Algorithms, and Advanced Forecasting & Post-processing.
Represents the origin of all raw meteorological data entering the improver system.
Related Classes/Methods:
Workflow Orchestration & CLI [Expand]
Provides the command-line interface and orchestrates the execution of various data processing workflows.
Related Classes/Methods:
Data Ingestion & Ancillary Management [Expand]
Handles the loading, initial standardization, regridding of meteorological data, and the generation/management of essential ancillary data fields.
Related Classes/Methods:
improver.utilities.cube_extraction.process:501-562improver.cube_combiner.process:621-642improver.regrid.landsea.process:307-362improver.generate_ancillaries.generate_ancillary.process:285-322
Core Meteorological Algorithms [Expand]
Contains the primary algorithms for scientific computations, diagnostics (e.g., psychrometric, precipitation, temperature, wind), categorical data processing, spot data extraction, thresholding, and neighbourhood operations.
Related Classes/Methods:
improver.psychrometric_calculations.psychrometric_calculations.process:909-1017improver.precipitation.snow_fraction.process:134-155improver.temperature.lapse_rate.process:382-475improver.wind_calculations.wind_downscaling.process:894-952improver.categorical.decision_tree.process:818-906improver.spotdata.spot_extraction.process:248-343improver.threshold.process:818-879improver.nbhood.nbhood.process:852-894
Advanced Forecasting & Post-processing [Expand]
Encompasses specialized components for short-term nowcasting, ensemble blending, calibration, and advanced post-processing techniques like Ensemble Copula Coupling (ECC).
Related Classes/Methods:
improver.nowcasting.forecasting.process:474-491improver.blending.weighted_blend.process:666-731improver.calibration.ensemble_calibration.process:1921-2026improver.ensemble_copula_coupling.ensemble_copula_coupling.process:1507-1573
Manages, validates, and interprets metadata associated with data cubes and handles system-wide configuration parameters, ensuring data consistency and proper processing.
Related Classes/Methods:
improver.metadata.forecast_times.unify_cycletime:256-311improver.developer_tools.metadata_interpreter.run:433-557
Responsible for handling the final output of processed meteorological data, including formatting for storage or visualization, and potentially incorporating verification functionalities.
Related Classes/Methods: