-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Bug Description
Currently there are 96 csv files across datasets in ETSource that specify the must-run interconnector base curves which are (all) flat curves with values of 3.170979198376513e-08.
(3.170979198376513e-08 87603600 = 1)
Type of Data Issue
What type of data issue is this?
Select all that apply:
- Data Quality
- Data Integrity
- Data Processing
- Data Loading
- Data Validation
- Data Transformation
- Data Export
- Other
Impact
This setup wastes space and adds additional database overhead, increase maintenance and cost memory/processing as the curves are loaded and processed even though they don't really include any useful or meaningful data.
Suggested solution
We could have a method to generate a flat distributed profile in Qernel::Causality::Curves (or wherever the curves module lives) that can be defined and re-used in various adapters to handle this kind of case.
def flat_profile
Merit::Curve.new(Array.new(8760, 1.0 / (8760 * 3600)))
end
We could then implement that method in the adapters:
export_consumer_adapter:
def consumption_profile
@context.curves.flat_profile
end
import_always_on_adapter:
def production_profile
@context.curves.flat_profile
end
This could allow us to remove the 96 extraneous csvs, and simplify the data flow. I don't think initial_updates should be necessary here, because when the curves aren't provided the coupling is not active, but we would have to check as they may be required for the graph to build properly.